%IPM.Lifecycle.Base
abstract class %IPM.Lifecycle.Base extends %Library.RegisteredObject
Property Inventory
Method Inventory
- %Activate()
- %Clean()
- %Compile()
- %Configure()
- %DispatchMethod()
- %Document()
- %Export()
- %ExportData()
- %Installer()
- %MakeDeployed()
- %Package()
- %PrepareDeploy()
- %Publish()
- %Reload()
- %Test()
- %Unconfigure()
- %Validate()
- %Verify()
- CheckBeforeClean()
- GetBaseClassForPackaging()
- GetCompletePhases()
- GetCompletePhasesForOne()
- GetDefaultParameters()
- GetDefaultResourceProcessor()
- GetDefaultResourceProcessorProc()
- GetResourceRelativePath()
- InstallPythonRequirements()
- Log()
- MatchSinglePhase()
- OnAfterPhase()
- OnAfterResourceProcessing()
- OnBeforeArtifact()
- OnBeforePhase()
- OnBeforeResourceProcessing()
- OnBeforeVerifyLoad()
- OnDetermineResourceDeployability()
- OnInstallFromPayload()
Parameters
parameter DEPLOYBYDEFAULT = 0;
parameter EXPORTDEPENDENCIES = 0;
parameter PACKAGING;
parameter PHASES;
$ListBuild list of phases in this lifecycle.
For each phase name, an instance method named "%" must be defined in the class with a return type of %Status.
For each phase name, an instance method named "%
Properties
property HasDeployedResources as %Boolean [ InitialExpression = 0 ];
Property methods: HasDeployedResourcesDisplayToLogical(), HasDeployedResourcesGet(), HasDeployedResourcesIsValid(), HasDeployedResourcesLogicalToDisplay(), HasDeployedResourcesNormalize(), HasDeployedResourcesSet()
property PhaseList as %List;
Property methods: PhaseListGet(), PhaseListIsValid(), PhaseListLogicalToOdbc(), PhaseListOdbcToLogical(), PhaseListSet()
Methods
method %Activate(ByRef pParams) as %Status
method %Clean(ByRef pParams) as %Status
method %Compile(ByRef pParams) as %Status
method %Configure(ByRef pParams) as %Status
method %DispatchMethod(pMethod As %String, ByRef pParams, Args...)
Inherited description: Is used to implement an unknown method call. It is also used
to resolve an unknown multidimensional property reference (to get the value
of a property) because that syntax is identical to a method call.
method %Document(ByRef pParams) as %Status
method %Export(ByRef pParams, ByRef pTargetDirectory As %String, Output pDependencyGraph) as %Status
Note: This is a utility method, and not a full lifecycle phase at this point.
This method exports the module's resources, based on the mappings defined in ^Sources (by %Reload), to the specified directory.
If no directory is provided, a new temp directory is created (returned by reference).
If dependencies are to be exported, pDependencyGraph is augmented with a "Location" subscript
with the relative path within pTargetDirectory in which the module's contents have been exported.
method %ExportData(ByRef pParams) as %Status
method %Installer(ByRef pParams) as %Status
method %MakeDeployed(ByRef pParams) as %Status
abstract method %Package(ByRef pParams) as %Status
abstract method %PrepareDeploy(ByRef pParams) as %Status
method %Publish(ByRef pParams) as %Status
method %Reload(ByRef pParams) as %Status
method %Test(ByRef pParams) as %Status
method %Unconfigure(ByRef pParams) as %Status
method %Validate(ByRef pParams) as %Status
method %Verify(ByRef pParams) as %Status
final classmethod GetBaseClassForPackaging(pPackaging As %String, Output pBaseClass As %Dictionary.Classname) as %Status
This method defines what a complete phase means for a given list of phases
This method defines what a complete phase means for a given phase
classmethod GetDefaultParameters(ByRef pParams, pPhases As %List)
Merges default parameters into pParams
For now, just looks at ^SYS("PackageManager","DefaultParameters")
classmethod GetDefaultResourceProcessor(pResourceName As %String) as %Dictionary.Classname
Returns the default resource processor class to use for a given resource name.
classmethod GetDefaultResourceProcessorProc(pLifecycleClass As %Dictionary.Classname, pResourceName As %String) as %String [ SQLProc = GET_DEFAULT_RESOURCE_PROCESSOR ]
Projected as the stored procedure: GET_DEFAULT_RESOURCE_PROCESSOR
Helper method to get the relative path to the *file* corresponding to a resource (used in %Reload/%Export).
If pExtension is empty, then pResource is interpreted as having an extension.
If pExtension is specified, then pResource is intrepreted as not having an extension.
Note: does not support .PKG
Note: does not yet support CSP/static files resources
method InstallPythonRequirements(pRoot As %String = "", ByRef pParams)
method Log(pMessage As %String = "", pValues...)
Match single inputted phase to the correctly CamelCased lifecycle phase
This method can be overrided to include any action that needs to be executed
after the process of module's lifecycle, and also after notifying resource processors
method OnBeforeArtifact(pExportDirectory As %String, pWorkingDirectory As %String, ByRef pParams) as %Status
This method can be overrided to include any action that needs to be executed
before the process of module's lifecycle, and also before notifying resource processors
method OnBeforeVerifyLoad(ByRef pParams) as %Status
Allows for subclasses to do additional setup or modify pParams before the "verify" phase runs.
method OnDetermineResourceDeployability(ByRef pParams, ByRef pResourceInfo, Output pDeploy As %Boolean) as %Status
method OnInstallFromPayload(ByRef pParams) as %Status
Queries
query Packaging(pPackaging As %String = "")
SQL Query:
select cp._default as Packaging, cd.Name as BaseClass from %Dictionary.CompiledClass cd join %Dictionary.CompiledParameter cp on cp.Parent = cd.Name and cp.Name = 'PACKAGING' where cd.Name %STARTSWITH '%IPM.Lifecycle' -- This is a critical assumption for performance reasons. Full ^oddCOM scans are expensive! and cd.PrimarySuper [ '~%IPM.Lifecycle.Base~' and cp.Final = 1 and cp.Origin = cd.Name and (:pPackaging is null or cp._default = :pPackaging)
select cp._default as Packaging, cd.Name as BaseClass from %Dictionary.CompiledClass cd join %Dictionary.CompiledParameter cp on cp.Parent = cd.Name and cp.Name = 'PACKAGING' where cd.Name %STARTSWITH '%IPM.Lifecycle' -- This is a critical assumption for performance reasons. Full ^oddCOM scans are expensive! and cd.PrimarySuper [ '~%IPM.Lifecycle.Base~' and cp.Final = 1 and cp.Origin = cd.Name and (:pPackaging is null or cp._default = :pPackaging)
Inherited Members
Inherited Methods
- %AddToSaveSet()
- %ClassIsLatestVersion()
- %ClassName()
- %ConstructClone()
- %DispatchClassMethod()
- %DispatchGetModified()
- %DispatchGetProperty()
- %DispatchSetModified()
- %DispatchSetMultidimProperty()
- %DispatchSetProperty()
- %Extends()
- %GetParameter()
- %IsA()
- %IsModified()
- %New()
- %NormalizeObject()
- %ObjectModified()
- %OriginalNamespace()
- %PackageName()
- %RemoveFromSaveSet()
- %SerializeObject()
- %SetModified()
- %ValidateObject()