From 9daa51652f28066534d42046961990e15b490562 Mon Sep 17 00:00:00 2001 From: Abyss777 Date: Wed, 20 Sep 2017 13:26:21 +0500 Subject: Move Commandtypes API to Commands --- src/org/traccar/api/resource/CommandResource.java | 12 +++++ .../traccar/api/resource/CommandTypeResource.java | 47 ---------------- swagger.json | 62 +++++++++++----------- 3 files changed, 43 insertions(+), 78 deletions(-) delete mode 100644 src/org/traccar/api/resource/CommandTypeResource.java diff --git a/src/org/traccar/api/resource/CommandResource.java b/src/org/traccar/api/resource/CommandResource.java index 6a258497f..7300840f0 100644 --- a/src/org/traccar/api/resource/CommandResource.java +++ b/src/org/traccar/api/resource/CommandResource.java @@ -19,6 +19,7 @@ import org.traccar.Context; import org.traccar.api.ExtendedObjectResource; import org.traccar.database.CommandsManager; import org.traccar.model.Command; +import org.traccar.model.Typed; import java.sql.SQLException; import java.util.Collection; @@ -72,4 +73,15 @@ public class CommandResource extends ExtendedObjectResource { return Response.ok(entity).build(); } + @GET + @Path("types") + public Collection get(@QueryParam("deviceId") long deviceId, + @QueryParam("textChannel") boolean textChannel) { + if (deviceId != 0) { + Context.getPermissionsManager().checkDevice(getUserId(), deviceId); + return Context.getCommandsManager().getCommandTypes(deviceId, textChannel); + } else { + return Context.getCommandsManager().getAllCommandTypes(); + } + } } diff --git a/src/org/traccar/api/resource/CommandTypeResource.java b/src/org/traccar/api/resource/CommandTypeResource.java deleted file mode 100644 index 0a904bd8a..000000000 --- a/src/org/traccar/api/resource/CommandTypeResource.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright 2016 Gabor Somogyi (gabor.g.somogyi@gmail.com) - * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org) - * - * 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. - */ -package org.traccar.api.resource; - -import org.traccar.Context; -import org.traccar.api.BaseResource; -import org.traccar.model.Typed; - -import javax.ws.rs.Consumes; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.MediaType; -import java.util.Collection; - -@Path("commandtypes") -@Produces(MediaType.APPLICATION_JSON) -@Consumes(MediaType.APPLICATION_JSON) -public class CommandTypeResource extends BaseResource { - - @GET - public Collection get(@QueryParam("deviceId") long deviceId, - @QueryParam("textChannel") boolean textChannel) { - if (deviceId != 0) { - Context.getPermissionsManager().checkDevice(getUserId(), deviceId); - return Context.getCommandsManager().getCommandTypes(deviceId, textChannel); - } else { - return Context.getCommandsManager().getAllCommandTypes(); - } - } - -} diff --git a/swagger.json b/swagger.json index 5f9abb9b8..120544798 100644 --- a/swagger.json +++ b/swagger.json @@ -155,6 +155,37 @@ } } }, + "/commands/types": { + "get": { + "summary": "Fetch a list of available Commands for the Device or all possible Commands if Device ommited", + "parameters": [ + { + "name": "deviceId", + "in": "query", + "type": "integer" + }, + { + "name": "textChannel", + "in": "query", + "type": "boolean" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/CommandType" + } + } + }, + "400": { + "description": "Could happen when trying to fetch from a device the user does not have permission" + } + } + } + }, "/devices": { "get": { "summary": "Fetch a list of Devices", @@ -742,37 +773,6 @@ } } }, - "/commandtypes": { - "get": { - "summary": "Fetch a list of available Commands for the Device or all possible Commands if Device ommited", - "parameters": [ - { - "name": "deviceId", - "in": "query", - "type": "integer" - }, - { - "name": "textChannel", - "in": "query", - "type": "boolean" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "type": "array", - "items": { - "$ref": "#/definitions/CommandType" - } - } - }, - "400": { - "description": "Could happen when trying to fetch from a device the user does not have permission" - } - } - } - }, "/geofences": { "get": { "summary": "Fetch a list of Geofences", -- cgit v1.2.3