IRISLIB database
Utils Class Reference

Utility container for the cube manager. More...

Inheritance diagram for Utils:
Collaboration diagram for Utils:

Static Public Member Functions

_.Library.Status BuildAllRegisteredGroups (_.DeepSee.CubeManager.RegistryMap pMap, pBuildStats, _.Library.Boolean pVerbose)
 This is a utility method which executes a complete build of all currently registered cubes in the current cube registry. More...
 
_.Library.Status BuildCube (_.Library.String pCubeName, _.Library.Boolean pAsync, _.Library.Boolean pVerbose, _.Library.Boolean pIndexOnly, _.Library.Integer pMaxFacts, _.Library.Boolean pTracking, _.Library.Boolean pRepair, _.DeepSee.CubeManager.RegistryMapCube pMapCube, pBuildStats, _.Library.String pFactList)
 A wrapper for <method>DeepSee.Utils. More...
 
_.Library.Status BuildOneRegisteredGroup (pGroupName, _.DeepSee.CubeManager.RegistryMap pMap, pBuildStats, _.Library.Boolean pVerbose)
 This is a utility method which executes a complete build of one registered cube group in the current cube registry. More...
 
_.DeepSee.CubeManager.RegistryMap BuildRegistryMap (pStatus, pClassName, pRegisteredOnly, pLookup)
 Retrieve the map that describes the current state of the Cube. More...
 
_.Library.String GetActiveRegistry ()
 Retrieve the name of the Cube Registry currently marked Active.
 
_.Library.Status GetCubeGroups (pGroups, pCubes, pBuildOrders, pReg)
 Calculates the natural groups for all cubes on the system. More...
 
_.Library.Status GetDependentCubes (pCubeName, _.DeepSee.CubeManager.RegistryMap pMap, pDependentCubes, pGroups, pCubes, pBuildOrders)
 This method accumulates the complete list of cubes dependent on this target. More...
 
_.Library.String GetLastUpdate (pCubeKey, pUpdateType)
 Retrieves the timestamp of the the last registered data update for the cube. More...
 
_.Library.Boolean IsUpdate (_.DeepSee.CubeManager.RegistryMapCube pCube, _.Library.String pGroupName)
 Utility method used to determine whether this cube needs to be processed. More...
 
_.Library.Boolean IsValidCubeSchedule (_.DeepSee.CubeManager.RegistryMapCube pCube, pStatus)
 Validation for the current cube settings.
 
_.Library.Boolean IsValidGroup (_.DeepSee.CubeManager.RegistryMapGroup pGroup, _.Library.Status pStatus, pGroups, pCubes, pBuildOrders)
 Boolean test which returns 1 if the group supplied as the argument is no. More...
 
_.Library.Status RepairBuild (_.Library.String pCubeName, _.DeepSee.CubeManager.RegistryMap pMap, _.Library.Boolean pAsync, _.Library.Boolean pVerbose, _.Library.Boolean pIndexOnly, _.Library.Integer pMaxFacts, _.Library.Boolean pTracking, pBuildStats, _.Library.String pFactList)
 This method provides a means of doing an unscheduled repair build. More...
 
_.Library.Status SetActiveRegistry (pClassName, pMustExist)
 Change which Cube Registry is currently active. More...
 
_.Library.Status SynchronizeCube (_.Library.String pCubeName, _.Library.Boolean pVerbose, _.Library.Integer pFactsUpdated, _.Library.Boolean pReadCommitted, _.Library.Boolean pCheckReferences, _.Library.Boolean pAsync, _.DeepSee.CubeManager.RegistryMapCube pMapCube, pSynchronizeStats)
 A wrapper for <method>DeepSee.Utils. More...
 
_.Library.Status WriteToRegistry (_.DeepSee.CubeManager.RegistryMap pCubeMap, pValidation)
 Walk through a CubeManager.RegistryMap object and register the cubes. More...
 

Additional Inherited Members

- Public Member Functions inherited from RegisteredObject
_.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 OnClose ()
 This callback method is invoked by the <METHOD>Close</METHOD> method to. More...
 
