From 9df4f9edf4e0b4b3a9bb54b5368516687d6ac150 Mon Sep 17 00:00:00 2001 From: Christopher Moyer Date: Mon, 2 Jan 2023 21:30:46 -0500 Subject: [PATCH] fixed bug and added more configurations --- .../java/com/c4181/camel/CamelConfiguration.java | 12 ++++++++++++ src/main/java/com/c4181/model/JsoCallDecoder.java | 2 +- .../java/com/c4181/properties/AppProperties.java | 3 +++ src/main/resources/application.properties | 11 +++++++---- 4 files changed, 23 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/c4181/camel/CamelConfiguration.java b/src/main/java/com/c4181/camel/CamelConfiguration.java index 36d3388..8c7f045 100644 --- a/src/main/java/com/c4181/camel/CamelConfiguration.java +++ b/src/main/java/com/c4181/camel/CamelConfiguration.java @@ -8,6 +8,7 @@ import org.apache.commons.lang3.StringUtils; import javax.enterprise.context.ApplicationScoped; import javax.inject.Inject; +import java.awt.geom.Point2D; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -34,6 +35,7 @@ public class CamelConfiguration extends RouteBuilder { })) .removeHeader("*") .split(body()) + .wireTap("direct:processedCalls") .process(exchange -> { JsoCall jsoCall = exchange.getIn().getBody(JsoCall.class); Map sqlCall = new HashMap<>(); @@ -53,5 +55,15 @@ public class CamelConfiguration extends RouteBuilder { exchange.getIn().setBody(sqlCall); }) .to(appProperties.jsoCadUpdateRouteOut()); + + from("direct:processedCalls") + .filter(exchange -> exchange.getIn().getBody(JsoCall.class).getPoint() != null) + .process(exchange -> { + JsoCall jsoCall = exchange.getIn().getBody(JsoCall.class); + if (Point2D.distance(jsoCall.getPoint().getLat(), appProperties.myLat(), jsoCall.getPoint().getLng(), appProperties.myLong()) >= 2.0) { + exchange.setRouteStop(true); + } + }) + .to(appProperties.telegramRoute()); } } diff --git a/src/main/java/com/c4181/model/JsoCallDecoder.java b/src/main/java/com/c4181/model/JsoCallDecoder.java index c09ef7b..c32980a 100644 --- a/src/main/java/com/c4181/model/JsoCallDecoder.java +++ b/src/main/java/com/c4181/model/JsoCallDecoder.java @@ -36,7 +36,7 @@ public class JsoCallDecoder { String trimmedCall = call.trim(); JsoCall jsoCall = new JsoCall(); jsoCall.setIncidentNumber(trimmedCall.substring(0, 12)); - jsoCall.setDispatchedTime(parseTimeWithoutYear(trimmedCall.substring(14, 25))); + jsoCall.setDispatchedTime(parseTimeWithoutYear(trimmedCall.substring(14, 24).trim())); jsoCall.setAddress(trimmedCall.substring(27, 69).trim()); jsoCall.setSignal(trimmedCall.substring(69, 77).trim()); jsoCall.setCallDescription(trimmedCall.substring(77).trim()); diff --git a/src/main/java/com/c4181/properties/AppProperties.java b/src/main/java/com/c4181/properties/AppProperties.java index 5fdc2cd..20f9593 100644 --- a/src/main/java/com/c4181/properties/AppProperties.java +++ b/src/main/java/com/c4181/properties/AppProperties.java @@ -7,5 +7,8 @@ public interface AppProperties { String jsoCadUpdateRouteIn(); String jsoCadUpdateRouteOut(); + String telegramRoute(); String googleApiKey(); + double myLat(); + double myLong(); } diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index fb1eeb4..e989042 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -1,11 +1,14 @@ -app.jso-cad-update-route-in=rabbitmq:${app.rabbitemq.ip}/jso.cad.updates.to.postgres?queue=jso.cad.update.received&declare=false&vhost=jso&username=${RABBITMQ_USER}&password=${RABBITMQ_PASSWORD}&autoDelete=false +app.jso-cad-update-route-in=rabbitmq:${RABBITMQ_IP}/jso.cad.updates.to.postgres?queue=jso.cad.update.received&declare=false&vhost=jso&username=${RABBITMQ_USER}&password=${RABBITMQ_PASSWORD}&autoDelete=false app.jso-cad-update-route-out=sql:INSERT INTO calls(incident_number, dispatched_time, address, signal, call_description, point) VALUES (:#incident_number, :#dispatched_time, :#address, :#signal, :#call_description, point(:#x, :#y)) app.google-api-key=${GOOGLE_API_KEY} -app.rabbitmq.ip=192.168.1.117 -app.postgres.ip=192.168.1.17 +app.my-lat=30.3025061 +app.my-long=-81.6436614 + +RABBITMQ_IP=192.168.1.117 +POSTGRES_IP=192.168.1.17 quarkus.datasource.db-kind=postgresql quarkus.datasource.username=${POSTGRES_USER} quarkus.datasource.password=${POSTGRES_PASSWORD} -quarkus.datasource.jdbc.url=jdbc:postgresql://${app.postgres.ip}:5432/jsoCad \ No newline at end of file +quarkus.datasource.jdbc.url=jdbc:postgresql://${POSTGRES_IP}:5432/jsoCad \ No newline at end of file