JavaTM Platform
Standard Ed. 6

javax.naming.directory
인터페이스 DirContext

모든 슈퍼 인터페이스:
Context
기존의 서브 인터페이스의 일람:
EventDirContext , LdapContext
기존의 구현 클래스의 일람:
InitialDirContext , InitialLdapContext


public interface DirContext
extends Context

디렉토리 서비스 인터페이스로, 객체에 관련지을 수 있었던 속성의 체크 및 변경의 메소드, 및 디렉토리 검색의 메소드를 포함합니다.

이름

DirContext 메소드에 인수로서 인도해지는 이름은 각각, 그 문맥을 기준으로 하고 있습니다. 문맥 자체를 지정하는 경우는, 빈 상태(empty)의 이름이 사용됩니다. 이름 파라미터는 null 로 할 수 없습니다.

대부분의 메소드에는,Name 파라미터 및 String 를 사용하는 overload 된 버젼이 있습니다. Name 파라미터와 String 파라미터가 단지 같은 이름이 다른 표기인 경우에 같은 메소드의 overload 된 버젼이 똑같이 동작한다, 라고 하는 점으로써 이러한 overload 된 버젼은 동등합니다. 2 번째의 버젼에는, 최초의 버젼에의 링크가 있어, 같은 문서가 양쪽 모두에 적용됩니다.

Context 메소드에 대한 이름 인수의 해석에 관한 설명은,Context 를 참조해 주세요. 이것과 같은 규칙이,DirContext 메소드에 대한 이름 인수에도 적용됩니다.

속성 모델

기본 모델에게는 2 개 있어, 관련짓는 속성이 다릅니다. 제 1 의 모델은, 속성을 DirContext 객체와 직접 관련짓습니다. 이 모델에서는, 지정된 객체의 속성 조작은, (DirContext 객체를 돌려준다) 이름의 룩 업과 대개 동등합니다. 계속되어 DirContext 객체로 불려 간 속성 조작으로, 호출측이 빈 상태(empty)의 이름을 제공합니다. 속성은 객체와 함께 포함되고 있으면(자) 간주할 수가 있습니다. 그러나, 이것은 구현시에 포함되고 있을 필요가 있다고 하는 것이 아닙니다.

제 2 의 모델은, 속성을 DirContext 의 이름 (일반적으로은 원시명)과 관련짓습니다. 이 모델에서는, 지정된 객체의 속성 조작은, 지정된 객체의 친 DirContext 의 이름의 룩 업과 대개 동등합니다. 계속되어 부모로 불려 간 속성 조작으로, 호출측이 단말 원시명을 제공합니다. 속성은 친 DirContext 에 포함되고 있으므로, 표시할 수 있습니다 (구현시에 포함되고 있을 필요는 없습니다). DirContext 가 아닌 객체는, 부모가 DirContext 이면 속성을 가질 수가 있습니다.

JNDI 는 이것들 양쪽 모두의 모델을 지원합니다. 속성을 어디에 「포함」할까의 결정은, 개개의 서비스 프로바이더에 따라서 다릅니다. JNDI 클라이언트는, 객체의 속성이 객체의 일부로서 포함되는지, 혹은 친객체내에 포함되어 객체의 이름과 관련지을 수 있는지에 임해서 전제 조건을 만들지 않는 경우에, 가장 시큐리티가 높아집니다.

속성형명

속성형명 getAttributes()search() 메소드로, 속성명 (캐릭터 라인)의 리스트를 제공하는 것에 의해, 돌려주는 속성을 제공할 수 있습니다. 되돌아 온 속성은, 지정한 속성명과 같은 이름을 가지고 있지 않은 경우가 있습니다. 이것은, 디렉토리에 따라서는, 지원하는 기능이 다른 속성을 돌려주기 (위해)때문에입니다. 이러한 기능에는, 속성의 서브 클래스화, 속성명의 동의어, 및 속성 언어 코드가 포함됩니다.

속성의 서브 클래스화에서는, 속성은 클래스 계층에서 정의됩니다. 디렉토리에 따라서는, 예를 들어 「이름」속성이 「commonName」와「surName」를 포함한 모든 이름에 간련 하는 속성의 슈퍼 클래스일 가능성이 있습니다. 「이름」속성을 요구하면(자), 「commonName」와「surName」의 양쪽 모두가 되돌아 올 가능성이 있습니다.

속성형의 동의어를 사용해, 디렉토리는 복수의 이름을 같은 속성에 할당할 수가 있습니다. 예를 들어, 「cn」와「commonName」가 함께 같은 속성을 찌를 가능성이 있습니다. 「cn」를 요구하면(자) 「commonName」속성이 되돌아 올 가능성이 있습니다.

디렉토리에 따라서는, 속성의 언어 코드를 지원하고 있는 것도 있습니다. 이러한 디렉토리에 예를 들어 「설명」속성을 요구하면(자), 이하의 속성이 모두 되돌아 올 가능성이 있습니다.

조작 속성

디렉토리에 따라서는, 관리 목적의 디렉토리 객체와 간련 붙일 수 있었던 속성인 「조작 속성」의 개념을 가지는 것도 있습니다. 조작 속성의 1 예는, 객체의 액세스 제어 리스트입니다.

getAttributes()search() 메소드로, 돌려주는 속성의 리스트로서 null 를 제공하는 것에 의해, 요구한 객체에 관련지을 수 있었던 속성을 모두 돌려주도록(듯이) 지정할 수 있습니다. 반환되는 속성에는 조작 속성은 포함되지 않습니다. 조작 속성을 검색하기 위해서는, 조작 속성에 명시적으로 이름을 붙일 필요가 있습니다.

이름 첨부 문맥

어떤 종류의 메소드에서는, 이름이 문맥을 해석 처리하고 있을 필요가 있습니다 (예를 들어, 단일 레벨의 문맥을 검색하는 경우). 이러한 메소드의 문서에서는, 「이름 첨부 문맥」으로 이름 파라미터를 설명합니다. 이러한 메소드에 대해서는, 지정된 객체가 DirContext 가 아닌 경우,NotContextException 가 throw 됩니다. 이러한 메소드 이외는, 「지정된 객체」가 DirContext 일 필요는 없습니다.

파라미터

