use of org.eclipse.core.runtime.preferences.InstanceScope in project cubrid-manager by CUBRID.
the class BrokerTblColumnSetHelp method loadSetting.
/**
*
* Load broker interval settings from plugin preference
*
* @param <T> the generic type which is the sub type of IColumnSetting
* @param statusColumn the instance of StatusColumn enumeration
* @param ts the instance of generic array
*/
public <T extends IColumnSetting> void loadSetting(StatusColumn statusColumn, T[] ts) {
synchronized (this) {
IEclipsePreferences preference = new InstanceScope().getNode(CubridManagerUIPlugin.PLUGIN_ID);
String xmlString = preference.get(statusColumn.name(), "");
if (xmlString != null && xmlString.length() > 0) {
try {
ByteArrayInputStream in = new ByteArrayInputStream(xmlString.getBytes("UTF-8"));
IXMLMemento memento = XMLMemento.loadMemento(in);
IXMLMemento[] children = memento.getChildren(statusColumn.name());
for (IXMLMemento child : children) {
for (T t : ts) {
t.setValue(child.getInteger(t.getNick()));
}
}
} catch (Exception e) {
LOGGER.error(e.getMessage());
}
}
}
}
use of org.eclipse.core.runtime.preferences.InstanceScope in project cubrid-manager by CUBRID.
the class BrokerTblColumnSetHelp method saveSetting.
/**
*
* Save broker interval to plugin preference
*
* @param <T> the generic type which is the sub type of IColumnSetting
* @param statusColumn the instance of StatusColumn enumeration
* @param ts the instance of generic array
*/
public <T extends IColumnSetting> void saveSetting(StatusColumn statusColumn, T[] ts) {
synchronized (this) {
try {
XMLMemento memento = XMLMemento.createWriteRoot(statusColumn.name());
IXMLMemento child = memento.createChild(statusColumn.name());
for (T column : ts) {
child.putString(column.getNick(), String.valueOf(column.getValue()));
}
String xmlString = memento.saveToString();
IEclipsePreferences preference = new InstanceScope().getNode(CubridManagerUIPlugin.PLUGIN_ID);
preference.put(statusColumn.name(), xmlString);
preference.flush();
} catch (Exception e) {
LOGGER.error(e.getMessage());
}
}
}
use of org.eclipse.core.runtime.preferences.InstanceScope in project cubrid-manager by CUBRID.
the class NodeFilterManager method saveFilterSetting.
/**
* Save filter setting to plug-in preference
*/
@SuppressWarnings("deprecation")
public void saveFilterSetting() {
synchronized (this) {
try {
XMLMemento memento = XMLMemento.createWriteRoot("filters");
if (memento == null) {
LOGGER.error("XMLMemento.createWriteRoot('filters') is a null.");
return;
}
Iterator<String> iterator = idFilterList.iterator();
while (iterator.hasNext()) {
String pattern = (String) iterator.next();
IXMLMemento child = memento.createChild("idFilter");
child.putString("id", pattern);
}
iterator = idGrayFilterList.iterator();
while (iterator.hasNext()) {
String pattern = (String) iterator.next();
IXMLMemento child = memento.createChild("idGrayFilter");
child.putString("id", pattern);
}
iterator = nameFilterList.iterator();
while (iterator.hasNext()) {
String pattern = (String) iterator.next();
IXMLMemento child = memento.createChild("nameFilter");
child.putString("pattern", pattern);
}
String xmlString = memento.saveToString();
IEclipsePreferences preference = new InstanceScope().getNode(CommonUIPlugin.PLUGIN_ID);
preference.put(FILTER_XML_CONTENT, xmlString);
preference.flush();
} catch (Exception e) {
LOGGER.error("saveFilterSetting", e);
}
}
}
use of org.eclipse.core.runtime.preferences.InstanceScope in project cubrid-manager by CUBRID.
the class BrokerIntervalSettingManager method loadBrokerIntervalSettings.
/**
*
* Load broker interval settings from plugin preference
*
*/
protected void loadBrokerIntervalSettings() {
synchronized (this) {
IEclipsePreferences preference = new InstanceScope().getNode(CubridManagerUIPlugin.PLUGIN_ID);
String xmlString = preference.get(CUBRID_BROKER_INTERVAL_XML_CONTENT, "");
if (xmlString != null && xmlString.length() > 0) {
try {
ByteArrayInputStream in = new ByteArrayInputStream(xmlString.getBytes("UTF-8"));
IXMLMemento memento = XMLMemento.loadMemento(in);
IXMLMemento[] children = memento.getChildren("BrokerIntervalSetting");
for (int i = 0; i < children.length; i++) {
String serverName = children[i].getString("serverName");
String brokerName = children[i].getString("brokerName");
String isOn = children[i].getString("isOn");
String interval = children[i].getString("interval");
BrokerIntervalSetting brokerInterval = new BrokerIntervalSetting(serverName, brokerName, interval, isOn != null && isOn.equals("true"));
brokerIntervalSettingList.add(brokerInterval);
}
} catch (Exception e) {
LOGGER.error(e.getMessage());
}
}
}
}
use of org.eclipse.core.runtime.preferences.InstanceScope in project cubrid-manager by CUBRID.
the class BrokerIntervalSettingManager method saveBrokerIntervals.
/**
*
* Save broker interval to plugin preference
*
*/
public void saveBrokerIntervals() {
synchronized (this) {
if (!initialized) {
init();
}
try {
XMLMemento memento = XMLMemento.createWriteRoot("BrokerIntervalSettings");
Iterator<BrokerIntervalSetting> iterator = brokerIntervalSettingList.iterator();
while (iterator.hasNext()) {
BrokerIntervalSetting brokerInterval = (BrokerIntervalSetting) iterator.next();
IXMLMemento child = memento.createChild("BrokerIntervalSetting");
child.putString("serverName", brokerInterval.getServerName());
child.putString("brokerName", brokerInterval.getBrokerName());
child.putString("isOn", brokerInterval.isOn() ? "true" : "false");
child.putString("interval", brokerInterval.getInterval());
}
String xmlString = memento.saveToString();
IEclipsePreferences preference = new InstanceScope().getNode(CubridManagerUIPlugin.PLUGIN_ID);
preference.put(CUBRID_BROKER_INTERVAL_XML_CONTENT, xmlString);
preference.flush();
} catch (Exception e) {
LOGGER.error(e.getMessage());
}
}
}
Aggregations