Home > Class Reference > %SYS namespace > %iKnow.Source.Domain.Lister

%iKnow.Source.Domain.Lister

class %iKnow.Source.Domain.Lister extends %iKnow.Source.Lister

Lister implementation for loading data from an existing Domain.

Lister Parameters to be supplied to AddListToBatch() and ProcessList() calls:

  1. sourceDomainId As %String - the domain ID where to load from (should be in the same namespace)
  2. filterString As %String (optional) - if set, only the sources in the source domain satisfying the filter represented by this filter string (see ToString() in %iKnow.Filters.Filter will be loaded. If a comma-delimited list of %Integer values is passed in rather than a filter representation, this is considered as a list of source IDs that need to be copied. Negative source IDs are interpreted as referring to a Virtual Source.

External ID structure: the external IDs of the source domain are maintained

Default Processor: %iKnow.Source.Domain.Processor

See also %iKnow.Utils.CopyUtils for methods to copy other domain elements.

Please note any sources copied with this Lister will be created using the version of the target domain, regardless of the source domain's version number.

Methods

classmethod DefaultProcessor() as %String
method ExpandList(listparams As %List) as %Status
Inherited description:

This method should be overridden by subclasses, implementing how they scan through the particular type of source location or structures they specialize in. The arguments for this method are the same Lister Parameters as those used when issuing the corresponding AddListToBatch() call and are specified and documented by the Lister implementation.

When expanding the list, the Lister should build a "Composite reference": a %List containing the lister ID, the group ID and the local reference for each (candidate) source it found and pass that to either a StoreRef(), StoreTemp() or StoreTempStream() call. Optionally, it can store metadata for each of these refs using the SetMetadataValues() method.

NOTE: This method is used by the iKnow loading frameworkand should never be called by custom code.

method MaterializeVirtualSource(vSrcId As %Integer) as %Status
Shorthand method to materialize a Virtual Source, moving it into the real domain.
method TestParams(listerParams...) as %Status
Inherited description:

This method is called at the start of ProcessList() and AddListToBatch() to validate the supplied Lister Parameters. Subclasses should override this method to execute the validation logic specific to their Lister Parameters.

Inherited Methods

%AddToSaveSet() %IsModified() GetAlias()
%ClassIsLatestVersion() %New() GetExtidPrefix()
%ClassName() %NormalizeObject() GetGroupId()
%ConstructClone() %ObjectModified() GetGroupName()
%DispatchClassMethod() %OriginalNamespace() Init()
%DispatchGetModified() %PackageName() ProcessList()
%DispatchGetProperty() %RemoveFromSaveSet() ProcessVirtualList()
%DispatchMethod() %SerializeObject() RegisterFixedMetadata()
%DispatchSetModified() %SetModified() SetConfig()
%DispatchSetMultidimProperty() %ValidateObject() SetConverter()
%DispatchSetProperty() AddListToBatch() SetProcessor()
%Extends() BuildExtId() SplitExtId()
%GetParameter() BuildExtIdFromName()
%IsA() FormatParams()