_.Library.Status OnConstructClone (_.Library.RegisteredObject object, _.Library.Boolean deep, _.Library.String cloned)
 This callback method is invoked by the <METHOD>ConstructClone</METHOD> method to. More...
 
_.Library.Status OnNew ()
 This callback method is invoked by the <METHOD>New</METHOD> method to. More...
 
_.Library.Status OnValidateObject ()
 This callback method is invoked by the <METHOD>ValidateObject</METHOD> method to. More...
 
- Static Public Attributes inherited from RegisteredObject
 CAPTION = None
 Optional name used by the Form Wizard for a class when generating forms. More...
 
 JAVATYPE = None
 The Java type to be used when exported.
 
 PROPERTYVALIDATION = None
 This parameter controls the default validation behavior for the object. More...
 

Detailed Description

Utility container for the cube manager.

Member Function Documentation

◆ BuildAllRegisteredGroups()

_.Library.Status BuildAllRegisteredGroups ( _.DeepSee.CubeManager.RegistryMap  pMap,
  pBuildStats,
_.Library.Boolean  pVerbose 
)
static

This is a utility method which executes a complete build of all currently registered cubes in the current cube registry.

The build initiated by this utility will walk through every cube and build it in the order it is listed in the DeepSee Cube Registry page. This can be used to initialize the system, for example after importing a new registry definition or restoring a backup of the source data.
Build statistics for each cube in the registry can be returned by reference in pBuildStats(CUBENAME).

◆ BuildCube()

_.Library.Status BuildCube ( _.Library.String  pCubeName,
_.Library.Boolean  pAsync,
_.Library.Boolean  pVerbose,
_.Library.Boolean  pIndexOnly,
_.Library.Integer  pMaxFacts,
_.Library.Boolean  pTracking,
_.Library.Boolean  pRepair,
_.DeepSee.CubeManager.RegistryMapCube  pMapCube,
  pBuildStats,
_.Library.String  pFactList 
)
static

A wrapper for <method>DeepSee.Utils.

BuildCube</method> which records

cube event information when building the cube. All arguments listed after pCubeName perfrom the identical function as they do in <method>BuildCube</method>, with the exception of pRepair. This argument changes the event type in the logs to note that this cube was rebuilt as part of a repair build.

◆ BuildOneRegisteredGroup()

_.Library.Status BuildOneRegisteredGroup (   pGroupName,
_.DeepSee.CubeManager.RegistryMap  pMap,
  pBuildStats,
_.Library.Boolean  pVerbose 
)
static

This is a utility method which executes a complete build of one registered cube group in the current cube registry.

The build initiated by this utility will walk through every cube and build it in the order it is listed in the DeepSee Cube Registry page.

The value of pGroupName must exactly match the case of the registered group name to inititate the group build.
Build statistics for each cube in the group can be returned by reference in pBuildStats(CUBENAME).

◆ BuildRegistryMap()

_.DeepSee.CubeManager.RegistryMap BuildRegistryMap (   pStatus,
  pClassName,
  pRegisteredOnly,
  pLookup 
)
static

Retrieve the map that describes the current state of the Cube.

Registry and all other unregistered cubes on the system. By default, the currently active registry is loaded first and then this is augmented with the remaining unregistered natural cube groups. The registry object can be loaded from a non-active registry class by supplying the name of the alternate storage class in the pClassName parameter. The unregistered groups may be ignored when loading the class by setting
pRegisteredOnly = 1

Optionally pLookup may be constructed to provide an index of the ordered locations of every cube loaded into the map object. This takes the form
pLookup(CubeKey) = $LB(GroupPosition,CubePosition)

Set CubeName = "HOLEFOODS" Set Map = ##class(DeepSee.CubeManager.Utils).BuildRegistryMap(,,,.Lookup) Set GroupIdx = $LG(Lookup("cubes",CubeName),1) Set CubeIdx = $LG(Lookup("cubes",CubeName),2) Set Cube = Map.Groups.GetAt(GroupIdx).Cubes.GetAt(CubeIdx)

◆ GetCubeGroups()

