-
- LOG.trace("{}: Loading YANG schema source for {}:{}", id, moduleName,
- revision);
-
- final ListenableFuture<YangTextSchemaSource> transformed = Futures.transform(
- rpc.invokeRpc(SchemaPath.create(true, NetconfMessageTransformUtil.GET_SCHEMA_QNAME), getSchemaRequest),
- new ResultToYangSourceTransformer(id, sourceIdentifier, moduleName, revision));
-
- final CheckedFuture<YangTextSchemaSource, SchemaSourceException> checked = Futures.makeChecked(transformed, MAPPER);
-
- return checked;
- }
-
- /**
- * Transform composite node to string schema representation and then to ASTSchemaSource
- */
- private static final class ResultToYangSourceTransformer implements
- Function<DOMRpcResult, YangTextSchemaSource> {
-
- private final RemoteDeviceId id;
- private final SourceIdentifier sourceIdentifier;
- private final String moduleName;
- private final Optional<String> revision;
-
- public ResultToYangSourceTransformer(final RemoteDeviceId id, final SourceIdentifier sourceIdentifier,
- final String moduleName, final Optional<String> revision) {
- this.id = id;
- this.sourceIdentifier = sourceIdentifier;
- this.moduleName = moduleName;
- this.revision = revision;
- }
-
- @Override
- public YangTextSchemaSource apply(final DOMRpcResult input) {
-
- if (input.getErrors().isEmpty()) {
-
- final Optional<String> schemaString = getSchemaFromRpc(id, input.getResult());
-
- Preconditions.checkState(schemaString.isPresent(),
- "%s: Unexpected response to get-schema, schema not present in message for: %s", id, sourceIdentifier);
-
- LOG.debug("{}: YANG Schema successfully retrieved for {}:{}",
- id, moduleName, revision);
- return new NetconfYangTextSchemaSource(id, sourceIdentifier, schemaString);
- }
-
- LOG.warn(
- "{}: YANG schema was not successfully retrieved for {}. Errors: {}",
- id, sourceIdentifier, input.getErrors());
-
- throw new IllegalStateException(String.format(
+ LOG.trace("{}: Loading YANG schema source for {}:{}", id, moduleName, revision);
+ return Futures.transform(
+ rpc.invokeRpc(SchemaPath.create(true, NetconfMessageTransformUtil.GET_SCHEMA_QNAME), getSchemaRequest),
+ input -> {
+ // Transform composite node to string schema representation and then to ASTSchemaSource.
+ if (input.getErrors().isEmpty()) {
+ final Optional<String> schemaString = getSchemaFromRpc(id, input.getResult());
+ checkState(schemaString.isPresent(),
+ "%s: Unexpected response to get-schema, schema not present in message for: %s", id,
+ sourceIdentifier);
+ LOG.debug("{}: YANG Schema successfully retrieved for {}:{}", id, moduleName, revision);
+ return new NetconfYangTextSchemaSource(id, sourceIdentifier, schemaString);
+ }
+
+ LOG.warn("{}: YANG schema was not successfully retrieved for {}. Errors: {}", id, sourceIdentifier,
+ input.getErrors());
+ throw new IllegalStateException(String.format(