diff --git a/build-deb-and-install.sh b/build-deb-and-install.sh
old mode 100644
new mode 100755
diff --git a/linkedgeodata-cli/pom.xml b/linkedgeodata-cli/pom.xml
index 64b1e07..a64a74a 100644
--- a/linkedgeodata-cli/pom.xml
+++ b/linkedgeodata-cli/pom.xml
@@ -32,6 +32,11 @@
jcommander
+
+ org.slf4j
+ slf4j-log4j12
+
+
diff --git a/linkedgeodata-cli/src/main/java/org/aksw/linkedgeodata/cli/command/main/CommandMain.java b/linkedgeodata-cli/src/main/java/org/aksw/linkedgeodata/cli/command/main/CommandMain.java
new file mode 100644
index 0000000..89e01ad
--- /dev/null
+++ b/linkedgeodata-cli/src/main/java/org/aksw/linkedgeodata/cli/command/main/CommandMain.java
@@ -0,0 +1,5 @@
+package org.aksw.linkedgeodata.cli.command.main;
+
+public class CommandMain {
+ // Placeholder for entry point to general lgd related commands
+}
diff --git a/linkedgeodata-cli/src/main/java/org/aksw/linkedgeodata/cli/command/main/CommandOsm.java b/linkedgeodata-cli/src/main/java/org/aksw/linkedgeodata/cli/command/main/CommandOsm.java
new file mode 100644
index 0000000..ccfb8e4
--- /dev/null
+++ b/linkedgeodata-cli/src/main/java/org/aksw/linkedgeodata/cli/command/main/CommandOsm.java
@@ -0,0 +1,5 @@
+package org.aksw.linkedgeodata.cli.command.main;
+
+public class CommandOsm {
+ // Placeholder for entry point to osm related commands
+}
diff --git a/linkedgeodata-cli/src/main/java/org/aksw/linkedgeodata/cli/command/osm/CommandOsmDateToSeq.java b/linkedgeodata-cli/src/main/java/org/aksw/linkedgeodata/cli/command/osm/CommandOsmDateToSeq.java
new file mode 100644
index 0000000..9b1f3a4
--- /dev/null
+++ b/linkedgeodata-cli/src/main/java/org/aksw/linkedgeodata/cli/command/osm/CommandOsmDateToSeq.java
@@ -0,0 +1,47 @@
+package org.aksw.linkedgeodata.cli.command.osm;
+
+import java.time.Instant;
+import java.util.Properties;
+
+import org.aksw.linkedgeodata.osm.replication.dao.OsmRepoDao;
+import org.aksw.linkedgeodata.osm.replication.dao.OsmRepoDaoImpl;
+import org.aksw.linkedgeodata.osm.replication.dao.State;
+import org.aksw.linkedgeodata.osm.replication.dao.StateImpl;
+
+import com.beust.jcommander.JCommander;
+import com.beust.jcommander.Parameter;
+
+public class CommandOsmDateToSeq {
+
+ @Parameter(names = {"-u", "-url"}, description = "OSM Repository base URL")
+ public String osmReplicationRepoBaseUrl = null;
+
+ @Parameter(names = {"-d", "-date"}, description = "Timestamp")
+ public String timestamp = null;
+
+ public static void main(String[] args) throws Exception {
+
+ CommandOsmDateToSeq options = new CommandOsmDateToSeq();
+ JCommander jCommander = new JCommander(options);
+ jCommander.parse(args);
+
+ OsmRepoDao repoDao = OsmRepoDaoImpl.create(options.osmReplicationRepoBaseUrl);
+
+ Instant instant = Instant.parse(options.timestamp);
+
+
+ State state = repoDao.findState(instant);
+
+ java.util.Properties properties = StateImpl.toProperties(new Properties(), state);
+ properties.store(System.out, null);
+
+
+// if(commandLineArgs.isHelp())
+// {
+// jCommander.usage();
+// System.exit(0);
+// }
+//
+//
+ }
+}
\ No newline at end of file
diff --git a/linkedgeodata-cli/src/main/java/org/aksw/linkedgeodata/cli/main/MainLinkedGeoData.java b/linkedgeodata-cli/src/main/java/org/aksw/linkedgeodata/cli/main/MainLinkedGeoData.java
new file mode 100644
index 0000000..ab4ec8c
--- /dev/null
+++ b/linkedgeodata-cli/src/main/java/org/aksw/linkedgeodata/cli/main/MainLinkedGeoData.java
@@ -0,0 +1,5 @@
+package org.aksw.linkedgeodata.cli.main;
+
+public class MainLinkedGeoData {
+ // Placeholder for entry point to lgd related commands
+}
diff --git a/linkedgeodata-cli/src/main/java/org/linkedgeodata/cli/MainLinkedGeoData.java b/linkedgeodata-cli/src/main/java/org/linkedgeodata/cli/MainLinkedGeoData.java
deleted file mode 100644
index 4190c3a..0000000
--- a/linkedgeodata-cli/src/main/java/org/linkedgeodata/cli/MainLinkedGeoData.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package org.linkedgeodata.cli;
-
-public class MainLinkedGeoData {
- public static void main() {
-
- }
-}
diff --git a/linkedgeodata-cli/src/main/resources/log4j.properties b/linkedgeodata-cli/src/main/resources/log4j.properties
new file mode 100644
index 0000000..4f08511
--- /dev/null
+++ b/linkedgeodata-cli/src/main/resources/log4j.properties
@@ -0,0 +1,41 @@
+# Appenders are output targets
+###############################################################################
+# console logging
+###############################################################################
+log4j.appender.stderr=org.apache.log4j.ConsoleAppender
+log4j.appender.stderr.Target=System.err
+log4j.appender.stderr.layout=org.apache.log4j.EnhancedPatternLayout
+log4j.appender.stderr.layout.ConversionPattern=%d [%t] %-5p %c{1.}: %m%n
+#log4j.appender.stderr.layout=org.apache.log4j.PatternLayout
+#log4j.appender.stdout.layout.ConversionPattern=%d [%t] %-5p %c: %m%n
+#log4j.appender.stderr.layout.ConversionPattern=%d %-5p %c: %m%n
+
+
+###############################################################################
+# file logging
+###############################################################################
+log4j.appender.file=org.apache.log4j.FileAppender
+log4j.appender.file.File=lsq.log
+log4j.appender.file.layout=org.apache.log4j.EnhancedPatternLayout
+log4j.appender.file.layout.ConversionPattern=%d [%t] %-5p %c{1.}: %m%n
+
+#log4j.appender.file.layout=org.apache.log4j.PatternLayout
+#log4j.appender.file.layout.ConversionPattern=%d [%t] %-5p %c: %m%n
+#log4j.appender.file.layout.ConversionPattern=%d %-5p %c: %m%n
+
+
+###############################################################################
+# Log levels
+###############################################################################
+###
+# syntax: log4j.logger.=log-level, [appenders]
+# appenders are the output-targets defined above
+# loglevels: trace, debug, info, warn, error, fatal
+#
+log4j.rootLogger=debug, stderr
+
+#log4j.logger.org.aksw.jena_sparql_api.compare.QueryExecutionCompare = on
+#log4j.logger.Jena = off
+#
+#log4j.logger.org.apache.http = off
+#log4j.logger.org.apache.jena = off
\ No newline at end of file
diff --git a/linkedgeodata-core/pom.xml b/linkedgeodata-core/pom.xml
index 0d2e6db..5acec6a 100644
--- a/linkedgeodata-core/pom.xml
+++ b/linkedgeodata-core/pom.xml
@@ -89,6 +89,10 @@
spin
+
+ org.slf4j
+ slf4j-api
+
diff --git a/linkedgeodata-core/src/main/java/org/aksw/linkedgeodata/core/init/InitJenaLinkedGeoData.java b/linkedgeodata-core/src/main/java/org/aksw/linkedgeodata/core/init/InitJenaLinkedGeoData.java
new file mode 100644
index 0000000..71274f1
--- /dev/null
+++ b/linkedgeodata-core/src/main/java/org/aksw/linkedgeodata/core/init/InitJenaLinkedGeoData.java
@@ -0,0 +1,37 @@
+package org.aksw.linkedgeodata.core.init;
+
+import org.aksw.linkedgeodata.osm.replication.dao.State;
+import org.aksw.linkedgeodata.osm.replication.dao.StateImpl;
+import org.apache.jena.enhanced.BuiltinPersonalities;
+import org.apache.jena.rdf.model.Resource;
+import org.apache.jena.rdf.model.ResourceFactory;
+import org.apache.jena.system.JenaSubsystemLifecycle;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.topbraid.spin.util.SimpleImplementation;
+
+public class InitJenaLinkedGeoData
+ implements JenaSubsystemLifecycle
+{
+ private static final Logger logger = LoggerFactory.getLogger(InitJenaLinkedGeoData.class);
+
+ public void start() {
+ logger.debug("LinkedGeoData Jena initialization");
+ init();
+ }
+
+ @Override
+ public void stop() {
+ }
+
+
+ public static final Resource State = ResourceFactory.createResource("http://example.org/osm/State");
+
+ public static void init() {
+
+ BuiltinPersonalities.model
+ .add(State.class, new SimpleImplementation(State.asNode(), StateImpl.class));
+ }
+
+
+}
diff --git a/linkedgeodata-core/src/main/java/org/aksw/linkedgeodata/osm/replication/dao/LgdPersonality.java b/linkedgeodata-core/src/main/java/org/aksw/linkedgeodata/osm/replication/dao/LgdPersonality.java
deleted file mode 100644
index 9a1d34d..0000000
--- a/linkedgeodata-core/src/main/java/org/aksw/linkedgeodata/osm/replication/dao/LgdPersonality.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package org.aksw.linkedgeodata.osm.replication.dao;
-
-import org.apache.jena.enhanced.BuiltinPersonalities;
-import org.apache.jena.rdf.model.Resource;
-import org.apache.jena.rdf.model.ResourceFactory;
-import org.topbraid.spin.util.SimpleImplementation;
-
-public class LgdPersonality {
- public static final Resource State = ResourceFactory.createResource("http://example.org/osm/State");
-
- public static void init() {
-
- BuiltinPersonalities.model
- .add(State.class, new SimpleImplementation(State.asNode(), StateImpl.class));
- }
-
-
-}
diff --git a/linkedgeodata-core/src/main/java/org/aksw/linkedgeodata/osm/replication/dao/OsmRepoCoreDaoImpl.java b/linkedgeodata-core/src/main/java/org/aksw/linkedgeodata/osm/replication/dao/OsmRepoCoreDaoImpl.java
index 7e6ba1d..9d44ca4 100644
--- a/linkedgeodata-core/src/main/java/org/aksw/linkedgeodata/osm/replication/dao/OsmRepoCoreDaoImpl.java
+++ b/linkedgeodata-core/src/main/java/org/aksw/linkedgeodata/osm/replication/dao/OsmRepoCoreDaoImpl.java
@@ -26,6 +26,7 @@
import javax.ws.rs.core.UriBuilder;
+import org.aksw.linkedgeodata.core.init.InitJenaLinkedGeoData;
import org.apache.commons.io.IOUtils;
import org.apache.jena.rdf.model.ModelFactory;
import org.apache.jena.rdf.model.Resource;
@@ -95,7 +96,7 @@ public State getState(long seqId) throws Exception {
public State getState(URI uri) throws Exception {
- logger.debug("Attempting to retrieve: " + uri);
+ logger.info("Retrieving state information for " + uri);
URLConnection conn = uri.toURL().openConnection();
conn.setReadTimeout(10000);
@@ -106,8 +107,7 @@ public State getState(URI uri) throws Exception {
StringWriter w = new StringWriter();
IOUtils.copy(conn.getInputStream(), w, StandardCharsets.UTF_8);
String content = w.toString();
- logger.info("Retrieving state information for " + uri);
- logger.info("Reponse from " + uri + ": " + content);
+ logger.debug("Reponse from " + uri + ":\n" + content);
properties.load(new ByteArrayInputStream(content.getBytes(StandardCharsets.UTF_8)));
@@ -117,7 +117,7 @@ public State getState(URI uri) throws Exception {
State result = ModelFactory.createDefaultModel()
.createResource()
- .addProperty(RDF.type, LgdPersonality.State)
+ .addProperty(RDF.type, InitJenaLinkedGeoData.State)
.as(State.class);
properties.entrySet().forEach(e ->
@@ -131,7 +131,6 @@ public State getState(URI uri) throws Exception {
public static void main(String[] args) throws Exception {
- LgdPersonality.init();
Instant src = Instant.parse("2017-05-26T20:44:02Z");
//OsmRepoDao repoDao = OsmRepoDaoImpl.create("http://download.geofabrik.de/europe/monaco-updates");
diff --git a/linkedgeodata-core/src/main/java/org/aksw/linkedgeodata/osm/replication/dao/StateImpl.java b/linkedgeodata-core/src/main/java/org/aksw/linkedgeodata/osm/replication/dao/StateImpl.java
index b01aa86..48b2ba4 100644
--- a/linkedgeodata-core/src/main/java/org/aksw/linkedgeodata/osm/replication/dao/StateImpl.java
+++ b/linkedgeodata-core/src/main/java/org/aksw/linkedgeodata/osm/replication/dao/StateImpl.java
@@ -1,6 +1,7 @@
package org.aksw.linkedgeodata.osm.replication.dao;
import java.util.Calendar;
+import java.util.Properties;
import org.apache.jena.datatypes.xsd.XSDDateTime;
import org.apache.jena.enhanced.EnhGraph;
@@ -28,4 +29,12 @@ public long getSeqId() {
long result = this.getRequiredProperty(DCTerms.identifier).getLong();
return result;
}
+
+
+ public static Properties toProperties(Properties result, State state) {
+ result.setProperty("timestamp", state.getTimestamp().toInstant().toString());
+ result.setProperty("sequenceNumber", Long.toString(state.getSeqId()));
+
+ return result;
+ }
}
diff --git a/linkedgeodata-core/src/main/resources/META-INF/services/org.apache.jena.system.JenaSubsystemLifecycle b/linkedgeodata-core/src/main/resources/META-INF/services/org.apache.jena.system.JenaSubsystemLifecycle
new file mode 100644
index 0000000..49f9af2
--- /dev/null
+++ b/linkedgeodata-core/src/main/resources/META-INF/services/org.apache.jena.system.JenaSubsystemLifecycle
@@ -0,0 +1 @@
+org.aksw.linkedgeodata.core.init.InitJenaLinkedGeoData
diff --git a/linkedgeodata-debian/dependency-reduced-pom.xml b/linkedgeodata-debian/dependency-reduced-pom.xml
new file mode 100644
index 0000000..4dd1a8e
--- /dev/null
+++ b/linkedgeodata-debian/dependency-reduced-pom.xml
@@ -0,0 +1,152 @@
+
+
+
+ linkedgeodata-parent
+ org.aksw.linkedgeodata
+ 0.4.2-SNAPSHOT
+
+ 4.0.0
+ linkedgeodata-debian
+
+
+
+ maven-shade-plugin
+ 2.0
+
+
+ package
+
+ shade
+
+
+
+
+
+
+
+ *:*
+
+ META-INF/*.SF
+ META-INF/*.DSA
+ META-INF/*.RSA
+
+
+
+
+
+
+
+
+ org.vafer
+ jdeb
+ 1.3
+
+
+ package
+
+ jdeb
+
+
+ ${project.build.directory}/${deb.packageName}_[[version]]_all.deb
+ ${project.build.directory}/${deb.packageName}_[[version]]_all.changes
+ true
+
+ ${jdeb.signPackage}
+ dpkg-sig
+ builder
+ ${jdeb.keyring}
+ ${jdeb.key}
+ ${jdeb.passphrase}
+
+
+ directory
+ ${basedir}/src/deb/resources/etc
+
+ perm
+ /etc
+
+
+
+ directory
+ ${basedir}/src/deb/resources/usr/bin
+
+ perm
+ /usr/bin
+ 755
+
+
+
+ file
+ ${project.build.directory}/${deb.jarFile}
+
+ perm
+ /usr/share/${deb.packageName}
+
+
+
+ directory
+ ${basedir}/../linkedgeodata-core/src/main/resources/org/aksw/linkedgeodata/sql
+
+ perm
+ 755
+ /usr/share/${deb.packageName}/sql
+
+
+
+ directory
+ ${basedir}/../linkedgeodata-core/src/main/resources/org/aksw/linkedgeodata/sml
+
+ perm
+ 755
+ /usr/share/${deb.packageName}/sml
+
+
+
+ directory
+ ${basedir}/../linkedgeodata-cli/bin
+
+ perm
+ 755
+ /usr/share/${deb.packageName}
+
+
+
+ link
+ true
+ /usr/share/${deb.packageName}/${deb.packageName}.jar
+ /usr/share/${deb.packageName}/${deb.jarFile}
+
+
+
+
+
+
+
+
+
+
+
+ A middleware featuring SPARQL to SQL rewriting over relational databases.
+
+
+
+ lod2
+
+ A middleware featuring SPARQL to SQL rewriting over relational databases.
+ .
+ LOD2 is a large-scale integrating project co-funded by the European
+ Commission within the FP7 Information and Communication Technologies
+ Work Programme (Grant Agreement No. 257943). Commencing in September
+ 2010, this 4-year project comprises leading Linked Open Data technology
+ researchers, companies, and service providers from across 7 European
+ countries and is coordinated by the AKSW research group at the
+ University of Leipzig.
+
+
+
+
+ ${project.artifactId}-${project.version}.jar
+ linkedgeodata
+
+
+
diff --git a/linkedgeodata-debian/pom.xml b/linkedgeodata-debian/pom.xml
index d36105f..ccc34bd 100644
--- a/linkedgeodata-debian/pom.xml
+++ b/linkedgeodata-debian/pom.xml
@@ -14,76 +14,21 @@
linkedgeodata
- ${project.artifactId}-${project.version}.jar
+ ${project.artifactId}-${project.version}-jar-with-dependencies.jar
-
-
- default
-
- true
-
-
- A middleware featuring SPARQL to SQL rewriting over relational databases.
-
-
-
- lod2
-
-A middleware featuring SPARQL to SQL rewriting over relational databases.
- .
- LOD2 is a large-scale integrating project co-funded by the European
- Commission within the FP7 Information and Communication Technologies
- Work Programme (Grant Agreement No. 257943). Commencing in September
- 2010, this 4-year project comprises leading Linked Open Data technology
- researchers, companies, and service providers from across 7 European
- countries and is coordinated by the AKSW research group at the
- University of Leipzig.
-
-
-
-
-
- org.apache.maven.plugins
- maven-shade-plugin
- 2.0
-
-
- package
-
- shade
-
-
-
-
-
-
-
-
-
- *:*
-
- META-INF/*.SF
- META-INF/*.DSA
- META-INF/*.RSA
-
-
-
-
-
-
-
-
-
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+
jdeb
org.vafer
- 1.3
+ 1.5
package
@@ -136,6 +81,14 @@
+ link
+ true
+ /usr/share/${deb.packageName}/${deb.packageName}.jar
+ /usr/share/${deb.packageName}/${deb.jarFile}
+
+
+
+
directory
${basedir}/../linkedgeodata-core/src/main/resources/org/aksw/linkedgeodata/sql
@@ -157,7 +110,8 @@
directory
-
+
${basedir}/../linkedgeodata-cli/bin
perm
@@ -166,13 +120,6 @@
-
- link
- true
- /usr/share/${deb.packageName}/${deb.packageName}.jar
- /usr/share/${deb.packageName}/${deb.jarFile}
-
-
@@ -185,12 +132,10 @@
-
diff --git a/linkedgeodata-debian/src/deb/resources/usr/bin/lgd-osm-date-to-seq b/linkedgeodata-debian/src/deb/resources/usr/bin/lgd-osm-date-to-seq
new file mode 100644
index 0000000..da15875
--- /dev/null
+++ b/linkedgeodata-debian/src/deb/resources/usr/bin/lgd-osm-date-to-seq
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+java -cp "/usr/share/linkedgeodata/linkedgeodata.jar" "org.aksw.linkedgeodata.cli.command.osm.CommandOsmDateToSeq" "$@"
+
diff --git a/pom.xml b/pom.xml
index b398ca1..0dbee24 100644
--- a/pom.xml
+++ b/pom.xml
@@ -56,6 +56,7 @@
+
@@ -141,18 +142,53 @@
false
-
- maven-assembly-plugin
-
-
- jar-with-dependencies
-
-
-
-
+
+
+
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+ 2.4.3
+
+
+ package
+
+ shade
+
+
+ false
+ true
+ jar-with-dependencies
+ false
+
+ jar-with-dependencies
+
+
+
+ *:*
+
+ META-INF/*.SF
+ META-INF/*.DSA
+ META-INF/*.RSA
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
maven.aksw.internal
@@ -172,6 +208,7 @@
+
@@ -180,6 +217,11 @@
${project.version}
+
+ org.aksw.linkedgeodata
+ linkedgeodata-cli
+ ${project.version}
+
@@ -288,6 +330,19 @@
1.72
+
+ org.slf4j
+ slf4j-api
+ 1.7.10
+
+
+
+ org.slf4j
+ slf4j-log4j12
+ 1.7.10
+
+
+