Visibility
Visibility (표시 가능성 인터페이스)
어떤 상황에서는 빈이 GUI가 없는 서버에서 실행될 수 있어요. 이 인터페이스는 빈에게 GUI가 절대적으로 필요한지 질의하고, 빈에게 GUI를 사용할 수 있는지 여부를 알려 주기 위해 사용할 수 있어요. 이 인터페이스는 전문 개발자를 위한 것이며, 일반적인 단순 빈에는 필요하지 않아요.
본문
Visibility 인터페이스는 빈이 GUI 없이도 동작할 수 있는지, 아니면 GUI가 반드시 필요한지를 서로 소통하는 데 쓰여요. 헤드리스(디스플레이 없는) 환경에서 빈을 실행할 때, 빈이 GUI 없이도 기능할 수 있다면 이를 활용할 수 있어요.
BeanContext는 이 인터페이스를 통해 중첩된 빈들이 GUI가 필요한지 여부를 알고, 사용 가능한 GUI 여부를 전파할 수 있어요. BeanContext, BeanContextServices가 하위 인터페이스이고, BeanContextServicesSupport, BeanContextSupport가 구현 클래스예요.
주요 메서드는 다음과 같아요.
boolean needsGui()
void dontUseGui()
void okToUseGui()
boolean avoidingGui()
needsGui()— 이 빈이 동작하기 위해 GUI가 필요한지 여부를 반환해요.dontUseGui()— GUI를 사용하지 말라고 빈에게 알려 줘요.okToUseGui()— GUI를 사용해도 좋다고 빈에게 알려 줘요.avoidingGui()— 빈이 GUI를 회피하고 있는지 여부를 반환해요.