***  This interface provides Binary Compatibility only, not Source Compatibility  ***

com.sas.services.information
Interface OMIRepositoryInterface

All Superinterfaces:
java.rmi.Remote, RepositoryInterface
All Known Implementing Classes:
OMIServerChildRepository, OMIServerRepository

public interface OMIRepositoryInterface
extends RepositoryInterface

This interface extends RepositoryInterface. It's necessary because OMIRepository is a remote interface, and for the stub to be created correctly, it needs to implement an interface that's complete, and some of the methods are specific to OMI.

Since:
1.0

Field Summary
static java.lang.String TYPE_CUSTOM
          String constant for OMR repository custom (dependent) type.
static java.lang.String TYPE_FOUNDATION
          String constant for OMR repository foundation type.
static java.lang.String TYPE_PROJECT
          String constant for OMR repository project (change managed) type.
 
Fields inherited from interface com.sas.services.information.RepositoryInterface
PROFILE_BEST, PROFILE_NO, PROFILE_POSSIBLE
 
Method Summary
 void addToCache(MetadataInterface newMetadata)
          Add a MetadataInterface object to a repository's cache.
 void appyACTToObj(java.lang.String resource, java.lang.String act)
          Apply an AccessControlTemplate to a metadata object.
 boolean connect(com.sas.meta.SASOMI.IOMI connection, java.lang.String base)
          Set up to use an existing IOMI connection.
 void createAccessControTemplate(ACTEntry act)
          Create a new AccessControlTemplate in this repository.
 com.sas.metadata.remote.Root createMetadata(java.lang.String name, java.lang.String type)
          Create a new metadata object.
 void deleteEntities(java.util.List metadataObjects)
          Delete a collection of CMetadata objects.
 void deleteEntity(com.sas.metadata.remote.CMetadata metadata)
          Allow a CMetadata object to be passed in to be deleted.
 void destroyAccessControlTemplate(java.lang.String act)
          Destroy an AccessControlTemplate in the repository.
 void freeCredentials(java.lang.String credential)
          Free a credential handle.
 ACTEntry getAccessControlTemplateAttribs(java.lang.String act)
          Get attributes for an AccessControlTemplate.
 java.util.List getAccessControlTemplateList(int flags)
          Get the list of AccessControlTemplates for this repository.
 java.util.List getACTsOnObj(java.lang.String resource)
          Get the AccessControlTemplates that are associated to an object.
 java.lang.String[][] getAuthorizations(java.lang.String authType, java.lang.String credHandle, java.lang.String resource, java.lang.String permission)
          Get the authorization information for a metadata resource.
 java.util.List getAuthorizationsOnObj(java.lang.String resource, java.util.List identities, java.util.List permissions, int flags)
          Get the authorizations on an object for the given identities and permissions.
 java.util.List getChildren()
          Get the list of repository id's that are "down" the dependency chain from the default repository.
 int getCountNoSecurity(Filter filter, java.lang.String association)
          Perform a search operation against the metadata repository which will return a count of the matching objects, rather than the objects themselves.
 java.util.Date getCreateDate(MetadataInterface mi)
           
 java.lang.String getCredentials(java.lang.String subject)
          See the ISecurity interface documentation for a description of this method.
 java.lang.String getDefaultRepositoryId()
          Get the FQID of the default repository.
 java.lang.String getDefaultRepositoryName()
          Get the name of the default repository.
 long getFolderItemRefreshInterval()
          Get the interval for refreshing the folder's item list for objects retrieved through this repository instance.
 long getFolderSubfolderRefreshInterval()
          Get the interval for refreshing a folder's subfolder list for objects retrieved through this repository instance.
 java.util.List getIdentitiesOnObj(java.lang.String resource, int flags)
          Get a List of identities associated with an object through authorizations.
 java.lang.String[][] getInheritedIdentities(MetadataInterface mi)
           
 java.lang.String[][] getInheritedPermissions(IdentityInterface identity, MetadataInterface metadata, java.util.List permissions)
           
 com.sas.meta.SASOMI.IOMI getIOMI()
          Deprecated. This method is not usable across a remote interface.
 com.sas.meta.SASOMI.ISecurity getISecurity()
          Deprecated. This method is not usable across a remote interface.
 java.util.Date getModifiedDate(MetadataInterface mi)
           
 int getOMRVersion()
          Get the version of the Metadata Server we're taking to.
 long getParentRefreshInterval()
          Get the interval for refreshing an object's parent path information.
 java.util.List getParents()
          Get the list of repository id's that are "up" the dependency chain from the default repository.
 java.util.List getPermissions()
          Get a List of Permission objects from the metadata server.
 java.util.List getPredefinedPropertyTypes()
          Get the PropertyType objects from the "Entity Property Types" group.
 java.util.List getRepositories()
          Get a List of MetadataInterface objects that enumerate the Repositories contained in the OMR server we're currently connected to.
 java.lang.String getRepositoryType()
          Get the type of this repository.
 java.lang.String getReposKey(com.sas.metadata.remote.Root reposObject)
          Take a jOMA object and return the repository key that can be used to fetch it.
 boolean isAuthorized(MetadataInterface mi, java.lang.String permission)
           
 boolean isAuthorized(java.lang.String credential, java.lang.String resource, java.lang.String permission)
          Check authorization status for a given credential, resource, and permission.
 AuthResult isAuthorizedWithConditions(java.lang.String credential, java.lang.String resource, java.lang.String permission)
          Check authorization status for a given credential, resource, and permission.
 boolean isChild(RepositoryInterface repos)
          Return a flag indicating if the repository provided is a child of the default repository.
 boolean isChild(java.lang.String repositoryID)
          Return a flag indicating if the repository specified by repositoryID is a dependent child of the default repository.
 boolean isInChild(MetadataInterface metadata)
          Return a flag indicating if the metadata object is in a dependent child repository to the default one.
 boolean isInParent(MetadataInterface metadata)
          Return a flag indicating if the metadata object is in a parent repository to the default one.
 boolean isInProject(MetadataInterface metadata)
          Returns a flag indicating if the object came from a project repository.
 boolean isParent(RepositoryInterface repos)
          Return a flag indicating if the repository provided is a parent of the default repository.
 boolean isParent(java.lang.String repositoryID)
          Return a flag indicating if the repository specified by repositoryID is a parent of the default repository.
 boolean isUserAuthorizedInRepository(java.lang.String permission)
          Checks repository permissions for the user.
 void removeACTFromObj(java.lang.String resource, java.lang.String act)
          Remove an AccessControlTemplate from a metadata object.
 void setAccessControlTemplateAttribs(ACTEntry act)
          Set attributes on an AccessControlTemplate.
 void setAuthorizationsOnObj(java.lang.String resource, java.util.List authorizations, int flags)
          Set authorizations on a metadata object.
 void setFolderItemRefreshInterval(long msecInterval)
          Set the interval for refreshing the folder's item list for objects retrieved through this repository instance.
 void setFolderSubfolderRefreshInterval(long msecInterval)
          Set the interval for refreshing a folder's subfolder list for objects retrieved through this repository instance.
 void setParentRefreshInterval(long msecInterval)
          Set the interval for refreshing an object's parent path information.
 int trackEntity(MetadataInterface entity)
          Deprecated. Tracking ids are no longer supported.
 
