You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by bv...@apache.org on 2013/05/21 22:18:40 UTC

git commit: Upgraded to HAPI 2.1 and fixed two tiny bugs of the HL7DataFormat#isValidate() & HL7MLLPConfig#isValidate() methods.

Updated Branches:
  refs/heads/master b1329677d -> 07f304e95


Upgraded to HAPI 2.1 and fixed two tiny bugs of the HL7DataFormat#isValidate() & HL7MLLPConfig#isValidate() methods.

Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/07f304e9
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/07f304e9
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/07f304e9

Branch: refs/heads/master
Commit: 07f304e9536370b0eca79852df7b5d945464ffa8
Parents: b132967
Author: Babak Vahdat <bv...@apache.org>
Authored: Tue May 21 22:18:34 2013 +0200
Committer: Babak Vahdat <bv...@apache.org>
Committed: Tue May 21 22:18:34 2013 +0200

----------------------------------------------------------------------
 components/camel-hl7/pom.xml                       |   22 ---------------
 .../apache/camel/component/hl7/AckExpression.java  |   13 ++++++++-
 .../java/org/apache/camel/component/hl7/HL7.java   |    3 +-
 .../apache/camel/component/hl7/HL7DataFormat.java  |    2 +-
 .../apache/camel/component/hl7/HL7MLLPConfig.java  |    2 +-
 .../camel/component/hl7/AckExpressionTest.java     |   11 ++++---
 .../camel/component/hl7/HL7ValidateTest.java       |   11 +++++---
 .../camel/component/hl7/HL7XmlDataFormatTest.java  |    7 +++-
 .../camel/component/hl7/MessageValidatorTest.java  |    5 +++
 parent/pom.xml                                     |    2 +-
 10 files changed, 40 insertions(+), 38 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/07f304e9/components/camel-hl7/pom.xml
----------------------------------------------------------------------
diff --git a/components/camel-hl7/pom.xml b/components/camel-hl7/pom.xml
index ff7d997..7ee1653 100644
--- a/components/camel-hl7/pom.xml
+++ b/components/camel-hl7/pom.xml
@@ -51,32 +51,10 @@
             <artifactId>hapi-base</artifactId>
             <version>${hapi-version}</version>
         </dependency>
-        <!--
-        <dependency>
-            <groupId>org.apache.mina</groupId>
-            <artifactId>mina-core</artifactId>
-           	<exclusions>
-	            <exclusion>
-	                <groupId>org.slf4j</groupId>
-	                <artifactId>slf4j-simple</artifactId>
-	            </exclusion>
-	            <exclusion>
-	                <groupId>org.slf4j</groupId>
-	                <artifactId>slf4j-api</artifactId>
-	            </exclusion>
-	        </exclusions>
-	    </dependency>
-	    -->
         <dependency>
             <groupId>org.apache.mina</groupId>
             <artifactId>mina-core</artifactId>
             <version>${mina2-version}</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>org.slf4j</groupId>
-                    <artifactId>slf4j-simple</artifactId>
-                </exclusion>
-            </exclusions>
         </dependency>	    
 
         <!-- testing -->

http://git-wip-us.apache.org/repos/asf/camel/blob/07f304e9/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/AckExpression.java
----------------------------------------------------------------------
diff --git a/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/AckExpression.java b/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/AckExpression.java
index eed108b..0d7838b 100644
--- a/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/AckExpression.java
+++ b/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/AckExpression.java
@@ -16,6 +16,7 @@
  */
 package org.apache.camel.component.hl7;
 
+import ca.uhn.hl7v2.ErrorCode;
 import ca.uhn.hl7v2.HL7Exception;
 import ca.uhn.hl7v2.model.Message;
 
