use of org.jboss.hal.core.finder.FinderColumn.RefreshMode.RESTORE_SELECTION in project console by hal.
the class ContentColumn method undeploy.
private void undeploy(Content content) {
if (!content.getServerGroupDeployments().isEmpty()) {
Set<String> serverGroupsWithContent = content.getServerGroupDeployments().stream().map(ServerGroupDeployment::getServerGroup).collect(toSet());
new DeployContentDialog1(content, serverGroupsWithContent, resources, (cnt, serverGroups) -> {
List<Operation> operations = serverGroups.stream().map(serverGroup -> {
ResourceAddress resourceAddress = new ResourceAddress().add(SERVER_GROUP, serverGroup).add(DEPLOYMENT, content.getName());
return new Operation.Builder(resourceAddress, REMOVE).build();
}).collect(toList());
dispatcher.execute(new Composite(operations), (CompositeResult cr) -> {
refresh(RESTORE_SELECTION);
MessageEvent.fire(eventBus, Message.success(resources.messages().contentUndeployed(content.getName())));
});
}).show();
} else {
MessageEvent.fire(eventBus, Message.warning(resources.messages().undeployedContent(content.getName())));
}
}
use of org.jboss.hal.core.finder.FinderColumn.RefreshMode.RESTORE_SELECTION in project console by hal.
the class HostColumn method prune.
private void prune(String operation) {
ResourceAddress address = new ResourceAddress().add(CORE_SERVICE, MANAGEMENT);
crud.readChildren(address, HOST_CONNECTION, children -> {
List<Operation> operations = children.stream().map(property -> {
ResourceAddress hcAddress = HOST_CONNECTION_TEMPLATE.resolve(statementContext, property.getName());
return new Operation.Builder(hcAddress, operation).build();
}).collect(toList());
dispatcher.execute(new Composite(operations), (CompositeResult result) -> {
MessageEvent.fire(eventBus, Message.success(resources.messages().pruneSuccessful()));
refresh(RESTORE_SELECTION);
});
});
}
use of org.jboss.hal.core.finder.FinderColumn.RefreshMode.RESTORE_SELECTION in project console by hal.
the class ContentColumn method deploy.
void deploy(Content content) {
Operation operation = new Operation.Builder(ResourceAddress.root(), READ_CHILDREN_NAMES_OPERATION).param(CHILD_TYPE, SERVER_GROUP).build();
dispatcher.execute(operation, result -> {
Set<String> serverGroupsWithoutContent = result.asList().stream().map(ModelNode::asString).collect(toSet());
Set<String> serverGroupsWithContent = content.getServerGroupDeployments().stream().map(ServerGroupDeployment::getServerGroup).collect(toSet());
serverGroupsWithoutContent.removeAll(serverGroupsWithContent);
if (serverGroupsWithoutContent.isEmpty()) {
MessageEvent.fire(eventBus, Message.warning(resources.messages().contentAlreadyDeployedToAllServerGroups(content.getName())));
} else {
new DeployContentDialog1(content, serverGroupsWithoutContent, resources, (cnt, serverGroups, enable) -> {
List<Operation> operations = serverGroups.stream().map(serverGroup -> {
ResourceAddress resourceAddress = new ResourceAddress().add(SERVER_GROUP, serverGroup).add(DEPLOYMENT, content.getName());
return new Operation.Builder(resourceAddress, ADD).param(RUNTIME_NAME, content.getRuntimeName()).param(ENABLED, enable).build();
}).collect(toList());
if (enable) {
ItemMonitor.startProgress(Ids.content(cnt.getName()));
}
dispatcher.execute(new Composite(operations), (CompositeResult cr) -> {
if (enable) {
ItemMonitor.stopProgress(Ids.content(cnt.getName()));
}
refresh(RESTORE_SELECTION);
MessageEvent.fire(eventBus, Message.success(resources.messages().contentDeployed1(content.getName())));
});
}).show();
}
});
}
use of org.jboss.hal.core.finder.FinderColumn.RefreshMode.RESTORE_SELECTION in project console by hal.
the class ServerColumn method addServer.
private void addServer(boolean browseByHost) {
if (browseByHost) {
AddressTemplate template = serverConfigTemplate(statementContext.selectedHost());
String id = Ids.build(HOST, statementContext.selectedHost(), SERVER, Ids.ADD);
List<String> attributes = asList(AUTO_START, GROUP, SOCKET_BINDING_DEFAULT_INTERFACE, SOCKET_BINDING_GROUP, SOCKET_BINDING_PORT_OFFSET, UPDATE_AUTO_START_WITH_SERVER_STATUS);
crud.add(id, Names.SERVER, template, attributes, createUniqueValidation(), (name, address) -> refresh(RESTORE_SELECTION));
} else {
// load all available hosts to show in the copy dialog
Operation operation = new Operation.Builder(ResourceAddress.root(), READ_CHILDREN_NAMES_OPERATION).param(CHILD_TYPE, HOST).build();
dispatcher.execute(operation, result -> {
List<String> hosts = new ArrayList<>();
result.asList().forEach(m -> hosts.add(m.asString()));
// get the first host, only to retrieve the r-r-d for server-config
// as /host=*/server-config=*:read-operation-description(name=add) does not work
AddressTemplate template = serverConfigTemplate(hosts.get(0));
metadataProcessor.lookup(template, progress.get(), new SuccessfulMetadataCallback(eventBus, resources) {
@Override
public void onMetadata(Metadata metadata) {
String id = Ids.build(SERVER_GROUP, statementContext.selectedServerGroup(), SERVER, FORM);
SingleSelectBoxItem hostFormItem = new SingleSelectBoxItem(HOST, Names.HOST, hosts, false);
hostFormItem.setRequired(true);
NameItem nameItem = new NameItem();
ModelNodeForm<ModelNode> form = new ModelNodeForm.Builder<>(id, metadata).unboundFormItem(nameItem, 0).unboundFormItem(hostFormItem, 1, resources.messages().addServerHostHelp()).customFormItem(GROUP, attributeDescription -> {
TextBoxItem groupItem = new TextBoxItem(GROUP, resources.constants().group());
groupItem.setEnabled(false);
return groupItem;
}).fromRequestProperties().build();
AddResourceDialog dialog = new AddResourceDialog(resources.messages().addServerTitle(), form, (resource, payload) -> {
payload.get(GROUP).set(statementContext.selectedServerGroup());
String serverName = nameItem.getValue();
ResourceAddress address = serverConfigTemplate(hostFormItem.getValue()).resolve(statementContext, serverName);
crud.add(serverName, address, payload, resources.messages().addResourceSuccess(Names.SERVER, serverName), (name, address1) -> refresh(RESTORE_SELECTION));
});
dialog.getForm().<String>getFormItem(NAME).addValidationHandler(createUniqueValidation());
dialog.show();
form.<String>getFormItem(GROUP).setValue(statementContext.selectedServerGroup());
}
});
});
}
}
Aggregations