Ace 5 years ago
commit fc03c404ad

@ -13,19 +13,15 @@ import io.swagger.annotations.SwaggerDefinition;
import io.swagger.annotations.Tag; import io.swagger.annotations.Tag;
import org.wso2.carbon.apimgt.annotations.api.Scope; import org.wso2.carbon.apimgt.annotations.api.Scope;
import org.wso2.carbon.apimgt.annotations.api.Scopes; import org.wso2.carbon.apimgt.annotations.api.Scopes;
import org.wso2.carbon.device.mgt.jaxrs.beans.DeviceTypeList;
import org.wso2.carbon.device.mgt.jaxrs.beans.ErrorResponse; import org.wso2.carbon.device.mgt.jaxrs.beans.ErrorResponse;
import org.wso2.carbon.device.mgt.jaxrs.beans.analytics.DeviceTypeEvent; import org.wso2.carbon.device.mgt.jaxrs.beans.analytics.DeviceTypeEvent;
import org.wso2.carbon.device.mgt.jaxrs.beans.analytics.EventAttributeList;
import org.wso2.carbon.device.mgt.jaxrs.beans.analytics.EventRecords; import org.wso2.carbon.device.mgt.jaxrs.beans.analytics.EventRecords;
import org.wso2.carbon.device.mgt.jaxrs.beans.analytics.TransportType;
import org.wso2.carbon.device.mgt.jaxrs.util.Constants; import org.wso2.carbon.device.mgt.jaxrs.util.Constants;
import javax.validation.Valid; import javax.validation.Valid;
import javax.ws.rs.Consumes; import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE; import javax.ws.rs.DELETE;
import javax.ws.rs.GET; import javax.ws.rs.GET;
import javax.ws.rs.HeaderParam;
import javax.ws.rs.POST; import javax.ws.rs.POST;
import javax.ws.rs.Path; import javax.ws.rs.Path;
import javax.ws.rs.PathParam; import javax.ws.rs.PathParam;
@ -66,8 +62,7 @@ import javax.ws.rs.core.Response;
} }
) )
@Path("/events") @Path("/events")
@Api(value = "Device Event Management", description = "This API corresponds to all tasks related to device " + @Api(value = "Device Event Management")
"event management")
@Produces(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON) @Consumes(MediaType.APPLICATION_JSON)
public interface DeviceEventManagementService { public interface DeviceEventManagementService {
@ -120,12 +115,13 @@ public interface DeviceEventManagementService {
response = ErrorResponse.class) response = ErrorResponse.class)
} }
) )
Response deployDeviceTypeEventDefinition(@ApiParam(name = "type", value = "The device type, such as android, ios," + Response deployDeviceTypeEventDefinition(
" and windows.", required = false) @ApiParam(name = "type", value = "The device type, such as android, ios, and windows.")
@PathParam("type")String deviceType, @PathParam("type")String deviceType,
@ApiParam(name = "skipPersist", value = "Is it required to persist the data or not")
@QueryParam("skipPersist") boolean skipPersist, @QueryParam("skipPersist") boolean skipPersist,
@ApiParam(name = "deviceTypeEvent", value = "Add the data to complete " + @ApiParam(name = "deviceTypeEvent", value = "Add the data to complete the DeviceTypeEvent object.",
"the DeviceTypeEvent object.", required = true) required = true)
@Valid DeviceTypeEvent deviceTypeEvent); @Valid DeviceTypeEvent deviceTypeEvent);
@DELETE @DELETE
@ -358,7 +354,6 @@ public interface DeviceEventManagementService {
@QueryParam("max") double max @QueryParam("max") double max
); );
@GET @GET
@Path("/{type}") @Path("/{type}")
@ApiOperation( @ApiOperation(
@ -408,8 +403,7 @@ public interface DeviceEventManagementService {
response = ErrorResponse.class) response = ErrorResponse.class)
} }
) )
Response getDeviceTypeEventDefinition(@ApiParam(name = "type", value = "The type of the device, such as android," + Response getDeviceTypeEventDefinition(
" ios, or windows.", required = false) @ApiParam(name = "type", value = "The type of the device, such as android, ios, or windows.")
@PathParam("type")String deviceType) ; @PathParam("type")String deviceType) ;
} }

@ -54,6 +54,7 @@ import javax.ws.rs.core.Response;
import java.rmi.RemoteException; import java.rmi.RemoteException;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Calendar; import java.util.Calendar;
import java.util.Comparator;
import java.util.HashSet; import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.Set; import java.util.Set;
@ -107,7 +108,11 @@ public class DeviceEventManagementServiceImpl implements DeviceEventManagementSe
AnalyticsDataResponse response = analyticsDataAPI.get(tenantId, tableName, 1, null, recordIds); AnalyticsDataResponse response = analyticsDataAPI.get(tenantId, tableName, 1, null, recordIds);
eventRecords.setCount(eventCount); eventRecords.setCount(eventCount);
List<Record> records = AnalyticsDataAPIUtil.listRecords(analyticsDataAPI, response); List<Record> records = AnalyticsDataAPIUtil.listRecords(analyticsDataAPI, response);
records.sort((Record r1, Record r2) -> Long.compare(r2.getTimestamp(), r1.getTimestamp())); records.sort(new Comparator<Record>() {
@Override public int compare(Record r1, Record r2) {
return Long.compare(r2.getTimestamp(), r1.getTimestamp());
}
});
eventRecords.setList(records); eventRecords.setList(records);
return eventRecords; return eventRecords;
} }

Loading…
Cancel
Save