_.Library.Status GetCubeGroups (   pGroups,
  pCubes,
  pBuildOrders,
  pReg 
)
static

Calculates the natural groups for all cubes on the system.

Group information is

returned in array form. These arrays are organized as follows:

pGroups(groupName,cubeKey) = buildOrder
pCubes(cubeKey) = groupName
pBuildOrders(groupName,buildPosition) = cubeKey<br>
If the cube has dependencies, there will be an additional array<br>
pCubes(cubeKey,"dependents")

which will list the cubes that must be updated if this one has been updated.

◆ GetDependentCubes()

_.Library.Status GetDependentCubes (   pCubeName,
_.DeepSee.CubeManager.RegistryMap  pMap,
  pDependentCubes,
  pGroups,
  pCubes,
  pBuildOrders 
)
static

This method accumulates the complete list of cubes dependent on this target.

cube, based on defined relationships. Every cube in pDependentCubes must be built following a build of pCubeName. This is an alphabetical list, it is not a build order.
The registry map can optionally be passed in as pMap to take advantage of the relationship information already stored in the cube registry, avoiding the recalcualtion of natural groups on the system.

◆ GetLastUpdate()

_.Library.String GetLastUpdate (   pCubeKey,
  pUpdateType 
)
static

Retrieves the timestamp of the the last registered data update for the cube.

Updates

performed outside of the Cube Manager will not be recognized in this check.

◆ IsUpdate()

_.Library.Boolean IsUpdate ( _.DeepSee.CubeManager.RegistryMapCube  pCube,
_.Library.String  pGroupName 
)
static

Utility method used to determine whether this cube needs to be processed.

when we write to the registry. Cubes that have not been updated don't get processed because we don't want to generate a cube history event unnecessarily.

◆ IsValidGroup()

_.Library.Boolean IsValidGroup ( _.DeepSee.CubeManager.RegistryMapGroup  pGroup,
_.Library.Status  pStatus,
  pGroups,
  pCubes,
  pBuildOrders 
)
static

Boolean test which returns 1 if the group supplied as the argument is no.

less than the union of the natural groups of each of its members. If this test returns 0, the specific reason for the failure will be recorded in pStatus.

◆ RepairBuild()

_.Library.Status RepairBuild ( _.Library.String  pCubeName,
_.DeepSee.CubeManager.RegistryMap  pMap,
_.Library.Boolean  pAsync,
_.Library.Boolean  pVerbose,
_.Library.Boolean  pIndexOnly,
_.Library.Integer  pMaxFacts,
_.Library.Boolean  pTracking,
  pBuildStats,
_.Library.String  pFactList 
)
static

This method provides a means of doing an unscheduled repair build.

of a registered cube. This method will build the target cube, and then trigger a build of the entire list of cubes that depend on it through cube relationships.
Build statistics for each cube in the registry can be returned by reference in pBuildStats(CUBENAME).

◆ SetActiveRegistry()

_.Library.Status SetActiveRegistry (   pClassName,
  pMustExist 
)
static

Change which Cube Registry is currently active.

The Active Registry is the

only one that is visible to the updater tasks.

◆ SynchronizeCube()

_.Library.Status SynchronizeCube ( _.Library.String  pCubeName,
_.Library.Boolean  pVerbose,
_.Library.Integer  pFactsUpdated,
_.Library.Boolean  pReadCommitted,
_.Library.Boolean  pCheckReferences,
_.Library.Boolean  pAsync,
_.DeepSee.CubeManager.RegistryMapCube  pMapCube,
  pSynchronizeStats 
)
static

A wrapper for <method>DeepSee.Utils.

SynchronizeCube</method> which records

cube event information when building the cube. This method will quit with an error if

  • pCubeName refers to an unregistered cube
  • pCubeName is marked as disabled in the registry

◆ WriteToRegistry()

_.Library.Status WriteToRegistry ( _.DeepSee.CubeManager.RegistryMap  pCubeMap,
  pValidation 
)
static

Walk through a CubeManager.RegistryMap object and register the cubes.

This saves the

complete registry to an XData block in a container class, and saves limited information to the registry table for SQL reference.