ErrorType.PROTOCOL, ErrorTag.OPERATION_NOT_SUPPORTED, ErrorSeverity.ERROR);
}
- if (!getCandidateTransaction().isPresent()) {
+ if (getCandidateTransaction().isEmpty()) {
// Validating empty transaction, just return true
LOG.debug("Validating empty candidate transaction for session {}", netconfSessionIdForReporting);
return;
}
public synchronized boolean commitTransaction() throws DocumentedException {
- if (!getCandidateTransaction().isPresent()) {
+ if (getCandidateTransaction().isEmpty()) {
//making empty commit without prior opened transaction, just return true
LOG.debug("Making commit without open candidate transaction for session {}", netconfSessionIdForReporting);
return true;
public synchronized void abortTransaction() {
LOG.debug("Aborting current candidateTransaction");
final Optional<DOMDataTreeReadWriteTransaction> otx = getCandidateTransaction();
- if (!otx.isPresent()) {
+ if (otx.isEmpty()) {
LOG.warn("discard-changes triggerd on an empty transaction for session: {}", netconfSessionIdForReporting);
return;
}
}
final Optional<XmlElement> urlElement = parent.getOnlyChildElementOptionally(URL_KEY);
- if (!urlElement.isPresent()) {
+ if (urlElement.isEmpty()) {
throw new DocumentedException("Invalid RPC, neither <config> not <url> element is present",
DocumentedException.ErrorType.PROTOCOL,
DocumentedException.ErrorTag.MISSING_ELEMENT,
final String elementName = element.getName();
final Optional<DataSchemaNode> schemaNode = module.findDataChildByName(QName.create(module.getQNameModule(),
element.getName()));
- if (!schemaNode.isPresent()) {
+ if (schemaNode.isEmpty()) {
throw new DocumentedException(
"Unable to find node " + elementName + " with namespace: " + namespace + "in module: "
+ module.toString(),
private static XmlElement getSourceElement(final XmlElement parent) throws DocumentedException {
final Optional<XmlElement> sourceElement = parent.getOnlyChildElementOptionally(SOURCE_KEY);
- if (!sourceElement.isPresent()) {
+ if (sourceElement.isEmpty()) {
throw new DocumentedException("<source> element is missing",
DocumentedException.ErrorType.PROTOCOL,
DocumentedException.ErrorTag.MISSING_ELEMENT,
final URI namespaceURI = createNsUri(namespace);
final Optional<? extends Module> module = getModule(namespaceURI);
- if (!module.isPresent()) {
+ if (module.isEmpty()) {
LOG.debug("Cannot handle rpc: {}, {}", netconfOperationName, namespace);
return HandlingPriority.CANNOT_HANDLE;
}
final URI namespaceURI = createNsUri(netconfOperationNamespace);
final Optional<? extends Module> moduleOptional = getModule(namespaceURI);
- if (!moduleOptional.isPresent()) {
+ if (moduleOptional.isEmpty()) {
throw new DocumentedException("Unable to find module in Schema Context with namespace and name : "
+ namespaceURI + " " + netconfOperationName + schemaContext.getCurrentContext(),
ErrorType.APPLICATION, ErrorTag.BAD_ELEMENT, ErrorSeverity.ERROR);
final Optional<RpcDefinition> rpcDefinitionOptional = getRpcDefinitionFromModule(moduleOptional.get(),
namespaceURI, netconfOperationName);
- if (!rpcDefinitionOptional.isPresent()) {
+ if (rpcDefinitionOptional.isEmpty()) {
throw new DocumentedException(
"Unable to find RpcDefinition with namespace and name : "
+ namespaceURI + " " + netconfOperationName,
for (final QName qualifiedName : keyDefinition) {
final Optional<XmlElement> childElements =
current.getOnlyChildElementOptionally(qualifiedName.getLocalName());
- if (!childElements.isPresent()) {
+ if (childElements.isEmpty()) {
return Collections.emptyMap();
}
final Optional<String> keyValue = childElements.get().getOnlyTextContentOptionally();
throws DocumentedException {
final Optional<YangInstanceIdentifier> dataRootOptional = getDataRootFromFilter(operationElement);
- if (!dataRootOptional.isPresent()) {
+ if (dataRootOptional.isEmpty()) {
return document.createElement(XmlNetconfConstants.DATA_KEY);
}
LogicalDatastoreType.OPERATIONAL, dataRoot).get();
transactionProvider.abortRunningTransaction(rwTx);
- if (!normalizedNodeOptional.isPresent()) {
+ if (normalizedNodeOptional.isEmpty()) {
return document.createElement(XmlNetconfConstants.DATA_KEY);
}
}
final Optional<YangInstanceIdentifier> dataRootOptional = getDataRootFromFilter(operationElement);
- if (!dataRootOptional.isPresent()) {
+ if (dataRootOptional.isEmpty()) {
return document.createElement(XmlNetconfConstants.DATA_KEY);
}
transactionProvider.abortRunningTransaction(rwTx);
}
- if (!normalizedNodeOptional.isPresent()) {
+ if (normalizedNodeOptional.isEmpty()) {
return document.createElement(XmlNetconfConstants.DATA_KEY);
}
// Replay not supported
final Optional<XmlElement> startTime =
operationElement.getOnlyChildElementWithSameNamespaceOptionally("startTime");
- checkArgument(!startTime.isPresent(), "StartTime element not yet supported");
+ checkArgument(startTime.isEmpty(), "StartTime element not yet supported");
// Stop time not supported
final Optional<XmlElement> stopTime =
operationElement.getOnlyChildElementWithSameNamespaceOptionally("stopTime");
- checkArgument(!stopTime.isPresent(), "StopTime element not yet supported");
+ checkArgument(stopTime.isEmpty(), "StopTime element not yet supported");
final StreamNameType streamNameType = parseStreamIfPresent(operationElement);
final Optional<String> optNamespace = element.getNamespaceOptionally();
// accept even if hello has no namespace
- return !optNamespace.isPresent()
+ return optNamespace.isEmpty()
|| XmlNetconfConstants.URN_IETF_PARAMS_XML_NS_NETCONF_BASE_1_0.equals(optNamespace.get());
}
}
public String getNamespace() throws MissingNameSpaceException {
Optional<String> namespaceURI = getNamespaceOptionally();
- if (!namespaceURI.isPresent()) {
+ if (namespaceURI.isEmpty()) {
throw new MissingNameSpaceException(String.format("No namespace defined for %s", this),
DocumentedException.ErrorType.APPLICATION,
DocumentedException.ErrorTag.OPERATION_FAILED,
public static Element createElement(final Document document, final String qname,
final Optional<String> namespaceURI) {
- if (!namespaceURI.isPresent()) {
+ if (namespaceURI.isEmpty()) {
return document.createElement(qname);
}
Futures.addCallback(feature, new FutureCallback<>() {
@Override
public void onSuccess(final Optional<NormalizedNode<?, ?>> result) {
- if (!result.isPresent()) {
+ if (result.isEmpty()) {
sender.tell(new EmptyReadResponse(), self);
return;
}
tx.read(store, path).addCallback(new FutureCallback<Optional<NormalizedNode<?, ?>>>() {
@Override
public void onSuccess(final Optional<NormalizedNode<?, ?>> result) {
- if (!result.isPresent()) {
+ if (result.isEmpty()) {
sender.tell(new EmptyReadResponse(), self);
return;
}
private void awaitMountPointNotPresent(final DOMMountPointService mountPointService) {
await().atMost(5, TimeUnit.SECONDS).until(
- () -> !mountPointService.getMountPoint(yangNodeInstanceId).isPresent());
+ () -> mountPointService.getMountPoint(yangNodeInstanceId).isEmpty());
}
private static DOMDataBroker getDOMDataBroker(final DOMMountPoint mountPoint) {
// Extract child element <capabilities> from <hello> with or without(fallback) the same namespace
Optional<XmlElement> capabilitiesElement = responseElement
.getOnlyChildElementWithSameNamespaceOptionally(XmlNetconfConstants.CAPABILITIES);
- if (!capabilitiesElement.isPresent()) {
+ if (capabilitiesElement.isEmpty()) {
capabilitiesElement = responseElement.getOnlyChildElementOptionally(XmlNetconfConstants.CAPABILITIES);
}
Optional<XmlElement> maybeFilter = operationNameAndNamespace.getOperationElement()
.getOnlyChildElementOptionally(XmlNetconfConstants.FILTER,
XmlNetconfConstants.URN_IETF_PARAMS_XML_NS_NETCONF_BASE_1_0);
- if (!maybeFilter.isPresent()) {
+ if (maybeFilter.isEmpty()) {
return rpcReply;
}
XmlElement filter = maybeFilter.get();
static MountPointContext create(final MountPointContext emptyContext, final ContainerNode mountData) {
final Optional<DataContainerChild<?, ?>> optMountPoint = mountData.getChild(MOUNT_POINT);
- if (!optMountPoint.isPresent()) {
+ if (optMountPoint.isEmpty()) {
LOG.debug("mount-point list not present in {}", mountData);
return emptyContext;
}
final ChoiceNode schemaRef = (ChoiceNode) child;
final Optional<DataContainerChild<?, ?>> maybeShared = schemaRef.getChild(SHARED_SCHEMA);
- if (!maybeShared.isPresent()) {
+ if (maybeShared.isEmpty()) {
LOG.debug("Ignoring non-shared mountpoint entry {}", entry);
continue;
}
LOG.warn("Unable to download yang library from {}", connection.getURL(), e);
}
- if (!optionalModulesStateNode.isPresent()) {
+ if (optionalModulesStateNode.isEmpty()) {
return new LibraryModulesSchemas(ImmutableMap.of());
}
private ListenableFuture<MountPointContext> createMountPointContext(final EffectiveModelContext schemaContext,
final BaseSchema baseSchema, final NetconfDeviceCommunicator listener) {
final MountPointContext emptyContext = new EmptyMountPointContext(schemaContext);
- if (!schemaContext.findModule(SchemaMountConstants.RFC8528_MODULE).isPresent()) {
+ if (schemaContext.findModule(SchemaMountConstants.RFC8528_MODULE).isEmpty()) {
return Futures.immediateFuture(emptyContext);
}
final Optional<? extends NormalizedNode<?, ?>> optSchemasNode = findSchemasNode(schemasNodeResult.getResult(),
schemaContext);
- if (!optSchemasNode.isPresent()) {
+ if (optSchemasNode.isEmpty()) {
LOG.warn("{}: Unable to detect available schemas, get to {} was empty", id, STATE_SCHEMAS_IDENTIFIER);
return EMPTY;
}
for (final MapEntryNode schemaNode : ((MapNode) child.get()).getValue()) {
final Optional<RemoteYangSchema> fromCompositeNode =
RemoteYangSchema.createFromNormalizedNode(id, schemaNode);
- if (fromCompositeNode.isPresent()) {
- availableYangSchemas.add(fromCompositeNode.get());
- }
+ fromCompositeNode.ifPresent(availableYangSchemas::add);
}
return new NetconfStateSchemas(availableYangSchemas);
return Optional.empty();
}
final Optional<DataContainerChild<?, ?>> rpcResultOpt = ((ContainerNode)result).getChild(NETCONF_DATA_NODEID);
- if (!rpcResultOpt.isPresent()) {
+ if (rpcResultOpt.isEmpty()) {
return Optional.empty();
}
final Optional<DataContainerChild<?, ?>> nStateNode = ((DataContainerNode<?>) dataNode).getChild(
toId(NetconfState.QNAME));
- if (!nStateNode.isPresent()) {
+ if (nStateNode.isEmpty()) {
return Optional.empty();
}
childNode = NetconfMessageTransformUtil.IETF_NETCONF_MONITORING_SCHEMA_NAMESPACE;
final Optional<String> namespaceValue = getSingleChildNodeValue(schemaNode, childNode);
- if (!namespaceValue.isPresent()) {
+ if (namespaceValue.isEmpty()) {
LOG.warn("{}: Ignoring schema due to missing namespace", id);
return Optional.empty();
}
final InputStream entityStream, final boolean isPost)
throws IOException {
final Optional<InputStream> nonEmptyInputStreamOptional = RestUtil.isInputStreamEmpty(entityStream);
- if (!nonEmptyInputStreamOptional.isPresent()) {
+ if (nonEmptyInputStreamOptional.isEmpty()) {
return new NormalizedNodeContext(path, null);
}
final NormalizedNodeResult resultHolder = new NormalizedNodeResult();
private PatchContext readFrom(final InstanceIdentifierContext<?> path, final InputStream entityStream)
throws IOException {
final Optional<InputStream> nonEmptyInputStreamOptional = RestUtil.isInputStreamEmpty(entityStream);
- if (!nonEmptyInputStreamOptional.isPresent()) {
+ if (nonEmptyInputStreamOptional.isEmpty()) {
return new PatchContext(path, null, null);
}
XMLStreamException, ParserConfigurationException, URISyntaxException {
final InstanceIdentifierContext<?> path = getInstanceIdentifierContext();
final Optional<InputStream> nonEmptyInputStreamOptional = RestUtil.isInputStreamEmpty(entityStream);
- if (!nonEmptyInputStreamOptional.isPresent()) {
+ if (nonEmptyInputStreamOptional.isEmpty()) {
// represent empty nopayload input
return new NormalizedNodeContext(path, null);
}
try {
final InstanceIdentifierContext<?> path = getInstanceIdentifierContext();
final Optional<InputStream> nonEmptyInputStreamOptional = RestUtil.isInputStreamEmpty(entityStream);
- if (!nonEmptyInputStreamOptional.isPresent()) {
+ if (nonEmptyInputStreamOptional.isEmpty()) {
// represent empty nopayload input
return new PatchContext(path, null, null);
}
try {
final Optional<NormalizedNode<?, ?>> optional = transaction.read(datastore, path).get();
- return !optional.isPresent() ? null : withDefa == null ? optional.get() :
- prepareDataByParamWithDef(optional.get(), path, withDefa);
+ return optional.map(normalizedNode -> withDefa == null ? normalizedNode :
+ prepareDataByParamWithDef(normalizedNode, path, withDefa)).orElse(null);
} catch (InterruptedException e) {
LOG.warn("Error reading {} from datastore {}", path, datastore.name(), e);
throw new RestconfDocumentedException("Error reading data.", e);
final YangInstanceIdentifier partialPath = this.dataNormalizer.toNormalized(builder.build());
final Optional<DOMMountPoint> mountOpt = this.mountService.getMountPoint(partialPath);
- if (!mountOpt.isPresent()) {
+ if (mountOpt.isEmpty()) {
LOG.debug("Instance identifier to missing mount point: {}", partialPath);
throw new RestconfDocumentedException("Mount point does not exist.", ErrorType.PROTOCOL,
ErrorTag.DATA_MISSING);
if (mountPoint != null) {
final Optional<DOMRpcService> mountRpcServices = mountPoint.getService(DOMRpcService.class);
- if (!mountRpcServices.isPresent()) {
+ if (mountRpcServices.isEmpty()) {
LOG.debug("Error: Rpc service is missing.");
throw new RestconfDocumentedException("Rpc service is missing.");
}
final ListenableFuture<? extends DOMRpcResult> response;
if (mountPoint != null) {
final Optional<DOMRpcService> mountRpcServices = mountPoint.getService(DOMRpcService.class);
- if (!mountRpcServices.isPresent()) {
+ if (mountRpcServices.isEmpty()) {
throw new RestconfDocumentedException("Rpc service is missing.");
}
response = mountRpcServices.get().invokeRpc(rpc.getQName(), input);
final String paramName) {
final Optional<DataContainerChild<? extends PathArgument, ?>> optAugNode = value.getChild(
SAL_REMOTE_AUG_IDENTIFIER);
- if (!optAugNode.isPresent()) {
+ if (optAugNode.isEmpty()) {
return null;
}
final DataContainerChild<? extends PathArgument, ?> augNode = optAugNode.get();
}
final Optional<DataContainerChild<? extends PathArgument, ?>> enumNode = ((AugmentationNode) augNode).getChild(
new NodeIdentifier(QName.create(SAL_REMOTE_AUGMENT, paramName)));
- if (!enumNode.isPresent()) {
+ if (enumNode.isEmpty()) {
return null;
}
final Object rawValue = enumNode.get().getValue();
break;
}
- if (!optionalNormalizedNode.isPresent()) {
+ if (optionalNormalizedNode.isEmpty()) {
LOG.error("No node present in notification for {}", candidateNode);
return;
}
private static <T> T parseEnum(final ContainerNode data, final Class<T> clazz, final String paramName) {
final Optional<DataContainerChild<? extends PathArgument, ?>> optAugNode = data.getChild(
RestconfStreamsConstants.SAL_REMOTE_AUG_IDENTIFIER);
- if (!optAugNode.isPresent()) {
+ if (optAugNode.isEmpty()) {
return null;
}
final DataContainerChild<? extends PathArgument, ?> augNode = optAugNode.get();
}
final Optional<DataContainerChild<? extends PathArgument, ?>> enumNode = ((AugmentationNode) augNode).getChild(
new NodeIdentifier(QName.create(RestconfStreamsConstants.SAL_REMOTE_AUGMENT, paramName)));
- if (!enumNode.isPresent()) {
+ if (enumNode.isEmpty()) {
return null;
}
final Object value = enumNode.get().getValue();
final String streamName = ListenersBroker.createStreamNameFromUri(identifier);
final Optional<BaseListenerInterface> listener = listenersBroker.getListenerFor(streamName);
- if (!listener.isPresent()) {
+ if (listener.isEmpty()) {
LOG.debug("Listener for stream with name {} was not found.", streamName);
throw new RestconfDocumentedException("Data missing", ErrorType.APPLICATION, ErrorTag.DATA_MISSING);
}
public static DOMActionResult invokeActionViaMountPoint(final DOMMountPoint mountPoint, final ContainerNode data,
final Absolute schemaPath, final YangInstanceIdentifier yangIId) {
final Optional<DOMActionService> mountPointService = mountPoint.getService(DOMActionService.class);
- if (!mountPointService.isPresent()) {
+ if (mountPointService.isEmpty()) {
throw new RestconfDocumentedException("DomAction service is missing.");
}
return prepareActionResult(mountPointService.get().invokeAction(schemaPath, prepareDataTreeId(yangIId), data));
if (identifier == null || !identifier.contains(RestconfConstants.MOUNT)) {
return createIIdContext(schemaContext, identifier, null);
}
- if (!mountPointService.isPresent()) {
+ if (mountPointService.isEmpty()) {
throw new RestconfDocumentedException("Mount point service is not available");
}
// parse value
final QName key = keys.next();
Optional<DataSchemaNode> leafSchemaNode = listSchemaNode.findDataChildByName(key);
- RestconfDocumentedException.throwIf(!leafSchemaNode.isPresent(), ErrorType.PROTOCOL, ErrorTag.BAD_ELEMENT,
+ RestconfDocumentedException.throwIf(leafSchemaNode.isEmpty(), ErrorType.PROTOCOL, ErrorTag.BAD_ELEMENT,
"Schema not found for %s", key);
final String value = findAndParsePercentEncoded(nextIdentifierFromNextSequence(IDENTIFIER_PREDICATE));