Attributes,SearchControls, 또는 파라미터로서 메소드에 인도해지는 배열 객체는, 서비스 프로바이더에서는 변경되지 않습니다. 서비스 프로바이더에서는, 메소드의 결과의 열거, 및 생성된 참조의 처리를 포함한 오퍼레이션의 사이에, 객체에의 참조가 보관 유지됩니다. 호출측은, 이전으로 객체를 변경할 수 없습니다. 메소드에 의해 반환되는 Attributes 객체는, 호출측이 소유합니다. 나중에 호출해 옆이 객체를 변경하는 일도 있습니다만, 서비스 프로바이더는 변경하지 않습니다.

예외

이 인터페이스의 모든 메소드는, NamingException 또는 그 서브 클래스의 어떤 것에서도 throw 할 수 있습니다. 각 예외의 자세한 것은, NamingException 및 그 서브 클래스를 참조해 주세요.

도입된 버젼:
1.3
관련 항목:
Context

필드의 개요
static int ADD_ATTRIBUTE
          이 정수는, 지정된 값으로 속성을 추가하는 것을 지정합니다.
static int REMOVE_ATTRIBUTE
          이 정수는, 지정된 속성치를 속성으로부터 삭제하는 것을 지정합니다.
static int REPLACE_ATTRIBUTE
          이 정수는, 지정된 값으로 속성을 치환하는 것을 지정합니다.
 
인터페이스 javax.naming. Context 로부터 상속된 필드
APPLET , AUTHORITATIVE , BATCHSIZE , DNS_URL , INITIAL_CONTEXT_FACTORY , LANGUAGE , OBJECT_FACTORIES , PROVIDER_URL , REFERRAL , SECURITY_AUTHENTICATION , SECURITY_CREDENTIALS , SECURITY_PRINCIPAL , SECURITY_PROTOCOL , STATE_FACTORIES , URL_PKG_PREFIXES
 
메소드의 개요
 void bind (Name  name, Object  obj, Attributes  attrs)
          관련지을 수 있었던 속성과 함께, 이름을 객체에 바인드 합니다.
 void bind (String  name, Object  obj, Attributes  attrs)
          관련지을 수 있었던 속성과 함께, 이름을 객체에 바인드 합니다.
 DirContext createSubcontext (Name  name, Attributes  attrs)
          관련지을 수 있었던 속성과 함께, 이름을 객체에 바인드 합니다.
 DirContext createSubcontext (String  name, Attributes  attrs)
          관련지을 수 있었던 속성과 함께, 이름을 객체에 바인드 합니다.
 Attributes getAttributes (Name  name)
          이름 첨부 객체에 관련지을 수 있었던 속성을 모두 가져옵니다.
 Attributes getAttributes (Name  name, String [] attrIds)
          이름 첨부 객체에 관련지을 수 있었던 속성으로 선택된 것을 가져옵니다.
 Attributes getAttributes (String  name)
          이름 첨부 객체에 관련지을 수 있었던 속성을 모두 가져옵니다.
 Attributes getAttributes (String  name, String [] attrIds)
          이름 첨부 객체에 관련지을 수 있었던 속성으로 선택된 것을 가져옵니다.
 DirContext getSchema (Name  name)
          이름 첨부 객체에 관련한 schema를 가져옵니다.
 DirContext getSchema (String  name)
          이름 첨부 객체에 관련한 schema를 가져옵니다.
 DirContext getSchemaClassDefinition (Name  name)
          지정된 객체의 클래스 정의의 schema 객체를 포함한 문맥을 가져옵니다.
 DirContext getSchemaClassDefinition (String  name)
          지정된 객체의 클래스 정의의 schema 객체를 포함한 문맥을 가져옵니다.
 void modifyAttributes (Name  name, int mod_op, Attributes  attrs)
          이름 첨부 객체에 관련지을 수 있었던 속성을 변경합니다.
 void modifyAttributes (Name  name, ModificationItem [] mods)
          순서 붙이고 된 변경 리스트를 사용해, 지정된 객체에 관련지을 수 있었던 속성을 변경합니다.
 void modifyAttributes (String  name, int mod_op, Attributes  attrs)
          이름 첨부 객체에 관련지을 수 있었던 속성을 변경합니다.
 void modifyAttributes (String  name, ModificationItem [] mods)
          순서 붙이고 된 변경 리스트를 사용해, 지정된 객체에 관련지을 수 있었던 속성을 변경합니다.
 void rebind (Name  name, Object  obj, Attributes  attrs)
          관련지을 수 있었던 속성과 함께 이름을 객체에 바인드 해, 기존의 바인딩을 오버라이드(override) 합니다.
 void rebind (String  name, Object  obj, Attributes  attrs)
          관련지을 수 있었던 속성과 함께 이름을 객체에 바인드 해, 기존의 바인딩을 오버라이드(override) 합니다.
 NamingEnumeration <SearchResult > search (Name  name, Attributes  matchingAttributes)
          지정된 속성세트를 포함한 객체를 단일 문맥으로 검색합니다.
 NamingEnumeration <SearchResult > search (Name  name, Attributes  matchingAttributes, String [] attributesToReturn)
          지정된 속성세트를 포함한 객체를 단일 문맥으로 검색해, 선택한 속성을 가져옵니다.
 NamingEnumeration <SearchResult > search (Name  name, String  filterExpr, Object [] filterArgs, SearchControls  cons)
          이름 첨부 문맥 또는 이름 첨부 객체로, 지정된 검색 필터를 채우는 엔트리를 검색합니다.
 NamingEnumeration <SearchResult > search (Name  name, String  filter, SearchControls  cons)
          이름 첨부 문맥 또는 이름 첨부 객체로, 지정된 검색 필터를 채우는 엔트리를 검색합니다.
 NamingEnumeration <SearchResult > search (String  name, Attributes  matchingAttributes)
          지정된 속성세트를 포함한 객체를 단일 문맥으로 검색합니다.
 NamingEnumeration <SearchResult > search (String  name, Attributes  matchingAttributes, String [] attributesToReturn)
          지정된 속성세트를 포함한 객체를 단일 문맥으로 검색해, 선택한 속성을 가져옵니다.
 NamingEnumeration <SearchResult > search (String  name, String  filterExpr, Object [] filterArgs, SearchControls  cons)
          이름 첨부 문맥 또는 이름 첨부 객체로, 지정된 검색 필터를 채우는 엔트리를 검색합니다.
 NamingEnumeration <SearchResult > search (String  name, String  filter, SearchControls  cons)
          이름 첨부 문맥 또는 이름 첨부 객체로, 지정된 검색 필터를 채우는 엔트리를 검색합니다.
 
