if (other.recovery != null) return false; } else if (!recovery.equals(other.recovery)) return false; if (security == null) {
@Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((className == null) ? 0 : className.hashCode()); result = prime * result + ((configProperties == null) ? 0 : configProperties.hashCode()); result = prime * result + ((enabled == null) ? 0 : enabled.hashCode()); result = prime * result + ((jndiName == null) ? 0 : jndiName.hashCode()); result = prime * result + ((pool == null) ? 0 : pool.hashCode()); result = prime * result + ((poolName == null) ? 0 : poolName.hashCode()); result = prime * result + ((recovery == null) ? 0 : recovery.hashCode()); result = prime * result + ((security == null) ? 0 : security.hashCode()); result = prime * result + ((timeOut == null) ? 0 : timeOut.hashCode()); result = prime * result + ((useJavaContext == null) ? 0 : useJavaContext.hashCode()); result = prime * result + ((useCcm == null) ? 0 : useCcm.hashCode()); result = prime * result + ((validation == null) ? 0 : validation.hashCode()); result = prime * result + ((isXa() == null) ? 0 : isXa().hashCode()); result = prime * result + ((sharable == null) ? 0 : sharable.hashCode()); result = prime * result + ((enlistment == null) ? 0 : enlistment.hashCode()); result = prime * result + ((connectable == null) ? 0 : connectable.hashCode()); result = prime * result + ((tracking == null) ? 0 : tracking.hashCode()); result = prime * result + ((mcp == null) ? 0 : mcp.hashCode()); result = prime * result + ((enlistmentTrace == null) ? 0 : enlistmentTrace.hashCode()); return result; }
if(dataSource.getRecovery().getCredential() == null) { return; setStringIfNotNull(context, dataSource.getRecovery().getCredential().getUserName()); } else if (attributeName.equals(Constants.RECOVERY_PASSWORD.getName())) { if(dataSource.getRecovery().getCredential() == null) { return; assert dataSource.getRecovery().getCredential() instanceof Credential; if (((Credential) dataSource.getRecovery().getCredential()).isElytronEnabled()) { return; setStringIfNotNull(context, dataSource.getRecovery().getCredential().getSecurityDomain()); if(dataSource.getRecovery().getCredential() == null) { return; assert dataSource.getRecovery().getCredential() instanceof Credential; if (!((Credential) dataSource.getRecovery().getCredential()).isElytronEnabled()) { return; setBooleanIfNotNull(context, ((Credential) dataSource.getRecovery().getCredential()).isElytronEnabled()); } else if (attributeName.equals(Constants.RECOVERY_CREDENTIAL_REFERENCE.getName())) { if(dataSource.getRecovery().getCredential() == null) { return; assert dataSource.getRecovery().getCredential() instanceof Credential;
noRecovery = Boolean.FALSE; recovery = new Recovery(credential, recoverPlugin, noRecovery);
public static boolean isLegacySecurityRequired(Activation raxml) { boolean required = false; org.jboss.jca.common.api.metadata.resourceadapter.WorkManagerSecurity wmsecurity = raxml.getWorkManager() != null ? raxml.getWorkManager().getSecurity() : null; required = isLegacySecurityRequired(wmsecurity); if (!required) { List<ConnectionDefinition> connDefs = raxml.getConnectionDefinitions(); if (connDefs != null) { final List<ConnectionDefinition> clonedDefs; synchronized (raxml) { // Access to the collection is guarded by the instance clonedDefs = new ArrayList<>(connDefs); } for (ConnectionDefinition cd : clonedDefs) { Security cdSecurity = cd.getSecurity(); Credential cdRecoveryCredential = cd.getRecovery() == null? null : cd.getRecovery().getCredential(); if (isLegacySecurityRequired(cdSecurity) || isLegacySecurityRequired(cdRecoveryCredential)) { required = true; break; } } } } return required; }
noRecovery = Boolean.FALSE; recovery = new Recovery(credential, recoverPlugin, noRecovery);
if (cd.getRecovery() != null && cd.getRecovery().getCredential() != null && cd.getRecovery().getCredential().getSecurityDomain() != null) { if (!elytronEnabled) { builder.requires(SecurityDomainService.SERVICE_NAME.append(cd.getRecovery().getCredential().getSecurityDomain())); } else { builder.requires(context.getCapabilityServiceName(AUTHENTICATION_CONTEXT_CAPABILITY, cd.getRecovery().getCredential().getSecurityDomain(), AuthenticationContext.class));
setAttribute(model, NO_RECOVERY, recovery.getNoRecovery()); final Extension recoverPlugin = recovery.getRecoverPlugin(); if (recoverPlugin != null) { setAttribute(model, RECOVERLUGIN_CLASSNAME, recoverPlugin.getClassName()); final Credential recoveryCredential = recovery.getCredential(); if (recoveryCredential != null) { setAttribute(model, RECOVERY_PASSWORD, recoveryCredential.getPassword());
private static ConnectionDefinition createConnDef(TransactionSupportEnum transactionSupport, String jndiName, int minPoolSize, int maxPoolSize, String managedConnectionPoolClassName, Boolean enlistmentTrace) throws ValidateException { Integer minSize = (minPoolSize == -1) ? null : minPoolSize; Integer maxSize = (maxPoolSize == -1) ? null : maxPoolSize; boolean prefill = false; boolean useStrictMin = false; FlushStrategy flushStrategy = FlushStrategy.FAILING_CONNECTION_ONLY; Boolean isXA = Boolean.FALSE; final Pool pool; if (transactionSupport == TransactionSupportEnum.XATransaction) { pool = new XaPoolImpl(minSize, Defaults.INITIAL_POOL_SIZE, maxSize, prefill, useStrictMin, flushStrategy, null, Defaults.FAIR, Defaults.IS_SAME_RM_OVERRIDE, Defaults.INTERLEAVING, Defaults.PAD_XID, Defaults.WRAP_XA_RESOURCE, Defaults.NO_TX_SEPARATE_POOL); isXA = Boolean.TRUE; } else { pool = new PoolImpl(minSize, Defaults.INITIAL_POOL_SIZE, maxSize, prefill, useStrictMin, flushStrategy, null, Defaults.FAIR); } TimeOut timeOut = new TimeOutImpl(null, null, null, null, null) { }; // <security> // <application /> // </security> // => PoolStrategy.POOL_BY_CRI Security security = new SecurityImpl(null, null, true, false); // register the XA Connection *without* recovery. ActiveMQ already takes care of the registration with the correct credentials // when its ResourceAdapter is started Recovery recovery = new Recovery(new CredentialImpl(null, null, null, false, null), null, Boolean.TRUE); Validation validation = new ValidationImpl(Defaults.VALIDATE_ON_MATCH, null, null, false); // do no track return new ConnectionDefinitionImpl(Collections.<String, String>emptyMap(), RAMANAGED_CONN_FACTORY, jndiName, ACTIVEMQ_CONN_DEF, true, true, true, Defaults.SHARABLE, Defaults.ENLISTMENT, Defaults.CONNECTABLE, false, managedConnectionPoolClassName, enlistmentTrace, pool, timeOut, validation, security, recovery, isXA); }
final Credential credential = dataSourceConfig.getRecovery().getCredential(); if (credential != null) { final String securityDomainName = credential.getSecurityDomain();
@Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((className == null) ? 0 : className.hashCode()); result = prime * result + ((configProperties == null) ? 0 : configProperties.hashCode()); result = prime * result + ((enabled == null) ? 0 : enabled.hashCode()); result = prime * result + ((jndiName == null) ? 0 : jndiName.hashCode()); result = prime * result + ((pool == null) ? 0 : pool.hashCode()); result = prime * result + ((poolName == null) ? 0 : poolName.hashCode()); result = prime * result + ((recovery == null) ? 0 : recovery.hashCode()); result = prime * result + ((security == null) ? 0 : security.hashCode()); result = prime * result + ((timeOut == null) ? 0 : timeOut.hashCode()); result = prime * result + ((useJavaContext == null) ? 0 : useJavaContext.hashCode()); result = prime * result + ((useCcm == null) ? 0 : useCcm.hashCode()); result = prime * result + ((validation == null) ? 0 : validation.hashCode()); return result; }
if (other.recovery != null) return false; } else if (!recovery.equals(other.recovery)) return false; if (security == null) {
if(dataSource.getRecovery().getCredential() == null) { return; setStringIfNotNull(context, dataSource.getRecovery().getCredential().getUserName()); } else if (attributeName.equals(Constants.RECOVERY_PASSWORD.getName())) { if(dataSource.getRecovery().getCredential() == null) { return; assert dataSource.getRecovery().getCredential() instanceof Credential; if (((Credential) dataSource.getRecovery().getCredential()).isElytronEnabled()) { return; setStringIfNotNull(context, dataSource.getRecovery().getCredential().getSecurityDomain()); if(dataSource.getRecovery().getCredential() == null) { return; assert dataSource.getRecovery().getCredential() instanceof Credential; if (!((Credential) dataSource.getRecovery().getCredential()).isElytronEnabled()) { return; setBooleanIfNotNull(context, ((Credential) dataSource.getRecovery().getCredential()).isElytronEnabled()); } else if (attributeName.equals(Constants.RECOVERY_CREDENTIAL_REFERENCE.getName())) { if(dataSource.getRecovery().getCredential() == null) { return; assert dataSource.getRecovery().getCredential() instanceof Credential;
private static ConnectionDefinition createConnDef(TransactionSupportEnum transactionSupport, String jndiName, int minPoolSize, int maxPoolSize, String managedConnectionPoolClassName, Boolean enlistmentTrace) throws ValidateException { Integer minSize = (minPoolSize == -1) ? null : minPoolSize; Integer maxSize = (maxPoolSize == -1) ? null : maxPoolSize; boolean prefill = false; boolean useStrictMin = false; FlushStrategy flushStrategy = FlushStrategy.FAILING_CONNECTION_ONLY; Boolean isXA = Boolean.FALSE; final Pool pool; if (transactionSupport == TransactionSupportEnum.XATransaction) { pool = new XaPoolImpl(minSize, Defaults.INITIAL_POOL_SIZE, maxSize, prefill, useStrictMin, flushStrategy, null, Defaults.FAIR, Defaults.IS_SAME_RM_OVERRIDE, Defaults.INTERLEAVING, Defaults.PAD_XID, Defaults.WRAP_XA_RESOURCE, Defaults.NO_TX_SEPARATE_POOL); isXA = Boolean.TRUE; } else { pool = new PoolImpl(minSize, Defaults.INITIAL_POOL_SIZE, maxSize, prefill, useStrictMin, flushStrategy, null, Defaults.FAIR); } TimeOut timeOut = new TimeOutImpl(null, null, null, null, null) { }; // <security> // <application /> // </security> // => PoolStrategy.POOL_BY_CRI Security security = new SecurityImpl(null, null, true, false); // register the XA Connection *without* recovery. ActiveMQ already takes care of the registration with the correct credentials // when its ResourceAdapter is started Recovery recovery = new Recovery(new CredentialImpl(null, null, null, false, null), null, Boolean.TRUE); Validation validation = new ValidationImpl(Defaults.VALIDATE_ON_MATCH, null, null, false); // do no track return new ConnectionDefinitionImpl(Collections.<String, String>emptyMap(), RAMANAGED_CONN_FACTORY, jndiName, ACTIVEMQ_CONN_DEF, true, true, true, Defaults.SHARABLE, Defaults.ENLISTMENT, Defaults.CONNECTABLE, false, managedConnectionPoolClassName, enlistmentTrace, pool, timeOut, validation, security, recovery, isXA); }
final PathAddress addr = getDataSourceAddress(dsName, deploymentUnit, true); installManagementModel(xads, deploymentUnit, addr); final Credential credential = xads.getRecovery() == null? null: xads.getRecovery().getCredential();
/** * {@inheritDoc} */ public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((className == null) ? 0 : className.hashCode()); result = prime * result + ((configProperties == null) ? 0 : configProperties.hashCode()); result = prime * result + ((enabled == null) ? 0 : enabled.hashCode()); result = prime * result + ((jndiName == null) ? 0 : jndiName.hashCode()); result = prime * result + ((pool == null) ? 0 : pool.hashCode()); result = prime * result + ((poolName == null) ? 0 : poolName.hashCode()); result = prime * result + ((recovery == null) ? 0 : recovery.hashCode()); result = prime * result + ((security == null) ? 0 : security.hashCode()); result = prime * result + ((timeOut == null) ? 0 : timeOut.hashCode()); result = prime * result + ((useJavaContext == null) ? 0 : useJavaContext.hashCode()); result = prime * result + ((useCcm == null) ? 0 : useCcm.hashCode()); result = prime * result + ((validation == null) ? 0 : validation.hashCode()); result = prime * result + ((isXA == null) ? 0 : isXA.hashCode()); result = prime * result + ((sharable == null) ? 0 : sharable.hashCode()); result = prime * result + ((enlistment == null) ? 0 : enlistment.hashCode()); result = prime * result + ((connectable == null) ? 0 : connectable.hashCode()); result = prime * result + ((tracking == null) ? 0 : tracking.hashCode()); return result; }
return false; else if (!recovery.equals(other.recovery)) return false; if (security == null)
if(dataSource.getRecovery().getCredential() == null) { return; setStringIfNotNull(context, dataSource.getRecovery().getCredential().getUserName()); } else if (attributeName.equals(Constants.RECOVERY_PASSWORD.getName())) { if(dataSource.getRecovery().getCredential() == null) { return; setStringIfNotNull(context, dataSource.getRecovery().getCredential().getSecurityDomain()); if(dataSource.getRecovery().getRecoverPlugin() == null) { return; setStringIfNotNull(context, dataSource.getRecovery().getRecoverPlugin().getClassName()); } else if (attributeName.equals(Constants.RECOVER_PLUGIN_PROPERTIES.getName())) { if(dataSource.getRecovery() == null) { return; if(dataSource.getRecovery().getRecoverPlugin() == null) { return; final Map<String, String> propertiesMap = dataSource.getRecovery().getRecoverPlugin().getConfigPropertiesMap(); if (propertiesMap == null) { return; setBooleanIfNotNull(context, dataSource.getRecovery().getNoRecovery()); } else if (attributeName.equals(Constants.CHECK_VALID_CONNECTION_SQL.getName())) { if (dataSource.getValidation() == null) {
private static ConnectionDefinition createConnDef(TransactionSupportEnum transactionSupport, String jndiName, int minPoolSize, int maxPoolSize, String managedConnectionPoolClassName, Boolean enlistmentTrace) throws ValidateException { Integer minSize = (minPoolSize == -1) ? null : minPoolSize; Integer maxSize = (maxPoolSize == -1) ? null : maxPoolSize; boolean prefill = false; boolean useStrictMin = false; FlushStrategy flushStrategy = FlushStrategy.FAILING_CONNECTION_ONLY; Boolean isXA = Boolean.FALSE; final Pool pool; if (transactionSupport == TransactionSupportEnum.XATransaction) { pool = new XaPoolImpl(minSize, Defaults.INITIAL_POOL_SIZE, maxSize, prefill, useStrictMin, flushStrategy, null, Defaults.FAIR, Defaults.IS_SAME_RM_OVERRIDE, Defaults.INTERLEAVING, Defaults.PAD_XID, Defaults.WRAP_XA_RESOURCE, Defaults.NO_TX_SEPARATE_POOL); isXA = Boolean.TRUE; } else { pool = new PoolImpl(minSize, Defaults.INITIAL_POOL_SIZE, maxSize, prefill, useStrictMin, flushStrategy, null, Defaults.FAIR); } TimeOut timeOut = new TimeOutImpl(null, null, null, null, null) { }; // <security> // <application /> // </security> // => PoolStrategy.POOL_BY_CRI Security security = new SecurityImpl(null, null, true, false); // register the XA Connection *without* recovery. ActiveMQ already takes care of the registration with the correct credentials // when its ResourceAdapter is started Recovery recovery = new Recovery(new CredentialImpl(null, null, null, false, null), null, Boolean.TRUE); Validation validation = new ValidationImpl(Defaults.VALIDATE_ON_MATCH, null, null, false); // do no track return new ConnectionDefinitionImpl(Collections.<String, String>emptyMap(), RAMANAGED_CONN_FACTORY, jndiName, ACTIVEMQ_CONN_DEF, true, true, true, Defaults.SHARABLE, Defaults.ENLISTMENT, Defaults.CONNECTABLE, false, managedConnectionPoolClassName, enlistmentTrace, pool, timeOut, validation, security, recovery, isXA); }
if (cd.getRecovery() != null && cd.getRecovery().getCredential() != null && cd.getRecovery().getCredential().getSecurityDomain() != null) { if (!elytronEnabled) { builder.addDependency(SecurityDomainService.SERVICE_NAME.append(cd.getRecovery().getCredential().getSecurityDomain())); } else { builder.addDependency(context.getCapabilityServiceName(AUTHENTICATION_CONTEXT_CAPABILITY, cd.getRecovery().getCredential().getSecurityDomain(), AuthenticationContext.class));