Hide CodecContextSupplier
[mdsal.git] / binding / mdsal-binding-dom-codec / src / main / java / org / opendaylight / mdsal / binding / dom / codec / impl / CodecContextSupplier.java
index 1fa8b1688758cd28db8ddc0290edf1eef84a9141..c8eaea1eb78167f5cc2a08b283410b3b0d32124e 100644 (file)
@@ -7,16 +7,14 @@
  */
 package org.opendaylight.mdsal.binding.dom.codec.impl;
 
-import com.google.common.annotations.Beta;
 import org.eclipse.jdt.annotation.NonNullByDefault;
 
 /**
  * Type capture of an entity producing NodeCodecContexts. Implementations are required to perform memoization. This
  * interface does not form API surface and is exposed only for generated code. It can change at any time.
  */
-@Beta
-@FunctionalInterface
 @NonNullByDefault
-public interface CodecContextSupplier {
-    CodecContext get();
+sealed interface CodecContextSupplier permits LazyCodecContextSupplier, ValueNodeCodecContext {
+
+    CodecContext getCodecContext();
 }