인터페이스 javax.naming. Context 로부터 상속된 메소드
addToEnvironment , bind , bind , close , composeName , composeName , createSubcontext , createSubcontext , destroySubcontext , destroySubcontext , getEnvironment , getNameInNamespace , getNameParser , getNameParser , list , list , listBindings , listBindings , lookup , lookup , lookupLink , lookupLink , rebind , rebind , removeFromEnvironment , rename , rename , unbind , unbind
 

필드의 상세

ADD_ATTRIBUTE

static final int ADD_ATTRIBUTE
이 정수는, 지정된 값으로 속성을 추가하는 것을 지정합니다.

속성이 존재하지 않는 경우, 속성을 작성합니다. 완성된 속성은, 지정된 값세트와 이전의 값세트의 화집합을 가집니다. 속성이 적어도 1 개의 값을 필요로 하는 경우에 값없이 속성을 추가하면(자),InvalidAttributeValueException 가 throw 됩니다. 그 속성이 벌써 존재하는 단일치 속성에 대해서는,AttributeInUseException 가 throw 됩니다. 단일치 속성에 복수의 값을 추가하려고 하면(자),InvalidAttributeValueException 가 throw 됩니다.

이 정수의 값은 1 입니다.

관련 항목:
ModificationItem , modifyAttributes(javax.naming.Name, int, javax.naming.directory.Attributes) , 정수 필드치

REPLACE_ATTRIBUTE

static final int REPLACE_ATTRIBUTE
이 정수는, 지정된 값으로 속성을 치환하는 것을 지정합니다.

속성이 벌써 존재하는 경우, 기존의 모든 값을 새롭게 지정된 값에 옮겨놓습니다. 속성이 존재하지 않는 경우는, 속성을 작성합니다. 값이 지정되어 있지 않은 경우, 속성의 값을 모두 삭제합니다. 속성이 적어도 1 개의 값을 필요로 하는 경우, 마지막 값을 삭제하면(자) 속성이 삭제됩니다. 단일치 속성에 복수의 값을 추가하려고 하면(자),InvalidAttributeValueException 가 throw 됩니다.

이 정수의 값은 2 입니다.

관련 항목:
ModificationItem , modifyAttributes(javax.naming.Name, int, javax.naming.directory.Attributes) , 정수 필드치

REMOVE_ATTRIBUTE

static final int REMOVE_ATTRIBUTE
이 정수는, 지정된 속성치를 속성으로부터 삭제하는 것을 지정합니다.

이것에 의해, 속성에는, 이전의 값세트와 지정된 값세트와의 사이에 세트의 상위가 생깁니다. 값이 지정되어 있지 않은 경우, 속성 전체를 삭제합니다. 속성이 존재하지 않는 경우, 또는 지정된 값세트의 일부 또는 전부가 존재하지 않는 경우는, 존재하지 않는 것이 무시되어 조작이 완료하든가, 혹은 존재하지 않는 것을 나타내는 NamingException 가 throw 됩니다. 속성이 적어도 1 개의 값을 필요로 하는 경우, 마지막 값을 삭제하면(자) 속성이 삭제됩니다.

이 정수의 값은 3 입니다.

관련 항목:
ModificationItem , modifyAttributes(javax.naming.Name, int, javax.naming.directory.Attributes) , 정수 필드치
메소드의 상세

getAttributes

Attributes  getAttributes(Name  name)
                         throws NamingException 
이름 첨부 객체에 관련지을 수 있었던 속성을 모두 가져옵니다. 속성 모델, 속성형명, 및 조작 속성에 대해서는, 클래스의 설명을 참조해 주세요.

파라미터:
name - 속성의 취득원의 객체의 이름
반환값:
name 에 관련지을 수 있었던 속성세트. 이름에 속성이 없는 경우, 빈 상태(empty)의 속성 세트를 돌려주어, null 가 될 것은 없다
예외:
NamingException - 네이밍 예외가 발생했을 경우
관련 항목:
getAttributes(String) , getAttributes(Name, String[])

getAttributes

Attributes  getAttributes(String  name)
                         throws NamingException 
이름 첨부 객체에 관련지을 수 있었던 속성을 모두 가져옵니다. 자세한 것은,getAttributes(Name) 를 참조해 주세요.

파라미터:
name - 속성의 취득원의 객체의 이름
반환값:
name 에 관련지을 수 있었던 속성세트
예외:
NamingException - 네이밍 예외가 발생했을 경우

getAttributes

Attributes  getAttributes(Name  name,
                         String [] attrIds)
                         throws NamingException 
이름 첨부 객체에 관련지을 수 있었던 속성으로 선택된 것을 가져옵니다. 속성 모델, 속성형명, 및 조작 속성에 대해서는, 클래스의 설명을 참조해 주세요.

지정된 속성을 객체가 가지고 있지 않은 경우, 디렉토리는 존재하지 않는 속성을 무시해, 객체가 가지고 있는 요구된 속성을 돌려줍니다.

디렉토리는 요구된 이상의 수의 속성을 돌려주는 일이 있습니다 (클래스 설명의 Attribute Type Names 참조)가, 무관계한 임의의 속성을 돌려줄 것은 없습니다.

클래스의 설명의 Operational Attributes 도 참조해 주세요.

파라미터:
name - 속성의 취득원의 객체의 이름
attrIds - 취득하는 속성의 식별자 null 는 모든 속성이 취득되는 것을 나타낸다 빈 상태(empty)의 배열은 아무것도 취득되지 않는 것을 나타낸다
반환값:
요구된 속성. null 는 불가
예외:
NamingException - 네이밍 예외가 발생했을 경우

getAttributes

Attributes  getAttributes(String  name,
                         String [] attrIds)
                         throws NamingException 
이름 첨부 객체에 관련지을 수 있었던 속성으로 선택된 것을 가져옵니다. 자세한 것은,getAttributes(Name, String[]) 를 참조해 주세요.

