Class SemVerSourceIdentifier

  • All Implemented Interfaces:
    Serializable, Identifier, Immutable, MutationBehaviour<Immutable>

    @Beta
    public final class SemVerSourceIdentifier
    extends SourceIdentifier
    YANG Schema source identifier with specified semantic version.

    Simple transfer object represents identifier of source for YANG schema (module or submodule), which consists of

    Source identifier is designated to be carry only necessary information to look-up YANG model source and to be used by various SchemaSourceProviders.

    Note:On source retrieval layer it is impossible to distinguish between YANG module and/or submodule unless source is present.

    (For further reference see: http://tools.ietf.org/html/rfc6020#section-5.2 and http://tools.ietf.org/html/rfc6022#section-3.1 ).

    See Also:
    Serialized Form
    • Method Detail

      • getSemanticVersion

        public Optional<SemVer> getSemanticVersion()
        Returns semantic version of source if it was specified.
        Returns:
        revision of source.
      • create

        public static @NonNull SemVerSourceIdentifier create​(String moduleName,
                                                             SemVer semVer)
        Creates new YANG Schema semVer source identifier.
        Parameters:
        moduleName - Name of schema
        semVer - semantic version of source
      • create

        public static @NonNull SemVerSourceIdentifier create​(String moduleName,
                                                             Revision revision,
                                                             SemVer semVer)
        Creates new YANG Schema semVer source identifier.
        Parameters:
        moduleName - Name of schema
        revision - Revision of source in format YYYY-mm-dd
        semVer - semantic version of source
      • create

        public static @NonNull SemVerSourceIdentifier create​(String moduleName,
                                                             Optional<Revision> revision,
                                                             SemVer semVer)
        Creates new YANG Schema semVer source identifier.
        Parameters:
        moduleName - Name of schema
        revision - Optional of source revision in format YYYY-mm-dd. If not present, default value will be used.
        semVer - semantic version of source