Methods inherited from interface com.sas.services.information.RepositoryInterface
addEntity, addListener, addRootFolder, browseFetch, browseFolder, browseFolderRecursive, browseObjectByPath, browseSearch, close, connect, connect, connectWithProxy, deleteEntity, factoryProcess, factoryTest, fetch, fetch, fetchByUrl, fromByteArry, getBase, getCacheStatistics, getDomain, getEvaluator, getFactoryKey, getHost, getIdentity, getISName, getObjectByPath, getObjectByPath, getObjectByPath, getObjectByPathString, getPort, getPrincipal, getRootFolder, getRootFolders, getServer, getTrackedObject, getUniqueId, getUrl, getUser, getUserContext, isDestroyed, isEqual, isProfileRepository, makeRootFolder, narrow, newChild, newMetadata, newMetadata, newMetadataByModel, produceDefaultMetadata, refreshAllData, refreshEntity, removeListener, removeRootFolder, search, searchTree, searchTree, searchTreeFromBase, searchTreeFromBaseWithScope, setDomain, setISName, setUser, setUserContext, toByteArray
 

Field Detail

TYPE_FOUNDATION

static final java.lang.String TYPE_FOUNDATION
String constant for OMR repository foundation type.

See Also:
Constant Field Values

TYPE_CUSTOM