파라미터:
name - 속성의 취득원의 객체의 이름
attrIds - 취득하는 속성의 식별자. null 는 모든 속성이 취득되는 것을 나타낸다. 빈 상태(empty)의 배열은 아무것도 취득되지 않는 것을 나타낸다
반환값:
요구된 속성. null 는 불가
예외:
NamingException - 네이밍 예외가 발생했을 경우

modifyAttributes

void modifyAttributes(Name  name,
                      int mod_op,
                      Attributes  attrs)
                      throws NamingException 
이름 첨부 객체에 관련지을 수 있었던 속성을 변경합니다. 변경의 순서는 지정되지 않습니다. 가능한 경우, 변경은 기본적으로 행해집니다.

파라미터:
name - 속성이 변경되는 객체의 이름
mod_op - 변경 조작, ADD_ATTRIBUTE, REPLACE_ATTRIBUTE, REMOVE_ATTRIBUTE 의 어느쪽이든
attrs - 변경에 사용되는 속성. null 는 불가
예외:
AttributeModificationException - 변경을 완료할 수 없는 경우
NamingException - 네이밍 예외가 발생했을 경우
관련 항목:
modifyAttributes(Name, ModificationItem[])

modifyAttributes

void modifyAttributes(String  name,
                      int mod_op,
                      Attributes  attrs)
                      throws NamingException 
이름 첨부 객체에 관련지을 수 있었던 속성을 변경합니다. 자세한 것은,modifyAttributes(Name, int, Attributes) 를 참조해 주세요.

파라미터:
name - 속성이 변경되는 객체의 이름
mod_op - 변경 조작, ADD_ATTRIBUTE, REPLACE_ATTRIBUTE, REMOVE_ATTRIBUTE 의 어느쪽이든
attrs - 변경에 사용되는 속성. null 는 불가
예외:
AttributeModificationException - 변경을 완료할 수 없는 경우
NamingException - 네이밍 예외가 발생했을 경우

modifyAttributes

void modifyAttributes(Name  name,
                      ModificationItem [] mods)
                      throws NamingException 
순서 붙이고 된 변경 리스트를 사용해, 지정된 객체에 관련지을 수 있었던 속성을 변경합니다. 변경은 지정된 순서로 행해집니다. 각 변경은 변경 조작 코드 및 조작하는 속성을 지정합니다. 가능한 경우, 변경은 기본적으로 행해집니다.

파라미터:
name - 속성이 변경되는 객체의 이름
mods - 실행되는 변경의 순서. null 는 불가
예외:
AttributeModificationException - 변경을 완료할 수 없는 경우
NamingException - 네이밍 예외가 발생했을 경우
관련 항목:
modifyAttributes(Name, int, Attributes) , ModificationItem

modifyAttributes

void modifyAttributes(String  name,
                      ModificationItem [] mods)
                      throws NamingException 
순서 붙이고 된 변경 리스트를 사용해, 지정된 객체에 관련지을 수 있었던 속성을 변경합니다. 자세한 것은,modifyAttributes(Name, ModificationItem[]) 를 참조해 주세요.

파라미터:
name - 속성이 변경되는 객체의 이름
mods - 실행되는 변경의 순서. null 는 불가
예외:
AttributeModificationException - 변경을 완료할 수 없는 경우
NamingException - 네이밍 예외가 발생했을 경우

bind

void bind(Name  name,
          Object  obj,
          Attributes  attrs)
          throws NamingException 
관련지을 수 있었던 속성과 함께, 이름을 객체에 바인드 합니다. attrs 가 null 의 경우,objDirContext 이면, 바인딩은 obj 에 관련지을 수 있었던 속성을 가져, 그 이외의 경우는 속성이 없습니다. attrs 가 null 이외의 경우, 바인딩은 속성으로서 attrs 를 가져,obj 에 관련지을 수 있었던 속성은 모두 무시됩니다.

파라미터:
name - 빈 상태(empty)이 아닌 바인드 되는 이름
obj - null 의 가능성이 있는 바인드 되는 객체
attrs - 바인딩에 관련짓는 객체
예외:
NameAlreadyBoundException - 이름이 벌써 바인드 되고 있는 경우
InvalidAttributesException - 바인딩에 「필수」의 속성이 제공되어 있지 않은 경우
NamingException - 네이밍 예외가 발생했을 경우
관련 항목:
Context.bind(Name, Object) , rebind(Name, Object, Attributes)

bind

void bind(String  name,
          Object  obj,
          Attributes  attrs)
          throws NamingException 
관련지을 수 있었던 속성과 함께, 이름을 객체에 바인드 합니다. 자세한 것은,bind(Name, Object, Attributes) 를 참조해 주세요.

파라미터:
name - 빈 상태(empty)이 아닌 바인드 되는 이름
obj - null 의 가능성이 있는 바인드 되는 객체
attrs - 바인딩에 관련짓는 객체
예외:
NameAlreadyBoundException - 이름이 벌써 바인드 되고 있는 경우
InvalidAttributesException - 바인딩에 「필수」의 속성이 제공되어 있지 않은 경우
NamingException - 네이밍 예외가 발생했을 경우

rebind

void rebind(Name  name,
            Object  obj,
            Attributes  attrs)
            throws NamingException 
관련지을 수 있었던 속성과 함께 이름을 객체에 바인드 해, 기존의 바인딩을 오버라이드(override) 합니다. attrs 가 null 로 objDirContext 의 경우,obj 의 속성이 사용됩니다. attrs 가 null 로 objDirContext 가 아닌 경우, 디렉토리에서 벌써 바인드 되고 있는 객체에 관련지을 수 있었던 기존의 속성이 변경되지 않은 채 남습니다. attrs 가 null 이외의 경우, 디렉토리에서 벌써 바인드 되고 있는 객체에 관련지을 수 있었던 기존의 속성은 삭제되어attrs 가 지정된 객체에 관련지을 수 있습니다. objDirContextattrs 가 null 이외의 경우,obj 의 속성은 무시됩니다.

