diff options
author | Singal, Kapil (ks220y) <ks220y@att.com> | 2019-11-22 18:06:08 -0500 |
---|---|---|
committer | KAPIL SINGAL <ks220y@att.com> | 2019-11-26 21:32:38 +0000 |
commit | 341db21b2ac0a14a1ed2b8bf7930914dda054bfe (patch) | |
tree | 113bba965b06cfe3a8af3a0a527d1a41c9faf0f9 /ms/blueprintsprocessor/modules/inbounds/resource-api/src/main | |
parent | d274e5fc552cf9ae25500f504f0434981cf3accf (diff) |
Formatting Code base with ktlint
No Business logic change, just the code format.
Competible with IntelliJ: https://github.com/pinterest/ktlint#option-3
To format run: mvn process-sources -P format
Issue-ID: CCSDK-1947
Signed-off-by: Singal, Kapil (ks220y) <ks220y@att.com>
Change-Id: Ic9e9209fb7023d77f434693ad5a01229f8d09331
Diffstat (limited to 'ms/blueprintsprocessor/modules/inbounds/resource-api/src/main')
3 files changed, 115 insertions, 63 deletions
diff --git a/ms/blueprintsprocessor/modules/inbounds/resource-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/resource/api/ResourceController.kt b/ms/blueprintsprocessor/modules/inbounds/resource-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/resource/api/ResourceController.kt index 3a708a973..b49ca68ed 100644 --- a/ms/blueprintsprocessor/modules/inbounds/resource-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/resource/api/ResourceController.kt +++ b/ms/blueprintsprocessor/modules/inbounds/resource-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/resource/api/ResourceController.kt @@ -27,31 +27,43 @@ import org.onap.ccsdk.cds.controllerblueprints.core.utils.JacksonUtils import org.springframework.http.MediaType import org.springframework.http.ResponseEntity import org.springframework.security.access.prepost.PreAuthorize -import org.springframework.web.bind.annotation.* +import org.springframework.web.bind.annotation.RequestMapping +import org.springframework.web.bind.annotation.RequestMethod +import org.springframework.web.bind.annotation.RequestParam +import org.springframework.web.bind.annotation.ResponseBody +import org.springframework.web.bind.annotation.RestController @RestController @RequestMapping("/api/v1/resources") -@Api(value = "/api/v1/resources", - description = "Interaction with resolved resources.") +@Api( + value = "/api/v1/resources", + description = "Interaction with resolved resources." +) open class ResourceController(private var resourceResolutionDBService: ResourceResolutionDBService) { - @RequestMapping(path = ["/health-check"], + @RequestMapping( + path = ["/health-check"], method = [RequestMethod.GET], - produces = [MediaType.APPLICATION_JSON_VALUE]) + produces = [MediaType.APPLICATION_JSON_VALUE] + ) @ResponseBody @ApiOperation(value = "Health Check", hidden = true) fun resourceControllerHealthCheck(): JsonNode = runBlocking { JacksonUtils.getJsonNode("Success") } - @RequestMapping(path = [""], - method = [RequestMethod.GET], produces = [MediaType.APPLICATION_JSON_VALUE]) - @ApiOperation(value = "Get all resolved resources using the resolution key. ", + @RequestMapping( + path = [""], + method = [RequestMethod.GET], produces = [MediaType.APPLICATION_JSON_VALUE] + ) + @ApiOperation( + value = "Get all resolved resources using the resolution key. ", notes = "Retrieve all stored resolved resources using the blueprint name, blueprint version, " + "artifact name and the resolution-key.", response = ResourceResolution::class, responseContainer = "List", - produces = MediaType.APPLICATION_JSON_VALUE) + produces = MediaType.APPLICATION_JSON_VALUE + ) @ResponseBody @PreAuthorize("hasRole('USER')") fun getAllFromResolutionKeyOrFromResourceTypeAndId( @@ -66,8 +78,9 @@ open class ResourceController(private var resourceResolutionDBService: ResourceR @ApiParam(value = "Resource Type associated with the resolution.", required = false) @RequestParam(value = "resourceType", required = false, defaultValue = "") resourceType: String, @ApiParam(value = "Resource Id associated with the resolution.", required = false) - @RequestParam(value = "resourceId", required = false, defaultValue = "") resourceId: String) - : ResponseEntity<List<ResourceResolution>> = runBlocking { + @RequestParam(value = "resourceId", required = false, defaultValue = "") resourceId: String + ): + ResponseEntity<List<ResourceResolution>> = runBlocking { if ((resolutionKey.isNotEmpty() || artifactName.isNotEmpty()) && (resourceId.isNotEmpty() || resourceType.isNotEmpty())) { throw ResolutionException("Either retrieve resolved value using artifact name and resolution-key OR using resource-id and resource-type.") @@ -76,36 +89,46 @@ open class ResourceController(private var resourceResolutionDBService: ResourceR .body(resourceResolutionDBService.readWithResolutionKey(bpName, bpVersion, artifactName, resolutionKey)) } else if (resourceType.isNotEmpty() && resourceId.isNotEmpty()) { ResponseEntity.ok() - .body(resourceResolutionDBService.readWithResourceIdAndResourceType(bpName, - bpVersion, - resourceId, - resourceType)) + .body( + resourceResolutionDBService.readWithResourceIdAndResourceType( + bpName, + bpVersion, + resourceId, + resourceType + ) + ) } else { throw ResolutionException("Missing param. Either retrieve resolved value using artifact name and resolution-key OR using resource-id and resource-type.") } } - @RequestMapping(path = ["/resource"], + @RequestMapping( + path = ["/resource"], method = [RequestMethod.GET], - produces = [MediaType.APPLICATION_JSON_VALUE]) - @ApiOperation(value = "Fetch a resource value using resolution key.", + produces = [MediaType.APPLICATION_JSON_VALUE] + ) + @ApiOperation( + value = "Fetch a resource value using resolution key.", notes = "Retrieve a stored resource value using the blueprint metadata, artifact name, resolution-key along with the name of the resource value to retrieve.", - produces = MediaType.APPLICATION_JSON_VALUE) + produces = MediaType.APPLICATION_JSON_VALUE + ) @ResponseBody @PreAuthorize("hasRole('USER')") - fun getOneFromResolutionKey(@ApiParam(value = "Name of the CBA.", required = true) - @RequestParam(value = "bpName", required = true) bpName: String, - @ApiParam(value = "Version of the CBA.", required = true) - @RequestParam(value = "bpVersion", required = true) bpVersion: String, - @ApiParam(value = "Artifact name for which to retrieve a resolved resource.", required = true) - @RequestParam(value = "artifactName", required = true) artifactName: String, - @ApiParam(value = "Resolution Key associated with the resolution.", required = true) - @RequestParam(value = "resolutionKey", required = true) resolutionKey: String, - @ApiParam(value = "Name of the resource to retrieve.", required = true) - @RequestParam(value = "name", required = true) name: String) - : ResponseEntity<ResourceResolution> = runBlocking { + fun getOneFromResolutionKey( + @ApiParam(value = "Name of the CBA.", required = true) + @RequestParam(value = "bpName", required = true) bpName: String, + @ApiParam(value = "Version of the CBA.", required = true) + @RequestParam(value = "bpVersion", required = true) bpVersion: String, + @ApiParam(value = "Artifact name for which to retrieve a resolved resource.", required = true) + @RequestParam(value = "artifactName", required = true) artifactName: String, + @ApiParam(value = "Resolution Key associated with the resolution.", required = true) + @RequestParam(value = "resolutionKey", required = true) resolutionKey: String, + @ApiParam(value = "Name of the resource to retrieve.", required = true) + @RequestParam(value = "name", required = true) name: String + ): + ResponseEntity<ResourceResolution> = runBlocking { ResponseEntity.ok() .body(resourceResolutionDBService.readValue(bpName, bpVersion, artifactName, resolutionKey, name)) } -}
\ No newline at end of file +} diff --git a/ms/blueprintsprocessor/modules/inbounds/resource-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/resource/api/ResourceExceptionHandler.kt b/ms/blueprintsprocessor/modules/inbounds/resource-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/resource/api/ResourceExceptionHandler.kt index 42ff8016c..5d5623d4f 100644 --- a/ms/blueprintsprocessor/modules/inbounds/resource-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/resource/api/ResourceExceptionHandler.kt +++ b/ms/blueprintsprocessor/modules/inbounds/resource-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/resource/api/ResourceExceptionHandler.kt @@ -23,16 +23,16 @@ import com.fasterxml.jackson.annotation.JsonTypeName import org.onap.ccsdk.cds.controllerblueprints.core.BluePrintProcessorException import org.onap.ccsdk.cds.controllerblueprints.core.data.ErrorCode import org.slf4j.LoggerFactory +import org.springframework.dao.EmptyResultDataAccessException +import org.springframework.dao.IncorrectResultSizeDataAccessException import org.springframework.http.HttpStatus import org.springframework.http.ResponseEntity import org.springframework.orm.jpa.JpaObjectRetrievalFailureException -import org.springframework.dao.EmptyResultDataAccessException -import org.springframework.dao.IncorrectResultSizeDataAccessException -import org.springframework.web.server.ServerWebInputException import org.springframework.web.bind.annotation.ExceptionHandler import org.springframework.web.bind.annotation.RestControllerAdvice +import org.springframework.web.server.ServerWebInputException import java.io.Serializable -import java.util.* +import java.util.Date /** * Handle exceptions in Resolution API and provide relevant HTTP status codes and messages @@ -86,9 +86,11 @@ open class ResourceExceptionHandler { fun returnError(e: Exception, errorCode: ErrorCode): ResponseEntity<ErrorMessage> { log.error(e.message, e) val errorMessage = - ErrorMessage(errorCode.message(e.message!!), + ErrorMessage( + errorCode.message(e.message!!), errorCode.value, - debugMsg) + debugMsg + ) return ResponseEntity(errorMessage, HttpStatus.resolve(errorCode.httpCode)!!) } @@ -103,6 +105,7 @@ open class ResourceExceptionHandler { @JsonTypeName("errorMessage") @JsonTypeInfo(include = JsonTypeInfo.As.WRAPPER_OBJECT, use = JsonTypeInfo.Id.NAME) class ErrorMessage(var message: String?, var code: Int?, var debugMessage: String?) : Serializable { + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'") var timestamp = Date() -}
\ No newline at end of file +} diff --git a/ms/blueprintsprocessor/modules/inbounds/resource-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/resource/api/TemplateController.kt b/ms/blueprintsprocessor/modules/inbounds/resource-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/resource/api/TemplateController.kt index 93253a554..5913bde1d 100644 --- a/ms/blueprintsprocessor/modules/inbounds/resource-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/resource/api/TemplateController.kt +++ b/ms/blueprintsprocessor/modules/inbounds/resource-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/resource/api/TemplateController.kt @@ -27,7 +27,14 @@ import org.onap.ccsdk.cds.controllerblueprints.core.utils.JacksonUtils import org.springframework.http.MediaType import org.springframework.http.ResponseEntity import org.springframework.security.access.prepost.PreAuthorize -import org.springframework.web.bind.annotation.* +import org.springframework.web.bind.annotation.PathVariable +import org.springframework.web.bind.annotation.PostMapping +import org.springframework.web.bind.annotation.RequestBody +import org.springframework.web.bind.annotation.RequestMapping +import org.springframework.web.bind.annotation.RequestMethod +import org.springframework.web.bind.annotation.RequestParam +import org.springframework.web.bind.annotation.ResponseBody +import org.springframework.web.bind.annotation.RestController /** * Exposes Template Resolution API to store and retrieve rendered template results. @@ -37,26 +44,34 @@ import org.springframework.web.bind.annotation.* */ @RestController @RequestMapping("/api/v1/template") -@Api(value = "/api/v1/template", - description = "Interaction with resolved template.") +@Api( + value = "/api/v1/template", + description = "Interaction with resolved template." +) open class TemplateController(private val templateResolutionService: TemplateResolutionService) { - @RequestMapping(path = ["/health-check"], + @RequestMapping( + path = ["/health-check"], method = [RequestMethod.GET], - produces = [MediaType.APPLICATION_JSON_VALUE]) + produces = [MediaType.APPLICATION_JSON_VALUE] + ) @ResponseBody @ApiOperation(value = "Health Check", hidden = true) fun templateControllerHealthCheck(): JsonNode = runBlocking { JacksonUtils.getJsonNode("Success") } - @RequestMapping(path = [""], + @RequestMapping( + path = [""], method = [RequestMethod.GET], - produces = [MediaType.TEXT_PLAIN_VALUE, MediaType.APPLICATION_JSON_VALUE, MediaType.APPLICATION_XML_VALUE]) - @ApiOperation(value = "Retrieve a resolved template.", + produces = [MediaType.TEXT_PLAIN_VALUE, MediaType.APPLICATION_JSON_VALUE, MediaType.APPLICATION_XML_VALUE] + ) + @ApiOperation( + value = "Retrieve a resolved template.", notes = "Retrieve a config template for a given CBA's action, identified by its blueprint name, blueprint version, " + "artifact name and resolution key. An extra 'format' parameter can be passed to tell what content-type" + - " to expect in return") + " to expect in return" + ) @ResponseBody @PreAuthorize("hasRole('USER')") fun get( @@ -72,11 +87,14 @@ open class TemplateController(private val templateResolutionService: TemplateRes @RequestParam(value = "resourceType", required = false, defaultValue = "") resourceType: String, @ApiParam(value = "Resource Id associated with the resolution.", required = false) @RequestParam(value = "resourceId", required = false, defaultValue = "") resourceId: String, - @ApiParam(value = "Expected format of the template being retrieved.", + @ApiParam( + value = "Expected format of the template being retrieved.", defaultValue = MediaType.TEXT_PLAIN_VALUE, - required = true) - @RequestParam(value = "format", required = false, defaultValue = MediaType.TEXT_PLAIN_VALUE) format: String) - : ResponseEntity<String> = runBlocking { + required = true + ) + @RequestParam(value = "format", required = false, defaultValue = MediaType.TEXT_PLAIN_VALUE) format: String + ): + ResponseEntity<String> = runBlocking { var result = "" @@ -87,7 +105,8 @@ open class TemplateController(private val templateResolutionService: TemplateRes bpName, bpVersion, artifactName, - resolutionKey) + resolutionKey + ) } else if (resourceType.isNotEmpty() && resourceId.isNotEmpty()) { result = templateResolutionService.findByResoureIdAndResourceTypeAndBlueprintNameAndBlueprintVersionAndArtifactName( @@ -95,12 +114,12 @@ open class TemplateController(private val templateResolutionService: TemplateRes bpVersion, artifactName, resourceId, - resourceType) + resourceType + ) } else { throw ResolutionException("Missing param. Either retrieve resolved template using artifact name and resolution-key OR using resource-id and resource-type.") } - var expectedContentType = format if (expectedContentType.indexOf('/') < 0) { expectedContentType = "application/$expectedContentType" @@ -110,13 +129,14 @@ open class TemplateController(private val templateResolutionService: TemplateRes ResponseEntity.ok().contentType(expectedMediaType).body(result) } - @PostMapping("/{bpName}/{bpVersion}/{artifactName}/{resolutionKey}", produces = [MediaType.APPLICATION_JSON_VALUE]) - @ApiOperation(value = "Store a resolved template w/ resolution-key", + @ApiOperation( + value = "Store a resolved template w/ resolution-key", notes = "Store a template for a given CBA's action, identified by its blueprint name, blueprint version, " + "artifact name and resolution key.", response = TemplateResolution::class, - produces = MediaType.APPLICATION_JSON_VALUE) + produces = MediaType.APPLICATION_JSON_VALUE + ) @ResponseBody @PreAuthorize("hasRole('USER')") fun postWithResolutionKey( @@ -129,7 +149,8 @@ open class TemplateController(private val templateResolutionService: TemplateRes @ApiParam(value = "Resolution Key associated with the resolution.", required = true) @PathVariable(value = "resolutionKey") resolutionKey: String, @ApiParam(value = "Template to store.", required = true) - @RequestBody result: String): ResponseEntity<TemplateResolution> = runBlocking { + @RequestBody result: String + ): ResponseEntity<TemplateResolution> = runBlocking { val resultStored = templateResolutionService.write(bpName, bpVersion, artifactName, result, resolutionKey = resolutionKey) @@ -137,13 +158,17 @@ open class TemplateController(private val templateResolutionService: TemplateRes ResponseEntity.ok().body(resultStored) } - @PostMapping("/{bpName}/{bpVersion}/{artifactName}/{resourceType}/{resourceId}", - produces = [MediaType.APPLICATION_JSON_VALUE]) - @ApiOperation(value = "Store a resolved template w/ resourceId and resourceType", + @PostMapping( + "/{bpName}/{bpVersion}/{artifactName}/{resourceType}/{resourceId}", + produces = [MediaType.APPLICATION_JSON_VALUE] + ) + @ApiOperation( + value = "Store a resolved template w/ resourceId and resourceType", notes = "Store a template for a given CBA's action, identified by its blueprint name, blueprint version, " + "artifact name, resourceId and resourceType.", response = TemplateResolution::class, - produces = MediaType.APPLICATION_JSON_VALUE) + produces = MediaType.APPLICATION_JSON_VALUE + ) @ResponseBody @PreAuthorize("hasRole('USER')") fun postWithResourceIdAndResourceType( @@ -158,7 +183,8 @@ open class TemplateController(private val templateResolutionService: TemplateRes @ApiParam(value = "Resource Id associated with the resolution.", required = false) @PathVariable(value = "resourceId", required = true) resourceId: String, @ApiParam(value = "Template to store.", required = true) - @RequestBody result: String): ResponseEntity<TemplateResolution> = runBlocking { + @RequestBody result: String + ): ResponseEntity<TemplateResolution> = runBlocking { val resultStored = templateResolutionService.write(bpName, bpVersion, artifactName, result, resourceId = resourceId, resourceType = resourceType) |