JavaTM Platform
Standard Ed. 6

javax.naming.ldap
클래스 SortControl

java.lang.Object 
  상위를 확장 javax.naming.ldap.BasicControl 
      상위를 확장 javax.naming.ldap.SortControl
모든 구현된 인터페이스:
Serializable , Control


public final class SortControl
extends BasicControl

검색 조작의 결과를 소트 하고 나서 돌려주도록(듯이) LDAP 서버에 요구합니다. 소트 조건은, 1 개(살) 이상의 소트 키와 그 소트 파라미터를 순서에 늘어놓은 리스트로 지정합니다. 검색 결과는, 소트 컨트롤로 지정된 파라미터에 따라 LDAP 서버로 소트 되어 요구자에게 돌려주어집니다. 서버가 소트 기능을 지원하고 있지 않는 경우, 소트 컨트롤이 위기와 마크 되고 있을 때는, 검색 조작은 실행되지 않고, 에러가 돌려주어집니다.

이 클래스의 사용 방법을 나타내는 코딩예를 다음에 나타냅니다.


     // Open an LDAP association
     LdapContext ctx = new InitialLdapContext();

     // Activate sorting
     String sortKey = "cn";
     ctx.setRequestControls(new Control[]{ 
         new SortControl(sortKey, Control.CRITICAL) });

     // Perform a search
     NamingEnumeration results =
         ctx.search("", "(objectclass=*)", new SearchControls());

     // Iterate over search results
     while (results ! = null && results.hasMore()) {
         // Display an entry
         SearchResult entry = (SearchResult) results.next();
         System.out.println(entry.getName());
         System.out.println(entry.getAttributes());

         // Handle the entry's response controls (if any)
         if (entry instanceof HasControls) {
             // ((HasControls) entry). getControls();
         }
     }
     // Examine the sort control response 
     Control[] controls = ctx.getResponseControls();
     if (controls ! = null) {
         for (int i = 0; i < controls.length; i++) {
             if (controls[i] instanceof SortResponseControl) {
                 SortResponseControl src = (SortResponseControl) controls[i];
                 if (!  src.isSorted()) {
                     throw src.getException();
                 }
             } else {
                 // Handle other response controls (if any)
             }
         }
     }

     // Close the LDAP association
     ctx.close();
     ...

 

이 클래스는,RFC 2891 으로 정의되고 있는 서버측에서의 소트의 LDAPv3 요구 컨트롤을 구현합니다. 이 컨트롤의 값의 ASN. 1 정의는 다음과 같습니다.


     SortKeyList ::= SEQUENCE OF SEQUENCE {
         attributeType     AttributeDescription,
         orderingRule  [0] MatchingRuleId OPTIONAL,
         reverseOrder  [1] BOOLEAN DEFAULT FALSE }

 

도입된 버젼:
1.5
관련 항목:
SortKey , SortResponseControl , 직렬화 된 형식

필드의 개요
static String OID
          서버측에서의 소트의 컨트롤에 할당할 수 있고 있는 객체 식별자는 1.2. 840.113556. 1.4. 473 입니다.
 
클래스 javax.naming.ldap. BasicControl 로부터 상속된 필드
criticality , id , value
 
인터페이스 javax.naming.ldap. Control 로부터 상속된 필드
CRITICAL , NONCRITICAL
 
생성자 의 개요
SortControl (SortKey [] sortBy, boolean criticality)
          소트 키의 리스트에 근거해 소트하기 위한 컨트롤을 구축합니다.
SortControl (String [] sortBy, boolean criticality)
          속성의 리스트에 근거해 승순에 소트하기 위한 컨트롤을 구축합니다.
SortControl (String  sortBy, boolean criticality)
          1 개의 속성에 근거해 승순에 소트하기 위한 컨트롤을 구축합니다.
 
메소드의 개요
 
클래스 javax.naming.ldap. BasicControl 로부터 상속된 메소드
getEncodedValue , getID , isCritical
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

필드의 상세

OID

public static final String  OID
서버측에서의 소트의 컨트롤에 할당할 수 있고 있는 객체 식별자는 1.2. 840.113556. 1.4. 473 입니다.

관련 항목:
정수 필드치
생성자 의 상세

SortControl

public SortControl(String  sortBy,
                   boolean criticality)
            throws IOException 
1 개의 속성에 근거해 승순에 소트하기 위한 컨트롤을 구축합니다. 소트의 실행에는, 그 속성에 정의되고 있는 순서부 매칭 규칙이 사용됩니다.

파라미터:
sortBy - 소트의 기준이 되는 속성의 ID
criticality - true 의 경우, 서버는 이 컨트롤에 따라 지정대로 소트 한 검색 결과를 돌려주는지, 검색의 실행을 거부할 필요가 있다 false 의 경우, 서버는 이 컨트롤에 따르지 않아도 상관없다
예외:
IOException - 지정된 인수를 encode 해 컨트롤을 구축할 경우에 에러가 발생했을 경우

SortControl

public SortControl(String [] sortBy,
                   boolean criticality)
            throws IOException 
속성의 리스트에 근거해 승순에 소트하기 위한 컨트롤을 구축합니다. 소트의 실행에는, 지정된 각 속성에 정의되고 있는 순서부 매칭 규칙이 사용됩니다.

파라미터:
sortBy - 소트의 기준이 되는 속성의 ID 의 리스트. null 는 불가. 이러한 소트 키는, 우선 순위의 높은 것으로부터 순서에 리스트에 늘어놓을 수 있는
criticality - true 의 경우, 서버는 이 컨트롤에 따라 지정대로 소트 한 검색 결과를 돌려주는지, 검색의 실행을 거부할 필요가 있다 false 의 경우, 서버는 이 컨트롤에 따르지 않아도 상관없다
예외:
IOException - 지정된 인수를 encode 해 컨트롤을 구축할 경우에 에러가 발생했을 경우

SortControl

public SortControl(SortKey [] sortBy,
                   boolean criticality)
            throws IOException 
소트 키의 리스트에 근거해 소트하기 위한 컨트롤을 구축합니다. 각 소트 키는, 소트 순서 및 사용하는 순서부 매칭 규칙을 지정합니다.

파라미터:
sortBy - 소트의 기준이 되는 키의 리스트. null 는 불가. 이러한 소트 키는, 우선 순위의 높은 것으로부터 순서에 리스트에 늘어놓을 수 있는
criticality - true 의 경우, 서버는 이 컨트롤에 따라 지정대로 소트 한 검색 결과를 돌려주는지, 검색의 실행을 거부할 필요가 있다 false 의 경우, 서버는 이 컨트롤에 따르지 않아도 상관없다
예외:
IOException - 지정된 인수를 encode 해 컨트롤을 구축할 경우에 에러가 발생했을 경우

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.