|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
public interface DirContext
디렉토리 서비스 인터페이스로, 객체에 관련지을 수 있었던 속성의 체크 및 변경의 메소드, 및 디렉토리 검색의 메소드를 포함합니다.
대부분의 메소드에는,Name
파라미터 및 String
를 사용하는 overload 된 버젼이 있습니다. Name
파라미터와 String
파라미터가 단지 같은 이름이 다른 표기인 경우에 같은 메소드의 overload 된 버젼이 똑같이 동작한다, 라고 하는 점으로써 이러한 overload 된 버젼은 동등합니다. 2 번째의 버젼에는, 최초의 버젼에의 링크가 있어, 같은 문서가 양쪽 모두에 적용됩니다.
Context 메소드에 대한 이름 인수의 해석에 관한 설명은,Context 를 참조해 주세요. 이것과 같은 규칙이,DirContext 메소드에 대한 이름 인수에도 적용됩니다.
제 2 의 모델은, 속성을 DirContext 의 이름 (일반적으로은 원시명)과 관련짓습니다. 이 모델에서는, 지정된 객체의 속성 조작은, 지정된 객체의 친 DirContext 의 이름의 룩 업과 대개 동등합니다. 계속되어 부모로 불려 간 속성 조작으로, 호출측이 단말 원시명을 제공합니다. 속성은 친 DirContext 에 포함되고 있으므로, 표시할 수 있습니다 (구현시에 포함되고 있을 필요는 없습니다). DirContext 가 아닌 객체는, 부모가 DirContext 이면 속성을 가질 수가 있습니다.
JNDI 는 이것들 양쪽 모두의 모델을 지원합니다. 속성을 어디에 「포함」할까의 결정은, 개개의 서비스 프로바이더에 따라서 다릅니다. JNDI 클라이언트는, 객체의 속성이 객체의 일부로서 포함되는지, 혹은 친객체내에 포함되어 객체의 이름과 관련지을 수 있는지에 임해서 전제 조건을 만들지 않는 경우에, 가장 시큐리티가 높아집니다.
속성의 서브 클래스화에서는, 속성은 클래스 계층에서 정의됩니다. 디렉토리에 따라서는, 예를 들어 「이름」속성이 「commonName」와「surName」를 포함한 모든 이름에 간련 하는 속성의 슈퍼 클래스일 가능성이 있습니다. 「이름」속성을 요구하면(자), 「commonName」와「surName」의 양쪽 모두가 되돌아 올 가능성이 있습니다.
속성형의 동의어를 사용해, 디렉토리는 복수의 이름을 같은 속성에 할당할 수가 있습니다. 예를 들어, 「cn」와「commonName」가 함께 같은 속성을 찌를 가능성이 있습니다. 「cn」를 요구하면(자) 「commonName」속성이 되돌아 올 가능성이 있습니다.
디렉토리에 따라서는, 속성의 언어 코드를 지원하고 있는 것도 있습니다. 이러한 디렉토리에 예를 들어 「설명」속성을 요구하면(자), 이하의 속성이 모두 되돌아 올 가능성이 있습니다.
디렉토리에 따라서는, 관리 목적의 디렉토리 객체와 간련 붙일 수 있었던 속성인 「조작 속성」의 개념을 가지는 것도 있습니다. 조작 속성의 1 예는, 객체의 액세스 제어 리스트입니다.
getAttributes() 및 search() 메소드로, 돌려주는 속성의 리스트로서 null 를 제공하는 것에 의해, 요구한 객체에 관련지을 수 있었던 속성을 모두 돌려주도록(듯이) 지정할 수 있습니다. 반환되는 속성에는 조작 속성은 포함되지 않습니다. 조작 속성을 검색하기 위해서는, 조작 속성에 명시적으로 이름을 붙일 필요가 있습니다.
어떤 종류의 메소드에서는, 이름이 문맥을 해석 처리하고 있을 필요가 있습니다 (예를 들어, 단일 레벨의 문맥을 검색하는 경우). 이러한 메소드의 문서에서는, 「이름 첨부 문맥」으로 이름 파라미터를 설명합니다. 이러한 메소드에 대해서는, 지정된 객체가 DirContext 가 아닌 경우,NotContextException
가 throw 됩니다. 이러한 메소드 이외는, 「지정된 객체」가 DirContext 일 필요는 없습니다.
Attributes,SearchControls, 또는 파라미터로서 메소드에 인도해지는 배열 객체는, 서비스 프로바이더에서는 변경되지 않습니다. 서비스 프로바이더에서는, 메소드의 결과의 열거, 및 생성된 참조의 처리를 포함한 오퍼레이션의 사이에, 객체에의 참조가 보관 유지됩니다. 호출측은, 이전으로 객체를 변경할 수 없습니다. 메소드에 의해 반환되는 Attributes 객체는, 호출측이 소유합니다. 나중에 호출해 옆이 객체를 변경하는 일도 있습니다만, 서비스 프로바이더는 변경하지 않습니다.
이 인터페이스의 모든 메소드는, NamingException 또는 그 서브 클래스의 어떤 것에서도 throw 할 수 있습니다. 각 예외의 자세한 것은, NamingException 및 그 서브 클래스를 참조해 주세요.
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 |
필드의 상세 |
---|
static final int ADD_ATTRIBUTE
속성이 존재하지 않는 경우, 속성을 작성합니다. 완성된 속성은, 지정된 값세트와 이전의 값세트의 화집합을 가집니다. 속성이 적어도 1 개의 값을 필요로 하는 경우에 값없이 속성을 추가하면(자),InvalidAttributeValueException
가 throw 됩니다. 그 속성이 벌써 존재하는 단일치 속성에 대해서는,AttributeInUseException
가 throw 됩니다. 단일치 속성에 복수의 값을 추가하려고 하면(자),InvalidAttributeValueException
가 throw 됩니다.
이 정수의 값은 1 입니다.
ModificationItem
,
modifyAttributes(javax.naming.Name, int, javax.naming.directory.Attributes)
,
정수 필드치 static final int REPLACE_ATTRIBUTE
속성이 벌써 존재하는 경우, 기존의 모든 값을 새롭게 지정된 값에 옮겨놓습니다. 속성이 존재하지 않는 경우는, 속성을 작성합니다. 값이 지정되어 있지 않은 경우, 속성의 값을 모두 삭제합니다. 속성이 적어도 1 개의 값을 필요로 하는 경우, 마지막 값을 삭제하면(자) 속성이 삭제됩니다. 단일치 속성에 복수의 값을 추가하려고 하면(자),InvalidAttributeValueException
가 throw 됩니다.
이 정수의 값은 2 입니다.
ModificationItem
,
modifyAttributes(javax.naming.Name, int, javax.naming.directory.Attributes)
,
정수 필드치 static final int REMOVE_ATTRIBUTE
이것에 의해, 속성에는, 이전의 값세트와 지정된 값세트와의 사이에 세트의 상위가 생깁니다. 값이 지정되어 있지 않은 경우, 속성 전체를 삭제합니다. 속성이 존재하지 않는 경우, 또는 지정된 값세트의 일부 또는 전부가 존재하지 않는 경우는, 존재하지 않는 것이 무시되어 조작이 완료하든가, 혹은 존재하지 않는 것을 나타내는 NamingException 가 throw 됩니다. 속성이 적어도 1 개의 값을 필요로 하는 경우, 마지막 값을 삭제하면(자) 속성이 삭제됩니다.
이 정수의 값은 3 입니다.
ModificationItem
,
modifyAttributes(javax.naming.Name, int, javax.naming.directory.Attributes)
,
정수 필드치 메소드의 상세 |
---|
Attributes getAttributes(Name name) throws NamingException
name
- 속성의 취득원의 객체의 이름
name
에 관련지을 수 있었던 속성세트.
이름에 속성이 없는 경우, 빈 상태(empty)의 속성 세트를 돌려주어, null 가 될 것은 없다
NamingException
- 네이밍 예외가 발생했을 경우getAttributes(String)
,
getAttributes(Name, String[])
Attributes getAttributes(String name) throws NamingException
getAttributes(Name)
를 참조해 주세요.
name
- 속성의 취득원의 객체의 이름
name
에 관련지을 수 있었던 속성세트
NamingException
- 네이밍 예외가 발생했을 경우Attributes getAttributes(Name name, String [] attrIds) throws NamingException
지정된 속성을 객체가 가지고 있지 않은 경우, 디렉토리는 존재하지 않는 속성을 무시해, 객체가 가지고 있는 요구된 속성을 돌려줍니다.
디렉토리는 요구된 이상의 수의 속성을 돌려주는 일이 있습니다 (클래스 설명의 Attribute Type Names 참조)가, 무관계한 임의의 속성을 돌려줄 것은 없습니다.
클래스의 설명의 Operational Attributes 도 참조해 주세요.
name
- 속성의 취득원의 객체의 이름attrIds
- 취득하는 속성의 식별자
null 는 모든 속성이 취득되는 것을 나타낸다
빈 상태(empty)의 배열은 아무것도 취득되지 않는 것을 나타낸다
NamingException
- 네이밍 예외가 발생했을 경우Attributes getAttributes(String name, String [] attrIds) throws NamingException
getAttributes(Name, String[])
를 참조해 주세요.
name
- 속성의 취득원의 객체의 이름attrIds
- 취득하는 속성의 식별자.
null 는 모든 속성이 취득되는 것을 나타낸다.
빈 상태(empty)의 배열은 아무것도 취득되지 않는 것을 나타낸다
NamingException
- 네이밍 예외가 발생했을 경우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[])
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
- 네이밍 예외가 발생했을 경우void modifyAttributes(Name name, ModificationItem [] mods) throws NamingException
name
- 속성이 변경되는 객체의 이름mods
- 실행되는 변경의 순서.
null 는 불가
AttributeModificationException
- 변경을 완료할 수 없는 경우
NamingException
- 네이밍 예외가 발생했을 경우modifyAttributes(Name, int, Attributes)
,
ModificationItem
void modifyAttributes(String name, ModificationItem [] mods) throws NamingException
modifyAttributes(Name, ModificationItem[])
를 참조해 주세요.
name
- 속성이 변경되는 객체의 이름mods
- 실행되는 변경의 순서.
null 는 불가
AttributeModificationException
- 변경을 완료할 수 없는 경우
NamingException
- 네이밍 예외가 발생했을 경우void bind(Name name, Object obj, Attributes attrs) throws NamingException
name
- 빈 상태(empty)이 아닌 바인드 되는 이름obj
- null 의 가능성이 있는 바인드 되는 객체attrs
- 바인딩에 관련짓는 객체
NameAlreadyBoundException
- 이름이 벌써 바인드 되고 있는 경우
InvalidAttributesException
- 바인딩에 「필수」의 속성이 제공되어 있지 않은 경우
NamingException
- 네이밍 예외가 발생했을 경우Context.bind(Name, Object)
,
rebind(Name, Object, Attributes)
void bind(String name, Object obj, Attributes attrs) throws NamingException
bind(Name, Object, Attributes)
를 참조해 주세요.
name
- 빈 상태(empty)이 아닌 바인드 되는 이름obj
- null 의 가능성이 있는 바인드 되는 객체attrs
- 바인딩에 관련짓는 객체
NameAlreadyBoundException
- 이름이 벌써 바인드 되고 있는 경우
InvalidAttributesException
- 바인딩에 「필수」의 속성이 제공되어 있지 않은 경우
NamingException
- 네이밍 예외가 발생했을 경우void rebind(Name name, Object obj, Attributes attrs) throws NamingException
name
- 빈 상태(empty)이 아닌 바인드 되는 이름obj
- null 의 가능성이 있는 바인드 되는 객체attrs
- 바인딩에 관련짓는 객체
InvalidAttributesException
- 바인딩에 「필수」의 속성이 제공되어 있지 않은 경우
NamingException
- 네이밍 예외가 발생했을 경우Context.bind(Name, Object)
,
bind(Name, Object, Attributes)
void rebind(String name, Object obj, Attributes attrs) throws NamingException
rebind(Name, Object, Attributes)
를 참조해 주세요.
name
- 빈 상태(empty)이 아닌 바인드 되는 이름obj
- null 의 가능성이 있는 바인드 되는 객체attrs
- 바인딩에 관련짓는 객체
InvalidAttributesException
- 바인딩에 「필수」의 속성이 제공되어 있지 않은 경우
NamingException
- 네이밍 예외가 발생했을 경우DirContext createSubcontext(Name name, Attributes attrs) throws NamingException
name
- 빈 상태(empty)이 아닌 작성되는 문맥의 이름attrs
- 새롭게 작성된 문맥에 관련짓는 객체
NameAlreadyBoundException
- 이름이 벌써 바인드 되고 있는 경우
InvalidAttributesException
- 작성에 필요한 필수 속성 attrs
가 일부 밖에 포함되지 않은 경우
NamingException
- 네이밍 예외가 발생했을 경우Context.createSubcontext(Name)
DirContext createSubcontext(String name, Attributes attrs) throws NamingException
createSubcontext(Name, Attributes)
를 참조해 주세요.
name
- 빈 상태(empty)이 아닌 작성되는 문맥의 이름attrs
- 새롭게 작성된 문맥에 관련짓는 객체
NameAlreadyBoundException
- 이름이 벌써 바인드 되고 있는 경우
InvalidAttributesException
- 작성에 필요한 필수 속성 attrs
가 일부 밖에 포함되지 않은 경우
NamingException
- 네이밍 예외가 발생했을 경우DirContext getSchema(Name name) throws NamingException
이 메소드는, 지정된 객체에 적용할 수 있는 schema 정보 트리의 루트를 돌려줍니다. 지정된 객체 (또는 디렉토리 전체)의 몇개인가가, 같은 schema를 공유하는 경우가 있습니다.
schema 트리의 구조와 내용, schema 트리의 내용의 변경 허가, 이러한 변경의 디렉토리에의 영향등의 문제는, 기본이 되는 디렉토리에 의해 다릅니다.
name
- schema의 취득원객체의 이름
OperationNotSupportedException
- schema가 지원되어 있지 않은 경우
NamingException
- 네이밍 예외가 발생했을 경우DirContext getSchema(String name) throws NamingException
getSchema(Name)
를 참조해 주세요.
name
- schema의 취득원객체의 이름
OperationNotSupportedException
- schema가 지원되어 있지 않은 경우
NamingException
- 네이밍 예외가 발생했을 경우DirContext getSchemaClassDefinition(Name name) throws NamingException
디렉토리 schema의 정보 카테고리의 1 개에 「클래스 정의」가 있습니다. 「객체 클래스」의 정의는, 객체의 「형태」, 및 그 객체가 가질 필요가 있는 속성과 가질 수 있는 속성 (필수와 임의)을 지정합니다. 여기서 말하는 「객체 클래스」는, Java 적인 의미는 아니고, 디렉토리적인 의미로 사용되고 있습니다. 예를 들어, 지정된 객체가 「Person」클래스의 디렉토리 객체인 경우,getSchemaClassDefinition() 는, 「Person」의 (디렉토리의) 객체 클래스 정의를 나타내는 DirContext 를 돌려줍니다.
객체 클래스 정의로부터 취득할 수 있는 정보는, 디렉토리 의존입니다.
JNDI 1.2 보다 전은, 이 메소드는 지정된 객체의 클래스 정의를 나타내는 단일의 schema 객체를 돌려주고 있었습니다. JNDI 1.2 로부터는, 이 메소드는 지정된 객체의 클래스 정의를 모두 포함한 DirContext 를 돌려줍니다.
name
- 객체 클래스 정의의 취득원객체의 이름
지정된 객체의
OperationNotSupportedException
- schema가 지원되어 있지 않은 경우
NamingException
- 네이밍 예외가 발생했을 경우DirContext getSchemaClassDefinition(String name) throws NamingException
getSchemaClassDefinition(Name)
를 참조해 주세요.
name
- 객체 클래스 정의의 취득원객체의 이름
지정된 객체의
OperationNotSupportedException
- schema가 지원되어 있지 않은 경우
NamingException
- 네이밍 예외가 발생했을 경우NamingEnumeration <SearchResult > search(Name name, Attributes matchingAttributes, String [] attributesToReturn) throws NamingException
SearchControls
설정을 사용해 행해집니다.
객체를 선택하기 위해서는,matchingAttributes
의 각 속성이 객체의 속성의 어느쪽이든일치할 필요가 있습니다. matchingAttributes
가 빈 상태(empty) 또는 null 의 경우, 타겟 문맥의 모든 객체가 돌려주어집니다.
matchingAttributes
의 속성 A1 으로 객체의 속성 A2 가 같은 식별자를 가지고 있어A1 의 각 치가 A2 의 값의 어느 쪽인가에 동일한 경우,A1 은 A2 에 일치한다고 보입니다. 이것은, 값의 순서는 중요하지 않고, 또 A2 가 A1 에 없는 「여분의」값을 포함하고 있어도 비교에는 영향이 없는 것을 의미합니다. 게다가A1 이 값을 가지고 있지 않은 경우, 일치의 테스트는, 같은 식별자를 가지는 속성 A2 가 존재할지 어떨지를 조사하는 것과 같은 뜻이 됩니다.
속성치를 비교하는데 사용되는 「동등」의 상세한 정의는, 기본이 되는 디렉토리 서비스에 의해 정의됩니다. 정의에는, 예를 들어 Object.equals
메소드를 사용하는 경우도 있으면, schema를 사용해 다른 동등 조작을 지정하는 경우도 있습니다. 동등 이외의 조작에 근거하는 매칭 (부분 캐릭터 라인의 비교등)에는, 필터 인수를 취하는 search
메소드의 버젼을 사용합니다.
이 DirContext 로 변경을 했을 경우, 변경전의 이 메소드에 대한 호출에 의해 반환된 열거의 결과는, 정의되고 있지 않습니다.
지정된 속성을 객체가 가지고 있지 않은 경우, 디렉토리는 존재하지 않는 속성을 무시해, 객체가 가지고 있는 요구된 속성을 돌려줍니다.
디렉토리는 요구된 이상의 수의 속성을 돌려주는 일이 있습니다 (클래스 설명의 Attribute Type Names 참조)가, 무관계한 임의의 속성을 돌려줄 것은 없습니다.
클래스의 설명의 Operational Attributes 도 참조해 주세요.
name
- 검색하는 문맥의 이름matchingAttributes
- 검색하는 속성. 빈 상태(empty) 또는 null 의 경우,
타겟 문맥의 모든 객체가 반환되는attributesToReturn
- 돌려주는 속성. null 는
null 는 모든 속성이 반환되는 것을 나타낸다.
빈 상태(empty)의 배열은 아무것도 돌려주어지지 않은 것을 나타낸다
attributesToReturn
에 의해 식별된 속성, 및 name
에 의해 이름이 붙여진 문맥에 관련해 이름이 붙여졌다
해당 객체의 이름을 포함한다
NamingException
- 네이밍 예외가 발생했을 경우SearchControls
,
SearchResult
,
search(Name, String, Object[], SearchControls)
NamingEnumeration <SearchResult > search(String name, Attributes matchingAttributes, String [] attributesToReturn) throws NamingException
search(Name, Attributes, String[])
를 참조해 주세요.
name
- 검색하는 문맥의 이름matchingAttributes
- 검색하는 속성attributesToReturn
- 돌려주는 속성
NamingException
- 네이밍 예외가 발생했을 경우NamingEnumeration <SearchResult > search(Name name, Attributes matchingAttributes) throws NamingException
search(Name, Attributes, String[])
에 null 를 제공하는 것과 동등합니다. search(Name, Attributes, String[])
를 참조해 주세요.
name
- 검색하는 문맥의 이름matchingAttributes
- 검색하는 속성
NamingException
- 네이밍 예외가 발생했을 경우search(Name, Attributes, String[])
NamingEnumeration <SearchResult > search(String name, Attributes matchingAttributes) throws NamingException
search(Name, Attributes)
를 참조해 주세요.
name
- 검색하는 문맥의 이름matchingAttributes
- 검색하는 속성
NamingException
- 네이밍 예외가 발생했을 경우NamingEnumeration <SearchResult > search(Name name, String filter, SearchControls cons) throws NamingException
filter
의 형식과 해석은, RFC 2254 에 준거하고 있습니다. attr
및 value
에 대한 해석은 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 캐릭터 라인일까의 어느 쪽인지입니다. cons
가 SearchControls.OBJECT_SCOPE
또는 SearchControls.SUBSTREE_SCOPE
의 검색 범위를 지정하는 경우에 생각되도록(듯이), 타겟 문맥이 열거에 포함되는 경우, 그 이름은 빈 상태(empty)의 캐릭터 라인입니다. 일치 객체의 속성을 돌려주도록(듯이) cons 인수가 지정했을 경우,SearchResult 는 그 속성도 포함하는 일이 있습니다.
요구된 속성을 객체가 가지고 있지 않은 경우, 그 존재하지 않는 속성은 무시됩니다. 객체가 가지고 있는 요구된 속성이 돌려주어집니다.
디렉토리는 요구된 이상의 수의 속성을 돌려주는 일이 있습니다 (클래스 설명의 Attribute Type Names 참조)가, 무관계한 임의의 속성을 돌려줄 것은 없습니다.
클래스의 설명의 Operational Attributes 도 참조해 주세요.
name
- 검색하는 문맥 또는 객체의 이름filter
- 검색에 사용하는 필터식. null 는 불가cons
- 검색을 제어하는 검색 제어. null 의 경우,
디폴트의 검색 제어가 사용된다
((new SearchControls()) 와 동등)
InvalidSearchFilterException
- 기본이 되는 디렉토리가,
지정된 검색 필터를 지원하고 있지 않는지, 인식하지 않는 경우
InvalidSearchControlsException
- 검색 제어가
무효인 설정을 포함하고 있는 경우
NamingException
- 네이밍 예외가 발생했을 경우search(Name, String, Object[], SearchControls)
,
SearchControls
,
SearchResult
NamingEnumeration <SearchResult > search(String name, String filter, SearchControls cons) throws NamingException
search(Name, String, SearchControls)
를 참조해 주세요.
name
- 검색하는 문맥 또는 객체의 이름filter
- 검색에 사용하는 필터식. null 는 불가cons
- 검색을 제어하는 검색 제어. null 의 경우,
디폴트의 검색 제어가 사용된다
((new SearchControls()) 와 동등)
InvalidSearchFilterException
- 기본이 되는 디렉토리가,
지정된 검색 필터를 지원하고 있지 않는지, 인식하지 않는 경우
InvalidSearchControlsException
- 검색 제어가
무효인 설정을 포함하고 있는 경우
NamingException
- 네이밍 예외가 발생했을 경우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 캐릭터 라인일까의 어느 쪽인지입니다. cons
가 SearchControls.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()) 와 동등)
ArrayIndexOutOfBoundsException
- filterExpr 가
{i}
식을 포함해,i
가
배열 filterArgs
의 범위외가 되는 경우
InvalidSearchControlsException
- cons 가 무효인 설정을 포함하고 있는 경우
InvalidSearchFilterException
- filterArgs 를 가지는 filterExpr 가 무효인 검색 필터를 나타내고 있는 경우
NamingException
- 네이밍 예외가 발생했을 경우search(Name, Attributes, String[])
,
MessageFormat
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()) 와 동등)
ArrayIndexOutOfBoundsException
- filterExpr 가
{i}
식을 포함해,i
가
배열 filterArgs
의 범위외가 되는 경우
InvalidSearchControlsException
- cons 가 무효인 설정을 포함하고 있는 경우
InvalidSearchFilterException
- filterArgs 를 가지는 filterExpr 가 무효인 검색 필터를 나타내고 있는 경우
NamingException
- 네이밍 예외가 발생했을 경우
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.