Skip to content

Commit

Permalink
WFLY-5297 WildFly/IronJacamar 1.3.0.Final
Browse files Browse the repository at this point in the history
  • Loading branch information
Stefano Maestri committed Sep 9, 2015
1 parent 94b35af commit b23fc88
Show file tree
Hide file tree
Showing 25 changed files with 1,618 additions and 28 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ public void getResourceValue(final ResolutionContext context, final ServiceBuild
final ModifiableXaDataSource dataSource = new ModifiableXaDataSource(transactionIsolation(),
null, dsSecurity, null, null, null,
null, null, null, poolName, true,
jndiName, false, false, Defaults.CONNECTABLE, Defaults.TRACKING, properties,
jndiName, false, false, Defaults.CONNECTABLE, Defaults.TRACKING, Defaults.MCP, Defaults.ENLISTMENT_TRACE, properties,
className, null, null,
xaPool, null, null);
final XaDataSourceService xds = new XaDataSourceService(bindInfo.getBinderServiceName().getCanonicalName(), bindInfo, module.getClassLoader());
Expand All @@ -166,7 +166,8 @@ public void getResourceValue(final ResolutionContext context, final ServiceBuild
maxPoolSize < 1 ? Defaults.MAX_POOL_SIZE : Integer.valueOf(maxPoolSize),
Defaults.PREFILL, Defaults.USE_STRICT_MIN, Defaults.FLUSH_STRATEGY, Boolean.FALSE, null, null);
final ModifiableDataSource dataSource = new ModifiableDataSource(url, null, className, null, transactionIsolation(), properties,
null, dsSecurity, null, null, null, null, null, false, poolName, true, jndiName, Defaults.SPY, Defaults.USE_CCM, transactional, Defaults.CONNECTABLE, Defaults.TRACKING, commonPool, null);
null, dsSecurity, null, null, null, null, null, false, poolName, true, jndiName, Defaults.SPY, Defaults.USE_CCM,
transactional, Defaults.CONNECTABLE, Defaults.TRACKING, Defaults.MCP, Defaults.ENLISTMENT_TRACE, commonPool, null);
final LocalDataSourceService ds = new LocalDataSourceService(bindInfo.getBinderServiceName().getCanonicalName(), bindInfo, module.getClassLoader());
ds.getDataSourceConfigInjector().inject(dataSource);
startDataSource(ds, bindInfo, eeModuleDescription, context, phaseContext.getServiceTarget(), serviceBuilder, injector, securityEnabled);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -241,7 +241,7 @@ private ModifiableDataSource buildDataSource(DataSource ds) throws org.jboss.jca
ds.getSecurity(), ds.getStatement(), ds.getValidation(),
ds.getUrlDelimiter(), ds.getUrlSelectorStrategyClassName(), ds.getNewConnectionSql(),
ds.isUseJavaContext(), ds.getPoolName(), ds.isEnabled(), ds.getJndiName(),
ds.isSpy(), ds.isUseCcm(), ds.isJTA(), ds.isConnectable(), ds.isTracking(), ds.getPool(), null);
ds.isSpy(), ds.isUseCcm(), ds.isJTA(), ds.isConnectable(), ds.isTracking(), ds.getMcp(), ds.isEnlistmentTrace(), ds.getPool(), null);
}

