JavaTM Platform
Standard Ed. 6

javax.naming
클래스 Reference

java.lang.Object 
  상위를 확장 javax.naming.Reference
모든 구현된 인터페이스:
Serializable , Cloneable
직계의 기존의 서브 클래스:
LinkRef


public class Reference
extends Object
implements Cloneable , Serializable

이 클래스는, 네이밍 및 디렉토리 시스템의 외부에서 검출되는 객체에 대한 참조를 나타냅니다.

Reference 는, 네이밍 및 디렉토리 시스템에 직접 바인드되어 있지 않은 객체에 관한 주소 정보의 기록 방법을 제공합니다.

Reference 는, 참조 대상의 객체에 관한 주소의 순서 붙일 수 있었던 리스트와 클래스 정보로 구성됩니다. 리스트내의 각 주소는, 같은 개념상의 객체의 통신단점을 식별합니다. 「통신단점」이란, 객체에의 접속 방법을 나타내는 정보입니다. 이것은, 네트워크 주소, 로컬 머신상의 메모리내의 위치, 같은 머신상의 다른 프로세스 등에 됩니다. 리스트내의 주소의 순서는, 참조를 해석하는 객체 팩토리에서는 중요하게 되는 경우가 있습니다.

복제, 객체가 복수의 통신 기구에 대해서 인터페이스를 제공하는 등의 다양한 이유로부터, 복수의 주소가 발생하는 경우가 있습니다. 주소는 인덱스화 되어 제로로부터 시작됩니다.

Reference 에는, 이 Reference 의 참조처 객체의 인스턴스를 작성하는 경우에 도움이 되는 정보도 포함됩니다. 이 정보에는, 그 객체의 클래스명, 및 객체를 작성할 경우에 사용되는 팩토리의 클래스명으로 위치가 나타납니다. 클래스 팩토리 위치는, 팩토리를 로드하는데 사용되는 클래스 패스를 나타내는, 공백에서 단락지어진 URL 의 리스트입니다. 팩토리 클래스 (또는 팩토리 클래스가 의존하는 클래스나 자원)를 로드할 필요가 있을 때는, 클래스의 로드를 시도하기 위해서(때문에) 각 URL 가 사용됩니다.

Reference 인스턴스는, 병행 액세스에 대해서 복수의 thread에서는 동기화 되지 않습니다. 단일의 Reference 에 동시에 액세스 할 필요가 있는 thread는, 그 자체로 동기화 되어 필요한 락을 제공할 필요가 있습니다.

도입된 버젼:
1.3
관련 항목:
RefAddr , StringRefAddr , BinaryRefAddr , 직렬화 된 형식

필드의 개요
protected  Vector <RefAddr > addrs
          이 Reference 에 포함되는 주소를 포함합니다.
protected  String classFactory
          팩토리 클래스의 이름을 포함합니다.
protected  String classFactoryLocation
          팩토리 클래스의 위치를 포함합니다.
protected  String className
          이 Reference 의 참조처 객체의 클래스의 완전한 이름(FQN)을 포함합니다.
 
생성자 의 개요
Reference (String  className)
          클래스명이 「className」의 객체에 대한 새로운 참조를 구축합니다.
Reference (String  className, RefAddr  addr)
          클래스명이 「className」의 객체에 대해서 새로운 참조를 구축합니다.
Reference (String  className, RefAddr  addr, String  factory, String  factoryLocation)
          클래스명이 「className」의 객체, 객체의 팩토리의 클래스명과 위치, 및 객체의 주소에 대한 새로운 참조를 구축합니다.
Reference (String  className, String  factory, String  factoryLocation)
          클래스명이 「className」의 객체, 및 객체의 팩토리의 클래스명으로 위치에 대해서 새로운 참조를 구축합니다.
 
메소드의 개요
 void add (int posn, RefAddr  addr)
          인덱스의 주소 리스트에 주소를 추가합니다.
 void add (RefAddr  addr)
          주소 리스트의 말미에 주소를 추가합니다.
 void clear ()
          이 참조로부터 모든 주소를 삭제합니다.
 Object clone ()
          주소의 클래스명 리스트, 클래스 팩토리명 및 클래스 팩토리 위치를 사용해, 이 참조의 카피를 작성합니다.
 boolean equals (Object  obj)
          obj 가 이 참조와 (같은 순서의) 같은 주소를 가지는 참조일지 어떨지를 판별합니다.
 RefAddr get (int posn)
          인덱스에 있는 주소를 꺼냅니다.
 RefAddr get (String  addrType)
          주소형 「addrType」를 가지는 최초의 주소를 꺼냅니다.
 Enumeration <RefAddr > getAll ()
          이 참조내의 주소의 열거를 꺼냅니다.
 String getClassName ()
          이 참조의 참조처 객체의 클래스명을 꺼냅니다.
 String getFactoryClassLocation ()
          이 참조의 참조처 객체의 팩토리의 위치를 꺼냅니다.
 String getFactoryClassName ()
          이 참조의 참조처 객체의 팩토리의 클래스명을 꺼냅니다.
 int hashCode ()
          이 참조의 해시 코드를 계산합니다.
 Object remove (int posn)
          주소의 리스트로부터 인덱스에 있는 주소를 삭제합니다.
 int size ()
          이 참조내의 주소수를 꺼냅니다.
 String toString ()
          이 참조의 캐릭터 라인 표기를 생성합니다.
 
