com.softwareag.centrasite.appl.framework.types
Interface TypeManager

All Known Implementing Classes:
TypeManagerImpl

public interface TypeManager

Interface for working with registry object types and association types. Provides create/read/update/delete operations on types and their attributes.

 The StandaloneRegistryProvider instance must be created with browserBahaviour flag set to <code>true</code>:
  
 RegistryProvider registryProvider = new StandaloneRegistryProvider("username", "password", true);  
 SessionContext sessionContext = SessionContext.createInstance(registryProvider);
 
 TypeManager typeManager = sessionContext.getTypeManager();
 
 TypeDescription type = typeManager.createType("My Type", "Sample Type", "MyType", "http://csaf.sample");
 type.setExtensible(true);
 type.setIconUrl("http://sample.icons/MyType.gif");
 
 AttributeDescription stringAttribute = typeManager.createSlotAttribute("SlotAttribute", "String attribute", "xs:string")
 stringAttribute.setMinOccurs(AttributeDescription.MINOCCURS_1);
 stringAttribute.setMaxOccurs(AttributeDescription.MAXOCCURS_UNBOUNDED);
 stringAttribute.setDefaultValue("default");
 
 type.addAttribute(stringAttribute);
 
 Profile profile = typeManager.createProfile("My Profile");
 profile.addAttribute(stringAttribute);
 type.addProfile(profile);
 
 typeManager.saveType(type);
 

See Also:
TypeDescription, AttributeDescription

Field Summary
static java.lang.String INO_DAV_PATH
          The Ino dav path needed to create the repository URL
 
Method Summary
 AssociationType createAssociationType(java.lang.String value, java.lang.String name, java.lang.String forwardLabel, java.lang.String backwardLabel, java.util.Locale locale)
          Create a new AssociationType.
 ClassificationAttributeDescription createClassificationAttribute(java.lang.String name, java.lang.String description, java.lang.String taxonomy)
          Creates classification attribute metadata with the provided name, description and taxonomy.
 FileAttributeDescription createFileAttribute(java.lang.String name, java.lang.String description)
          Creates file attribute metadata with the provided name, description and dataType.
 Profile createProfile(java.lang.String name)
          Creates profile with the provided name.
 RelationshipAttributeDescription createRelationshipAttribute(java.lang.String name, java.lang.String description, java.lang.String associationType, java.util.Collection<java.lang.String> targetObjectTypes)
          Creates relationship attribute metadata with the provided name, description, association type and target object types.
 RelationshipAttributeDescription createRelationshipAttribute(java.lang.String name, java.lang.String description, java.lang.String associationType, java.lang.String... targetObjectTypes)
          Creates relationship attribute metadata with the provided name, description, association type and target object type or types.
 SlotAttributeDescription createSlotAttribute(java.lang.String name, java.lang.String description, java.lang.String dataType)
          Creates slot attribute metadata with the provided name, description and dataType.
 TypeDescription createType(java.lang.String displayName, java.lang.String description, java.lang.String name, java.lang.String namespace)
          Creates an object type using the provided parameters.
 void deleteAsssociationType(AssociationType at)
          Delete the given AssociationType.
 void deleteProfile(Profile profile)
          Deletes the given profile from the registry.
 void deleteType(TypeDescription typeDesc)
          Deletes the given object type.
 java.util.Collection<AssociationType> getAllAssociationTypes()
          Get all available AssociationTypes.
 java.util.Collection<TypeDescription> getAllTypes()
          Retrieves all object types from the registry.
 AssociationType getAssociationType(java.lang.String value)
          Get the AssociationType with the given value.
 java.util.Collection<AssociationType> getAssociationTypeByForwardLabel(java.lang.String label)
          Get the AssociationType with the given forward label.
 AssociationType getAssociationTypeByName(java.lang.String name)
          Get the AssociationType with the given name.
 java.util.List<Profile> getMandatoryProfiles()
          Retrieves the list of mandatory profiles (Permissions, Object-Specific properties etc.)
 Profile getProfile(java.lang.String key)
          Retrieves the profile with the given key.
 TypeDescription getType(java.lang.String name)
          Retrieves the object type which matches the given name.
 void saveAssociationType(AssociationType at)
          Save the given AssociationType.
 void saveProfile(Profile profile)
          Saves the given profile to the registry.
 void saveType(TypeDescription typeDesc)
          Saves the given object type.
 

