- final YangInstanceIdentifier dataRoot = ROOT;
- DOMDataReadWriteTransaction rwTx = getTransaction(getConfigExecution.getDatastore());
+ final Optional<YangInstanceIdentifier> dataRootOptional = getDataRootFromFilter(operationElement);
+ if (!dataRootOptional.isPresent()) {
+ return XmlUtil.createElement(document, XmlNetconfConstants.DATA_KEY, Optional.<String>absent());
+ }
+
+ final YangInstanceIdentifier dataRoot = dataRootOptional.get();
+
+ // Proper exception should be thrown
+ Preconditions.checkState(getConfigExecution.getDatastore().isPresent(), "Source element missing from request");
+
+ DOMDataReadWriteTransaction rwTx = getTransaction(getConfigExecution.getDatastore().get());