To display the most recent stream data summary analysis results on a dashboard as a bar graph, pie chart, scatter chart, or table, you specify definitions in such a manner that only the most recent rstream calculation results based on the query definition file are displayed.
This subsection presents a coding example of an output adaptor definition and then discusses the details of the example.
<adp:OutputAdaptorDefinition name="OutputAdaptor1" charCode="MS932" lineFeed="CR_LF">
<!-- CB definition for receiving -->
<cb:ReceiveCBDefinition class="jp.co.Hitachi.soft.sdp.adaptor.callback.sendreceive.ReceiveCBImpl" name="receiver">
<cb:streamInfo name="QUERY" querygroup="Inprocess_QueryGroupTest"/>
</cb:ReceiveCBDefinition>
<!-- CB definition for data editing -->
<cb:DataEditCBDefinition class="jp.co.Hitachi.soft.sdp.adaptor.callback.dataedit.mapping.OutputMappingCBImpl" name="editor1">
<!-- Mapping definition -->
<map:MappingDefinition ioType="OUTPUT">
<map:source>
<map:streams>
<map:stream name="QUERY" querygroup="Inprocess_QueryGroupTest">
<map:column name="sendip" type="STRING"/>
<map:column name="subtime" type="LONG"/>
</map:stream>
</map:streams>
</map:source>
<map:target/>
<map:intermediate>
<map:mappings source="QUERY" querygroup="Inprocess_QueryGroupTest" target="RECORD1">
<map:map source="sendip" target="SEND_IP"/>
<map:map source="subtime" target="SUBTIME"/>
</map:mappings>
</map:intermediate>
</map:MappingDefinition>
</cb:DataEditCBDefinition>
<!-- CB definition for data editing -->
<cb:DataEditCBDefinition class="jp.co.Hitachi.soft.sdp.adaptor.callback.dataedit.mapping.InputMappingCBImpl" name="editor2">
<!-- Mapping definition -->
<map:MappingDefinition ioType="OUTPUT">
<map:source/>
<map:target>
<map:records>
<map:record name="RECORD2" >
<map:field name="SEND_IP" type="STRING"/>
<map:field name="SUBTIME" type="LONG"/>
<map:field name="GET_TUPLE_TIME" type="TIMESTAMP"/>
</map:record>
</map:records>
</map:target>
<map:intermediate>
<map:mappings source="RECORD1" target="RECORD2">
<map:map source="SEND_IP" target="SEND_IP"/>
<map:map source="SUBTIME" target="SUBTIME"/>
<map:map function="getTupleTime" target="GET_TUPLE_TIME"/>
</map:mappings>
</map:intermediate>
</map:MappingDefinition>
</cb:DataEditCBDefinition>
<cb:OutputCBDefinition class="jp.co.Hitachi.soft.sdp.adaptor.callback.io.dashboard.DashboardOutputCBImpl" name="outputer">
<!-- Dashboard output connector definition -->
<docon:DashboardOutputConnectorDefinition Record="RECORD2">
<docon:RecordHoldTime DateReference="LAST_UPDATE" RecordTime="0" DateFieldPosition="3" />
<docon:DataProcessingDefinition Name="HistoryRecorder">
<docon:HistoryRecorder/>
</docon:DataProcessingDefinition>
</docon:DashboardOutputConnectorDefinition>
</cb:OutputCBDefinition>
</adp:OutputAdaptorDefinition>
This example defines that output adaptor OutputAdaptor1 displays stream data summary analysis results on a dashboard.
This output adaptor performs the processing described in the table below (where parentheses enclose a definition name in the adaptor configuration definition file).
Type of callback | Callback processing |
---|---|
Callback for receiving (CB definition for receiving) | Tuple reception (output stream definition) |
Callback for editing (CB definition for editing) | Mapping between record and stream (mapping definition) |
Mapping between records (mapping definition) | |
Format conversion (format conversion definition) | |
Callback for sending (CB definition for sending) | Dashboard output (dashboard output connector definition) |
The details of each definition for OutputAdaptor1 are provided below.
register stream STREAM(sendip VARCHAR(15),receiveip VARCHAR(15),sendport INT,receiveport INT,uri VARCHAR(255),subtime BIGINT,times TIMESTAMP(9)); |
For details about the query definition file, see the manual uCosminexus Stream Data Platform - Application Framework Application Development Guide.