ServiceRegistry

ServiceRegistry (서비스 레지스트리)

Image I/O 서비스 타입의 서비스 제공자 인스턴스용 레지스트리입니다. 서비스 제공자는 하나 이상의 카테고리에 저장되며, 각 카테고리는 모든 구성원이 구현해야 하는 클래스·인터페이스(Class 객체로 설명)로 정의됩니다.

출처: Java API Reference

본문

지원되는 카테고리 집합은 표준 Image I/O 서비스 타입으로 제한됩니다: ImageInputStreamSpi, ImageOutputStreamSpi, ImageReaderSpi, ImageTranscoderSpi, ImageWriterSpi. 위 타입 중 하나의 하위 타입이 아닌 제공자를 로드하려 하면 IllegalArgumentException이 발생합니다.

주어진 리프 클래스(getClass()가 반환하는 실제 클래스)의 단일 인스턴스만 등록할 수 있습니다. 새 인스턴스가 등록되면 이전 인스턴스를 대체합니다. 실제로 서비스 제공자 객체는 보통 싱글턴이므로 이 동작이 적절합니다.

registerServiceProvider, deregisterServiceProvider, getServiceProviders, getServiceProviderByClass, setOrdering, contains, getCategories 등으로 제공자 등록·조회·정렬을 관리합니다.

더 알아보기 (Learn more)

Java 공식 API