private ModifiableXaDataSource buildXaDataSource(XaDataSource xads) throws org.jboss.jca.common.api.validator.ValidateException {
Expand All @@ -265,6 +265,7 @@ private ModifiableXaDataSource buildXaDataSource(XaDataSource xads) throws org.j
xads.getUrlDelimiter(), xads.getUrlProperty(), xads.getUrlSelectorStrategyClassName(),
xads.isUseJavaContext(), xads.getPoolName(), xads.isEnabled(), xads.getJndiName(),
xads.isSpy(), xads.isUseCcm(), xads.isConnectable(), xads.isTracking(),
xads.getMcp(), xads.isEnlistmentTrace(),
xads.getXaDataSourceProperty(), xads.getXaDataSourceClass(), xads.getDriver(),
xads.getNewConnectionSql(), xaPool, xads.getRecovery(), null);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,10 @@ public class Constants {

private static final String CONNECTABLE_NAME = "connectable";

private static final String MCP_NAME = "mcp";

private static final String ENLISTMENT_TRACE_NAME = "enlistment-trace";

private static final String TRACKING_NAME = "tracking";

static final String POOLNAME_NAME = "pool-name";
Expand Down Expand Up @@ -333,6 +337,18 @@ public void validateResolvedParameter(String parameterName, ModelNode value) thr
.setAllowNull(true)
.build();

static SimpleAttributeDefinition ENLISTMENT_TRACE = new SimpleAttributeDefinitionBuilder(ENLISTMENT_TRACE_NAME, ModelType.BOOLEAN)
.setXmlName(DataSource.Attribute.ENLISTMENT_TRACE.getLocalName())
.setAllowExpression(true)
.setAllowNull(true)
.build();

static SimpleAttributeDefinition MCP = new SimpleAttributeDefinitionBuilder(MCP_NAME, ModelType.STRING)
.setAllowExpression(true)
.setAllowNull(true)
.setXmlName(DataSource.Attribute.MCP.getLocalName())
.build();

static SimpleAttributeDefinition TRACKING = new SimpleAttributeDefinitionBuilder(TRACKING_NAME, ModelType.BOOLEAN)
.setXmlName(DataSource.Attribute.TRACKING.getLocalName())
.setDefaultValue(new ModelNode(false))
Expand Down Expand Up @@ -600,7 +616,7 @@ public void validateResolvedParameter(String parameterName, ModelNode value) thr
org.jboss.as.connector.subsystems.common.pool.Constants.BACKGROUNDVALIDATION,
org.jboss.as.connector.subsystems.common.pool.Constants.USE_FAST_FAIL,
VALIDATE_ON_MATCH, SPY,
USE_CCM, ENABLED, CONNECTABLE, STATISTICS_ENABLED, TRACKING};
USE_CCM, ENABLED, CONNECTABLE, STATISTICS_ENABLED, TRACKING, MCP, ENLISTMENT_TRACE};

