KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > ozoneDB > xml > dom4j > o3impl > OzoneCDATAImpl


1 // You can redistribute this software and/or modify it under the terms of
2
// the Ozone Library License version 1 published by ozone-db.org.
3
//
4
// The original code and portions created by SMB are
5
// Copyright (C) 1997-@year@ by SMB GmbH. All rights reserved.
6
//
7
// $Id: OzoneCDATAImpl.java,v 1.1 2003/11/02 18:10:03 per_nyfelt Exp $
8
package org.ozoneDB.xml.dom4j.o3impl;
9
10 import org.dom4j.*;
11 import org.ozoneDB.*;
12 import org.ozoneDB.core.ObjectContainer;
13 import org.ozoneDB.core.ObjectID;
14 import org.ozoneDB.xml.dom4j.OzoneCDATA;
15 import org.ozoneDB.xml.dom4j.OzoneDocumentFactory;
16 import org.xml.sax.ContentHandler JavaDoc;
17 import org.xml.sax.SAXException JavaDoc;
18
19 /**
20  *
21  * @author Per Nyfelt
22  */

23 public class OzoneCDATAImpl extends DefaultCDATA implements OzoneCDATA, OzoneCompatible {
24
25     final static long serialVersionUID = 1L;
26
27     private OzoneObject ozoneObject;
28
29     private void init() {
30         ozoneObject = new OzoneObject();
31     }
32
33     public static OzoneCDATA create(OzoneInterface db, String JavaDoc text) {
34         return (OzoneCDATA) db.createObject(OzoneCDATAImpl.class,
35                 new Class JavaDoc[] {String JavaDoc.class},
36                 new Object JavaDoc[]{text});
37     }
38
39     /** @param text is the CDATA text
40      */

41     public OzoneCDATAImpl(String JavaDoc text) {
42         super(text);
43         init();
44     }
45
46     public static OzoneCDATA create(OzoneInterface db, Element parent, String JavaDoc text) {
47         final Class JavaDoc[] signature = new Class JavaDoc[] {Element.class, String JavaDoc.class};
48         return (OzoneCDATA) db.createObject(OzoneCDATAImpl.class,
49                 signature,
50                 new Object JavaDoc[]{parent, text});
51     }
52
53     public OzoneCDATAImpl(Element parent, String JavaDoc text) {
54         super(parent, text);
55         init();
56     }
57
58     public DocumentFactory getDocumentFactory() {
59         throw new OzoneRemoteException("getDocumentFactory will not work in Ozone");
60     }
61
62     protected NodeFactory getNodeFactory() {
63         try {
64             // todo: might be faster to return super.getNodeFactory() if it is instanceof OzoneCompatible first
65
// before falling back to object for name look-up
66
return (NodeFactory) database().objectForName(OzoneDocumentFactory.OBJECT_NAME);
67         } catch (Exception JavaDoc e) {
68             throw new OzoneRemoteException("NodeFctory not registered" + e.toString());
69         }
70     }
71
72     protected XPathFactory getXPathFactory() {
73         try {
74             // todo: might be faster to return super.getXPathFactory() if it is instanceof OzoneCompatible first
75
// before falling back to object for name look-up
76
return (XPathFactory) database().objectForName(OzoneDocumentFactory.OBJECT_NAME);
77         } catch (Exception JavaDoc e) {
78             throw new OzoneRemoteException("XPathFactory not registered" + e.toString());
79         }
80     }
81
82     public Object JavaDoc clone() {
83         try {
84             Node answer = (Node) database().copyObject(self());
85             answer.setDocument(null);
86             answer.setParent(null);
87             return answer;
88         } catch (Exception JavaDoc e) {
89             e.printStackTrace();
90             return null;
91         }
92     }
93
94     public ObjectID getObjectID() {
95         return ozoneObject.getObjectID();
96     }
97
98     public void setContainer(ObjectContainer _container) {
99         ozoneObject.setContainer(_container);
100     }
101
102     public ObjectContainer container() {
103         return ozoneObject.container();
104     }
105
106     public OzoneProxy self() {
107         return ozoneObject.self();
108     }
109
110     public OzoneInterface database() {
111         return ozoneObject.database();
112     }
113
114     public boolean toXML(ContentHandler JavaDoc ch) throws SAXException JavaDoc {
115         return ozoneObject.toXML(ch);
116     }
117
118     public void onCreate() {
119     }
120
121     public void onActivate() {
122     }
123
124     public void onPassivate() {
125     }
126
127     public void onDelete() {
128     }
129 }
130
Popular Tags