From 0a7f77b8cb2ed308c8f5e8cbf79d769bc3324c06 Mon Sep 17 00:00:00 2001 From: Iván Ávalos Date: Fri, 3 Dec 2021 21:49:03 -0600 Subject: Added Swagger auto-generated API client (no Ktor yet) --- .../TrackerMap/client/apis/NotificationsApi.kt | 174 +++++++++++++++++++++ 1 file changed, 174 insertions(+) create mode 100644 shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/client/apis/NotificationsApi.kt (limited to 'shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/client/apis/NotificationsApi.kt') diff --git a/shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/client/apis/NotificationsApi.kt b/shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/client/apis/NotificationsApi.kt new file mode 100644 index 0000000..f86d191 --- /dev/null +++ b/shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/client/apis/NotificationsApi.kt @@ -0,0 +1,174 @@ +/** + * Traccar + * Traccar GPS tracking server API documentation. To use the API you need to have a server instance. For testing purposes you can use one of free [demo servers](https://www.traccar.org/demo-server/). For production use you can install your own server or get a [subscription service](https://www.traccar.org/product/tracking-server/). + * + * OpenAPI spec version: 4.14 + * Contact: support@traccar.org + * + * NOTE: This class is auto generated by the swagger code generator program. + * https://github.com/swagger-api/swagger-codegen.git + * Do not edit the class manually. + */ +package mx.trackermap.TrackerMap.client.apis + +import mx.trackermap.TrackerMap.client.models.Notification +import mx.trackermap.TrackerMap.client.models.NotificationType + +import mx.trackermap.TrackerMap.client.infrastructure.* + +class NotificationsApi(basePath: kotlin.String = "https://demo.traccar.org/api") : ApiClient(basePath) { + + /** + * Fetch a list of Notifications + * Without params, it returns a list of Notifications the user has access to + * @param all Can only be used by admins or managers to fetch all entities (optional) + * @param userId Standard users can use this only with their own _userId_ (optional) + * @param deviceId Standard users can use this only with _deviceId_s, they have access to (optional) + * @param groupId Standard users can use this only with _groupId_s, they have access to (optional) + * @param refresh (optional) + * @return kotlin.Array + */ + @Suppress("UNCHECKED_CAST") + fun notificationsGet(all: kotlin.Boolean? = null, userId: kotlin.Int? = null, deviceId: kotlin.Int? = null, groupId: kotlin.Int? = null, refresh: kotlin.Boolean? = null): kotlin.Array { + val localVariableQuery: MultiValueMap = mapOf("all" to listOf("$all"), "userId" to listOf("$userId"), "deviceId" to listOf("$deviceId"), "groupId" to listOf("$groupId"), "refresh" to listOf("$refresh")) + val localVariableConfig = RequestConfig( + RequestMethod.GET, + "/notifications", query = localVariableQuery + ) + val response = request>( + localVariableConfig + ) + + return when (response.responseType) { + ResponseType.Success -> (response as Success<*>).data as kotlin.Array + ResponseType.Informational -> TODO() + ResponseType.Redirection -> TODO() + ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error") + ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error") + } + } + /** + * Delete a Notification + * + * @param id + * @return void + */ + fun notificationsIdDelete(id: kotlin.Int): Unit { + + val localVariableConfig = RequestConfig( + RequestMethod.DELETE, + "/notifications/{id}".replace("{" + "id" + "}", "$id") + ) + val response = request( + localVariableConfig + ) + + return when (response.responseType) { + ResponseType.Success -> Unit + ResponseType.Informational -> TODO() + ResponseType.Redirection -> TODO() + ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error") + ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error") + } + } + /** + * Update a Notification + * + * @param body + * @param id + * @return Notification + */ + @Suppress("UNCHECKED_CAST") + fun notificationsIdPut(body: Notification, id: kotlin.Int): Notification { + val localVariableBody: kotlin.Any? = body + + val localVariableConfig = RequestConfig( + RequestMethod.PUT, + "/notifications/{id}".replace("{" + "id" + "}", "$id") + ) + val response = request( + localVariableConfig, localVariableBody + ) + + return when (response.responseType) { + ResponseType.Success -> (response as Success<*>).data as Notification + ResponseType.Informational -> TODO() + ResponseType.Redirection -> TODO() + ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error") + ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error") + } + } + /** + * Create a Notification + * + * @param body + * @return Notification + */ + @Suppress("UNCHECKED_CAST") + fun notificationsPost(body: Notification): Notification { + val localVariableBody: kotlin.Any? = body + + val localVariableConfig = RequestConfig( + RequestMethod.POST, + "/notifications" + ) + val response = request( + localVariableConfig, localVariableBody + ) + + return when (response.responseType) { + ResponseType.Success -> (response as Success<*>).data as Notification + ResponseType.Informational -> TODO() + ResponseType.Redirection -> TODO() + ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error") + ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error") + } + } + /** + * Send test notification to current user via Email and SMS + * + * @return void + */ + fun notificationsTestPost(): Unit { + + val localVariableConfig = RequestConfig( + RequestMethod.POST, + "/notifications/test" + ) + val response = request( + localVariableConfig + ) + + return when (response.responseType) { + ResponseType.Success -> Unit + ResponseType.Informational -> TODO() + ResponseType.Redirection -> TODO() + ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error") + ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error") + } + } + /** + * Fetch a list of available Notification types + * + * @return kotlin.Array + */ + @Suppress("UNCHECKED_CAST") + fun notificationsTypesGet(): kotlin.Array { + + val localVariableConfig = RequestConfig( + RequestMethod.GET, + "/notifications/types" + ) + val response = request>( + localVariableConfig + ) + + return when (response.responseType) { + ResponseType.Success -> (response as Success<*>).data as kotlin.Array + ResponseType.Informational -> TODO() + ResponseType.Redirection -> TODO() + ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error") + ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error") + } + } +} -- cgit v1.2.3