클래스 java.lang. Object 로부터 상속된 메소드
finalize , getClass , notify , notifyAll , wait , wait , wait
 

필드의 상세

className

protected String  className
이 Reference 의 참조처 객체의 클래스의 완전한 이름(FQN)을 포함합니다.

관련 항목:
Class.getName()

addrs

protected Vector <RefAddr > addrs
이 Reference 에 포함되는 주소를 포함합니다. 생성자 으로 초기화됩니다.


classFactory

protected String  classFactory
팩토리 클래스의 이름을 포함합니다. 이 팩토리 클래스가 Reference 의 참조처 객체의 인스턴스를 작성합니다. null 에 초기화됩니다.


classFactoryLocation

protected String  classFactoryLocation
팩토리 클래스의 위치를 포함합니다. null 에 초기화됩니다.

생성자 의 상세

Reference

public Reference(String  className)
클래스명이 「className」의 객체에 대한 새로운 참조를 구축합니다. 클래스 팩토리 및 클래스 팩토리 위치는 null 로 설정됩니다. 새롭게 작성된 참조에는, 제로 주소가 포함됩니다.

파라미터:
className - 이 참조의 참조처 객체의 null 이외의 클래스명

Reference

public Reference(String  className,
                 RefAddr  addr)
클래스명이 「className」의 객체에 대해서 새로운 참조를 구축합니다. 클래스 팩토리 및 클래스 팩토리 위치는 null 로 설정됩니다.

파라미터:
className - 이 참조의 참조처 객체의 null 이외의 클래스명
addr - 객체의 null 이외의 주소

Reference

public Reference(String  className,
                 String  factory,
                 String  factoryLocation)
클래스명이 「className」의 객체, 및 객체의 팩토리의 클래스명으로 위치에 대해서 새로운 참조를 구축합니다.

파라미터:
className - 이 참조의 참조처 객체의 null 이외의 클래스명
factory - null 의 가능성이 있는, 객체의 팩토리의 클래스명
factoryLocation - null 의 가능성이 있는, 팩토리를 로드하는 위치 (URL 등)
관련 항목:
ObjectFactory , NamingManager.getObjectInstance(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable)

Reference

public Reference(String  className,
                 RefAddr  addr,
                 String  factory,
                 String  factoryLocation)
클래스명이 「className」의 객체, 객체의 팩토리의 클래스명과 위치, 및 객체의 주소에 대한 새로운 참조를 구축합니다.

파라미터:
className - 이 참조의 참조처 객체의 null 이외의 클래스명
factory - null 의 가능성이 있는, 객체의 팩토리의 클래스명
factoryLocation - null 의 가능성이 있는, 팩토리를 로드하는 위치 (URL 등)
addr - 객체의 null 이외의 주소
관련 항목:
ObjectFactory , NamingManager.getObjectInstance(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable)
메소드의 상세

getClassName

public String  getClassName()
이 참조의 참조처 객체의 클래스명을 꺼냅니다.

반환값:
객체의 null 이외의 완전 지정된 클래스명 ( 「java.lang.String」 등)

getFactoryClassName

public String  getFactoryClassName()
이 참조의 참조처 객체의 팩토리의 클래스명을 꺼냅니다.

반환값:
null 의 가능성이 있는, 팩토리의 완전 지정된 클래스명 ( 「java.lang.String」 등)

getFactoryClassLocation

public String  getFactoryClassLocation()
이 참조의 참조처 객체의 팩토리의 위치를 꺼냅니다. 팩토리의 위치가 코드 베이스의 경우는, 공백에서 단락지어져 순서 붙일 수 있었던 URL 의 리스트가 되어, 팩토리 클래스 정의가 로드 되는 위치가 나타납니다.

반환값:
null 의 가능성이 있는, 팩토리의 클래스에 로드하기 위한 위치를 포함한 캐릭터 라인

get

