@Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if (context.isNormalServer()) { context.addStep(new OperationStepHandler() { public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { wm.getStatistics().clear(); context.completeStep(OperationContext.RollbackHandler.NOOP_ROLLBACK_HANDLER); } }, OperationContext.Stage.RUNTIME); } } }
@Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if (context.isNormalServer() && getService(context) != null) { context.addStep(new OperationStepHandler() { @Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { ModClusterServiceMBean service = getService(context); service.reset(); context.completeStep(OperationContext.RollbackHandler.NOOP_ROLLBACK_HANDLER); } }, OperationContext.Stage.RUNTIME); } } },
@Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if (context.isNormalServer() && getService(context) != null) { context.addStep(new OperationStepHandler() { @Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { ModClusterServiceMBean service = getService(context); service.refresh(); context.completeStep(OperationContext.RollbackHandler.NOOP_ROLLBACK_HANDLER); } }, OperationContext.Stage.RUNTIME); } } },
@Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if (context.isNormalServer()) { context.addStep(new OperationStepHandler() { public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { for (StatisticsPlugin statsPlugin : stats) { statsPlugin.clear(); } context.completeStep(OperationContext.RollbackHandler.NOOP_ROLLBACK_HANDLER); } }, OperationContext.Stage.RUNTIME); } } }
@Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if (context.isNormalServer()) { context.addStep(new OperationStepHandler() { public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { final String attributeName = operation.require(NAME).asString(); final ServiceController<?> managementRepoService = context.getServiceRegistry(false).getService( ConnectorServices.MANAGEMENT_REPOSITORY_SERVICE); if (managementRepoService != null) { try { setModelValue(context.getResult(), attributeName); } catch (Exception e) { throw new OperationFailedException(ConnectorLogger.ROOT_LOGGER.failedToGetMetrics(e.getLocalizedMessage())); } } } }, OperationContext.Stage.RUNTIME); } }
@Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if (context.isNormalServer() && getService(context) != null) { context.addStep(new OperationStepHandler() { @Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { ModClusterServiceMBean service = getService(context); service.enable(); context.completeStep(new OperationContext.RollbackHandler() { @Override public void handleRollback(OperationContext context, ModelNode operation) { service.disable(); } }); } }, OperationContext.Stage.RUNTIME); } } },
@Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if (context.isNormalServer() && getService(context) != null) { context.addStep(new OperationStepHandler() { @Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { ModClusterServiceMBean service = getService(context); service.disable(); context.completeStep(new OperationContext.RollbackHandler() { @Override public void handleRollback(OperationContext context, ModelNode operation) { service.enable(); } }); } }, OperationContext.Stage.RUNTIME); } } },
@Override public void execute(final OperationContext context, final ModelNode operation) throws OperationFailedException { if (context.isNormalServer()) { context.addStep(new OperationStepHandler() { @Override public void execute(final OperationContext context, final ModelNode operation) throws OperationFailedException { ModelNode result = new ModelNode(); CachedConnectionManager ccm = (CachedConnectionManager) context.getServiceRegistry(false).getService(ConnectorServices.CCM_SERVICE).getValue(); ModelNode txResult = new ModelNode().set(ccm.getNumberOfConnections()); ccm = (CachedConnectionManager) context.getServiceRegistry(false).getService(ConnectorServices.NON_TX_CCM_SERVICE).getValue(); ModelNode nonTxResult = new ModelNode().set(ccm.getNumberOfConnections()); result.get(Constants.TX).set(txResult); result.get(Constants.NON_TX).set(nonTxResult); context.getResult().set(result); } }, OperationContext.Stage.RUNTIME); } } }
@Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if (context.isNormalServer()) { context.addStep(new OperationStepHandler() { public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { final String attributeName = operation.require(NAME).asString(); try { final ModelNode result = context.getResult(); switch (attributeName) { case ModelDescriptionConstants.STATISTICS_ENABLED: { result.set(stats.isEnabled()); break; } } } catch (Exception e) { throw new OperationFailedException(ConnectorLogger.ROOT_LOGGER.failedToGetMetrics(e.getLocalizedMessage())); } } }, OperationContext.Stage.RUNTIME); } }
@Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if (context.isNormalServer() && getService(context) != null) { context.addStep(new OperationStepHandler() { @Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { ModClusterServiceMBean service = getService(context); Map<InetSocketAddress, String> map = service.getProxyInfo(); ROOT_LOGGER.debugf("Mod_cluster ListProxies %s", map); if (!map.isEmpty()) { ModelNode result = new ModelNode(); InetSocketAddress[] addr = map.keySet().toArray(new InetSocketAddress[map.size()]); for (InetSocketAddress address : addr) { result.add(address.getHostName() + ":" + address.getPort()); } context.getResult().set(result); } } }, OperationContext.Stage.RUNTIME); } } },
@Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if (context.isNormalServer() && getService(context) != null) { context.addStep(new OperationStepHandler() { @Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { ModClusterServiceMBean service = getService(context); ROOT_LOGGER.debugf("stop: %s", operation); int waitTime = WAIT_TIME.resolveModelAttribute(context, operation).asInt(); boolean success = service.stop(waitTime, TimeUnit.SECONDS); context.getResult().get(SESSION_DRAINING_COMPLETE).set(success); context.completeStep(new OperationContext.RollbackHandler() { @Override public void handleRollback(OperationContext context, ModelNode operation) { // TODO We're assuming that the all contexts were previously enabled, but they could have been disabled service.enable(); } }); } }, OperationContext.Stage.RUNTIME); } } },
public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if (context.isNormalServer()) { context.addStep(new OperationStepHandler() { public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { final PathAddress address = PathAddress.pathAddress(operation.require(OP_ADDR)); final String jndiName = address.getLastElement().getValue(); final String attributeName = operation.require(NAME).asString(); final ServiceController<?> managementRepoService = context.getServiceRegistry(false).getService( ConnectorServices.MANAGEMENT_REPOSITORY_SERVICE); if (managementRepoService != null) { try { final ManagementRepository repository = (ManagementRepository) managementRepoService.getValue(); final ModelNode result = context.getResult(); List<StatisticsPlugin> stats = getMatchingStats(jndiName, repository); for (StatisticsPlugin stat : stats) { result.set("" + stat.getValue(attributeName)); } } catch (Exception e) { throw new OperationFailedException(ConnectorLogger.ROOT_LOGGER.failedToGetMetrics(e.getLocalizedMessage())); } } } }, OperationContext.Stage.RUNTIME); } }
@Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if (context.isNormalServer() && getService(context) != null) { context.addStep(new OperationStepHandler() { @Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { ModClusterServiceMBean service = getService(context); ROOT_LOGGER.debugf("enable-context: %s", operation); String webHost = VIRTUAL_HOST.resolveModelAttribute(context, operation).asString(); String webContext = CONTEXT.resolveModelAttribute(context, operation).asString(); try { service.enableContext(webHost, webContext); } catch (IllegalArgumentException e) { throw new OperationFailedException(ModClusterLogger.ROOT_LOGGER.contextOrHostNotFound(webHost, webContext)); } context.completeStep(new OperationContext.RollbackHandler() { @Override public void handleRollback(OperationContext context, ModelNode operation) { service.disableContext(webHost, webContext); } }); } }, OperationContext.Stage.RUNTIME); } } },
@Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if (context.isNormalServer() && getService(context) != null) { context.addStep(new OperationStepHandler() { @Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { ModClusterServiceMBean service = getService(context); Map<InetSocketAddress, String> map = service.getProxyConfiguration(); ROOT_LOGGER.debugf("Mod_cluster ProxyConfiguration %s", map); if (!map.isEmpty()) { ModelNode result = new ModelNode(); for (Map.Entry<InetSocketAddress, String> entry : map.entrySet()) { result.add(entry.getKey().getHostName() + ":" + entry.getKey().getPort()); if (entry.getValue() == null) { result.add(); } else { result.add(entry.getValue()); } } context.getResult().set(result); } } }, OperationContext.Stage.RUNTIME); } } },
@Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if (context.isNormalServer()) { try (Connection connection = getDataSource(context).getConnection()) { context.getResult().set(new ModelNode().add(connection.isValid(0))); } catch (SQLException e) { throw AgroalLogger.SERVICE_LOGGER.invalidConnection(e, context.getCurrentAddressValue()); } } } }
@Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if (context.isNormalServer()) { getDataSource(context).getMetrics().reset(); } } }
@Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if (context.isNormalServer()) { AgroalLogger.SERVICE_LOGGER.flushOperation(mode); getDataSource(context).flush(mode); } } }
@Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if (context.isNormalServer()) { Class<?> providerClass = (Class<?>) context.getServiceRegistry(false).getService(DriverDefinition.AGROAL_DRIVER_CAPABILITY.getCapabilityServiceName(context.getCurrentAddress())).getValue(); if (providerClass == null) { context.getResult().set(new ModelNode()); return; } ModelNode result = new ModelNode(); // consistent with io.agroal.pool.util.PropertyInjector if (javax.sql.XADataSource.class.isAssignableFrom(providerClass) || javax.sql.DataSource.class.isAssignableFrom(providerClass)) { for (Method method : providerClass.getMethods()) { String name = method.getName(); if (method.getParameterCount() == 1 && name.startsWith("set")) { result.get(name.substring(3)).set(method.getParameterTypes()[0].getName()); } } } // from java.sql.Driver maybe use Driver.getPropertyInfo context.getResult().set(result); } } }
@Override public void execute(final OperationContext context, final ModelNode operation) throws OperationFailedException { final String driverName = context.getCurrentAddressValue(); if (context.isNormalServer()) { context.addStep(new OperationStepHandler() { @Override public void execute(final OperationContext context, final ModelNode operation) throws OperationFailedException { ServiceRegistry registry = context.getServiceRegistry(false); DriverRegistry driverRegistry = (DriverRegistry)registry.getRequiredService(ConnectorServices.JDBC_DRIVER_REGISTRY_SERVICE).getValue(); ServiceModuleLoader serviceModuleLoader = (ServiceModuleLoader)registry.getRequiredService(Services.JBOSS_SERVICE_MODULE_LOADER).getValue(); InstalledDriver driver = driverRegistry.getInstalledDriver(driverName); if (driver == null) { context.getResult().set(new ModelNode()); return; } ModelNode result = dsClsInfoNode(serviceModuleLoader, driver.getModuleName(), driver.getDataSourceClassName(), driver.getXaDataSourceClassName()); context.getResult().set(result); } }, OperationContext.Stage.RUNTIME); } }
public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { if(! context.isNormalServer()) { context.completeStep(OperationContext.RollbackHandler.NOOP_ROLLBACK_HANDLER); return; } final MBeanServer mbs = TransactionExtension.getMBeanServer(context); if (mbs != null) { // Get the log-store resource final Resource resource = context.readResource(PathAddress.EMPTY_ADDRESS); assert resource instanceof LogStoreResource; final LogStoreResource logStore = (LogStoreResource) resource; // Get the expose-all-logs parameter value final ModelNode subModel = context.readResource(PathAddress.EMPTY_ADDRESS).getModel(); final boolean exposeAllLogs = LogStoreConstants.EXPOSE_ALL_LOGS.resolveModelAttribute(context, subModel).asBoolean(); final Resource storeModel = probeTransactions(mbs, exposeAllLogs); // Replace the current model with an updated one context.acquireControllerLock(); // WFLY-3020 -- don't drop the root model storeModel.writeModel(logStore.getModel()); logStore.update(storeModel); } context.completeStep(OperationContext.RollbackHandler.NOOP_ROLLBACK_HANDLER); }