-public interface IdentifierNamespace<K, V> {
- /**
- * Returns value associated with supplied identifier.
- *
- * @param identifier Identifier of value
- * @return value or null, if identifier is not present in namespace.
- */
- @Nullable V get(@Nonnull K identifier);
+@NonNullByDefault
+public abstract class IdentifierNamespace<K, V> {
+ protected IdentifierNamespace() {
+ throw new UnsupportedOperationException(getClass() + " should never be instantiated");
+ }