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%2Fimpl%2FStatisticsRestconfServiceWrapper.java;h=f4a5fbc926479c94ed3eaa762722483424036133;hb=a54ec60368110d22794602343c934902f6833c65;hp=eafbb81c4830f962ff41791bbf02429facb2f160;hpb=3671ac415342e718f34c16d272647abd15b742c1;p=controller.git diff --git a/opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/restconf/impl/StatisticsRestconfServiceWrapper.java b/opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/restconf/impl/StatisticsRestconfServiceWrapper.java index eafbb81c48..f4a5fbc926 100644 --- a/opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/restconf/impl/StatisticsRestconfServiceWrapper.java +++ b/opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/restconf/impl/StatisticsRestconfServiceWrapper.java @@ -10,10 +10,9 @@ package org.opendaylight.controller.sal.restconf.impl; import java.math.BigInteger; import java.util.concurrent.atomic.AtomicLong; import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.Status; import javax.ws.rs.core.UriInfo; import org.opendaylight.controller.sal.rest.api.RestconfService; -import org.opendaylight.yangtools.yang.data.api.CompositeNode; -import org.opendaylight.yangtools.yang.data.api.Node; public class StatisticsRestconfServiceWrapper implements RestconfService { @@ -23,12 +22,22 @@ public class StatisticsRestconfServiceWrapper implements RestconfService { AtomicLong configPost = new AtomicLong(); AtomicLong configPut = new AtomicLong(); AtomicLong configDelete = new AtomicLong(); + AtomicLong successGetConfig = new AtomicLong(); + AtomicLong successGetOperational = new AtomicLong(); + AtomicLong successPost = new AtomicLong(); + AtomicLong successPut = new AtomicLong(); + AtomicLong successDelete = new AtomicLong(); + AtomicLong failureGetConfig = new AtomicLong(); + AtomicLong failureGetOperational = new AtomicLong(); + AtomicLong failurePost = new AtomicLong(); + AtomicLong failurePut = new AtomicLong(); + AtomicLong failureDelete = new AtomicLong(); private static final StatisticsRestconfServiceWrapper INSTANCE = new StatisticsRestconfServiceWrapper(RestconfImpl.getInstance()); final RestconfService delegate; - private StatisticsRestconfServiceWrapper(RestconfService delegate) { + private StatisticsRestconfServiceWrapper(final RestconfService delegate) { this.delegate = delegate; } @@ -42,84 +51,163 @@ public class StatisticsRestconfServiceWrapper implements RestconfService { } @Override - public StructuredData getModules(UriInfo uriInfo) { + public NormalizedNodeContext getModules(final UriInfo uriInfo) { return delegate.getModules(uriInfo); } @Override - public StructuredData getModules(String identifier, UriInfo uriInfo) { + public NormalizedNodeContext getModules(final String identifier, final UriInfo uriInfo) { return delegate.getModules(identifier, uriInfo); } @Override - public StructuredData getModule(String identifier, UriInfo uriInfo) { + public NormalizedNodeContext getModule(final String identifier, final UriInfo uriInfo) { return delegate.getModule(identifier, uriInfo); } @Override - public StructuredData getOperations(UriInfo uriInfo) { + public NormalizedNodeContext getOperations(final UriInfo uriInfo) { return delegate.getOperations(uriInfo); } @Override - public StructuredData getOperations(String identifier, UriInfo uriInfo) { + public NormalizedNodeContext getOperations(final String identifier, final UriInfo uriInfo) { return delegate.getOperations(identifier, uriInfo); } @Override - public StructuredData invokeRpc(String identifier, CompositeNode payload, UriInfo uriInfo) { + public NormalizedNodeContext invokeRpc(final String identifier, final NormalizedNodeContext payload, final UriInfo uriInfo) { rpc.incrementAndGet(); return delegate.invokeRpc(identifier, payload, uriInfo); } @Override - public StructuredData invokeRpc(String identifier, String noPayload, UriInfo uriInfo) { + public NormalizedNodeContext invokeRpc(final String identifier, final String noPayload, final UriInfo uriInfo) { rpc.incrementAndGet(); return delegate.invokeRpc(identifier, noPayload, uriInfo); } @Override - public NormalizedNodeContext readConfigurationData(String identifier, UriInfo uriInfo) { + public NormalizedNodeContext readConfigurationData(final String identifier, final UriInfo uriInfo) { configGet.incrementAndGet(); - return delegate.readConfigurationData(identifier, uriInfo); + NormalizedNodeContext normalizedNodeContext = null; + try { + normalizedNodeContext = delegate.readConfigurationData(identifier, uriInfo); + if (normalizedNodeContext.getData() != null) { + successGetConfig.incrementAndGet(); + } + else { + failureGetConfig.incrementAndGet(); + } + } catch (Exception e) { + failureGetConfig.incrementAndGet(); + throw e; + } + return normalizedNodeContext; } @Override - public NormalizedNodeContext readOperationalData(String identifier, UriInfo uriInfo) { + public NormalizedNodeContext readOperationalData(final String identifier, final UriInfo uriInfo) { operationalGet.incrementAndGet(); - return delegate.readOperationalData(identifier, uriInfo); + NormalizedNodeContext normalizedNodeContext = null; + try { + normalizedNodeContext = delegate.readOperationalData(identifier, uriInfo); + if (normalizedNodeContext.getData() != null) { + successGetOperational.incrementAndGet(); + } + else { + failureGetOperational.incrementAndGet(); + } + } catch (Exception e) { + failureGetOperational.incrementAndGet(); + throw e; + } + return normalizedNodeContext; } @Override - public Response updateConfigurationData(String identifier, Node payload) { + public Response updateConfigurationData(final String identifier, final NormalizedNodeContext payload) { configPut.incrementAndGet(); - return delegate.updateConfigurationData(identifier, payload); + Response response = null; + try { + response = delegate.updateConfigurationData(identifier, payload); + if (response.getStatus() == Status.OK.getStatusCode()) { + successPut.incrementAndGet(); + } + else { + failurePut.incrementAndGet(); + } + } catch (Exception e) { + failurePut.incrementAndGet(); + throw e; + } + return response; } @Override - public Response createConfigurationData(String identifier, Node payload) { + public Response createConfigurationData(final String identifier, final NormalizedNodeContext payload, final UriInfo uriInfo) { configPost.incrementAndGet(); - return delegate.createConfigurationData(identifier, payload); + Response response = null; + try { + response = delegate.createConfigurationData(identifier, payload, uriInfo); + if (response.getStatus() == Status.OK.getStatusCode()) { + successPost.incrementAndGet(); + } + else { + failurePost.incrementAndGet(); + } + } catch (Exception e) { + failurePost.incrementAndGet(); + throw e; + } + return response; } @Override - public Response createConfigurationData(Node payload) { + public Response createConfigurationData(final NormalizedNodeContext payload, final UriInfo uriInfo) { configPost.incrementAndGet(); - return delegate.createConfigurationData(payload); + Response response = null; + try { + response = delegate.createConfigurationData(payload, uriInfo); + if (response.getStatus() == Status.OK.getStatusCode()) { + successPost.incrementAndGet(); + } + else { + failurePost.incrementAndGet(); + } + }catch (Exception e) { + failurePost.incrementAndGet(); + throw e; + } + return response; } @Override - public Response deleteConfigurationData(String identifier) { - return delegate.deleteConfigurationData(identifier); + public Response deleteConfigurationData(final String identifier) { + configDelete.incrementAndGet(); + Response response = null; + try { + response = delegate.deleteConfigurationData(identifier); + if (response.getStatus() == Status.OK.getStatusCode()) { + successDelete.incrementAndGet(); + } + else { + failureDelete.incrementAndGet(); + } + } catch (Exception e) { + failureDelete.incrementAndGet(); + throw e; + } + return response; } @Override - public Response subscribeToStream(String identifier, UriInfo uriInfo) { + public Response subscribeToStream(final String identifier, final UriInfo uriInfo) { return delegate.subscribeToStream(identifier, uriInfo); } @Override - public StructuredData getAvailableStreams(UriInfo uriInfo) { + public NormalizedNodeContext getAvailableStreams(final UriInfo uriInfo) { return delegate.getAvailableStreams(uriInfo); } @@ -147,4 +235,43 @@ public class StatisticsRestconfServiceWrapper implements RestconfService { return BigInteger.valueOf(rpc.get()); } -} + public BigInteger getSuccessGetConfig() { + return BigInteger.valueOf(successGetConfig.get()); + } + + public BigInteger getSuccessGetOperational() { + return BigInteger.valueOf(successGetOperational.get()); + } + + public BigInteger getSuccessPost() { + return BigInteger.valueOf(successPost.get()); + } + + public BigInteger getSuccessPut() { + return BigInteger.valueOf(successPut.get()); + } + + public BigInteger getSuccessDelete() { + return BigInteger.valueOf(successDelete.get()); + } + + public BigInteger getFailureGetConfig() { + return BigInteger.valueOf(failureGetConfig.get()); + } + + public BigInteger getFailureGetOperational() { + return BigInteger.valueOf(failureGetOperational.get()); + } + + public BigInteger getFailurePost() { + return BigInteger.valueOf(failurePost.get()); + } + + public BigInteger getFailurePut() { + return BigInteger.valueOf(failurePut.get()); + } + + public BigInteger getFailureDelete() { + return BigInteger.valueOf(failureDelete.get()); + } +} \ No newline at end of file