private TenantDetails updateTenant()

in services/shared-services/tenant-registration-service/src/main/java/com/amazonaws/saas/eks/TenantRegistrationService.java [552:601]


	private TenantDetails updateTenant(TenantDetails tenant) {
		String tenantId = "";
		String companyName = tenant.getCompanyName();

		if (companyName != null && companyName != "") {
			tenantId = generateTenantId(companyName);
			tenant.setTenantId(tenantId);
		} else {
			logger.error("Company Name is empty or null");
			return null;
		}

		AmazonDynamoDB client = AmazonDynamoDBClientBuilder.standard().build();
		DynamoDB dynamoDB = new DynamoDB(client);

		Table table = dynamoDB.getTable(TENANT);

		UpdateItemSpec updateItemSpec = new UpdateItemSpec().withPrimaryKey("TENANT_ID", tenant.getTenantId())
				.withUpdateExpression(
						"set AUTH_SERVER = :p1, AUTH_CLIENT_ID=:p2, AUTH_REDIRECT_URI=:p3, AUTH_SR_REDIRECT_URI=:p4, AUTH_USE_SR=:p5, AUTH_SR_TIMEOUT=:p6, AUTH_TIMEOUT_FACTOR=:p7, AUTH_SESSION_CHECKS_ENABLED=:p8, AUTH_SHOW_DEBUG_INFO=:p9, AUTH_CLEAR_HASH_AFTER_LOGIN=:p10, COGNITO_DOMAIN=:p11")
				.withValueMap(new ValueMap()
						.withString(":p1", tenant.getAuthServer())
						.withString(":p2", tenant.getClientId())
						.withString(":p3", tenant.getRedirectUrl())
						.withString(":p4", tenant.getSilentRefreshRedirectUri())
						.withBoolean(":p5", true)
						.withNumber(":p6", 5000)
						.withNumber(":p7", 0.25)
						.withBoolean(":p8", true)
						.withBoolean(":p9", true)
						.withBoolean(":p10", false)
						.withString(":p11", tenant.getCognitoDomain()))
				.withReturnValues(ReturnValue.UPDATED_NEW);

            try {
                logger.info("Updating the item...");
                UpdateItemOutcome outcome = table.updateItem(updateItemSpec);
                logger.info("UpdateItem succeeded: " + outcome.getItem().toJSONPretty());

            }
            catch (Exception e) {
                logger.error("Unable to update item: ");
                logger.error(e.getMessage());
            }
            
		logger.info(
				"Tenant Registration Complete! Calling CodePipeline to provision tenant application's backend EKS services");

		return tenant;
	}