Field Detail

INO_DAV_PATH

static final java.lang.String INO_DAV_PATH
The Ino dav path needed to create the repository URL

See Also:
Constant Field Values
Method Detail

createType

TypeDescription createType(java.lang.String displayName,
                           java.lang.String description,
                           java.lang.String name,
                           java.lang.String namespace)
                           throws CSAppFrameworkException
Creates an object type using the provided parameters.

Parameters:
displayName - Display name of the new type.
description - Type description.
name - Type name. This is the local part of the fully qualified type name - {uri}local-name.
namespace - Name space that this type belongs to.
Returns:
The newly created type description.
Throws:
CSAppFrameworkException

saveType

void saveType(TypeDescription typeDesc)
              throws CSAppFrameworkException
Saves the given object type.

Parameters:
typeDesc - The type description to be saved.
Throws:
CSAppFrameworkException

getType

TypeDescription getType(java.lang.String name)
                        throws CSAppFrameworkException
Retrieves the object type which matches the given name.

Parameters:
name - the object type name as {uri}local-name
Returns:
type description
Throws:
CSAppFrameworkException

deleteType

void deleteType(TypeDescription typeDesc)
                throws CSAppFrameworkException
Deletes the given object type.

Parameters:
typeDesc -
Throws:
CSAppFrameworkException

getAllTypes

java.util.Collection<TypeDescription> getAllTypes()
                                                  throws CSAppFrameworkException
Retrieves all object types from the registry.

Returns:
List of all object types.
Throws:
CSAppFrameworkException

createSlotAttribute

SlotAttributeDescription createSlotAttribute(java.lang.String name,
                                             java.lang.String description,
                                             java.lang.String dataType)
                                             throws CSAppFrameworkException
Creates slot attribute metadata with the provided name, description and dataType.

Parameters:
name -
description -
dataType - i.e. xs:date, xs:duration
Returns:
newly created attribute description
Throws:
CSAppFrameworkException

createFileAttribute

FileAttributeDescription createFileAttribute(java.lang.String name,
                                             java.lang.String description)
                                             throws CSAppFrameworkException
Creates file attribute metadata with the provided name, description and dataType. File attributes are modeled as external links.

Parameters:
name -
description -
Returns:
newly created attribute description
Throws:
CSAppFrameworkException
Since:
CentraSite 8.0

createClassificationAttribute

ClassificationAttributeDescription createClassificationAttribute(java.lang.String name,
                                                                 java.lang.String description,
                                                                 java.lang.String taxonomy)
                                                                 throws CSAppFrameworkException
Creates classification attribute metadata with the provided name, description and taxonomy. Classification attributes are modeled as classification from the given taxonomy.

Parameters:
name -
description -
taxonomy - Key of the taxonomy that will be used when classifying with this attribute.
Returns:
newly created attribute description
Throws:
CSAppFrameworkException
Since:
CentraSite 8.0

createRelationshipAttribute

RelationshipAttributeDescription createRelationshipAttribute(java.lang.String name,
                                                             java.lang.String description,
                                                             java.lang.String associationType,
                                                             java.util.Collection<java.lang.String> targetObjectTypes)
                                                             throws CSAppFrameworkException
Creates relationship attribute metadata with the provided name, description, association type and target object types. Relationship attributes are modeled as association of the given type. The target of the association is enforced to be of the given types.

Parameters:
name -
description -
associationType - Association type that will be used when associating with this attribute. This is the path to the association type concept. The path has the following structure: "/uddi:key/ConceptName".
targetObjectTypes - Collection of keys of the object types to be used for the targets of the relationship.
Returns:
newly created attribute description
Throws:
CSAppFrameworkException
Since:
CentraSite 8.0

createRelationshipAttribute

RelationshipAttributeDescription createRelationshipAttribute(java.lang.String name,
                                                             java.lang.String description,
                                                             java.lang.String associationType,
                                                             java.lang.String... targetObjectTypes)
                                                             throws CSAppFrameworkException
