]> git.argeo.org Git - gpl/argeo-slc.git/commitdiff
Improve GIS
authorMathieu Baudier <mbaudier@argeo.org>
Tue, 22 Feb 2011 23:03:08 +0000 (23:03 +0000)
committerMathieu Baudier <mbaudier@argeo.org>
Tue, 22 Feb 2011 23:03:08 +0000 (23:03 +0000)
git-svn-id: https://svn.argeo.org/slc/trunk@4167 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc

16 files changed:
demo/log4j.properties
demo/slc-client-rcp-dev.product
dep/org.argeo.slc.dep.agent/pom.xml
dep/org.argeo.slc.dep.backend/pom.xml
dep/org.argeo.slc.dep.gis/pom.xml
dep/org.argeo.slc.dep.sdk.rcp/pom.xml
dep/org.argeo.slc.dep.server/pom.xml
modules/gis/org.argeo.slc.gis.position.backend/META-INF/spring/backend-osgi.xml
modules/gis/org.argeo.slc.gis.position.backend/META-INF/spring/backend.xml
modules/gis/pom.xml [new file with mode: 0644]
modules/pom.xml
modules/server/org.argeo.slc.server.jackrabbit.pgsql/META-INF/spring/jackrabbit-osgi.xml
modules/server/org.argeo.slc.server.jackrabbit.pgsql/repository.xml
runtime/org.argeo.slc.support.gis/pom.xml
runtime/org.argeo.slc.support.gis/src/main/java/org/argeo/slc/geotools/map/OverlayLocationReceiver.java [new file with mode: 0644]
runtime/org.argeo.slc.support.gis/src/main/java/org/argeo/slc/jts/PositionUpdater.java [new file with mode: 0644]

index feb4b3a750d724ea94bcc2d684a1f527e339833e..a17b667c97d2d16e41c346b847fc45f39d7e4b70 100644 (file)
@@ -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
index 691f5e6fcc379ad26bd694210c93294dab4c41f5..b640f1101cdc2b0ccd91481911ce1ea0fbffc770 100644 (file)
@@ -67,6 +67,7 @@
       <plugin id="com.springsource.org.antlr"/>
       <plugin id="com.springsource.org.aopalliance"/>
       <plugin id="com.springsource.org.apache.bsf"/>
+      <plugin id="com.springsource.org.apache.catalina"/>
       <plugin id="com.springsource.org.apache.commons.beanutils"/>
       <plugin id="com.springsource.org.apache.commons.codec"/>
       <plugin id="com.springsource.org.apache.commons.collections"/>
@@ -79,6 +80,7 @@
       <plugin id="com.springsource.org.apache.commons.net"/>
       <plugin id="com.springsource.org.apache.commons.pool"/>
       <plugin id="com.springsource.org.apache.commons.vfs"/>
+      <plugin id="com.springsource.org.apache.coyote" fragment="true"/>
       <plugin id="com.springsource.org.apache.derby"/>
       <plugin id="com.springsource.org.apache.directory.server.changepw"/>
       <plugin id="com.springsource.org.apache.directory.server.core" fragment="true"/>
       <plugin id="com.springsource.org.apache.directory.server.protocol.shared"/>
       <plugin id="com.springsource.org.apache.directory.shared.asn1"/>
       <plugin id="com.springsource.org.apache.directory.shared.ldap"/>
+      <plugin id="com.springsource.org.apache.el"/>
+      <plugin id="com.springsource.org.apache.jasper" fragment="true"/>
+      <plugin id="com.springsource.org.apache.jasper.org.eclipse.jdt"/>
+      <plugin id="com.springsource.org.apache.juli.extras"/>
       <plugin id="com.springsource.org.apache.log4j"/>
       <plugin id="com.springsource.org.apache.lucene"/>
       <plugin id="com.springsource.org.apache.mina"/>
       <plugin id="org.argeo.dep.osgi.aether"/>
       <plugin id="org.argeo.dep.osgi.boilerpipe"/>
       <plugin id="org.argeo.dep.osgi.bouncycastle.jdk15"/>