static final java.lang.String TYPE_CUSTOM
String constant for OMR repository custom (dependent) type.

See Also:
Constant Field Values

TYPE_PROJECT

static final java.lang.String TYPE_PROJECT
String constant for OMR repository project (change managed) type.

See Also:
Constant Field Values
Method Detail

getIOMI

com.sas.meta.SASOMI.IOMI getIOMI()
                                 throws java.lang.IllegalStateException,
                                        java.rmi.RemoteException
Deprecated. This method is not usable across a remote interface.

Make the IOMI connection available.

Returns:
The IOMI interface being used by this repository instance.
Throws:
java.lang.IllegalStateException - If this instance isn't currently connected.
java.rmi.RemoteException - in the event of remote object failure.

getISecurity

com.sas.meta.SASOMI.ISecurity getISecurity()
                                           throws java.lang.IllegalStateException,
                                                  java.rmi.RemoteException
Deprecated. This method is not usable across a remote interface.

Make the ISecurity interface available.

Returns:
the ISecurity interface being used by this repository instance.
Throws:
java.lang.IllegalStateException - If this instance isn't currently connected.
java.rmi.RemoteException - in the event of remote object failure.

getInheritedPermissions

java.lang.String[][] getInheritedPermissions(IdentityInterface identity,
                                             MetadataInterface metadata,
                                             java.util.List permissions)
                                             throws ServiceException,
                                                    java.rmi.RemoteException
Throws:
ServiceException
java.rmi.RemoteException

getInheritedIdentities

java.lang.String[][] getInheritedIdentities(MetadataInterface mi)
                                            throws ServiceException,
                                                   java.rmi.RemoteException
Throws:
ServiceException
java.rmi.RemoteException

isAuthorized

boolean isAuthorized(MetadataInterface mi,
                     java.lang.String permission)
                     throws ServiceException,
                            java.rmi.RemoteException
Throws:
ServiceException
java.rmi.RemoteException

connect

boolean connect(com.sas.meta.SASOMI.IOMI connection,
                java.lang.String base)
                throws ServiceException,
                       java.rmi.RemoteException
Set up to use an existing IOMI connection.

Parameters:
connection - The IOMI connection to use to communicate with the OMR server.
base - The default repository name to use.
Returns:
True if the connect is successful, false otherwise.
Throws:
ServiceException - on repository errors.
java.rmi.RemoteException - in the event of remote object failure.

deleteEntity

void deleteEntity(com.sas.metadata.remote.CMetadata metadata)
                  throws ServiceException,
                         java.rmi.RemoteException
Allow a CMetadata object to be passed in to be deleted.

Parameters:
metadata - The CMetadata object to be deleted.
Throws:
ServiceException - in the event of back end repository failure.
java.rmi.RemoteException - in the event of remote object failure.

deleteEntities

void deleteEntities(java.util.List metadataObjects)
                    throws ServiceException,
                           java.rmi.RemoteException
Delete a collection of CMetadata objects. The entire list is passed to the jOMA classes for processing at one time. This prevents multiple calls to the server when deleting several objects at once.

Parameters:
metadataObjects - a List of CMetadata objects to be deleted.
Throws:
ServiceException - in the event of back end repository failure.
java.rmi.RemoteException - in the event of remote object failure.

trackEntity

int trackEntity(MetadataInterface entity)
                throws java.rmi.RemoteException
Deprecated. Tracking ids are no longer supported.

Add a new object to the tracking cache. This is called from the Metadata.setRepository() method. Other client code shouldn't need to call this method.

Parameters:
entity - The entity to add to the tracking cache.
Returns:
The new tracking ID for the object.
Throws:
java.rmi.RemoteException - in the event of remote object failure.

getRepositories

java.util.List getRepositories()
                               throws ServiceException,
                                      java.rmi.RemoteException
Get a List of MetadataInterface objects that enumerate the Repositories contained in the OMR server we're currently connected to. The name and ID of the repositories can be obtained using the getName() and getReposId() methods respectively.

