You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2012/12/17 11:17:52 UTC
svn commit: r1422827 - in /camel/trunk/components/camel-bindy/src:
main/java/org/apache/camel/dataformat/bindy/
main/java/org/apache/camel/dataformat/bindy/annotation/
main/java/org/apache/camel/dataformat/bindy/format/
test/java/org/apache/camel/dataf...
Author: davsclaus
Date: Mon Dec 17 10:17:48 2012
New Revision: 1422827
URL: http://svn.apache.org/viewvc?rev=1422827&view=rev
Log:
CAMEL-5827: Added support for implied decimal values in camel-bindy. Thanks to Luca Burgazzoli for the patch.
Added:
camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/AbstractNumberFormat.java (with props)
camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/implied/
camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/implied/BindyImpliedTest.java (with props)
camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/number/
camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/number/BindyNumberTest.java (with props)
camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/implied/
camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/implied/BindyImpliedTest-context.xml (with props)
camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/number/
camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/number/BindyNumberTest-context.xml (with props)
Modified:
camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyCsvFactory.java
camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyFixedLengthFactory.java
camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyKeyValuePairFactory.java
camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/FormatFactory.java
camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/annotation/DataField.java
camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/annotation/KeyValuePairField.java
camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/BigDecimalFormat.java
camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/BigIntegerFormat.java
camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/DoubleFormat.java
camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/FloatFormat.java
camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/IntegerFormat.java
camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/LongFormat.java
camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/ShortFormat.java
camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/csv/BindyComplexCsvGenerateHeaderMarshallTest.java
camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/csv/BindyComplexCsvMarshallTest.java
Modified: camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyCsvFactory.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyCsvFactory.java?rev=1422827&r1=1422826&r2=1422827&view=diff
==============================================================================
--- camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyCsvFactory.java (original)
+++ camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyCsvFactory.java Mon Dec 17 10:17:48 2012
@@ -16,6 +16,7 @@
*/
package org.apache.camel.dataformat.bindy;
+
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.HashMap;
@@ -39,6 +40,7 @@ import org.apache.camel.util.ObjectHelpe
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+
/**
* The BindyCsvFactory is the class who allows to : Generate a model associated
* to a CSV record, bind data from a record to the POJOs, export data of POJOs
@@ -191,7 +193,7 @@ public class BindyCsvFactory extends Bin
String pattern = dataField.pattern();
// Create format object to format the field
- format = FormatFactory.getFormat(field.getType(), pattern, getLocale(), dataField.precision());
+ format = FormatFactory.getFormat(field.getType(), getLocale(), dataField);
// field object to be set
Object modelField = model.get(field.getDeclaringClass().getName());
@@ -398,7 +400,7 @@ public class BindyCsvFactory extends Bin
int precision = datafield.precision();
// Create format
- Format<?> format = FormatFactory.getFormat(type, pattern, getLocale(), precision);
+ Format<?> format = FormatFactory.getFormat(type, getLocale(), datafield);
// Get field value
Object value = field.get(obj);
@@ -589,8 +591,7 @@ public class BindyCsvFactory extends Bin
Object modelField = model.get(field.getDeclaringClass().getName());
if (field.get(modelField) == null && !dataField.defaultValue().isEmpty()) {
String pattern = dataField.pattern();
- Format<?> format = FormatFactory.getFormat(field.getType(), pattern, getLocale(),
- dataField.precision());
+ Format<?> format = FormatFactory.getFormat(field.getType(), getLocale(), dataField);
Object value = format.parse(dataField.defaultValue());
field.set(modelField, value);
}
Modified: camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyFixedLengthFactory.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyFixedLengthFactory.java?rev=1422827&r1=1422826&r2=1422827&view=diff
==============================================================================
--- camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyFixedLengthFactory.java (original)
+++ camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyFixedLengthFactory.java Mon Dec 17 10:17:48 2012
@@ -28,12 +28,14 @@ import java.util.Map;
import java.util.Map.Entry;
import java.util.TreeMap;
+
import org.apache.camel.dataformat.bindy.annotation.DataField;
import org.apache.camel.dataformat.bindy.annotation.FixedLengthRecord;
import org.apache.camel.dataformat.bindy.annotation.Link;
import org.apache.camel.dataformat.bindy.format.FormatException;
import org.apache.camel.spi.PackageScanClassResolver;
import org.apache.camel.util.ObjectHelper;
+
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -215,7 +217,7 @@ public class BindyFixedLengthFactory ext
pattern = dataField.pattern();
// Create format object to format the field
- format = FormatFactory.getFormat(field.getType(), pattern, getLocale(), dataField.precision());
+ format = FormatFactory.getFormat(field.getType(), getLocale(), dataField);
// field object to be set
Object modelField = model.get(field.getDeclaringClass().getName());
@@ -320,7 +322,7 @@ public class BindyFixedLengthFactory ext
// Create format
- Format<?> format = FormatFactory.getFormat(type, pattern, getLocale(), precision);
+ Format<?> format = FormatFactory.getFormat(type, getLocale(), datafield);
// Get field value
Object value = field.get(obj);
Modified: camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyKeyValuePairFactory.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyKeyValuePairFactory.java?rev=1422827&r1=1422826&r2=1422827&view=diff
==============================================================================
--- camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyKeyValuePairFactory.java (original)
+++ camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyKeyValuePairFactory.java Mon Dec 17 10:17:48 2012
@@ -287,7 +287,7 @@ public class BindyKeyValuePairFactory ex
String pattern = keyValuePairField.pattern();
// Create format object to format the field
- Format<?> format = FormatFactory.getFormat(field.getType(), pattern, getLocale(), keyValuePairField.precision());
+ Format<?> format = FormatFactory.getFormat(field.getType(), getLocale(), keyValuePairField);
// format the value of the key received
result = formatField(format, value, key, line);
@@ -326,7 +326,7 @@ public class BindyKeyValuePairFactory ex
String pattern = keyValuePairField.pattern();
// Create format object to format the field
- Format<?> format = FormatFactory.getFormat(field.getType(), pattern, getLocale(), keyValuePairField.precision());
+ Format<?> format = FormatFactory.getFormat(field.getType(), getLocale(), keyValuePairField);
// format the value of the key received
Object result = formatField(format, value, key, line);
@@ -456,7 +456,7 @@ public class BindyKeyValuePairFactory ex
// Create format
@SuppressWarnings("unchecked")
- Format<Object> format = (Format<Object>)FormatFactory.getFormat(type, pattern, getLocale(), precision);
+ Format<Object> format = (Format<Object>)FormatFactory.getFormat(type, getLocale(), keyValuePairField);
// Get object to be formatted
Object obj = model.get(field.getDeclaringClass().getName());
Modified: camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/FormatFactory.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/FormatFactory.java?rev=1422827&r1=1422826&r2=1422827&view=diff
==============================================================================
--- camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/FormatFactory.java (original)
+++ camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/FormatFactory.java Mon Dec 17 10:17:48 2012
@@ -16,11 +16,14 @@
*/
package org.apache.camel.dataformat.bindy;
+
import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.Date;
import java.util.Locale;
+import org.apache.camel.dataformat.bindy.annotation.DataField;
+import org.apache.camel.dataformat.bindy.annotation.KeyValuePairField;
import org.apache.camel.dataformat.bindy.format.BigDecimalFormat;
import org.apache.camel.dataformat.bindy.format.BigIntegerFormat;
import org.apache.camel.dataformat.bindy.format.ByteFormat;
@@ -38,6 +41,8 @@ import org.apache.camel.dataformat.bindy
import org.apache.camel.dataformat.bindy.format.ShortFormat;
import org.apache.camel.dataformat.bindy.format.ShortPatternFormat;
import org.apache.camel.dataformat.bindy.format.StringFormat;
+import org.apache.camel.util.ObjectHelper;
+
/**
* Factory to return {@link Format} classes for a given type.
@@ -54,48 +59,80 @@ public final class FormatFactory {
* @param pattern is the pattern to be used during the formatting of the data
* @param locale optional locale for NumberFormat and DateFormat parsing.
* @param precision optional scale for BigDecimal parsing.
+ * @param impliedDecimalSeparator optional flag for floatign-point values
* @return Format the formatter
* @throws IllegalArgumentException if not suitable formatter is found
*/
- public static Format<?> getFormat(Class<?> clazz, String pattern, String locale, int precision) throws Exception {
+ private static Format<?> doGetFormat(Class<?> clazz, String pattern, String locale, int precision, boolean impliedDecimalSeparator) throws Exception {
if (clazz == byte.class || clazz == Byte.class) {
- return pattern != null ? new BytePatternFormat(pattern, getLocale(locale)) : new ByteFormat();
-
+ return ObjectHelper.isNotEmpty(pattern)
+ ? new BytePatternFormat(pattern, getLocale(locale))
+ : new ByteFormat();
} else if (clazz == short.class || clazz == Short.class) {
- return pattern != null ? new ShortPatternFormat(pattern, getLocale(locale)) : new ShortFormat();
-
+ return ObjectHelper.isNotEmpty(pattern)
+ ? new ShortPatternFormat(pattern, getLocale(locale))
+ : new ShortFormat();
} else if (clazz == int.class || clazz == Integer.class) {
- return pattern != null ? new IntegerPatternFormat(pattern, getLocale(locale)) : new IntegerFormat();
-
+ return ObjectHelper.isNotEmpty(pattern)
+ ? new IntegerPatternFormat(pattern, getLocale(locale))
+ : new IntegerFormat();
} else if (clazz == long.class || clazz == Long.class) {
- return pattern != null ? new LongPatternFormat(pattern, getLocale(locale)) : new LongFormat();
-
+ return ObjectHelper.isNotEmpty(pattern)
+ ? new LongPatternFormat(pattern, getLocale(locale))
+ : new LongFormat();
} else if (clazz == float.class || clazz == Float.class) {
- return pattern != null ? new FloatPatternFormat(pattern, getLocale(locale)) : new FloatFormat();
-
+ return ObjectHelper.isNotEmpty(pattern)
+ ? new FloatPatternFormat(pattern, getLocale(locale))
+ : new FloatFormat(impliedDecimalSeparator, precision, getLocale(locale));
} else if (clazz == double.class || clazz == Double.class) {
- return pattern != null ? new DoublePatternFormat(pattern, getLocale(locale)) : new DoubleFormat();
-
+ return ObjectHelper.isNotEmpty(pattern)
+ ? new DoublePatternFormat(pattern, getLocale(locale))
+ : new DoubleFormat(impliedDecimalSeparator, precision, getLocale(locale));
} else if (clazz == BigDecimal.class) {
- return new BigDecimalFormat(precision);
-
+ return new BigDecimalFormat(impliedDecimalSeparator, precision, getLocale(locale));
} else if (clazz == BigInteger.class) {
return new BigIntegerFormat();
-
} else if (clazz == String.class) {
return new StringFormat();
-
} else if (clazz == Date.class) {
return new DatePatternFormat(pattern, getLocale(locale));
-
} else if (clazz == char.class || clazz == Character.class) {
return new CharacterFormat();
-
} else {
throw new IllegalArgumentException("Can not find a suitable formatter for the type: " + clazz.getCanonicalName());
}
}
+ /**
+ * Retrieves the format to use for the given type
+ *
+ * @param clazz represents the type of the format (String, Integer, Byte)
+ * @param locale optional locale for NumberFormat and DateFormat parsing.
+ * @return Format the formatter
+ * @throws IllegalArgumentException if not suitable formatter is found
+ */
+ public static Format<?> getFormat(Class<?> clazz, String locale, DataField data) throws Exception {
+ String pattern = data.pattern();
+ int precision = data.precision();
+
+ return doGetFormat(clazz, pattern, locale, precision, data.impliedDecimalSeparator());
+ }
+
+ /**
+ * Retrieves the format to use for the given type
+ *
+ * @param clazz represents the type of the format (String, Integer, Byte)
+ * @param locale optional locale for NumberFormat and DateFormat parsing.
+ * @return Format the formatter
+ * @throws IllegalArgumentException if not suitable formatter is found
+ */
+ public static Format<?> getFormat(Class<?> clazz, String locale, KeyValuePairField data) throws Exception {
+ String pattern = data.pattern();
+ int precision = data.precision();
+
+ return doGetFormat(clazz, pattern, locale, precision, data.impliedDecimalSeparator());
+ }
+
private static Locale getLocale(String locale) {
Locale answer = null;
if (locale != null && !(locale.length() == 0)) {
Modified: camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/annotation/DataField.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/annotation/DataField.java?rev=1422827&r1=1422826&r2=1422827&view=diff
==============================================================================
--- camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/annotation/DataField.java (original)
+++ camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/annotation/DataField.java Mon Dec 17 10:17:48 2012
@@ -101,4 +101,9 @@ public @interface DataField {
* Field's default value in case no value is set
*/
String defaultValue() default "";
+
+ /**
+ * Indicates if there is a decimal point implied at a specified location
+ */
+ boolean impliedDecimalSeparator() default false;
}
Modified: camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/annotation/KeyValuePairField.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/annotation/KeyValuePairField.java?rev=1422827&r1=1422826&r2=1422827&view=diff
==============================================================================
--- camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/annotation/KeyValuePairField.java (original)
+++ camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/annotation/KeyValuePairField.java Mon Dec 17 10:17:48 2012
@@ -71,6 +71,13 @@ public @interface KeyValuePairField {
*/
int precision() default 0;
+ /**
+ * Indicates if the field is mandatory
+ */
boolean required() default false;
+ /**
+ * Indicates if there is a decimal point implied at a specified location
+ */
+ boolean impliedDecimalSeparator() default false;
}
Added: camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/AbstractNumberFormat.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/AbstractNumberFormat.java?rev=1422827&view=auto
==============================================================================
--- camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/AbstractNumberFormat.java (added)
+++ camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/AbstractNumberFormat.java Mon Dec 17 10:17:48 2012
@@ -0,0 +1,83 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.dataformat.bindy.format;
+
+import java.text.DecimalFormat;
+import java.text.DecimalFormatSymbols;
+import java.util.Locale;
+
+import org.apache.camel.dataformat.bindy.Format;
+
+/**
+ *
+ */
+public abstract class AbstractNumberFormat<T extends Number> implements Format<T> {
+ private boolean impliedDecimalPosition;
+ private int precision;
+ private DecimalFormat format;
+ private int multiplier;
+
+ /**
+ *
+ */
+ public AbstractNumberFormat() {
+ this(false, 0, null);
+ }
+
+ /**
+ *
+ */
+ public AbstractNumberFormat(boolean impliedDecimalPosition, int precision, Locale locale) {
+ this.impliedDecimalPosition = impliedDecimalPosition;
+ this.precision = precision > 0 ? precision : 0;
+ this.format = null;
+ this.multiplier = 1;
+
+ this.format = new DecimalFormat();
+ this.format.setGroupingUsed(false);
+ this.format.setDecimalSeparatorAlwaysShown(false);
+
+ if (locale != null) {
+ this.format.setDecimalFormatSymbols(DecimalFormatSymbols.getInstance(locale));
+ }
+
+ if (this.impliedDecimalPosition) {
+ this.format.setMinimumFractionDigits(0);
+ this.format.setMaximumFractionDigits(0);
+ this.multiplier = (int)Math.pow(10D, precision);
+ } else {
+ this.format.setMinimumFractionDigits(this.precision);
+ this.format.setMaximumFractionDigits(this.precision);
+ }
+ }
+
+ protected boolean hasImpliedDecimalPosition() {
+ return this.impliedDecimalPosition;
+ }
+
+ protected int getPrecision() {
+ return this.precision;
+ }
+
+ protected DecimalFormat getFormat() {
+ return this.format;
+ }
+
+ protected int getMultiplier() {
+ return multiplier;
+ }
+}
Propchange: camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/AbstractNumberFormat.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/AbstractNumberFormat.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/BigDecimalFormat.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/BigDecimalFormat.java?rev=1422827&r1=1422826&r2=1422827&view=diff
==============================================================================
--- camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/BigDecimalFormat.java (original)
+++ camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/BigDecimalFormat.java Mon Dec 17 10:17:48 2012
@@ -17,39 +17,30 @@
package org.apache.camel.dataformat.bindy.format;
import java.math.BigDecimal;
+import java.util.Locale;
-import org.apache.camel.dataformat.bindy.Format;
-public class BigDecimalFormat implements Format<BigDecimal> {
+public class BigDecimalFormat extends AbstractNumberFormat<BigDecimal> {
- private int precision = -1;
-
- public BigDecimalFormat(int precision) {
- this.precision = precision;
- }
-
- public BigDecimalFormat() {
+ public BigDecimalFormat(boolean impliedDecimalPosition, int precision, Locale locale) {
+ super(impliedDecimalPosition, precision, locale);
}
public String format(BigDecimal object) throws Exception {
- return object.toString();
+ return !super.hasImpliedDecimalPosition()
+ ? super.getFormat().format(object)
+ : super.getFormat().format(object.multiply(new BigDecimal(super.getMultiplier())));
}
public BigDecimal parse(String string) throws Exception {
- BigDecimal result = new BigDecimal(string);
- // only set precision if defined
- if (precision != -1) {
- result = result.setScale(precision);
+ BigDecimal result = new BigDecimal(string.trim());
+ if (super.hasImpliedDecimalPosition()) {
+ result = result.divide(new BigDecimal(super.getMultiplier()));
+ }
+ if (super.getPrecision() != -1) {
+ result = result.setScale(super.getPrecision());
}
- return result;
- }
-
- public int getPrecision() {
- return precision;
- }
- public void setPrecision(int precision) {
- this.precision = precision;
+ return result;
}
-
}
Modified: camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/BigIntegerFormat.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/BigIntegerFormat.java?rev=1422827&r1=1422826&r2=1422827&view=diff
==============================================================================
--- camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/BigIntegerFormat.java (original)
+++ camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/BigIntegerFormat.java Mon Dec 17 10:17:48 2012
@@ -18,9 +18,7 @@ package org.apache.camel.dataformat.bind
import java.math.BigInteger;
-import org.apache.camel.dataformat.bindy.Format;
-
-public class BigIntegerFormat implements Format<BigInteger> {
+public class BigIntegerFormat extends AbstractNumberFormat<BigInteger> {
public String format(BigInteger object) throws Exception {
return object.toString();
Modified: camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/DoubleFormat.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/DoubleFormat.java?rev=1422827&r1=1422826&r2=1422827&view=diff
==============================================================================
--- camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/DoubleFormat.java (original)
+++ camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/DoubleFormat.java Mon Dec 17 10:17:48 2012
@@ -16,16 +16,31 @@
*/
package org.apache.camel.dataformat.bindy.format;
-import org.apache.camel.dataformat.bindy.Format;
+import java.math.BigDecimal;
+import java.util.Locale;
-public class DoubleFormat implements Format<Double> {
+public class DoubleFormat extends AbstractNumberFormat<Double> {
+
+ public DoubleFormat(boolean impliedDecimalPosition, int precision, Locale locale) {
+ super(impliedDecimalPosition, precision, locale);
+ }
public String format(Double object) throws Exception {
- return object.toString();
+ return !super.hasImpliedDecimalPosition()
+ ? super.getFormat().format(object)
+ : super.getFormat().format(object * super.getMultiplier());
}
public Double parse(String string) throws Exception {
- return new Double(string);
- }
+ Double value = null;
+ if (!super.hasImpliedDecimalPosition()) {
+ value = Double.parseDouble(string.trim());
+ } else {
+ BigDecimal tmp = new BigDecimal(string.trim());
+ BigDecimal div = BigDecimal.valueOf(super.getMultiplier());
+ value = tmp.divide(div).doubleValue();
+ }
+ return value;
+ }
}
Modified: camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/FloatFormat.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/FloatFormat.java?rev=1422827&r1=1422826&r2=1422827&view=diff
==============================================================================
--- camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/FloatFormat.java (original)
+++ camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/FloatFormat.java Mon Dec 17 10:17:48 2012
@@ -16,16 +16,31 @@
*/
package org.apache.camel.dataformat.bindy.format;
-import org.apache.camel.dataformat.bindy.Format;
+import java.math.BigDecimal;
+import java.util.Locale;
-public class FloatFormat implements Format<Float> {
+public class FloatFormat extends AbstractNumberFormat<Float> {
+
+ public FloatFormat(boolean impliedDecimalPosition, int precision, Locale locale) {
+ super(impliedDecimalPosition, precision, locale);
+ }
public String format(Float object) throws Exception {
- return object.toString();
+ return !super.hasImpliedDecimalPosition()
+ ? super.getFormat().format(object)
+ : super.getFormat().format(object * super.getMultiplier());
}
public Float parse(String string) throws Exception {
- return new Float(string);
- }
+ Float value = null;
+ if (!super.hasImpliedDecimalPosition()) {
+ value = Float.parseFloat(string.trim());
+ } else {
+ BigDecimal tmp = new BigDecimal(string.trim());
+ BigDecimal div = BigDecimal.valueOf(super.getMultiplier());
+ value = tmp.divide(div).floatValue();
+ }
+ return value;
+ }
}
Modified: camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/IntegerFormat.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/IntegerFormat.java?rev=1422827&r1=1422826&r2=1422827&view=diff
==============================================================================
--- camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/IntegerFormat.java (original)
+++ camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/IntegerFormat.java Mon Dec 17 10:17:48 2012
@@ -16,9 +16,8 @@
*/
package org.apache.camel.dataformat.bindy.format;
-import org.apache.camel.dataformat.bindy.Format;
-public class IntegerFormat implements Format<Integer> {
+public class IntegerFormat extends AbstractNumberFormat<Integer> {
public String format(Integer object) throws Exception {
return object.toString();
Modified: camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/LongFormat.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/LongFormat.java?rev=1422827&r1=1422826&r2=1422827&view=diff
==============================================================================
--- camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/LongFormat.java (original)
+++ camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/LongFormat.java Mon Dec 17 10:17:48 2012
@@ -16,9 +16,8 @@
*/
package org.apache.camel.dataformat.bindy.format;
-import org.apache.camel.dataformat.bindy.Format;
-public class LongFormat implements Format<Long> {
+public class LongFormat extends AbstractNumberFormat<Long> {
public String format(Long object) throws Exception {
return object.toString();
Modified: camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/ShortFormat.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/ShortFormat.java?rev=1422827&r1=1422826&r2=1422827&view=diff
==============================================================================
--- camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/ShortFormat.java (original)
+++ camel/trunk/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/ShortFormat.java Mon Dec 17 10:17:48 2012
@@ -16,9 +16,8 @@
*/
package org.apache.camel.dataformat.bindy.format;
-import org.apache.camel.dataformat.bindy.Format;
-public class ShortFormat implements Format<Short> {
+public class ShortFormat extends AbstractNumberFormat<Short> {
public String format(Short object) throws Exception {
return object.toString();
Modified: camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/csv/BindyComplexCsvGenerateHeaderMarshallTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/csv/BindyComplexCsvGenerateHeaderMarshallTest.java?rev=1422827&r1=1422826&r2=1422827&view=diff
==============================================================================
--- camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/csv/BindyComplexCsvGenerateHeaderMarshallTest.java (original)
+++ camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/csv/BindyComplexCsvGenerateHeaderMarshallTest.java Mon Dec 17 10:17:48 2012
@@ -41,7 +41,7 @@ public class BindyComplexCsvGenerateHead
private List<Map<String, Object>> models = new ArrayList<Map<String, Object>>();
private String result = "Order Nr,Client Nr,First Name,Last Name,Instrument Code,Instrument Nr,Order Type,Instrument Type,amount,currency,Order Date\r\n"
- + "10,A1,Julia,Roberts,ISIN,LU123456789,BUY,Share,150,USD,14-01-2009\r\n";
+ + "10,A1,Julia,Roberts,ISIN,LU123456789,BUY,Share,150.00,USD,14-01-2009\r\n";
@Produce(uri = "direct:start")
private ProducerTemplate template;
Modified: camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/csv/BindyComplexCsvMarshallTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/csv/BindyComplexCsvMarshallTest.java?rev=1422827&r1=1422826&r2=1422827&view=diff
==============================================================================
--- camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/csv/BindyComplexCsvMarshallTest.java (original)
+++ camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/csv/BindyComplexCsvMarshallTest.java Mon Dec 17 10:17:48 2012
@@ -40,7 +40,7 @@ import org.springframework.test.context.
public class BindyComplexCsvMarshallTest extends AbstractJUnit4SpringContextTests {
private List<Map<String, Object>> models = new ArrayList<Map<String, Object>>();
- private String result = "10,A1,Julia,Roberts,ISIN,LU123456789,BUY,Share,150,USD,14-01-2009\r\n";
+ private String result = "10,A1,Julia,Roberts,ISIN,LU123456789,BUY,Share,150.00,USD,14-01-2009\r\n";
@Produce(uri = "direct:start")
private ProducerTemplate template;
Added: camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/implied/BindyImpliedTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/implied/BindyImpliedTest.java?rev=1422827&view=auto
==============================================================================
--- camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/implied/BindyImpliedTest.java (added)
+++ camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/implied/BindyImpliedTest.java Mon Dec 17 10:17:48 2012
@@ -0,0 +1,214 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.dataformat.bindy.fixed.implied;
+
+import java.math.BigDecimal;
+
+import org.apache.camel.EndpointInject;
+import org.apache.camel.Exchange;
+import org.apache.camel.Produce;
+import org.apache.camel.ProducerTemplate;
+import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.component.mock.MockEndpoint;
+import org.apache.camel.dataformat.bindy.annotation.DataField;
+import org.apache.camel.dataformat.bindy.annotation.FixedLengthRecord;
+import org.apache.camel.model.dataformat.BindyType;
+import org.junit.Assert;
+import org.junit.Test;
+import org.springframework.test.annotation.DirtiesContext;
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests;
+
+
+
+@ContextConfiguration
+public class BindyImpliedTest extends AbstractJUnit4SpringContextTests {
+
+ public static final String URI_DIRECT_MARSHALL = "direct:marshall";
+ public static final String URI_DIRECT_UNMARSHALL = "direct:unmarshall";
+ public static final String URI_MOCK_MARSHALL_RESULT = "mock:marshall-result";
+ public static final String URI_MOCK_UNMARSHALL_RESULT = "mock:unmarshall-result";
+
+ // *************************************************************************
+ //
+ // *************************************************************************
+
+ @Produce(uri = URI_DIRECT_MARSHALL)
+ private ProducerTemplate mtemplate;
+
+ @EndpointInject(uri = URI_MOCK_MARSHALL_RESULT)
+ private MockEndpoint mresult;
+
+ @Produce(uri = URI_DIRECT_UNMARSHALL)
+ private ProducerTemplate utemplate;
+
+ @EndpointInject(uri = URI_MOCK_UNMARSHALL_RESULT)
+ private MockEndpoint uresult;
+
+ // *************************************************************************
+ // TEST
+ // *************************************************************************
+
+ @Test
+ @DirtiesContext
+ public void testMarshall() throws Exception {
+
+ Record rec = new Record();
+ rec.setField1(123.45);
+ rec.setField2(67.89);
+ rec.setField3(11.24F);
+ rec.setField4(33.45F);
+ rec.setField5(new BigDecimal(60.52));
+ rec.setField6(new BigDecimal(70.62));
+
+ mresult.expectedBodiesReceived("1234567.89 112433.45 605270.62\r\n");
+
+ mtemplate.sendBody(rec);
+ mresult.assertIsSatisfied();
+ }
+
+ @Test
+ @DirtiesContext
+ public void testUnMarshall() throws Exception {
+
+ utemplate.sendBody("1234567.89 112433.45 605270.62");
+
+ uresult.expectedMessageCount(1);
+ uresult.assertIsSatisfied();
+
+ // check the model
+ Exchange exc = uresult.getReceivedExchanges().get(0);
+ Record data = exc.getIn().getBody(Record.class);
+
+ Assert.assertEquals(123.45D, data.getField1(), 0D);
+ Assert.assertEquals(67.89D, data.getField2(), 0D);
+ Assert.assertEquals(11.24F, data.getField3(), 0.001);
+ Assert.assertEquals(33.45F, data.getField4(), 0.001);
+ Assert.assertEquals(60.52D, data.getField5().doubleValue(), 0.001);
+ Assert.assertEquals(70.62D, data.getField6().doubleValue(), 0.001);
+ }
+
+ // *************************************************************************
+ // ROUTES
+ // *************************************************************************
+
+ public static class ContextConfig extends RouteBuilder {
+ public void configure() {
+ from(URI_DIRECT_MARSHALL)
+ .marshal().bindy(BindyType.Fixed, Record.class)
+ .to(URI_MOCK_MARSHALL_RESULT);
+ from(URI_DIRECT_UNMARSHALL)
+ .unmarshal().bindy(BindyType.Fixed, Record.class)
+ .to(URI_MOCK_UNMARSHALL_RESULT);
+ }
+ }
+
+ // *************************************************************************
+ // DATA MODEL
+ // *************************************************************************
+
+ @FixedLengthRecord(length = 30, paddingChar = ' ')
+ public static class Record {
+
+ @DataField(pos = 1, length = 5, precision = 2, impliedDecimalSeparator = true)
+ private Double field1;
+
+ @DataField(pos = 6, length = 5, precision = 2)
+ private Double field2;
+
+ @DataField(pos = 11, length = 5, precision = 2, impliedDecimalSeparator = true)
+ private Float field3;
+
+ @DataField(pos = 16, length = 5, precision = 2)
+ private Float field4;
+
+ @DataField(pos = 21, length = 5, precision = 2, impliedDecimalSeparator = true)
+ private BigDecimal field5;
+
+ @DataField(pos = 26, length = 5, precision = 2)
+ private BigDecimal field6;
+
+
+ // *********************************************************************
+ // GETTER/SETTERS
+ // *********************************************************************
+
+ public Double getField1() {
+ return field1;
+ }
+
+ public void setField1(Double value) {
+ this.field1 = value;
+ }
+
+ public Double getField2() {
+ return field2;
+ }
+
+ public void setField2(Double value) {
+ this.field2 = value;
+ }
+
+ public Float getField3() {
+ return field3;
+ }
+
+ public void setField3(Float value) {
+ this.field3 = value;
+ }
+
+ public Float getField4() {
+ return field4;
+ }
+
+ public void setField4(Float value) {
+ this.field4 = value;
+ }
+
+ public BigDecimal getField5() {
+ return field5;
+ }
+
+ public void setField5(BigDecimal value) {
+ this.field5 = value;
+ }
+
+ public BigDecimal getField6() {
+ return field6;
+ }
+
+ public void setField6(BigDecimal value) {
+ this.field6 = value;
+ }
+
+ // *********************************************************************
+ // HELPERS
+ // *********************************************************************
+
+ @Override
+ public String toString() {
+ return "Record{"
+ + "field1=<" + field1 + ">"
+ + ", field2=<" + field2 + ">"
+ + ", field3=<" + field3 + ">"
+ + ", field4=<" + field4 + ">"
+ + ", field5=<" + field6 + ">"
+ + ", field6=<" + field6 + ">"
+ + "}";
+ }
+ }
+}
Propchange: camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/implied/BindyImpliedTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/implied/BindyImpliedTest.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/number/BindyNumberTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/number/BindyNumberTest.java?rev=1422827&view=auto
==============================================================================
--- camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/number/BindyNumberTest.java (added)
+++ camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/number/BindyNumberTest.java Mon Dec 17 10:17:48 2012
@@ -0,0 +1,132 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.dataformat.bindy.fixed.number;
+
+import java.math.BigDecimal;
+
+import org.apache.camel.EndpointInject;
+import org.apache.camel.Exchange;
+import org.apache.camel.Produce;
+import org.apache.camel.ProducerTemplate;
+import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.component.mock.MockEndpoint;
+import org.apache.camel.dataformat.bindy.annotation.DataField;
+import org.apache.camel.dataformat.bindy.annotation.FixedLengthRecord;
+import org.apache.camel.model.dataformat.BindyType;
+import org.junit.Assert;
+import org.junit.Test;
+import org.springframework.test.annotation.DirtiesContext;
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests;
+
+@ContextConfiguration
+public class BindyNumberTest extends AbstractJUnit4SpringContextTests {
+
+ public static final String URI_DIRECT_MARSHALL = "direct:marshall";
+ public static final String URI_DIRECT_UNMARSHALL = "direct:unmarshall";
+ public static final String URI_MOCK_MARSHALL_RESULT = "mock:marshall-result";
+ public static final String URI_MOCK_UNMARSHALL_RESULT = "mock:unmarshall-result";
+
+ // *************************************************************************
+ //
+ // *************************************************************************
+
+ @Produce(uri = URI_DIRECT_MARSHALL)
+ private ProducerTemplate mtemplate;
+
+ @EndpointInject(uri = URI_MOCK_MARSHALL_RESULT)
+ private MockEndpoint mresult;
+
+ @Produce(uri = URI_DIRECT_UNMARSHALL)
+ private ProducerTemplate utemplate;
+
+ @EndpointInject(uri = URI_MOCK_UNMARSHALL_RESULT)
+ private MockEndpoint uresult;
+
+ // *************************************************************************
+ // TEST
+ // *************************************************************************
+
+ @Test
+ @DirtiesContext
+ public void testMarshall() throws Exception {
+ DataModel rec = new DataModel();
+ rec.field1 = new BigDecimal(123.45);
+ rec.field2 = new BigDecimal(10.00);
+ rec.field3 = new BigDecimal(10.00);
+ rec.field4 = new Double(10.00);
+ rec.field5 = new Double(10.00);
+
+ mresult.expectedBodiesReceived("1234510.00 1010.00 10\r\n");
+
+ mtemplate.sendBody(rec);
+ mresult.assertIsSatisfied();
+ }
+
+ @Test
+ @DirtiesContext
+ public void testUnMarshall() throws Exception {
+
+ utemplate.sendBody("1234510.00 1010.00 10");
+
+ uresult.expectedMessageCount(1);
+ uresult.assertIsSatisfied();
+
+ // check the model
+ Exchange exc = uresult.getReceivedExchanges().get(0);
+ DataModel data = exc.getIn().getBody(DataModel.class);
+
+ Assert.assertEquals(123.45D, data.field1.doubleValue(), 0D);
+ Assert.assertEquals(10.00D, data.field2.doubleValue(), 0D);
+ Assert.assertEquals(10.00D, data.field3.doubleValue(), 0D);
+ Assert.assertEquals(10.00D, data.field4.doubleValue(), 0D);
+ Assert.assertEquals(10.00D, data.field5.doubleValue(), 0D);
+ }
+
+ // *************************************************************************
+ // ROUTES
+ // *************************************************************************
+
+ public static class ContextConfig extends RouteBuilder {
+ public void configure() {
+ from(URI_DIRECT_MARSHALL)
+ .marshal().bindy(BindyType.Fixed, DataModel.class)
+ .to(URI_MOCK_MARSHALL_RESULT);
+ from(URI_DIRECT_UNMARSHALL)
+ .unmarshal().bindy(BindyType.Fixed, DataModel.class)
+ .to(URI_MOCK_UNMARSHALL_RESULT);
+ }
+ }
+
+ // *************************************************************************
+ // DATA MODEL
+ // *************************************************************************
+
+ @FixedLengthRecord(length = 25, paddingChar = ' ')
+ public static class DataModel {
+ @DataField(pos = 1, length = 5, precision = 2, impliedDecimalSeparator = true)
+ public BigDecimal field1;
+ @DataField(pos = 6, length = 5, precision = 2)
+ public BigDecimal field2;
+ @DataField(pos = 11, length = 5)
+ public BigDecimal field3;
+ @DataField(pos = 16, length = 5, precision = 2)
+ public Double field4;
+ @DataField(pos = 21, length = 5)
+ public Double field5;
+ }
+}
Propchange: camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/number/BindyNumberTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: camel/trunk/components/camel-bindy/src/test/java/org/apache/camel/dataformat/bindy/fixed/number/BindyNumberTest.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/implied/BindyImpliedTest-context.xml
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/implied/BindyImpliedTest-context.xml?rev=1422827&view=auto
==============================================================================
--- camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/implied/BindyImpliedTest-context.xml (added)
+++ camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/implied/BindyImpliedTest-context.xml Mon Dec 17 10:17:48 2012
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="
+ http://www.springframework.org/schema/beans
+ http://www.springframework.org/schema/beans/spring-beans.xsd
+ http://camel.apache.org/schema/spring
+ http://camel.apache.org/schema/spring/camel-spring.xsd">
+
+ <camelContext xmlns="http://camel.apache.org/schema/spring">
+ <routeBuilder ref="myBuilder"/>
+ </camelContext>
+
+ <bean id ="myBuilder"
+ class ="org.apache.camel.dataformat.bindy.fixed.implied.BindyImpliedTest$ContextConfig"/>
+
+</beans>
\ No newline at end of file
Propchange: camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/implied/BindyImpliedTest-context.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/implied/BindyImpliedTest-context.xml
------------------------------------------------------------------------------
svn:keywords = Rev Date
Propchange: camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/implied/BindyImpliedTest-context.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Added: camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/number/BindyNumberTest-context.xml
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/number/BindyNumberTest-context.xml?rev=1422827&view=auto
==============================================================================
--- camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/number/BindyNumberTest-context.xml (added)
+++ camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/number/BindyNumberTest-context.xml Mon Dec 17 10:17:48 2012
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="
+ http://www.springframework.org/schema/beans
+ http://www.springframework.org/schema/beans/spring-beans.xsd
+ http://camel.apache.org/schema/spring
+ http://camel.apache.org/schema/spring/camel-spring.xsd">
+
+ <camelContext xmlns="http://camel.apache.org/schema/spring">
+ <routeBuilder ref="myBuilder"/>
+ </camelContext>
+
+ <bean id ="myBuilder"
+ class ="org.apache.camel.dataformat.bindy.fixed.number.BindyNumberTest$ContextConfig"/>
+
+</beans>
\ No newline at end of file
Propchange: camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/number/BindyNumberTest-context.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/number/BindyNumberTest-context.xml
------------------------------------------------------------------------------
svn:keywords = Rev Date
Propchange: camel/trunk/components/camel-bindy/src/test/resources/org/apache/camel/dataformat/bindy/fixed/number/BindyNumberTest-context.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml