aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--main/src/main/java/org/onap/policy/pap/main/rest/StatisticsRestControllerV1.java16
-rw-r--r--main/src/main/java/org/onap/policy/pap/main/rest/StatisticsRestProvider.java43
2 files changed, 17 insertions, 42 deletions
diff --git a/main/src/main/java/org/onap/policy/pap/main/rest/StatisticsRestControllerV1.java b/main/src/main/java/org/onap/policy/pap/main/rest/StatisticsRestControllerV1.java
index b19e91a9..b08964bc 100644
--- a/main/src/main/java/org/onap/policy/pap/main/rest/StatisticsRestControllerV1.java
+++ b/main/src/main/java/org/onap/policy/pap/main/rest/StatisticsRestControllerV1.java
@@ -38,6 +38,7 @@ import javax.ws.rs.PathParam;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.Response;
import org.onap.policy.models.base.PfModelException;
+import org.onap.policy.models.pdp.persistence.provider.PdpFilterParameters;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -112,7 +113,8 @@ public class StatisticsRestControllerV1 extends PapRestControllerV1 {
@ApiParam(value = "Record Count", required = false) @QueryParam("recordCount") final int recordCount) {
try {
return addLoggingHeaders(addVersionControlHeaders(Response.status(Response.Status.OK)), requestId)
- .entity(new StatisticsRestProvider().fetchDatabaseStatistics(null, null, null, recordCount))
+ .entity(new StatisticsRestProvider().fetchDatabaseStatistics(
+ PdpFilterParameters.builder().recordNum(recordCount).build()))
.build();
} catch (final PfModelException exp) {
LOGGER.info(GET_STATISTICS_ERR_MSG, exp);
@@ -161,7 +163,8 @@ public class StatisticsRestControllerV1 extends PapRestControllerV1 {
@ApiParam(value = "Record Count", required = false) @QueryParam("recordCount") final int recordCount) {
try {
return addLoggingHeaders(addVersionControlHeaders(Response.status(Response.Status.OK)), requestId)
- .entity(new StatisticsRestProvider().fetchDatabaseStatistics(groupName, null, null, recordCount))
+ .entity(new StatisticsRestProvider().fetchDatabaseStatistics(PdpFilterParameters.builder()
+ .group(groupName).recordNum(recordCount).build()))
.build();
} catch (final PfModelException exp) {
LOGGER.info(GET_STATISTICS_ERR_MSG, exp);
@@ -212,8 +215,8 @@ public class StatisticsRestControllerV1 extends PapRestControllerV1 {
@ApiParam(value = "Record Count", required = false) @QueryParam("recordCount") final int recordCount) {
try {
return addLoggingHeaders(addVersionControlHeaders(Response.status(Response.Status.OK)), requestId)
- .entity(new StatisticsRestProvider().fetchDatabaseStatistics(groupName, subType, null,
- recordCount))
+ .entity(new StatisticsRestProvider().fetchDatabaseStatistics(PdpFilterParameters.builder()
+ .group(groupName).subGroup(subType).recordNum(recordCount).build()))
.build();
} catch (final PfModelException exp) {
LOGGER.info(GET_STATISTICS_ERR_MSG, exp);
@@ -268,8 +271,9 @@ public class StatisticsRestControllerV1 extends PapRestControllerV1 {
@ApiParam(value = "Record Count", required = false) @QueryParam("recordCount") final int recordCount) {
try {
return addLoggingHeaders(addVersionControlHeaders(Response.status(Response.Status.OK)), requestId)
- .entity(new StatisticsRestProvider().fetchDatabaseStatistics(groupName, subType, pdpName,
- recordCount))
+ .entity(new StatisticsRestProvider().fetchDatabaseStatistics(
+ PdpFilterParameters.builder().group(groupName).subGroup(subType)
+ .name(pdpName).recordNum(recordCount).build()))
.build();
} catch (final PfModelException exp) {
LOGGER.info(GET_STATISTICS_ERR_MSG, exp);
diff --git a/main/src/main/java/org/onap/policy/pap/main/rest/StatisticsRestProvider.java b/main/src/main/java/org/onap/policy/pap/main/rest/StatisticsRestProvider.java
index 3859401e..d2771d67 100644
--- a/main/src/main/java/org/onap/policy/pap/main/rest/StatisticsRestProvider.java
+++ b/main/src/main/java/org/onap/policy/pap/main/rest/StatisticsRestProvider.java
@@ -21,7 +21,6 @@
package org.onap.policy.pap.main.rest;
-import java.time.Instant;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -36,8 +35,6 @@ import org.onap.policy.models.provider.PolicyModelsProvider;
import org.onap.policy.pap.main.PapConstants;
import org.onap.policy.pap.main.PolicyModelsProviderFactoryWrapper;
import org.onap.policy.pap.main.startstop.PapActivator;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
/**
* Class to fetch statistics of pap component.
@@ -45,11 +42,7 @@ import org.slf4j.LoggerFactory;
* @author Ram Krishna Verma (ram.krishna.verma@est.tech)
*/
public class StatisticsRestProvider {
- private static final Logger LOGGER = LoggerFactory.getLogger(StatisticsRestProvider.class);
- private static final String GET_STATISTICS_ERR_MSG = "fetch database failed";
- private static final String DEFAULT_GROUP = "defaultGroup";
- private static final int MIN_RECORD_COUNT = 1;
- private static final int MAX_RECORD_COUNT = 100;
+ private static final String GET_STATISTICS_ERR_MSG = "database query failed";
/**
* Returns the current statistics of pap component.
@@ -76,39 +69,19 @@ public class StatisticsRestProvider {
/**
* Returns statistics of pdp component from database.
*
- * @param groupName name of the PDP group
- * @param subType type of the sub PDP group
- * @param pdpName the name of the PDP
- * @param recordCount the count to query from database
+ * @param filter record filter
* @return Report containing statistics of pdp component
* @throws PfModelException when database can not found
*/
- public Map<String, Map<String, List<PdpStatistics>>> fetchDatabaseStatistics(String groupName, String subType,
- String pdpName, int recordCount) throws PfModelException {
+ public Map<String, Map<String, List<PdpStatistics>>> fetchDatabaseStatistics(PdpFilterParameters filter)
+ throws PfModelException {
final PolicyModelsProviderFactoryWrapper modelProviderWrapper =
- Registry.get(PapConstants.REG_PAP_DAO_FACTORY, PolicyModelsProviderFactoryWrapper.class);
+ Registry.get(PapConstants.REG_PAP_DAO_FACTORY, PolicyModelsProviderFactoryWrapper.class);
try (PolicyModelsProvider databaseProvider = modelProviderWrapper.create()) {
- Instant startTime = null;
- Instant endTime = null;
-
- /*
- * getFilteredPdpStatistics() will throw an NPE if a group name is not specified, so we
- * provide a default value
- */
- String grpnm = (groupName != null ? groupName : DEFAULT_GROUP);
-
- int nrecords = Math.min(MAX_RECORD_COUNT, Math.max(MIN_RECORD_COUNT, recordCount));
-
- return generatePdpStatistics(databaseProvider.getFilteredPdpStatistics(
- PdpFilterParameters.builder().name(pdpName).group(grpnm)
- .subGroup(subType).startTime(startTime).endTime(endTime)
- .recordNum(nrecords).build()));
+ return generatePdpStatistics(databaseProvider.getFilteredPdpStatistics(filter));
} catch (final PfModelException exp) {
- String errorMessage = GET_STATISTICS_ERR_MSG + "groupName:" + groupName + "subType:" + subType + "pdpName:"
- + pdpName + exp.getMessage();
- LOGGER.debug(errorMessage, exp);
- throw new PfModelRuntimeException(Response.Status.BAD_REQUEST, errorMessage);
+ throw new PfModelRuntimeException(Response.Status.INTERNAL_SERVER_ERROR, GET_STATISTICS_ERR_MSG);
}
}
@@ -129,5 +102,3 @@ public class StatisticsRestProvider {
return groupMap;
}
}
-
-