use of com.cubrid.cubridmanager.core.common.xml.XMLMemento in project cubrid-manager by CUBRID.
the class MonitorDashboardPersistManager method saveDashboard.
/**
*
* Save dash boards
*
*/
public void saveDashboard() {
synchronized (this) {
XMLMemento memento = XMLMemento.createWriteRoot("dashboards");
Iterator<ICubridNode> iterator = monitorDashboardList.iterator();
while (iterator.hasNext()) {
ICubridNode node = (ICubridNode) iterator.next();
if (node instanceof MonitorStatistic) {
continue;
}
Dashboard dashboard = (Dashboard) node.getAdapter(Dashboard.class);
IXMLMemento dashboardChild = memento.createChild("dashboard");
dashboardChild.putString("name", node.getName());
Iterator<HostNode> nodeIte = dashboard.getHostNodeList().iterator();
while (nodeIte.hasNext()) {
//save host node
HostNode hostNode = nodeIte.next();
IXMLMemento hostNodeChild = dashboardChild.createChild("host");
hostNodeChild.putString("aliasname", hostNode.getName());
hostNodeChild.putString("ip", hostNode.getIp());
hostNodeChild.putString("port", hostNode.getPort());
hostNodeChild.putString("username", hostNode.getUserName());
hostNodeChild.putString("password", CipherUtils.encrypt(hostNode.getPassword()));
hostNodeChild.putString("location", hostNode.getLocation().x + "," + hostNode.getLocation().y);
hostNodeChild.putString("visible", hostNode.isVisible() ? "true" : "false");
//save the database node list
List<DatabaseNode> dbNodeList = hostNode.getDbNodeList();
Iterator<DatabaseNode> dbNodeIte = dbNodeList.iterator();
while (dbNodeIte.hasNext()) {
DatabaseNode dbNode = (DatabaseNode) dbNodeIte.next();
IXMLMemento databaseNodeChild = hostNodeChild.createChild("database");
databaseNodeChild.putString("aliasname", dbNode.getName());
databaseNodeChild.putString("dbname", dbNode.getDbName());
databaseNodeChild.putString("username", dbNode.getDbUser());
databaseNodeChild.putString("password", CipherUtils.encrypt(dbNode.getDbPassword()));
databaseNodeChild.putString("location", dbNode.getLocation().x + "," + dbNode.getLocation().y);
}
//save broker node list
List<BrokerNode> brokerNodeList = hostNode.getBrokerNodeList();
Iterator<BrokerNode> brokerNodeIte = brokerNodeList.iterator();
while (brokerNodeIte.hasNext()) {
BrokerNode brokerNode = (BrokerNode) brokerNodeIte.next();
IXMLMemento brokerNodeChild = hostNodeChild.createChild("broker");
brokerNodeChild.putString("aliasname", brokerNode.getName());
brokerNodeChild.putString("brokername", brokerNode.getBrokerName());
brokerNodeChild.putString("location", brokerNode.getLocation().x + "," + brokerNode.getLocation().y);
//save the client IP list
ClientNode ipListNode = dashboard.getClientNodeByBroker(brokerNode);
Point point = null;
String clientIpName = null;
if (ipListNode == null) {
brokerNodeChild.putString("show_ip_list", "false");
point = brokerNode.getClientsLocation();
} else {
brokerNodeChild.putString("show_ip_list", ipListNode.isVisible() ? "true" : "false");
point = ipListNode.getLocation();
clientIpName = ipListNode.getName();
}
if (point != null) {
brokerNodeChild.putString("client_ip_location", point.x + "," + point.y);
}
if (clientIpName != null) {
brokerNodeChild.putString("client_ip_name", clientIpName);
}
//save the database list
BrokerDBListNode dbListNode = dashboard.getBrokerDBListNodeByBroker(brokerNode);
String clientDbName = null;
if (dbListNode == null) {
brokerNodeChild.putString("show_db_list", "false");
point = brokerNode.getDatabasesLocation();
} else {
brokerNodeChild.putString("show_db_list", dbListNode.isVisible() ? "true" : "false");
point = dbListNode.getLocation();
clientDbName = dbListNode.getName();
}
if (point != null) {
brokerNodeChild.putString("client_db_location", point.x + "," + point.y);
}
if (clientDbName != null) {
brokerNodeChild.putString("client_db_name", clientDbName);
}
}
}
}
PersistUtils.saveXMLMemento(CubridManagerUIPlugin.PLUGIN_ID, MONITOR_DASHBOARD_XML_CONTENT, memento);
}
}
use of com.cubrid.cubridmanager.core.common.xml.XMLMemento in project cubrid-manager by CUBRID.
the class MonitorStatisticPersistManager method saveStatistic.
/**
*
* Save MonitorStatistic nodes
*
*/
public void saveStatistic() {
synchronized (this) {
XMLMemento memento = XMLMemento.createWriteRoot("monitors");
Iterator<String> keySetIterator = monitorStatisticMap.keySet().iterator();
while (keySetIterator.hasNext()) {
String hostId = keySetIterator.next();
boolean isMultiHost = HOST_ID_FOR_MULTI_HOST.equals(hostId);
IXMLMemento monsPerHostMemento = memento.createChild("monitorsPerHost");
monsPerHostMemento.putBoolean("isMultihost", isMultiHost);
if (!isMultiHost) {
monsPerHostMemento.putString("hostId", hostId);
}
List<MonitorStatistic> monitorStatisticList = monitorStatisticMap.get(hostId);
if (monitorStatisticList == null) {
continue;
}
Iterator<MonitorStatistic> nodeIterator = monitorStatisticList.iterator();
while (nodeIterator.hasNext()) {
MonitorStatistic node = nodeIterator.next();
IXMLMemento monMemento = monsPerHostMemento.createChild("monitor");
monMemento.putString("name", node.getId());
//save StatisticItem list
List<StatisticChartItem> statisticItemList = node.getStatisticItemList();
Iterator<StatisticChartItem> itemIterator = statisticItemList.iterator();
while (itemIterator.hasNext()) {
if (!node.isMultiHost()) {
SingleHostChartItem item = (SingleHostChartItem) itemIterator.next();
IXMLMemento chartMemento = monMemento.createChild("chart");
chartMemento.putInteger("series", item.getSeries());
chartMemento.putString("name", item.getName());
chartMemento.putString("type", item.getType().toString());
chartMemento.putString("dtype", item.getDType());
chartMemento.putString("metrics", ArrayUtil.collectionToCSString(item.getMetricList()));
switch(item.getType()) {
case DB:
chartMemento.putString("dbname", item.getDbName());
break;
case DB_VOL:
chartMemento.putString("dbname", item.getDbName());
chartMemento.putString("volname", item.getVolName());
break;
case BROKER:
chartMemento.putString("bname", item.getBrokerName());
break;
case OS:
break;
default:
break;
}
} else {
MultiHostChartItem item = (MultiHostChartItem) itemIterator.next();
IXMLMemento chartMemento = monMemento.createChild("chart");
chartMemento.putInteger("series", item.getSeries());
chartMemento.putString("name", item.getName());
chartMemento.putString("type", item.getType().toString());
chartMemento.putString("dtype", item.getDType());
//save HostInfo list
List<StatisticChartHost> hostList = item.getHostList();
Iterator<StatisticChartHost> hostIterator = hostList.iterator();
while (hostIterator.hasNext()) {
StatisticChartHost host = (StatisticChartHost) hostIterator.next();
IXMLMemento hostMemento = chartMemento.createChild("host");
hostMemento.putString("cubridServerId", host.getCubridServerId());
hostMemento.putString("ip", host.getIp());
hostMemento.putInteger("port", host.getPort());
hostMemento.putString("user", host.getUser());
hostMemento.putString("password", CipherUtils.encrypt(host.getPassword()));
hostMemento.putString("metric", host.getMetric());
switch(item.getType()) {
case DB:
hostMemento.putString("dbname", host.getDbName());
break;
case DB_VOL:
hostMemento.putString("dbname", host.getDbName());
hostMemento.putString("volname", host.getVolName());
break;
case BROKER:
hostMemento.putString("bname", host.getBrokerName());
break;
case OS:
break;
default:
break;
}
}
}
}
}
}
PersistUtils.saveXMLMemento(CubridManagerUIPlugin.PLUGIN_ID, MONITOR_STATISTIC_XML_CONTENT, memento);
}
}
use of com.cubrid.cubridmanager.core.common.xml.XMLMemento in project cubrid-manager by CUBRID.
the class CQBGroupNodePersistManager method saveAllGroupNode.
/**
* Save all group node.
*
*/
public void saveAllGroupNode() {
synchronized (this) {
XMLMemento memento = XMLMemento.createWriteRoot("groups");
for (CubridGroupNode group : groupNodeList) {
IXMLMemento child = memento.createChild("group");
child.putString("id", group.getId());
child.putString("name", group.getName());
for (ICubridNode cn : group.getChildren()) {
IXMLMemento childHost = child.createChild("item");
childHost.putString("id", cn.getId());
}
}
PersistUtils.saveXMLMemento(ApplicationUtil.CQB_UI_PLUGIN_ID, COM_CUBRID_QB_DBGROUP, memento);
}
}
use of com.cubrid.cubridmanager.core.common.xml.XMLMemento in project cubrid-manager by CUBRID.
the class CQBDBNodePersistManager method saveServer.
public void saveServer(List<CubridDatabase> servers, String path) {
synchronized (this) {
XMLMemento memento = XMLMemento.createWriteRoot("databases");
Iterator<CubridDatabase> iterator = servers.iterator();
while (iterator.hasNext()) {
CubridDatabase db = (CubridDatabase) iterator.next();
DatabaseInfo dbInfo = db.getDatabaseInfo();
IXMLMemento child = memento.createChild("database");
child.putString("name", db.getLabel());
child.putString("dbName", dbInfo.getDbName());
child.putString("brokerPort", dbInfo.getBrokerPort());
child.putString("brokerIp", dbInfo.getBrokerIP());
child.putString("charset", dbInfo.getCharSet());
child.putString("jdbcAttrs", dbInfo.getJdbcAttrs());
child.putString("dbUser", db.getUserName());
child.putBoolean("savePassword", false);
child.putString("jdbcDriver", db.getServer().getJdbcDriverVersion());
/*Save the database editor config*/
DatabaseEditorConfig config = QueryOptions.getEditorConfig(db, false);
if (config != null) {
IXMLMemento editorConfigChild = child.createChild("editorConfig");
editorConfigChild.putString("database-comment", config.getDatabaseComment() == null ? "" : config.getDatabaseComment());
if (config.getBackGround() != null) {
RGB background = config.getBackGround();
int bgPos = EditorConstance.getBGPos(background);
editorConfigChild.putInteger("purpose-code", bgPos);
}
}
}
FileOutputStream fout = null;
try {
fout = new FileOutputStream(path);
fout.write(memento.getContents());
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
fout.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
Aggregations