source: vanHelsing/trunk/gui/src/de/dass_it/vanhelsing/gui/ConfigurationBean.java@ 847

Last change on this file since 847 was 847, checked in by tobias, on Mar 19, 2010 at 5:51:31 PM

displays key value pairs as part of the tree

File size: 2.5 KB
RevLine 
[830]1package de.dass_it.vanhelsing.gui;
[832]2
[844]3
4import java.lang.reflect.Method;
5
[832]6import javax.swing.tree.DefaultMutableTreeNode;
7import javax.swing.tree.DefaultTreeModel;
[844]8import de.dass_it.vanhelsing.gui.items.*;
9import de.dass_it.www.vanhelsing.*;
10import de.dass_it.www.vanhelsing.VanHelsingCallbackHandler.*;
11import de.dass_it.www.vanhelsing.VanHelsingStub.*;
[830]12/*
13 * List all Bacula configuration components by name
14 */
[832]15public class ConfigurationBean extends TreeNavigation {
[844]16
[832]17 private DefaultTreeModel tree;
[844]18
[832]19 public ConfigurationBean(){
20 DefaultMutableTreeNode root = new DefaultMutableTreeNode();
[844]21 DefaultMutableTreeNode header;
[847]22 DefaultMutableTreeNode leaf;
[844]23 String type;
24 ListResourcesType lrt;
[847]25 GetResourceType grt;
[844]26 DefaultMutableTreeNode myNode;
27 ResourceInfo[] ri;
[847]28 SimpleResource sr;
29
[844]30 Client c = new Client();
[847]31 //String[] nodes = {"Director", "Storage", "Catalog", "Autochanger", "Client", "FileSet", "FDClient", "Schedule", "SDStorage", "Console", "Catalog", "SDDevice", "Job", "JobDefs", "Messages", "Pool"};
32 String[] nodes = {"Client"};
[844]33 setTree(super.createTree(root, nodes, "Configuration"));
34
35 //\forall header wird eine ResourceList[] angefragt
36 for(int i = 0; i < tree.getChildCount(root); i++){
37 header = (DefaultMutableTreeNode)tree.getChild(root, i);
38 type = ((UserObjectItemType)header.getUserObject()).getUserObject().getResType();
39 lrt = new ListResourcesType();
40 lrt.setDirector("bacula-dir");
41 lrt.setResourceType(type);
42 ri = c.getListResources(lrt);
[846]43 if (ri == null || ri.length == 0) continue;
[844]44 for (int j = 0; j < ri.length; j++){
[847]45 //myNode = null;
[844]46 myNode = addNode(header, type, ri[j]);
47 if (myNode != null){
48 header.add(myNode);
49 }
50 }
51 }
[847]52 for (int i = 0; i < tree.getChildCount(root); i++){
53 header = (DefaultMutableTreeNode)tree.getChild(root, i);
54
55 for (int j = 0; j < tree.getChildCount(header); j++){
56 leaf = (DefaultMutableTreeNode)tree.getChild(header, j);
57 type = ((UserObjectItemType)leaf.getUserObject()).getUserObject().getResType();
58 grt = new GetResourceType();
59 grt.setDirector("bacula-dir");
60 grt.setResId(((ItemType)(((UserObjectItemType)leaf.getUserObject()).getUserObject())).getResId());
61 sr = c.getSimpleResource(grt);
62 sr.getResourceAttributeType();
63 for (ResourceAttributeType ra : sr.getResourceAttributeType()){
64 myNode = addNode(leaf, type, ra);
65 if (myNode != null){
66 leaf.add(myNode);
67 }
68 }
69 }
70 }
71
72
[832]73 }
[844]74
[832]75 public void setTree(DefaultTreeModel tree) {
76 this.tree = tree;
77 }
78 public DefaultTreeModel getTree() {
79 return tree;
80 }
81
82
[830]83}
Note: See TracBrowser for help on using the repository browser.