TASK-WEB-001 — InfocadWeb repository inventory (worker report)

Scope

High-level mechanical inventory of /Users/leonardo/GitHub/Documentation/InfocadWeb (classic ASP.NET Web Forms front-ends + integration/scheduler apps; .NET Framework 4.8 with a small net8 "XNET" migration slice; no MVC/Web API). Read-only. Backend ground truth: Oracle (ODP.NET + stored procedures, no ORM) — no SQL Server / T-SQL / dbo.

Files examined

  • 7 .sln files (project-line parse).
  • 149 project files (53 .csproj C#, 96 .vbproj VB.NET) parsed for <TargetFramework(s)>/<TargetFrameworkVersion>, <OutputType>, SDK-style vs legacy, <ProjectReference>, and cross-repo HintPath/ProjectReference.
  • Directory walks per web app for .aspx/.ascx/.asmx/.svc/.master, Global.asax, configs.
  • Targeted grep for InfocadServer, Oracle drivers, net8 markers.
  • bin/ obj/ packages/ node_modules/ .git/ excluded throughout.

Summary

  • 7 solutions. WebMachine.sln (72 projects) and Customizations.sln (71) are the two umbrella solutions; InfocadIntegration.sln (89) is the integration/scheduler umbrella. ECM.sln, IEM.sln, ExternalAuth.Interface.sln each wrap 1 project. TESTIWS.sln wraps a folder-based ASP.NET Web Site (no project file).
  • 149 projects. Framework distribution: v4.8 = 144, net8.0 = 3, netstandard2.0 = 1, 1 legacy VB project with no explicit framework (VS2008 ToolsVersion 3.5).
  • Output types: 127 Library, 9 Exe, 9 WinExe (Windows services + console tools), rest web/SDK-default.
  • 29 Web Forms application projects + 1 website (TESTIWS). Cassandra is the dominant web app (615 .aspx, 1862 .ascx); the CASSANDRA/* sub-webs (RequestCenterWeb, PropertyCenterWeb, GlobalWeb, …) compose under it. Domain web apps ECM/IEM and the ASMX host InfocadIntegrationWS carry their own Global.asax.
  • net8 migration = 3 "XNET" projects only: RequestCenterXNET, DataManagerXNET, RequestCenter.DAL.OracleODPXNET.
  • Exactly 1 cross-repo reference into the sibling InfocadServer repo.

Findings

Solutions (project counts)

Solution Projects
WebMachine/WebMachine.sln 72
WebMachine/Customizations.sln 71
WebMachine/ECM.sln 1
WebMachine/IEM.sln 1
WebMachine/Customizations/ExternalAuth.Interface/ExternalAuth.Interface.sln 1
InfocadIntegration/.../InfocadIntegration.sln 89
InfocadIntegration/TESTIWS/TESTIWS.sln 1 (website, no projfile)

Area breakdown (project files)

WebMachine/Customizations = 57, InfocadIntegration = 51, WebMachine/CASSANDRA = 26, WebMachine (core) = 15.

RequestCenter DAL variants (Oracle)

  • RequestCenter.DAL.Oracle — legacy VB project, VS2008 ToolsVersion=3.5, no explicit TargetFramework; only System.Data refs (no ODP.NET). Oldest/dead DAL.
  • RequestCenter.DAL.OracleODP — v4.8; references unmanaged Oracle.DataAccess (ODP.NET, GAC HintPath). Canonical source of the shared *DAL.vb files.
  • RequestCenter.DAL.OracleODPXNETnet8.0 SDK-style; links the same *.vb source from OracleODP via <Compile Include="..\RequestCenter.DAL.OracleODP\*.vb" Link=…>; managed Oracle.ManagedDataAccess.Core 23.4.0 (declared in the XNET consumer projects).

net8 migration projects

RequestCenterXNET (net8 business layer), DataManagerXNET (net8 data manager), RequestCenter.DAL.OracleODPXNET (net8 DAL). All SDK-style; use managed ODP.NET; the XNET projects re-link legacy .vb source rather than duplicating it.

Web applications (top by .aspx)

Cassandra 615/1862 (aspx/ascx), PropertyCenterWeb 100/158, GlobalWeb 76/96, ScheduleCenterWeb 65/82, CommonWeb 47/221, RequestCenterWeb 40/684, ServiceCentoWeb 32/156, BookCenterWeb 29, AccountingWeb 28, DocCenterWeb 26 … (full per-app matrix incl. asmx/svc/master, Global.asax, configs in inventory-web.json -> web_applications). Global.asax present at: Cassandra (WebMachine/CASSANDRA/Global.asax), ECM, IEM, InfocadIntegrationWS. InfocadIntegrationWS is the ASMX web-service host (19 .asmx, 6 .svc).

Notable families

  • Reporting. — 49 per-tenant VB.NET reporting plugin libraries under WebMachine/Customizations; all v4.8, most reference RequestCenter.
  • EXELoaders — 8 per-tenant ticket-loader exe/console importers.
  • EntityLayer — 16 per-integration entity-layer libraries under InfocadIntegration.
  • ServiceJob. — 6 scheduled service jobs (ASE/CAI/CUT/LEONARDO/RequestCenter/UCSC).
  • Windows services / hosts — SchedulerService, ProcessService, QueueService (WinExe) + their Core libraries and Console runners; InfocadIntegrationWS (ASMX host).

Dependencies

  • RequestCenter (v4.8) is the shared business layer consumed by the CASSANDRA sub-webs (AccountingWeb, CommonWeb, PropertyCenterWeb, QualityCheckCenterWeb, RequestCenterWeb, StockCenterWeb, WorkFlowDesigner) and by all Reporting.* customizations + Parametric + MobileCenter. RequestCenter -> DataManager (ProjectReference).
  • XNET (net8) projects carry empty ProjectReferences and instead link source + use PackageReferences (parallel net8 build path).

Integrations

  • Cross-repo: ServiceJob.CUT -> ../../../InfocadServer/ArchiveManager/ArchiveManager.csproj (the ONLY reference crossing into the sibling InfocadServer repo).
  • Oracle backend: ODP.NET — unmanaged Oracle.DataAccess (v4.8 DAL) and managed Oracle.ManagedDataAccess.Core 23.4.0 (net8 DAL). Consistent with stored-procedure / no-ORM ground truth.

Evidence (file:line)

  • OracleODP unmanaged driver: WebMachine/RequestCenter.DAL.OracleODP/RequestCenter.DAL.OracleODP.vbproj:164 (Oracle.DataAccess, Version=2.112.3.0).
  • net8 DAL TFM: WebMachine/RequestCenter.DAL.OracleODPXNET/RequestCenter.DAL.OracleODPXNET.vbproj:4 (<TargetFramework>net8.0</TargetFramework>).
  • net8 DAL links legacy source: same file :18 (<Compile Include="..\RequestCenter.DAL.OracleODP\BaseDAL.vb" Link=…>).
  • Managed ODP.NET package: WebMachine/DataManagerXNET/DataManagerXNET.vbproj:26 (Oracle.ManagedDataAccess.Core 23.4.0).
  • Legacy DAL project (no TFM): WebMachine/RequestCenter.DAL.Oracle/RequestCenter.DAL.Oracle.vbproj:2 (ToolsVersion="3.5"), :9 OutputType Library.
  • Cross-repo reference: InfocadIntegration/InfocadIntegration/ServiceJob.CUT/ServiceJob.CUT.csproj:117.
  • ASMX host: InfocadIntegration/InfocadIntegration/InfocadIntegrationWS/InfocadIntegrationWS.vbproj:16 (v4.8).
  • Web root Global.asax: WebMachine/CASSANDRA/Global.asax.

Confidence

  • Verified (mechanical): solution/project counts (7 / 149; 53 csproj + 96 vbproj), framework distribution, output types, web-file counts per app, the 3 XNET net8 projects, the single cross-repo reference, the 3 DAL variants + their Oracle drivers.
  • Inferred: CASSANDRA sub-webs "compose under" the Cassandra shell (from layout + RequestCenter fan-out, not from a deployment manifest); Reporting.* being per-tenant plugins (from naming + RequestCenter refs). RequestCenter.DAL.Oracle being "dead" is inferred from ToolsVersion 3.5 and absence of consumers.
  • Unknown: runtime wiring/virtual-directory mapping of sub-webs; actual IIS deployment topology; which ServiceJob/Scheduler runs where; contents of Web.config (not opened — may hold Oracle connection strings, deliberately not inspected/printed).

Missing info / Follow-ups

  • Confirm CASSANDRA sub-web composition vs standalone deployment (needs Cassandra web.config / IIS config).
  • Map Oracle connection strings + stored-procedure surface (separate DB/DAL task; do not print secrets).
  • Confirm net8 migration scope/status (only RequestCenter+DataManager+DAL ported so far).
  • ExternalAuth.* / CustomAuth.CUT / ExternalDocSave.* plugin contracts warrant an integration-focused task.