in aws-rds-dbproxytargetgroup/src/main/java/software/amazon/rds/dbproxytargetgroup/UpdateHandler.java [134:161]
private DBProxyTargetGroup modifyProxyTargetGroup(ResourceModel oldModel, ResourceModel newModel) {
if (oldModel.equals(newModel)) {
return new DBProxyTargetGroup();
}
ConnectionPoolConfigurationInfoFormat modelConnectionPoolConfig = newModel.getConnectionPoolConfigurationInfo();
if (modelConnectionPoolConfig == null) {
DescribeDBProxyTargetGroupsRequest describeRequest = new DescribeDBProxyTargetGroupsRequest()
.withDBProxyName(newModel.getDBProxyName())
.withTargetGroupName(newModel.getTargetGroupName());
return clientProxy.injectCredentialsAndInvoke(describeRequest, rdsClient::describeDBProxyTargetGroups).getTargetGroups().get(0);
}
ConnectionPoolConfiguration connectionPoolConfiguration =
new ConnectionPoolConfiguration()
.withMaxConnectionsPercent(modelConnectionPoolConfig.getMaxConnectionsPercent())
.withMaxIdleConnectionsPercent(modelConnectionPoolConfig.getMaxIdleConnectionsPercent())
.withConnectionBorrowTimeout(modelConnectionPoolConfig.getConnectionBorrowTimeout())
.withSessionPinningFilters(modelConnectionPoolConfig.getSessionPinningFilters())
.withInitQuery(modelConnectionPoolConfig.getInitQuery());
ModifyDBProxyTargetGroupRequest request = new ModifyDBProxyTargetGroupRequest()
.withDBProxyName(newModel.getDBProxyName())
.withTargetGroupName(newModel.getTargetGroupName())
.withConnectionPoolConfig(connectionPoolConfiguration);
return clientProxy.injectCredentialsAndInvoke(request, rdsClient::modifyDBProxyTargetGroup).getDBProxyTargetGroup();
}