Postgres version #1
4 changed files with 23 additions and 5 deletions
|
|
@ -8,6 +8,7 @@ import org.apache.commons.lang3.StringUtils;
|
||||||
|
|
||||||
import javax.enterprise.context.ApplicationScoped;
|
import javax.enterprise.context.ApplicationScoped;
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
|
import java.awt.geom.Point2D;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
@ -34,6 +35,7 @@ public class CamelConfiguration extends RouteBuilder {
|
||||||
}))
|
}))
|
||||||
.removeHeader("*")
|
.removeHeader("*")
|
||||||
.split(body())
|
.split(body())
|
||||||
|
.wireTap("direct:processedCalls")
|
||||||
.process(exchange -> {
|
.process(exchange -> {
|
||||||
JsoCall jsoCall = exchange.getIn().getBody(JsoCall.class);
|
JsoCall jsoCall = exchange.getIn().getBody(JsoCall.class);
|
||||||
Map<String, Object> sqlCall = new HashMap<>();
|
Map<String, Object> sqlCall = new HashMap<>();
|
||||||
|
|
@ -53,5 +55,15 @@ public class CamelConfiguration extends RouteBuilder {
|
||||||
exchange.getIn().setBody(sqlCall);
|
exchange.getIn().setBody(sqlCall);
|
||||||
})
|
})
|
||||||
.to(appProperties.jsoCadUpdateRouteOut());
|
.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());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,7 @@ public class JsoCallDecoder {
|
||||||
String trimmedCall = call.trim();
|
String trimmedCall = call.trim();
|
||||||
JsoCall jsoCall = new JsoCall();
|
JsoCall jsoCall = new JsoCall();
|
||||||
jsoCall.setIncidentNumber(trimmedCall.substring(0, 12));
|
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.setAddress(trimmedCall.substring(27, 69).trim());
|
||||||
jsoCall.setSignal(trimmedCall.substring(69, 77).trim());
|
jsoCall.setSignal(trimmedCall.substring(69, 77).trim());
|
||||||
jsoCall.setCallDescription(trimmedCall.substring(77).trim());
|
jsoCall.setCallDescription(trimmedCall.substring(77).trim());
|
||||||
|
|
|
||||||
|
|
@ -7,5 +7,8 @@ public interface AppProperties {
|
||||||
|
|
||||||
String jsoCadUpdateRouteIn();
|
String jsoCadUpdateRouteIn();
|
||||||
String jsoCadUpdateRouteOut();
|
String jsoCadUpdateRouteOut();
|
||||||
|
String telegramRoute();
|
||||||
String googleApiKey();
|
String googleApiKey();
|
||||||
|
double myLat();
|
||||||
|
double myLong();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -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.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.google-api-key=${GOOGLE_API_KEY}
|
||||||
|
|
||||||
app.rabbitmq.ip=192.168.1.117
|
app.my-lat=30.3025061
|
||||||
app.postgres.ip=192.168.1.17
|
app.my-long=-81.6436614
|
||||||
|
|
||||||
|
RABBITMQ_IP=192.168.1.117
|
||||||
|
POSTGRES_IP=192.168.1.17
|
||||||
|
|
||||||
quarkus.datasource.db-kind=postgresql
|
quarkus.datasource.db-kind=postgresql
|
||||||
quarkus.datasource.username=${POSTGRES_USER}
|
quarkus.datasource.username=${POSTGRES_USER}
|
||||||
quarkus.datasource.password=${POSTGRES_PASSWORD}
|
quarkus.datasource.password=${POSTGRES_PASSWORD}
|
||||||
quarkus.datasource.jdbc.url=jdbc:postgresql://${app.postgres.ip}:5432/jsoCad
|
quarkus.datasource.jdbc.url=jdbc:postgresql://${POSTGRES_IP}:5432/jsoCad
|
||||||
Loading…
Reference in a new issue