파라미터:
name - 빈 상태(empty)이 아닌 바인드 되는 이름
obj - null 의 가능성이 있는 바인드 되는 객체
attrs - 바인딩에 관련짓는 객체
예외:
InvalidAttributesException - 바인딩에 「필수」의 속성이 제공되어 있지 않은 경우
NamingException - 네이밍 예외가 발생했을 경우
관련 항목:
Context.bind(Name, Object) , bind(Name, Object, Attributes)

rebind

void rebind(String  name,
            Object  obj,
            Attributes  attrs)
            throws NamingException 
관련지을 수 있었던 속성과 함께 이름을 객체에 바인드 해, 기존의 바인딩을 오버라이드(override) 합니다. 자세한 것은,rebind(Name, Object, Attributes) 를 참조해 주세요.

파라미터:
name - 빈 상태(empty)이 아닌 바인드 되는 이름
obj - null 의 가능성이 있는 바인드 되는 객체
attrs - 바인딩에 관련짓는 객체
예외:
InvalidAttributesException - 바인딩에 「필수」의 속성이 제공되어 있지 않은 경우
NamingException - 네이밍 예외가 발생했을 경우

createSubcontext

DirContext  createSubcontext(Name  name,
                            Attributes  attrs)
                            throws NamingException 
관련지을 수 있었던 속성과 함께, 이름을 객체에 바인드 합니다. 이 메소드는 지정한 이름으로 새로운 서브 문맥을 작성해, 그 서브 문맥을 (이름의 말단에 있는 것을 제외하는 모든 불가분의 성분) 타겟 문맥으로 바인드 해, 제공된 속성을 새롭게 작성된 객체에 관련짓습니다. 모든 중간 문맥 및 타겟 문맥이 벌써 존재하고 있을 필요가 있습니다. attrs 가 null 의 경우, 이 메소드는 Context.createSubcontext() 와 동등합니다.

파라미터:
name - 빈 상태(empty)이 아닌 작성되는 문맥의 이름
attrs - 새롭게 작성된 문맥에 관련짓는 객체
반환값:
새롭게 작성된 문맥
예외:
NameAlreadyBoundException - 이름이 벌써 바인드 되고 있는 경우
InvalidAttributesException - 작성에 필요한 필수 속성 attrs 가 일부 밖에 포함되지 않은 경우
NamingException - 네이밍 예외가 발생했을 경우
관련 항목:
Context.createSubcontext(Name)

createSubcontext

DirContext  createSubcontext(String  name,
                            Attributes  attrs)
                            throws NamingException 
관련지을 수 있었던 속성과 함께, 이름을 객체에 바인드 합니다. 자세한 것은,createSubcontext(Name, Attributes) 를 참조해 주세요.

파라미터:
name - 빈 상태(empty)이 아닌 작성되는 문맥의 이름
attrs - 새롭게 작성된 문맥에 관련짓는 객체
반환값:
새롭게 작성된 문맥
예외:
NameAlreadyBoundException - 이름이 벌써 바인드 되고 있는 경우
InvalidAttributesException - 작성에 필요한 필수 속성 attrs 가 일부 밖에 포함되지 않은 경우
NamingException - 네이밍 예외가 발생했을 경우

getSchema

DirContext  getSchema(Name  name)
                     throws NamingException 
이름 첨부 객체에 관련한 schema를 가져옵니다. schema는, 이름 공간의 구조와 그 중에 보존된 속성에 관한 규칙을 설명합니다. schema는, 디렉토리에 추가할 수 있는 객체의 형태와 그 객체를 추가하는 장소, 객체를 가질 수 있는 필수 속성과 임의의 속성을 지정합니다. schema의 지원 범위는 디렉토리에 고유합니다.

이 메소드는, 지정된 객체에 적용할 수 있는 schema 정보 트리의 루트를 돌려줍니다. 지정된 객체 (또는 디렉토리 전체)의 몇개인가가, 같은 schema를 공유하는 경우가 있습니다.

schema 트리의 구조와 내용, schema 트리의 내용의 변경 허가, 이러한 변경의 디렉토리에의 영향등의 문제는, 기본이 되는 디렉토리에 의해 다릅니다.

파라미터:
name - schema의 취득원객체의 이름
반환값:
문맥에 관련지을 수 있는 schema. null 는 불가
예외:
OperationNotSupportedException - schema가 지원되어 있지 않은 경우
NamingException - 네이밍 예외가 발생했을 경우

getSchema

DirContext  getSchema(String  name)
                     throws NamingException 
이름 첨부 객체에 관련한 schema를 가져옵니다. 자세한 것은,getSchema(Name) 를 참조해 주세요.

파라미터:
name - schema의 취득원객체의 이름
반환값:
문맥에 관련지을 수 있는 schema. null 는 불가
예외:
OperationNotSupportedException - schema가 지원되어 있지 않은 경우
NamingException - 네이밍 예외가 발생했을 경우

getSchemaClassDefinition

DirContext  getSchemaClassDefinition(Name  name)
                                    throws NamingException 
지정된 객체의 클래스 정의의 schema 객체를 포함한 문맥을 가져옵니다.

디렉토리 schema의 정보 카테고리의 1 개에 「클래스 정의」가 있습니다. 「객체 클래스」의 정의는, 객체의 「형태」, 및 그 객체가 가질 필요가 있는 속성과 가질 수 있는 속성 (필수와 임의)을 지정합니다. 여기서 말하는 「객체 클래스」는, Java 적인 의미는 아니고, 디렉토리적인 의미로 사용되고 있습니다. 예를 들어, 지정된 객체가 「Person」클래스의 디렉토리 객체인 경우,getSchemaClassDefinition() 는, 「Person」의 (디렉토리의) 객체 클래스 정의를 나타내는 DirContext 를 돌려줍니다.

객체 클래스 정의로부터 취득할 수 있는 정보는, 디렉토리 의존입니다.

JNDI 1.2 보다 전은, 이 메소드는 지정된 객체의 클래스 정의를 나타내는 단일의 schema 객체를 돌려주고 있었습니다. JNDI 1.2 로부터는, 이 메소드는 지정된 객체의 클래스 정의를 모두 포함한 DirContext 를 돌려줍니다.

파라미터:
name - 객체 클래스 정의의 취득원객체의 이름 지정된 객체의
반환값:
클래스 정의를 포함한 DirContext. null 는 불가
예외:
OperationNotSupportedException - schema가 지원되어 있지 않은 경우
NamingException - 네이밍 예외가 발생했을 경우

