package org.opendaylight.netconf.mdsal.connector;
import com.google.common.annotations.Beta;
-import com.google.common.util.concurrent.CheckedFuture;
+import com.google.common.util.concurrent.FluentFuture;
import org.opendaylight.mdsal.dom.api.DOMDataBroker;
import org.opendaylight.mdsal.dom.api.DOMDataBrokerExtension;
import org.opendaylight.mdsal.dom.api.DOMDataTreeWriteTransaction;
* @param transaction
* transaction to be validated
* @return
- * a CheckedFuture containing the result of the validate operation. The future blocks until the validation
+ * a FluentFuture containing the result of the validate operation. The future blocks until the validation
* operation is complete. A successful validate returns nothing. On failure, the Future will fail
* with a {@link ValidationFailedException} or an exception derived from ValidationFailedException.
*/
- CheckedFuture<Void, ValidationFailedException> validate(DOMDataTreeWriteTransaction transaction);
+ FluentFuture<Void> validate(DOMDataTreeWriteTransaction transaction);
/**
* Failed validation of asynchronous transaction. This exception is raised and returned when transaction validation
import org.opendaylight.netconf.api.DocumentedException.ErrorSeverity;
import org.opendaylight.netconf.api.DocumentedException.ErrorTag;
import org.opendaylight.netconf.api.DocumentedException.ErrorType;
-import org.opendaylight.netconf.mdsal.connector.DOMDataTransactionValidator.ValidationFailedException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
}
try {
- transactionValidator.validate(candidateTransaction).checkedGet();
- } catch (final ValidationFailedException e) {
+ transactionValidator.validate(candidateTransaction).get();
+ } catch (final InterruptedException | ExecutionException e) {
LOG.debug("Candidate transaction validation {} failed on session {}", candidateTransaction,
netconfSessionIdForReporting, e);
final String cause = e.getCause() != null ? " Cause: " + e.getCause().getMessage() : "";
import static org.opendaylight.netconf.mdsal.connector.ops.AbstractNetconfOperationTest.verifyResponse;
import com.google.common.collect.ImmutableClassToInstanceMap;
-import com.google.common.util.concurrent.Futures;
import org.custommonkey.xmlunit.XMLUnit;
import org.junit.Before;
import org.junit.Test;
import org.opendaylight.netconf.mdsal.connector.DOMDataTransactionValidator;
import org.opendaylight.netconf.mdsal.connector.DOMDataTransactionValidator.ValidationFailedException;
import org.opendaylight.netconf.mdsal.connector.TransactionProvider;
+import org.opendaylight.yangtools.util.concurrent.FluentFutures;
import org.w3c.dom.Document;
public class ValidateTest {
@Before
public void setUp() throws Exception {
initMocks(this);
- doReturn(Futures.immediateCheckedFuture(null)).when(noopValidator).validate(any());
- doReturn(Futures.immediateFailedCheckedFuture(new ValidationFailedException("invalid data")))
+ doReturn(FluentFutures.immediateNullFluentFuture()).when(noopValidator).validate(any());
+ doReturn(FluentFutures.immediateFailedFluentFuture(new ValidationFailedException("invalid data")))
.when(failingValidator).validate(any());
doReturn(readWriteTx).when(dataBroker).newReadWriteTransaction();
XMLUnit.setIgnoreWhitespace(true);