DocumentServiceProxy and its argument-mapping helpers apply three client-side rules when constructing the distributeDocument message: they never populate an email attachment's file name, they silently ignore fax details on one distribution path, and they select the application/tenant label from more than one source.
MapMailMessage maps To, CC, BCC, Subject, and Body from a MailMessage into the generated EmailInfoClass, but never sets AttachmentFileName, even though the contract declares that field
Trigger
Evaluated whenever a distributeDocument call includes email distribution
Enforcement
Wrapper — MapMailMessage
Origin
wrapper
Outcome
Every emailed distribution through this proxy carries no attachment file name in the EmailInfoClass sent to the remote service
BR-DOC-002 FaxInfo is silently ignored in DistributeDocument¶
Field
Value
Statement
DocumentServiceProxy.DistributeDocument always sends inFaxInfo: null to the remote service; the method's own faxInfo parameter is accepted but never mapped or forwarded
Trigger
Evaluated on every call to the DistributeDocument overload
Enforcement
Wrapper — DistributeDocument, with CA1801 suppressed for the unused parameter
Origin
wrapper
Outcome
A caller supplying fax details through this overload has those details discarded before the call, with no fax distribution occurring; DistributeDocumentDocCenter maps fax details correctly via MapFaxMessage
DistributeDocument and the preview/listing methods always send inApplication = "xPression Design"; DistributeDocumentDocCenter instead sends docConfig.ApplicationName unless that value is empty, in which case it also falls back to "xPression Design"
Trigger
Evaluated when constructing the request message for previewDocument, distributeDocument, documentsForCategory, or categoriesForUser
Enforcement
Wrapper — the ApplicationName constant and the conditional in DistributeDocumentDocCenter
Origin
wrapper
Outcome
Every call from this proxy identifies itself to the remote service as "xPression Design" unless the DocCenter distribution path supplies a non-empty application name of its own