Express (Distributed operating systems), v8.0 > Secure applications and their environment > Authenticate users > Select a registry or repository > Manage realms in a federated repository > Virtual member manager > Reference > Program model > Control DataObject


SearchControl DataObject

SearchControl is used to specify the search criteria.

The structure of a SearchControl data object consists of:

countLimit

specifies the maximum number of search results returned by the search operation. If the actual number of search results is more than the specified countLimit, the hasMoreResults property in the SearchResponse control is set to true.

The countLimit property cannot be specified for SearchControl, if PageControl is also used. They are mutually exclusive.

expression

specifies search expression in XPath format.

properties

specifies the properties that you want returned from the entities that match the search criteria. For example, to get the sn and givenName attributes of the persons who is in marketing department.

returnSubType

specifies whether to return the subtypes of the entities specified in the expression. The default setting is true.

searchBases

specifies the search bases used to limit the search to those bases specified in the list.

searchLimit

specifies the maximum number of search results that may be returned by the search operation. If the search results exceeds the smaller number of either searchLimit specified in SearchControl or maxSearchResults specified in the wimconfig.xml file, a MaxResultsExceededException is thrown.If searchLimit is set then countLimit is ignored. If countLimit is set then searchLimit needs to be set to 0.

timeLimit

If the profile repository supports timeLimit, it specifies in milliseconds the maximum duration of the search.


XML schema definition

The following is the XML schema definition for the SearchControl data object:

<xsd:complexType name="SearchControl">
<xsd:complexContent>
<xsd:extension base="PropertyControl">
<xsd:sequence>
<xsd:element name="searchBases" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="countLimit" type="xsd:int" />
<xsd:attribute name="searchLimit" type="xsd:int" />
<xsd:attribute name="timeLimit" type="xsd:int" default="0"/>
<xsd:attribute name="expression" type="xsd:string"/>
<xsd:attribute name="returnSubType" type="xsd:boolean" default="true"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType> 


Sample data object

Following is a sample SearchControl DataObject used in the search API. It requests all the persons who have the last name (surname), Doe. It also indicates to return the uid and sn properties if they exist.

<wim:controls xsi:type="wim:SearchControl" countLimit="1"
            expression="@xsi:type='PersonAccount' and sn='Doe'">
<wim:properties>uid
</wim:properties>
<wim:properties>sn
</wim:properties>
<wim:searchBases>o=Sales,cn=users,dc=yourco,dc=com
</wim:searchBases>
</wim:controls> 

Parent topic: Control DataObject



+

Search Tips   |   Advanced Search