Home > Class Reference > %SYS namespace > %ZHSLIB.PackageManager.Client.P4Workspace


persistent class %ZHSLIB.PackageManager.Client.P4Workspace extends %ZHSLIB.PackageManager.Client.FilesystemServerDefinition

SQL Table Name: %ZHSLIB_PackageManager_Client.P4Workspace

Property Inventory (Including Private)

Method Inventory (Including Private)


parameter DISPLAYNAME = Perforce;
Inherited description: Display name for this type of repository, shown in the UI and package manager shell.
parameter MONIKER = p4;
Inherited description: Short/logical name for this type of repository, used in the package manager shell as an alternative to the full class name.
parameter RootPromptString;
Prompt to use for Root in interactive configuration of this repository type

Properties (Including Private)

property ClientSpec as %ZHSLIB.PackageManager.Client.P4Workspace.ClientSpec;
Client specification for the current workspace - cached to allow workspace to be used while Perforce is unavailable
Property methods: ClientSpecGet(), ClientSpecGetObject(), ClientSpecGetObjectId(), ClientSpecGetStored(), ClientSpecGetSwizzled(), ClientSpecIsEmpty(), ClientSpecIsValid(), ClientSpecNewObject(), ClientSpecSet(), ClientSpecSetObject(), ClientSpecSetObjectId(), ClientSpecUnSwizzle()
property Details as %String);
Property methods: DetailsCompute(), DetailsDisplayToLogical(), DetailsGet(), DetailsGetStored(), DetailsIsValid(), DetailsLogicalToDisplay(), DetailsLogicalToOdbc(), DetailsNormalize(), DetailsSQLCompute(), DetailsSet(), DetailsSetT()
property FileSpec as %String [ InitialExpression = "#head" ];
File spec to use while syncing files in the repository.
Property methods: FileSpecDisplayToLogical(), FileSpecGet(), FileSpecGetStored(), FileSpecIsValid(), FileSpecLogicalToDisplay(), FileSpecLogicalToOdbc(), FileSpecNormalize(), FileSpecSet()
property LastChangelistCached as %Integer;
The last changelist included when building the repository cache.
Property methods: LastChangelistCachedDisplayToLogical(), LastChangelistCachedGet(), LastChangelistCachedGetStored(), LastChangelistCachedIsValid(), LastChangelistCachedLogicalToDisplay(), LastChangelistCachedNormalize(), LastChangelistCachedSet()
property PackageService as %Library.RawString [ Private , Transient ];
This is actually an instance of %ZHSLIB.PackageManager.Client.P4Workspace.PackageService, but must be declared as %Library.RawString to support i% syntax in its accessor.
Property methods: PackageServiceGet(), PackageServiceIsValid(), PackageServiceSet()
property Recurse as %Boolean [ InitialExpression = 0 ];
Recursive - if set to true, will also find modules underneath other modules. The default is false.
Property methods: RecurseDisplayToLogical(), RecurseGet(), RecurseGetStored(), RecurseIsValid(), RecurseLogicalToDisplay(), RecurseNormalize(), RecurseSet()
property Shelves as %Library.List;
Shelved changelists to unshelve before building the repository cache.
Property methods: ShelvesGet(), ShelvesGetStored(), ShelvesIsValid(), ShelvesLogicalToOdbc(), ShelvesOdbcToLogical(), ShelvesSet()

Methods (Including Private)

private method %OnConstructClone(object As %ZHSLIB.PackageManager.Client.P4Workspace, deep As %Boolean = 0, ByRef cloned As %String) as %Status [ Language = objectscript ]
This callback method is invoked by the %ConstructClone() method to provide notification that a clone of an object is being created. It passes in the oref of the object that was cloned in object.

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

method BuildCache(pPurge As %Boolean = '$$$IsISCWorker, pVerbose As %Integer = 0, pAutoDetectDepth As %Boolean = 0) as %Status [ Language = objectscript ]
method FileSpecSet(%val) as %Status [ Language = objectscript ]
method GetPackageService(pPurge As %Boolean = 0, pVerbose As %Boolean = 0) as %ZHSLIB.PackageManager.Core.IPackageService [ Language = objectscript ]
Returns a service instance used to retrieve modules from this repository
method GetPublishService() as %ZHSLIB.PackageManager.Core.IPublishService [ Language = objectscript ]
Returns a service instance used to publish modules to this repository
classmethod OnConfigure(pInstance As %ZHSLIB.PackageManager.Client.P4Workspace, pInteractive As %Boolean = 1, ByRef pModifiers, ByRef pData) as %Status [ Language = objectscript ]
Handles modifiers/data attributes provided from the package manager shell.
method PackageServiceGet() as %ZHSLIB.PackageManager.Client.P4Workspace.PackageService [ Language = objectscript ]
method RootSet(%val) as %Status [ Language = objectscript ]
classmethod ScanPerforceBranch(pRootBranch As %String, pFileSpec As %String, ByRef pFilenameList, pVerbose As %Boolean = 0) as %Status [ Language = objectscript ]
Output format: pFilenameList() = $listbuild(,)
method UnshelveChanges(pVerbose As %Boolean = 0) [ Language = objectscript ]
Unshelve the changes in the Shelves property and resolve.
@Argument pVerbose Optionally do verbose logging.


trigger SpecChanged (BEFORE event UPDATE);

Inherited Members

Inherited Properties (Including Private)

Inherited Methods (Including Private)


Gray indicates storage defined by superclasses.

Storage Model: Storage (%ZHSLIB.PackageManager.Client.ServerDefinition)


Storage Model: Storage (%ZHSLIB.PackageManager.Client.FilesystemServerDefinition)


Storage Model: Storage (%ZHSLIB.PackageManager.Client.P4Workspace)

FeedbackOpens in a new window