use of org.jboss.as.connector.services.bootstrap.NamedBootstrapContext in project wildfly by wildfly.
the class BootstrapContextAdd method performRuntime.
@Override
protected void performRuntime(final OperationContext context, final ModelNode operation, final ModelNode model) throws OperationFailedException {
String name = JcaBootstrapContextDefinition.BootstrapCtxParameters.NAME.getAttribute().resolveModelAttribute(context, model).asString();
String workmanager = JcaBootstrapContextDefinition.BootstrapCtxParameters.WORKMANAGER.getAttribute().resolveModelAttribute(context, model).asString();
boolean usingDefaultWm = false;
CloneableBootstrapContext ctx;
if (DEFAULT_NAME.equals(workmanager)) {
usingDefaultWm = true;
ctx = new NamedBootstrapContext(name);
} else {
ctx = new NamedBootstrapContext(name, workmanager);
}
ServiceTarget serviceTarget = context.getServiceTarget();
final BootStrapContextService bootCtxService = new BootStrapContextService(ctx, name, usingDefaultWm);
serviceTarget.addService(ConnectorServices.BOOTSTRAP_CONTEXT_SERVICE.append(name), bootCtxService).addDependency(ConnectorServices.WORKMANAGER_SERVICE.append(workmanager), WorkManager.class, bootCtxService.getWorkManagerValueInjector()).addDependency(TxnServices.JBOSS_TXN_CONTEXT_XA_TERMINATOR, JBossContextXATerminator.class, bootCtxService.getXaTerminatorInjector()).addDependency(TxnServices.JBOSS_TXN_ARJUNA_TRANSACTION_MANAGER, com.arjuna.ats.jbossatx.jta.TransactionManagerService.class, bootCtxService.getTxManagerInjector()).addDependency(ConnectorServices.CONNECTOR_CONFIG_SERVICE, JcaSubsystemConfiguration.class, bootCtxService.getJcaConfigInjector()).setInitialMode(ServiceController.Mode.ACTIVE).install();
}
use of org.jboss.as.connector.services.bootstrap.NamedBootstrapContext in project wildfly by wildfly.
the class MultipleResourceAdapter2 method start.
/**
* This is called when a resource adapter instance is bootstrapped.
*
* @param ctx A bootstrap context containing references
* @throws ResourceAdapterInternalException indicates bootstrap failure.
*/
public void start(BootstrapContext ctx) throws ResourceAdapterInternalException {
log.trace("start()");
if (ctx instanceof NamedBootstrapContext) {
NamedBootstrapContext nc = (NamedBootstrapContext) ctx;
setBootstrapContextName(nc.getName());
log.trace("Bootstrap-context:" + nc.getName());
}
WorkManager wm = ctx.getWorkManager();
if (wm instanceof NamedWorkManager) {
NamedWorkManager nw = (NamedWorkManager) wm;
setWorkManagerName(nw.getName());
log.trace("Work-manager:" + nw.getName());
}
Work myWork1 = new MultipleWork();
Work myWork2 = new MultipleWork();
Work myWork3 = new MultipleWork();
try {
wm.doWork(myWork1);
wm.scheduleWork(myWork2);
wm.startWork(myWork3);
} catch (Exception e) {
e.printStackTrace();
}
}
Aggregations