Returns:
A List of MetadataInterface objects representing the repositories.
Throws:
ServiceException - in the event of repository failure.
java.rmi.RemoteException - in the event of remote object failure.

getDefaultRepositoryName

java.lang.String getDefaultRepositoryName()
                                          throws java.rmi.RemoteException
Get the name of the default repository.

Returns:
The deafult repository name, or null if it wasn't set.
Throws:
java.rmi.RemoteException - in the event of remote object failure.

getDefaultRepositoryId

java.lang.String getDefaultRepositoryId()
                                        throws java.rmi.RemoteException
Get the FQID of the default repository.

Returns:
The FQID of the default repository, or null if it wasn't set.
Throws:
java.rmi.RemoteException - in the event of remote object failure.

createMetadata

com.sas.metadata.remote.Root createMetadata(java.lang.String name,
                                            java.lang.String type)
                                            throws java.rmi.RemoteException,
                                                   ServiceException
Create a new metadata object. This is specific to the OMIRepository because it deals with CMetadat objects. I have to surface this method because I don't provide access to the MdFactory, which is used to create new objects.

Parameters:
name - A String for the name of the new object.
type - The Type for the new object. Should be a field from MetadataObjects.
Returns:
A new CMetadata object which can be cast to the correct type.
Throws:
ServiceException - If a service level error occurs.
java.rmi.RemoteException - in the event of remote object failure.

getReposKey

java.lang.String getReposKey(com.sas.metadata.remote.Root reposObject)
                             throws ServiceException,
                                    java.rmi.RemoteException
Take a jOMA object and return the repository key that can be used to fetch it. This is used for getting an object that's in a main repository into a child repository.

Parameters:
reposObject - A Root object whose repository key is to be returned.
Returns:
A repository key that can be used in a fetch call.
Throws:
ServiceException - in the event of repository errors.
java.rmi.RemoteException - in the event of remote object failure.

getCredentials

java.lang.String getCredentials(java.lang.String subject)
                                throws ServiceException,
                                       java.rmi.RemoteException
See the ISecurity interface documentation for a description of this method.

Parameters:
subject - The subject for which to get a credential handle.
Returns:
A credential handle for the requested subject.
Throws:
ServiceException - in the event of repository errors.
java.rmi.RemoteException - in the event of remote object failure.

freeCredentials

void freeCredentials(java.lang.String credential)
                     throws ServiceException,
                            java.rmi.RemoteException
Free a credential handle. See the ISecurity interface documentation for a description of this method. This method must be called for any credential retrieved with a getCredentials call.

Parameters:
credential - The credential to free.
Throws:
ServiceException - in the event of repository errors.
java.rmi.RemoteException - in the event of remote object failure.

isAuthorized

boolean isAuthorized(java.lang.String credential,
                     java.lang.String resource,
                     java.lang.String permission)
                     throws ServiceException,
                            java.rmi.RemoteException
Check authorization status for a given credential, resource, and permission.

Parameters:
credential - A credential handle. If this is null, the current authenticated user is checked for permission.
resource - A resource string of the form OMSOBJ:type/FQID which represents the object whose permissions are being checked.
permission - A permission or comma-separated list of permissions to check against the user's authorized permissions for the resource.
Returns:
true if the user is granted the requested permissions, false otherwise.
Throws:
ServiceException - in the event of repository errors.
java.rmi.RemoteException - in the event of remote object failure.

isAuthorizedWithConditions

AuthResult isAuthorizedWithConditions(java.lang.String credential,
                                      java.lang.String resource,
                                      java.lang.String permission)
                                      throws ServiceException,
                                             java.rmi.RemoteException
Check authorization status for a given credential, resource, and permission. See the ISecurity interface documentation for a more complete description.

Parameters:
credential - A credential handle. If this is null, the current authenticated user is checked for permission.
resource - A resource string of the form OMSOBJ:type/FQID which represents the object whose permissions are being checked.
permission - A permission or comma-separated list of permissions to check against the user's authorized permissions for the resource.
Returns:
An AuthResult object with a boolean indicating whether the user has the requested permissions granted, and possibly a condition string.
Throws:
ServiceException - in the event of repository errors.
java.rmi.RemoteException - in the event of remote object failure.

getAuthorizations

