You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ws.apache.org by ve...@apache.org on 2015/08/26 20:23:46 UTC
svn commit: r1697986 -
/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/
Author: veithen
Date: Wed Aug 26 18:23:46 2015
New Revision: 1697986
URL: http://svn.apache.org/r1697986
Log:
Eliminate another set of FOMElement constructors.
Modified:
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMCategories.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMCategory.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMCollection.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMContent.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMControl.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMDateTime.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMDiv.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMElement.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMEntry.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMExtensibleElement.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMFactory.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMFeed.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMGenerator.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMIRI.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMLink.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMMultipartCollection.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMPerson.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMService.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMSource.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMText.java
webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMWorkspace.java
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMCategories.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMCategories.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMCategories.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMCategories.java Wed Aug 26 18:23:46 2015
@@ -20,31 +20,19 @@ package org.apache.abdera.parser.stax;
import java.util.ArrayList;
import java.util.List;
-import javax.xml.namespace.QName;
-
import org.apache.abdera.i18n.iri.IRI;
import org.apache.abdera.model.Categories;
import org.apache.abdera.model.Category;
import org.apache.abdera.parser.stax.util.FOMHelper;
import org.apache.axiom.fom.AbderaCategories;
-import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMFactory;
public class FOMCategories extends FOMExtensibleElement implements AbderaCategories {
- protected FOMCategories(QName qname, OMContainer parent, OMFactory factory) {
- super(qname, parent, factory);
- init();
- }
-
protected FOMCategories(OMFactory factory) {
super(factory);
}
- private void init() {
- this.declareNamespace(ATOM_NS, "atom");
- }
-
public Categories addCategory(Category category) {
addChild((OMElement)category);
return this;
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMCategory.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMCategory.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMCategory.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMCategory.java Wed Aug 26 18:23:46 2015
@@ -17,20 +17,13 @@
*/
package org.apache.abdera.parser.stax;
-import javax.xml.namespace.QName;
-
import org.apache.abdera.i18n.iri.IRI;
import org.apache.abdera.model.Category;
import org.apache.abdera.model.Element;
import org.apache.axiom.fom.AbderaCategory;
-import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMFactory;
public class FOMCategory extends FOMExtensibleElement implements AbderaCategory {
- protected FOMCategory(QName qname, OMContainer parent, OMFactory factory) {
- super(qname, parent, factory);
- }
-
protected FOMCategory(OMFactory factory) {
super(factory);
}
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMCollection.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMCollection.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMCollection.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMCollection.java Wed Aug 26 18:23:46 2015
@@ -22,7 +22,6 @@ import java.util.Iterator;
import java.util.List;
import javax.activation.MimeType;
-import javax.xml.namespace.QName;
import org.apache.abdera.i18n.iri.IRI;
import org.apache.abdera.model.Categories;
@@ -32,7 +31,6 @@ import org.apache.abdera.model.Element;
import org.apache.abdera.model.Text;
import org.apache.abdera.util.MimeTypeHelper;
import org.apache.axiom.fom.AbderaCollection;
-import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMFactory;
@@ -42,10 +40,6 @@ public class FOMCollection extends FOMEx
private static final String[] ENTRY = {"application/atom+xml;type=\"entry\""};
private static final String[] EMPTY = new String[0];
- protected FOMCollection(QName qname, OMContainer parent, OMFactory factory) {
- super(qname, parent, factory);
- }
-
protected FOMCollection(OMFactory factory) {
super(factory);
}
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMContent.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMContent.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMContent.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMContent.java Wed Aug 26 18:23:46 2015
@@ -20,7 +20,6 @@ package org.apache.abdera.parser.stax;
import javax.activation.DataHandler;
import javax.activation.MimeType;
import javax.activation.URLDataSource;
-import javax.xml.namespace.QName;
import org.apache.abdera.i18n.iri.IRI;
import org.apache.abdera.i18n.text.Localizer;
@@ -31,9 +30,7 @@ import org.apache.abdera.model.ElementWr
import org.apache.abdera.util.Constants;
import org.apache.axiom.attachments.ByteArrayDataSource;
import org.apache.axiom.fom.AbderaContent;
-import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.OMNode;
import org.apache.axiom.util.base64.Base64Utils;
@@ -42,16 +39,6 @@ import org.apache.axiom.util.base64.Base
public class FOMContent extends FOMExtensibleElement implements AbderaContent {
protected Type type = Type.TEXT;
- protected FOMContent(QName qname, OMContainer parent, OMFactory factory)
- throws OMException {
- super(qname, parent, factory);
- }
-
- protected FOMContent(QName qname, Type type, OMContainer parent, OMFactory factory) {
- super(qname, parent, factory);
- setContentType(type);
- }
-
protected FOMContent(OMFactory factory) {
super(factory);
}
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMControl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMControl.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMControl.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMControl.java Wed Aug 26 18:23:46 2015
@@ -17,19 +17,12 @@
*/
package org.apache.abdera.parser.stax;
-import javax.xml.namespace.QName;
-
import org.apache.abdera.model.Control;
import org.apache.axiom.fom.AbderaControl;
-import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMFactory;
@SuppressWarnings("deprecation")
public class FOMControl extends FOMExtensibleElement implements AbderaControl {
- protected FOMControl(QName qname, OMContainer parent, OMFactory factory) {
- super(qname, parent, factory);
- }
-
protected FOMControl(OMFactory factory) {
super(factory);
}
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMDateTime.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMDateTime.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMDateTime.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMDateTime.java Wed Aug 26 18:23:46 2015
@@ -20,23 +20,15 @@ package org.apache.abdera.parser.stax;
import java.util.Calendar;
import java.util.Date;
-import javax.xml.namespace.QName;
-
import org.apache.abdera.model.AtomDate;
import org.apache.abdera.model.DateTime;
import org.apache.abdera.model.Element;
import org.apache.axiom.fom.AbderaDateTime;
-import org.apache.axiom.om.OMContainer;
-import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMFactory;
public class FOMDateTime extends FOMElement implements AbderaDateTime {
private AtomDate value;
- protected FOMDateTime(QName qname, OMContainer parent, OMFactory factory) throws OMException {
- super(qname, parent, factory);
- }
-
protected FOMDateTime(OMFactory factory) {
super(factory);
}
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMDiv.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMDiv.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMDiv.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMDiv.java Wed Aug 26 18:23:46 2015
@@ -20,24 +20,17 @@ package org.apache.abdera.parser.stax;
import java.io.StringWriter;
import java.util.Iterator;
-import javax.xml.namespace.QName;
import javax.xml.stream.XMLOutputFactory;
import javax.xml.stream.XMLStreamWriter;
import org.apache.abdera.i18n.iri.IRI;
import org.apache.abdera.model.Div;
import org.apache.axiom.fom.AbderaDiv;
-import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.OMNode;
public class FOMDiv extends FOMExtensibleElement implements AbderaDiv {
- protected FOMDiv(QName qname, OMContainer parent, OMFactory factory) throws OMException {
- super(qname, parent, factory);
- }
-
protected FOMDiv(OMFactory factory) {
super(factory);
}
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMElement.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMElement.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMElement.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMElement.java Wed Aug 26 18:23:46 2015
@@ -61,7 +61,6 @@ import org.apache.axiom.om.OMAttribute;
import org.apache.axiom.om.OMComment;
import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.OMNamespace;
import org.apache.axiom.om.OMNode;
@@ -72,25 +71,10 @@ import org.apache.axiom.om.impl.llom.OME
@SuppressWarnings("unchecked")
public class FOMElement extends OMElementImpl implements AbderaElement, Constants {
- protected FOMElement(QName qname, OMContainer parent, OMFactory factory) throws OMException {
- super(parent, qname.getLocalPart(), getOrCreateNamespace(qname, parent, factory), null, factory, true);
- }
-
protected FOMElement(OMFactory factory) {
super(factory);
}
- private static OMNamespace getOrCreateNamespace(QName qname, OMContainer parent, OMFactory factory) {
- String namespace = qname.getNamespaceURI();
- String prefix = qname.getPrefix();
- if (parent != null && parent instanceof OMElement) {
- OMNamespace ns = ((OMElement)parent).findNamespace(namespace, prefix);
- if (ns != null)
- return ns;
- }
- return factory.createOMNamespace(qname.getNamespaceURI(), qname.getPrefix());
- }
-
protected void setParentDocument(Document parent) {
((OMContainer)parent).addChild(this);
}
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMEntry.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMEntry.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMEntry.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMEntry.java Wed Aug 26 18:23:46 2015
@@ -25,7 +25,6 @@ import java.util.List;
import javax.activation.DataHandler;
import javax.activation.MimeType;
-import javax.xml.namespace.QName;
import org.apache.abdera.model.AtomDate;
import org.apache.abdera.model.Categories;
@@ -49,16 +48,11 @@ import org.apache.abdera.util.MimeTypeHe
import org.apache.abdera.i18n.text.io.InputStreamDataSource;
import org.apache.abdera.i18n.iri.IRI;
import org.apache.axiom.fom.AbderaEntry;
-import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMFactory;
@SuppressWarnings( {"unchecked", "deprecation"})
public class FOMEntry extends FOMExtensibleElement implements AbderaEntry {
- protected FOMEntry(QName qname, OMContainer parent, OMFactory factory) {
- super(qname, parent, factory);
- }
-
protected FOMEntry(OMFactory factory) {
super(factory);
}
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMExtensibleElement.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMExtensibleElement.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMExtensibleElement.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMExtensibleElement.java Wed Aug 26 18:23:46 2015
@@ -28,17 +28,11 @@ import org.apache.abdera.parser.stax.uti
import org.apache.abdera.parser.stax.util.FOMExtensionIterator;
import org.apache.abdera.parser.stax.util.FOMList;
import org.apache.axiom.fom.AbderaExtensibleElement;
-import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMFactory;
@SuppressWarnings("unchecked")
public class FOMExtensibleElement extends FOMElement implements AbderaExtensibleElement {
- protected FOMExtensibleElement(QName qname, OMContainer parent, OMFactory factory) throws OMException {
- super(qname, parent, factory);
- }
-
protected FOMExtensibleElement(OMFactory factory) {
super(factory);
}
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMFactory.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMFactory.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMFactory.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMFactory.java Wed Aug 26 18:23:46 2015
@@ -64,6 +64,7 @@ import org.apache.axiom.om.OMAbstractFac
import org.apache.axiom.om.OMComment;
import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMNamespace;
import org.apache.axiom.om.impl.common.AxiomElement;
import org.apache.axiom.om.impl.llom.factory.OMLinkedListImplFactory;
@@ -103,7 +104,7 @@ public class FOMFactory extends OMLinked
}
public Service newService(Base parent) {
- return new FOMService(SERVICE, (OMContainer)parent, this);
+ return createElement(FOMService.class, SERVICE, (OMContainer)parent);
}
public Workspace newWorkspace() {
@@ -111,7 +112,7 @@ public class FOMFactory extends OMLinked
}
public Workspace newWorkspace(Element parent) {
- return new FOMWorkspace(WORKSPACE, (OMContainer)parent, this);
+ return createElement(FOMWorkspace.class, WORKSPACE, (OMContainer)parent);
}
public Collection newCollection() {
@@ -119,11 +120,11 @@ public class FOMFactory extends OMLinked
}
public Collection newCollection(Element parent) {
- return new FOMCollection(COLLECTION, (OMContainer)parent, this);
+ return createElement(FOMCollection.class, COLLECTION, (OMContainer)parent);
}
public Collection newMultipartCollection(Element parent) {
- return new FOMMultipartCollection(COLLECTION, (OMContainer)parent, this);
+ return createElement(FOMMultipartCollection.class, COLLECTION, (OMContainer)parent);
}
public Feed newFeed() {
@@ -142,11 +143,11 @@ public class FOMFactory extends OMLinked
}
public Feed newFeed(Base parent) {
- return new FOMFeed(FEED, (OMContainer)parent, this);
+ return createElement(FOMFeed.class, FEED, (OMContainer)parent);
}
public Entry newEntry(Base parent) {
- return new FOMEntry(ENTRY, (OMContainer)parent, this);
+ return createElement(FOMEntry.class, ENTRY, (OMContainer)parent);
}
public Category newCategory() {
@@ -154,7 +155,7 @@ public class FOMFactory extends OMLinked
}
public Category newCategory(Element parent) {
- return new FOMCategory(CATEGORY, (OMContainer)parent, this);
+ return createElement(FOMCategory.class, CATEGORY, (OMContainer)parent);
}
public Content newContent() {
@@ -170,7 +171,8 @@ public class FOMFactory extends OMLinked
public Content newContent(Type type, Element parent) {
if (type == null)
type = Content.Type.TEXT;
- Content content = new FOMContent(CONTENT, type, (OMContainer)parent, this);
+ Content content = createElement(FOMContent.class, CONTENT, (OMContainer)parent);
+ content.setContentType(type);
if (type.equals(Content.Type.XML))
content.setMimeType(XML_MEDIA_TYPE);
return content;
@@ -188,7 +190,7 @@ public class FOMFactory extends OMLinked
}
public DateTime newDateTime(QName qname, Element parent) {
- return new FOMDateTime(qname, (OMContainer)parent, this);
+ return createElement(FOMDateTime.class, qname, (OMContainer)parent);
}
public Generator newDefaultGenerator() {
@@ -208,7 +210,7 @@ public class FOMFactory extends OMLinked
}
public Generator newGenerator(Element parent) {
- return new FOMGenerator(GENERATOR, (OMContainer)parent, this);
+ return createElement(FOMGenerator.class, GENERATOR, (OMContainer)parent);
}
public IRIElement newID() {
@@ -220,7 +222,7 @@ public class FOMFactory extends OMLinked
}
public IRIElement newIRIElement(QName qname, Element parent) {
- return new FOMIRI(qname, (OMContainer)parent, this);
+ return createElement(FOMIRI.class, qname, (OMContainer)parent);
}
public Link newLink() {
@@ -228,11 +230,11 @@ public class FOMFactory extends OMLinked
}
public Link newLink(Element parent) {
- return new FOMLink(LINK, (OMContainer)parent, this);
+ return createElement(FOMLink.class, LINK, (OMContainer)parent);
}
public Person newPerson(QName qname, Element parent) {
- return new FOMPerson(qname, (OMContainer)parent, this);
+ return createElement(FOMPerson.class, qname, (OMContainer)parent);
}
public Source newSource() {
@@ -240,7 +242,7 @@ public class FOMFactory extends OMLinked
}
public Source newSource(Element parent) {
- return new FOMSource(SOURCE, (OMContainer)parent, this);
+ return createElement(FOMSource.class, SOURCE, (OMContainer)parent);
}
public Text newText(QName qname, Text.Type type) {
@@ -250,7 +252,9 @@ public class FOMFactory extends OMLinked
public Text newText(QName qname, Text.Type type, Element parent) {
if (type == null)
type = Text.Type.TEXT;
- return new FOMText(type, qname, (OMContainer)parent, this);
+ Text text = createElement(FOMText.class, qname, (OMContainer)parent);
+ text.setTextType(type);
+ return text;
}
public <T extends Element> T newElement(QName qname) {
@@ -276,7 +280,7 @@ public class FOMFactory extends OMLinked
}
public Control newControl(Element parent) {
- return new FOMControl(CONTROL, (OMContainer)parent, this);
+ return createElement(FOMControl.class, CONTROL, (OMContainer)parent);
}
public DateTime newPublished() {
@@ -428,7 +432,7 @@ public class FOMFactory extends OMLinked
}
public Div newDiv(Base parent) {
- return new FOMDiv(DIV, (OMContainer)parent, this);
+ return createElement(FOMDiv.class, DIV, (OMContainer)parent);
}
@Override
@@ -462,6 +466,8 @@ public class FOMFactory extends OMLinked
element = new FOMIRI(this);
} else if (type == FOMLink.class) {
element = new FOMLink(this);
+ } else if (type == FOMMultipartCollection.class) {
+ element = new FOMMultipartCollection(this);
} else if (type == FOMPerson.class) {
element = new FOMPerson(this);
} else if (type == FOMService.class) {
@@ -478,68 +484,89 @@ public class FOMFactory extends OMLinked
return type.cast(element);
}
+ private <T extends FOMElement> T createElement(Class<T> type, QName qname, OMContainer parent) {
+ T element = createNSAwareElement(type);
+ if (parent != null) {
+ parent.addChild(element);
+ }
+ String namespace = qname.getNamespaceURI();
+ String prefix = qname.getPrefix();
+ OMNamespace ns = element.findNamespace(namespace, prefix);
+ if (ns == null && namespace.length() > 0) {
+ ns = createOMNamespace(namespace, prefix);
+ }
+ element.initName(qname.getLocalPart(), ns, true);
+ if (element instanceof FOMService) {
+ element.declareDefaultNamespace(APP_NS);
+ element.declareNamespace(ATOM_NS, "atom");
+ } else if (element instanceof FOMCategories) {
+ element.declareNamespace(ATOM_NS, "atom");
+ }
+ return element;
+ }
+
protected FOMElement createElement(QName qname, OMContainer parent) {
FOMElement element;
if (FEED.equals(qname)) {
- element = new FOMFeed(qname, parent, this);
+ element = createElement(FOMFeed.class, qname, parent);
} else if (SERVICE.equals(qname) || PRE_RFC_SERVICE.equals(qname)) {
- element = new FOMService(qname, parent, this);
+ element = createElement(FOMService.class, qname, parent);
} else if (ENTRY.equals(qname)) {
- element = new FOMEntry(qname, parent, this);
+ element = createElement(FOMEntry.class, qname, parent);
} else if (AUTHOR.equals(qname)) {
- element = new FOMPerson(qname, parent, this);
+ element = createElement(FOMPerson.class, qname, parent);
} else if (CATEGORY.equals(qname)) {
- element = new FOMCategory(qname, parent, this);
+ element = createElement(FOMCategory.class, qname, parent);
} else if (CONTENT.equals(qname)) {
- element = new FOMContent(qname, parent, this);
+ element = createElement(FOMContent.class, qname, parent);
} else if (CONTRIBUTOR.equals(qname)) {
- element = new FOMPerson(qname, parent, this);
+ element = createElement(FOMPerson.class, qname, parent);
} else if (GENERATOR.equals(qname)) {
- element = new FOMGenerator(qname, parent, this);
+ element = createElement(FOMGenerator.class, qname, parent);
} else if (ICON.equals(qname)) {
- element = new FOMIRI(qname, parent, this);
+ element = createElement(FOMIRI.class, qname, parent);
} else if (ID.equals(qname)) {
- element = new FOMIRI(qname, parent, this);
+ element = createElement(FOMIRI.class, qname, parent);
} else if (LOGO.equals(qname)) {
- element = new FOMIRI(qname, parent, this);
+ element = createElement(FOMIRI.class, qname, parent);
} else if (LINK.equals(qname)) {
- element = new FOMLink(qname, parent, this);
+ element = createElement(FOMLink.class, qname, parent);
} else if (PUBLISHED.equals(qname)) {
- element = new FOMDateTime(qname, parent, this);
+ element = createElement(FOMDateTime.class, qname, parent);
} else if (RIGHTS.equals(qname)) {
- element = new FOMText(qname, parent, this);
+ element = createElement(FOMText.class, qname, parent);
} else if (SOURCE.equals(qname)) {
- element = new FOMSource(qname, parent, this);
+ element = createElement(FOMSource.class, qname, parent);
} else if (SUBTITLE.equals(qname)) {
- element = new FOMText(qname, parent, this);
+ element = createElement(FOMText.class, qname, parent);
} else if (SUMMARY.equals(qname)) {
- element = new FOMText(qname, parent, this);
+ element = createElement(FOMText.class, qname, parent);
} else if (TITLE.equals(qname)) {
- element = new FOMText(qname, parent, this);
+ element = createElement(FOMText.class, qname, parent);
} else if (UPDATED.equals(qname)) {
- element = new FOMDateTime(qname, parent, this);
+ element = createElement(FOMDateTime.class, qname, parent);
} else if (WORKSPACE.equals(qname) || PRE_RFC_WORKSPACE.equals(qname)) {
- element = new FOMWorkspace(qname, parent, this);
+ element = createElement(FOMWorkspace.class, qname, parent);
} else if (COLLECTION.equals(qname) || PRE_RFC_COLLECTION.equals(qname)) {
- element = new FOMCollection(qname, parent, this);
+ element = createElement(FOMCollection.class, qname, parent);
} else if (NAME.equals(qname)) {
- element = new FOMElement(qname, parent, this);
+ element = createElement(FOMElement.class, qname, parent);
} else if (EMAIL.equals(qname)) {
- element = new FOMElement(qname, parent, this);
+ element = createElement(FOMElement.class, qname, parent);
} else if (URI.equals(qname)) {
- element = new FOMIRI(qname, parent, this);
+ element = createElement(FOMIRI.class, qname, parent);
} else if (CONTROL.equals(qname) || PRE_RFC_CONTROL.equals(qname)) {
- element = new FOMControl(qname, parent, this);
+ element = createElement(FOMControl.class, qname, parent);
} else if (DIV.equals(qname)) {
- element = new FOMDiv(qname, parent, this);
+ element = createElement(FOMDiv.class, qname, parent);
} else if (CATEGORIES.equals(qname) || PRE_RFC_CATEGORIES.equals(qname)) {
- element = new FOMCategories(qname, parent, this);
+ element = createElement(FOMCategories.class, qname, parent);
} else if (EDITED.equals(qname) || PRE_RFC_EDITED.equals(qname)) {
- element = new FOMDateTime(qname, parent, this);
+ element = createElement(FOMDateTime.class, qname, parent);
} else if (parent instanceof ExtensibleElement || parent instanceof Document) {
- element = new FOMExtensibleElement(qname, parent, this);
+ element = createElement(FOMExtensibleElement.class, qname, parent);
} else {
- element = new FOMExtensibleElement(qname, null, this);
+ element = createElement(FOMExtensibleElement.class, qname, null);
}
return element;
}
@@ -628,7 +655,7 @@ public class FOMFactory extends OMLinked
}
public Categories newCategories(Base parent) {
- return new FOMCategories(CATEGORIES, (OMContainer)parent, this);
+ return createElement(FOMCategories.class, CATEGORIES, (OMContainer)parent);
}
public String newUuidUri() {
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMFeed.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMFeed.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMFeed.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMFeed.java Wed Aug 26 18:23:46 2015
@@ -23,23 +23,16 @@ import java.util.Date;
import java.util.Iterator;
import java.util.List;
-import javax.xml.namespace.QName;
-
import org.apache.abdera.i18n.iri.IRI;
import org.apache.abdera.model.Entry;
import org.apache.abdera.model.Feed;
import org.apache.abdera.model.Source;
import org.apache.axiom.fom.AbderaFeed;
-import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.OMNode;
public class FOMFeed extends FOMSource implements AbderaFeed {
- protected FOMFeed(QName qname, OMContainer parent, OMFactory factory) {
- super(qname, parent, factory);
- }
-
protected FOMFeed(OMFactory factory) {
super(factory);
}
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMGenerator.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMGenerator.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMGenerator.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMGenerator.java Wed Aug 26 18:23:46 2015
@@ -17,19 +17,12 @@
*/
package org.apache.abdera.parser.stax;
-import javax.xml.namespace.QName;
-
import org.apache.abdera.i18n.iri.IRI;
import org.apache.abdera.model.Generator;
import org.apache.axiom.fom.AbderaGenerator;
-import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMFactory;
public class FOMGenerator extends FOMElement implements AbderaGenerator {
- protected FOMGenerator(QName qname, OMContainer parent, OMFactory factory) {
- super(qname, parent, factory);
- }
-
protected FOMGenerator(OMFactory factory) {
super(factory);
}
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMIRI.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMIRI.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMIRI.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMIRI.java Wed Aug 26 18:23:46 2015
@@ -17,21 +17,13 @@
*/
package org.apache.abdera.parser.stax;
-import javax.xml.namespace.QName;
-
import org.apache.abdera.i18n.iri.IRI;
import org.apache.abdera.model.Element;
import org.apache.abdera.model.IRIElement;
import org.apache.axiom.fom.AbderaIRIElement;
-import org.apache.axiom.om.OMContainer;
-import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMFactory;
public class FOMIRI extends FOMElement implements AbderaIRIElement {
- protected FOMIRI(QName qname, OMContainer parent, OMFactory factory) throws OMException {
- super(qname, parent, factory);
- }
-
protected FOMIRI(OMFactory factory) {
super(factory);
}
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMLink.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMLink.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMLink.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMLink.java Wed Aug 26 18:23:46 2015
@@ -21,21 +21,14 @@ import java.util.HashMap;
import java.util.Map;
import javax.activation.MimeType;
-import javax.xml.namespace.QName;
import org.apache.abdera.i18n.iri.IRI;
import org.apache.abdera.model.Element;
import org.apache.abdera.model.Link;
import org.apache.axiom.fom.AbderaLink;
-import org.apache.axiom.om.OMContainer;
-import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMFactory;
public class FOMLink extends FOMExtensibleElement implements AbderaLink {
- protected FOMLink(QName qname, OMContainer parent, OMFactory factory) throws OMException {
- super(qname, parent, factory);
- }
-
protected FOMLink(OMFactory factory) {
super(factory);
}
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMMultipartCollection.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMMultipartCollection.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMMultipartCollection.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMMultipartCollection.java Wed Aug 26 18:23:46 2015
@@ -6,12 +6,10 @@ import java.util.Iterator;
import java.util.Map;
import javax.activation.MimeType;
-import javax.xml.namespace.QName;
import org.apache.abdera.model.Collection;
import org.apache.abdera.model.Element;
import org.apache.abdera.util.MimeTypeHelper;
-import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMFactory;
/*
@@ -33,9 +31,8 @@ import org.apache.axiom.om.OMFactory;
* under the License.
*/
public class FOMMultipartCollection extends FOMCollection {
-
- protected FOMMultipartCollection(QName qname, OMContainer parent, OMFactory factory) {
- super(qname, parent, factory);
+ protected FOMMultipartCollection(OMFactory factory) {
+ super(factory);
}
public boolean acceptsMultipart(String mediaType) {
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMPerson.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMPerson.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMPerson.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMPerson.java Wed Aug 26 18:23:46 2015
@@ -17,23 +17,15 @@
*/
package org.apache.abdera.parser.stax;
-import javax.xml.namespace.QName;
-
import org.apache.abdera.i18n.iri.IRI;
import org.apache.abdera.model.Element;
import org.apache.abdera.model.IRIElement;
import org.apache.abdera.model.Person;
import org.apache.axiom.fom.AbderaPerson;
-import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMFactory;
public class FOMPerson extends FOMExtensibleElement implements AbderaPerson {
- protected FOMPerson(QName qname, OMContainer parent, OMFactory factory) throws OMException {
- super(qname, parent, factory);
- }
-
protected FOMPerson(OMFactory factory) {
super(factory);
}
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMService.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMService.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMService.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMService.java Wed Aug 26 18:23:46 2015
@@ -21,32 +21,20 @@ import java.util.ArrayList;
import java.util.List;
import javax.activation.MimeType;
-import javax.xml.namespace.QName;
import org.apache.abdera.model.Collection;
import org.apache.abdera.model.Service;
import org.apache.abdera.model.Workspace;
import org.apache.axiom.fom.AbderaService;
-import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMFactory;
@SuppressWarnings("deprecation")
public class FOMService extends FOMExtensibleElement implements AbderaService {
- protected FOMService(QName qname, OMContainer parent, OMFactory factory) {
- super(qname, parent, factory);
- declareAtomNs();
- }
-
protected FOMService(OMFactory factory) {
super(factory);
}
- private void declareAtomNs() {
- declareDefaultNamespace(APP_NS);
- declareNamespace(ATOM_NS, "atom");
- }
-
public List<Workspace> getWorkspaces() {
List<Workspace> list = _getChildrenAsSet(WORKSPACE);
if (list == null || list.size() == 0)
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMSource.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMSource.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMSource.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMSource.java Wed Aug 26 18:23:46 2015
@@ -21,8 +21,6 @@ import java.util.Date;
import java.util.Iterator;
import java.util.List;
-import javax.xml.namespace.QName;
-
import org.apache.abdera.i18n.iri.IRI;
import org.apache.abdera.i18n.iri.IRIHelper;
import org.apache.abdera.model.AtomDate;
@@ -41,18 +39,12 @@ import org.apache.abdera.model.Source;
import org.apache.abdera.model.Text;
import org.apache.abdera.parser.stax.util.FOMHelper;
import org.apache.axiom.fom.AbderaSource;
-import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.OMNode;
@SuppressWarnings( {"unchecked", "deprecation"})
public class FOMSource extends FOMExtensibleElement implements AbderaSource {
- protected FOMSource(QName qname, OMContainer parent, OMFactory factory) throws OMException {
- super(qname, parent, factory);
- }
-
protected FOMSource(OMFactory factory) {
super(factory);
}
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMText.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMText.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMText.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMText.java Wed Aug 26 18:23:46 2015
@@ -17,17 +17,13 @@
*/
package org.apache.abdera.parser.stax;
-import javax.xml.namespace.QName;
-
import org.apache.abdera.i18n.iri.IRI;
import org.apache.abdera.model.Div;
import org.apache.abdera.model.Element;
import org.apache.abdera.model.Text;
import org.apache.abdera.util.Constants;
import org.apache.axiom.fom.AbderaText;
-import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.OMNode;
@@ -35,16 +31,6 @@ import org.apache.axiom.om.OMNode;
public class FOMText extends FOMElement implements AbderaText {
protected Type type = Type.TEXT;
- protected FOMText(QName qname, OMContainer parent, OMFactory factory)
- throws OMException {
- super(qname, parent, factory);
- }
-
- protected FOMText(Type type, QName qname, OMContainer parent, OMFactory factory) throws OMException {
- super(qname, parent, factory);
- setTextType(type);
- }
-
protected FOMText(OMFactory factory) {
super(factory);
}
Modified: webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMWorkspace.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMWorkspace.java?rev=1697986&r1=1697985&r2=1697986&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMWorkspace.java (original)
+++ webservices/axiom/trunk/implementations/fom-impl/src/main/java/org/apache/abdera/parser/stax/FOMWorkspace.java Wed Aug 26 18:23:46 2015
@@ -21,23 +21,16 @@ import java.util.ArrayList;
import java.util.List;
import javax.activation.MimeType;
-import javax.xml.namespace.QName;
import org.apache.abdera.model.Collection;
import org.apache.abdera.model.Text;
import org.apache.abdera.model.Workspace;
import org.apache.axiom.fom.AbderaWorkspace;
-import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMFactory;
@SuppressWarnings("deprecation")
public class FOMWorkspace extends FOMExtensibleElement implements AbderaWorkspace {
- protected FOMWorkspace(QName qname, OMContainer parent, OMFactory factory) throws OMException {
- super(qname, parent, factory);
- }
-
protected FOMWorkspace(OMFactory factory) {
super(factory);
}