public RefAddr  get(String  addrType)
주소형 「addrType」를 가지는 최초의 주소를 꺼냅니다. String.compareTo()를 사용해, 주소형이 동일한지 어떤지를 테스트합니다.

파라미터:
addrType - 주소의 검색 대상이 되는 null 이외의 주소형
반환값:
주소형이 「addrType」의 이 참조내의 주소. 그러한 주소가 존재하지 않는 경우는 null

get

public RefAddr  get(int posn)
인덱스에 있는 주소를 꺼냅니다.

파라미터:
posn - 꺼내는 주소의 인덱스
반환값:
0 으로부터 시작되는 인덱스의 주소. 이 주소는, 범위 [0, getAddressCount()] 내로 할 필요가 있다
예외:
ArrayIndexOutOfBoundsException - 위치가 지정한 범위에 없는 경우

getAll

public Enumeration <RefAddr > getAll()
이 참조내의 주소의 열거를 꺼냅니다. 주소를 추가, 변경 또는 이 참조로부터 삭제해도, 이 열거에 대한 효과는 보증되지 않습니다.

반환값:
이 참조내의 주소 (RefAddr)의 null 이외의 열거 이 참조에 제로 주소가 포함되는 경우는, 제로 요소가 있는 열거가 반환된다

size

public int size()
이 참조내의 주소수를 꺼냅니다.

반환값:
이 참조내의 부가 아닌 주소수

add

public void add(RefAddr  addr)
주소 리스트의 말미에 주소를 추가합니다.

파라미터:
addr - 추가하는 null 이외의 주소

add

public void add(int posn,
                RefAddr  addr)
인덱스의 주소 리스트에 주소를 추가합니다. 인덱스 이후의 모든 주소는, 리스트 위에 (인덱스 0 과는 역의 방향으로) 1 개씩 쉬프트 됩니다.

파라미터:
posn - addr 를 삽입하는 리스트의 0 으로부터 시작되는 인덱스
addr - 추가하는 null 이외의 주소
예외:
ArrayIndexOutOfBoundsException - 위치가 지정한 범위에 없는 경우

remove

public Object  remove(int posn)
주소의 리스트로부터 인덱스에 있는 주소를 삭제합니다. 위치를 넘은 인덱스에 있는 모든 주소는, 리스트아래 (인덱스 0 방향에)에 1 개씩 쉬프트 됩니다.

파라미터:
posn - 삭제하는 주소내의 0 으로부터 시작되는 색인
반환값:
삭제되는 주소
예외:
ArrayIndexOutOfBoundsException - 위치가 지정한 범위에 없는 경우

clear

public void clear()
이 참조로부터 모든 주소를 삭제합니다.


equals

public boolean equals(Object  obj)
obj 가 이 참조와 (같은 순서의) 같은 주소를 가지는 참조일지 어떨지를 판별합니다. 주소는 RefAddr.equals()를 사용해 체크됩니다. 같은 주소 이외에, Reference 에서는 이 참조와 같은 클래스명을 가지는 것이 필요합니다. 클래스 팩토리 및 클래스 팩토리 위치는 체크되지 않습니다. obj 가 null 또는 Reference 의 인스턴스 이외의 경우는, null 가 돌려주어집니다.

오버라이드(override):
클래스 Object 내의 equals
파라미터:
obj - null 의 가능성이 있는 체크 대상 객체
반환값:
obj 가 이 참조와 동일한 경우는 true, 그렇지 않은 경우는 false
관련 항목:
Object.hashCode() , Hashtable

hashCode

public int hashCode()
이 참조의 해시 코드를 계산합니다. 해시 코드란, 그 주소의 해시 코드의 합계입니다.

오버라이드(override):
클래스 Object 내의 hashCode
반환값:
int 로서의 이 참조의 해시 코드
관련 항목:
Object.equals(java.lang.Object) , Hashtable

toString

public String  toString()
이 참조의 캐릭터 라인 표기를 생성합니다. 캐릭터 라인은 이 참조의 참조처 클래스명, 및 그 각 주소의 캐릭터 라인 표기로 구성됩니다. 이 표기는, 표시되는 것만으로, 구문 분석에는 사용되지 않습니다.

오버라이드(override):
클래스 Object 내의 toString
반환값:
이 참조의 null 이외의 캐릭터 라인 표현

clone

public Object  clone()
주소의 클래스명 리스트, 클래스 팩토리명 및 클래스 팩토리 위치를 사용해, 이 참조의 카피를 작성합니다. 새롭게 작성한 카피로 변경을 더해도 이 Reference 에는 영향 없습니다. 또 역의 경우도 같습니다.

오버라이드(override):
클래스 Object 내의 clone
반환값:
이 인스턴스의 복제
관련 항목:
Cloneable

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