GetAccessControlTemplateList

Short Description

Lists all ACTs in the specified repository or in all public repositories.

Category

ACT administration methods

Syntax

GetAccessControlTemplateList(tCtxt,REPOSresource,flags,ACT_list);

Parameters

Method Parameters
Parameter
Type
Direction
Description
tCtxt
string
in
Optional handle representing a server-side transaction context.
REPOSresource
string
in
Passed resource identifier for the repository from which you want to get ACTs. If TCTXT is used, do not specify a value for REPOSRESOURCE.
flags
int
in
Passed indicator for options. Valid values are SECAD_REPOSITORY_DEPENDENCY_USES or 0.
SECAD_REPOSITORY_DEPENDENCY_USES
Expands the request to return ACTs from all public repositories (the foundation repository and all custom repositories).
ACT_list
string array
out
Returned two-dimensional string array with five columns. Each row describes an ACT. See the “Details” section for more information.
Column 0:
Contains the Name attribute value of the repository where the ACT resides.
Column 1:
Contains the ACT's 17–character metadata object identifier.
Column 2:
Contains the ACT's Name attribute value.
Column 3:
Contains the ACT's Description attribute value.
Column 4:
Contains the ACT's Use attribute value. Valid values are REPOS, which indicates the ACT is enforced on the repository, or an empty string, which indicates the ACT is enforced on objects within the repository.

Details

The GetAccessControlTemplateList method can return a large number of objects, especially if the SECAD_REPOSITORY_DEPENDENCY_USES flag is set. Use of this method within a transaction context is not recommended because of the overhead associated with the method.

Exceptions Thrown

The SAS Open Metadata Interface explicitly returns the following exceptions for the GetAccessControlTemplateList method:
  • OK
  • SECAD_INVALID_TC_HANDLE
  • SECAD_INVALID_RESOURCE_SPEC
  • SECAD_NOT_AUTHORIZED

Examples

The following code fragment shows how the GetAccessControlTemplateList method is issued in a Java environment:
public void getAccessControlTemplateList(String transCtxt, String repositorySpec, 
int options, VariableArray2dOfStringHolder ACTlist) throws Exception {
		
	try
	{
		iSecurityAdmin.GetAccessControlTemplateList(transCtxt, repositorySpec, 
                      options, ACTlist);
	}
	catch (Exception e) {
		System.out.println("GetAccessControlTemplateList: Exceptions");
		e.printStackTrace();
		throw e;
	}
}
The following example lists the ACTs in REPOSID:
public void GetAccessControlTemplateList() throws Exception {  
// Define a holder for ACTlist
VariableArray2dOfStringHolder ACTlist = new VariableArray2dOfStringHolder;

{
try
{
iSecurityAdmin.GetAccessControlTemplateList("", "REPOSID:" + reposId, 0, ACTlist);
}
catch (Exception e) {
	e.printStackTrace();
	throw e;
 }
}