Net::LDAP::Control::Sort - Server Side Sort (SSS) control object
use Net::LDAP::Control::Sort; use Net::LDAP::Constant qw(LDAP_CONTROL_SORTRESULT); $sort = Net::LDAP::Control::Sort->new( order => "cn -phone" ); $mesg = $ldap->search( @args, control => [ $sort ]); ($resp) = $mesg->control( LDAP_CONTROL_SORTRESULT ); print "Results are sorted\n" if $resp and !$resp->result;
Net::LDAP::Control::Sort
is a sub-class of
Net::LDAP::Control. It provides a class
for manipulating the LDAP Server Side Sort (SSS) request control
1.2.840.113556.1.4.473
as defined in RFC-2891
If the server supports sorting, then the response from a search operation will include a sort result control. This control is handled by Net::LDAP::Control::SortResult.
A string which defines how entries may be sorted. It consists of multiple directives, spearated by whitespace. Each directive describes how to sort entries using a single attribute. If two entries have identical attributes, then the next directive in the list is used.
Each directive specifies a sorting order as follows
-attributeType:orderingRule
The leading -
is optional, and if present indicates that the sorting order should
be reversed. attributeType
is the attribute name to sort by. orderingRule
is optional and
indicates the rule to use for the sort and should be valid for the given attributeType
.
Any one attributeType should only appear once in the sorting list.
Examples
"cn" sort by cn using the default ordering rule for the cn attribute "-cn" sort by cn using the reverse of the default ordering rule "age cn" sort by age first, then by cn using the default ordering rules "cn:1.2.3.4" sort by cn using the ordering rule defined as 1.2.3.4
As with Net::LDAP::Control each constructor argument described above is also available as a method on the object which will return the current value for the attribute if called without an argument, and set a new value for the attribute if called with an argument.
Net::LDAP, Net::LDAP::Control::SortResult, Net::LDAP::Control, http://www.ietf.org/rfc/rfc2891.txt
Graham Barr <gbarr@pobox.com>
Please report any bugs, or post any suggestions, to the perl-ldap mailing list <perl-ldap@perl.org>
Copyright (c) 1999-2004 Graham Barr. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.