Ignore:
Timestamp:
May 3, 2010, 7:12:46 PM (14 years ago)
Author:
tobias
Message:

configurationView moved to new DataTree class.
implemented selectOneMenu on DataTree

File:
1 edited

Legend:

Unmodified
Added
Removed
  • vanHelsing/trunk/gui/src/de/dass_it/vanhelsing/gui/ConfigurationBean.java

    r867 r868  
    44import java.util.ArrayList;
    55
     6import javax.faces.context.FacesContext;
    67import javax.faces.event.ActionEvent;
    78import javax.faces.event.ValueChangeEvent;
     
    1718 * List all Bacula configuration components by name.
    1819 */
    19 public class ConfigurationBean extends TreeNavigation {
    20 
    21         private DefaultTreeModel tree;
    22         private ArrayList<ViewItem> selectedObject;
     20public class ConfigurationBean implements ViewBean{
     21       
     22       
     23        private DataTree dataTree;
     24        private ConcreteUserObjectItem selectedObject;
     25        private boolean createResource;
    2326        private String selectedId;
    24         private String selectedName;
    25         private boolean createResource = false;
    2627
    2728        public ConfigurationBean() {
     
    3435         */
    3536        private void init(){
    36                 DefaultMutableTreeNode root = new DefaultMutableTreeNode();
    37                 DefaultMutableTreeNode header;
    38                 DefaultMutableTreeNode leaf;
    39                 String type;
    40                 ListResourcesType lrt;
    41                 GetResourceType grt;
    42                 DefaultMutableTreeNode myNode;
    43                 ResourceInfo[] ri;
     37                DefaultMutableTreeNode parent;
     38                ResourceInfo resItems[];
    4439                SimpleResource sr;
    45 
    4640                Client c = new Client();
    47                 setTree(super.createTree(root, BeanUtil.getProperty("nodes").split(","), "Configuration"));
    48 
    49                
    50                 for (int i = 0; i < tree.getChildCount(root); i++) {
    51                         header = (DefaultMutableTreeNode) tree.getChild(root, i);
    52                         type = ((UserObjectItemType) header.getUserObject())
    53                                         .getUserObject().getResType();
    54                         lrt = new ListResourcesType();
    55                         lrt.setDirector("bacula-dir");
    56                         lrt.setResourceType(type);
    57                         ri = c.getListResources(lrt);
    58                         if (ri == null || ri.length == 0)
    59                                 continue;
    60                         for (int j = 0; j < ri.length; j++) {
    61                                 myNode = addNode(header, type, ri[j]);
    62                                 grt = new GetResourceType();
    63                                 grt.setDirector(lrt.getDirector());
    64                                 grt.setResId(ri[j].getResId());
    65                                 sr = c.getSimpleResource(grt);
    66                                 myNode = addNode(myNode, type, sr.getResourceAttributeType());
    67                                 if (myNode != null) {
    68                                         header.add(myNode);
     41                UserObjectItemFactory UOFactory = new UserObjectItemFactory();
     42                setDataTree(new DataTree());
     43                dataTree.setTree("Configuration");
     44                for (String name : BeanUtil.getProperty("nodes").split(",")){
     45                        parent = dataTree.createNode(dataTree.getRoot(),
     46                                        UOFactory.createUserObjectItem(
     47                                                        c.makeResourceInfo(BeanUtil.getProperty("defaultdirector"), -1, name, name)
     48                                        )
     49                        );
     50                        resItems = c.getListResources(BeanUtil.getProperty("defaultdirector"), name);
     51                        if (resItems != null){
     52                                for (ResourceInfo rinfo : resItems){
     53                                        sr = c.getSimpleResource(rinfo.getDirector(), rinfo.getResId());
     54                                        if (sr != null){
     55                                                //TODO: discard the SimpleResource ResInfo return value and work with the query object
     56                                                dataTree.createNode(parent,
     57                                                                UOFactory.createUserObjectItem(
     58                                                                                sr.getResourceAttributeType(), rinfo));
     59                                        }
    6960                                }
    7061                        }
    71                 }
    72         }
    73 
     62                }
     63                dataTree.createKeyValueLists();
     64                dataTree.updateUserObjects();
     65        }
     66       
    7467        /**
    7568         * transfers the selected (by attribute resId) dataobject (resource) into an ArrayList of ViewItems.<br/>
     
    7972         * @param ae    ActionEvent which contains relevant information about the component tree. the variable is not used.
    8073         */
    81         public void userObjectItemNodeSelected(ActionEvent ae) {
     74        public void renderResource(ActionEvent ae){
     75                DefaultMutableTreeNode node;
     76                String id = FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("userObject.resId");
     77                int numId = new Integer(id);
     78                String name = FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("userObject.resName");
     79                if (numId > 0){
     80                        node = dataTree.getNodeById(numId);
     81                        selectedObject = (ConcreteUserObjectItem)((UserObjectItemType)(node.getUserObject())).getUserObject();
     82                } else {
     83                        node = dataTree.getNodeByName(name);
     84                        selectedObject = (ConcreteUserObjectItem)((UserObjectItemType)(node.getUserObject())).getUserObject();
     85                }
     86        }
     87        /*public void userObjectItemNodeSelected(ActionEvent ae) {
    8288                DefaultMutableTreeNode node;
    8389                UserObjectItem userObject;
    84                 selectedObject = new ArrayList<ViewItem>();
     90                selectedObject.setViewItemList(viewItemList) = new ArrayList<ViewItem>();
    8591                String Id = BeanUtil.getRequestParameter("userObject.resId");
    8692                String name = BeanUtil.getRequestParameter("userObject.resName");
     
    147153                        e.printStackTrace();
    148154                }
    149         }
     155        }*/
    150156        /**
    151157         * return an array of nodes of a given resource type
     
    156162         * @return null         null object there are no nodes of the requested type
    157163         */
    158         private DefaultMutableTreeNode[] getChildNodes(DefaultTreeModel tree2, String key) {
     164        /*private DefaultMutableTreeNode[] getChildNodes(DefaultTreeModel tree2, String key) {
    159165                DefaultMutableTreeNode[] dmtn;
    160166                DefaultMutableTreeNode root = (DefaultMutableTreeNode)tree2.getRoot();
     
    171177                }
    172178                return null;
    173         }
     179        }*/
    174180       
    175181        /**
     
    177183         * @param ae
    178184         */
    179         public void newClientButtonListener(ActionEvent ae){
     185        /*public void newClientButtonListener(ActionEvent ae){
    180186                String type = "client";
    181187                ArrayList newResource = new ArrayList<ViewItem>();
     
    211217               
    212218               
    213         }
    214        
    215         public void newResourceButtonListener(ActionEvent ae){
     219        }*/
     220       
     221        /*public void newResourceButtonListener(ActionEvent ae){
    216222                DefaultMutableTreeNode node;
    217223                UserObjectItem userObject;
     
    267273                }
    268274               
    269         }
     275        }*/
    270276        /**
    271277         * **EXPERIMENTAL** returns type of the selected resource.
     
    274280         * @return viewName     name of the resource type of the selected data tree node       
    275281         */
    276         public String newResourceListener(ActionEvent ae){
     282        /*public String newResourceListener(ActionEvent ae){
    277283                if (selectedObject != null && selectedObject.size() > 0){
    278284                        String resType = selectedObject.get(0).getResType();
     
    281287                }
    282288                return "";
    283         }
     289        }*/
    284290       
    285291        public void userObjectItemOptionSelected(ValueChangeEvent vce){
     
    296302                BeanUtil.setInfoMessage(null, "Diese Methode ist noch nicht implementiert.");
    297303        }
    298         public void saveClientButtonListener(ActionEvent ae){
     304        /*public void saveClientButtonListener(ActionEvent ae){
    299305                Client c = new Client();
    300306                String name = "";
     
    315321                                );
    316322                System.err.println(newResId);
    317         }
     323        }*/
    318324        /**
    319325         * **EXPERIMENTAL** writes the selected resource to the data tree of the web service.
     
    321327         * @param ae    ActionEvent contains relevant information
    322328         */
    323         public void saveButtonListener(ActionEvent ae) {
     329        /*public void saveButtonListener(ActionEvent ae) {
    324330                if (selectedObject == null){
    325331                        BeanUtil.setInfoMessage(null, "bitte eine Resource zum Ändern auswählen");
     
    353359                        if (selectedObject.get(0) != null){
    354360                                selectedObject.get(0).setResId(s2r2.getResId());
    355                         }*/
     361                        }
    356362                        // TODO: write ResId to selectedObject
    357363                        // selectedObject.get(0).setResId(grt.getResId());
    358364                        // valueChangeEffect.setFired(false);
    359365                }
    360         }
     366        }*/
    361367        /**
    362368         * Setter method for the tree attribute
    363369         * @param tree  tree contains the DefaultTreeModel for the data tree
    364370         */
    365         public void setTree(DefaultTreeModel tree) {
    366                 this.tree = tree;
     371        public void setDataTree(DataTree dataTree) {
     372                this.dataTree = dataTree;
    367373        }
    368374        /**
     
    370376         * @return tree         tree contains the DefaultTreeModel for the data tree
    371377         */
    372         public DefaultTreeModel getTree() {
    373                 return tree;
     378        public DataTree getDataTree() {
     379                return dataTree;
     380        }
     381
     382        public void createNodeButtonListener(ActionEvent ae) {
     383                // TODO Auto-generated method stub
     384               
     385        }
     386
     387        public void deleteNodeButtonListener(ActionEvent ae) {
     388                // TODO Auto-generated method stub
     389               
     390        }
     391
     392
     393        public void readNodeButtonListener(ActionEvent ae) {
     394                // TODO Auto-generated method stub
     395               
     396        }
     397
     398        public void selectNode(ActionEvent ae) {
     399                // TODO Auto-generated method stub
     400               
     401        }
     402
     403        public void updateNodeButtonListener(ActionEvent ae) {
     404                // TODO Auto-generated method stub
     405               
    374406        }
    375407       
     
    378410         * @return selectedObject       selectedObject contains the data object of the selected leaf node.
    379411         */
    380         public ArrayList<ViewItem> getSelectedObject() {
     412        public ConcreteUserObjectItem getSelectedObject() {
    381413                return selectedObject;
    382414        }
     
    386418         * @param selectedObject        selectedObject contains the data object of the selected leaf node
    387419         */
    388         public void setSelectedObject(ArrayList<ViewItem> selectedObject) {
     420        public void setSelectedObject(ConcreteUserObjectItem selectedObject) {
    389421                this.selectedObject = selectedObject;
    390422        }
     
    396428        public int getSelectedId(){
    397429                if (selectedObject != null){
    398                         if (selectedObject.size() > 0){
    399                                 return selectedObject.get(0).getResId();
    400                         }
    401                 }
     430                                return selectedObject.getResId();
     431                        }
    402432                return -1;
    403433        }
    404         public String getSelectedName(){
     434        /*public String getSelectedName(){
    405435                if (selectedObject != null){
    406436                        if (selectedObject.size() > 0){
     
    409439                }
    410440                return "";
    411         }
     441        }*/
    412442        public void setCreateResource(boolean b){
    413443                this.createResource = b;
Note: See TracChangeset for help on using the changeset viewer.