You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by dk...@apache.org on 2008/09/17 23:17:26 UTC
svn commit: r696449 - in /cxf/branches/2.1.x-fixes: ./
rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/
rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/
rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/
Author: dkulp
Date: Wed Sep 17 14:17:25 2008
New Revision: 696449
URL: http://svn.apache.org/viewvc?rev=696449&view=rev
Log:
Merged revisions 691338 via svnmerge from
https://svn.apache.org/repos/asf/cxf/trunk
........
r691338 | bimargulies | 2008-09-02 14:15:05 -0400 (Tue, 02 Sep 2008) | 2 lines
When not using 'soap encoding', map Character objects to xsd:strings.
........
Added:
cxf/branches/2.1.x-fixes/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/CharacterAsStringType.java
- copied, changed from r691338, cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/CharacterAsStringType.java
Modified:
cxf/branches/2.1.x-fixes/ (props changed)
cxf/branches/2.1.x-fixes/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/AbstractAegisTest.java
cxf/branches/2.1.x-fixes/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/SimpleBean.java
Propchange: cxf/branches/2.1.x-fixes/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep 17 14:17:25 2008
@@ -1 +1 @@
-/cxf/trunk:686333-686363,686764,686820,687096,687194,687363,687387,687463,687543,687722,687798,687814,687817,687891,687910,687914,688086,688102,688133,688596,688735,688870,689572,689596,689855,689924,690067,690289,691246,691271,691295,691355,691488,691602,691646,691706,691728,692116,692157,692310,692466,692499,693653,693819,694179,694263,694417,694716,694744,694747,694795,694869,694981,694987,694993,695041,695096,695396,695484,695537,695552,695561,695619,695684,695835,695840,695868,695935,695977,696433
+/cxf/trunk:686333-686363,686764,686820,687096,687194,687363,687387,687463,687543,687722,687798,687814,687817,687891,687910,687914,688086,688102,688133,688596,688735,688870,689572,689596,689855,689924,690067,690289,691246,691271,691295,691338,691355,691488,691602,691646,691706,691728,692116,692157,692310,692466,692499,693653,693819,694179,694263,694417,694716,694744,694747,694795,694869,694981,694987,694993,695041,695096,695396,695484,695537,695552,695561,695619,695684,695835,695840,695868,695935,695977,696433
Propchange: cxf/branches/2.1.x-fixes/
------------------------------------------------------------------------------
--- svnmerge-blocked (original)
+++ svnmerge-blocked Wed Sep 17 14:17:25 2008
@@ -1 +1 @@
-/cxf/trunk:686343,686370,686382,686529,687783,688593,688791-688792,688868,689458,689929,691148,691237,691247,691338,691343,691348,691365,691367,691505,691511,692229
+/cxf/trunk:686343,686370,686382,686529,687783,688593,688791-688792,688868,689458,689929,691148,691237,691247,691343,691348,691365,691367,691505,691511,692229
Propchange: cxf/branches/2.1.x-fixes/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.
Copied: cxf/branches/2.1.x-fixes/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/CharacterAsStringType.java (from r691338, cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/CharacterAsStringType.java)
URL: http://svn.apache.org/viewvc/cxf/branches/2.1.x-fixes/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/CharacterAsStringType.java?p2=cxf/branches/2.1.x-fixes/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/CharacterAsStringType.java&p1=cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/CharacterAsStringType.java&r1=691338&r2=696449&rev=696449&view=diff
==============================================================================
--- cxf/trunk/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/CharacterAsStringType.java (original)
+++ cxf/branches/2.1.x-fixes/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/CharacterAsStringType.java Wed Sep 17 14:17:25 2008
@@ -19,6 +19,8 @@
package org.apache.cxf.aegis.type.basic;
+import javax.xml.namespace.QName;
+
import org.apache.cxf.aegis.Context;
import org.apache.cxf.aegis.DatabindingException;
import org.apache.cxf.aegis.type.Type;
@@ -30,20 +32,20 @@
*/
public class CharacterAsStringType extends Type {
- private StringType stringType;
+ public static final QName CHARACTER_AS_STRING_TYPE_QNAME
+ = new QName("http://cxf.apache.org/aegisTypes", "char");
+
+ private IntType intType;
public CharacterAsStringType() {
- stringType = new StringType();
+ intType = new IntType();
}
/** {@inheritDoc}*/
@Override
public Object readObject(MessageReader reader, Context context) throws DatabindingException {
- String string = (String)stringType.readObject(reader, context);
- if (string.length() == 0) {
- return Character.valueOf((char)0);
- }
- return new Character(string.charAt(0));
+ Integer readInteger = (Integer)intType.readObject(reader, context);
+ return new Character((char)readInteger.intValue());
}
/** {@inheritDoc}*/
@@ -51,6 +53,12 @@
public void writeObject(Object object, MessageWriter writer, Context context)
throws DatabindingException {
Character charObject = (Character) object;
- stringType.writeObject(charObject.toString(), writer, context);
+ intType.writeObject(Integer.valueOf(charObject.charValue()), writer, context);
+ }
+
+ @Override
+ public boolean usesUtilityTypes() {
+ return true;
}
+
}
Modified: cxf/branches/2.1.x-fixes/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/AbstractAegisTest.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.1.x-fixes/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/AbstractAegisTest.java?rev=696449&r1=696448&r2=696449&view=diff
==============================================================================
--- cxf/branches/2.1.x-fixes/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/AbstractAegisTest.java (original)
+++ cxf/branches/2.1.x-fixes/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/AbstractAegisTest.java Wed Sep 17 14:17:25 2008
@@ -30,6 +30,7 @@
import org.w3c.dom.Document;
import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
import org.apache.cxf.Bus;
import org.apache.cxf.BusException;
@@ -221,10 +222,10 @@
assertXPathEquals(xpath, value, doc);
}
- protected void assertValid(String xpath, Element element) throws Exception {
+ protected NodeList assertValid(String xpath, Element element) throws Exception {
org.w3c.dom.Document doc = new DOMOutputter().output(element.getDocument());
- assertValid(xpath, doc);
+ return assertValid(xpath, doc);
}
protected void assertInvalid(String xpath, Element element) throws Exception {
Modified: cxf/branches/2.1.x-fixes/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/SimpleBean.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.1.x-fixes/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/SimpleBean.java?rev=696449&r1=696448&r2=696449&view=diff
==============================================================================
--- cxf/branches/2.1.x-fixes/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/SimpleBean.java (original)
+++ cxf/branches/2.1.x-fixes/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/SimpleBean.java Wed Sep 17 14:17:25 2008
@@ -29,6 +29,8 @@
private String howdy;
private int[] numbers;
+
+ private Character character;
private char primitiveCharacter;
public int[] getNumbers() {
@@ -65,6 +67,14 @@
this.howdy = howdy;
}
+ public Character getCharacter() {
+ return character;
+ }
+
+ public void setCharacter(Character character) {
+ this.character = character;
+ }
+
public char getPrimitiveChar() {
return primitiveCharacter;
}