+      <plugin id="org.argeo.dep.osgi.catalina.start"/>
       <plugin id="org.argeo.dep.osgi.commons.cli"/>
       <plugin id="org.argeo.dep.osgi.commons.exec"/>
       <plugin id="org.argeo.dep.osgi.directory.shared.asn.codec" fragment="true"/>
       <plugin id="org.argeo.security.ui.application"/>
       <plugin id="org.argeo.server.ads"/>
       <plugin id="org.argeo.server.ads.server"/>
+      <plugin id="org.argeo.server.catalina" fragment="true"/>
       <plugin id="org.argeo.server.core"/>
       <plugin id="org.argeo.server.ext.jackrabbit" fragment="true"/>
       <plugin id="org.argeo.server.jackrabbit"/>
+      <plugin id="org.argeo.server.jackrabbit.webapp"/>
       <plugin id="org.argeo.server.jcr"/>
       <plugin id="org.argeo.server.jdbc" fragment="true"/>
       <plugin id="org.argeo.server.json"/>
       <plugin id="org.argeo.server.tika.jackrabbit" fragment="true"/>
+      <plugin id="org.argeo.server.tomcat" fragment="true"/>
+      <plugin id="org.argeo.server.webextender" fragment="true"/>
       <plugin id="org.argeo.slc.agent"/>
       <plugin id="org.argeo.slc.agent.ext.bsf" fragment="true"/>
       <plugin id="org.argeo.slc.agent.ext.jdbc" fragment="true"/>
       <plugin id="org.argeo.slc.client.agent"/>
       <plugin id="org.argeo.slc.client.commons"/>
       <plugin id="org.argeo.slc.client.core"/>
-      <plugin id="org.argeo.slc.client.gis"/>
+      <plugin id="org.argeo.slc.client.gis" fragment=""/>
       <plugin id="org.argeo.slc.client.hibernate"/>
       <plugin id="org.argeo.slc.client.oxm"/>
       <plugin id="org.argeo.slc.client.rcp"/>
       <plugin id="org.argeo.slc.support.maven"/>
       <plugin id="org.argeo.slc.support.osgi"/>
       <plugin id="org.argeo.slc.support.simple"/>
+      <plugin id="org.argeo.slc.ui.gis"/>
+      <plugin id="org.argeo.slc.ui.gis.rcp"/>
       <plugin id="org.eclipse.core.commands"/>
       <plugin id="org.eclipse.core.contenttype"/>
       <plugin id="org.eclipse.core.databinding"/>
       <plugin id="org.springframework.osgi.core"/>
       <plugin id="org.springframework.osgi.extender"/>
       <plugin id="org.springframework.osgi.io"/>
+      <plugin id="org.springframework.osgi.web"/>
+      <plugin id="org.springframework.osgi.web.extender"/>
       <plugin id="org.springframework.oxm"/>
       <plugin id="org.springframework.security.acls" fragment="true"/>
       <plugin id="org.springframework.security.core"/>
    </plugins>
 
    <configurations>
+      <plugin id="org.argeo.dep.osgi.catalina.start" autoStart="true" startLevel="0" />
       <plugin id="org.argeo.security.equinox" autoStart="true" startLevel="0" />
       <plugin id="org.argeo.security.manager.ldap" autoStart="true" startLevel="0" />
       <plugin id="org.argeo.security.services" autoStart="true" startLevel="0" />
       <plugin id="org.argeo.server.ads.server" autoStart="true" startLevel="0" />
