Integer allocationRetry = getIntIfSetOrGetDefault(context, operation, ALLOCATION_RETRY, null);
Long allocationRetryWaitMillis = getLongIfSetOrGetDefault(context, operation, ALLOCATION_RETRY_WAIT_MILLIS, null);
Long blockingTimeoutMillis = getLongIfSetOrGetDefault(context, operation, BLOCKING_TIMEOUT_WAIT_MILLIS, null);
Long idleTimeoutMinutes = getLongIfSetOrGetDefault(context, operation, IDLETIMEOUTMINUTES, null);
Integer xaResourceTimeout = getIntIfSetOrGetDefault(context, operation, XA_RESOURCE_TIMEOUT, null);
CommonTimeOut timeOut = new CommonTimeOutImpl(blockingTimeoutMillis, idleTimeoutMinutes, allocationRetry,
allocationRetryWaitMillis, xaResourceTimeout);
CommonPool pool = new CommonPoolImpl(minPoolSize, maxPoolSize, prefill, useStrictMin, flushStrategy);
String securityDomain = getResolvedStringIfSetOrGetDefault(context, operation, SECURITY_DOMAIN.getName(), null);
String securityDomainAndApplication = getResolvedStringIfSetOrGetDefault(context, operation, SECURITY_DOMAIN_AND_APPLICATION.getName(),