@@ -27,7 +28,7 @@ public class AckExpression extends ExpressionAdapter {
 
     private AckCode acknowledgementCode;
     private String errorMessage;
-    private int errorCode = HL7Exception.APPLICATION_INTERNAL_ERROR;
+    private ErrorCode errorCode = ErrorCode.APPLICATION_INTERNAL_ERROR;
 
     public AckExpression() {
     }
@@ -36,9 +37,19 @@ public class AckExpression extends ExpressionAdapter {
         this.acknowledgementCode = acknowledgementCode;
     }
 
+    /**
+     * @deprecated Use {@link #AckExpression(AckCode, String, ErrorCode)}
+     */
+    @Deprecated
     public AckExpression(AckCode acknowledgementCode, String errorMessage, int errorCode) {
         this(acknowledgementCode);
         this.errorMessage = errorMessage;
+        this.errorCode = ErrorCode.errorCodeFor(errorCode);
+    }
+
+    public AckExpression(AckCode acknowledgementCode, String errorMessage, ErrorCode errorCode) {
+        this(acknowledgementCode);
+        this.errorMessage = errorMessage;
         this.errorCode = errorCode;
     }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/07f304e9/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7.java
----------------------------------------------------------------------
diff --git a/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7.java b/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7.java
index 37e40c8..e03fc70 100644
--- a/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7.java
+++ b/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7.java
@@ -16,6 +16,7 @@
  */
 package org.apache.camel.component.hl7;
 
+import ca.uhn.hl7v2.ErrorCode;
 import ca.uhn.hl7v2.validation.ValidationContext;
 
 import org.apache.camel.Exchange;
@@ -56,7 +57,7 @@ public final class HL7 {
 
     public static Expression ack(AckCode code, String errorMessage,
             int errorCode) {
-        return new AckExpression(code, errorMessage, errorCode);
+        return new AckExpression(code, errorMessage, ErrorCode.errorCodeFor(errorCode));
     }
 
     public static Predicate messageConformsTo(

http://git-wip-us.apache.org/repos/asf/camel/blob/07f304e9/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7DataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7DataFormat.java b/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7DataFormat.java
index c8bf911..949aaed 100644
--- a/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7DataFormat.java
+++ b/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7DataFormat.java
@@ -118,7 +118,7 @@ public class HL7DataFormat implements DataFormat {
     }
 
     public boolean isValidate() {
-        return parser.getValidationContext() instanceof NoValidation;
+        return !(parser.getValidationContext() instanceof NoValidation);
     }
 
     public void setValidate(boolean validate) {

http://git-wip-us.apache.org/repos/asf/camel/blob/07f304e9/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7MLLPConfig.java
----------------------------------------------------------------------
diff --git a/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7MLLPConfig.java b/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7MLLPConfig.java
index cf9238b..d9dd2cd 100644
--- a/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7MLLPConfig.java
+++ b/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7MLLPConfig.java
@@ -86,7 +86,7 @@ class HL7MLLPConfig {
     }
 
     public boolean isValidate() {
-        return parser.getValidationContext() instanceof NoValidation;
+        return !(parser.getValidationContext() instanceof NoValidation);
     }
 
     public void setValidate(boolean validate) {

http://git-wip-us.apache.org/repos/asf/camel/blob/07f304e9/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/AckExpressionTest.java
----------------------------------------------------------------------
diff --git a/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/AckExpressionTest.java b/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/AckExpressionTest.java
index a7c34fd..f25ffa3 100644
--- a/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/AckExpressionTest.java
+++ b/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/AckExpressionTest.java
@@ -15,6 +15,7 @@
  * limitations under the License.
  */
 package org.apache.camel.component.hl7;
+import ca.uhn.hl7v2.ErrorCode;
 import ca.uhn.hl7v2.HL7Exception;
 import ca.uhn.hl7v2.model.v24.message.ACK;
 import ca.uhn.hl7v2.model.v24.message.ADT_A01;
@@ -54,7 +55,7 @@ public class AckExpressionTest extends CamelTestSupport {
         assertEquals("AE", ack.getMSA().getAcknowledgementCode().getValue());
         assertEquals(a01.getMSH().getMessageControlID().getValue(), ack.getMSA().getMessageControlID()
             .getValue());
-        assertEquals(String.valueOf(HL7Exception.APPLICATION_INTERNAL_ERROR), ack.getERR()
+        assertEquals(String.valueOf(ErrorCode.APPLICATION_INTERNAL_ERROR.getCode()), ack.getERR()
             .getErrorCodeAndLocation(0).getCodeIdentifyingError().getIdentifier().getValue());
     }
 
@@ -65,7 +66,7 @@ public class AckExpressionTest extends CamelTestSupport {
         assertEquals("AR", ack.getMSA().getAcknowledgementCode().getValue());
         assertEquals(a01.getMSH().getMessageControlID().getValue(), ack.getMSA().getMessageControlID()
             .getValue());
-        assertEquals(String.valueOf(HL7Exception.APPLICATION_INTERNAL_ERROR), ack.getERR()
+        assertEquals(String.valueOf(ErrorCode.APPLICATION_INTERNAL_ERROR.getCode()), ack.getERR()
             .getErrorCodeAndLocation(0).getCodeIdentifyingError().getIdentifier().getValue());
         assertEquals("Problem!", ack.getERR().getErrorCodeAndLocation(0).getCodeIdentifyingError()
             .getAlternateText().getValue());
@@ -78,7 +79,7 @@ public class AckExpressionTest extends CamelTestSupport {
         assertEquals("AR", ack.getMSA().getAcknowledgementCode().getValue());
         assertEquals(a01.getMSH().getMessageControlID().getValue(), ack.getMSA().getMessageControlID()
             .getValue());
-        assertEquals(String.valueOf(HL7Exception.DATA_TYPE_ERROR), ack.getERR().getErrorCodeAndLocation(0)
+        assertEquals(String.valueOf(ErrorCode.DATA_TYPE_ERROR.getCode()), ack.getERR().getErrorCodeAndLocation(0)
             .getCodeIdentifyingError().getIdentifier().getValue());
         assertEquals("Problem!", ack.getERR().getErrorCodeAndLocation(0).getCodeIdentifyingError()
             .getAlternateText().getValue());
@@ -94,9 +95,9 @@ public class AckExpressionTest extends CamelTestSupport {
                 from("direct:test3").onException(HL7Exception.class).handled(true).transform(ack()).end()
                     .transform(terser("/.BLORG"));
                 from("direct:test4").onException(HL7Exception.class).handled(true)
-                    .transform(ack(AckCode.AR, "Problem!", HL7Exception.APPLICATION_INTERNAL_ERROR)).end()
+                    .transform(ack(AckCode.AR, "Problem!", ErrorCode.APPLICATION_INTERNAL_ERROR.getCode())).end()
                     .transform(terser("/.BLORG"));
-                from("direct:test5").transform(ack(AckCode.AR, "Problem!", HL7Exception.DATA_TYPE_ERROR));
+                from("direct:test5").transform(ack(AckCode.AR, "Problem!", ErrorCode.DATA_TYPE_ERROR.getCode()));
             }
         };
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/07f304e9/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/HL7ValidateTest.java
----------------------------------------------------------------------
diff --git a/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/HL7ValidateTest.java b/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/HL7ValidateTest.java
index 15c1962..b3aaac0 100644
--- a/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/HL7ValidateTest.java
+++ b/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/HL7ValidateTest.java
@@ -16,10 +16,12 @@
  */
 package org.apache.camel.component.hl7;
 
+import ca.uhn.hl7v2.DefaultHapiContext;
 import ca.uhn.hl7v2.HL7Exception;
+import ca.uhn.hl7v2.HapiContext;
 import ca.uhn.hl7v2.model.DataTypeException;
+import ca.uhn.hl7v2.parser.GenericParser;
 import ca.uhn.hl7v2.parser.Parser;
-import ca.uhn.hl7v2.parser.PipeParser;
 import ca.uhn.hl7v2.validation.impl.NoValidation;
 
 import org.apache.camel.CamelExecutionException;
@@ -44,7 +46,7 @@ public class HL7ValidateTest extends CamelTestSupport {
         } catch (CamelExecutionException e) {
             assertIsInstanceOf(HL7Exception.class, e.getCause());
             assertIsInstanceOf(DataTypeException.class, e.getCause());
-            assertTrue("Should be a validation error message", e.getCause().getMessage().startsWith("Failed validation rule"));
+            assertTrue("Should be a validation error message", e.getCause().getMessage().startsWith("ca.uhn.hl7v2.validation.ValidationException: Validation failed:"));
         }
 
         assertMockEndpointsSatisfied();
@@ -74,8 +76,9 @@ public class HL7ValidateTest extends CamelTestSupport {
     }    
 
     protected RouteBuilder createRouteBuilder() throws Exception {
-        Parser p = new PipeParser();
-        p.setValidationContext(new NoValidation());
+        HapiContext hapiContext = new DefaultHapiContext();
+        hapiContext.setValidationContext(new NoValidation());
+        Parser p = new GenericParser(hapiContext);
         hl7 = new HL7DataFormat();
         hl7.setParser(p);
         

http://git-wip-us.apache.org/repos/asf/camel/blob/07f304e9/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/HL7XmlDataFormatTest.java
----------------------------------------------------------------------
diff --git a/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/HL7XmlDataFormatTest.java b/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/HL7XmlDataFormatTest.java
index 10b18f4..01ae992 100644
--- a/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/HL7XmlDataFormatTest.java
+++ b/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/HL7XmlDataFormatTest.java
@@ -16,6 +16,8 @@
  */
 package org.apache.camel.component.hl7;
 
+import ca.uhn.hl7v2.DefaultHapiContext;
+import ca.uhn.hl7v2.HapiContext;
 import ca.uhn.hl7v2.model.Message;
 import ca.uhn.hl7v2.parser.GenericParser;
 import ca.uhn.hl7v2.parser.Parser;
@@ -62,8 +64,9 @@ public class HL7XmlDataFormatTest extends CamelTestSupport {
     }    
 
     protected RouteBuilder createRouteBuilder() throws Exception {
-        Parser p = new GenericParser();
-        p.setValidationContext(new NoValidation());
+        HapiContext hapiContext = new DefaultHapiContext();
+        hapiContext.setValidationContext(new NoValidation());
+        Parser p = new GenericParser(hapiContext);
         hl7 = new HL7DataFormat();
         hl7.setParser(p);
         

http://git-wip-us.apache.org/repos/asf/camel/blob/07f304e9/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/MessageValidatorTest.java
----------------------------------------------------------------------
diff --git a/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/MessageValidatorTest.java b/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/MessageValidatorTest.java
index 6bfdfe1..0287d2c 100644
--- a/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/MessageValidatorTest.java
+++ b/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/MessageValidatorTest.java
@@ -68,6 +68,11 @@ public class MessageValidatorTest extends CamelTestSupport {
                 return VALIDATION_OK;
             }
 
+            @Override
+            public ValidationException[] apply(Message msg) {
+                return test(msg);
+            }
+
         };
         MessageRuleBinding binding = new MessageRuleBinding("2.4", "ADT", "A01", rule);
         customContext.getMessageRuleBindings().add(binding);

http://git-wip-us.apache.org/repos/asf/camel/blob/07f304e9/parent/pom.xml
----------------------------------------------------------------------
diff --git a/parent/pom.xml b/parent/pom.xml
index bf4f107..5b641a1 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -161,7 +161,7 @@
     <hadoop-bundle-version>1.1.1_1</hadoop-bundle-version>
     <hadoop-version>1.1.1</hadoop-version>
     <hamcrest-version>1.3</hamcrest-version>
-    <hapi-version>2.0</hapi-version>
+    <hapi-version>2.1</hapi-version>
     <hawtbuf-version>1.9</hawtbuf-version>
     <hawtdb-version>1.6</hawtdb-version>
     <hawtdispatch-version>1.17</hawtdispatch-version>