java.lang.String[][] getAuthorizations(java.lang.String authType,
                                       java.lang.String credHandle,
                                       java.lang.String resource,
                                       java.lang.String permission)
                                       throws ServiceException,
                                              java.rmi.RemoteException
Get the authorization information for a metadata resource. See the ISecurity interface documentation for a more complete description.

Parameters:
authType - The type of authorization check to perform.
credHandle - A credential handle. If null, the current user's authorizations for the resource are checked.
resource - A string of the form OMSOBJ:type/FQID representing the metadata object to be checked.
permission - A permission string, or a comma-separated list of permissions to check.
Returns:
A two-dimensional array of strings. The exact layout and meaning of the of the result array depends on the value of authType.
Throws:
ServiceException - in the event of repository errors.
java.rmi.RemoteException - in the event of remote object failure.

getCountNoSecurity

int getCountNoSecurity(Filter filter,
                       java.lang.String association)
                       throws ServiceException,
                              java.rmi.RemoteException
Perform a search operation against the metadata repository which will return a count of the matching objects, rather than the objects themselves. The search is done with security off. In this way, an application can determine if objects exist even if they can't read those objects.

Parameters:
filter - A Filter specifying the selection criteria as well as any template that's desired for the operation.
association - An optional parameter that requests that a specific association be counted rather than the top level objects. If this is used, only one top level object can be returned by the filter, and a template must be supplied to return the association to count.
Returns:
The count of matching objects.
Throws:
ServiceException - In the event of a server error.
java.rmi.RemoteException - In the event of remote object failure.

getCreateDate

java.util.Date getCreateDate(MetadataInterface mi)
                             throws ServiceException,
                                    java.rmi.RemoteException
Throws:
ServiceException
java.rmi.RemoteException

getModifiedDate

java.util.Date getModifiedDate(MetadataInterface mi)
                               throws ServiceException,
                                      java.rmi.RemoteException
Throws:
ServiceException
java.rmi.RemoteException

getRepositoryType

java.lang.String getRepositoryType()
                                   throws java.rmi.RemoteException
Get the type of this repository. For SAS Metadata servers, this is FOUNDATION, CUSTOM, or PROJECT.

Returns:
The type of this repository (FOUNDATION, CUSTOM, or PROJECT). This call is only valid if the default repository has been set. Returns null if there's no default repository.
Throws:
java.rmi.RemoteException - in the event of remote object failure.

isChild

boolean isChild(java.lang.String repositoryID)
                throws java.rmi.RemoteException
Return a flag indicating if the repository specified by repositoryID is a dependent child of the default repository.

Parameters:
repositoryID - The ID of the repository to check.
Returns:
True if the repository is a dependent child, false otherwise.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

isChild

boolean isChild(RepositoryInterface repos)
                throws java.rmi.RemoteException
Return a flag indicating if the repository provided is a child of the default repository.

Parameters:
repos - The repository to check.
Returns:
True if the repository is a child of this one, false otherwise.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

isInChild

boolean isInChild(MetadataInterface metadata)
                  throws java.rmi.RemoteException
Return a flag indicating if the metadata object is in a dependent child repository to the default one.

Parameters:
metadata - The metadata object to check.
Returns:
True if the object is in a dependent child repository, false otherwise.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

isParent

boolean isParent(java.lang.String repositoryID)
                 throws java.rmi.RemoteException
Return a flag indicating if the repository specified by repositoryID is a parent of the default repository.

Parameters:
repositoryID - The ID of the repository to check.
Returns:
True if the repository is a parent, false otherwise.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

isParent

boolean isParent(RepositoryInterface repos)
                 throws java.rmi.RemoteException
Return a flag indicating if the repository provided is a parent of the default repository.

Parameters:
repos - The repository to check.
Returns:
True if the repository is a parent of this one, false otherwise.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

isInParent

boolean isInParent(MetadataInterface metadata)
                   throws java.rmi.RemoteException
Return a flag indicating if the metadata object is in a parent repository to the default one.

Parameters:
metadata - The metadata object to check.
Returns:
True if the object is in a parent repository, false otherwise.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

isInProject

boolean isInProject(MetadataInterface metadata)
                    throws java.rmi.RemoteException
Returns a flag indicating if the object came from a project repository. This is used when searches are made "down" the dependency chain to prevent returning project data.

