remove left-over support for commercial variants from configuration editing tool

Signed-off-by: Erik Boasson <eb@ilities.com>
This commit is contained in:
Erik Boasson 2019-02-14 12:37:36 +01:00
parent 164763e13c
commit 4f59df2451
16 changed files with 34 additions and 633 deletions

View file

@ -103,153 +103,6 @@ public class Config {
return config;
}
/**
* Loads the release information from a file named RELEASEINFO located in
* the etc directory of the installation.
*
* @return true if the release information could be loaded, false otherwise.
*/
public boolean loadReleaseInfo(){
FileInputStream fis = null;
if (config == null){
config = new Properties ();
}
boolean result = true;
String homeDir = System.getenv("OSPL_HOME");
String separator = System.getProperty("file.separator");
File releaseFile = new File (homeDir + separator + "etc" + separator + "RELEASEINFO");
if(releaseFile.exists()) {
try {
fis = new FileInputStream(releaseFile);
config.load(fis);
} catch (FileNotFoundException e) {
result = false;
} catch (IOException e) {
result = false;
} finally {
if (fis != null) {
try {
fis.close();
} catch (IOException ie) {
result = false;
}
}
}
}
// If we don't have a value for the version property then try
// to load the value from the development tree RELEASE file
String version = config.getProperty("PACKAGE_VERSION");
if (version == null) {
releaseFile = new File (homeDir + separator + "release_info" + separator + "RELEASE");
if(releaseFile.exists()) {
try {
fis = new FileInputStream(releaseFile);
config.load(fis);
} catch (FileNotFoundException e) {
result = false;
} catch (IOException e) {
result = false;
} finally {
if (fis != null) {
try {
fis.close();
} catch (IOException ie) {
result = false;
}
}
}
}
}
if(!result){
config = null;
}
return result;
}
/**
* Loads the default configuration. This located in the home directory of
* the user in the '.splice_tooling.properties' file.
*
* @return true if the default configuration could be loaded, false
* otherwise.
*/
public boolean loadDefault(){
String key, value;
boolean result = true;
String homeDir = System.getProperty("user.home");
String separator = System.getProperty("file.separator");
config = new Properties();
FileInputStream fis = null;
// Load the release information so that we have the PACKAGE_VERSION property.
result = loadReleaseInfo();
if (result) {
String version = config.getProperty("PACKAGE_VERSION");
if (version != null) {
version = version.replaceAll("\"", "");
version = new String ("." + version);
} else {
version = new String ("");
}
configFile = new File(homeDir + separator + ".ospl_tooling.properties" + version);
} else {
configFile = new File(homeDir + separator + ".ospl_tooling.properties");
// Reset the result flag.
result = true;
}
if(!(configFile.exists())) {
try {
configFile.createNewFile();
} catch (IOException e) {
result = false;
}
} else {
try {
fis = new FileInputStream(configFile);
config.load(fis);
Properties newConfig = new Properties(config);
if(validator != null){
Iterator<Object> iter = config.keySet().iterator();
while(iter.hasNext()){
key = (String)iter.next();
value = config.getProperty(key);
value = validator.getValidatedValue(key, value);
if(value == null){
newConfig.remove(key);
} else {
newConfig.setProperty(key, value);
}
}
}
config = newConfig;
} catch (FileNotFoundException e) {
result = false;
} catch (IOException e) {
result = false;
} finally {
if (fis != null) {
try {
fis.close();
} catch (IOException ie) {
result = false;
}
}
}
}
if(!result){
config = null;
configFile = null;
}
return result;
}
/**
* Loads the configuration from the supplied URI.
*

View file

@ -1,32 +0,0 @@
/*
* Copyright(c) 2006 to 2018 ADLINK Technology Limited and others
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0, or the Eclipse Distribution License
* v. 1.0 which is available at
* http://www.eclipse.org/org/documents/edl-v10.php.
*
* SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
*/
package org.eclipse.cyclonedds.common.util;
public class ConfigModeIntializer {
public static final String COMMUNITY = "COMMUNITY";
public static final String COMMERCIAL = "COMMERCIAL";
public static final int COMMUNITY_MODE = 1;
public static final int COMMERCIAL_MODE = 2;
public static final int COMMUNITY_MODE_FILE_OPEN = 3;
public static final int LITE_MODE = 4;
public static int CONFIGURATOR_MODE = COMMERCIAL_MODE;
public static void setMode(int mode) {
CONFIGURATOR_MODE = mode;
}
public int getMode() {
return CONFIGURATOR_MODE;
}
}

View file

