/** * Gets the config parms. * * @return the config parms */ public ConfigurationParameter[] getConfigParms() { switch (kind) { case NOT_IN_ANY_GROUP: return cpd.getConfigurationParameters(); case COMMON: return cpd.getCommonParameters(); case NAMED_GROUP: return namedCg.getConfigurationParameters(); default: throw new InternalErrorCDE("invalid state"); } }
/** * Gets the all group names. * * @param aCpd the a cpd * @return all named groups, excludes <Common> and <Not in any group> */ protected String[] getAllGroupNames(ConfigurationParameterDeclarations aCpd) { ConfigurationGroup[] cgs = aCpd.getConfigurationGroups(); Set results = new TreeSet(); for (int i = 0; i < cgs.length; i++) { String[] names = cgs[i].getNames(); for (int j = 0; j < names.length; j++) { results.add(names[j]); } } return (String[]) results.toArray(stringArray0); }
/** * Sets the name array. * * @param names the new name array */ public void setNameArray(String[] names) { if (kind != NAMED_GROUP) throw new InternalErrorCDE("invalid call"); namedCg.setNames(names); }
for (int i = 0; i < groups.length; i++) { ConfigurationParameter[] paramsInGroup = groups[i].getConfigurationParameters(); String[] names = groups[i].getNames(); for (int j = 0; j < names.length; j++) { if (paramsInGroup != null) {
ConfigurationParameter[] cps = groups[i].getConfigurationParameters(); if (null == cps) groups[i].setConfigurationParameters(cps = configurationParameterArray0); fillGroup(groups[i].getConfigurationParameters(), groups[i].getNames(), groups[i]);
/** * Fixup cpd. */ private void fixupCpd() { if (null == cpd.getConfigurationParameters()) cpd.setConfigurationParameters(AbstractSection.configurationParameterArray0); if (null == cpd.getCommonParameters()) cpd.setCommonParameters(AbstractSection.configurationParameterArray0); if (null == cpd.getConfigurationGroups()) cpd.setConfigurationGroups(AbstractSection.configurationGroupArray0); ConfigurationGroup[] cgs = cpd.getConfigurationGroups(); for (int i = 0; i < cgs.length; i++) { if (null == cgs[i].getConfigurationParameters()) cgs[i].setConfigurationParameters(AbstractSection.configurationParameterArray0); } }
/** * Called to add group to aggregate parm decl based on delegate group. * * @param group the delegate group needing to be added to the aggregate * @return the config group */ public ConfigGroup addGroup(ConfigGroup group) { String groupName = group.getName(); String[] groupNameArray = group.getNameArray(); if (group.getKind() == ConfigGroup.COMMON) { groupNameArray = getAllGroupNames(group.getCPD()); groupName = groupNameArrayToString(groupNameArray); } ConfigurationGroup cg = new ConfigurationGroup_impl(); cg.setConfigurationParameters(configurationParameterArray0); TreeItem item = addGroupToGUI(groupName, cg); // fill(commonParms, item); // don't add common parsm, they're added by definition addGroupToModel(cg); cg.setNames(groupNameArray); tree.setSelection(new TreeItem[] { item }); return new ConfigGroup(cpd, cg); }
if (groups != null) { for (int i = 0; i < groups.length; i++) { String[] names = groups[i].getNames(); .getCommonParameters(), aContextName); NameValuePair[] specificParamSettings = getParamSettings(names[j], groups[i] .getConfigurationParameters(), aContextName); NameValuePair[] mergedSettings = new NameValuePair[commonParamSettings.length + specificParamSettings.length];
/** * Removes the parameter. * * @param itemToRemove the item to remove * @param nameToRemove the name to remove */ private void removeParameter(TreeItem itemToRemove, String nameToRemove) { TreeItem parentItem = itemToRemove.getParentItem(); ConfigurationGroup cg = null; String parentGroupName = getName(parentItem.getText()); if (parentGroupName.equals(NOT_IN_ANY_GROUP)) cpd.setConfigurationParameters(removeConfigurationParameter(cpd.getConfigurationParameters(), nameToRemove)); else if (parentGroupName.equals(COMMON_GROUP)) cpd.setCommonParameters(commonParms = removeConfigurationParameter(cpd.getCommonParameters(), nameToRemove)); else { cg = getConfigurationGroup(parentGroupName); cg.setConfigurationParameters(removeConfigurationParameter(cg.getConfigurationParameters(), nameToRemove)); } removeParmSettingFromMultipleGroups(itemToRemove, REMOVE_FROM_GUI); itemToRemove.dispose(); if (null != cg && cg.getConfigurationParameters().length == 0) { removeGroup(parentItem, getName(parentItem)); } }
if (existing == null) { ConfigurationGroup cg = new ConfigurationGroup_impl(); cg.setConfigurationParameters(configurationParameterArray0); cg.setNames(groupNamesToArray(names)); item = addGroupToGUI(names, cg); addGroupToModel(cg);
if (groups != null) { for (int i = 0; i < groups.length; i++) { String[] names = groups[i].getNames(); ConfigurationParameter[] params = groups[i].getConfigurationParameters(); if (params != null) { declareParameters(names[j], params, settings, aContextName, externalOverrides);
/** * Gets the name array. * * @return the name array */ public String[] getNameArray() { switch (kind) { case NOT_IN_ANY_GROUP: return new String[] { AbstractSectionParm.NOT_IN_ANY_GROUP }; case COMMON: return new String[] { AbstractSectionParm.COMMON_GROUP }; case NAMED_GROUP: return namedCg.getNames(); default: throw new InternalErrorCDE("invalid state"); } }
/** * Called from UI when adding a new Configuraton Parameter Called from refresh when filling params * Called when adding override to new parm. * * @param dialog the dialog * @param group the group * @return the configuration parameter */ private ConfigurationParameter addNewConfigurationParameter(AddParameterDialog dialog, TreeItem group) { ConfigurationParameter newCP = new ConfigurationParameter_impl(); fillModelParm(dialog, newCP); if (null != group) { String groupName = getName(group.getText()); if (groupName.equals(COMMON_GROUP)) { cpd.setCommonParameters(commonParms = addParmToArray(cpd.getCommonParameters(), newCP)); } else if (groupName.equals(NOT_IN_ANY_GROUP)) { cpd.setConfigurationParameters(addParmToArray(cpd.getConfigurationParameters(), newCP)); } else { ConfigurationGroup cg = getConfigurationGroup(groupName); cg.setConfigurationParameters(addParmToArray(cg.getConfigurationParameters(), newCP)); } } else { // no groups throw new InternalErrorCDE("invalid state"); } addNewConfigurationParameterToGUI(newCP, group); return newCP; }
/** * Add a suffix to the name to make it unique within all parameters defined for the cpd. * * @param name the name * @return name with suffix making it unique */ private String generateUniqueName(String name) { List allNames = new ArrayList(); addParmNames(allNames, cpd.getConfigurationParameters()); addParmNames(allNames, cpd.getCommonParameters()); ConfigurationGroup[] cgs = cpd.getConfigurationGroups(); if (null != cgs) { for (int i = 0; i < cgs.length; i++) { addParmNames(allNames, cgs[i].getConfigurationParameters()); } } int suffix = 1; String nameTry = name + suffix; while (allNames.contains(nameTry)) nameTry = name + ++suffix; return nameTry; }
/** * Removes the group. * * @param itemToRemove the item to remove * @param nameToRemove the name to remove */ private void removeGroup(TreeItem itemToRemove, String nameToRemove) { if (nameToRemove.equals(COMMON_GROUP)) { removeCommonParmSettingsFromMultipleGroups(); cpd.setCommonParameters(configurationParameterArray0); commonParms = configurationParameterArray0; // can't really remove the <Common> group so remove all the parms disposeAllChildItems(itemToRemove); } else if (nameToRemove.equals(NOT_IN_ANY_GROUP)) { // remove settings for all non-group parm definitions removeIncludedParmSettingsFromSingleGroup(NOT_IN_ANY_GROUP, null); cpd.setConfigurationParameters(configurationParameterArray0); // remove all non-group parm definitions disposeAllChildItems(itemToRemove); } else { ConfigurationGroup cg = getConfigurationGroup(nameToRemove); // remove settings for all parms in the group too // also updates the settings GUI if the GUI is initialized removeIncludedParmSettingsFromMultipleGroups(cg.getNames(), cg.getConfigurationParameters()); // remove group cpd.setConfigurationGroups(removeConfigurationGroup(cpd.getConfigurationGroups(), cg)); itemToRemove.dispose(); // also disposes children of group in // GUI } }
/** * @see ConfigurationParameterDeclarations#getConfigurationGroupDeclarations(String) */ public ConfigurationGroup[] getConfigurationGroupDeclarations(String aGroupName) { List<ConfigurationGroup> results = new ArrayList<ConfigurationGroup>(); ConfigurationGroup[] grps = getConfigurationGroups(); if (grps != null) { for (int i = 0; i < grps.length; i++) { String[] names = grps[i].getNames(); for (int j = 0; j < names.length; j++) { if (aGroupName.equals(names[j])) { results.add(grps[i]); break; } } } } ConfigurationGroup[] resultArr = new ConfigurationGroup[results.size()]; results.toArray(resultArr); return resultArr; }
public String[] getConfigParameterNames(String aGroup) { ConfigurationGroup[] groups = getConfigurationManager().getConfigParameterDeclarations( getQualifiedContextName()).getConfigurationGroupDeclarations(aGroup); if (groups.length == 0) { return EMPTY_STRINGS; } else { List<String> names = new ArrayList<String>(); ConfigurationParameter[] commonParams = getConfigurationManager() .getConfigParameterDeclarations(getQualifiedContextName()).getCommonParameters(); if (commonParams != null) { for (int i = 0; i < commonParams.length; i++) { names.add(commonParams[i].getName()); } } for (int i = 0; i < groups.length; i++) { ConfigurationParameter[] groupParams = groups[i].getConfigurationParameters(); for (int j = 0; j < groupParams.length; j++) { names.add(groupParams[j].getName()); } } String[] nameArray = new String[names.size()]; names.toArray(nameArray); return nameArray; } }
String[] names = groups[i].getNames(); for (int j = 0; j < names.length; j++) { Set<String> paramNamesInGroup = groupToParamSetMap.get(names[j]); ConfigurationParameter[] paramsInGroup = groups[i].getConfigurationParameters(); if (paramsInGroup != null) { for (int k = 0; k < paramsInGroup.length; k++) {
/** * Group name already defined. * * @param names the names * @return true if there is a group whose names are the same set */ private boolean groupNameAlreadyDefined(String[] names) { ConfigurationGroup[] cgs = cpd.getConfigurationGroups(); if (null != cgs) { for (int i = 0; i < cgs.length; i++) { if (setEqual(names, cgs[i].getNames())) return true; } } return false; }
ArrayList<ConfigurationParameter> cps = new ArrayList<ConfigurationParameter>(); for (ConfigurationGroup dcg : dcgs) { cps.addAll(Arrays.asList(dcg.getConfigurationParameters()));