1 19 20 package org.netbeans.modules.websvc.registry.nodes; 21 22 import org.netbeans.modules.websvc.registry.model.WebServiceGroup; 23 import org.netbeans.modules.websvc.registry.model.WebServiceGroupListener; 24 import org.netbeans.modules.websvc.registry.model.WebServiceListModel; 25 import org.netbeans.modules.websvc.registry.model.WebServiceGroupEvent; 26 27 import java.util.*; 28 29 import org.openide.nodes.*; 30 import org.netbeans.modules.websvc.registry.util.*; 31 32 36 public class WebServiceGroupNodeChildren extends Children.Keys implements WebServiceGroupListener{ 37 38 WebServiceGroup webserviceGroup; 39 WebServiceListModel websvcListModel = WebServiceListModel.getInstance(); 40 41 public WebServiceGroupNodeChildren(WebServiceGroup websvcGroup) { 42 webserviceGroup = websvcGroup; 43 webserviceGroup.addWebServiceGroupListener(this); 44 } 45 46 protected void addNotify() { 47 super.addNotify(); 48 updateKeys(); 49 } 50 51 private void updateKeys() { 52 setKeys(webserviceGroup.getWebServiceIds()); 53 } 54 55 protected void removeNotify() { 56 setKeys(Collections.EMPTY_SET); 57 super.removeNotify(); 58 } 59 60 protected Node[] createNodes(Object key) { 61 Node node = null; 62 if (key instanceof String ) { 63 node = new WebServicesNode(websvcListModel.getWebService((String )key)); 64 return new Node[]{node}; 65 } 66 return new Node[]{node}; 67 } 68 69 public void webServiceAdded(WebServiceGroupEvent groupEvent) { 70 updateKeys(); 71 refreshKey(groupEvent.getWebServiceId()); 72 } 73 74 public void webServiceRemoved(WebServiceGroupEvent groupEvent) { 75 updateKeys(); 76 refreshKey(groupEvent.getWebServiceId()); 77 } 78 79 } 80 | Popular Tags |