/**
* Stores configuration changes in the data domain properties.
*/
protected void commitChanges() {
DataChannelDescriptor domain = (DataChannelDescriptor)eventController.getProject().getRootNode();
logObj.warn("domain properties BEFORE: " + domain.getProperties());
Map<String, String> props = domain.getProperties();
String type = (String)view.getTypeSelector().getSelectedItem();
if (JGROUPS_FACTORY_LABEL.equals(type)) {
JGroupsConfigPanel jgroupsPanel = (JGroupsConfigPanel) existingCards
.get(JGROUPS_FACTORY_LABEL);
props.put(DataRowStore.EVENT_BRIDGE_FACTORY_PROPERTY, JGROUPS_FACTORY_CLASS);
if (jgroupsPanel.useConfigFile.isSelected()) {
props.remove(JavaGroupsBridgeFactory.MCAST_ADDRESS_PROPERTY);
props.remove(JavaGroupsBridgeFactory.MCAST_PORT_PROPERTY);
if (!"".equals(jgroupsPanel.configURL.getText())) {
props.put(JavaGroupsBridgeFactory.JGROUPS_CONFIG_URL_PROPERTY,
jgroupsPanel.configURL.getText());
}
else {
props.put(JavaGroupsBridgeFactory.JGROUPS_CONFIG_URL_PROPERTY, null);
}
}
else {
props.remove(JavaGroupsBridgeFactory.JGROUPS_CONFIG_URL_PROPERTY);
if (!"".equals(jgroupsPanel.multicastAddress.getText())) {
props.put(JavaGroupsBridgeFactory.MCAST_ADDRESS_PROPERTY,
jgroupsPanel.multicastAddress.getText());
}
else {
props.put(JavaGroupsBridgeFactory.MCAST_ADDRESS_PROPERTY, null);
}
if (!"".equals(jgroupsPanel.multicastPort.getText())) {
props.put(JavaGroupsBridgeFactory.MCAST_PORT_PROPERTY,
jgroupsPanel.multicastPort.getText());
}
else {
props.put(JavaGroupsBridgeFactory.MCAST_PORT_PROPERTY, null);
}
}
}
else if (JMS_FACTORY_LABEL.equals(type)) {
JMSConfigPanel jmsPanel = (JMSConfigPanel) existingCards
.get(JMS_FACTORY_LABEL);
props.put(DataRowStore.EVENT_BRIDGE_FACTORY_PROPERTY, JMS_FACTORY_CLASS);
if (!"".equals(jmsPanel.topicFactory.getText())) {
props.put(JMSBridgeFactory.TOPIC_CONNECTION_FACTORY_PROPERTY,
jmsPanel.topicFactory.getText());
}
else {
props.put(JMSBridgeFactory.TOPIC_CONNECTION_FACTORY_PROPERTY, null);
}
}
else if (CUSTOM_FACTORY_LABEL.equals(type)) {
CustomRemoteEventsConfigPanel customPanel = (CustomRemoteEventsConfigPanel) existingCards
.get(CUSTOM_FACTORY_LABEL);
if (!"".equals(customPanel.factoryClass.getText())) {
props.put(DataRowStore.EVENT_BRIDGE_FACTORY_PROPERTY, customPanel.factoryClass.getText());
}
else {
props.put(DataRowStore.EVENT_BRIDGE_FACTORY_PROPERTY, null);
}
}
logObj.warn("domain properties: " + domain.getProperties());
eventController.fireDomainEvent(new DomainEvent(this, domain));
view.dispose();
}