Parameters:
metadata - The object to check for project membership.
Returns:
true if the object is in a project repository, false otherwise.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

getParents

java.util.List getParents()
                          throws java.rmi.RemoteException
Get the list of repository id's that are "up" the dependency chain from the default repository.

Returns:
a List of repository id's that are parents of the default repository.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

getChildren

java.util.List getChildren()
                           throws java.rmi.RemoteException
Get the list of repository id's that are "down" the dependency chain from the default repository.

Returns:
A List of repository id's that are children of the default repository.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

setFolderItemRefreshInterval

void setFolderItemRefreshInterval(long msecInterval)
                                  throws java.rmi.RemoteException
Set the interval for refreshing the folder's item list for objects retrieved through this repository instance.

Parameters:
msecInterval - The interval in milliseconds after which a folder's item information is considered stale.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

getFolderItemRefreshInterval

long getFolderItemRefreshInterval()
                                  throws java.rmi.RemoteException
Get the interval for refreshing the folder's item list for objects retrieved through this repository instance.

Returns:
The interval in milliseconds after which a folder's item information is considered stale.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

setFolderSubfolderRefreshInterval

void setFolderSubfolderRefreshInterval(long msecInterval)
                                       throws java.rmi.RemoteException
Set the interval for refreshing a folder's subfolder list for objects retrieved through this repository instance.

Parameters:
msecInterval - The interval in milliseconds after which a folder's subfolder information is considered stale.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

getFolderSubfolderRefreshInterval

long getFolderSubfolderRefreshInterval()
                                       throws java.rmi.RemoteException
Get the interval for refreshing a folder's subfolder list for objects retrieved through this repository instance.

Returns:
The interval in milliseconds after which a folder's subfolder information is considered stale.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

setParentRefreshInterval

void setParentRefreshInterval(long msecInterval)
                              throws java.rmi.RemoteException
Set the interval for refreshing an object's parent path information.

Parameters:
msecInterval - The interval in milliseconds after which an object's parent information is considered stale.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

getParentRefreshInterval

long getParentRefreshInterval()
                              throws java.rmi.RemoteException
Get the interval for refreshing an object's parent path information.

Returns:
The interval in milliseconds after which an object's parent folder information is considered stale.
Throws:
java.rmi.RemoteException - In the event of remote object failure.

getAuthorizationsOnObj

java.util.List getAuthorizationsOnObj(java.lang.String resource,
                                      java.util.List identities,
                                      java.util.List permissions,
                                      int flags)
                                      throws ServiceException,
                                             java.rmi.RemoteException
Get the authorizations on an object for the given identities and permissions.

Parameters:
resource - The resource string of the object to test. A resource string should be of the form OMSOBJ:obj_type/obj_ID (e.g., OMSOBJ:PhysicalTable/A5DRX6L4.AJ00001Z).
identities - A List of IdentityInterface objects for the users to test permissions for. If left null, all identities are returned.
permissions - A List of Permission objects specifying the permissions to check. If null, all permissions for all specified identities on the object are returned.
flags - Flags which control the return values. Valid flags are: ISecurityAdmin.SECAD_ACT_CONTENTS and ISecurityAdmin.SECAD_DO_NOT_RETURN_PERMCOND. See the documentation for ISecurityAdmin.GetAuthorizationsOnObj for more details.
Returns:
A List of AuthResult objects with the resulting authorization data.
Throws:
ServiceException - if a service level error occurs.
java.rmi.RemoteException - in the event of remote object failure.

setAuthorizationsOnObj

void setAuthorizationsOnObj(java.lang.String resource,
                            java.util.List authorizations,
                            int flags)
                            throws ServiceException,
                                   java.rmi.RemoteException
Set authorizations on a metadata object.

Parameters:
resource - The resource string of the object to test. A resource string should be of the form OMSOBJ:obj_type/obj_ID (e.g., OMSOBJ:PhysicalTable/A5DRX6L4.AJ00001Z).
authorizations - A List of Authorization objects defining the authorizations to set on the object.
flags - Controls the behavior of the method. The only valid flag as of this writing is ISecurityAdmin.SECAD_ACT_CONTENTS. Check the documentation for the ISecurityAdmin interface for details.
Throws:
ServiceException - If a service level error occurs.
java.rmi.RemoteException - In the event of remote object failure.

