IPM
Module Class Reference
Inheritance diagram for Module:
Inheritance graph

Public Member Functions

_.Library.Status OnAddToSaveSet (_.Library.Integer depth, _.Library.Integer insert, _.Library.Integer callcount)
 This callback method is invoked when the current object is added to the SaveSet,. More...
 
_.Library.Status OnNew ()
 This callback method is invoked by the <METHOD>New</METHOD> method to. More...
 
_.Library.Status OnOpen ()
 This callback method is invoked by the <METHOD>Open</METHOD> method to. More...
 
_.Library.Status OnValidateObject ()
 This callback method is invoked by the <METHOD>ValidateObject</METHOD> method to. More...
 
_.Library.Boolean CompareWithRelationships (_.IPM.Storage.Module pModuleObj, _.Library.List pIgnorePropertyList, _.Library.List pDifferingPropertyArray)
 Calls <method>CompareTo</method> on this object and also calls it on any relationships in the class. More...
 
_.Library.Status GetResolvedReferences (pReferenceArray, _.Library.Boolean pLockedDependencies, _.Library.List pPhases, _.Library.Boolean pSkipDependencies, pDependencyGraph)
 Builds a module's immediate dependency graph and array of resources. More...
 
_.Library.Status GetStudioProject (_.Studio.Project pProject, _.Library.Boolean pDeployedCode, _.Library.Boolean pDefaultDeployedValue, _.Library.String pProjectSuffix)
 By default (first byref argument only), creates a Studio project containing all of the module's resources. More...
 

Static Public Member Functions

_.Library.Status ExecutePhases (_.Library.String pModuleName, _.Library.List pPhases, _.Library.Boolean pIsComplete, pParams)
 Execute multiple lifecycle phases in sequence. More...
 
_.Library.List GetKnownDependencies (_.Library.String pModuleName)
 This method builds a list of any direct/indirect dependencies of the module named pModuleName in a breadth-first manner.
 
_.Library.Status Uninstall (_.Library.String pModuleName, _.Library.Boolean pForce, _.Library.Boolean pRecurse, pParams)
 Uninstalls a named module (pModuleName). More...
 
_.Library.Status ValidateStream (_.Stream.Object pManifest, _.IPM.Storage.QualifiedModuleInfo pModuleReference, _.IPM.Storage.Module pModule)
 Validates the module manifest in pManifest - both that it can be interpreted properly as XML, and also that the module it contains (returned in pModule) has. More...
 
_.Library.RegisteredObject XMLNew (_.XML.Document document, _.Library.Integer node, _.Library.RegisteredObject containerOref)
 Get an instance of an XML enabled class. More...
 
- Static Public Member Functions inherited from ComparisonAdaptor
_.Library.Boolean CompareToSkipCondition (_.Dictionary.CompiledProperty pCompiledProperty)
 Condition under which a given property is skipped when generating code for the. More...
 
_.Library.List FindAllSuperClasses (_.Dictionary.Classname pClassname)
 Returns a list of all super classes for a given class pClassname
 
_.Library.List IgnoreKeywordList ()
 Returns a list of keywords such that, if a property contains any of these,. More...
 

