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
.slnfiles (project-line parse). - 149 project files (53
.csprojC#, 96.vbprojVB.NET) parsed for<TargetFramework(s)>/<TargetFrameworkVersion>,<OutputType>, SDK-style vs legacy,<ProjectReference>, and cross-repoHintPath/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).
Cassandrais 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 hostInfocadIntegrationWScarry their ownGlobal.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; onlySystem.Datarefs (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.vbfiles. - RequestCenter.DAL.OracleODPXNET — net8.0 SDK-style; links the same
*.vbsource 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 managedOracle.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"),:9OutputType 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.