@ -48,14 +48,6 @@ public class Initializer {
if(args.length > 0){
Report.getInstance().writeInfoLog("Reading configuration from " + args[0] + ".");
result = Config.getInstance().load(args[0]);
if(!result){
Report.getInstance().writeInfoLog("Applying default configuration.");
result = Config.getInstance().loadDefault();
}
}
else{
result = Config.getInstance().loadDefault();
}
if(!result){

View file

@ -32,7 +32,6 @@ import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.eclipse.cyclonedds.common.util.ConfigModeIntializer;
import org.eclipse.cyclonedds.common.util.Report;
import org.eclipse.cyclonedds.config.meta.MetaAttribute;
import org.eclipse.cyclonedds.config.meta.MetaConfiguration;
@ -100,161 +99,6 @@ public class DataConfiguration {
}
this.initExisting(repair);
this.file = file;
if (ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.LITE_MODE) {
// The following code is document validation specific to OpenSplice
int currentMode = ConfigModeIntializer.CONFIGURATOR_MODE;
if (ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.COMMERCIAL_MODE) {
ConfigModeIntializer.setMode(ConfigModeIntializer.COMMERCIAL_MODE);
}
/* correct service tags */
DataElement dataDomain = findDataElement(this.rootElement, "Domain");
ArrayList<DataElement> domainServices = new ArrayList<DataElement>();
/* collect all service tags */
for (DataNode dn : dataDomain.getChildren()) {
if (dn instanceof DataElement) {
if (dn.getNode().getNodeName().equals("Service")) {
domainServices.add((DataElement) dn);
}
}
}
ArrayList<DataElement> tmpServices = new ArrayList<DataElement>(services);
ArrayList<DataElement> tmpDomainServices = new ArrayList<DataElement>(domainServices);
ArrayList<MetaNode> comServices = new ArrayList<MetaNode>();
/* domain element is not a service */
tmpServices.remove(dataDomain);
for (DataElement de : domainServices) {
if (dataDomain != de) {
String domainserviceName = de.getNode().getAttributes().getNamedItem("name").getNodeValue();
for (DataElement del : services) {
Node node = del.getNode().getAttributes().getNamedItem("name");
if (node != null) {
String serviceName = node.getNodeValue();
if (serviceName.equals(domainserviceName)) {
tmpDomainServices.remove(de);
}
}
}
}
}
/*
* tmpDomainServices now contains a list of services that are
* not in the configuration file but which are configured in the
* domain tag
*/
for (DataElement de : tmpDomainServices) {
String serviceName = de.getNode().getAttributes().getNamedItem("name").getNodeValue();
MetaNode[] mn = ((MetaElement) this.getRootElement().getMetadata()).getChildren();
for (MetaNode m : mn) {
if (m instanceof MetaElement) {
MetaElement metaDomainService = findMetaElement((MetaElement) rootElement.getMetadata(),
"Service");
MetaElement maDomainCommand = findMetaElement(metaDomainService, "Command");
MetaAttribute maServiceName = findMetaAttribute((MetaElement) m, "name");
if (maServiceName != null && maDomainCommand != null) {
DataValue serviceNameValue = findDataValueforMetaValue(de, maServiceName.getValue());
DataValue domainCommandValue = findDataValueforMetaValue(de,
((MetaValue) maDomainCommand.getChildren()[0]));
String name = getServiceForCommand((String) domainCommandValue.getValue());
if (((MetaElement) m).getName().equals(name)) {
/* we got the service we need to add */
comServices.add(m);
DataNode dn = this.addNodeWithDependency(rootElement, m);
serviceNameValue = findDataValueforMetaValue((DataElement) dn, maServiceName
.getValue());
/* set name for service Element */
serviceNameValue.setValue(serviceName);
}
}
}
}
}
for (DataElement de : services) {
if (dataDomain != de) {
String serviceName = de.getNode().getAttributes().getNamedItem("name").getNodeValue();
for (DataElement del : domainServices) {
String domainserviceName = del.getNode().getAttributes().getNamedItem("name")
.getNodeValue();
if (serviceName.equals(domainserviceName)) {
/*
* found a match in both service and domain
* elements remove it from the tmp services
* object
*/
tmpServices.remove(de);
MetaAttribute maDomainName = findMetaAttribute((MetaElement) del.getMetadata(), "name");
DataValue domainNameValue = findDataValueforMetaValueInCurrentElement(del, maDomainName
.getValue());
this.serviceNames.add(domainNameValue);
MetaAttribute maServiceName = findMetaAttribute((MetaElement) de.getMetadata(), "name");
DataValue serviceNameValue = findDataValueforMetaValue(de, maServiceName.getValue());
this.serviceNames.add(serviceNameValue);
getServiceNames().add(serviceNameValue);
getServiceNames().add(domainNameValue);
/* set dependencies */
domainNameValue.addDataValueDependency(serviceNameValue);
serviceNameValue.addDataValueDependency(domainNameValue);
de.addDependency(del);
del.addDependency(de);
}
}
}
}
ConfigModeIntializer.setMode(currentMode);
/*
* tmpServices now contains all services that are missing from
* the domain service element, we can add them now
*/
if ((!tmpDomainServices.isEmpty() || !tmpServices.isEmpty()) && !repair) {
if (!tmpDomainServices.isEmpty() && !tmpServices.isEmpty()) {
throw new DataException("There is/are " + tmpServices.size()
+ " service(s) that is/are not configured in the Domain tag and "
+ tmpDomainServices.size()
+ " service element(s) that do not match a configured service");
} else if (!tmpDomainServices.isEmpty()) {
throw new DataException("There are " + tmpDomainServices.size()
+ " service element(s) that do not match a configured service");
} else {
throw new DataException("There is/are " + tmpServices.size()
+ " service(s) that is/are not configured in the Domain tag");
}
}
if (!tmpServices.isEmpty() && repair) {
for (DataElement de : tmpServices) {
String serviceName = de.getNode().getAttributes().getNamedItem("name").getNodeValue();
createDomainServiceForSerivce(de, de.getMetadata(), serviceName);
}
}
/* remove commerial items from xml tree in community mode */
for (MetaNode m : comServices) {
if (m.getVersion().equals(ConfigModeIntializer.COMMERCIAL)
&& (currentMode == ConfigModeIntializer.COMMUNITY_MODE || currentMode == ConfigModeIntializer.COMMUNITY_MODE_FILE_OPEN)) {
NodeList nl = this.getDocument().getElementsByTagName(
((MetaElement) m).getName());
for (int i = 0; i < nl.getLength(); i++) {
Node child = nl.item(i);
if (child != null) {
child.getParentNode().removeChild(child);
}
}
}
}
}
}
} catch (SAXException se) {
throw new DataException(se.getMessage());
@ -352,9 +196,6 @@ public class DataConfiguration {
public void addNode(DataElement parent, MetaNode child) throws DataException {
if((parent.getOwner().equals(this))){
if (ConfigModeIntializer.CONFIGURATOR_MODE == ConfigModeIntializer.COMMUNITY_MODE_FILE_OPEN) {
ConfigModeIntializer.setMode(ConfigModeIntializer.COMMUNITY_MODE);
}
DataNode added = this.createDataForMeta(parent, child);
if(parent.equals(this.rootElement)){
@ -372,9 +213,6 @@ public class DataConfiguration {
public DataNode addNodeWithDependency(DataElement parent, MetaNode child) throws DataException {
DataNode result = null;
if ((parent.getOwner().equals(this))) {
if (ConfigModeIntializer.CONFIGURATOR_MODE == ConfigModeIntializer.COMMUNITY_MODE_FILE_OPEN) {
ConfigModeIntializer.setMode(ConfigModeIntializer.COMMUNITY_MODE);
}
DataNode added = this.createDataForMeta(parent, child);
if (parent.equals(this.rootElement)) {
@ -432,11 +270,6 @@ public class DataConfiguration {
/* get the newly created domain element */
dataDomain = (DataElement) addNodeWithDependency(dataDomain, metaDomainService);
if (metaNode.getVersion().equals(ConfigModeIntializer.COMMERCIAL)
&& (ConfigModeIntializer.CONFIGURATOR_MODE == ConfigModeIntializer.COMMUNITY_MODE || ConfigModeIntializer.CONFIGURATOR_MODE == ConfigModeIntializer.COMMUNITY_MODE_FILE_OPEN)) {
commercialServices.add(dataDomain.getNode());
}
/*
* find name and command DataValue objects for the domain element
*/
@ -863,10 +696,6 @@ public class DataConfiguration {
throw new DataException("RootElement is 'null'.");
}
this.document.appendChild(domElement);
if (ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.LITE_MODE) {
domElement.setAttribute("version", Double.toString(this.metadata.getVersion()));
}
this.rootElement = new DataElement(metaElement, domElement);
this.rootElement.setOwner(this);

View file

@ -13,7 +13,6 @@ package org.eclipse.cyclonedds.config.data;
import java.util.ArrayList;
import org.eclipse.cyclonedds.common.util.ConfigModeIntializer;
import org.eclipse.cyclonedds.config.meta.MetaAttribute;
import org.eclipse.cyclonedds.config.meta.MetaElement;
import org.eclipse.cyclonedds.config.meta.MetaNode;
@ -82,10 +81,6 @@ public class DataElement extends DataNode {
}
if(nodeMeta instanceof MetaElement){
if (nodeMeta.getVersion().equals(ConfigModeIntializer.COMMERCIAL)
&& (ConfigModeIntializer.CONFIGURATOR_MODE == ConfigModeIntializer.COMMUNITY_MODE || ConfigModeIntializer.CONFIGURATOR_MODE == ConfigModeIntializer.COMMUNITY_MODE_FILE_OPEN)) {
addToDOM = 0;
}
if(count == ((MetaElement)nodeMeta).getMaxOccurrences()){
throw new DataException("Maximum number of occurrences for " +
((MetaElement)nodeMeta).getName()+ " reached.");
@ -99,10 +94,6 @@ public class DataElement extends DataNode {
this.node.appendChild(textNode);
}
} else if(nodeMeta instanceof MetaAttribute){
if (nodeMeta.getVersion().equals(ConfigModeIntializer.COMMERCIAL)
&& (ConfigModeIntializer.CONFIGURATOR_MODE == ConfigModeIntializer.COMMUNITY_MODE || ConfigModeIntializer.CONFIGURATOR_MODE == ConfigModeIntializer.COMMUNITY_MODE_FILE_OPEN)) {
addToDOM = 0;
}
if (addToDOM == 1) {
((Element)this.node).setAttributeNode((Attr)node.getNode());
}
@ -170,29 +161,15 @@ public class DataElement extends DataNode {
if(count == ((MetaElement)nodeMeta).getMinOccurrences()){
throw new DataException("Minimum number of occurrences for " +
((MetaElement)nodeMeta).getName()+ " reached.");
} else if (ConfigModeIntializer.CONFIGURATOR_MODE == ConfigModeIntializer.COMMERCIAL_MODE) {
} else
((Element) this.node).removeChild(node.getNode());
} else {
if (!nodeMeta.getVersion().equals(
ConfigModeIntializer.COMMERCIAL)) {
if (!node.getOwner().getCommercialServices()
.contains(node.getNode())) {
((Element) this.node).removeChild(node.getNode());
}
}
}
} else if(nodeMeta instanceof MetaAttribute){
if(((MetaAttribute)nodeMeta).isRequired()){
throw new DataException("Cannot remove required attribute " +
((MetaAttribute)nodeMeta).getName()+ ".");
} else if (ConfigModeIntializer.CONFIGURATOR_MODE == ConfigModeIntializer.COMMERCIAL_MODE) {
} else {
((Element) this.node)
.removeAttributeNode((Attr) node.getNode());
} else {
if (!nodeMeta.getVersion().equals(
ConfigModeIntializer.COMMERCIAL)) {
((Element)this.node).removeAttributeNode((Attr)node.getNode());
}
}
} else {
((Element)this.node).removeChild(node.getNode());

View file

@ -17,8 +17,8 @@ public class MetaAttribute extends MetaNode {
private MetaValue value;
public MetaAttribute(String doc, String name, boolean required,
MetaValue value, String version, String dimension) {
super(doc, version, dimension);
MetaValue value, String dimension) {
super(doc, dimension);
this.name = name;
this.required = required;
this.value = value;
@ -88,7 +88,6 @@ public class MetaAttribute extends MetaNode {
result += "\nAttribute\n";
result += "-Name: " + this.name + "\n";
result += "-Required: " + this.required + "\n";
result += "-Version: " + this.version + "\n";
result += "-Value: " + value.toString();
return result;

View file

@ -22,7 +22,6 @@ import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.eclipse.cyclonedds.common.util.ConfigModeIntializer;
import org.eclipse.cyclonedds.common.util.Report;
import org.w3c.dom.Attr;
import org.w3c.dom.Document;
@ -36,16 +35,13 @@ import org.xml.sax.SAXParseException;
public class MetaConfiguration {
private double version;
private final MetaElement rootElement;
private final ArrayList<MetaElement> services;
private static HashMap<String, String> serviceMapping = new HashMap<String, String>();
private static final double LATEST_VERSION_OSPL = 6.1;
private static MetaConfiguration instance = null;
private MetaConfiguration(double version, MetaElement rootElement, ArrayList<MetaElement> services) {
this.version = version;
private MetaConfiguration(MetaElement rootElement, ArrayList<MetaElement> services) {
this.rootElement = rootElement;
this.services = services;
}
@ -76,10 +72,6 @@ public class MetaConfiguration {
return retVal;
}
public double getVersion() {
return this.version;
}
private static MetaConfiguration load(String fileName){
MetaConfiguration config = null;
@ -87,9 +79,6 @@ public class MetaConfiguration {
if(is != null){
config = load(is);
if (config != null) {
config.version = LATEST_VERSION_OSPL;
}
}
return config;
}
@ -147,7 +136,6 @@ public class MetaConfiguration {
@Override
public String toString(){
StringBuffer buf = new StringBuffer();
buf.append("MetaConfiguration version: " + this.version + "\n");
buf.append("ROOT_ELEMENT:");
buf.append(this.rootElement.toString().replaceAll("\n", "\n\t"));
for(MetaElement me: this.services){
@ -167,8 +155,6 @@ public class MetaConfiguration {
try{
ArrayList<MetaElement> metaElements = new ArrayList<MetaElement>();
Element rootElement = dom.getDocumentElement();
float version = Float.parseFloat(rootElement.getAttribute("version"));
NodeList children = rootElement.getChildNodes();
@ -179,10 +165,6 @@ public class MetaConfiguration {
if(childElement instanceof Element){
if("rootElement".equals(childName)){
rootMetaElement = parseElement((Element)childElement, true);
if (rootMetaElement.getName().equals("Lite")
|| rootMetaElement.getName().equals("CycloneDDS")){
ConfigModeIntializer.setMode(ConfigModeIntializer.LITE_MODE);
}
} else if("element".equals(childName)){
metaElement = parseElement((Element)childElement, false);
if(metaElement != null){
@ -192,19 +174,12 @@ public class MetaConfiguration {
rootMetaElement.addChild(metaElement);
metaElements.add(metaElement);
}
} else if ("serviceMapping".equals(childName)
&& ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.LITE_MODE) {
// Service mapping only for configuring OSPL systems.
res = parseServiceMapping((Element) childElement, false);
if (!res) {
throw new MetaException("Could not resolve meta configuration for service mapping.");
}
}
}
}
if((rootMetaElement != null) && (version != 0.0)){
configuration = new MetaConfiguration(version, rootMetaElement, metaElements);
if((rootMetaElement != null)){
configuration = new MetaConfiguration(rootMetaElement, metaElements);
}
} catch(Exception exc){
@ -306,12 +281,10 @@ public class MetaConfiguration {
String nodeName, name;
int minOccurrences, maxOccurrences;
String comment = null;
String version = null;
String dimension = null;
try{
name = element.getAttribute("name");
version = element.getAttribute("version");
//if(!isRootElement){
minOccurrences = Integer.parseInt(element.getAttribute("minOccurrences"));
@ -372,7 +345,7 @@ public class MetaConfiguration {
}
if(name != null){
result = new MetaElement(comment, name, minOccurrences,
maxOccurrences, metaChildren, version, dimension);
maxOccurrences, metaChildren, dimension);
} else {
throw getException(element, "No name found");
}
@ -421,7 +394,7 @@ public class MetaConfiguration {
MetaValue data;
ArrayList<MetaNode> metaChildren;
NodeList children;
String name, comment, nodeName, version, dimension;
String name, comment, nodeName, dimension;
int minOccurrences, maxOccurrences;
Node node;
NodeList nodes;
@ -430,7 +403,6 @@ public class MetaConfiguration {
dimension = null;
comment = parseComment(element);
name = element.getAttribute("name");
version = element.getAttribute("version");
minOccurrences = Integer.parseInt(element.getAttribute("minOccurrences"));
maxOccurrences = Integer.parseInt(element.getAttribute("maxOccurrences"));
@ -478,7 +450,7 @@ public class MetaConfiguration {
}
}
result = new MetaElement(comment, name, minOccurrences,
maxOccurrences, metaChildren, version, dimension);
maxOccurrences, metaChildren, dimension);
} else {
throw getException(element, "No data found");
}
@ -494,7 +466,7 @@ public class MetaConfiguration {
private static MetaAttribute parseAttribute(Element element) throws MetaException{
MetaAttribute result;
MetaValue data;
String name, comment, version;
String name, comment;
boolean required;
String dimension;
@ -502,15 +474,13 @@ public class MetaConfiguration {
comment = parseComment(element);
name = element.getAttribute("name");
required = Boolean.parseBoolean(element.getAttribute("required"));
version = element.getAttribute("version");
if(name != null){
data = parseValue(element, element.getNodeName().substring(9));
if(data != null){
dimension = getDimensionChild(element);
result = new MetaAttribute(comment, name, required, data,
version, dimension);
result = new MetaAttribute(comment, name, required, data, dimension);
} else {
throw getException(element, "No data found");
}

View file

@ -20,9 +20,9 @@ public class MetaElement extends MetaNode {
private ArrayList<MetaNode> children;
public MetaElement(String doc, String name, int minOccurrences,
int maxOccurrences, ArrayList<MetaNode> children, String version,
int maxOccurrences, ArrayList<MetaNode> children,
String dimension) {
super(doc, version, dimension);
super(doc, dimension);
this.name = name;
this.minOccurrences = minOccurrences;
this.maxOccurrences = maxOccurrences;
@ -106,7 +106,6 @@ public class MetaElement extends MetaNode {
StringBuffer buf = new StringBuffer();
buf.append("\nElement\n");
buf.append("-Name: " + this.name + "\n");
buf.append("-Version: " + this.version + "\n");
buf.append("-MinOcccurrences: " + this.minOccurrences + "\n");
buf.append("-MaxOcccurrences: " + this.maxOccurrences + "\n");
if(this.children.size() > 0){

View file

@ -13,12 +13,10 @@ package org.eclipse.cyclonedds.config.meta;
public abstract class MetaNode {
String doc;
String version;
String dimension;
public MetaNode(String doc, String version, String dimension) {
public MetaNode(String doc, String dimension) {
this.doc = doc;
this.version = version;
this.dimension = dimension;
}
@ -30,10 +28,6 @@ public abstract class MetaNode {
this.doc = doc;
}
public String getVersion() {
return this.version;
}
public String getDimension() {
return this.dimension;
}

View file

@ -11,13 +11,11 @@
*/
package org.eclipse.cyclonedds.config.meta;
import org.eclipse.cyclonedds.common.util.ConfigModeIntializer;
public abstract class MetaValue extends MetaNode {
Object defaultValue;
public MetaValue(String doc, Object defaultValue, String dimension) {
super(doc, ConfigModeIntializer.COMMUNITY, dimension);
super(doc, dimension);
this.defaultValue = defaultValue;
}

View file

@ -34,7 +34,6 @@ import javax.swing.JTabbedPane;
import javax.swing.KeyStroke;
import javax.swing.SwingUtilities;
import org.eclipse.cyclonedds.common.util.ConfigModeIntializer;
import org.eclipse.cyclonedds.common.view.MainWindow;
import org.eclipse.cyclonedds.common.view.StatusPanel;
import org.eclipse.cyclonedds.config.data.DataConfiguration;
@ -71,15 +70,10 @@ public class ConfigWindow extends MainWindow implements DataConfigurationListene
private DataNodePopup popupSupport = null;
private ConfigTransferHandler transferHandler = null;
private String windowTitle = "Configurator";
public static final String OSPL_WINDOW_TITLE = "Vortex OpenSplice Configurator";
public static final String LITE_WINDOW_TITLE = "Vortex DDS Configurator";
private String windowTitle = "Eclipse Cyclone DDS Configurator";
public static final String OSPL_SERVICE_LABEL = "Service";
public static final String LITE_SERVICE_LABEL = "Component";
public static String SERVICE_LABEL;
public static String SERVICE_TEXT;
public static String SERVICE_LABEL = "Component";
public static String SERVICE_TEXT = "component";
/**
* This is the default constructor
@ -237,12 +231,7 @@ public class ConfigWindow extends MainWindow implements DataConfigurationListene
return this.controller;
}
public void setWindowTitle (int configMode) {
if (configMode == ConfigModeIntializer.LITE_MODE) {
this.windowTitle = LITE_WINDOW_TITLE;
} else {
this.windowTitle = OSPL_WINDOW_TITLE;
}
public void setWindowTitle () {
super.setTitle(this.windowTitle);
}
@ -351,10 +340,6 @@ public class ConfigWindow extends MainWindow implements DataConfigurationListene
private void initialize() {
this.setSize(800, 600);
this.controller = new ConfigWindowController(this);
// setServiceLabel relies on the
// ConfigModeIntializer.CONFIGURATOR_MODE variable which
// has been set during construction of ConfigWndowController
this.setServiceLabel();
this.popupSupport = new DataNodePopup();
this.transferHandler = new ConfigTransferHandler(this);
this.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
@ -373,22 +358,6 @@ public class ConfigWindow extends MainWindow implements DataConfigurationListene
this.setAppLogo();
}
/**
* Set the proper service label to be used throughout the configurator UI.
* Ospl uses the label "Service" while Lite uses the label "Component"
* (since the concept of service does not really exist)
*
*/
private void setServiceLabel(){
if (ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.LITE_MODE){
SERVICE_LABEL = OSPL_SERVICE_LABEL;
SERVICE_TEXT = OSPL_SERVICE_LABEL.toLowerCase();
} else {
SERVICE_LABEL = LITE_SERVICE_LABEL;
SERVICE_TEXT = LITE_SERVICE_LABEL.toLowerCase();
}
}
/**
* This method initializes jContentPane
*

View file

@ -27,7 +27,6 @@ import javax.swing.JOptionPane;
import javax.swing.SwingUtilities;
import javax.swing.filechooser.FileFilter;
import org.eclipse.cyclonedds.common.util.ConfigModeIntializer;
import org.eclipse.cyclonedds.common.util.Report;
import org.eclipse.cyclonedds.config.data.DataConfiguration;
import org.eclipse.cyclonedds.config.data.DataException;
@ -60,25 +59,12 @@ public class ConfigWindowController implements ActionListener {
// Initialize the MetaConfiguration. This is done so the Configurator can know for
// which product its meant for, according to the meta config file.
MetaConfiguration.getInstance();
view.setWindowTitle(ConfigModeIntializer.CONFIGURATOR_MODE);
view.setWindowTitle();
String osplHome = System.getenv("OSPL_HOME");
File f = null;
String fileSep = System.getProperty("file.separator");
if(osplHome == null){
f = new File(System.getProperty("user.dir") + fileSep);
} else {
f = new File(osplHome + fileSep + "etc" + fileSep + "config" + fileSep);
if((!f.exists()) || (!f.isDirectory())){
f = new File(osplHome + fileSep + "etc" + fileSep);
if((!f.exists()) || (!f.isDirectory())){
f = new File(System.getProperty("user.dir") + fileSep);
}
}
}
this.openFileChooser.setCurrentDirectory(f);
this.openFileChooser.setDialogTitle("Open configuration");
this.openFileChooser.setMultiSelectionEnabled(false);
@ -242,52 +228,9 @@ public class ConfigWindowController implements ActionListener {
DataConfiguration config = null;
try {
if (ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.COMMERCIAL_MODE &&
ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.LITE_MODE) {
ConfigModeIntializer.setMode(ConfigModeIntializer.COMMUNITY_MODE_FILE_OPEN);
}
config = new DataConfiguration(f, false);
} catch (DataException e) {
Report.getInstance().writeInfoLog("ConfigWindowController handleOpen\n" + e.getMessage());
if (ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.LITE_MODE) {
if (ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.COMMERCIAL_MODE) {
ConfigModeIntializer.setMode(ConfigModeIntializer.COMMUNITY_MODE);
}
int answer = JOptionPane.showConfirmDialog(
view,
"The configuration is not valid.\nReason: " +
e.getMessage() +
"\nTry automatic repairing?",
"Invalid configuration",
JOptionPane.YES_NO_OPTION);
if(answer == JOptionPane.YES_OPTION){
try {
config = new DataConfiguration(f, true);
view.setStatus("Configuration repaired successfully.", false);
} catch (DataException e1) {
JOptionPane.showMessageDialog(view,
"Configuration could not be repaired.\nReason: '" +
e.getMessage() + "'"
, "Error", JOptionPane.ERROR_MESSAGE);
handleSetStatus("Configuration could not be repaired.", false);
handleNextAction();
}
} else if(answer == JOptionPane.NO_OPTION){
handleSetStatus("Configuration not opened.", false);
handleNextAction();
}
} else {
JOptionPane.showConfirmDialog(
view,
"The configuration is not valid.\nReason: " +
e.getMessage(),
"Invalid configuration",
JOptionPane.PLAIN_MESSAGE);
}
}
if(config != null){
view.setDataConfiguration(config);
@ -326,23 +269,11 @@ public class ConfigWindowController implements ActionListener {
DataConfiguration config = null;
try {
if (ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.COMMERCIAL_MODE &&
ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.LITE_MODE) {
ConfigModeIntializer
.setMode(ConfigModeIntializer.COMMUNITY_MODE_FILE_OPEN);
}
config = new DataConfiguration(f, false);
} catch (DataException e) {
Report.getInstance().writeInfoLog(
"ConfigWindowController handleOpen\n"
+ e.getMessage());
if (ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.COMMERCIAL_MODE &&
ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.LITE_MODE) {
ConfigModeIntializer
.setMode(ConfigModeIntializer.COMMUNITY_MODE);
}
int answer = JOptionPane.showConfirmDialog(
view,
"The configuration is not valid.\nReason: "
@ -533,9 +464,6 @@ public class ConfigWindowController implements ActionListener {
public void run(){
view.setDataConfiguration(null);
newInProgress = false;
if (ConfigModeIntializer.CONFIGURATOR_MODE == ConfigModeIntializer.COMMUNITY_MODE_FILE_OPEN) {
ConfigModeIntializer.setMode(ConfigModeIntializer.COMMUNITY_MODE);
}
try {
DataConfiguration config = new DataConfiguration();
view.setDataConfiguration(config);
@ -628,13 +556,8 @@ public class ConfigWindowController implements ActionListener {
public static final String CONFIG_SUFFIX = ".xml";
public ConfigChooseFilter(){
if (ConfigModeIntializer.CONFIGURATOR_MODE == ConfigModeIntializer.LITE_MODE) {
ConfigChooseFilter.description = "Cyclone DDS config files (*" +
ConfigChooseFilter.description = "Eclipse Cyclone DDS config files (*" +
ConfigChooseFilter.CONFIG_SUFFIX + ")";
} else {
ConfigChooseFilter.description = "OpenSplice config files (*" +
ConfigChooseFilter.CONFIG_SUFFIX + ")";
}
}
@Override

View file

@ -18,7 +18,6 @@ import java.util.logging.Logger;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;
import org.eclipse.cyclonedds.common.util.ConfigModeIntializer;
import org.eclipse.cyclonedds.config.data.DataNode;
public class DataElementTableCellRenderer extends DefaultTableCellRenderer {
@ -43,27 +42,9 @@ public class DataElementTableCellRenderer extends DefaultTableCellRenderer {
node = node.getParent();
table.setToolTipText(null);
if (ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.COMMERCIAL_MODE) {
if (node.getMetadata().getVersion().equals(ConfigModeIntializer.COMMERCIAL)) {
if (ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.COMMUNITY_MODE_FILE_OPEN) {
comp.setBackground (Color.LIGHT_GRAY);
comp.setForeground (Color.GRAY);
table.setToolTipText("This element is not part of the community edition");
} else {
comp.setBackground (Color.RED);
comp.setForeground (Color.BLACK);
table.setToolTipText("This element is found in the configuration file but not part of the community edition");
}
} else {
comp.setBackground (Color.WHITE);
comp.setForeground (Color.BLACK);
table.setToolTipText(null);
}
} else {
comp.setBackground (Color.WHITE);
comp.setForeground (Color.BLACK);
table.setToolTipText(null);
}
return comp;
}
}

View file

@ -16,7 +16,6 @@ import java.util.ArrayList;
import javax.swing.SwingUtilities;
import javax.swing.table.DefaultTableModel;
import org.eclipse.cyclonedds.common.util.ConfigModeIntializer;
import org.eclipse.cyclonedds.config.data.DataAttribute;
import org.eclipse.cyclonedds.config.data.DataConfiguration;
import org.eclipse.cyclonedds.config.data.DataConfigurationListener;
@ -131,9 +130,7 @@ public class DataElementTableModel extends DefaultTableModel implements DataConf
public boolean isCellEditable(int row, int column) {
boolean result;
if(column == 1 && ConfigModeIntializer.CONFIGURATOR_MODE == ConfigModeIntializer.COMMERCIAL_MODE) {
result = true;
} else if (column == 1 && !element.getMetadata().getVersion().equals(ConfigModeIntializer.COMMERCIAL)) {
if(column == 1) {
result = true;
} else {
result = false;

View file

@ -34,7 +34,6 @@ import org.eclipse.cyclonedds.config.meta.MetaAttribute;
import org.eclipse.cyclonedds.config.meta.MetaElement;
import org.eclipse.cyclonedds.config.meta.MetaNode;
import org.eclipse.cyclonedds.config.meta.MetaValue;
import org.eclipse.cyclonedds.common.util.ConfigModeIntializer;
public class DataNodePopup implements MouseListener, ActionListener {
@ -137,10 +136,6 @@ public class DataNodePopup implements MouseListener, ActionListener {
if(parentParent != null){
current = this.countOccurrences((DataElement)parent.getParent(), parent.getMetadata());
min = ((MetaElement)metaParent).getMinOccurrences();
if (ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.COMMERCIAL_MODE && metaParent.getVersion().equals(ConfigModeIntializer.COMMERCIAL)) {
reset.setEnabled(false);
}
if(min == 0){
remove.setEnabled(true);
} else if(current > min){
@ -151,10 +146,6 @@ public class DataNodePopup implements MouseListener, ActionListener {
}
} else if(parent instanceof DataAttribute){
metaParent = parent.getMetadata();
if (ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.COMMERCIAL_MODE && metaParent.getVersion().equals(ConfigModeIntializer.COMMERCIAL)) {
reset.setEnabled(false);
}
if(((MetaAttribute)metaParent).isRequired()){
remove.setEnabled(false);
}
@ -387,40 +378,8 @@ public class DataNodePopup implements MouseListener, ActionListener {
public void addService(DataNode dataNode, MetaNode metaNode) throws DataException {
if (dataNode instanceof DataElement) {
if (ConfigModeIntializer.CONFIGURATOR_MODE != ConfigModeIntializer.LITE_MODE){
String serviceName = null;
String suggestedName = dataNode.getOwner().getMetaAttributeValue((MetaElement) metaNode, "name");
/*
* generate a new name if there is already a service with the
* default name
*/
if (dataNode.getOwner().containsServiceName(suggestedName)) {
String tmp = suggestedName + "_1";
for (int i = 1; dataNode.getOwner().containsServiceName(tmp); i++) {
tmp = suggestedName + "_" + i;
}
suggestedName = tmp;
}
serviceName = (String) JOptionPane.showInputDialog(null, "Please enter a service name:",
"Set the service name", JOptionPane.QUESTION_MESSAGE, null, null, suggestedName);
if (serviceName != null) {
if (!dataNode.getOwner().containsServiceName(serviceName)) {
/* get the newly created service element */
dataNode = dataNode.getOwner().addNodeWithDependency((DataElement) dataNode, metaNode);
dataNode.getOwner().createDomainServiceForSerivce(dataNode, metaNode, serviceName);
} else {
this.notifyStatus("Error: Servicename is already in use", false, false);
}
} else {
this.notifyStatus("Error: Please fill in a servicename", false, false);
}
} else {
/* get the newly created service element */
dataNode.getOwner().addNode((DataElement) dataNode, metaNode);
}
} else {
this.notifyStatus("Error: Unexpected type of parent found: '" + dataNode.getClass() + "'.", false, false);
}

View file

@ -18,7 +18,6 @@ import javax.swing.JFrame;
import javax.swing.WindowConstants;
import javax.swing.JSplitPane;
import org.eclipse.cyclonedds.common.util.ConfigModeIntializer;
import org.eclipse.cyclonedds.common.view.StatusPanel;
import org.eclipse.cyclonedds.config.meta.MetaConfiguration;
@ -37,8 +36,7 @@ public class HelpWindow extends JFrame implements TreeSelectionListener {
private JScrollPane docScrollPane = null;
private MetaNodeDocPane docPane = null;
public static final String OSPL_HELP_WINDOW_TITLE = "Vortex OpenSplice Configurator | Help";
public static final String LITE_HELP_WINDOW_TITLE = "Vortex DDS Configurator | Help";
public static final String HELP_WINDOW_TITLE = "Eclipse Cyclone DDS Configurator | Help";
/**
* This is the default constructor
@ -58,18 +56,13 @@ public class HelpWindow extends JFrame implements TreeSelectionListener {
this.setSize(640, 480);
this.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
this.setContentPane(getJContentPane());
setWindowTitle(ConfigModeIntializer.CONFIGURATOR_MODE);
setWindowTitle();
getElementTree().getSelectionModel().addTreeSelectionListener(this);
getDocPane().setNode(getElementTree().getSelectedMetaElement());
}
public void setWindowTitle (int configMode) {
String windowTitle = "Configurator | Help";
if (configMode == ConfigModeIntializer.LITE_MODE) {
windowTitle = LITE_HELP_WINDOW_TITLE;
} else {
windowTitle = OSPL_HELP_WINDOW_TITLE;
}
public void setWindowTitle () {
String windowTitle = HELP_WINDOW_TITLE;
this.setTitle(windowTitle);
}