Skip to content

Commit

Permalink
Basic role catalog collections schema
Browse files Browse the repository at this point in the history
  • Loading branch information
semancik committed Mar 16, 2017
1 parent b3e1167 commit 036fb77
Show file tree
Hide file tree
Showing 2 changed files with 101 additions and 0 deletions.
Expand Up @@ -65,6 +65,11 @@ public abstract class SchemaConstants {
public static final String NS_MATCHING_RULE = NS_MIDPOINT_PUBLIC + "/common/matching-rule-3";
public static final String NS_FAULT = "http://midpoint.evolveum.com/xml/ns/public/common/fault-3";
public static final String NS_SAMPLES_EXTENSION = "http://midpoint.evolveum.com/xml/ns/samples/extension-3";

/**
* Namespace for default (bult-in) object collections, such as "all objects", "all roles", ...
*/
public static final String NS_OBJECT_COLLECTIONS = NS_MIDPOINT_PUBLIC + "/common/object-collections-3";

// COMMON NAMESPACE

Expand Down Expand Up @@ -398,6 +403,34 @@ public abstract class SchemaConstants {
public static final String LIFECYCLE_FAILED = "failed";


// Object collections

/**
* All objects in role catalog. It means all the objects in all the categories that are placed under the
* primary role catalog defined in the system. If used in a context where the role catalog can be displayed
* as a tree then this collection will be displayed as a tree.
*/
public static final QName OBJECT_COLLECTION_ROLE_CATALOG_QNAME = new QName(NS_OBJECT_COLLECTIONS, "roleCatalog");
public static final String OBJECT_COLLECTION_ROLE_CATALOG_URI = QNameUtil.qNameToUri(OBJECT_COLLECTION_ROLE_CATALOG_QNAME);

/**
* Collection that contains all roles.
*/
public static final QName OBJECT_COLLECTION_ALL_ROLES_QNAME = new QName(NS_OBJECT_COLLECTIONS, "allRoles");
public static final String OBJECT_COLLECTION_ALL_ROLES_URI = QNameUtil.qNameToUri(OBJECT_COLLECTION_ALL_ROLES_QNAME);

/**
* Collection that contains all orgs.
*/
public static final QName OBJECT_COLLECTION_ALL_ORGS_QNAME = new QName(NS_OBJECT_COLLECTIONS, "allOrgs");
public static final String OBJECT_COLLECTION_ALL_ORGS_URI = QNameUtil.qNameToUri(OBJECT_COLLECTION_ALL_ORGS_QNAME);

/**
* Collection that contains all services.
*/
public static final QName OBJECT_COLLECTION_ALL_SERVICES_QNAME = new QName(NS_OBJECT_COLLECTIONS, "allServices");
public static final String OBJECT_COLLECTION_ALL_SERVICES_URI = QNameUtil.qNameToUri(OBJECT_COLLECTION_ALL_SERVICES_QNAME);

// Samples

public static final QName SAMPLES_SSN = new QName(SchemaConstants.NS_SAMPLES_EXTENSION, "ssn");
Expand Down
Expand Up @@ -11072,6 +11072,19 @@
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="roleCatalogCollections" type="tns:ObjectCollectionsUseType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Specifies the set of object collections ("role catalog views") to display in role
catalog. If this element is not specified then the default (hardcoded) collections
will be displayed. If this element is specified then only those collections specified
in this element are displayed.
</xsd:documentation>
<xsd:appinfo>
<a:since>3.6</a:since>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="defaultAssignmentMultiplicity" type="tns:AssignmentMultiplicityType" minOccurs="0" default="single">
<xsd:annotation>
<xsd:documentation>
Expand Down Expand Up @@ -11137,6 +11150,61 @@
</xsd:restriction>
</xsd:simpleType>

<xsd:complexType name="ObjectCollectionsUseType">
<xsd:annotation>
<xsd:documentation>
Specifies a set of object collections ("views") to be displayed (used) at
a specific location in the system.
This is generic type that can be used to specify collections to display
in role catalog, menu, dashboard and so on.
</xsd:documentation>
<xsd:appinfo>
<a:since>3.6</a:since>
</xsd:appinfo>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="collection" type="tns:ObjectCollectionUseType" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>
Reference to the colleciot, its visibility, etc.
</xsd:documentation>
<xsd:appinfo>
<a:since>3.6</a:since>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<!-- TODO: other elements that influence the way how the whole collection set
is displayed or how the collection sets configuration is merged. -->
</xsd:sequence>
</xsd:complexType>

<xsd:complexType name="ObjectCollectionUseType">
<xsd:annotation>
<xsd:documentation>
Specifies how a specific collection ("view") is to be displayed (used) at
a specific location in the system.
This is generic type that can be used to specify collection to display
in role catalog, menu, dashboard and so on.
</xsd:documentation>
<xsd:appinfo>
<a:since>3.6</a:since>
</xsd:appinfo>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="collectionUri" type="xsd:anyURI" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Reference to the built-in collection.
</xsd:documentation>
<xsd:appinfo>
<a:since>3.6</a:since>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<!-- TODO: visibility, ordering, etc. -->
</xsd:sequence>
</xsd:complexType>

<xsd:complexType name="PolicyRuleType">
<xsd:annotation>
<xsd:documentation>
Expand Down

0 comments on commit 036fb77

Please sign in to comment.