Interface SchemaSourceProvider<T extends SchemaSourceRepresentation>
-
- Type Parameters:
T
- Schema source representation type provided by this implementation
- All Known Implementing Classes:
AbstractSchemaSourceCache
,FilesystemSchemaSourceCache
,InMemorySchemaSourceCache
,SchemaSourceTransformer
,TextToASTTransformer
,YangTextSchemaContextResolver
,YinTextToDomTransformer
@Beta public interface SchemaSourceProvider<T extends SchemaSourceRepresentation>
Schema source provider implementations take care of resolving aSourceIdentifier
into a particular representation of the schema source. Examples of resolution include fetching the source from an external source, opening a classpath resource, or similar.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description ListenableFuture<? extends T>
getSource(SourceIdentifier sourceIdentifier)
Returns a representation a for supplied YANG source identifier.
-
-
-
Method Detail
-
getSource
ListenableFuture<? extends T> getSource(SourceIdentifier sourceIdentifier)
Returns a representation a for supplied YANG source identifier. The resolution criteria are as follows:- If the source identifier specifies a revision, this method returns either
a representation of that particular revision or throw
MissingSchemaSourceException
. - If the source identifier does not specify a revision, this method returns
the newest available revision, or throws
MissingSchemaSourceException
.
In either case the returned representation is required to report a non-null revision in the
SourceIdentifier
returned fromSchemaSourceRepresentation.getIdentifier()
.Implementations are not required to provide constant behavior in time, notably this different invocation of this method may produce different results.
- Parameters:
sourceIdentifier
- source identifier- Returns:
- future source representation, if supplied YANG module is available
- If the source identifier specifies a revision, this method returns either
a representation of that particular revision or throw
-
-