use of models.properties.PropertyPage in project coprhd-controller by CoprHD.
the class ConfigProperties method saveProperties.
public static void saveProperties() {
Map<String, String> properties = params.allSimple();
for (Entry<String, String> entry : properties.entrySet()) {
entry.setValue(StringUtils.trim(entry.getValue()));
}
List<PropertyPage> pages = loadPropertyPages();
for (PropertyPage page : pages) {
page.validate(properties);
}
boolean rebootRequired = false;
Map<String, String> updated = Maps.newHashMap();
for (PropertyPage page : pages) {
Map<String, String> pageUpdates = page.getUpdatedValues(properties);
updated.putAll(pageUpdates);
// Update the reboot required flag based on the values set for this page
rebootRequired |= page.isRebootRequired(pageUpdates.keySet());
}
if (validation.hasErrors()) {
flash.error(MessagesUtils.get("configProperties.error.validationError"));
handleError(updated);
} else if (!Common.isClusterStable()) {
flash.error(MessagesUtils.get("configProperties.error.clusterNotStable"));
handleError(updated);
} else {
if (!updated.isEmpty()) {
// If reboot is required, submit as a job and go to maintenance page. The cluster reboots immediately
if (rebootRequired) {
try {
ConfigPropertyUtils.saveProperties(updated);
flash.success(MessagesUtils.get("configProperties.submittedReboot"));
Maintenance.maintenance(Common.reverseRoute(ConfigProperties.class, "properties"));
} catch (Exception e) {
Logger.error("reboot exception - ", e);
flashException(e);
handleError(updated);
}
}
try {
ConfigPropertyUtils.saveProperties(updated);
flash.success(MessagesUtils.get("configProperties.saved"));
} catch (Exception e) {
flashException(e);
handleError(updated);
}
}
properties();
}
}
use of models.properties.PropertyPage in project coprhd-controller by CoprHD.
the class ConfigProperties method loadPropertyPages.
private static List<PropertyPage> loadPropertyPages() {
boolean isActiveSite = DisasterRecoveryUtils.isActiveSite();
Map<String, Property> properties = loadProperties();
Map<String, PropertyPage> pages = Maps.newLinkedHashMap();
Map<String, PropertyPage> excludePages = Maps.newLinkedHashMap();
if (isActiveSite) {
addPage(pages, new NetworkPropertyPage(properties));
if (PlatformUtils.isAppliance()) {
// This done to maintain the current tab order
addPage(pages, new SecurityPropertyPage(properties));
}
addPage(pages, new ControllerPropertyPage(properties));
addPage(pages, new DiscoveryPropertyPage(properties));
if (!SetupUtils.isOssBuild()) {
addPage(pages, new SupportPropertyPage(properties));
}
addPage(pages, new SmtpPropertyPage(properties));
addPage(pages, new UpgradePropertyPage(properties));
addPage(pages, new PasswordPropertyPage(properties));
addPage(pages, new SyslogPropertiesPage(properties));
addPage(pages, new BackupPropertyPage(properties));
} else {
if (PlatformUtils.isAppliance()) {
addPage(pages, new SecurityPropertyPage(properties));
}
addPage(excludePages, new NetworkPropertyPage(properties));
addPage(excludePages, new ControllerPropertyPage(properties));
addPage(excludePages, new DiscoveryPropertyPage(properties));
addPage(excludePages, new SupportPropertyPage(properties));
addPage(excludePages, new SmtpPropertyPage(properties));
addPage(excludePages, new UpgradePropertyPage(properties));
addPage(excludePages, new DefaultPropertyPage(OTHER));
addPage(excludePages, new PasswordPropertyPage(properties));
addPage(excludePages, new SyslogPropertiesPage(properties));
addPage(excludePages, new BackupPropertyPage(properties));
}
addDefaultPages(pages, properties.values(), excludePages, isActiveSite);
return Lists.newArrayList(pages.values());
}
use of models.properties.PropertyPage in project coprhd-controller by CoprHD.
the class ConfigProperties method addDefaultPages.
private static void addDefaultPages(Map<String, PropertyPage> pages, Collection<Property> properties, Map<String, PropertyPage> excludePages, boolean isActiveSite) {
for (Property property : properties) {
String pageName = StringUtils.defaultIfBlank(property.getPageName(), DEFAULT_PAGE);
PropertyPage page = pages.get(pageName);
if (excludePages.get(pageName) == null) {
if (page == null) {
page = addPage(pages, new DefaultPropertyPage(pageName));
}
if (isActiveSite) {
page.getProperties().add(property);
} else {
String propertyName = StringUtils.defaultIfBlank(property.getName(), DEFAULT_PAGE);
if (StringUtils.equals(propertyName, PERMIT_ROOT_CONSOLE) || StringUtils.equals(propertyName, PERMIT_ROOT_SSH)) {
if (!StringUtils.equals(pageName, SECURITY_PAGE)) {
page.getProperties().add(property);
}
} else {
page.getProperties().add(property);
}
}
}
}
}
use of models.properties.PropertyPage in project coprhd-controller by CoprHD.
the class ConfigProperties method properties.
public static void properties() {
ClusterInfo clusterInfo = Common.getClusterInfoWithRoleCheck();
List<PropertyPage> pages = loadPropertyPages();
render(pages, clusterInfo);
}
Aggregations