org.openliberty.xmltooling.idsis.dap
Class DAPSort

java.lang.Object
  extended by org.opensaml.xml.AbstractXMLObject
      extended by org.opensaml.xml.validation.AbstractValidatingXMLObject
          extended by org.opensaml.xml.schema.impl.XSStringImpl
              extended by org.openliberty.xmltooling.idsis.dap.DAPSort
All Implemented Interfaces:
org.opensaml.xml.schema.XSString, org.opensaml.xml.validation.ValidatingXMLObject, org.opensaml.xml.XMLObject

public class DAPSort
extends org.opensaml.xml.schema.impl.XSStringImpl

Contents of SortType string is a dollar-separated (ASCII 0x24) list of sort keys in descending order of importance, where each sort key is a comma-separated list of three elements:

  1. Order: "a" == ascending (reverse order false, the default), "d" == descending (reverse order true),
  2. Ordering rule (empty means default for the attribute),
  3. Attribute name.

These elements are interpreted in the sense of [RFC2891], Section 1.1 "Request Control."

Example:

      a,,cn$d,,fn$d,,sn
 

An implementation that does not support sorting MAY ignore the sort specification. An implementation that partially supports sorting, SHOULD make best effort to satisfy the sort criteria, but need not adhere to it literally. Such implementations MAY ignore LDAP control-criticality specifications regarding the sort control.

Sorting is not supported for subscriptions.

   <xs:complexType name="SortType">
     <xs:simpleContent>
       <xs:extension base="xs:string"/>
     </xs:simpleContent>
   </xs:complexType>
 

Author:
asa

Nested Class Summary
static class DAPSort.Builder
           
static class DAPSort.Marshaller
           
static class DAPSort.SortOrder
           
static class DAPSort.Unmarshaller
           
 
Field Summary
static java.lang.String LOCAL_NAME
           
 
Fields inherited from interface org.opensaml.xml.schema.XSString
TYPE_LOCAL_NAME, TYPE_NAME
 
Constructor Summary
protected DAPSort()
           
protected DAPSort(java.lang.String namespaceURI, java.lang.String elementLocalName, java.lang.String namespacePrefix)
           
 
Method Summary
 void addSortElement(java.lang.String attributeName, DAPSort.SortOrder sortOrder, java.lang.String orderingRule)
          This method is used to build the DAPSort string.
 java.util.List<org.opensaml.xml.XMLObject> getOrderedChildren()
           
 
Methods inherited from class org.opensaml.xml.schema.impl.XSStringImpl
getValue, setValue
 
Methods inherited from class org.opensaml.xml.validation.AbstractValidatingXMLObject
deregisterValidator, getValidators, registerValidator, validate, validateChildren
 
Methods inherited from class org.opensaml.xml.AbstractXMLObject
addNamespace, getDOM, getElementQName, getIDIndex, getNamespaces, getNoNamespaceSchemaLocation, getParent, getSchemaLocation, getSchemaType, hasChildren, hasParent, prepareForAssignment, prepareForAssignment, prepareForAssignment, prepareForAssignment, registerOwnID, releaseChildrenDOM, releaseDOM, releaseParentDOM, releaseThisAndChildrenDOM, releaseThisandParentDOM, removeNamespace, resolveID, resolveIDFromRoot, setDOM, setElementNamespacePrefix, setElementQName, setNoNamespaceSchemaLocation, setParent, setSchemaLocation, setSchemaType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.opensaml.xml.validation.ValidatingXMLObject
deregisterValidator, getValidators, registerValidator, validate
 
Methods inherited from interface org.opensaml.xml.XMLObject
addNamespace, getDOM, getElementQName, getIDIndex, getNamespaces, getNoNamespaceSchemaLocation, getParent, getSchemaLocation, getSchemaType, hasChildren, hasParent, releaseChildrenDOM, releaseDOM, releaseParentDOM, removeNamespace, resolveID, resolveIDFromRoot, setDOM, setNoNamespaceSchemaLocation, setParent, setSchemaLocation
 

Field Detail

LOCAL_NAME

public static final java.lang.String LOCAL_NAME
See Also:
Constant Field Values
Constructor Detail

DAPSort

protected DAPSort()

DAPSort

protected DAPSort(java.lang.String namespaceURI,
                  java.lang.String elementLocalName,
                  java.lang.String namespacePrefix)
Method Detail

addSortElement

public void addSortElement(java.lang.String attributeName,
                           DAPSort.SortOrder sortOrder,
                           java.lang.String orderingRule)
This method is used to build the DAPSort string. It is called for each "Sort Element" that a user is interested in specifying

A sort element is in the form "sortOrder,orderingRule,attributeName"

Parameters:
attributeName - required name of the attribute such as "cn" "fn" etc...
sortOrder - default ascending
orderingRule - optional

getOrderedChildren

public java.util.List<org.opensaml.xml.XMLObject> getOrderedChildren()
Specified by:
getOrderedChildren in interface org.opensaml.xml.XMLObject
Overrides:
getOrderedChildren in class org.opensaml.xml.schema.impl.XSStringImpl