+      <plugin id="org.argeo.server.jackrabbit.webapp" autoStart="true" startLevel="0" />
       <plugin id="org.argeo.slc.agent" autoStart="true" startLevel="0" />
       <plugin id="org.argeo.slc.client.agent" autoStart="true" startLevel="0" />
       <plugin id="org.argeo.slc.client.commons" autoStart="true" startLevel="0" />
       <plugin id="org.argeo.slc.server.jackrabbit.pgsql" autoStart="true" startLevel="0" />
       <plugin id="org.argeo.slc.server.services" autoStart="true" startLevel="0" />
       <plugin id="org.springframework.osgi.extender" autoStart="true" startLevel="0" />
+      <plugin id="org.springframework.osgi.web.extender" autoStart="true" startLevel="0" />
    </configurations>
 
 </product>
index e88afa954296ff53b76ddcdba3ce4274a3435794..cf6a5ef5a836970a196e7d2516efa99995c22e1f 100644 (file)
                </dependency>
 
        </dependencies>
+       <profiles>
+               <profile>
+                       <id>sdkWithModules</id>
+                       <activation>
+                               <activeByDefault>true</activeByDefault>
+                       </activation>
+                       <dependencies>
+                               <dependency>
+                                       <groupId>org.argeo.slc.modules</groupId>
+                                       <artifactId>org.argeo.slc.modules.agent.bundles</artifactId>
+                                       <version>${version.slc}</version>
+                                       <type>pom</type>
+                               </dependency>
+                       </dependencies>
+               </profile>
+               <profile>
+                       <id>sdkWithoutModules</id>
+               </profile>
+       </profiles>
 </project>
\ No newline at end of file
index 594284fe04ea0c7d9a177d4500bfc6073cdbcd05..6c65a738f404eb96972bd40504aac1f34f19c15e 100644 (file)
                </dependency>
 
        </dependencies>
-       <profiles>
-               <profile>
-                       <id>sdkWithModules</id>
-                       <activation>
-                               <activeByDefault>true</activeByDefault>
-                       </activation>
-                       <dependencies>
-                               <dependency>
-                                       <groupId>org.argeo.slc.modules</groupId>
-                                       <artifactId>org.argeo.slc.modules.agent.bundles</artifactId>
-                                       <version>${version.slc}</version>
-                                       <type>pom</type>
-                               </dependency>
-                               <dependency>
-                                       <groupId>org.argeo.slc.modules</groupId>
-                                       <artifactId>org.argeo.slc.modules.server.bundles</artifactId>
-                                       <version>${version.slc}</version>
-                                       <type>pom</type>
-                               </dependency>
-                       </dependencies>
-               </profile>
-               <profile>
-                       <id>sdkWithoutModules</id>
-               </profile>
-               <profile>
-                       <id>release</id>
-                       <properties>
-                               <argeo.p2.repository>/srv/projects/slc/www/sdk</argeo.p2.repository>
-                       </properties>
-                       <dependencies>
-                               <dependency>
-                                       <groupId>org.argeo.slc.modules</groupId>
-                                       <artifactId>org.argeo.slc.modules.agent.bundles</artifactId>
-                                       <version>${version.slc}</version>
-                                       <type>pom</type>
-                               </dependency>
-                               <dependency>
-                                       <groupId>org.argeo.slc.modules</groupId>
-                                       <artifactId>org.argeo.slc.modules.server.bundles</artifactId>
-                                       <version>${version.slc}</version>
-                                       <type>pom</type>
-                               </dependency>
-                       </dependencies>
-               </profile>
-       </profiles>
 </project>
\ No newline at end of file
index 18b63ca63b6e10106a098da25d74bbcf0f45ad4b..fe5234d3f297e4327561c9d30ae32fd153df0366 100644 (file)
                </dependency>
 
        </dependencies>
+       <profiles>
+               <profile>
+                       <id>sdkWithModules</id>
+                       <activation>
+                               <activeByDefault>true</activeByDefault>
+                       </activation>
+                       <dependencies>
+                               <dependency>
+                                       <groupId>org.argeo.slc.modules</groupId>
+                                       <artifactId>org.argeo.slc.modules.gis.bundles</artifactId>
+                                       <version>${version.slc}</version>
+                                       <type>pom</type>
+                               </dependency>
+                       </dependencies>
+               </profile>
+               <profile>
+                       <id>sdkWithoutModules</id>
+               </profile>
+       </profiles>
 </project>