getSchemaClassDefinition

DirContext  getSchemaClassDefinition(String  name)
                                    throws NamingException 
지정된 객체의 클래스 정의의 schema 객체를 포함한 문맥을 가져옵니다. 자세한 것은,getSchemaClassDefinition(Name) 를 참조해 주세요.

파라미터:
name - 객체 클래스 정의의 취득원객체의 이름 지정된 객체의
반환값:
클래스 정의를 포함한 DirContext. null 는 불가
예외:
OperationNotSupportedException - schema가 지원되어 있지 않은 경우
NamingException - 네이밍 예외가 발생했을 경우

search

NamingEnumeration <SearchResult > search(Name  name,
                                       Attributes  matchingAttributes,
                                       String [] attributesToReturn)
                                       throws NamingException 
지정된 속성세트를 포함한 객체를 단일 문맥으로 검색해, 선택한 속성을 가져옵니다. 검색은, 디폴트의 SearchControls 설정을 사용해 행해집니다.

객체를 선택하기 위해서는,matchingAttributes 의 각 속성이 객체의 속성의 어느쪽이든일치할 필요가 있습니다. matchingAttributes 가 빈 상태(empty) 또는 null 의 경우, 타겟 문맥의 모든 객체가 돌려주어집니다.

matchingAttributes 의 속성 A1 으로 객체의 속성 A2 가 같은 식별자를 가지고 있어A1 의 각 치가 A2 의 값의 어느 쪽인가에 동일한 경우,A1A2 에 일치한다고 보입니다. 이것은, 값의 순서는 중요하지 않고, 또 A2A1 에 없는 「여분의」값을 포함하고 있어도 비교에는 영향이 없는 것을 의미합니다. 게다가A1 이 값을 가지고 있지 않은 경우, 일치의 테스트는, 같은 식별자를 가지는 속성 A2 가 존재할지 어떨지를 조사하는 것과 같은 뜻이 됩니다.

속성치를 비교하는데 사용되는 「동등」의 상세한 정의는, 기본이 되는 디렉토리 서비스에 의해 정의됩니다. 정의에는, 예를 들어 Object.equals 메소드를 사용하는 경우도 있으면, schema를 사용해 다른 동등 조작을 지정하는 경우도 있습니다. 동등 이외의 조작에 근거하는 매칭 (부분 캐릭터 라인의 비교등)에는, 필터 인수를 취하는 search 메소드의 버젼을 사용합니다.

DirContext 로 변경을 했을 경우, 변경전의 이 메소드에 대한 호출에 의해 반환된 열거의 결과는, 정의되고 있지 않습니다.

지정된 속성을 객체가 가지고 있지 않은 경우, 디렉토리는 존재하지 않는 속성을 무시해, 객체가 가지고 있는 요구된 속성을 돌려줍니다.

디렉토리는 요구된 이상의 수의 속성을 돌려주는 일이 있습니다 (클래스 설명의 Attribute Type Names 참조)가, 무관계한 임의의 속성을 돌려줄 것은 없습니다.

클래스의 설명의 Operational Attributes 도 참조해 주세요.

파라미터:
name - 검색하는 문맥의 이름
matchingAttributes - 검색하는 속성. 빈 상태(empty) 또는 null 의 경우, 타겟 문맥의 모든 객체가 반환되는
attributesToReturn - 돌려주는 속성. null 는 null 는 모든 속성이 반환되는 것을 나타낸다. 빈 상태(empty)의 배열은 아무것도 돌려주어지지 않은 것을 나타낸다
반환값:
null 이외의 SearchResult 객체의 열거 각 SearchResult 는,attributesToReturn 에 의해 식별된 속성, 및 name 에 의해 이름이 붙여진 문맥에 관련해 이름이 붙여졌다 해당 객체의 이름을 포함한다
예외:
NamingException - 네이밍 예외가 발생했을 경우
관련 항목:
SearchControls , SearchResult , search(Name, String, Object[], SearchControls)

search

NamingEnumeration <SearchResult > search(String  name,
                                       Attributes  matchingAttributes,
                                       String [] attributesToReturn)
                                       throws NamingException 
지정된 속성세트를 포함한 객체를 단일 문맥으로 검색해, 선택한 속성을 가져옵니다. 자세한 것은,search(Name, Attributes, String[]) 를 참조해 주세요.

파라미터:
name - 검색하는 문맥의 이름
matchingAttributes - 검색하는 속성
attributesToReturn - 돌려주는 속성
반환값:
null 이외의 SearchResult 객체의 열거
예외:
NamingException - 네이밍 예외가 발생했을 경우

search

NamingEnumeration <SearchResult > search(Name  name,
                                       Attributes  matchingAttributes)
                                       throws NamingException 
지정된 속성세트를 포함한 객체를 단일 문맥으로 검색합니다. 이 메소드는 그 객체의 모든 속성을 돌려줍니다. 이것은,atributesToReturn 파라미터로서 메소드 search(Name, Attributes, String[]) 에 null 를 제공하는 것과 동등합니다.
자세한 것은,search(Name, Attributes, String[]) 를 참조해 주세요.

파라미터:
name - 검색하는 문맥의 이름
matchingAttributes - 검색하는 속성
반환값:
SearchResult 객체의 열거
예외:
NamingException - 네이밍 예외가 발생했을 경우
관련 항목:
search(Name, Attributes, String[])

search

NamingEnumeration <SearchResult > search(String  name,
                                       Attributes  matchingAttributes)
                                       throws NamingException 
지정된 속성세트를 포함한 객체를 단일 문맥으로 검색합니다. 자세한 것은,search(Name, Attributes) 를 참조해 주세요.

파라미터:
name - 검색하는 문맥의 이름
matchingAttributes - 검색하는 속성
반환값:
SearchResult 객체의 열거
예외:
NamingException - 네이밍 예외가 발생했을 경우

search

NamingEnumeration <SearchResult > search(Name  name,
                                       String  filter,
                                       SearchControls  cons)
                                       throws NamingException 
이름 첨부 문맥 또는 이름 첨부 객체로, 지정된 검색 필터를 채우는 엔트리를 검색합니다. 검색 제어에 의해 지정된 것처럼 검색을 실시합니다.

