This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.

For information on migrating to InterSystems IRIS, see Why Migrate to InterSystems IRIS?


class %iKnow.Source.File.Processor extends %iKnow.Source.Processor

This Processor implementation reads data from a filesystem, as listed by the ExpandList method of the %iKnow.Source.File.Lister.

Processor parameters:

  1. encoding As %String - encoding of the files to be read.

Extracted metadata keys:

  1. Size
  2. DateCreated
  3. DateModified

Property Inventory (Including Private)

Method Inventory (Including Private)


property Directory as %String [ Private ];
Property methods: DirectoryDisplayToLogical(), DirectoryGet(), DirectoryIdDisplayToLogical(), DirectoryIdGet(), DirectoryIdIsValid(), DirectoryIdLogicalToDisplay(), DirectoryIdNormalize(), DirectoryIdSet(), DirectoryIsValid(), DirectoryLogicalToDisplay(), DirectoryLogicalToOdbc(), DirectoryNormalize(), DirectorySet()
property DirectoryId as %Integer [ Private ];
Property methods: DirectoryIdDisplayToLogical(), DirectoryIdGet(), DirectoryIdIsValid(), DirectoryIdLogicalToDisplay(), DirectoryIdNormalize(), DirectoryIdSet()
property OpenParms as %String [ Private , InitialExpression = "RU" ];
Property methods: OpenParmsDisplayToLogical(), OpenParmsGet(), OpenParmsIsValid(), OpenParmsLogicalToDisplay(), OpenParmsLogicalToOdbc(), OpenParmsNormalize(), OpenParmsSet()


private method FetchSource(loc As %Integer, ref As %List) as %Status
Inherited description:

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
Inherited description:

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
Inherited description:

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.

Inherited Members

Inherited Properties (Including Private)

Inherited Methods (Including Private)