+ @Override
+ public CheckedFuture<Boolean, ReadFailedException> apply(DOMStoreReadTransaction readDelegate) {
+ return readDelegate.exists(getPath());
+ }
+
+ @Override
+ public void processResponse(Object response, SettableFuture<Boolean> returnFuture) {
+ if(response instanceof DataExistsReply) {
+ returnFuture.set(Boolean.valueOf(((DataExistsReply) response).exists()));
+
+ } else if(response.getClass().equals(DataExistsReply.SERIALIZABLE_CLASS)) {
+ returnFuture.set(Boolean.valueOf(DataExistsReply.fromSerializable(response).exists()));
+
+ } else {
+ returnFuture.setException(new ReadFailedException("Invalid response checking exists for path " + getPath()));
+ }
+ }
+