PLMPosResourceUseItf Interface PLMIPosSecondaryOwnershipManager

Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.


interface PLMIPosSecondaryOwnershipManager

The Interface to manage Secondary Ownership Vectors.

Role: This interface is used to manage the Secondary Ownership Vector of any Objects.
IMPORTANT NOTE about the implementation: each instance of this interface maintains its own cache. This means that all Secondary Ownership Vectors managed by a given instance of this interface are invalidated as soon as this instance is destroyed. As a consequence, Applications should maintain one instance of this interface during the entirety of their processing of Secondary Ownership Vectors (for example as a member of the main class).
A pointer to an instance of this interface can be retrieved using method .


Method Index


o GetAllValidAccesses(CATIAdpPLMIdentificator*,CATListValCATUnicodeString&,CATListValCATUnicodeString&)
Gets the list of all Accesses that can be granted on a given Object.
o GetAllValidOrganizationCollabSpaceCouples(CATListValCATUnicodeString&,CATListValCATUnicodeString&)
Gets all {Organization, Collab Space} couples from all Security Contexts currently defined in the database.
o LoadSecondaryOwnershipVector(CATIAdpPLMIdentificator*,PLMIPosSecondaryOwnershipVector_var&)
Gets the Secondary Ownership Vector of the given Object.
o SaveSecondaryOwnershipVector(CATIAdpPLMIdentificator*,CATIAdpPLMErrorReviewer*&)
Sets the Secondary Ownership Vector of the given Object.

Methods


o GetAllValidAccesses
public virtual GetAllValidAccesses( iObject,
oAccessList,
oNLSAccessList)
Gets the list of all Accesses that can be granted on a given Object.
Parameters:
iObject
the PLM identifier of the Object
oAccessList
the list of all Accesses usable to define the Secondary Ownership Vector on this object

Implementation note: the first element in this list is the default Access i.e. the one that gives the lowest privileges.
oNLSAccessList
the list of all Accesses as NLS strings for localized display
Returns:
S_OK Accesses successfully retrieved
E_INVALIDARG Not a valid object
E_FAIL An unexpected error occurred
o GetAllValidOrganizationCollabSpaceCouples
public virtual GetAllValidOrganizationCollabSpaceCouples( oOrganizations,
oCollabSpaces)
Gets all {Organization, Collab Space} couples from all Security Contexts currently defined in the database.
In other words, {oOrganizations[1],oCollabSpaces[1]} represents any Security Contexts identified by the name pattern *.oOrganizations[1].oCollabSpaces[1], and so on.
Only such valid {Organization, Collab Space} couples can be used to define Secondary Ownership Vector of type Security Context
Parameters:
oOrganizations
the list of Organizations given by their identifier (value of attribute V_id of PLM entity PLMPosOrganizationRef)
oCollabSpaces
the list of Collab Spaces given by their identifier (value of attribute V_id of PLM entity PLMPosProjectRef)
Returns:
S_OK {Organization, Collab Space} couples successfully retrieved
E_FAIL An unexpected error occurred
o LoadSecondaryOwnershipVector
public virtual LoadSecondaryOwnershipVector( iObject,
oSOV)
Gets the Secondary Ownership Vector of the given Object.
If not already loaded this method retrieves the Secondary Ownership Vector from the database.
Parameters:
iObject
the PLM identifier of the Object
oSOV
the Secondary Ownership Vector
Returns:
S_OK Secondary Ownership Vector successfully retrieved
E_INVALIDARG Not a valid object
E_FAIL An unexpected error occurred
o SaveSecondaryOwnershipVector
public virtual SaveSecondaryOwnershipVector( iObject,
oErrors)
Sets the Secondary Ownership Vector of the given Object.
If changes have been done on the Secondary Ownership Vector of this object using then this method propagates them to the database.
Parameters:
iObject
the PLM identifier of the Object
oErrors
the Errors to be reviewed when E_FAIL is returned
Returns:
S_OK Secondary Ownership Vector successfully saved
E_INVALIDARG Not a valid object
E_FAIL An error occurred

This object is included in the file: PLMIPosSecondaryOwnershipManager.h
If needed, your Imakefile.mk should include the module: GUIDPLMPosResourceUseItf

Copyright © 1999-2014, Dassault Systèmes. All rights reserved.