Author: veithen
Date: Fri Oct 2 19:30:48 2015
New Revision: 1706479
URL: http://svn.apache.org/viewvc?rev=1706479&view=rev
Log:
Rewrite some FOM code using the core model API.
Modified:
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/FOMElement.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/FOMMultipartCollection.java
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=1706479&r1=1706478&r2=1706479&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
Fri Oct 2 19:30:48 2015
@@ -37,6 +37,7 @@ 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.fom.AbderaElement;
import org.apache.axiom.om.OMElement;
@SuppressWarnings("deprecation")
@@ -80,11 +81,11 @@ public class FOMCollection extends FOMEx
public String[] getAccept() {
List<String> accept = new ArrayList<String>();
- Iterator<?> i = getChildrenWithName(ACCEPT);
+ Iterator<AbderaElement> i = _getChildrenWithName(ACCEPT);
if (i == null || !i.hasNext())
- i = getChildrenWithName(PRE_RFC_ACCEPT);
+ i = _getChildrenWithName(PRE_RFC_ACCEPT);
while (i.hasNext()) {
- Element e = (Element)i.next();
+ Element e = i.next();
String t = e.getText();
if (t != null) {
accept.add(t.trim());
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=1706479&r1=1706478&r2=1706479&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
Fri Oct 2 19:30:48 2015
@@ -58,10 +58,13 @@ import org.apache.abdera.parser.stax.uti
import org.apache.abdera.util.MimeTypeHelper;
import org.apache.abdera.writer.Writer;
import org.apache.abdera.writer.WriterOptions;
+import org.apache.axiom.core.Axis;
import org.apache.axiom.core.CoreChildNode;
import org.apache.axiom.core.CoreNSAwareElement;
+import org.apache.axiom.core.ElementMatcher;
import org.apache.axiom.fom.AbderaElement;
import org.apache.axiom.fom.AbderaText;
+import org.apache.axiom.fom.FOMExceptionTranslator;
import org.apache.axiom.fom.FOMList;
import org.apache.axiom.fom.IRIUtil;
import org.apache.axiom.fom.Policies;
@@ -220,9 +223,15 @@ public class FOMElement extends FOMChild
return (T)this;
}
+ protected final Iterator<AbderaElement> _getChildrenWithName(QName qname) {
+ return coreGetElements(Axis.CHILDREN, AbderaElement.class,
ElementMatcher.BY_QNAME,
+ qname.getNamespaceURI(), qname.getLocalPart(),
FOMExceptionTranslator.INSTANCE,
+ Policies.DETACH_POLICY);
+ }
+
public <E extends Element> List<E> _getChildrenAsSet(QName qname) {
FOMFactory factory = (FOMFactory)getFactory();
- return new FOMList(new FOMElementIteratorWrapper(factory,
getChildrenWithName(qname)));
+ return new FOMList(new FOMElementIteratorWrapper(factory,
_getChildrenWithName(qname)));
}
protected void _setChild(QName qname, Element element) {
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=1706479&r1=1706478&r2=1706479&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
Fri Oct 2 19:30:48 2015
@@ -42,7 +42,7 @@ public class FOMExtensibleElement extend
public <T extends Element> List<T> getExtensions(QName qname) {
FOMFactory factory = (FOMFactory)this.getFactory();
- return new FOMList<T>(new FOMElementIteratorWrapper(factory,
getChildrenWithName(qname)));
+ return new FOMList<T>(new FOMElementIteratorWrapper(factory,
_getChildrenWithName(qname)));
}
public <T extends Element> T getExtension(QName qname) {
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=1706479&r1=1706478&r2=1706479&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
Fri Oct 2 19:30:48 2015
@@ -15,6 +15,7 @@ import javax.activation.MimeType;
import org.apache.abdera.model.Collection;
import org.apache.abdera.model.Element;
import org.apache.abdera.util.MimeTypeHelper;
+import org.apache.axiom.fom.AbderaElement;
/*
* Licensed to the Apache Software Foundation (ASF) under one
@@ -53,11 +54,11 @@ public class FOMMultipartCollection exte
public Map<String, String> getAcceptMultiparted() {
Map<String, String> accept = new HashMap<String, String>();
- Iterator<?> i = getChildrenWithName(ACCEPT);
+ Iterator<AbderaElement> i = _getChildrenWithName(ACCEPT);
if (i == null || !i.hasNext())
- i = getChildrenWithName(PRE_RFC_ACCEPT);
+ i = _getChildrenWithName(PRE_RFC_ACCEPT);
while (i.hasNext()) {
- Element e = (Element)i.next();
+ Element e = i.next();
String t = e.getText();
if (t != null) {
if (e.getAttributeValue(ALTERNATE) != null &&
e.getAttributeValue(ALTERNATE).trim().length() > 0) {