getIdentitiesOnObj

java.util.List getIdentitiesOnObj(java.lang.String resource,
                                  int flags)
                                  throws ServiceException,
                                         java.rmi.RemoteException
Get a List of identities associated with an object through authorizations.

Parameters:
resource - The resource string of the object to test. A resource string should be of the form OMSOBJ:obj_type/obj_ID (e.g., OMSOBJ:PhysicalTable/A5DRX6L4.AJ00001Z).
flags - Zero or ISecurityAdmin.SECAD_ACT_CONTENTS. See the javadoc for ISecurityAdmin for more information.
Returns:
A List of identities as Strings in the form of type/name.

examples:
Person/Gary Williams IdentityGroup/PUBLIC

Throws:
ServiceException - If a service level error occurs.
java.rmi.RemoteException - In the event of remote object failure.

getACTsOnObj

java.util.List getACTsOnObj(java.lang.String resource)
                            throws ServiceException,
                                   java.rmi.RemoteException
Get the AccessControlTemplates that are associated to an object.

Parameters:
resource - The resource string of the object to test. A resource string should be of the form OMSOBJ:obj_type/obj_ID (e.g., OMSOBJ:PhysicalTable/A5DRX6L4.AJ00001Z).
Returns:
A List of ACTEntry objects describing the ACT's associated to the object.
Throws:
ServiceException - If a service level error occurs.
java.rmi.RemoteException - In the event of a remote object failure.

appyACTToObj

void appyACTToObj(java.lang.String resource,
                  java.lang.String act)
                  throws ServiceException,
                         java.rmi.RemoteException
Apply an AccessControlTemplate to a metadata object.

Parameters:
resource - The resource string of the object to test. A resource string should be of the form OMSOBJ:obj_type/obj_ID (e.g., OMSOBJ:PhysicalTable/A5DRX6L4.AJ00001Z).
act - The resource string representing the AccessControlTemplate. It's the same format as the resource parameter.
Throws:
ServiceException - If a service level error occurs.
java.rmi.RemoteException - In the event of a remote object failure.

removeACTFromObj

void removeACTFromObj(java.lang.String resource,
                      java.lang.String act)
                      throws ServiceException,
                             java.rmi.RemoteException
Remove an AccessControlTemplate from a metadata object.

Parameters:
resource - The resource string of the object to modify. A resource string should be of the form OMSOBJ:obj_type/obj_ID (e.g., OMSOBJ:PhysicalTable/A5DRX6L4.AJ00001Z).
act - The resource string representing the AccessControlTemplate. It's the same format as the resource parameter.
Throws:
ServiceException - If a service level error occurs.
java.rmi.RemoteException - In the event of a remote object failure.

getAccessControlTemplateList

java.util.List getAccessControlTemplateList(int flags)
                                            throws ServiceException,
                                                   java.rmi.RemoteException
Get the list of AccessControlTemplates for this repository.

Parameters:
flags - zero or ISecurityAdmin.SECAD_REPOSITORY_DEPENDENCY_USES to get AccessControlTemplates for repositories up the dependency chain from this one.
Returns:
A List of ACTEntry objects with the information about the ACTs in this repository.
Throws:
ServiceException - If a service level error occurs.
java.rmi.RemoteException - In the event of remote object failure.

createAccessControTemplate

void createAccessControTemplate(ACTEntry act)
                                throws ServiceException,
                                       java.rmi.RemoteException
Create a new AccessControlTemplate in this repository.

Parameters:
act - An ACTEntry describing the new entry. The name must be set. The description may be set, and the use parameter should be left null, or set to "REPOS" if this is to become the new repository default ACT (if you have permission to perform that operation).
Throws:
ServiceException - If a service level error occurs.
java.rmi.RemoteException - In the event of remote object failure.

destroyAccessControlTemplate

void destroyAccessControlTemplate(java.lang.String act)
                                  throws ServiceException,
                                         java.rmi.RemoteException
Destroy an AccessControlTemplate in the repository.