\ No newline at end of file
index ce7844e0162838609ba9de17f974e0b8f3bdc12b..d90c287b6993225fb0fa7d4b564c35fd5a092391 100644 (file)
                <profile>
                        <id>sdkWithoutModules</id>
                </profile>
-               <profile>
-                       <id>release</id>
-                       <properties>
-                               <argeo.p2.repository>/srv/projects/slc/www/sdk</argeo.p2.repository>
-                       </properties>
-                       <dependencies>
-                               <dependency>
-                                       <groupId>org.argeo.slc.eclipse</groupId>
-                                       <artifactId>org.argeo.slc.eclipse.modules.bundles</artifactId>
-                                       <version>${version.slc}</version>
-                                       <type>pom</type>
-                               </dependency>
-                       </dependencies>
-               </profile>
        </profiles>
 </project>
\ No newline at end of file
index bb635e768a98b19f190f97b38f6aa6de3ccc929f..199f2e00d521c0a98dd86e5cf9f4e0d0b89b809b 100644 (file)
                </dependency>
 
        </dependencies>
+       <profiles>
+               <profile>
+                       <id>sdkWithModules</id>
+                       <activation>
+                               <activeByDefault>true</activeByDefault>
+                       </activation>
+                       <dependencies>
+                               <dependency>
+                                       <groupId>org.argeo.slc.modules</groupId>
+                                       <artifactId>org.argeo.slc.modules.server.bundles</artifactId>
+                                       <version>${version.slc}</version>
+                                       <type>pom</type>
+                               </dependency>
+                       </dependencies>
+               </profile>
+               <profile>
+                       <id>sdkWithoutModules</id>
+               </profile>
+       </profiles>
 </project>
\ No newline at end of file
index fcb299b54d413b2aa21196a2a7a028df62000d62..048932014dc383d6905091ba4f7be636f84ddacc 100644 (file)
@@ -6,6 +6,7 @@
        http://www.springframework.org/schema/beans   \r
        http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">\r
 \r
+       <service ref="shapeFileDataStore" interface="org.geotools.data.DataStore" />\r
        <service ref="postGisDataStore" interface="org.geotools.data.DataStore" />\r
        <service ref="backend" interface="org.argeo.slc.geotools.Backend" />\r
 </beans:beans>
\ No newline at end of file
index e1a6e02f854f9afc6cd0e303793eb6d8a81fef26..fe4844bb75887eb036e7ddb78b8076c7ae26ce6a 100644 (file)
                <property name="jaiImageIoClassLoader" ref="jai.imageio.bdClassLoader" />\r
        </bean>\r
 \r
+       <bean id="shapeFileDataStore" class="org.geotools.data.FileDataStoreFinder"\r
+               factory-method="getDataStore">\r
+               <constructor-arg\r
+                       value="file:///home/mbaudier/gis/data/providers/naturalearth/1.3.0/10m_cultural/10m_admin_0_countries.shp" />\r
+       </bean>\r
 \r
        <bean id="postGisDataStore" factory-bean="postGisDataStoreFactory"\r
                factory-method="createDataStore">\r