filter 의 형식과 해석은, RFC 2254 에 준거하고 있습니다. attrvalue 에 대한 해석은 RFC 에 다음과 같이 정의되고 있습니다.

attr 는 속성의 식별자입니다.

value 는 속성의 값의 캐릭터 라인 표현입니다. 속성치에의 이 캐릭터 라인 표현의 평행이동은, 디렉토리에 고유합니다.

예를 들어 「someCount=127」(이)라고 하는 대입식의 경우,attr 는 「someCount」로,value 는 「127」입니다. 속성 ID ( 「someCount」), 및 경우에 따라서는 그 schema에 근거해, 프로바이더는 속성의 값이 정수형인 것을 판별합니다. 프로바이더는 계속되어 캐릭터 라인 「127」을 적절히 구문 분석 합니다.

필터 캐릭터 라인의 ASCII 이외의 문자는, 해당하는 Java (Unicode) 문자로 나타내, UTF-8 8중창에의 encode는 하지 않습니다. 혹은, RFC 2254 로 진술되고 있는 「backslash - 16 진수자」표기법도 사용할 수 있습니다.

디렉토리가 그 속성의 몇개인가 또는 전부의 캐릭터 라인 표현을 지원하고 있지 않는 경우, 대신에 필터 인수를 Objects 의 형태로 받아들이는 search 의 형식을 사용할 수 있습니다. 이러한 디렉토리의 서비스 프로바이더는, 필터 인수를 필터 평가의 그 서비스 특정의 표현에 평행이동 합니다. search(Name, String, Object[], SearchControls) 를 참조해 주세요.

RFC 2254 는, 부분 캐릭터 라인 일치, 등가, 근사 일치, 보다 대, 보다 소를 포함한 주어진(given) 연산자를 정의합니다. 이러한 연산자는, 대응하는 시멘틱스와 함께 기본이 되는 디렉토리에 있는 연산자에 맵 됩니다. 예를 들어, 동등 연산자의 경우, 디렉토리는 필터의 속성의 「동등」을 정의하는 일치 규칙을 가지고 있다고 합니다. 이 규칙을 사용해, 필터로 지정된 속성과 디렉토리의 객체의 속성이 동등한가 어떤가를 조사합니다. 같이 디렉토리가 순서부의 규칙을 가지고 있으면, 이 규칙을 사용해 「보다 대」 및 「보다 소」의 비교를 합니다.

RFC 2254 로 정의되고 있는 연산자의 모든 것을 모든 속성에 적용할 수 있는 것은 아닙니다. 연산자를 적용할 수 없는 경우, 예외 InvalidSearchFilterException 가 throw 됩니다.

SearchResult 의 열거의 형태로 결과가 돌려주어집니다. 각 SearchResult 는, 객체의 이름이나 그 외 객체에 관한 정보를 포함하고 있습니다 (SearchResult 참조). 이름은, (name 파라미터에 의해 이름이 붙여진) 검색의 타겟 문맥에 관련하고 있는지, URL 캐릭터 라인일까의 어느 쪽인지입니다. consSearchControls.OBJECT_SCOPE 또는 SearchControls.SUBSTREE_SCOPE 의 검색 범위를 지정하는 경우에 생각되도록(듯이), 타겟 문맥이 열거에 포함되는 경우, 그 이름은 빈 상태(empty)의 캐릭터 라인입니다. 일치 객체의 속성을 돌려주도록(듯이) cons 인수가 지정했을 경우,SearchResult 는 그 속성도 포함하는 일이 있습니다.

요구된 속성을 객체가 가지고 있지 않은 경우, 그 존재하지 않는 속성은 무시됩니다. 객체가 가지고 있는 요구된 속성이 돌려주어집니다.

디렉토리는 요구된 이상의 수의 속성을 돌려주는 일이 있습니다 (클래스 설명의 Attribute Type Names 참조)가, 무관계한 임의의 속성을 돌려줄 것은 없습니다.

클래스의 설명의 Operational Attributes 도 참조해 주세요.

파라미터:
name - 검색하는 문맥 또는 객체의 이름
filter - 검색에 사용하는 필터식. null 는 불가
cons - 검색을 제어하는 검색 제어. null 의 경우, 디폴트의 검색 제어가 사용된다 ((new SearchControls()) 와 동등)
반환값:
필터를 채우는 객체의 SearchResult 의 열거. null 는 불가
예외:
InvalidSearchFilterException - 기본이 되는 디렉토리가, 지정된 검색 필터를 지원하고 있지 않는지, 인식하지 않는 경우
InvalidSearchControlsException - 검색 제어가 무효인 설정을 포함하고 있는 경우
NamingException - 네이밍 예외가 발생했을 경우
관련 항목:
search(Name, String, Object[], SearchControls) , SearchControls , SearchResult

search

NamingEnumeration <SearchResult > search(String  name,
                                       String  filter,
                                       SearchControls  cons)
                                       throws NamingException 
이름 첨부 문맥 또는 이름 첨부 객체로, 지정된 검색 필터를 채우는 엔트리를 검색합니다. 검색 제어에 의해 지정된 것처럼 검색을 실시합니다. 자세한 것은,search(Name, String, SearchControls) 를 참조해 주세요.

파라미터:
name - 검색하는 문맥 또는 객체의 이름
filter - 검색에 사용하는 필터식. null 는 불가
cons - 검색을 제어하는 검색 제어. null 의 경우, 디폴트의 검색 제어가 사용된다 ((new SearchControls()) 와 동등)
반환값:
필터를 채우는 객체의 SearchResult 의 열거
예외:
InvalidSearchFilterException - 기본이 되는 디렉토리가, 지정된 검색 필터를 지원하고 있지 않는지, 인식하지 않는 경우
InvalidSearchControlsException - 검색 제어가 무효인 설정을 포함하고 있는 경우
NamingException - 네이밍 예외가 발생했을 경우

search

NamingEnumeration <SearchResult > search(Name  name,
                                       String  filterExpr,
                                       Object [] filterArgs,
                                       SearchControls  cons)
                                       throws NamingException 
이름 첨부 문맥 또는 이름 첨부 객체로, 지정된 검색 필터를 채우는 엔트리를 검색합니다. 검색 제어에 의해 지정된 것처럼 검색을 실시합니다.

