Class Reference
IRIS for UNIX 2024.1.2
InterSystems: The power behind what matters   
Documentation  Search
  [USER] >  [%IPM] >  [ResourceProcessor] >  [Default] >  [Document]
Private  Storage   

class %IPM.ResourceProcessor.Default.Document extends %IPM.ResourceProcessor.AbstractCompilable

Inventory

Parameters Properties Methods Queries Indices ForeignKeys Triggers
4 10 16


Summary

Properties
Compile CompileAfter Directory DirectoryDefined
ExportFlags FilenameExtension FilenameTranslateAssociator FilenameTranslateIdentifier
Flags Format LoadAsDirectory Params

Methods
%AddToSaveSet %ClassIsLatestVersion %ClassName %ConstructClone
%DispatchClassMethod %DispatchGetModified %DispatchGetProperty %DispatchMethod
%DispatchSetModified %DispatchSetMultidimProperty %DispatchSetProperty %Extends
%GetParameter %IsA %IsModified %New
%NormalizeObject %ObjectModified %OriginalNamespace %PackageName
%RemoveFromSaveSet %SerializeObject %SetModified %ValidateObject
ApplyDefaults DirectorySet GetAttributeMetadata GetDescription
GetSourceControlInfo OnAfterPhase OnBeforeArtifact OnBeforePhase
OnConfigureMappings OnExportDeployedItem OnExportItem OnGetStudioProject
OnGetUniqueName OnItemRelativePath OnLoad OnLoadDeployed
OnPhase OnResolveChildren ResourceIsMappedToDefaultDB SatisfiesCondition
SetParams

Subclasses
%IPM.ResourceProcessor.Default.Class %IPM.ResourceProcessor.Default.DeepSeeItem %IPM.ResourceProcessor.Default.Interoperability
%IPM.ResourceProcessor.Default.LocalizedMessages %IPM.ResourceProcessor.Default.Package %IPM.ResourceProcessor.Default.Routine

Parameters

• parameter ATTRIBUTES = "Compile,CompileAfter,Flags,ExportFlags,Directory,LoadAsDirectory,FilenameExtension,FilenameTranslateIdentifier,FilenameTranslateAssociator,Format";
Comma-separated list of resource attribute names that this processor uses
• parameter DESCRIPTION = "Default resource processor class for %Studio.AbstractDocument subclasses";
Description of resource processor class (shown in UI)
• parameter EXTENSION;
May be set to determine the value of Extension based on a static value rather than based on the resource name. The only expected use case at this point is class packages (.PKG, but Extension will be .CLS)
• parameter NAMEPOSTFIX;
When a module is loaded in developer mode, this is appended to the resource name in ^Sources - e.g., ^Sources(..Extension, _..#NAMEPOSTFIX) The only expected use case at this point is class packages (.PKG, but Extension will be .CLS)

Properties

• property Compile as %Boolean [ InitialExpression = 1 ];
If true, the resource will be compiled during the compilation phase in the module lifecycle.
• property Directory as %String(MAXLEN="") [ InitialExpression = $ZConvert(..#EXTENSION,"L") ];
Directory relative to module root containing the exported resource. Defaults to the resource's extension (lower-case) if unspecified.
• property DirectoryDefined as %Boolean [ InitialExpression = 0,Transient ];
• property FilenameExtension as %String [ InitialExpression = "xml" ];
Extension for individual filename(s) that comprise this resource
• property FilenameTranslateAssociator as %String [ InitialExpression = "/" ];
Characters in the filename to use as the associator in $translate when determining the resource's filename on disk The default behavior is to replace "." with "/" and ignore "%"
• property FilenameTranslateIdentifier as %String [ InitialExpression = ".%" ];
Characters in the filename to use as the identifier in $translate when determining the resource's filename on disk The default behavior is to replace "." with "/" and ignore "%"
• property Format as %String;
Export format - list of acceptable values may differ by subclass.
• property LoadAsDirectory as %Boolean [ InitialExpression = 0 ];
If true (default is false), the resource is loaded as a directory.

Methods

• method DirectorySet(pValue As %String) as %Status
This is a Set accessor method for the Directory property.
• method GetSourceControlInfo(Output pInfo As %IPM.ExtensionBase.SourceControl.ResourceInfo) as %Status
• method OnAfterPhase(pPhase As %String, ByRef pParams) as %Status
• method OnConfigureMappings(ByRef pParams) as %Status
Subclasses may override to customize mapping behavior at the beginning of the Reload phase.
• method OnExportDeployedItem(pFullExportPath As %String, pItemName As %String, ByRef pItemParams, ByRef pParams, Output pItemHandled As %Boolean = 0) as %Status
• method OnExportItem(pFullExportPath As %String, pItemName As %String, ByRef pItemParams, ByRef pParams, Output pItemHandled As %Boolean = 0) as %Status
• method OnGetUniqueName(Output pUniqueName)
Returns a unique name for this resource. Default implementation, leaving pUniqueName undefined, reverts to default behavior. An empty string indicates guaranteed uniqueness (useful for folders relative to module root)
• method OnItemRelativePath(pItemName As %String) as %String
Returns the path relative to the module root for item pItemName within this resource.
• method OnLoad(pFullResourcePath As %String, pVerbose As %Boolean, pCompile As %Boolean = 0, Output pLoadedList As %String, ByRef pParams As %String) as %Status
Subclasses may override to customize resource load behavior during the Reload phase.
@Argument pFullResourcePath The absolute path to the resource present on the file system @Argument pVerbose 1: display output from loading files, 0: do not display output @Argument pCompile 1: compile files upon load, 0: do not compile files @Argument pLoadedList Output: comma delimited list of files that have been loaded
• method OnLoadDeployed(ByRef pParams, ByRef pLoadedList) as %Status
• method OnPhase(pPhase As %String, ByRef pParams, Output pResourceHandled As %Boolean = 0) as %Status
Called as phase pPhase is executed for the resource. If pResourceHandled is set to true, then the default behavior for that resource will be bypassed in the current phase. Currently, this is only used in the Verify phase, because of different handling of intermediate error statuses. TODO: Implement for standard database resources (.INC, .CLS, etc.)
• method OnResolveChildren(ByRef pResourceArray) as %Status
Enumerate all documents contained in the resource being processed.
@Argument pResourceArray ByRef: array of the following format: pResourceArray() = pResourceArray(, ) = value of resource reference property for given document
• classmethod ResourceIsMappedToDefaultDB(pResourceName As %String) as %Boolean
Helper method to be used in derived classes' OnConfigureMappings() to skip creating unnecessary mappings. Returns true if pResourceName (in InternalName format - e.g., %Foo.Bar.PKG) is mapped to the current namespace's default routine database.


Copyright (c) 2025 by InterSystems Corporation. Cambridge, Massachusetts, U.S.A. All rights reserved. Confidential property of InterSystems Corporation.