diff options
author | ramverma <ram.krishna.verma@ericsson.com> | 2018-09-13 23:05:39 +0100 |
---|---|---|
committer | ramverma <ram.krishna.verma@ericsson.com> | 2018-09-13 23:21:20 +0100 |
commit | a03bfe0ac168a61a8c34329b2bfb73e360b812e1 (patch) | |
tree | 68140f4aa346b1aba5af4d7fb2d6a42f140e4d5d /reception | |
parent | 31def9f82514182e6761fac5ecae70333155aabc (diff) |
Adding statistics endpoint to distribution
* Adding statistics endpoint in DistributionRestController
* Adding DistributionStatisticsManager to hold all stats.
* Adding StatisticsReport class to represent distribution stats report.
* Updating stats at each step in SdcReceptionHandler.
* Adding test cases for all code changes.
Change-Id: I0b0f97aecc64b18314367fdff6d3ca7bee06efc7
Issue-ID: POLICY-1035
Signed-off-by: ramverma <ram.krishna.verma@ericsson.com>
Diffstat (limited to 'reception')
-rw-r--r-- | reception/src/main/java/org/onap/policy/distribution/reception/statistics/DistributionStatisticsManager.java | 156 |
1 files changed, 156 insertions, 0 deletions
diff --git a/reception/src/main/java/org/onap/policy/distribution/reception/statistics/DistributionStatisticsManager.java b/reception/src/main/java/org/onap/policy/distribution/reception/statistics/DistributionStatisticsManager.java new file mode 100644 index 00000000..cd78d254 --- /dev/null +++ b/reception/src/main/java/org/onap/policy/distribution/reception/statistics/DistributionStatisticsManager.java @@ -0,0 +1,156 @@ +/*- + * ============LICENSE_START======================================================= + * Copyright (C) 2018 Ericsson. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.distribution.reception.statistics; + +/** + * Class to hold statistical data for distribution component. + * + * @author Ram Krishna Verma (ram.krishna.verma@ericsson.com) + */ +public class DistributionStatisticsManager { + + private static long totalDistributionCount; + private static long distributionSuccessCount; + private static long distributionFailureCount; + private static long totalDownloadCount; + private static long downloadSuccessCount; + private static long downloadFailureCount; + + /** + * Method to update the total distribution count. + * + * @return the updated value of totalDistributionCount + */ + public static long updateTotalDistributionCount() { + return ++totalDistributionCount; + } + + /** + * Method to update the distribution success count. + * + * @return the updated value of distributionSuccessCount + */ + public static long updateDistributionSuccessCount() { + return ++distributionSuccessCount; + } + + /** + * Method to update the distribution failure count. + * + * @return the updated value of distributionFailureCount + */ + public static long updateDistributionFailureCount() { + return ++distributionFailureCount; + } + + /** + * Method to update the total download count. + * + * @return the updated value of totalDownloadCount + */ + public static long updateTotalDownloadCount() { + return ++totalDownloadCount; + } + + /** + * Method to update the download success count. + * + * @return the updated value of downloadSuccessCount + */ + public static long updateDownloadSuccessCount() { + return ++downloadSuccessCount; + } + + /** + * Method to update the download failure count. + * + * @return the updated value of downloadFailureCount + */ + public static long updateDownloadFailureCount() { + return ++downloadFailureCount; + } + + /** + * Returns the current value of totalDistributionCount. + * + * @return the totalDistributionCount + */ + public static long getTotalDistributionCount() { + return totalDistributionCount; + } + + /** + * Returns the current value of distributionSuccessCount. + * + * @return the distributionSuccessCount + */ + public static long getDistributionSuccessCount() { + return distributionSuccessCount; + } + + /** + * Returns the current value of distributionFailureCount. + * + * @return the distributionFailureCount + */ + public static long getDistributionFailureCount() { + return distributionFailureCount; + } + + /** + * Returns the current value of totalDownloadCount. + * + * @return the totalDownloadCount + */ + public static long getTotalDownloadCount() { + return totalDownloadCount; + } + + /** + * Returns the current value of downloadSuccessCount. + * + * @return the downloadSuccessCount + */ + public static long getDownloadSuccessCount() { + return downloadSuccessCount; + } + + /** + * Returns the current value of downloadFailureCount. + * + * @return the downloadFailureCount + */ + public static long getDownloadFailureCount() { + return downloadFailureCount; + } + + /** + * Reset all the statistics counts to 0. + */ + public static void resetAllStatistics() { + totalDistributionCount = 0L; + distributionSuccessCount = 0L; + distributionFailureCount = 0L; + totalDownloadCount = 0L; + downloadSuccessCount = 0L; + downloadFailureCount = 0L; + } +} |