Skip to content

Document overview

Document is a svcutil-generated SOAP proxy inside SAIF.Services.Web.Proxies that previews, distributes (by print, email, and fax), and enumerates document packages against the external clsGenerate† ASMX service, which fronts the xPression document platform*, and the repository holds it because SAIF.Services.Utilities.Documents.DocumentService needs document generation and distribution at runtime.

Purpose

  • Render and distribute document packages produced by the xPression platform — as a previewed PDF, as a printed/emailed/faxed/imaged distribution, and as a categorized document listing — on behalf of this repository's document-generating callers.

Business context

DocumentService is the sole in-repository consumer of this proxy, and it is registered with Autofac as IDocumentService in DependencyMaps/SAIF.DependencyMaps.Web.Documents/DependencyMap.cs:173, DependencyMaps/SAIF.DependencyMaps.Web.DocGenerator/DependencyMap.cs:71, DependencyMaps/SAIF.DependencyMaps.Web.DocCenter/DependencyMap.cs:127, DependencyMaps/SAIF.DependencyMaps.Web.Certs/DependencyMap.cs:143, DependencyMaps/SAIF.DependencyMaps.Web.AgencyPortal/DependencyMap.cs:84, DependencyMaps/SAIF.DependencyMaps.Web.AgencyInfoApi/DependencyMap.cs:106, DependencyMaps/SAIF.DependencyMaps.Web.PolicyDocumentAPI/DependencyMap.cs:170, DependencyMaps/SAIF.DependencyMaps.Web.LegalTasksNotes/DependencyMap.cs:79, DependencyMaps/SAIF.DependencyMaps.Web.FrameworkTest/DependencyMap.cs:52, and DependencyMaps/SAIF.DependancyMaps.Web.AGNI/AutofacBootstrapper.cs:72, so an outage of clsGenerate affects every one of those applications' document generation and distribution features.

Attribute Value
Business capability Document rendering (preview PDF/HTML) and distribution (print, email, fax, imaging) for xPression-authored document packages
Owning team of the called service Not determined from source
Criticality to the consumer Not determined from source
Fallback when unavailable None — the calling operation fails

Consumers

Consumer Call site Operations used Notes
DocumentServiceProxy.PreviewPdf Services/SAIF.Services.Web.Proxies/DocumentServiceProxy.cs:37 previewDocument Despite its name, PreviewPdf calls previewDocument, not previewPDF
DocumentServiceProxy.GetCategories DocumentServiceProxy.cs:43 categoriesForUser Sorts the result alphabetically before returning
DocumentServiceProxy.GetPackages DocumentServiceProxy.cs:49 documentsForCategory Sorts the result alphabetically before returning
DocumentServiceProxy.DistributeDocument (two overloads) DocumentServiceProxy.cs:69, :105 distributeDocument The faxInfo parameter of the first overload is always sent as null; the second (DistributeDocumentDocCenter) maps it
DocumentServiceProxy.PrintDocument DocumentServiceProxy.cs:131 distributeDocument Print-only overload; no upstream DocumentService caller was found for this overload*

DocumentService is constructed per request in Services/SAIF.Services.WebApi/PrintAPI/Controllers/ReportsController.cs:30,61,92,110 and HomeController.cs:24, and those instances are never disposed*. Several of the DependencyMap.cs/AutofacBootstrapper.cs registrations above pass a six-argument constructor call that does not match this repository's five-argument DocumentService constructor — flagged, not reconciled, because those projects likely bind to a different, packaged version of DocumentService**.

Capability summary

Capability Operations Description
PDF preview previewDocument Renders a document package to a PDF byte array
Category listing categoriesForUser Lists the document categories available to the caller
Package listing documentsForCategory Lists the document packages within a category
Document distribution distributeDocument Prints, emails, faxes, or images a document package

The full declared surface of 10 operations, including previewPDF, printPDF, publishDocument, previewHTML, publishAndReturnDocument, and outputProfilesForDocument, is on Contract, and the present-versus-called reconciliation is on Operation map.

Generation provenance

Aspect Finding
Generated by svcutil (Service Reference)
Generated from Services/SAIF.Services.Web.Proxies/Service References/Document/clsGenerate.wsdl
Discovery document Services/SAIF.Services.Web.Proxies/Service References/Document/clsGenerate.disco
Generated namespace SAIF.Services.Web.Proxies.Document
Namespace matches the consuming project Yes
Regeneration risk The WSDL target namespace embeds a publisher-side localhost URL (http://localhost:8000/wsDocuments/clsGenerate.asmx?WSDL/); no hand edits to Reference.cs were found, so refreshing the reference is otherwise low risk

Non-documented artifacts

  • Reference.cs, the SAIF.Services.Web.Proxies.Document.ArrayOfString.datasource designer file, and the configuration*.svcinfo/Reference.svcmap artifacts under Service References/Document/ are tool output and are not narrated beyond the provenance facts above, per the generated-code doctrine on Client index.

Note: Statements marked with † are derived from dependency library documentation via the Legends CLI. Statements marked with * were inferred from code structure or contextual evidence. Statements marked with ** could not be confirmed; treat as unknown until verified.

Sources

  • Services/SAIF.Services.Web.Proxies/DocumentServiceProxy.cs
  • Services/SAIF.Services/Utilities/Documents/DocumentService.cs
  • Services/SAIF.Services.WebApi/PrintAPI/Controllers/ReportsController.cs
  • Services/SAIF.Services.WebApi/PrintAPI/Controllers/HomeController.cs
  • DependencyMaps/SAIF.DependencyMaps.Web.Documents/DependencyMap.cs
  • DependencyMaps/SAIF.DependencyMaps.Web.DocGenerator/DependencyMap.cs
  • DependencyMaps/SAIF.DependencyMaps.Web.DocCenter/DependencyMap.cs
  • DependencyMaps/SAIF.DependencyMaps.Web.Certs/DependencyMap.cs
  • DependencyMaps/SAIF.DependencyMaps.Web.AgencyPortal/DependencyMap.cs
  • DependencyMaps/SAIF.DependencyMaps.Web.AgencyInfoApi/DependencyMap.cs
  • DependencyMaps/SAIF.DependencyMaps.Web.PolicyDocumentAPI/DependencyMap.cs
  • DependencyMaps/SAIF.DependencyMaps.Web.LegalTasksNotes/DependencyMap.cs
  • DependencyMaps/SAIF.DependencyMaps.Web.FrameworkTest/DependencyMap.cs
  • DependencyMaps/SAIF.DependancyMaps.Web.AGNI/AutofacBootstrapper.cs