From bac6c66301114a624dae10ab70d1e2c7e0dad3a2 Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Tue, 22 Feb 2011 23:03:08 +0000 Subject: [PATCH 1/1] Improve GIS git-svn-id: https://svn.argeo.org/slc/trunk@4167 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- demo/log4j.properties | 4 +- demo/slc-client-rcp-dev.product | 20 +++++- dep/org.argeo.slc.dep.agent/pom.xml | 19 ++++++ dep/org.argeo.slc.dep.backend/pom.xml | 45 ------------- dep/org.argeo.slc.dep.gis/pom.xml | 19 ++++++ dep/org.argeo.slc.dep.sdk.rcp/pom.xml | 14 ---- dep/org.argeo.slc.dep.server/pom.xml | 19 ++++++ .../META-INF/spring/backend-osgi.xml | 1 + .../META-INF/spring/backend.xml | 5 ++ modules/gis/pom.xml | 25 +++++++ modules/pom.xml | 1 + .../META-INF/spring/jackrabbit-osgi.xml | 6 +- .../repository.xml | 16 ++--- runtime/org.argeo.slc.support.gis/pom.xml | 23 ------- .../geotools/map/OverlayLocationReceiver.java | 7 ++ .../org/argeo/slc/jts/PositionUpdater.java | 65 +++++++++++++++++++ 16 files changed, 195 insertions(+), 94 deletions(-) create mode 100644 modules/gis/pom.xml create mode 100644 runtime/org.argeo.slc.support.gis/src/main/java/org/argeo/slc/geotools/map/OverlayLocationReceiver.java create mode 100644 runtime/org.argeo.slc.support.gis/src/main/java/org/argeo/slc/jts/PositionUpdater.java diff --git a/demo/log4j.properties b/demo/log4j.properties index feb4b3a75..a17b667c9 100644 --- a/demo/log4j.properties +++ b/demo/log4j.properties @@ -19,7 +19,7 @@ log4j.logger.org.hibernate=WARN log4j.logger.org.springframework=WARN #log4j.logger.org.springframework.web=DEBUG #log4j.logger.org.springframework.jms=WARN -#log4j.logger.org.springframework.security=DEBUG +log4j.logger.org.springframework.security=DEBUG #log4j.logger.org.springframework.ldap=TRACE #log4j.logger.org.springframework.osgi.web=TRACE @@ -36,7 +36,7 @@ log4j.logger.org.apache.directory.server=INFO log4j.logger.org.apache.directory.server.core.partition=ERROR log4j.logger.org.apache.directory.server.core.schema.bootstrap.BootstrapAttributeTypeRegistry=ERROR -log4j.logger.org.apache.jackrabbit=WARN +log4j.logger.org.apache.jackrabbit=INFO log4j.logger.org.apache.jackrabbit.core.query.lucene=ERROR ## Appenders diff --git a/demo/slc-client-rcp-dev.product b/demo/slc-client-rcp-dev.product index 691f5e6fc..b640f1101 100644 --- a/demo/slc-client-rcp-dev.product +++ b/demo/slc-client-rcp-dev.product @@ -67,6 +67,7 @@ + @@ -79,6 +80,7 @@ + @@ -91,6 +93,10 @@ + + + + @@ -137,6 +143,7 @@ + @@ -168,13 +175,17 @@ + + + + @@ -182,7 +193,7 @@ - + @@ -216,6 +227,8 @@ + + @@ -250,6 +263,8 @@ + + @@ -260,10 +275,12 @@ + + @@ -282,6 +299,7 @@ + diff --git a/dep/org.argeo.slc.dep.agent/pom.xml b/dep/org.argeo.slc.dep.agent/pom.xml index e88afa954..cf6a5ef5a 100644 --- a/dep/org.argeo.slc.dep.agent/pom.xml +++ b/dep/org.argeo.slc.dep.agent/pom.xml @@ -149,4 +149,23 @@ + + + sdkWithModules + + true + + + + org.argeo.slc.modules + org.argeo.slc.modules.agent.bundles + ${version.slc} + pom + + + + + sdkWithoutModules + + \ No newline at end of file diff --git a/dep/org.argeo.slc.dep.backend/pom.xml b/dep/org.argeo.slc.dep.backend/pom.xml index 594284fe0..6c65a738f 100644 --- a/dep/org.argeo.slc.dep.backend/pom.xml +++ b/dep/org.argeo.slc.dep.backend/pom.xml @@ -91,49 +91,4 @@ - - - sdkWithModules - - true - - - - org.argeo.slc.modules - org.argeo.slc.modules.agent.bundles - ${version.slc} - pom - - - org.argeo.slc.modules - org.argeo.slc.modules.server.bundles - ${version.slc} - pom - - - - - sdkWithoutModules - - - release - - /srv/projects/slc/www/sdk - - - - org.argeo.slc.modules - org.argeo.slc.modules.agent.bundles - ${version.slc} - pom - - - org.argeo.slc.modules - org.argeo.slc.modules.server.bundles - ${version.slc} - pom - - - - \ No newline at end of file diff --git a/dep/org.argeo.slc.dep.gis/pom.xml b/dep/org.argeo.slc.dep.gis/pom.xml index 18b63ca63..fe5234d3f 100644 --- a/dep/org.argeo.slc.dep.gis/pom.xml +++ b/dep/org.argeo.slc.dep.gis/pom.xml @@ -59,4 +59,23 @@ + + + sdkWithModules + + true + + + + org.argeo.slc.modules + org.argeo.slc.modules.gis.bundles + ${version.slc} + pom + + + + + sdkWithoutModules + + \ No newline at end of file diff --git a/dep/org.argeo.slc.dep.sdk.rcp/pom.xml b/dep/org.argeo.slc.dep.sdk.rcp/pom.xml index ce7844e01..d90c287b6 100644 --- a/dep/org.argeo.slc.dep.sdk.rcp/pom.xml +++ b/dep/org.argeo.slc.dep.sdk.rcp/pom.xml @@ -67,19 +67,5 @@ sdkWithoutModules - - release - - /srv/projects/slc/www/sdk - - - - org.argeo.slc.eclipse - org.argeo.slc.eclipse.modules.bundles - ${version.slc} - pom - - - \ No newline at end of file diff --git a/dep/org.argeo.slc.dep.server/pom.xml b/dep/org.argeo.slc.dep.server/pom.xml index bb635e768..199f2e00d 100644 --- a/dep/org.argeo.slc.dep.server/pom.xml +++ b/dep/org.argeo.slc.dep.server/pom.xml @@ -153,4 +153,23 @@ + + + sdkWithModules + + true + + + + org.argeo.slc.modules + org.argeo.slc.modules.server.bundles + ${version.slc} + pom + + + + + sdkWithoutModules + + \ No newline at end of file diff --git a/modules/gis/org.argeo.slc.gis.position.backend/META-INF/spring/backend-osgi.xml b/modules/gis/org.argeo.slc.gis.position.backend/META-INF/spring/backend-osgi.xml index fcb299b54..048932014 100644 --- a/modules/gis/org.argeo.slc.gis.position.backend/META-INF/spring/backend-osgi.xml +++ b/modules/gis/org.argeo.slc.gis.position.backend/META-INF/spring/backend-osgi.xml @@ -6,6 +6,7 @@ http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> + \ No newline at end of file diff --git a/modules/gis/org.argeo.slc.gis.position.backend/META-INF/spring/backend.xml b/modules/gis/org.argeo.slc.gis.position.backend/META-INF/spring/backend.xml index e1a6e02f8..fe4844bb7 100644 --- a/modules/gis/org.argeo.slc.gis.position.backend/META-INF/spring/backend.xml +++ b/modules/gis/org.argeo.slc.gis.position.backend/META-INF/spring/backend.xml @@ -27,6 +27,11 @@ + + + diff --git a/modules/gis/pom.xml b/modules/gis/pom.xml new file mode 100644 index 000000000..bdcfded1b --- /dev/null +++ b/modules/gis/pom.xml @@ -0,0 +1,25 @@ + + 4.0.0 + + org.argeo.slc + modules + 0.13.1-SNAPSHOT + .. + + org.argeo.slc.modules + gis + bundles + SLC Modules GIS + + + + org.argeo.maven.plugins + maven-argeo-osgi-plugin + true + + org.argeo.slc.modules.gis.bundles + + + + + \ No newline at end of file diff --git a/modules/pom.xml b/modules/pom.xml index 452579acb..3317e9597 100644 --- a/modules/pom.xml +++ b/modules/pom.xml @@ -12,5 +12,6 @@ agent server + gis diff --git a/modules/server/org.argeo.slc.server.jackrabbit.pgsql/META-INF/spring/jackrabbit-osgi.xml b/modules/server/org.argeo.slc.server.jackrabbit.pgsql/META-INF/spring/jackrabbit-osgi.xml index f6f4aed4e..f90274f86 100644 --- a/modules/server/org.argeo.slc.server.jackrabbit.pgsql/META-INF/spring/jackrabbit-osgi.xml +++ b/modules/server/org.argeo.slc.server.jackrabbit.pgsql/META-INF/spring/jackrabbit-osgi.xml @@ -6,6 +6,10 @@ http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> - + + + + + \ No newline at end of file diff --git a/modules/server/org.argeo.slc.server.jackrabbit.pgsql/repository.xml b/modules/server/org.argeo.slc.server.jackrabbit.pgsql/repository.xml index b0eb4cf55..36207ec73 100644 --- a/modules/server/org.argeo.slc.server.jackrabbit.pgsql/repository.xml +++ b/modules/server/org.argeo.slc.server.jackrabbit.pgsql/repository.xml @@ -74,13 +74,13 @@ - - - - - - - + + + + + + + \ No newline at end of file diff --git a/runtime/org.argeo.slc.support.gis/pom.xml b/runtime/org.argeo.slc.support.gis/pom.xml index 23cab467c..2163a3094 100644 --- a/runtime/org.argeo.slc.support.gis/pom.xml +++ b/runtime/org.argeo.slc.support.gis/pom.xml @@ -100,27 +100,4 @@ - - - com.springsource.repository.bundles.external - - SpringSource Enterprise Bundle Repository - External - Bundle - Releases - - - http://repository.springsource.com/maven/bundles/external - - - true - daily - fail - - - false - never - fail - - - \ No newline at end of file diff --git a/runtime/org.argeo.slc.support.gis/src/main/java/org/argeo/slc/geotools/map/OverlayLocationReceiver.java b/runtime/org.argeo.slc.support.gis/src/main/java/org/argeo/slc/geotools/map/OverlayLocationReceiver.java new file mode 100644 index 000000000..2b080ff9f --- /dev/null +++ b/runtime/org.argeo.slc.support.gis/src/main/java/org/argeo/slc/geotools/map/OverlayLocationReceiver.java @@ -0,0 +1,7 @@ +package org.argeo.slc.geotools.map; + +import com.vividsolutions.jts.geom.Point; + +public interface OverlayLocationReceiver { + public void receiveOverlayLocation(Point point, Boolean stale); +} diff --git a/runtime/org.argeo.slc.support.gis/src/main/java/org/argeo/slc/jts/PositionUpdater.java b/runtime/org.argeo.slc.support.gis/src/main/java/org/argeo/slc/jts/PositionUpdater.java new file mode 100644 index 000000000..916685334 --- /dev/null +++ b/runtime/org.argeo.slc.support.gis/src/main/java/org/argeo/slc/jts/PositionUpdater.java @@ -0,0 +1,65 @@ +package org.argeo.slc.jts; + +import java.util.List; + +import org.argeo.slc.geotools.map.OverlayLocationReceiver; +import org.argeo.slc.gis.model.FieldPosition; + +public class PositionUpdater implements Runnable { + private PositionProvider positionProvider; + private List positionReceivers; + /** in s */ + private Integer positionRefreshPeriod = 1; + + private Thread thread; + private Boolean running = false; + + private FieldPosition currentPosition = null; + + public void run() { + while (running) { + FieldPosition position = positionProvider.currentPosition(); + + for (OverlayLocationReceiver receiver : positionReceivers) { + if (position != null) { + currentPosition = position; + receiver.receiveOverlayLocation( + currentPosition.getLocation(), false); + } else { + receiver.receiveOverlayLocation( + currentPosition.getLocation(), true); + } + } + + try { + Thread.sleep(positionRefreshPeriod * 1000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + } + + public void start() { + running = true; + thread = new Thread(this, "Position Updater"); + thread.start(); + } + + public void stop() { + running = false; + try { + thread.join(); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + + public void setPositionProvider(PositionProvider positionProvider) { + this.positionProvider = positionProvider; + } + + public void setPositionRefreshPeriod(Integer positionRefreshPeriod) { + this.positionRefreshPeriod = positionRefreshPeriod; + } + +} \ No newline at end of file -- 2.39.2