Interface YangNamespaceContext
-
- All Superinterfaces:
Immutable
,MutationBehaviour<Immutable>
,Serializable
- All Known Implementing Classes:
BiMapYangNamespaceContext
,ModuleNameNamespaceContext
@Beta public interface YangNamespaceContext extends Immutable, Serializable
Interface for mapping betweenString
prefixes andQNameModule
namespaces. The conceptual model matches prefix mapping inside a YANGmodule
as defined through the use ofprefix
andimport
statements and detailed in RFC7950 Section 7.1.4.Each namespace context has a set of prefix/namespace mappings. A namespace can be bound to multiple prefixes at the same time.
- Author:
- Robert Varga
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default @NonNull QName
createQName(String prefix, String localName)
Create aQName
by resolving a prefix against currently-bound prefixes and combining it with specified local name.@NonNull Optional<QNameModule>
findNamespaceForPrefix(String prefix)
Return QNameModule to which a particular prefix is bound.@NonNull Optional<String>
findPrefixForNamespace(QNameModule namespace)
Return a prefix to which a particular QNameModule is bound.
-
-
-
Method Detail
-
findNamespaceForPrefix
@NonNull Optional<QNameModule> findNamespaceForPrefix(String prefix)
Return QNameModule to which a particular prefix is bound.- Parameters:
prefix
- Prefix to look up- Returns:
- QNameModule bound to specified prefix
- Throws:
NullPointerException
- ifprefix
is null
-
findPrefixForNamespace
@NonNull Optional<String> findPrefixForNamespace(QNameModule namespace)
Return a prefix to which a particular QNameModule is bound. If a namespace is bound to multiple prefixes, it is left unspecified which of those prefixes is returned.- Parameters:
namespace
- QNameModule to look up- Returns:
- Prefix to which the QNameModule is bound
- Throws:
NullPointerException
- ifmodule
is null
-
createQName
default @NonNull QName createQName(String prefix, String localName)
Create aQName
by resolving a prefix against currently-bound prefixes and combining it with specified local name.- Parameters:
prefix
- Namespace prefixlocalName
- QName local name- Returns:
- A QName.
- Throws:
NullPointerException
- if any argument is nullIllegalArgumentException
- iflocalName
does not conform to local name requirements or if the prefix is not bound in this context.
-
-