override fun handleRequest()

in aws-iotcoredeviceadvisor-suitedefinition/src/main/kotlin/software/amazon/iotcoredeviceadvisor/suitedefinition/CreateHandler.kt [16:38]


    override fun handleRequest(
        proxy: AmazonWebServicesClientProxy,
        request: ResourceHandlerRequest<ResourceModel>,
        callbackContext: CallbackContext?,
        logger: Logger
    ): ProgressEvent<ResourceModel, CallbackContext?> {
        logger.log("Create SuiteDefinition Request: $request")
        val deviceAdvisorClient = getDeviceAdvisorClient()
        val model = request.desiredResourceState
        return try {
            logger.log("Creating new SuiteDefinition with model: $model")
            val createSuiteDefinitionResponse: CreateSuiteDefinitionResponse = proxy.injectCredentialsAndInvokeV2(
                convertToCreateSuiteDefinitionRequest(
                    model
                ), deviceAdvisorClient::createSuiteDefinition
            )
            model.suiteDefinitionId = createSuiteDefinitionResponse.suiteDefinitionId()

            ProgressEvent.defaultSuccessHandler(model)
        } catch (e: Exception) {
            handleDeviceAdvisorException(e)
        }
    }