1 package org.ozoneDB.xml.dom4j.o3impl; 9 10 import org.dom4j.*; 11 import org.ozoneDB.OzoneInterface; 12 import org.ozoneDB.OzoneRemoteException; 13 import org.ozoneDB.xml.dom4j.OzoneDocumentFactory; 14 15 import java.io.Serializable ; 16 17 21 public class O3QName extends DefaultQName implements Serializable { 22 23 final static long serialVersionUID = 1L; 24 26 private transient OzoneInterface db; 27 29 private void init() { 30 } 32 33 public static QName create(OzoneInterface db, String name) { 34 NodeFactory nodeFactory = OzoneDocumentFactoryImpl.getInstance(db); 38 O3QName obj = new O3QName(name, nodeFactory); 39 obj.db = db; 40 return obj; 41 } 42 43 public O3QName(String name, NodeFactory nodeFactory) { 44 super(name, nodeFactory); 45 init(); 46 } 47 48 public static QName create(OzoneInterface db, String name, Namespace namespace) { 49 NodeFactory nodeFactory = OzoneDocumentFactoryImpl.getInstance(db); 54 O3QName obj = new O3QName(name, namespace, nodeFactory); 55 obj.db = db; 56 return obj; 57 } 58 59 public O3QName(String name, Namespace namespace, NodeFactory nodeFactory) { 60 super(name, namespace, nodeFactory); 61 init(); 62 } 63 64 public static QName create(OzoneInterface db, String name, Namespace namespace, String qualifiedName) { 65 NodeFactory nodeFactory = OzoneDocumentFactoryImpl.getInstance(db); 72 O3QName obj = new O3QName(name, namespace, qualifiedName, nodeFactory); 73 obj.db = db; 74 return obj; 75 } 76 77 public O3QName(String name, Namespace namespace, String qualifiedName, NodeFactory nodeFactory) { 78 super(name, namespace, qualifiedName, nodeFactory); 79 init(); 80 } 81 82 public DocumentFactory getDocumentFactory() { 83 throw new OzoneRemoteException("getDocumentFactory will not work in Ozone"); 84 } 85 86 public NodeFactory getNodeFactory() { 87 try { 88 return (NodeFactory) db.objectForName(OzoneDocumentFactory.OBJECT_NAME); 91 } catch (Exception e) { 92 throw new OzoneRemoteException("NodeFctory not registered" + e.toString()); 93 } 94 } 95 96 protected XPathFactory getXPathFactory() { 97 try { 98 return (XPathFactory) db.objectForName(OzoneDocumentFactory.OBJECT_NAME); 101 } catch (Exception e) { 102 throw new OzoneRemoteException("XPathFactory not registered" + e.toString()); 103 } 104 } 105 106 141 } 142 | Popular Tags |