Author: ningjiang Date: Mon Jul 13 11:44:49 2009 New Revision: 793557 URL: http://svn.apache.org/viewvc?rev=793557&view=rev Log: Merged revisions 793547,793555 via svnmerge from https://svn.apache.org/repos/asf/camel/trunk
........ r793547 | ningjiang | 2009-07-13 19:24:46 +0800 (Mon, 13 Jul 2009) | 1 line CAMEL-1828 Fixed the pretty print setting issue ........ r793555 | ningjiang | 2009-07-13 19:40:53 +0800 (Mon, 13 Jul 2009) | 1 line Fixed the unit test error of my last commit ........ Modified: camel/branches/camel-1.x/ (props changed) camel/branches/camel-1.x/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java camel/branches/camel-1.x/components/camel-jaxb/src/test/java/org/apache/camel/example/DataFormatTest.java camel/branches/camel-1.x/components/camel-jaxb/src/test/resources/org/apache/camel/example/springDataFormatWithEncoding.xml Propchange: camel/branches/camel-1.x/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Mon Jul 13 11:44:49 2009 @@ -1 +1 @@ -/camel/trunk:736980,739733,739904,740251,740295,740306,740596,740663,741848,742231,742705,742739,742854,742856,742898,742906,743613,743762,743773,743920,743959-743960,744123,745105,745367,745541,745751,745826,745978,746269,746872,746895,746962,747258,747678-747704,748392,748436,748821,749563-749564,749574,749628-749629,749936,749956,750017,750334,750396,750761,750796,752068,752117,752418,752751-752755,752764-752773,752956,753087,753101,753175,755136,755487,756313,756348,756870,756939,757636,757693,757743,757865,758539,758563,758600,758617,758692,758990,759362,759453,759887,759931,760003,760890,760909,760937,761194,761536,761583,761607,762047,762633,762650,762935,763095,763484,763551,765154,765686,765729,765743,765824,766016,766289,766584,766588,766590,766602,766673,767403,767824,768342,769239,769346,769368,769434,770172,770906,771303,773193,773446,773781,774192,774383,774658-774659,776198,776289,776504,776975,778102,778689-778701,779121,779143,779489,781314-781349,781775,781 923,781974,781993,782557,782594,782681,782886,782918-782923,783204,783248,783363,783639,783704,785564,785584,785599,787206,787581,787598,787605,787928,788393,789121,789703,790560,790936,791379,791476,791767,792038,792381,792398,792899,793359,793518 +/camel/trunk:736980,739733,739904,740251,740295,740306,740596,740663,741848,742231,742705,742739,742854,742856,742898,742906,743613,743762,743773,743920,743959-743960,744123,745105,745367,745541,745751,745826,745978,746269,746872,746895,746962,747258,747678-747704,748392,748436,748821,749563-749564,749574,749628-749629,749936,749956,750017,750334,750396,750761,750796,752068,752117,752418,752751-752755,752764-752773,752956,753087,753101,753175,755136,755487,756313,756348,756870,756939,757636,757693,757743,757865,758539,758563,758600,758617,758692,758990,759362,759453,759887,759931,760003,760890,760909,760937,761194,761536,761583,761607,762047,762633,762650,762935,763095,763484,763551,765154,765686,765729,765743,765824,766016,766289,766584,766588,766590,766602,766673,767403,767824,768342,769239,769346,769368,769434,770172,770906,771303,773193,773446,773781,774192,774383,774658-774659,776198,776289,776504,776975,778102,778689-778701,779121,779143,779489,781314-781349,781775,781 923,781974,781993,782557,782594,782681,782886,782918-782923,783204,783248,783363,783639,783704,785564,785584,785599,787206,787581,787598,787605,787928,788393,789121,789703,790560,790936,791379,791476,791767,792038,792381,792398,792899,793359,793518,793547-793555 Propchange: camel/branches/camel-1.x/ ------------------------------------------------------------------------------ Binary property 'svnmerge-integrated' - no diff available. Modified: camel/branches/camel-1.x/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java URL: http://svn.apache.org/viewvc/camel/branches/camel-1.x/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java?rev=793557&r1=793556&r2=793557&view=diff ============================================================================== --- camel/branches/camel-1.x/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java (original) +++ camel/branches/camel-1.x/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java Mon Jul 13 11:44:49 2009 @@ -56,7 +56,9 @@ try { // must create a new instance of marshaller as its not thred safe Marshaller marshaller = getContext().createMarshaller(); - + if (isPrettyPrint()) { + marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); + } // exchange take precedense over encoding option String charset = exchange.getProperty(Exchange.CHARSET_NAME, String.class); if (charset == null) { Modified: camel/branches/camel-1.x/components/camel-jaxb/src/test/java/org/apache/camel/example/DataFormatTest.java URL: http://svn.apache.org/viewvc/camel/branches/camel-1.x/components/camel-jaxb/src/test/java/org/apache/camel/example/DataFormatTest.java?rev=793557&r1=793556&r2=793557&view=diff ============================================================================== --- camel/branches/camel-1.x/components/camel-jaxb/src/test/java/org/apache/camel/example/DataFormatTest.java (original) +++ camel/branches/camel-1.x/components/camel-jaxb/src/test/java/org/apache/camel/example/DataFormatTest.java Mon Jul 13 11:44:49 2009 @@ -17,43 +17,81 @@ package org.apache.camel.example; import org.apache.camel.ContextTestSupport; +import org.apache.camel.Exchange; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.component.mock.MockEndpoint; import org.apache.camel.converter.jaxb.JaxbDataFormat; +import org.apache.camel.foo.bar.PersonType; import org.apache.camel.spi.DataFormat; /** * @version $Revision$ */ public class DataFormatTest extends ContextTestSupport { + + private MockEndpoint resultEndpoint; + + @Override + protected void setUp() throws Exception { + super.setUp(); + resultEndpoint = resolveMandatoryEndpoint("mock:result", MockEndpoint.class); + } public void testMarshalThenUnmarshalBean() throws Exception { + PurchaseOrder bean = new PurchaseOrder(); bean.setName("Beer"); bean.setAmount(23); bean.setPrice(2.5); - - MockEndpoint resultEndpoint = resolveMandatoryEndpoint("mock:result", MockEndpoint.class); + resultEndpoint.expectedBodiesReceived(bean); template.sendBody("direct:start", bean); resultEndpoint.assertIsSatisfied(); } + + public void testMarshalPrettyPrint() throws Exception { + PersonType person = new PersonType(); + person.setFirstName("Willem"); + person.setLastName("Jiang"); + resultEndpoint.expectedMessageCount(1); + + template.sendBody("direct:prettyPrint", person); + + resultEndpoint.assertIsSatisfied(); + + Exchange exchange = resultEndpoint.getExchanges().get(0); + + String result = exchange.getIn().getBody(String.class); + assertNotNull("The result should not be null", result); + int indexPerson = result.indexOf("<Person>"); + int indexFirstName = result.indexOf("<firstName>"); + + assertTrue("we should find the <Person>", indexPerson > 0); + assertTrue("we should find the <firstName>", indexFirstName > 0); + assertTrue("There should some sapce between <Person> and <firstName>", indexFirstName - indexPerson > 8); + } protected RouteBuilder createRouteBuilder() { return new RouteBuilder() { public void configure() { - DataFormat jaxb = new JaxbDataFormat("org.apache.camel.example"); - + JaxbDataFormat example = new JaxbDataFormat("org.apache.camel.example"); + JaxbDataFormat person = new JaxbDataFormat("org.apache.camel.foo.bar"); + person.setPrettyPrint(true); + from("direct:start"). - marshal(jaxb). + marshal(example). to("direct:marshalled"); from("direct:marshalled"). - unmarshal(jaxb). + unmarshal(example). + to("mock:result"); + + from("direct:prettyPrint"). + marshal(person). to("mock:result"); } }; Modified: camel/branches/camel-1.x/components/camel-jaxb/src/test/resources/org/apache/camel/example/springDataFormatWithEncoding.xml URL: http://svn.apache.org/viewvc/camel/branches/camel-1.x/components/camel-jaxb/src/test/resources/org/apache/camel/example/springDataFormatWithEncoding.xml?rev=793557&r1=793556&r2=793557&view=diff ============================================================================== --- camel/branches/camel-1.x/components/camel-jaxb/src/test/resources/org/apache/camel/example/springDataFormatWithEncoding.xml (original) +++ camel/branches/camel-1.x/components/camel-jaxb/src/test/resources/org/apache/camel/example/springDataFormatWithEncoding.xml Mon Jul 13 11:44:49 2009 @@ -27,7 +27,7 @@ <route> <from uri="direct:start"/> <marshal> - <jaxb prettyPrint="true" encoding="iso-8859-1" contextPath="org.apache.camel.example"/> + <jaxb prettyPrint="false" encoding="iso-8859-1" contextPath="org.apache.camel.example"/> </marshal> <to uri="mock:result"/> </route>