use of org.wso2.carbon.apimgt.rest.api.store.dto.SubscriptionListDTO in project carbon-apimgt by wso2.
the class SubscriptionApiServiceImpl method subscriptionCountOverTimeGet.
/**
* Get list of subscriptions created over time
*
* @param startTime Filter for start time stamp
* @param endTime Filter for end time stamp
* @param createdBy Filter for createdBy
* @param request MSF4J request
* @return Subscriptions count over time
* @throws NotFoundException When the particular resource does not exist in the system
*/
@Override
public Response subscriptionCountOverTimeGet(String startTime, String endTime, String createdBy, Request request) throws NotFoundException {
String username = RestApiUtil.getLoggedInUsername(request);
try {
log.debug("Retrieving subscriptions created over time. [From: {} To: {} Created By: {}]", startTime, endTime, createdBy);
Analyzer analyzer = RestApiUtil.getAnalyzer(username);
ZoneId requestTimezone = RestApiUtil.getRequestTimeZone(startTime);
List<SubscriptionCount> subscriptionCount = analyzer.getSubscriptionCount(fromISO8601ToInstant(startTime), fromISO8601ToInstant(endTime), createdBy);
SubscriptionCountListDTO subscriptionListDTO = AnalyticsMappingUtil.fromSubscriptionCountListToDTO(subscriptionCount, requestTimezone);
return Response.ok().entity(subscriptionListDTO).build();
} catch (APIManagementException e) {
String errorMessage = "Error while retrieving Subscription Count";
ErrorDTO errorDTO = RestApiUtil.getErrorDTO(e.getErrorHandler());
log.error(errorMessage, e);
return Response.status(e.getErrorHandler().getHttpStatusCode()).entity(errorDTO).build();
}
}
use of org.wso2.carbon.apimgt.rest.api.store.dto.SubscriptionListDTO in project carbon-apimgt by wso2.
the class MappingUtil method fromSubscriptionListToDTO.
/**
* Converts Subscription model into SubscriptionListDTO object
*
* @param subscriptionList list of subscriptions
* @param limit no of items to return
* @param offset value to offset
* @return SubscriptionListDTO containing subscriptions
*/
public static SubscriptionListDTO fromSubscriptionListToDTO(List<Subscription> subscriptionList, Integer limit, Integer offset) {
SubscriptionListDTO subscriptionListDTO = new SubscriptionListDTO();
for (Subscription subscription : subscriptionList) {
subscriptionListDTO.addListItem(fromSubscription(subscription));
}
// TODO need to change when pagination implementation goes on
subscriptionListDTO.count(subscriptionList.size());
return subscriptionListDTO;
}
Aggregations