X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-rest-connector%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Frestconf%2Frpc%2Fimpl%2FMountPointRpcExecutor.java;h=36502656c22834829deaaa73f01defce0be1885d;hb=refs%2Fchanges%2F27%2F8927%2F3;hp=b56db21951ee2d2eb01f6e3208ebb8912d0a5530;hpb=2d586172a138afacb388ca2b35b74160ba26b0ba;p=controller.git diff --git a/opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/restconf/rpc/impl/MountPointRpcExecutor.java b/opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/restconf/rpc/impl/MountPointRpcExecutor.java index b56db21951..36502656c2 100644 --- a/opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/restconf/rpc/impl/MountPointRpcExecutor.java +++ b/opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/restconf/rpc/impl/MountPointRpcExecutor.java @@ -1,27 +1,22 @@ /* -* Copyright (c) 2014 Brocade Communications Systems, Inc. and others. All rights reserved. -* -* This program and the accompanying materials are made available under the -* terms of the Eclipse Public License v1.0 which accompanies this distribution, -* and is available at http://www.eclipse.org/legal/epl-v10.html -*/ + * Copyright (c) 2014 Brocade Communications Systems, Inc. and others. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v1.0 which accompanies this distribution, + * and is available at http://www.eclipse.org/legal/epl-v10.html + */ package org.opendaylight.controller.sal.restconf.rpc.impl; -import java.util.concurrent.ExecutionException; - -import javax.ws.rs.core.Response.Status; - +import com.google.common.base.Preconditions; +import java.util.concurrent.Future; import org.opendaylight.controller.sal.core.api.mount.MountInstance; -import org.opendaylight.controller.sal.restconf.impl.ResponseException; import org.opendaylight.yangtools.yang.common.RpcResult; import org.opendaylight.yangtools.yang.data.api.CompositeNode; import org.opendaylight.yangtools.yang.model.api.RpcDefinition; -import com.google.common.base.Preconditions; -import com.google.common.util.concurrent.ListenableFuture; - /** * Provides an implementation which invokes rpc methods via a mounted yang data model. + * * @author Devin Avery * */ @@ -29,20 +24,13 @@ public class MountPointRpcExecutor extends AbstractRpcExecutor { private final MountInstance mountPoint; public MountPointRpcExecutor(RpcDefinition rpcDef, MountInstance mountPoint) { - super( rpcDef ); + super(rpcDef); this.mountPoint = mountPoint; - Preconditions.checkNotNull( mountPoint, "MountInstance can not be null." ); + Preconditions.checkNotNull(mountPoint, "MountInstance can not be null."); } @Override - public RpcResult invokeRpc( CompositeNode rpcRequest ) throws ResponseException { - ListenableFuture> rpcFuture = - mountPoint.rpc( getRpcDefinition().getQName(), rpcRequest); - try { - return rpcFuture.get(); - } catch (InterruptedException | ExecutionException e) { - throw new ResponseException(Status.INTERNAL_SERVER_ERROR, - e.getCause().getMessage() ); - } + protected Future> invokeRpcUnchecked(CompositeNode rpcRequest) { + return mountPoint.rpc(getRpcDefinition().getQName(), rpcRequest); } } \ No newline at end of file