[This is preliminary documentation and is subject to change.]
Respond to a SIF_Request for SIF_ReportObject received from a zone.
The implementation should evaluate the supplied ReportManifestRefId
and Query to build a set of SIFDataObjects that satisfy the conditions
and field restrictions placed on the query. If the agent cannot satisfy
the query it should return without taking any action.
Assign report information to the ReportObjectOutputStream object by
constructing a ReportInfo instance (from the com.edustructures.sifworks.reporting
package) and passing that instance to the
CopyC#
method. Alternatively, you may call the following methods directly:
CopyC# method. To
return an error with the response, call the
CopyC# method
or throw a SifException. The ADK will convert the exception into a SIF_Error
element and include it in the payload of the SIF_Response.
The ADK returns the results of the request to the requestor by sending
one or more SIF_Response messages with packetized SIF_ReportObject payloads.
This is handled in a separate thread managed by the framework. If the number
of SIFDataObjects passed to the output stream is too large to fit into a
single SIF_ReportObject and SIF_Response message, the ADK handles breaking
it up into multiple packets. The result data may be temporarily stored on
disk until all packets can be returned to the ZIS.
setReportInfo
CopyC#setReportManifestRefId
CopyC#setDescription
CopyC#setCalculationDate
CopyC#setSubmissionNumber
CopyC#setSubmissionReason
ReportObjectOutputStream.write( SifDataObject )
setError
| C# | Visual Basic | Visual C++ |
void OnReportRequest( string reportObjectRefId, IReportObjectOutputStream outStream, Query query, IZone zone, IMessageInfo info )
Sub OnReportRequest ( _ reportObjectRefId As String, _ outStream As IReportObjectOutputStream, _ query As Query, _ zone As IZone, _ info As IMessageInfo _ )
void OnReportRequest ( String^ reportObjectRefId, IReportObjectOutputStream^ outStream, Query^ query, IZone^ zone, IMessageInfo^ info )
- reportObjectRefId (String)
- The RefId of the SIF_ReportObject being requested
- outStream (IReportObjectOutputStream)
- The output stream to send SifDataObject results to
- query (Query)
- The query conditions
- zone (IZone)
- The zone this SIF_Request was received on
- info (IMessageInfo)
- Provides protocol-specific information about the message.