Parameters:
act - The resource ID of the ACT. A resource string should be of the form OMSOBJ:obj_type/obj_ID (e.g., OMSOBJ:AccessControlTemplate/A5DRX6L4.AJ00001Z).
Throws:
ServiceException - If a service level error occurs.
java.rmi.RemoteException - In the event of remote object failure.

setAccessControlTemplateAttribs

void setAccessControlTemplateAttribs(ACTEntry act)
                                     throws ServiceException,
                                            java.rmi.RemoteException
Set attributes on an AccessControlTemplate. I'm assuming that ACT names and descriptions don't really change that much, so I guess the main use for this method is to make an existing ACT the repository default;

Parameters:
act - An ACTEntry object with the new information about the ACT. Set the use parameter in the ACTEntry to "REPOS" to make it the repository default, and be sure you have the necessary permissions to do it or expect an exception.
Throws:
ServiceException - If a service level error occurs.
java.rmi.RemoteException - In the event of remote object failure.

getAccessControlTemplateAttribs

ACTEntry getAccessControlTemplateAttribs(java.lang.String act)
                                         throws ServiceException,
                                                java.rmi.RemoteException
Get attributes for an AccessControlTemplate.

Parameters:
act - The resource ID of the ACT. A resource string should be of the form OMSOBJ:obj_type/obj_ID (e.g., OMSOBJ:AccessControlTemplate/A5DRX6L4.AJ00001Z).
Returns:
An ACTEntry with the information about the ACT.
Throws:
ServiceException - If a service level error occurs.
java.rmi.RemoteException - In the event of remote object failure.

getOMRVersion

int getOMRVersion()
                  throws ServiceException,
                         java.rmi.RemoteException
Get the version of the Metadata Server we're taking to. It should be an int of the form: major * 1000 + minor * 100 + patch * 10 + SP So 9.1.3 SP3 is 9133 and 9.2 is 9200.

Returns:
An integer representing the metadata server version.
Throws:
ServiceException - If a server error occurs.
java.rmi.RemoteException - In the event of remote object failure.

getPermissions

java.util.List getPermissions()
                              throws ServiceException,
                                     java.rmi.RemoteException
Get a List of Permission objects from the metadata server. This method's only purpose for existing is to support the method that adds permissions on a metadata object. Since the permissions are quite static, if the Repository instance reads them and saves them, it can save a lot of trips to the server.

Returns:
A List of MetadataInterface objects representing the Permissions in the metadata server.
Throws:
ServiceException - If a repository error occurs.
java.rmi.RemoteException - In the event of remote object failure.

getPredefinedPropertyTypes

java.util.List getPredefinedPropertyTypes()
                                          throws ServiceException,
                                                 java.rmi.RemoteException
Get the PropertyType objects from the "Entity Property Types" group. This group has, as its members, a set of commonly used property types for shared use.

Returns:
A List of MetadataInterface objects representing the defined property types.
Throws:
ServiceException - If a repository error occurs.
java.rmi.RemoteException - In the event of remote object failure.

addToCache

void addToCache(MetadataInterface newMetadata)
                throws ServiceException,
                       java.rmi.RemoteException
Add a MetadataInterface object to a repository's cache. This will normally be called only from a smart object's constructor, not by client code.

Parameters:
newMetadata - The new metadata object to add to the cache.
Throws:
ServiceException - If an error occurs while adding the new object to the cache.
java.rmi.RemoteException - In the event of remote object failure.

isUserAuthorizedInRepository

boolean isUserAuthorizedInRepository(java.lang.String permission)
                                     throws ServiceException,
                                            java.rmi.RemoteException
Checks repository permissions for the user. This checks the permission provided for the current user and returns true if they are granted the permission, and false if it's denied. This is most useful for determining if the user has WriteMetadata in the repository, which allows them to create new objects. This cannot make determinations of objects in folders, etc. if the user has permission on the folder to create a new member or subfolder.

Parameters:
permission - The permission to check. Usually "WriteMetadata" or PermissionInterface.PERMISSION_WRITEMETADATA.
Returns:
true if the permission is granted in the repository, or false otherwise.
Throws:
ServiceException - If the permission string is invalid, or a server error occurs.
java.rmi.RemoteException - In the event of remote object failure.

***  This interface provides Binary Compatibility only, not Source Compatibility  ***




Copyright © 2009 SAS Institute Inc. All Rights Reserved.