Public Attributes

 AfterInstallMessage
   More...
 
 Author
   More...
 
 AvailabilityClass
 Defined class which can report that a module is not available for this instance/namespace. More...
 
 CalculatedResources
 Calculated property used for XML output of Resources relationship (in a reasonable order: More...
 
 Defaults
 Default settings - there may be serveral types of these (subclasses of ModuleSetting). More...
 
 Dependencies
   More...
 
 Deployed
   More...
 
 Description
   More...
 
 DeveloperMode
 Set to 1 if this module is in development mode, 0 if it is not. More...
 
 ExternalName
   More...
 
 GlobalScope
   More...
 
 Hash
   More...
 
 InstallerClass
   More...
 
 Invokes
   More...
 
 Keywords
   More...
 
 LastModifiedTimestamp
   More...
 
 Lifecycle
   More...
 
 LifecycleClass
 Lifecycle class used by default for this module. More...
 
 Mappings
   More...
 
 OverrideLifecycleClass
 Lifecycle class to use for a specific command (may be overridden from command line) More...
 
 Packaging
 Typically "module" or "application", but intentionally not enforced with VALUELIST. More...
 
 Resources
   More...
 
 Root
 Root directory on the filesystem from which this module was loaded. More...
 
 SourcesRoot
 Sources root, where placed any source code. More...
 
 SystemRequirements
   More...
 
 Version
 Does not need comparison method to be code generated because that comparing <property>VersionString</property> is good enough. More...
 
 VersionString
   More...
 
- Public Attributes inherited from ModuleInfo
 AllVersions
   More...
 
 Deployed
   More...
 
 Description
   More...
 
 DisplayName
 Case-sensitive display name of the module as it appears in the module manifest. More...
 
 Name
 lowercase storage name of the module More...
 
 Origin
   More...
 
 PlatformVersion
 Version of IRIS for Deployed modules. More...
 
 Repository
 The repository from which this module was loaded. More...
 
 Version
   More...
 
 VersionString
   More...
 

Static Private Member Functions

 __HasScope (_.Library.List pPhases, _.Library.String pScope)
 Returns whether pScope is in the list of pPhases

 

Additional Inherited Members

- Static Public Attributes inherited from ComparisonAdaptor
 SkipCodeGeneration = None
 Handles code generation of a grab bag of useful functions to be code generated, such as the following: More...
 

Member Function Documentation

◆ OnAddToSaveSet()

_.Library.Status OnAddToSaveSet ( _.Library.Integer  depth,
_.Library.Integer  insert,
_.Library.Integer  callcount 
)

This callback method is invoked when the current object is added to the SaveSet,.

either because Save() was invoked on this object or on an object that references this object. OnAddToSaveSet can modify the current object. It can also add other objects to the current SaveSet by invoking AddToSaveSet or remove objects by calling RemoveFromSaveSet.

If this method returns an error status then Save() will fail and the transaction will be rolled back.

◆ OnNew()

_.Library.Status OnNew ( )

This callback method is invoked by the <METHOD>New</METHOD> method to.

provide notification that a new instance of an object is being created.

If this method returns an error then the object will not be created.

It is passed the arguments provided in the New call. When customizing this method, override the arguments with whatever variables and types you expect to receive from New(). For example, if you're going to call New, passing 2 arguments, OnNew's signature could be:

Method OnNew(dob as Date = "", name as Name = "") as Status If instead of returning a Status code this returns an oref and this oref is a subclass of the current class then this oref will be the one returned to the caller of New method.

◆ OnOpen()

_.Library.Status OnOpen ( )

This callback method is invoked by the <METHOD>Open</METHOD> method to.

provide notification that the object specified by oid is being opened.

If this method returns an error then the object will not be opened.

◆ OnValidateObject()

_.Library.Status OnValidateObject ( )

This callback method is invoked by the <METHOD>ValidateObject</METHOD> method to.

provide notification that the current object is being validated.

If this method returns an error then <METHOD>ValidateObject</METHOD> will fail.

◆ CompareWithRelationships()

_.Library.Boolean CompareWithRelationships ( _.IPM.Storage.Module  pModuleObj,
_.Library.List  pIgnorePropertyList,
_.Library.List  pDifferingPropertyArray 
)

Calls <method>CompareTo</method> on this object and also calls it on any relationships in the class.

specifically <property>Mappings</property> and <property>Resources</property>.

◆ ExecutePhases()

_.Library.Status ExecutePhases ( _.Library.String  pModuleName,
_.Library.List  pPhases,
_.Library.Boolean  pIsComplete,
  pParams 
)
static

Execute multiple lifecycle phases in sequence.

Execution is terminated if one fails.

Example: $ListBuild("Clean","Test") or $ListBuild("Test","Install") @API.Method

◆ GetResolvedReferences()

_.Library.Status GetResolvedReferences (   pReferenceArray,
_.Library.Boolean  pLockedDependencies,
_.Library.List  pPhases,
_.Library.Boolean  pSkipDependencies,
  pDependencyGraph 
)

Builds a module's immediate dependency graph and array of resources.


Optionally loads uninstalled dependency modules and recurses over each module in the dependency graph.
@Argument pReferenceArray Array of all module's resources (including resources that compose a resource) that contain the appropriate phase scope.
@Argument pLockedDependencies Whether method should be recursively applied to the module's dependencies (true = yes).
@Argument pPhases List of IPM lifecycle phases to be applied to the current module.
@Argument pSkipDependencies Whether to skip loading uninstalled dependency modules.
@Argument pDependencyGraph Tree of module's dependencies.

◆ GetStudioProject()

_.Library.Status GetStudioProject ( _.Studio.Project  pProject,
_.Library.Boolean  pDeployedCode,
_.Library.Boolean  pDefaultDeployedValue,
_.Library.String  pProjectSuffix 
)

By default (first byref argument only), creates a Studio project containing all of the module's resources.

If pDeployedCode is non-empty, only includes code that should be deployed (if true) or not deployed (if false). pDefaultDeployedValue specifies the default behavior for resources with the Deploy attribute left null. pProjectSuffix is appended to the project name (which defaults to the module name, with periods replaced by underscores). The project suffix may be used (for example) to distinguish between projects for deployed and undeployed code.

◆ Uninstall()

_.Library.Status Uninstall ( _.Library.String  pModuleName,
_.Library.Boolean  pForce,
_.Library.Boolean  pRecurse,
  pParams 
)
static

Uninstalls a named module (pModuleName).

May optionally force installation (uninstalling even if required by other modules) if pForce is 1. May optionally recurse to also uninstall dependencies that are not required by other modules if pRecurse is 1. If both pForce and pRecurse are 1, then dependencies will also be uninstalled forcibly. @API.Method

◆ ValidateStream()

_.Library.Status ValidateStream ( _.Stream.Object  pManifest,
_.IPM.Storage.QualifiedModuleInfo  pModuleReference,
_.IPM.Storage.Module  pModule 
)
static

Validates the module manifest in pManifest - both that it can be interpreted properly as XML, and also that the module it contains (returned in pModule) has.

a name and version matching the supplied pModuleReference.

◆ XMLNew()

_.Library.RegisteredObject XMLNew ( _.XML.Document  document,
_.Library.Integer  node,
_.Library.RegisteredObject  containerOref 
)
static

Get an instance of an XML enabled class.



You may override this method to do custom processing (such as initializing the object instance) before returning an instance of this class. However, this method should not be called directly from user code.
Arguments:
document is the document with XML.Node or macros in xmlDOM.inc.
nodeId is a node id of the node which defines this object. An XML.Node object may be obtained for this node using document.GetNode(nodeId)
containerOref is the containing object instance when called from XMLImport and is "" when called from XML.Reader for Correlate'd objects.

Member Data Documentation

◆ AfterInstallMessage

AfterInstallMessage

 

 

◆ Author

Author

 

 

◆ AvailabilityClass

AvailabilityClass

Defined class which can report that a module is not available for this instance/namespace.

 

◆ CalculatedResources

CalculatedResources

Calculated property used for XML output of Resources relationship (in a reasonable order:

packages, classes, includes, globals, routines, CSP resources, then in alphabetical order within those categories).  

◆ Defaults

Defaults

Default settings - there may be serveral types of these (subclasses of ModuleSetting).

 

◆ Dependencies

Dependencies

 

 

◆ Deployed

Deployed

 

 

◆ Description

Description

 

 

◆ DeveloperMode

DeveloperMode

Set to 1 if this module is in development mode, 0 if it is not.

 

◆ ExternalName

ExternalName

 

 

◆ GlobalScope

GlobalScope

 

 

◆ Hash

Hash

 

 

◆ InstallerClass

InstallerClass

 

 

◆ Invokes

Invokes

 

 

◆ Keywords

Keywords

 

 

◆ LastModifiedTimestamp

LastModifiedTimestamp

 

 

◆ Lifecycle

Lifecycle

 

 

◆ LifecycleClass

LifecycleClass

Lifecycle class used by default for this module.

 

◆ Mappings

Mappings

 

 

◆ OverrideLifecycleClass

OverrideLifecycleClass

Lifecycle class to use for a specific command (may be overridden from command line)

 

◆ Packaging

Packaging

Typically "module" or "application", but intentionally not enforced with VALUELIST.

 

◆ Resources

Resources

 

 

◆ Root

Root

Root directory on the filesystem from which this module was loaded.

 

◆ SourcesRoot

SourcesRoot

Sources root, where placed any source code.

 

◆ SystemRequirements

◆ Version

Version

Does not need comparison method to be code generated because that comparing <property>VersionString</property> is good enough.

 

◆ VersionString

VersionString