DocBook|Search
Class Reference
%iKnow.Source.Global.Processor
   
Server:basexml
Instance:SOAXML
User:UnknownUser
 
-
  [BASEXML] >  [%iKnow] >  [Source] >  [Global] >  [Processor]
Private  Storage  

class %iKnow.Source.Global.Processor extends %iKnow.Source.Processor

This Processor implementation reads data from global nodes, as listed by the ExpandList method of the %iKnow.Source.Global.Lister.

Processor parameters:

  1. type As %Integer - format of global data:
    • 0 - single node (default)
    • 1 - top node has count with subnodes 1..n having data
    • 2 - top node has metadata, subnodes 1..n have data
  2. separator As %String - default "", but could use " ", $c(13,10) or $c(10), " . " to either keep each node separated, or on separate line, or separate sentence.
  3. metadataFields As %String - for type 2 only, list of metadata fields in top node

Extracted metadata keys: [None]

Inventory

Parameters Properties Methods Queries Indices ForeignKeys Triggers
3


Summary

Methods
%%OIDGet %AddToSaveSet %ClassIsLatestVersion %ClassName
%ConstructClone %DispatchClassMethod %DispatchGetModified %DispatchGetProperty
%DispatchMethod %DispatchSetModified %DispatchSetMultidimProperty %DispatchSetProperty
%Extends %GetParameter %IsA %IsModified
%New %NormalizeObject %ObjectModified %OriginalNamespace
%PackageName %RemoveFromSaveSet %SerializeObject %SetModified
%ValidateObject FetchSource GetMetadataKeys ProcessListElement
ProcessVirtualListElement SetConverter SetParams


Methods

• method FetchSource(loc As %Integer, ref As %List) as %Status

This is the primary method that will need to be implemented by subclasses. It gets the local ID of the source being processed (as assigned by the lister) and the Composite Reference in %List format. Data read by the Processor should be buffered through calling ..Buffer.BufferString(), which will automatically forward the data to the iKnow Indexing engine or, if configured, a %iKnow.Source.Converter object that will in turn push converted data through to the engine.

If this Processor also extracts metadata while reading (as specified in its GetMetadataKeys implementation), it should make sure to invoke SetCurrentMetadataValues at some point in this methods execution.

• classmethod GetMetadataKeys(params As %String) as %List

Subclasses should override this method to identify those metadata keys that are calculated or extracted by this Processor implementation and will be registered for every source processed by calling SetCurrentMetadataValues during the FetchSource execution.

• method SetParams(params As %String) as %Status

This method stores the Processor parameters in the Params property, from where they can be referenced in the FetchSource implementation.

NOTE: If this method is overridden by a subclass, it should make sure to either call this method via ##super, or set Params itself.