Class LinkRef

Class LinkRef

public class LinkRef
extends Reference

내용이 링크 이름(link name)이라는 이름인 Reference를 나타내는 클래스예요. 그 이름은 컨텍스트의 원자적 이름(atomic name)에 바인딩돼요. 그 이름은 URL이거나, 초기 컨텍스트에 상대적으로 해석될 이름이거나, 이름의 첫 문자가 "."이면 링크가 바인딩된 컨텍스트에 상대적인 이름이에요. 컨텍스트 연산에서 이름의 일반 해석은 항상 링크를 따라가요. 링크 이름 자체의 해석은 해석이 다른 링크들을 통과하게 만들 수 있어요. 이것은 해석이 정상적으로 종료되지 못할 링크 순환(cycle)의 가능성을 낳아요. 그런 종료되지 않는 해석을 피하는 간단한 수단으로, 서비스 공급자는 호출자가 호출하는 어떤 단일 연산에 포함될 수 있는 링크 수에 대한 한계를 정의할 수 있어요. LinkRef는 단일 StringRefAddr를 포함해요. 그 타입은 "LinkAddress"이고 내용은 링크 이름이에요. Reference의 클래스 이름 필드는 이(LinkRef) 클래스의 것이에요. LinkRef는 일반 Context.bind()/rebind()DirContext.bind()/rebind()로 이름에 바인딩돼요. 종단 원자적 이름이 링크에 바인딩되어 있으면 Context.lookupLink()가 링크 자체를 가져오는 데 사용돼요. 많은 네이밍 시스템이 네이밍 시스템 자체 안에서 사용될 수 있는 원어적(네이티브) 링크 개념을 지원해요. JNDI는 그런 네이티브 링크와 JNDI 링크 사이에 어떤 관계가 있는지 명시하지 않아요. LinkRef 인스턴스는 여러 스레드의 동시 접근에 대해 동기화되지 않아요. LinkRef 인스턴스에 동시에 접근해야 하는 스레드들은 서로 동기화하고 필요한 잠금을 제공해야 해요.

LinkRef

public LinkRef(Name linkName)

이름에 대한 LinkRef를 생성해요.

  • Parameters: linkName - 이 링크를 만들, null이 아닌 이름

LinkRef

public LinkRef(String linkName)

문자열 이름에 대한 LinkRef를 생성해요.

  • Parameters: linkName - 이 링크를 만들, null이 아닌 이름

getLinkName

public String getLinkName()
                   throws NamingException

이 링크의 이름을 가져와요.

  • Returns: 이 링크의, null이 아닌 이름
  • Throws: MalformedLinkException - 링크 이름을 추출할 수 없을 때