SSLSessionBindingListener — 세션 바인딩 리스너

SSLSessionBindingListener — 세션 바인딩 리스너

SSLSession에 바인딩되거나 언바인딩되는 시점을 알고 싶어하는 객체가 구현하는 인터페이스예요. SSLSession.putValue(String, Object) 또는 SSLSession.removeValue(String)를 통해 두 이벤트 중 하나가 발생하면, 세션을 식별하는 SSLSessionBindingEvent를 통해 통지받아요. 세션이라는 저장 공간에 값이 추가되거나 제거될 때 그 사실을 감지하고 싶다면 이 인터페이스를 구현하면 돼요.

출처: Java API Reference

본문

public interface SSLSessionBindingListener extends EventListener

이 인터페이스는 java.util.EventListener를 확장해요.

메서드

  • void valueBound(SSLSessionBindingEvent event) — 리스너가 SSLSession에 바인딩되고 있음을 알리기 위해 호출돼요. event는 리스너가 바인딩되는 SSLSession을 식별하는 이벤트예요.
  • void valueUnbound(SSLSessionBindingEvent event) — 리스너가 SSLSession에서 언바인딩되고 있음을 알리기 위해 호출돼요. event는 리스너가 언바인딩되는 SSLSession을 식별하는 이벤트예요.

어떤 흐름으로 동작할까요?

  1. 애플리케이션이 SSLSession.putValue("key", value)를 호출해요.
  2. valueSSLSessionBindingListener를 구현하고 있으면, 그 객체에 valueBound(event)가 호출돼요.
  3. 나중에 SSLSession.removeValue("key")가 호출되면 valueUnbound(event)가 호출돼요.

이런 구조 덕분에 세션에 저장된 값이 언제 들어오고 나가는지 추적할 수 있어요. 예를 들어 세션에 묶인 값의 수명 주기를 관리하거나, 특정 값이 세션에서 벗어날 때 자원을 정리하는 용도로 쓸 수 있어요.

더 알아보기 (Learn more)