mirror of
https://repository.entgra.net/community/device-mgt-plugins.git
synced 2025-09-16 23:42:15 +00:00
Improving swagger annotations
This commit is contained in:
parent
631d57e70d
commit
63bb616e9c
File diff suppressed because it is too large
Load Diff
@ -45,15 +45,47 @@ public interface DeviceManagementService {
|
||||
tags = "Android Device Management"
|
||||
)
|
||||
@ApiResponses(value = {
|
||||
@ApiResponse(code = 200, message = "OK. \n " +
|
||||
"Application list of the device has successfully been updated"),
|
||||
@ApiResponse(code = 500, message = "Internal Server Error. \n " +
|
||||
"Sever error occurred while modifying the application list")
|
||||
@ApiResponse(
|
||||
code = 200,
|
||||
message = "OK. \n Application list has been updated successfully",
|
||||
responseHeaders = {
|
||||
@ResponseHeader(
|
||||
name = "Content-Location",
|
||||
description = "The URL of the updated application list."),
|
||||
@ResponseHeader(
|
||||
name = "Content-Type",
|
||||
description = "The content type of the body"),
|
||||
@ResponseHeader(
|
||||
name = "ETag",
|
||||
description = "Entity Tag of the response resource.\n" +
|
||||
"Used by caches, or in conditional requests."),
|
||||
@ResponseHeader(
|
||||
name = "Last-Modified",
|
||||
description = "Date and time the resource has been modified the last time.\n" +
|
||||
"Used by caches, or in conditional requests.")}),
|
||||
@ApiResponse(
|
||||
code = 400,
|
||||
message = "Bad Request. \n Invalid request or validation error."),
|
||||
@ApiResponse(
|
||||
code = 404,
|
||||
message = "Not Found. \n Resource to be deleted does not exist."),
|
||||
@ApiResponse(
|
||||
code = 415,
|
||||
message = "Unsupported media type. \n The entity of the request was in a not supported format."),
|
||||
@ApiResponse(
|
||||
code = 500,
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while updating the application list.")
|
||||
})
|
||||
Response updateApplicationList(@ApiParam(name = "id", value = "Device Identifier") @PathParam("id") String id,
|
||||
@ApiParam(name = "applications", value = "List of applications that need to be " +
|
||||
"persisted against the device")
|
||||
List<Application> applications);
|
||||
Response updateApplicationList(
|
||||
@ApiParam(
|
||||
name = "id",
|
||||
value = "Device Identifier")
|
||||
@PathParam("id") String id,
|
||||
@ApiParam(
|
||||
name = "applications",
|
||||
value = "List of applications that need to be persisted against the device")
|
||||
List<Application> applications);
|
||||
|
||||
@GET
|
||||
@Path("/{id}/pending-operations")
|
||||
@ -67,33 +99,52 @@ public interface DeviceManagementService {
|
||||
response = Operation.class,
|
||||
tags = "Android Device Management")
|
||||
@ApiResponses(value = {
|
||||
@ApiResponse(code = 200, message = "OK. \n List of pending operations of the device is returned",
|
||||
@ApiResponse(
|
||||
code = 200,
|
||||
message = "OK. \n Successfully fetched the pending application list of the Android device.",
|
||||
response = Operation.class,
|
||||
responseContainer = "List",
|
||||
responseHeaders = {
|
||||
@ResponseHeader(name = "Content-Type", description = "The content type of the body"),
|
||||
@ResponseHeader(name = "ETag", description = "Entity Tag of the response resource.\n" +
|
||||
"Used by caches, or in conditional requests."),
|
||||
@ResponseHeader(name = "Last-Modified",
|
||||
@ResponseHeader(
|
||||
name = "Content-Type",
|
||||
description = "The content type of the body"),
|
||||
@ResponseHeader(
|
||||
name = "ETag",
|
||||
description = "Entity Tag of the response resource.\n" +
|
||||
"Used by caches, or in conditional requests."),
|
||||
@ResponseHeader(
|
||||
name = "Last-Modified",
|
||||
description = "Date and time the resource has been modified the last time.\n" +
|
||||
"Used by caches, or in conditional requests.")}),
|
||||
@ApiResponse(code = 303, message = "See Other. \n " +
|
||||
"Source can be retrieved from the URL specified at the Location header.",
|
||||
responseHeaders = {
|
||||
@ResponseHeader(name = "Location", description = "The Source URL of the document.")}),
|
||||
@ApiResponse(code = 304, message = "Not Modified. \n " +
|
||||
"Empty body because the client already has the latest version of the requested resource."),
|
||||
@ApiResponse(code = 400, message = "Bad Request. \n Invalid request or validation error."),
|
||||
@ApiResponse(code = 404, message = "Not Found. \n Requested device not found."),
|
||||
@ApiResponse(code = 406, message = "Not Acceptable. \n The requested media type is not supported."),
|
||||
@ApiResponse(code = 500, message = "Internal Server Error. \n " +
|
||||
"Server error occurred while retrieving the pending operation list of the device.")
|
||||
"Used by caches, or in conditional requests.")
|
||||
}),
|
||||
@ApiResponse(
|
||||
code = 304,
|
||||
message = "Not Modified. \n Empty body because the client has already the latest version of the requested resource."),
|
||||
@ApiResponse(
|
||||
code = 406,
|
||||
message = "Not Acceptable.\n The requested media type is not supported"),
|
||||
@ApiResponse(
|
||||
code = 500,
|
||||
message = "Internal Server Error. \n Server error occurred while fetching policies.")
|
||||
})
|
||||
Response getPendingOperations(
|
||||
@ApiParam(name = "id", value = "Device Identifier") @PathParam("id") String id,
|
||||
@ApiParam(name = "resultOperations", value = "Device Operation Status")
|
||||
@ApiParam(
|
||||
name = "id",
|
||||
value = "Device Identifier")
|
||||
@PathParam("id") String id,
|
||||
@ApiParam(
|
||||
name = "If-Modified-Since",
|
||||
value = "Validates if the requested variant has not been modified since the time specified",
|
||||
required = false)
|
||||
@HeaderParam("If-Modified-Since") String ifModifiedSince,
|
||||
@ApiParam(
|
||||
name = "resultOperations",
|
||||
value = "Device Operation Status")
|
||||
List<? extends Operation> resultOperations);
|
||||
|
||||
@POST
|
||||
@ApiOperation(
|
||||
produces = MediaType.APPLICATION_JSON,
|
||||
consumes = MediaType.APPLICATION_JSON,
|
||||
httpMethod = "POST",
|
||||
value = "Register an Android Device",
|
||||
@ -104,13 +155,41 @@ public interface DeviceManagementService {
|
||||
tags = "Android Device Management"
|
||||
)
|
||||
@ApiResponses(value = {
|
||||
@ApiResponse(code = 201, message = "Created. \n Device has successfully been enrolled. Location header " +
|
||||
"contains URL of newly enrolled device",
|
||||
@ApiResponse(
|
||||
code = 201,
|
||||
message = "Created. \n Device enrollment has successfully been created",
|
||||
responseHeaders = {
|
||||
@ResponseHeader(name = "Location", description = "URL of the device enrolled")}),
|
||||
@ApiResponse(code = 400, message = "Bad Request. \n Invalid request or validation error."),
|
||||
@ApiResponse(code = 500, message = "Internal Server Error. \n " +
|
||||
"Server error occurred while enrolling the device.")
|
||||
@ResponseHeader(
|
||||
name = "Content-Location",
|
||||
description = "URL of the added device enrollment."),
|
||||
@ResponseHeader(
|
||||
name = "Content-Type",
|
||||
description = "Content type of the body"),
|
||||
@ResponseHeader(
|
||||
name = "ETag",
|
||||
description = "Entity Tag of the response resource.\n" +
|
||||
"Used by caches, or in conditional requests."),
|
||||
@ResponseHeader(
|
||||
name = "Last-Modified",
|
||||
description = "Date and time the resource has been modified the last time.\n" +
|
||||
"Used by caches, or in conditional requests.")}),
|
||||
@ApiResponse(
|
||||
code = 303,
|
||||
message = "See Other. \n Source can be retrieved from the URL specified at the Location header.",
|
||||
responseHeaders = {
|
||||
@ResponseHeader(
|
||||
name = "Content-Location",
|
||||
description = "The Source URL of the document.")}),
|
||||
@ApiResponse(
|
||||
code = 400,
|
||||
message = "Bad Request. \n Invalid request or validation error."),
|
||||
@ApiResponse(
|
||||
code = 415,
|
||||
message = "Unsupported media type. \n The entity of the request was in a not supported format."),
|
||||
@ApiResponse(
|
||||
code = 500,
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new policy.")
|
||||
})
|
||||
Response enrollDevice(@ApiParam(name = "device", value = "Device Information to be enroll") Device device);
|
||||
|
||||
@ -123,25 +202,42 @@ public interface DeviceManagementService {
|
||||
tags = "Android Device Management"
|
||||
)
|
||||
@ApiResponses(value = {
|
||||
@ApiResponse(code = 200, message = "Device has already enrolled",
|
||||
@ApiResponse(
|
||||
code = 200,
|
||||
message = "OK. \n Successfully fetched the status of the Android device enrollment.",
|
||||
responseHeaders = {
|
||||
@ResponseHeader(name = "Content-Type", description = "The content type of the body"),
|
||||
@ResponseHeader(name = "ETag", description = "Entity Tag of the response resource.\n" +
|
||||
"Used by caches, or in conditional requests."),
|
||||
@ResponseHeader(name = "Last-Modified",
|
||||
@ResponseHeader(
|
||||
name = "Content-Type",
|
||||
description = "The content type of the body"),
|
||||
@ResponseHeader(
|
||||
name = "ETag",
|
||||
description = "Entity Tag of the response resource.\n" +
|
||||
"Used by caches, or in conditional requests."),
|
||||
@ResponseHeader(
|
||||
name = "Last-Modified",
|
||||
description = "Date and time the resource has been modified the last time.\n" +
|
||||
"Used by caches, or in conditional requests.")}),
|
||||
@ApiResponse(code = 404, message = "Not Found. \n Requested device not found."),
|
||||
@ApiResponse(code = 303, message = "See Other. \n " +
|
||||
"Source can be retrieved from the URL specified at the Location header.",
|
||||
responseHeaders = {
|
||||
@ResponseHeader(name = "Location", description = "The Source URL of the document.")}),
|
||||
@ApiResponse(code = 304, message = "Not Modified. \n " +
|
||||
"Empty body because the client already has the latest version of the requested resource."),
|
||||
@ApiResponse(code = 500, message = "Internal Server Error. \n " +
|
||||
"Server error occurred while retrieving the enrollment status of the device."),
|
||||
"Used by caches, or in conditional requests."),
|
||||
}),
|
||||
@ApiResponse(
|
||||
code = 304,
|
||||
message = "Not Modified. \n Empty body because the client has already the latest version of the requested resource."),
|
||||
@ApiResponse(
|
||||
code = 406,
|
||||
message = "Not Acceptable.\n The requested media type is not supported"),
|
||||
@ApiResponse(
|
||||
code = 500,
|
||||
message = "Internal Server Error. \n Server error occurred while fetching the enrollment status of the Android device.")
|
||||
})
|
||||
Response isEnrolled(@ApiParam(name = "id", value = "Device Identifier") @PathParam("id") String id);
|
||||
Response isEnrolled(
|
||||
@ApiParam(
|
||||
name = "id",
|
||||
value = "Device Identifier")
|
||||
@PathParam("id") String id,
|
||||
@ApiParam(
|
||||
name = "If-Modified-Since",
|
||||
value = "Validates if the requested variant has not been modified since the time specified",
|
||||
required = false)
|
||||
@HeaderParam("If-Modified-Since") String ifModifiedSince);
|
||||
|
||||
@PUT
|
||||
@Path("/{id}")
|
||||
@ -151,47 +247,73 @@ public interface DeviceManagementService {
|
||||
notes = "Use this REST API to update the registration details of an Android device",
|
||||
tags = "Android Device Management"
|
||||
)
|
||||
@ApiResponses(
|
||||
value = {
|
||||
@ApiResponse(
|
||||
code = 200,
|
||||
message = "OK. \n Device enrollment has been updated successfully",
|
||||
responseHeaders = {
|
||||
@ResponseHeader(
|
||||
name = "Content-Location",
|
||||
description = "URL of the updated device enrollment."),
|
||||
@ResponseHeader(
|
||||
name = "Content-Type",
|
||||
description = "Content type of the body"),
|
||||
@ResponseHeader(
|
||||
name = "ETag",
|
||||
description = "Entity Tag of the response resource.\n" +
|
||||
"Used by caches, or in conditional requests."),
|
||||
@ResponseHeader(
|
||||
name = "Last-Modified",
|
||||
description = "Date and time the resource has been modified the last time.\n" +
|
||||
"Used by caches, or in conditional requests.")}),
|
||||
@ApiResponse(
|
||||
code = 400,
|
||||
message = "Bad Request. \n Invalid request or validation error."),
|
||||
@ApiResponse(
|
||||
code = 404,
|
||||
message = "Not Found. \n Resource to be deleted does not exist."),
|
||||
@ApiResponse(
|
||||
code = 415,
|
||||
message = "Unsupported media type. \n The entity of the request was in a not supported format."),
|
||||
@ApiResponse(
|
||||
code = 500,
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while updating the device enrollment.")
|
||||
})
|
||||
Response modifyEnrollment(
|
||||
@ApiParam(
|
||||
name = "id",
|
||||
value = "Device Identifier")
|
||||
@PathParam("id") String id,
|
||||
@ApiParam(
|
||||
name = "device",
|
||||
value = "Device information to be modify") Device device);
|
||||
|
||||
@DELETE
|
||||
@Path("/{id}")
|
||||
@ApiOperation(
|
||||
httpMethod = "DELETE",
|
||||
value = "Un-register an Android Device",
|
||||
notes = "Use this REST API to un-register a specific Android device",
|
||||
tags = "Android Device Management"
|
||||
)
|
||||
@ApiResponses(value = {
|
||||
@ApiResponse(code = 200, message = "OK. \n Device enrollment has been updated successfully",
|
||||
responseHeaders = {
|
||||
@ResponseHeader(name = "Content-Location", description = "The URL of the updated device."),
|
||||
@ResponseHeader(name = "Content-Type", description = "The content type of the body"),
|
||||
@ResponseHeader(name = "ETag", description = "Entity Tag of the response resource.\n" +
|
||||
"Used by caches, or in conditional requests."),
|
||||
@ResponseHeader(name = "Last-Modified",
|
||||
description = "Date and time the resource has been modified the last time.\n" +
|
||||
"Used by caches, or in conditional requests.")}),
|
||||
@ApiResponse(
|
||||
code = 204,
|
||||
message = "No Content. \n Enrollment of the device has not been updated"),
|
||||
@ApiResponse(
|
||||
code = 400,
|
||||
message = "Bad Request. \n Invalid request or validation error."),
|
||||
code = 200,
|
||||
message = "OK. \n Device has successfully been dis-enrolled"),
|
||||
@ApiResponse(
|
||||
code = 404,
|
||||
message = "Not Found. \n Resource to be deleted does not exist."),
|
||||
@ApiResponse(
|
||||
code = 500,
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while modifying the current enrollment of the device.")
|
||||
"Server error occurred while dis-enrolling the device.")
|
||||
})
|
||||
Response modifyEnrollment(@ApiParam(name = "id", value = "Device Identifier") @PathParam("id") String id,
|
||||
@ApiParam(name = "device", value = "Device information to be modify") Device device);
|
||||
|
||||
@DELETE
|
||||
@Path("/{id}")
|
||||
@ApiOperation(
|
||||
httpMethod = "DELETE",
|
||||
value = "Un-registering an Android Device",
|
||||
notes = "Use this REST API to un-register a specific Android device",
|
||||
tags = "Android Device Management"
|
||||
)
|
||||
@ApiResponses(value = {
|
||||
@ApiResponse(code = 200, message = "OK. \n Device has successfully been dis-enrolled"),
|
||||
@ApiResponse(code = 404, message = "Not Found. \n Device requested to be dis-enrolled does not exist."),
|
||||
@ApiResponse(code = 500, message = "Internal Server Error. \n " +
|
||||
"Server error occurred while dis-enrolling the the device."),
|
||||
})
|
||||
Response disEnrollDevice(@ApiParam(name = "id", value = "Device Identifier") @PathParam("id") String id);
|
||||
Response disEnrollDevice(
|
||||
@ApiParam(
|
||||
name = "id",
|
||||
value = "Device Identifier")
|
||||
@PathParam("id") String id);
|
||||
|
||||
}
|
||||
|
||||
@ -33,28 +33,9 @@ import javax.ws.rs.core.Response;
|
||||
@Consumes(MediaType.APPLICATION_JSON)
|
||||
public interface DeviceTypeConfigurationService {
|
||||
|
||||
@POST
|
||||
@ApiOperation(
|
||||
consumes = MediaType.APPLICATION_JSON,
|
||||
httpMethod = "POST",
|
||||
value = "Configuring Android platform settings.",
|
||||
notes = "Configure the Android platform settings using this REST API.",
|
||||
tags = "Android Configuration Management"
|
||||
)
|
||||
@ApiResponses(value = {
|
||||
@ApiResponse(code = 201, message = "Created. \n Android platform configuration saved successfully",
|
||||
responseHeaders = {
|
||||
@ResponseHeader(name = "Location", description = "URL of the configuration added.")
|
||||
}),
|
||||
@ApiResponse(code = 400, message = "Bad Request. \n Invalid request or validation error."),
|
||||
@ApiResponse(code = 500, message = "Internal Server Error. \n" +
|
||||
" Error occurred while saving configurations for the android platform.")
|
||||
})
|
||||
Response addConfiguration(@ApiParam(name = "configuration",
|
||||
value = "Android platform related configurations that must be added.")
|
||||
PlatformConfiguration configuration);
|
||||
@GET
|
||||
@ApiOperation(
|
||||
produces = MediaType.APPLICATION_JSON,
|
||||
httpMethod = "GET",
|
||||
value = "Getting Android Platform Configurations",
|
||||
notes = "Get the Android platform configuration details using this REST API",
|
||||
@ -62,18 +43,42 @@ public interface DeviceTypeConfigurationService {
|
||||
tags = "Android Configuration Management"
|
||||
)
|
||||
@ApiResponses(value = {
|
||||
@ApiResponse(code = 200, message = "Get Android Configuration."),
|
||||
@ApiResponse(code = 303, message = "See Other. \n " +
|
||||
"Source can be retrieved from the URL specified at the Location header.",
|
||||
@ApiResponse(
|
||||
code = 200,
|
||||
message = "OK. \n Successfully fetched Android platform configuration.",
|
||||
response = PlatformConfiguration.class,
|
||||
responseHeaders = {
|
||||
@ResponseHeader(name = "Location", description = "The Source URL of the document.")}),
|
||||
@ApiResponse(code = 304, message = "Not Modified. \n " +
|
||||
"Empty body because the client already has the latest version of the requested resource."),
|
||||
@ApiResponse(code = 404, message = "Not Found. \n Resource requested does not exist."),
|
||||
@ApiResponse(code = 500, message = "Internal Server Error. \n Error occurred while fetching " +
|
||||
"configuration settings of Android platform.")
|
||||
@ResponseHeader(
|
||||
name = "Content-Type",
|
||||
description = "Content type of the body"),
|
||||
@ResponseHeader(
|
||||
name = "ETag",
|
||||
description = "Entity Tag of the response resource.\n" +
|
||||
"Used by caches, or in conditional requests."),
|
||||
@ResponseHeader(
|
||||
name = "Last-Modified",
|
||||
description = "Date and time the resource has been modified the last time.\n" +
|
||||
"Used by caches, or in conditional requests."),
|
||||
}),
|
||||
@ApiResponse(
|
||||
code = 304,
|
||||
message = "Not Modified. \n Empty body because the client has already the latest version of the requested resource."),
|
||||
@ApiResponse(
|
||||
code = 404,
|
||||
message = "Not Found. \n Resource to be deleted does not exist."),
|
||||
@ApiResponse(
|
||||
code = 406,
|
||||
message = "Not Acceptable.\n The requested media type is not supported"),
|
||||
@ApiResponse(
|
||||
code = 500,
|
||||
message = "Internal Server Error. \n Server error occurred while fetching Android platform configuration.")
|
||||
})
|
||||
Response getConfiguration() throws AndroidAgentException;
|
||||
Response getConfiguration(
|
||||
@ApiParam(
|
||||
name = "If-Modified-Since",
|
||||
value = "Validates if the requested variant has not been modified since the time specified",
|
||||
required = false)
|
||||
@HeaderParam("If-Modified-Since") String ifModifiedSince);
|
||||
|
||||
@PUT
|
||||
@ApiOperation(
|
||||
@ -85,20 +90,48 @@ public interface DeviceTypeConfigurationService {
|
||||
tags = "Android Configuration Management"
|
||||
)
|
||||
@ApiResponses(value = {
|
||||
@ApiResponse(code = 200, message = "Created. \n Configurations was updated successfully."),
|
||||
@ApiResponse(code = 400, message = "Bad Request. \n Invalid request or validation error."),
|
||||
@ApiResponse(code = 404, message = "Not Found. \n Resource to be changed does not exist."),
|
||||
@ApiResponse(code = 500, message = "Internal Server Error. \n Error occurred while modifying " +
|
||||
"configuration settings of Android platform.")
|
||||
@ApiResponse(
|
||||
code = 200,
|
||||
message = "OK. \n Android platform configuration has been updated successfully",
|
||||
responseHeaders = {
|
||||
@ResponseHeader(
|
||||
name = "Content-Location",
|
||||
description = "URL of the updated Android platform configuration."),
|
||||
@ResponseHeader(
|
||||
name = "Content-Type",
|
||||
description = "Content type of the body"),
|
||||
@ResponseHeader(
|
||||
name = "ETag",
|
||||
description = "Entity Tag of the response resource.\n" +
|
||||
"Used by caches, or in conditional requests."),
|
||||
@ResponseHeader(
|
||||
name = "Last-Modified",
|
||||
description = "Date and time the resource has been modified the last time.\n" +
|
||||
"Used by caches, or in conditional requests.")}),
|
||||
@ApiResponse(
|
||||
code = 400,
|
||||
message = "Bad Request. \n Invalid request or validation error."),
|
||||
@ApiResponse(
|
||||
code = 404,
|
||||
message = "Not Found. \n Resource to be deleted does not exist."),
|
||||
@ApiResponse(
|
||||
code = 415,
|
||||
message = "Unsupported media type. \n The entity of the request was in a not supported format."),
|
||||
@ApiResponse(
|
||||
code = 500,
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while modifying Android platform configuration.")
|
||||
})
|
||||
Response updateConfiguration(@ApiParam(name = "configuration", value = "AndroidPlatformConfiguration")
|
||||
PlatformConfiguration configuration) throws AndroidAgentException;
|
||||
Response updateConfiguration(
|
||||
@ApiParam(name = "configuration",
|
||||
value = "AndroidPlatformConfiguration")
|
||||
PlatformConfiguration configuration);
|
||||
|
||||
@GET
|
||||
@Path("license")
|
||||
@Produces("text/plain")
|
||||
@Produces(MediaType.TEXT_PLAIN)
|
||||
@ApiOperation(
|
||||
produces = MediaType.APPLICATION_JSON,
|
||||
produces = MediaType.TEXT_PLAIN,
|
||||
httpMethod = "GET",
|
||||
value = "Getting the License Agreement for Android Device Registration",
|
||||
notes = "Use this REST API to retrieve the license agreement that is used for the Android device " +
|
||||
@ -106,10 +139,41 @@ public interface DeviceTypeConfigurationService {
|
||||
response = String.class,
|
||||
tags = "Android Configuration Management")
|
||||
@ApiResponses(value = {
|
||||
@ApiResponse(code = 200, message = "Licence agreement"),
|
||||
@ApiResponse(code = 500, message = "Error occurred while retrieving the license configured for Android " +
|
||||
"device enrolment")
|
||||
@ApiResponse(
|
||||
code = 200,
|
||||
message = "OK. \n Successfully fetched Android license configuration.",
|
||||
response = PlatformConfiguration.class,
|
||||
responseHeaders = {
|
||||
@ResponseHeader(
|
||||
name = "Content-Type",
|
||||
description = "Content type of the body"),
|
||||
@ResponseHeader(
|
||||
name = "ETag",
|
||||
description = "Entity Tag of the response resource.\n" +
|
||||
"Used by caches, or in conditional requests."),
|
||||
@ResponseHeader(
|
||||
name = "Last-Modified",
|
||||
description = "Date and time the resource has been modified the last time.\n" +
|
||||
"Used by caches, or in conditional requests."),
|
||||
}),
|
||||
@ApiResponse(
|
||||
code = 304,
|
||||
message = "Not Modified. \n Empty body because the client has already the latest version of the requested resource."),
|
||||
@ApiResponse(
|
||||
code = 404,
|
||||
message = "Not Found. \n Resource to be deleted does not exist."),
|
||||
@ApiResponse(
|
||||
code = 406,
|
||||
message = "Not Acceptable.\n The requested media type is not supported"),
|
||||
@ApiResponse(
|
||||
code = 500,
|
||||
message = "Internal Server Error. \n Server error occurred while fetching Android license configuration.")
|
||||
})
|
||||
Response getLicense() throws AndroidAgentException;
|
||||
Response getLicense(
|
||||
@ApiParam(
|
||||
name = "If-Modified-Since",
|
||||
value = "Validates if the requested variant has not been modified since the time specified",
|
||||
required = false)
|
||||
@HeaderParam("If-Modified-Since") String ifModifiedSince) throws AndroidAgentException;
|
||||
|
||||
}
|
||||
|
||||
@ -35,24 +35,55 @@ public interface EventReceiverService {
|
||||
@POST
|
||||
@Path("/publish")
|
||||
@ApiOperation(
|
||||
produces = MediaType.APPLICATION_JSON,
|
||||
consumes = MediaType.APPLICATION_JSON,
|
||||
httpMethod = "POST",
|
||||
value = "Event publishing via REST API.",
|
||||
notes = "Publish events received by the EMM Android client to WSO2 DAS using this API.",
|
||||
tags = "Event Receiver"
|
||||
)
|
||||
@ApiResponses(value = {
|
||||
@ApiResponse(code = 201, message = "Created. \n Event is published successfully. Location header " +
|
||||
"contains URL of newly enrolled device",
|
||||
responseHeaders = {
|
||||
@ResponseHeader(name = "Location", description = "URL of the newly published event.")
|
||||
}),
|
||||
@ApiResponse(code = 400, message = "Bad Request. \n Invalid request or validation error."),
|
||||
@ApiResponse(code = 500, message = "Internal Server Error. \n" +
|
||||
" Error occurred while publishing the events from Android agent.")
|
||||
})
|
||||
@ApiResponses(
|
||||
value = {
|
||||
@ApiResponse(code = 201, message = "Created. \n Event is published successfully. Location header " +
|
||||
"contains URL of newly enrolled device",
|
||||
responseHeaders = {
|
||||
@ResponseHeader(
|
||||
name = "Content-Location",
|
||||
description = "The URL of the added policy."),
|
||||
@ResponseHeader(
|
||||
name = "Content-Type",
|
||||
description = "The content type of the body"),
|
||||
@ResponseHeader(
|
||||
name = "ETag",
|
||||
description = "Entity Tag of the response resource.\n" +
|
||||
"Used by caches, or in conditional requests."),
|
||||
@ResponseHeader(
|
||||
name = "Last-Modified",
|
||||
description = "Date and time the resource has been modified the last time.\n" +
|
||||
"Used by caches, or in conditional requests.")
|
||||
}),
|
||||
@ApiResponse(
|
||||
code = 303,
|
||||
message = "See Other. \n Source can be retrieved from the URL specified at the Location header.",
|
||||
responseHeaders = {
|
||||
@ResponseHeader(
|
||||
name = "Content-Location",
|
||||
description = "The Source URL of the document.")}),
|
||||
@ApiResponse(
|
||||
code = 400,
|
||||
message = "Bad Request. \n Invalid request or validation error."),
|
||||
@ApiResponse(
|
||||
code = 415,
|
||||
message = "Unsupported media type. \n The entity of the request was in a not supported format."),
|
||||
@ApiResponse(
|
||||
code = 500,
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while publishing events.")
|
||||
})
|
||||
Response publishEvents(
|
||||
@ApiParam(name = "eventBeanWrapper", value = "Information of the agent event to be published on DAS.")
|
||||
@ApiParam(
|
||||
name = "eventBeanWrapper",
|
||||
value = "Information of the agent event to be published on DAS.")
|
||||
EventBeanWrapper eventBeanWrapper);
|
||||
|
||||
@GET
|
||||
@ -68,30 +99,57 @@ public interface EventReceiverService {
|
||||
responseContainer = "List",
|
||||
tags = "Event Receiver"
|
||||
)
|
||||
@ApiResponses(value = {
|
||||
@ApiResponse(code = 200, message = "Created \n Event details of a device for a given time duration",
|
||||
response = DeviceState.class, responseContainer = "List"),
|
||||
@ApiResponse(code = 303, message = "See Other. \n Source can be retrieved from the URL specified at" +
|
||||
" the Location header.",
|
||||
responseHeaders = {
|
||||
@ResponseHeader(name = "Location", description = "The Source URL of the document.")
|
||||
}),
|
||||
@ApiResponse(code = 304, message = "Not Modified. \n " +
|
||||
"Empty body because the client already has the latest version of the requested resource."),
|
||||
@ApiResponse(code = 400, message = "Bad Request. \n Invalid request or validation error. You must provide" +
|
||||
" the device identifier. Additionally, the device identifier can be combined with either the type" +
|
||||
" OR date from and to."),
|
||||
@ApiResponse(code = 404, message = "Not Found. \n Resource requested does not exist."),
|
||||
@ApiResponse(code = 500, message = "Error occurred while getting published events for specific device.")
|
||||
})
|
||||
@ApiResponses(
|
||||
value = {
|
||||
@ApiResponse(
|
||||
code = 200,
|
||||
message = "OK. \n Event details of a device for a given time duration have been successfully fetched",
|
||||
response = DeviceState.class, responseContainer = "List"),
|
||||
@ApiResponse(
|
||||
code = 303,
|
||||
message = "See Other. \n Source can be retrieved from the URL specified at" +
|
||||
" the Location header.",
|
||||
responseHeaders = {
|
||||
@ResponseHeader(name = "Content-Location", description = "Source URL of the document.")
|
||||
}),
|
||||
@ApiResponse(
|
||||
code = 304,
|
||||
message = "Not Modified. \n " +
|
||||
"Empty body because the client already has the latest version of the requested resource."),
|
||||
@ApiResponse(
|
||||
code = 400,
|
||||
message = "Bad Request. \n Invalid request or validation error. You must provide" +
|
||||
" the device identifier. Additionally, the device identifier can be combined with either the type" +
|
||||
" OR date from and to."),
|
||||
@ApiResponse(
|
||||
code = 404,
|
||||
message = "Not Found. \n Resource requested does not exist."),
|
||||
@ApiResponse(
|
||||
code = 500,
|
||||
message = "Error occurred while getting published events for specific device.")
|
||||
})
|
||||
Response retrieveAlerts(
|
||||
@ApiParam(name = "id", value = "Device Identifier to be need to retrieve events.", required = true)
|
||||
@ApiParam(
|
||||
name = "id",
|
||||
value = "Device Identifier to be need to retrieve events.",
|
||||
required = true)
|
||||
@QueryParam("id") String deviceId,
|
||||
@ApiParam(name = "from", value = "From Date.")
|
||||
@ApiParam(
|
||||
name = "from",
|
||||
value = "From Date.")
|
||||
@QueryParam("from") long from,
|
||||
@ApiParam(name = "to", value = "To Date.")
|
||||
@ApiParam(
|
||||
name = "to",
|
||||
value = "To Date.")
|
||||
@QueryParam("to") long to,
|
||||
@ApiParam(name = "type", value = "Type of the Alert to be need to retrieve events.")
|
||||
@QueryParam("type") String type);
|
||||
@ApiParam(
|
||||
name = "type",
|
||||
value = "Type of the Alert to be need to retrieve events.")
|
||||
@QueryParam("type") String type,
|
||||
@ApiParam(
|
||||
name = "If-Modified-Since",
|
||||
value = "Validates if the requested variant has not been modified since the time specified",
|
||||
required = false)
|
||||
@HeaderParam("If-Modified-Since") String ifModifiedSince);
|
||||
|
||||
}
|
||||
|
||||
@ -76,7 +76,9 @@ public class DeviceManagementServiceImpl implements DeviceManagementService {
|
||||
@PUT
|
||||
@Path("/{id}/pending-operations")
|
||||
@Override
|
||||
public Response getPendingOperations(@PathParam("id") String id, List<? extends Operation> resultOperations) {
|
||||
public Response getPendingOperations(@PathParam("id") String id,
|
||||
@HeaderParam("If-Modified-Since") String ifModifiedSince,
|
||||
List<? extends Operation> resultOperations) {
|
||||
if (id == null || id.isEmpty()) {
|
||||
String msg = "Device identifier is null or empty, hence returning device not found";
|
||||
log.error(msg);
|
||||
@ -189,7 +191,7 @@ public class DeviceManagementServiceImpl implements DeviceManagementService {
|
||||
@GET
|
||||
@Path("/{id}/status")
|
||||
@Override
|
||||
public Response isEnrolled(@PathParam("id") String id) {
|
||||
public Response isEnrolled(@PathParam("id") String id, @HeaderParam("If-Modified-Since") String ifModifiedSince) {
|
||||
boolean result;
|
||||
DeviceIdentifier deviceIdentifier = AndroidAPIUtils.convertToDeviceIdentifierObject(id);
|
||||
try {
|
||||
|
||||
@ -43,51 +43,13 @@ import java.util.List;
|
||||
public class DeviceTypeConfigurationServiceImpl implements DeviceTypeConfigurationService {
|
||||
|
||||
private static final Log log = LogFactory.getLog(DeviceTypeConfigurationServiceImpl.class);
|
||||
|
||||
@POST
|
||||
@Override
|
||||
public Response addConfiguration(PlatformConfiguration configuration){
|
||||
Message responseMsg = new Message();
|
||||
String msg;
|
||||
ConfigurationEntry licenseEntry = null;
|
||||
try {
|
||||
configuration.setType(DeviceManagementConstants.MobileDeviceTypes.MOBILE_DEVICE_TYPE_ANDROID);
|
||||
List<ConfigurationEntry> configs = configuration.getConfiguration();
|
||||
for (ConfigurationEntry entry : configs) {
|
||||
if (AndroidConstants.TenantConfigProperties.LICENSE_KEY.equals(entry.getName())) {
|
||||
License license = new License();
|
||||
license.setName(DeviceManagementConstants.MobileDeviceTypes.MOBILE_DEVICE_TYPE_ANDROID);
|
||||
license.setLanguage(AndroidConstants.TenantConfigProperties.LANGUAGE_US);
|
||||
license.setVersion("1.0.0");
|
||||
license.setText(entry.getValue().toString());
|
||||
AndroidAPIUtils.getDeviceManagementService().addLicense(DeviceManagementConstants.
|
||||
MobileDeviceTypes.MOBILE_DEVICE_TYPE_ANDROID, license);
|
||||
licenseEntry = entry;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (licenseEntry != null) {
|
||||
configs.remove(licenseEntry);
|
||||
}
|
||||
configuration.setConfiguration(configs);
|
||||
AndroidAPIUtils.getDeviceManagementService().saveConfiguration(configuration);
|
||||
Response.status(Response.Status.CREATED);
|
||||
responseMsg.setResponseMessage("Android platform configuration saved successfully.");
|
||||
responseMsg.setResponseCode(Response.Status.CREATED.toString());
|
||||
} catch (DeviceManagementException e) {
|
||||
msg = "Error occurred while configuring the android platform";
|
||||
log.error(msg, e);
|
||||
return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build();
|
||||
}
|
||||
return Response.status(Response.Status.CREATED).entity(responseMsg).build();
|
||||
}
|
||||
|
||||
@GET
|
||||
@Override
|
||||
public Response getConfiguration() throws AndroidAgentException {
|
||||
public Response getConfiguration(
|
||||
@HeaderParam("If-Modified-Since") String ifModifiedSince) {
|
||||
String msg;
|
||||
PlatformConfiguration PlatformConfiguration = null;
|
||||
PlatformConfiguration PlatformConfiguration;
|
||||
List<ConfigurationEntry> configs;
|
||||
try {
|
||||
PlatformConfiguration = AndroidAPIUtils.getDeviceManagementService().
|
||||
@ -121,7 +83,7 @@ public class DeviceTypeConfigurationServiceImpl implements DeviceTypeConfigurati
|
||||
|
||||
@PUT
|
||||
@Override
|
||||
public Response updateConfiguration(PlatformConfiguration configuration) throws AndroidAgentException {
|
||||
public Response updateConfiguration(PlatformConfiguration configuration) {
|
||||
String msg;
|
||||
Message responseMsg = new Message();
|
||||
ConfigurationEntry licenseEntry = null;
|
||||
@ -161,9 +123,10 @@ public class DeviceTypeConfigurationServiceImpl implements DeviceTypeConfigurati
|
||||
|
||||
@GET
|
||||
@Path("license")
|
||||
@Produces("text/plain")
|
||||
public Response getLicense() throws AndroidAgentException {
|
||||
License license = null;
|
||||
@Produces(MediaType.TEXT_PLAIN)
|
||||
public Response getLicense(
|
||||
@HeaderParam("If-Modified-Since") String ifModifiedSince) {
|
||||
License license;
|
||||
|
||||
try {
|
||||
license =
|
||||
|
||||
@ -71,10 +71,11 @@ public class EventReceiverServiceImpl implements EventReceiverService {
|
||||
|
||||
@GET
|
||||
@Override
|
||||
public Response retrieveAlerts(@QueryParam("id") String deviceId, @QueryParam ("from") long from,
|
||||
@QueryParam ("to") long to, @QueryParam("type") String type) {
|
||||
public Response retrieveAlerts(@QueryParam("id") String deviceId, @QueryParam("from") long from,
|
||||
@QueryParam("to") long to, @QueryParam("type") String type,
|
||||
@HeaderParam("If-Modified-Since") String ifModifiedSince) {
|
||||
|
||||
if(from != 0l && to != 0l && deviceId != null) {
|
||||
if (from != 0l && to != 0l && deviceId != null) {
|
||||
return retrieveAlertFromDate(deviceId, from, to);
|
||||
} else if (deviceId != null && type != null) {
|
||||
return retrieveAlertByType(deviceId, type);
|
||||
|
||||
@ -45,7 +45,7 @@
|
||||
<property name="resourcePackage" value="org.wso2.carbon.mdm.services.android.services"/>
|
||||
<property name="version" value="1.0"/>
|
||||
<property name="host" value="device-mgt.wso2.com"/>
|
||||
<property name="basePath" value="/device-mgt/android/v1.0"/>
|
||||
<property name="basePath" value="api/device-mgt/android/v1.0"/>
|
||||
<property name="title" value="Android Device Management API Definitions"/>
|
||||
<property name="contact" value="dev@wso2.org"/>
|
||||
<property name="license" value="Apache 2.0"/>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user