use of com.sun.enterprise.config.serverbeans.Config in project Payara by payara.
the class GetPayaraExecutorServiceConfigurationCommand method execute.
@Override
public void execute(AdminCommandContext acc) {
Config configNode = targetUtil.getConfig(target);
PayaraExecutorServiceConfiguration payaraExecutorServiceConfiguration = configNode.getExtensionByType(PayaraExecutorServiceConfiguration.class);
ColumnFormatter columnFormatter = new ColumnFormatter(HEADERS);
Object[] values = { payaraExecutorServiceConfiguration.getThreadPoolExecutorCorePoolSize(), payaraExecutorServiceConfiguration.getThreadPoolExecutorMaxPoolSize(), payaraExecutorServiceConfiguration.getThreadPoolExecutorKeepAliveTime(), payaraExecutorServiceConfiguration.getThreadPoolExecutorKeepAliveTimeUnit(), payaraExecutorServiceConfiguration.getThreadPoolExecutorQueueSize(), payaraExecutorServiceConfiguration.getScheduledThreadPoolExecutorCorePoolSize() };
columnFormatter.addRow(values);
Map<String, Object> map = new HashMap<>();
Properties extraProps = new Properties();
map.put("threadPoolExecutorCorePoolSize", values[0]);
map.put("threadPoolExecutorMaxPoolSize", values[1]);
map.put("threadPoolExecutorKeepAliveTime", values[2]);
map.put("threadPoolExecutorKeepAliveTimeUnit", values[3]);
map.put("threadPoolExecutorQueueSize", values[4]);
map.put("scheduledThreadPoolExecutorCorePoolSize", values[5]);
extraProps.put("payaraExecutorServiceConfiguration", map);
acc.getActionReport().setExtraProperties(extraProps);
acc.getActionReport().setMessage(columnFormatter.toString());
}
use of com.sun.enterprise.config.serverbeans.Config in project Payara by payara.
the class GetRequestTracingConfiguration method execute.
@Override
public void execute(AdminCommandContext context) {
Config config = targetUtil.getConfig(target);
if (config == null) {
context.getActionReport().setMessage("No such config named: " + target);
context.getActionReport().setActionExitCode(ActionReport.ExitCode.FAILURE);
return;
}
ActionReport mainActionReport = context.getActionReport();
RequestTracingServiceConfiguration configuration = config.getExtensionByType(RequestTracingServiceConfiguration.class);
writeVariableToActionReport(mainActionReport, "Enabled?", configuration.getEnabled());
if (Boolean.parseBoolean(configuration.getEnabled())) {
writeVariableToActionReport(mainActionReport, "Sample Rate", configuration.getSampleRate());
// Print adaptive sampling details
writeVariableToActionReport(mainActionReport, "Adaptive Sampling Enabled?", configuration.getAdaptiveSamplingEnabled());
if (Boolean.parseBoolean(configuration.getAdaptiveSamplingEnabled())) {
writeVariableToActionReport(mainActionReport, "Adaptive Sampling Target Count", configuration.getAdaptiveSamplingTargetCount());
writeVariableToActionReport(mainActionReport, "Adaptive Sampling Time Value", configuration.getAdaptiveSamplingTimeValue());
writeVariableToActionReport(mainActionReport, "Adaptive Sampling Time Unit", configuration.getAdaptiveSamplingTimeUnit());
}
// Print filter details
writeVariableToActionReport(mainActionReport, "Application Only?", configuration.getApplicationsOnlyEnabled());
writeVariableToActionReport(mainActionReport, "Threshold Value", configuration.getThresholdValue());
writeVariableToActionReport(mainActionReport, "Threshold Unit", configuration.getThresholdUnit());
writeVariableToActionReport(mainActionReport, "Sample Rate First?", configuration.getSampleRateFirstEnabled());
// Print trace store details
writeVariableToActionReport(mainActionReport, "Reservoir Sampling Enabled?", configuration.getReservoirSamplingEnabled());
writeVariableToActionReport(mainActionReport, "Trace Store Size", configuration.getTraceStoreSize());
if (!Strings.isNullOrEmpty(configuration.getTraceStoreTimeout())) {
writeVariableToActionReport(mainActionReport, "Trace Store Timeout (secs)", configuration.getTraceStoreTimeout());
}
// Print historic trace store details
writeVariableToActionReport(mainActionReport, "Historic Trace Store Enabled?", configuration.getHistoricTraceStoreEnabled());
if (Boolean.parseBoolean(configuration.getHistoricTraceStoreEnabled())) {
writeVariableToActionReport(mainActionReport, "Historic Trace Store Size", configuration.getHistoricTraceStoreSize());
if (!Strings.isNullOrEmpty(configuration.getHistoricTraceStoreTimeout())) {
writeVariableToActionReport(mainActionReport, "Historic Trace Store Timeout (secs)", configuration.getHistoricTraceStoreTimeout());
}
}
}
// Create the extraProps for the general request tracing configuration
Properties mainExtraProps = new Properties();
Map<String, Object> mainExtraPropsMap = new HashMap<>();
mainExtraPropsMap.put("enabled", configuration.getEnabled());
mainExtraPropsMap.put("sampleRate", configuration.getSampleRate());
mainExtraPropsMap.put("adaptiveSamplingEnabled", configuration.getAdaptiveSamplingEnabled());
mainExtraPropsMap.put("adaptiveSamplingTargetCount", configuration.getAdaptiveSamplingTargetCount());
mainExtraPropsMap.put("adaptiveSamplingTimeValue", configuration.getAdaptiveSamplingTimeValue());
mainExtraPropsMap.put("adaptiveSamplingTimeUnit", configuration.getAdaptiveSamplingTimeUnit());
mainExtraPropsMap.put("applicationsOnlyEnabled", configuration.getApplicationsOnlyEnabled());
mainExtraPropsMap.put("thresholdValue", configuration.getThresholdValue());
mainExtraPropsMap.put("thresholdUnit", configuration.getThresholdUnit());
mainExtraPropsMap.put("sampleRateFirstEnabled", configuration.getSampleRateFirstEnabled());
mainExtraPropsMap.put("traceStoreSize", configuration.getTraceStoreSize());
mainExtraPropsMap.put("traceStoreTimeout", configuration.getTraceStoreTimeout());
mainExtraPropsMap.put("reservoirSamplingEnabled", configuration.getReservoirSamplingEnabled());
mainExtraPropsMap.put("historicTraceStoreEnabled", configuration.getHistoricTraceStoreEnabled());
mainExtraPropsMap.put("historicTraceStoreSize", configuration.getHistoricTraceStoreSize());
mainExtraPropsMap.put("historicTraceStoreTimeout", configuration.getHistoricTraceStoreTimeout());
mainExtraProps.put("requestTracingConfiguration", mainExtraPropsMap);
mainActionReport.setExtraProperties(mainExtraProps);
mainActionReport.appendMessage("Below are the configuration details of each notifier listed by its name.");
mainActionReport.appendMessage(StringUtils.EOL);
ActionReport notifiersActionReport = mainActionReport.addSubActionsReport();
List<ServiceHandle<BaseNotifierService>> allServiceHandles = habitat.getAllServiceHandles(BaseNotifierService.class);
if (configuration.getNotifierList().isEmpty()) {
notifiersActionReport.setMessage("No notifier defined");
} else {
String[] headers = { "Notifier Name", "Notifier Enabled" };
ColumnFormatter columnFormatter = new ColumnFormatter(headers);
List<Class<Notifier>> notifierClassList = Lists.transform(configuration.getNotifierList(), new Function<Notifier, Class<Notifier>>() {
@Override
public Class<Notifier> apply(Notifier input) {
return resolveNotifierClass(input);
}
});
Properties notifierExtraProps = new Properties();
for (ServiceHandle<BaseNotifierService> serviceHandle : allServiceHandles) {
Notifier notifier = configuration.getNotifierByType(serviceHandle.getService().getNotifierType());
if (notifier != null) {
ConfigView view = ConfigSupport.getImpl(notifier);
NotifierConfigurationType annotation = view.getProxyType().getAnnotation(NotifierConfigurationType.class);
if (notifierClassList.contains(view.<Notifier>getProxyType())) {
Object[] values = new Object[2];
values[0] = serviceHandle.getActiveDescriptor().getName();
values[1] = notifier.getEnabled();
columnFormatter.addRow(values);
Map<String, Object> notifierExtraPropsMap = new HashMap<>();
notifierExtraPropsMap.put("notifierName", values[0]);
notifierExtraPropsMap.put("notifierEnabled", values[1]);
notifierExtraProps.put("getRequesttracingConfiguration" + annotation.type(), notifierExtraPropsMap);
notifiersActionReport.setExtraProperties(notifierExtraProps);
}
}
}
notifiersActionReport.setMessage(columnFormatter.toString());
}
mainActionReport.setActionExitCode(ActionReport.ExitCode.SUCCESS);
}
use of com.sun.enterprise.config.serverbeans.Config in project Payara by payara.
the class BaseRequestTracingNotifierConfigurer method execute.
@Override
public void execute(AdminCommandContext context) {
final ActionReport actionReport = context.getActionReport();
Properties extraProperties = actionReport.getExtraProperties();
if (extraProperties == null) {
extraProperties = new Properties();
actionReport.setExtraProperties(extraProperties);
}
Config config = targetUtil.getConfig(target);
final RequestTracingServiceConfiguration configuration = config.getExtensionByType(RequestTracingServiceConfiguration.class);
ParameterizedType genericSuperclass = (ParameterizedType) getClass().getGenericSuperclass();
notifierClass = (Class<C>) genericSuperclass.getActualTypeArguments()[0];
C c = configuration.getNotifierByType(notifierClass);
try {
if (c == null) {
ConfigSupport.apply(new SingleConfigCode<RequestTracingServiceConfiguration>() {
@Override
public Object run(final RequestTracingServiceConfiguration configurationProxy) throws PropertyVetoException, TransactionFailure {
C c = configurationProxy.createChild(notifierClass);
applyValues(c);
configurationProxy.getNotifierList().add(c);
actionReport.setActionExitCode(ActionReport.ExitCode.SUCCESS);
return configurationProxy;
}
}, configuration);
} else {
ConfigSupport.apply(new SingleConfigCode<C>() {
public Object run(C cProxy) throws PropertyVetoException, TransactionFailure {
applyValues(cProxy);
actionReport.setActionExitCode(ActionReport.ExitCode.SUCCESS);
return cProxy;
}
}, c);
}
if (dynamic) {
if (server.isDas()) {
if (targetUtil.getConfig(target).isDas()) {
configureDynamically();
}
} else {
configureDynamically();
}
}
} catch (TransactionFailure ex) {
logger.log(Level.WARNING, "Exception during command ", ex);
actionReport.setMessage(ex.getCause().getMessage());
actionReport.setActionExitCode(ActionReport.ExitCode.FAILURE);
}
}
use of com.sun.enterprise.config.serverbeans.Config in project Payara by payara.
the class GetExampleServiceMessageCommand method execute.
/**
* This method is called when the command is executed
* @param context
*/
@Override
public void execute(AdminCommandContext context) {
// obtain the correct configuration
Config configNode = targetUtil.getConfig(config);
ExampleServiceConfiguration serviceConfig = configNode.getExtensionByType(ExampleServiceConfiguration.class);
// add return message
context.getActionReport().setMessage("Example Service message is " + serviceConfig.getMessage());
}
use of com.sun.enterprise.config.serverbeans.Config in project Payara by payara.
the class SystemTasksImpl method getConfigSystemProperties.
private List<SystemProperty> getConfigSystemProperties() {
try {
String configName = server.getConfigRef();
Configs configs = domain.getConfigs();
List<Config> configsList = configs.getConfig();
Config config = null;
for (Config c : configsList) {
if (c.getName().equals(configName)) {
config = c;
break;
}
}
return (List<SystemProperty>) (config != null ? config.getSystemProperty() : Collections.emptyList());
} catch (Exception e) {
// possible NPE if domain.xml has issues!
return Collections.emptyList();
}
}
Aggregations