Creates relationship attribute metadata with the provided name, description, association type and target object type or types. Relationship attributes are modeled as association of the given type. The targets of the association are enforced to be of the given types.

Parameters:
name -
description -
associationType - Association type that will be used when associating with this attribute. This is the path to the association type concept.
targetObjectTypes - Keys of the object types to be used for the targets of the relationship.
Returns:
newly created attribute description
Throws:
CSAppFrameworkException
Since:
CentraSite 8.0

createProfile

Profile createProfile(java.lang.String name)
                      throws CSAppFrameworkException
Creates profile with the provided name.

Parameters:
name - profile name
Returns:
newly create profile object
Throws:
CSAppFrameworkException
Since:
CentraSite 8.0

saveProfile

void saveProfile(Profile profile)
                 throws CSAppFrameworkException
Saves the given profile to the registry.

Parameters:
profile -
Throws:
CSAppFrameworkException
Since:
CentraSite 8.0

deleteProfile

void deleteProfile(Profile profile)
                   throws CSAppFrameworkException
Deletes the given profile from the registry.

Parameters:
profile -
Throws:
CSAppFrameworkException
Since:
CentraSite 8.0

getProfile

Profile getProfile(java.lang.String key)
                   throws CSAppFrameworkException
Retrieves the profile with the given key.

Parameters:
key -
Returns:
profile
Throws:
CSAppFrameworkException
Since:
CentraSite 8.0.2

getMandatoryProfiles

java.util.List<Profile> getMandatoryProfiles()
                                             throws CSAppFrameworkException
Retrieves the list of mandatory profiles (Permissions, Object-Specific properties etc.)

Returns:
list
Throws:
CSAppFrameworkException

createAssociationType

AssociationType createAssociationType(java.lang.String value,
                                      java.lang.String name,
                                      java.lang.String forwardLabel,
                                      java.lang.String backwardLabel,
                                      java.util.Locale locale)
                                      throws CSAppFrameworkException
Create a new AssociationType.

Parameters:
value - the value. Must not be null.
name - the name. If null, the name will be equal to the value.
forwardLabel - the forward label. Must not be null.
backwardLabel - the backward label. May be null.
locale - the locale for the name and the labels. If null, the locale of the underlying JAXR connection will be used.
Returns:
the new AssociationType
Throws:
CSAppFrameworkException

saveAssociationType

void saveAssociationType(AssociationType at)
                         throws CSAppFrameworkException
Save the given AssociationType.

Parameters:
at - the AssociationType to be saved
Throws:
CSAppFrameworkException

deleteAsssociationType

void deleteAsssociationType(AssociationType at)
                            throws CSAppFrameworkException
Delete the given AssociationType.

Parameters:
at - the AssociationType to be deleted
Throws:
CSAppFrameworkException

getAssociationType

AssociationType getAssociationType(java.lang.String value)
                                   throws CSAppFrameworkException
Get the AssociationType with the given value.

Parameters:
value - the value of the desired AssociationType
Returns:
the AssociationType. null if not found.
Throws:
CSAppFrameworkException

getAssociationTypeByName

AssociationType getAssociationTypeByName(java.lang.String name)
                                         throws CSAppFrameworkException
Get the AssociationType with the given name. All names regardless of the locale will be searched.

Parameters:
name - the name of the desired AssociationType
Returns:
the AssociationType. null if not found.
Throws:
CSAppFrameworkException

getAssociationTypeByForwardLabel

java.util.Collection<AssociationType> getAssociationTypeByForwardLabel(java.lang.String label)
                                                                       throws CSAppFrameworkException
Get the AssociationType with the given forward label. All forward labels regardless of the locale will be searched.

Parameters:
label - the forward label
Returns:
the collection of AssociationTypes. Maybe empty but not null.
Throws:
CSAppFrameworkException

getAllAssociationTypes

java.util.Collection<AssociationType> getAllAssociationTypes()
                                                             throws CSAppFrameworkException
Get all available AssociationTypes.

Returns:
the collection of AssociationTypes. Maybe empty but not null.
Throws:
CSAppFrameworkException