Registry
Registry (원격 객체 레지스트리)
임의의 문자열 이름으로 바인딩된 원격 객체 참조를 저장·검색하는 메서드를 제공하는 단순한 원격 객체 레지스트리에 대한 원격 인터페이스입니다.
본문
Remote를 확장합니다. bind, unbind, rebind 메서드는 레지스트리의 이름 바인딩을 변경하는 데 사용되고, lookup과 list 메서드는 현재 이름 바인딩을 조회하는 데 사용됩니다.
일반적인 용법에서 Registry는 RMI 클라이언트 부트스트래핑을 가능하게 합니다. 클라이언트가 원격 객체에 대한 초기 참조를 얻는 간단한 수단을 제공합니다. 따라서 레지스트리의 원격 객체 구현은 well-known 주소(well-known ObjID와 TCP 포트 번호, 기본 1099)로 익스포트되는 것이 일반적입니다.
LocateRegistry 클래스는 원격 주소의 Registry에 대한 부트스트랩 참조를 구성하는 프로그래밍 API(getRegistry 정적 메서드)와, 현재 VM의 특정 로컬 주소에서 Registry를 생성·익스포트하는 API(createRegistry 정적 메서드)를 제공합니다.
Registry 구현은 메서드 중 일부 또는 전체에 대한 접근을 제한할 수 있습니다(예: 레지스트리 바인딩을 변경하는 메서드를 로컬 호스트에서 발생한 호출로 제한). Registry 메서드가 특정 호출에 대한 접근을 거부하기로 하면 AccessException을 던질 수 있으며, 이는 RemoteException을 확장하기 때문에 원격 클라이언트가 잡을 때 ServerException에 감싸집니다.