Skip to content

CompositeRequestClass

CompositeRequestClass is a public, <Serializable()> class nested inside clsPrint. It carries the full set of print/distribution request fields as the MSMQ message payload used by the asynchronous distribution path described in BR-001 and BR-002.

Purpose

  • Bundle package, XML, printer, formatting, delivery, and IDM path fields into a single serializable message.
  • Provide a diagnostic ToString() representation of the request payload.

Context

  • Namespace: SAIF.Services.Printing
  • Assembly/package: SAIF.Services.Printing
  • Defined in: clsPrint.vb (nested inside clsPrint, marked <Serializable()>)

Public members

Member Signature Purpose
PackageName Public PackageName As String xPression package name for the request.
XML Public XML As String XML payload for the request.
Printer Public Printer As String Target printer name.
Mode Public Mode As PlexMode Duplex/simplex plex mode.
Copies Public Copies As Int16 Requested print copy count.
Scale Public Scale As ScaleMode Scale mode for the print request.
Format Public Format As String Output format string.
OutputProfile Public OutputProfile As String xPression output profile name.
Importinfo Public Importinfo As clsImageImport Imaging import metadata attached to the request.
EmailInfo Public EmailInfo As EmailInfoClass Email delivery metadata.
FaxInfo Public FaxInfo As FaxInfoClass Fax delivery metadata.
IDMPath Public IDMPath As String IDM path value copied from clsPrint.IDMPath at message-build time.
Tray Public Tray As PaperTray Paper tray selection.
DeferredInfo Public DeferredInfo As DeferredPrintInfoClass Deferred-delivery metadata.
ToString Public Overrides Function ToString() As String Renders all fields, including nested object ToString() output where populated, as a labeled multi-line diagnostic string.

Behavioral notes

  • ToString() substitutes an empty string for Importinfo, EmailInfo, FaxInfo, and DeferredInfo when those fields are Nothing, rather than throwing a null-reference exception.
  • clsPrint.distributeDocument() constructs a CompositeRequestClass instance and sends it through the MSMQ transaction path when Asynchronous is True.*

Constraints and usage notes

  • The class must remain serializable (<Serializable()>) because instances are transmitted as MSMQ message bodies.
  • Consumers reading queued messages must deserialize into clsPrint.CompositeRequestClass to access the original request fields.

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.

Sources

  • Services\SAIF.Services.Printing\clsPrint.vb