static final PropertiesAttributeDefinition[] DATASOURCE_PROPERTIES_ATTRIBUTES = new PropertiesAttributeDefinition[]{
REAUTHPLUGIN_PROPERTIES,
Expand Down Expand Up @@ -676,7 +692,7 @@ public void validateResolvedParameter(String parameterName, ModelNode value) thr
org.jboss.as.connector.subsystems.common.pool.Constants.BACKGROUNDVALIDATION,
org.jboss.as.connector.subsystems.common.pool.Constants.USE_FAST_FAIL,
VALIDATE_ON_MATCH, XA_RESOURCE_TIMEOUT,
SPY, USE_CCM, ENABLED, CONNECTABLE, STATISTICS_ENABLED, TRACKING,
SPY, USE_CCM, ENABLED, CONNECTABLE, STATISTICS_ENABLED, TRACKING, MCP, ENLISTMENT_TRACE,
RECOVERY_USERNAME, RECOVERY_PASSWORD,
RECOVERY_SECURITY_DOMAIN, RECOVER_PLUGIN_CLASSNAME,
NO_RECOVERY, URL_PROPERTY};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,12 @@
import static org.jboss.as.connector.subsystems.datasources.Constants.DATA_SOURCE;
import static org.jboss.as.connector.subsystems.datasources.Constants.DUMP_QUEUED_THREADS;
import static org.jboss.as.connector.subsystems.datasources.Constants.ENABLED;
import static org.jboss.as.connector.subsystems.datasources.Constants.ENLISTMENT_TRACE;
import static org.jboss.as.connector.subsystems.datasources.Constants.FLUSH_ALL_CONNECTION;
import static org.jboss.as.connector.subsystems.datasources.Constants.FLUSH_GRACEFULLY_CONNECTION;
import static org.jboss.as.connector.subsystems.datasources.Constants.FLUSH_IDLE_CONNECTION;
import static org.jboss.as.connector.subsystems.datasources.Constants.FLUSH_INVALID_CONNECTION;
import static org.jboss.as.connector.subsystems.datasources.Constants.MCP;
import static org.jboss.as.connector.subsystems.datasources.Constants.STATISTICS_ENABLED;
import static org.jboss.as.connector.subsystems.datasources.Constants.TEST_CONNECTION;
import static org.jboss.as.connector.subsystems.datasources.Constants.TRACKING;
Expand Down Expand Up @@ -166,6 +168,8 @@ static void registerTransformers120(ResourceTransformationDescriptionBuilder par
builder.getAttributeBuilder()
.setDiscard(new DiscardAttributeChecker.DiscardAttributeValueChecker(new ModelNode(false)), CONNECTABLE)
.setDiscard(new DiscardAttributeChecker.DiscardAttributeValueChecker(false, false, new ModelNode(true)), STATISTICS_ENABLED)
.setDiscard(DiscardAttributeChecker.UNDEFINED, ENLISTMENT_TRACE, MCP)
.addRejectCheck(RejectAttributeChecker.DEFINED, ENLISTMENT_TRACE, MCP)
.addRejectCheck(new RejectAttributeChecker.DefaultRejectAttributeChecker() {

@Override
Expand Down Expand Up @@ -200,6 +204,8 @@ static void registerTransformers200(ResourceTransformationDescriptionBuilder par
builder.getAttributeBuilder()
.setDiscard(new DiscardAttributeChecker.DiscardAttributeValueChecker(new ModelNode(false)), CONNECTABLE)
.setDiscard(new DiscardAttributeChecker.DiscardAttributeValueChecker(false, false, new ModelNode(true)), STATISTICS_ENABLED)
.setDiscard(DiscardAttributeChecker.UNDEFINED, ENLISTMENT_TRACE, MCP)
.addRejectCheck(RejectAttributeChecker.DEFINED, ENLISTMENT_TRACE, MCP)
.addRejectCheck(new RejectAttributeChecker.DefaultRejectAttributeChecker() {

@Override
Expand Down Expand Up @@ -229,4 +235,12 @@ protected boolean isValueDiscardable(PathAddress address, String attributeName,
.end();
}

static void registerTransformers300(ResourceTransformationDescriptionBuilder parentBuilder) {
ResourceTransformationDescriptionBuilder builder = parentBuilder.addChildResource(PATH_DATASOURCE);
builder.getAttributeBuilder()
.setDiscard(DiscardAttributeChecker.UNDEFINED, ENLISTMENT_TRACE, MCP)
.addRejectCheck(RejectAttributeChecker.DEFINED, ENLISTMENT_TRACE, MCP)
.end();
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -49,11 +49,13 @@
import static org.jboss.as.connector.subsystems.datasources.Constants.DATASOURCE_DRIVER;
import static org.jboss.as.connector.subsystems.datasources.Constants.DRIVER_CLASS;
import static org.jboss.as.connector.subsystems.datasources.Constants.ENABLED;
import static org.jboss.as.connector.subsystems.datasources.Constants.ENLISTMENT_TRACE;
import static org.jboss.as.connector.subsystems.datasources.Constants.EXCEPTION_SORTER_CLASSNAME;
import static org.jboss.as.connector.subsystems.datasources.Constants.EXCEPTION_SORTER_PROPERTIES;
import static org.jboss.as.connector.subsystems.datasources.Constants.INTERLEAVING;
import static org.jboss.as.connector.subsystems.datasources.Constants.JNDI_NAME;
import static org.jboss.as.connector.subsystems.datasources.Constants.JTA;
import static org.jboss.as.connector.subsystems.datasources.Constants.MCP;
import static org.jboss.as.connector.subsystems.datasources.Constants.NEW_CONNECTION_SQL;
import static org.jboss.as.connector.subsystems.datasources.Constants.NO_RECOVERY;
import static org.jboss.as.connector.subsystems.datasources.Constants.NO_TX_SEPARATE_POOL;
Expand Down Expand Up @@ -151,6 +153,8 @@ static ModifiableDataSource from(final OperationContext operationContext, final
final boolean enabled = ModelNodeUtil.getBooleanIfSetOrGetDefault(operationContext, dataSourceNode, ENABLED);
final boolean connectable = ModelNodeUtil.getBooleanIfSetOrGetDefault(operationContext, dataSourceNode, CONNECTABLE);
final Boolean tracking = ModelNodeUtil.getBooleanIfSetOrGetDefault(operationContext, dataSourceNode, TRACKING);
final Boolean enlistmentTrace = ModelNodeUtil.getBooleanIfSetOrGetDefault(operationContext, dataSourceNode, ENLISTMENT_TRACE);
final String mcp = ModelNodeUtil.getResolvedStringIfSetOrGetDefault(operationContext, dataSourceNode, MCP);
final boolean jta = ModelNodeUtil.getBooleanIfSetOrGetDefault(operationContext, dataSourceNode, JTA);
final Integer maxPoolSize = ModelNodeUtil.getIntIfSetOrGetDefault(operationContext, dataSourceNode, MAX_POOL_SIZE);
final Integer minPoolSize = ModelNodeUtil.getIntIfSetOrGetDefault(operationContext, dataSourceNode, MIN_POOL_SIZE);
Expand Down Expand Up @@ -221,7 +225,7 @@ static ModifiableDataSource from(final OperationContext operationContext, final

return new ModifiableDataSource(connectionUrl, driverClass, dataSourceClass, driver, transactionIsolation, connectionProperties, timeOut,
security, statement, validation, urlDelimiter, urlSelectorStrategyClassName, newConnectionSql, useJavaContext,
poolName, enabled, jndiName, spy, useCcm, jta, connectable, tracking, pool, profile);
poolName, enabled, jndiName, spy, useCcm, jta, connectable, tracking, mcp, enlistmentTrace, pool, profile);
}

static ModifiableXaDataSource xaFrom(final OperationContext operationContext, final ModelNode dataSourceNode, final String dsName) throws OperationFailedException, ValidateException {
Expand All @@ -243,6 +247,8 @@ static ModifiableXaDataSource xaFrom(final OperationContext operationContext, fi
final Boolean enabled = ModelNodeUtil.getBooleanIfSetOrGetDefault(operationContext, dataSourceNode, ENABLED);
final boolean connectable = ModelNodeUtil.getBooleanIfSetOrGetDefault(operationContext, dataSourceNode, CONNECTABLE);
final Boolean tracking = ModelNodeUtil.getBooleanIfSetOrGetDefault(operationContext, dataSourceNode, TRACKING);
final Boolean enlistmentTrace = ModelNodeUtil.getBooleanIfSetOrGetDefault(operationContext, dataSourceNode, ENLISTMENT_TRACE);
final String mcp = ModelNodeUtil.getResolvedStringIfSetOrGetDefault(operationContext, dataSourceNode, MCP);
final Integer maxPoolSize = ModelNodeUtil.getIntIfSetOrGetDefault(operationContext, dataSourceNode, MAX_POOL_SIZE);
final Integer minPoolSize = ModelNodeUtil.getIntIfSetOrGetDefault(operationContext, dataSourceNode, MIN_POOL_SIZE);
final Integer initialPoolSize = ModelNodeUtil.getIntIfSetOrGetDefault(operationContext, dataSourceNode, INITIAL_POOL_SIZE);
Expand Down Expand Up @@ -336,7 +342,7 @@ static ModifiableXaDataSource xaFrom(final OperationContext operationContext, fi
}
return new ModifiableXaDataSource(transactionIsolation, timeOut, security, statement, validation, urlDelimiter, urlProperty,
urlSelectorStrategyClassName, useJavaContext, poolName, enabled, jndiName, spy, useCcm,
connectable, tracking, xaDataSourceProperty,
connectable, tracking, mcp, enlistmentTrace, xaDataSourceProperty,
xaDataSourceClass, module, newConnectionSql, xaPool, recovery, profile);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,12 +59,14 @@
import static org.jboss.as.connector.subsystems.datasources.Constants.DRIVER_NAME;
import static org.jboss.as.connector.subsystems.datasources.Constants.DRIVER_XA_DATASOURCE_CLASS_NAME;
import static org.jboss.as.connector.subsystems.datasources.Constants.ENABLED;
import static org.jboss.as.connector.subsystems.datasources.Constants.ENLISTMENT_TRACE;
import static org.jboss.as.connector.subsystems.datasources.Constants.EXCEPTION_SORTER_CLASSNAME;
import static org.jboss.as.connector.subsystems.datasources.Constants.EXCEPTION_SORTER_PROPERTIES;
import static org.jboss.as.connector.subsystems.datasources.Constants.INTERLEAVING;
import static org.jboss.as.connector.subsystems.datasources.Constants.JDBC_DRIVER_NAME;
import static org.jboss.as.connector.subsystems.datasources.Constants.JNDI_NAME;
import static org.jboss.as.connector.subsystems.datasources.Constants.JTA;
import static org.jboss.as.connector.subsystems.datasources.Constants.MCP;
import static org.jboss.as.connector.subsystems.datasources.Constants.MODULE_SLOT;
import static org.jboss.as.connector.subsystems.datasources.Constants.NEW_CONNECTION_SQL;
import static org.jboss.as.connector.subsystems.datasources.Constants.NO_RECOVERY;
Expand Down Expand Up @@ -152,7 +154,7 @@ public class DataSourcesExtension implements Extension {
public static final String SUBSYSTEM_NAME = Constants.DATASOURCES;
private static final String RESOURCE_NAME = DataSourcesExtension.class.getPackage().getName() + ".LocalDescriptions";

private static final ModelVersion CURRENT_MODEL_VERSION = ModelVersion.create(3, 0, 0);
private static final ModelVersion CURRENT_MODEL_VERSION = ModelVersion.create(4, 0, 0);

static StandardResourceDescriptionResolver getResourceDescriptionResolver(final String... keyPrefix) {
StringBuilder prefix = new StringBuilder(SUBSYSTEM_NAME);
Expand Down Expand Up @@ -191,6 +193,7 @@ public void initializeParsers(final ExtensionParsingContext context) {
context.setSubsystemXmlMapping(SUBSYSTEM_NAME, Namespace.DATASOURCES_1_2.getUriString(), DataSourceSubsystemParser.INSTANCE);
context.setSubsystemXmlMapping(SUBSYSTEM_NAME, Namespace.DATASOURCES_2_0.getUriString(), DataSourceSubsystemParser.INSTANCE);
context.setSubsystemXmlMapping(SUBSYSTEM_NAME, Namespace.DATASOURCES_3_0.getUriString(), DataSourceSubsystemParser.INSTANCE);
context.setSubsystemXmlMapping(SUBSYSTEM_NAME, Namespace.DATASOURCES_4_0.getUriString(), DataSourceSubsystemParser.INSTANCE);
}

public static final class DataSourceSubsystemParser implements XMLStreamConstants, XMLElementReader<List<ModelNode>>,
Expand Down Expand Up @@ -263,6 +266,8 @@ private void writeDS(XMLExtendedStreamWriter writer, boolean isXADataSource, Mod
USE_CCM.marshallAsAttribute(dataSourceNode, writer);
CONNECTABLE.marshallAsAttribute(dataSourceNode, writer);
TRACKING.marshallAsAttribute(dataSourceNode, writer);
MCP.marshallAsAttribute(dataSourceNode, writer);
ENLISTMENT_TRACE.marshallAsAttribute(dataSourceNode, writer);
STATISTICS_ENABLED.marshallAsAttribute(dataSourceNode, writer);

if (!isXADataSource) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,7 @@ public void registerChildren(ManagementResourceRegistration resourceRegistration
static void registerTransformers(SubsystemRegistration subsystem) {
TransformationDescription.Tools.register(get120TransformationDescription(), subsystem, ModelVersion.create(1, 2, 0)); //EAP 6.2.0
TransformationDescription.Tools.register(get200TransformationDescription(), subsystem, ModelVersion.create(2, 0, 0));
TransformationDescription.Tools.register(get300TransformationDescription(), subsystem, ModelVersion.create(3, 0, 0));
}


Expand All @@ -121,4 +122,14 @@ static TransformationDescription get200TransformationDescription() {
return builder.build();
}

static TransformationDescription get300TransformationDescription() {

ResourceTransformationDescriptionBuilder builder = TransformationDescriptionBuilder.Factory.createSubsystemInstance();
//No change
//JdbcDriverDefinition.registerTransformers110(builder);
DataSourceDefinition.registerTransformers300(builder);
XaDataSourceDefinition.registerTransformers300(builder);
return builder.build();
}

}
Loading

0 comments on commit b23fc88

Please sign in to comment.