diff --git a/modules/gis/pom.xml b/modules/gis/pom.xml
new file mode 100644 (file)
index 0000000..bdcfded
--- /dev/null
@@ -0,0 +1,25 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+       <modelVersion>4.0.0</modelVersion>
+       <parent>
+               <groupId>org.argeo.slc</groupId>
+               <artifactId>modules</artifactId>
+               <version>0.13.1-SNAPSHOT</version>
+               <relativePath>..</relativePath>
+       </parent>
+       <groupId>org.argeo.slc.modules</groupId>
+       <artifactId>gis</artifactId>
+       <packaging>bundles</packaging>
+       <name>SLC Modules GIS</name>
+       <build>
+               <plugins>
+                       <plugin>
+                               <groupId>org.argeo.maven.plugins</groupId>
+                               <artifactId>maven-argeo-osgi-plugin</artifactId>
+                               <extensions>true</extensions>
+                               <configuration>
+                                       <bundlesPomArtifactId>org.argeo.slc.modules.gis.bundles</bundlesPomArtifactId>
+                               </configuration>
+                       </plugin>
+               </plugins>
+       </build>
+</project>
\ No newline at end of file
index 452579acbc1d13f3e4cb0df331245edd6b01d2b9..3317e95978e94bb275899b7fd60b359ff7198eb4 100644 (file)
@@ -12,5 +12,6 @@
        <modules>
                <module>agent</module>
                <module>server</module>
+               <module>gis</module>
        </modules>
 </project>
index f6f4aed4edc44a8317019428a360835d095207f4..f90274f86789859f0a4efa8a90adcd7815ba8787 100644 (file)
@@ -6,6 +6,10 @@
        http://www.springframework.org/schema/beans   \r
        http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">\r
 \r
-       <service ref="jcrRepository" interface="javax.jcr.Repository"/>\r
+       <service ref="jcrRepository" interface="javax.jcr.Repository">\r
+               <service-properties>\r
+                       <beans:entry key="argeo.jcr.repository.name" value="repo" />\r
+               </service-properties>\r
+       </service>\r
 \r
 </beans:beans>
\ No newline at end of file
index b0eb4cf555a8d3b3d5fb4b5581589f1469ce7aef..36207ec734c137ec334bc7e3f56d83d1e76141b4 100644 (file)
                <AccessManager
                        class="org.apache.jackrabbit.core.security.simple.SimpleAccessManager">
                </AccessManager>
-               <!-- <LoginModule -->
-               <!-- class="org.springframework.security.providers.jaas.SecurityContextLoginModule"> -->
-               <!-- </LoginModule> -->
-               <LoginModule
-                       class="org.apache.jackrabbit.core.security.simple.SimpleLoginModule">
-                       <param name="anonymousId" value="anonymous" />
-                       <param name="adminId" value="admin" />
-               </LoginModule>
+                <LoginModule 
+                class="org.springframework.security.providers.jaas.SecurityContextLoginModule"> 
+                </LoginModule> 
+<!--           <LoginModule-->
+<!--                   class="org.apache.jackrabbit.core.security.simple.SimpleLoginModule">-->
+<!--                   <param name="anonymousId" value="anonymous" />-->
+<!--                   <param name="adminId" value="admin" />-->
+<!--           </LoginModule>-->
        </Security>
 </Repository>
\ No newline at end of file
index 23cab467c0d54419de431911b74edd8eb1366d6c..2163a3094c09931ab7a2821d616058744b6f728a 100644 (file)
                </dependency>
 
        </dependencies>
-       <repositories>
-               <repository>
-                       <id>com.springsource.repository.bundles.external</id>
-                       <name>
-                               SpringSource Enterprise Bundle Repository - External
-                               Bundle
-                               Releases
-                       </name>
-                       <url>
-                               http://repository.springsource.com/maven/bundles/external
-                       </url>
-                       <releases>
-                               <enabled>true</enabled>
-                               <updatePolicy>daily</updatePolicy>
-                               <checksumPolicy>fail</checksumPolicy>
-                       </releases>
-                       <snapshots>
-                               <enabled>false</enabled>
-                               <updatePolicy>never</updatePolicy>
-                               <checksumPolicy>fail</checksumPolicy>
-                       </snapshots>
-               </repository>
-       </repositories>
 </project>
\ 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 (file)
index 0000000..2b080ff
--- /dev/null
@@ -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 (file)
index 0000000..9166853
--- /dev/null
@@ -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<OverlayLocationReceiver> 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