filterExpr 의 해석은, RFC 2254 에 근거하고 있습니다. 이 밖에,filterArgs 배열의 객체에 관련하는 폼 {i} 의 변수를 포함한 경우가 있습니다. i 는 정수입니다. 그 외의 점에서는,filterExpr 의 해석은, 메소드 search(Name, String, SearchControls)filter 파라미터의 해석과 동일합니다.

변수 {i} 가 검색 필터에 있는 경우, 필터 인수 filterArgs[i] 가 그 자리소에 사용되는 것을 나타내고 있습니다. 이러한 변수는,attr,value, 또는 matchingrule 생성이 RFC 2254, 섹션 4 의 필터 문법으로 게재되는 장소라면 어디에서라도 사용할 수 있습니다. 캐릭터 라인치 필터의 인수가 변수를 치환하는 경우, 필터는 캐릭터 라인이 변수 대신에 지정된 것처럼 해석되어 RFC 2254 의 규칙에 따라, 필터내의 특수한 의미를 가지는 문자 ('*' 등)는 이스케이프 됩니다.

속성의 일부 또는 전부에 캐릭터 라인 표현을 사용하지 않는 디렉토리의 경우, 속성치에 대응하는 필터 인수는 String 이외의 형태의 가능성이 있습니다. 예를 들어, 구조화되어 있지 않은 2 진수의 속성을 지원하는 디렉토리는, 바이트 배열을 필터 인수로서 받아들입니다. 다른 형태의 필터 인수의 해석이 있는 경우, 해석은 그 디렉토리의 서비스 프로바이더에 의해 판별되어 서비스 프로바이더는 필터 조작을, 해당하는 시멘틱스와 함께 기본이 되는 디렉토리의 조작에 맵 합니다.

이 메소드는 결과의 열거를 돌려줍니다. 열거의 각 요소는, 객체의 이름 그 외 객체에 관한 정보를 포함하고 있습니다 (SearchResult 참조). 이름은, (name 파라미터에 의해 이름이 붙여진) 검색의 타겟 문맥에 관련하고 있는지, URL 캐릭터 라인일까의 어느 쪽인지입니다. consSearchControls.OBJECT_SCOPE 또는 SearchControls.SUBSTREE_SCOPE 의 검색 범위를 지정하는 경우에 생각되도록(듯이), 타겟 문맥이 열거에 포함되는 경우, 그 이름은 빈 상태(empty)의 캐릭터 라인입니다.

속성을 돌려주도록(듯이) cons 인수가 지정했을 경우,SearchResult 는 일치하는 객체의 속성도 포함하는 일이 있습니다.

요구된 속성을 객체가 가지고 있지 않은 경우, 그 존재하지 않는 속성은 무시됩니다. 객체가 가지고 있는 요구된 속성이 돌려주어집니다.

디렉토리는 요구된 이상의 수의 속성을 돌려주는 일이 있습니다 (클래스 설명의 Attribute Type Names 참조)가, 무관계한 임의의 속성을 돌려줄 것은 없습니다.

무효인 변수의 치환을 실시하는 검색 필터가 이 메소드에 제공되었을 경우, 결과는 정의되고 있지 않습니다. 이 DirContext 로 변경이 이루어졌을 경우, 이 메소드에 대한 변경전의 호출에 의해 반환되는 열거의 결과는 정의되고 있지 않습니다.

클래스의 설명의 Operational Attributes 도 참조해 주세요.

파라미터:
name - 검색하는 문맥 또는 객체의 이름
filterExpr - 검색에 사용하는 필터식. 식에는 폼 「{i}」의 변수를 포함한다 {i} 는 부가 아닌 정수. null 는 불가
filterArgs - filterExpr 의 변수를 치환하는 인수의 배열. filterArgs[i] 의 값이 각 「{i}」를 치환한다. null 의 경우, 빈 상태(empty)의 배열과 동등
cons - 검색을 제어하는 검색 제어. null 의 경우, 디폴트의 검색 제어가 사용된다 ((new SearchControls()) 와 동등)
반환값:
필터를 채우는 객체의 SearchResult 의 열거. null 는 불가
예외:
ArrayIndexOutOfBoundsException - filterExpr{i} 식을 포함해,i 가 배열 filterArgs 의 범위외가 되는 경우
InvalidSearchControlsException - cons 가 무효인 설정을 포함하고 있는 경우
InvalidSearchFilterException - filterArgs 를 가지는 filterExpr 가 무효인 검색 필터를 나타내고 있는 경우
NamingException - 네이밍 예외가 발생했을 경우
관련 항목:
search(Name, Attributes, String[]) , MessageFormat

search

NamingEnumeration <SearchResult > search(String  name,
                                       String  filterExpr,
                                       Object [] filterArgs,
                                       SearchControls  cons)
                                       throws NamingException 
이름 첨부 문맥 또는 이름 첨부 객체로, 지정된 검색 필터를 채우는 엔트리를 검색합니다. 검색 제어에 의해 지정된 것처럼 검색을 실시합니다. 자세한 것은,search(Name, String, Object[], SearchControls) 를 참조해 주세요.

파라미터:
name - 검색하는 문맥 또는 객체의 이름
filterExpr - 검색에 사용하는 필터식. 식에는 폼 「{i}」의 변수를 포함한다 {i} 는 부가 아닌 정수. null 는 불가
filterArgs - filterExpr 의 변수를 치환하는 인수의 배열. filterArgs[i] 의 값이 각 「{i}」를 치환한다. null 의 경우, 빈 상태(empty)의 배열과 동등
cons - 검색을 제어하는 검색 제어. null 의 경우, 디폴트의 검색 제어가 사용된다 ((new SearchControls()) 와 동등)
반환값:
필터를 채우는 객체의 SearchResult 의 열거. null 는 불가
예외:
ArrayIndexOutOfBoundsException - filterExpr{i} 식을 포함해,i 가 배열 filterArgs 의 범위외가 되는 경우
InvalidSearchControlsException - cons 가 무효인 설정을 포함하고 있는 경우
InvalidSearchFilterException - filterArgs 를 가지는 filterExpr 가 무효인 검색 필터를 나타내고 있는 경우
NamingException - 네이밍 예외가 발생했을 경우

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 도 참조해 주세요.