1 19 20 28 29 package org.netbeans.modules.websvc.core.wseditor.support; 30 31 import org.openide.cookies.SaveCookie; 32 import org.openide.filesystems.FileObject; 33 import org.openide.loaders.DataObjectExistsException; 34 import org.openide.loaders.MultiDataObject; 35 import org.openide.loaders.MultiFileLoader; 36 import org.openide.nodes.AbstractNode; 37 import org.openide.nodes.Children; 38 import org.openide.nodes.FilterNode; 39 import org.openide.nodes.Node; 40 41 45 public class WSDataObject extends MultiDataObject{ 46 private WSFilterNode wsFilterNode; 47 48 public WSDataObject(FileObject file, MultiFileLoader ldr) 49 throws DataObjectExistsException{ 50 super(file, ldr); 51 } 52 53 public void changeNode(Node newNode){ 54 this.getNodeDelegate(); 55 wsFilterNode.switchNode(newNode); 56 } 57 58 protected Node createNodeDelegate() { 59 wsFilterNode = new WSFilterNode(new AbstractNode(Children.LEAF)); 60 return wsFilterNode; 61 } 62 63 public Node.Cookie getCookie(Class type) { 64 if(type.isAssignableFrom(SaveCookie.class)){ 65 return this.getNodeDelegate().getCookie(type); 66 } 67 return super.getCookie(type); 68 } 69 70 71 class WSFilterNode extends FilterNode{ 72 public WSFilterNode(Node original){ 73 super(original); 74 } 75 76 public void switchNode(Node newNode){ 77 this.changeOriginal(newNode, false); 78 } 81 } 82 83 84 } 85 | Popular Tags |