You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@marmotta.apache.org by wi...@apache.org on 2013/02/19 13:52:00 UTC
[27/52] [partial] code contribution,
initial import of relevant modules of LMF-3.0.0-SNAPSHOT based on
revision 4bf944319368 of the default branch at https://code.google.com/p/lmf/
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/ldclient/ldclient-provider-youtube/src/test/java/org/apache/marmotta/ldclient/test/youtube/TestYoutubeProvider.java
----------------------------------------------------------------------
diff --git a/ldclient/ldclient-provider-youtube/src/test/java/org/apache/marmotta/ldclient/test/youtube/TestYoutubeProvider.java b/ldclient/ldclient-provider-youtube/src/test/java/org/apache/marmotta/ldclient/test/youtube/TestYoutubeProvider.java
new file mode 100644
index 0000000..70d166a
--- /dev/null
+++ b/ldclient/ldclient-provider-youtube/src/test/java/org/apache/marmotta/ldclient/test/youtube/TestYoutubeProvider.java
@@ -0,0 +1,188 @@
+/*
+ * Copyright (c) 2013 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.marmotta.ldclient.test.youtube;
+
+import org.apache.commons.io.IOUtils;
+import org.apache.marmotta.ldclient.api.ldclient.LDClientService;
+import org.apache.marmotta.ldclient.model.ClientResponse;
+import org.apache.marmotta.ldclient.services.ldclient.LDClient;
+import org.apache.marmotta.ldclient.test.helper.TestLDClient;
+import org.junit.After;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+import org.openrdf.query.BooleanQuery;
+import org.openrdf.query.QueryLanguage;
+import org.openrdf.repository.RepositoryConnection;
+import org.openrdf.rio.RDFFormat;
+import org.openrdf.rio.Rio;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.InputStream;
+import java.io.StringWriter;
+
+/**
+ * Add file description here!
+ * <p/>
+ * Author: Sebastian Schaffert (sschaffert@apache.org)
+ */
+public class TestYoutubeProvider {
+
+ private LDClientService ldclient;
+
+ private static Logger log = LoggerFactory.getLogger(TestYoutubeProvider.class);
+
+ @Before
+ public void setupClient() {
+ ldclient = new TestLDClient(new LDClient());
+ }
+
+ @After
+ public void shutdownClient() {
+ ldclient.shutdown();
+ }
+
+ /**
+ * This method tests accessing the Youtube Video service via the GData API.
+ *
+ * @throws Exception
+ */
+ @Test
+ public void testVideo() throws Exception {
+
+ String uriLMFVideo = "http://youtu.be/_3BmNcHW4Ew";
+ ClientResponse respLMFVideo = ldclient.retrieveResource(uriLMFVideo);
+
+ RepositoryConnection conLMFVideo = respLMFVideo.getTriples().getConnection();
+ conLMFVideo.begin();
+ Assert.assertTrue(conLMFVideo.size() > 0);
+
+ // run a SPARQL test to see if the returned data is correct
+ InputStream sparql = this.getClass().getResourceAsStream("youtube-lmf-video.sparql");
+ BooleanQuery testLabel = conLMFVideo.prepareBooleanQuery(QueryLanguage.SPARQL, IOUtils.toString(sparql));
+ Assert.assertTrue("SPARQL test query failed", testLabel.evaluate());
+
+ if(log.isDebugEnabled()) {
+ StringWriter out = new StringWriter();
+ conLMFVideo.export(Rio.createWriter(RDFFormat.TURTLE, out));
+ log.debug("DATA:");
+ log.debug(out.toString());
+ }
+
+ conLMFVideo.commit();
+ conLMFVideo.close();
+ }
+
+ /**
+ * This method tests accessing the Youtube Video service via the GData API.
+ *
+ * @throws Exception
+ */
+ @Test
+ public void testVideoPage() throws Exception {
+
+ String uriLMFVideo = "http://www.youtube.com/watch?v=_3BmNcHW4Ew";
+ ClientResponse respLMFVideo = ldclient.retrieveResource(uriLMFVideo);
+
+ RepositoryConnection conLMFVideo = respLMFVideo.getTriples().getConnection();
+ conLMFVideo.begin();
+ Assert.assertTrue(conLMFVideo.size() > 0);
+
+ // run a SPARQL test to see if the returned data is correct
+ InputStream sparql = this.getClass().getResourceAsStream("youtube-lmf-video-page.sparql");
+ BooleanQuery testLabel = conLMFVideo.prepareBooleanQuery(QueryLanguage.SPARQL, IOUtils.toString(sparql));
+ Assert.assertTrue("SPARQL test query failed", testLabel.evaluate());
+
+ if(log.isDebugEnabled()) {
+ StringWriter out = new StringWriter();
+ conLMFVideo.export(Rio.createWriter(RDFFormat.TURTLE, out));
+ log.debug("DATA:");
+ log.debug(out.toString());
+ }
+
+ conLMFVideo.commit();
+ conLMFVideo.close();
+ }
+
+ /**
+ * This method tests accessing the Youtube Video service via the GData API.
+ *
+ * @throws Exception
+ */
+ @Test
+ public void testChannel() throws Exception {
+
+ String uriChannel = "http://www.youtube.com/user/dieSpringer";
+ ClientResponse respChannel = ldclient.retrieveResource(uriChannel);
+
+ RepositoryConnection conChannel = respChannel.getTriples().getConnection();
+ conChannel.begin();
+ Assert.assertTrue(conChannel.size() > 0);
+
+ // run a SPARQL test to see if the returned data is correct
+ InputStream sparql = this.getClass().getResourceAsStream("youtube-channel.sparql");
+ BooleanQuery testLabel = conChannel.prepareBooleanQuery(QueryLanguage.SPARQL, IOUtils.toString(sparql));
+ Assert.assertTrue("SPARQL test query failed", testLabel.evaluate());
+
+
+ if(log.isDebugEnabled()) {
+ StringWriter out = new StringWriter();
+ conChannel.export(Rio.createWriter(RDFFormat.TURTLE, out));
+ log.debug("DATA:");
+ log.debug(out.toString());
+ }
+
+ conChannel.commit();
+ conChannel.close();
+ }
+
+ /**
+ * This method tests accessing the Youtube Video service via the GData API.
+ *
+ * @throws Exception
+ */
+ @Test
+ public void testPlaylist() throws Exception {
+
+ String uriPlaylist = "http://www.youtube.com/playlist?list=FLsrORDOimfQf42SDGJgRY4g";
+ ClientResponse respPlaylist = ldclient.retrieveResource(uriPlaylist);
+
+ RepositoryConnection conPlaylist = respPlaylist.getTriples().getConnection();
+ conPlaylist.begin();
+ Assert.assertTrue(conPlaylist.size() > 0);
+
+ conPlaylist.export(Rio.createWriter(RDFFormat.TURTLE, System.out));
+
+ // run a SPARQL test to see if the returned data is correct
+ InputStream sparql = this.getClass().getResourceAsStream("youtube-playlist.sparql");
+ BooleanQuery testLabel = conPlaylist.prepareBooleanQuery(QueryLanguage.SPARQL, IOUtils.toString(sparql));
+ Assert.assertTrue("SPARQL test query failed", testLabel.evaluate());
+
+
+ if(log.isDebugEnabled()) {
+ StringWriter out = new StringWriter();
+ conPlaylist.export(Rio.createWriter(RDFFormat.TURTLE, out));
+ log.debug("DATA:");
+ log.debug(out.toString());
+ }
+
+ conPlaylist.commit();
+ conPlaylist.close();
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-channel.sparql
----------------------------------------------------------------------
diff --git a/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-channel.sparql b/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-channel.sparql
new file mode 100644
index 0000000..88640a6
--- /dev/null
+++ b/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-channel.sparql
@@ -0,0 +1,8 @@
+PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+PREFIX ma: <http://www.w3.org/ns/ma-ont#>
+ASK {
+ <http://www.youtube.com/user/dieSpringer> ma:collectionName "Uploads by dieSpringer" .
+ <http://www.youtube.com/user/dieSpringer> ma:hasMember <http://gdata.youtube.com/feeds/api/videos/hIA1RU3HpXA> .
+ <http://www.youtube.com/user/dieSpringer> rdf:type ma:Collection
+}
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-lmf-video-page.sparql
----------------------------------------------------------------------
diff --git a/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-lmf-video-page.sparql b/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-lmf-video-page.sparql
new file mode 100644
index 0000000..97fab6b
--- /dev/null
+++ b/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-lmf-video-page.sparql
@@ -0,0 +1,8 @@
+PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+PREFIX ma: <http://www.w3.org/ns/ma-ont#>
+PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+ASK {
+ <http://www.youtube.com/watch?v=_3BmNcHW4Ew> foaf:primaryTopic <http://youtu.be/_3BmNcHW4Ew> .
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-lmf-video.sparql
----------------------------------------------------------------------
diff --git a/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-lmf-video.sparql b/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-lmf-video.sparql
new file mode 100644
index 0000000..d41adb0
--- /dev/null
+++ b/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-lmf-video.sparql
@@ -0,0 +1,7 @@
+PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+PREFIX ma: <http://www.w3.org/ns/ma-ont#>
+ASK {
+ <http://youtu.be/_3BmNcHW4Ew> ma:title "LMF Screencast: Publishing Legacy Data as Linked Data" .
+ <http://youtu.be/_3BmNcHW4Ew> rdf:type ma:VideoTrack
+}
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-playlist.sparql
----------------------------------------------------------------------
diff --git a/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-playlist.sparql b/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-playlist.sparql
new file mode 100644
index 0000000..550ae0b
--- /dev/null
+++ b/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-playlist.sparql
@@ -0,0 +1,8 @@
+PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+PREFIX ma: <http://www.w3.org/ns/ma-ont#>
+ASK {
+ <http://www.youtube.com/playlist?list=FLsrORDOimfQf42SDGJgRY4g> ma:collectionName "Favorite videos" .
+ <http://www.youtube.com/playlist?list=FLsrORDOimfQf42SDGJgRY4g> ma:hasMember <http://gdata.youtube.com/feeds/api/videos/fUEdwKX-Dw4> .
+ <http://www.youtube.com/playlist?list=FLsrORDOimfQf42SDGJgRY4g> rdf:type ma:Collection
+}
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/ldclient/pom.xml
----------------------------------------------------------------------
diff --git a/ldclient/pom.xml b/ldclient/pom.xml
new file mode 100644
index 0000000..3de5707
--- /dev/null
+++ b/ldclient/pom.xml
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Copyright (c) 2013 Salzburg Research.
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<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/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-parent</artifactId>
+ <version>3.0.0-SNAPSHOT</version>
+ <relativePath>../</relativePath>
+ </parent>
+
+ <artifactId>ldclient-parent</artifactId>
+ <name>LDClient: Parent</name>
+ <packaging>pom</packaging>
+
+ <description>
+ Linked Data Client: Parent POM
+ </description>
+
+ <developers>
+ <developer>
+ <name>Sebastian Schaffert</name>
+ <email>sschaffert@apache.org</email>
+ <organization>Apache Software Foundation</organization>
+ </developer>
+ <developer>
+ <name>Jakob Frank</name>
+ <email>jfrank@apache.org</email>
+ <organization>Apache Software Foundation</organization>
+ </developer>
+ </developers>
+
+ <build>
+ <pluginManagement>
+ <plugins>
+ <plugin> <!-- generate JRebel Configuration -->
+ <groupId>org.zeroturnaround</groupId>
+ <artifactId>jrebel-maven-plugin</artifactId>
+ <configuration>
+ <relativePath>../../</relativePath>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>ldclient-core</artifactId>
+ <version>${project.version}</version>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
+ <modules>
+ <module>ldclient-api</module>
+ <module>ldclient-core</module>
+ <module>ldclient-provider-rdf</module>
+ <module>ldclient-provider-rdfa</module>
+ <module>ldclient-provider-xml</module>
+ <module>ldclient-provider-html</module>
+ <module>ldclient-provider-youtube</module>
+ <module>ldclient-provider-vimeo</module>
+ <module>ldclient-provider-ldap</module>
+ <module>ldclient-provider-mediawiki</module>
+ <module>ldclient-provider-phpbb</module>
+ </modules>
+
+</project>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/.project
----------------------------------------------------------------------
diff --git a/lmf-archetypes/.project b/lmf-archetypes/.project
new file mode 100644
index 0000000..63fb1ca
--- /dev/null
+++ b/lmf-archetypes/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>lmf-archetypes</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ </natures>
+</projectDescription>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/.settings/org.eclipse.m2e.core.prefs
----------------------------------------------------------------------
diff --git a/lmf-archetypes/.settings/org.eclipse.m2e.core.prefs b/lmf-archetypes/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/lmf-archetypes/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/.project
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/.project b/lmf-archetypes/lmf-archetype-module/.project
new file mode 100644
index 0000000..e2da34f
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>lmf-archetype-module</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ </natures>
+</projectDescription>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/.settings/org.eclipse.m2e.core.prefs
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/.settings/org.eclipse.m2e.core.prefs b/lmf-archetypes/lmf-archetype-module/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/pom.xml
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/pom.xml b/lmf-archetypes/lmf-archetype-module/pom.xml
new file mode 100644
index 0000000..0da6f5e
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/pom.xml
@@ -0,0 +1,154 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Copyright (c) 2013 Salzburg Research.
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<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/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-archetypes</artifactId>
+ <version>3.0.0-SNAPSHOT</version>
+ <relativePath>../</relativePath>
+ </parent>
+
+ <artifactId>lmf-archetype-module</artifactId>
+ <packaging>maven-archetype</packaging>
+
+ <name>LMF Archetype: Module</name>
+ <description>This Maven Archetype allows creating the basic structure for an LMF Module</description>
+
+ <build>
+ <extensions>
+ <extension>
+ <groupId>org.apache.maven.wagon</groupId>
+ <artifactId>wagon-ssh-external</artifactId>
+ <version>1.0-beta-6</version>
+ </extension>
+ <extension>
+ <groupId>org.apache.maven.archetype</groupId>
+ <artifactId>archetype-packaging</artifactId>
+ <version>2.2</version>
+ </extension>
+ </extensions>
+
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <artifactId>maven-archetype-plugin</artifactId>
+ <version>2.2</version>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-site-plugin</artifactId>
+ <configuration>
+ <skip>true</skip>
+ <skipDeploy>true</skipDeploy>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+
+ <url>https://code.google.com/p/lmf</url>
+
+ <developers>
+ <developer>
+ <name>Sebastian Schaffert</name>
+ <email>sebastian.schaffert@salzburgresearch.at</email>
+ <organization>Salzburg Research</organization>
+ </developer>
+ <developer>
+ <name>Thomas Kurz</name>
+ <email>thomas.kurz@salzburgresearch.at</email>
+ <organization>Salzburg Research</organization>
+ </developer>
+ <developer>
+ <name>Jakob Frank</name>
+ <email>jakob.frank@salzburgresearch.at</email>
+ <organization>Salzburg Research</organization>
+ </developer>
+ <developer>
+ <name>Sergio Fernández</name>
+ <email>sergio.fernandez@salzburgresearch.at</email>
+ <organization>Salzburg Research</organization>
+ </developer>
+ <developer>
+ <name>Dietmar Glachs</name>
+ <email>dietmar.glachs@salzburgresearch.at</email>
+ <organization>Salzburg Research</organization>
+ </developer>
+ </developers>
+
+ <licenses>
+ <license>
+ <name>Apache Software License, Version 2.0</name>
+ <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+ <distribution>repo</distribution>
+ <comments>A business-friendly OSS license</comments>
+ </license>
+ </licenses>
+
+ <scm>
+ <connection>scm:hg:https://code.google.com/p/lmf</connection>
+ <developerConnection>scm:hg:https://code.google.com/p/lmf</developerConnection>
+ <url>https://code.google.com/p/lmf</url>
+ <tag>HEAD</tag>
+ </scm>
+
+ <distributionManagement>
+ <repository>
+ <id>snml.releases</id>
+ <name>Salzburg NewMediaLab Repository</name>
+ <url>http://devel.kiwi-project.eu:8080/nexus/content/repositories/releases/</url>
+ </repository>
+ <snapshotRepository>
+ <id>snml.snapshots</id>
+ <name>Salzburg NewMediaLab Repository</name>
+ <url>http://devel.kiwi-project.eu:8080/nexus/content/repositories/snapshots/</url>
+ </snapshotRepository>
+ </distributionManagement>
+
+ <profiles>
+ <profile>
+ <id>sign</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-gpg-plugin</artifactId>
+ <version>1.4</version>
+ <executions>
+ <execution>
+ <id>sign-artifacts</id>
+ <phase>verify</phase>
+ <goals>
+ <goal>sign</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+
+</project>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/META-INF/maven/archetype-metadata.xml
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/META-INF/maven/archetype-metadata.xml b/lmf-archetypes/lmf-archetype-module/src/main/resources/META-INF/maven/archetype-metadata.xml
new file mode 100644
index 0000000..3d94c31
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/META-INF/maven/archetype-metadata.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Copyright (C) 2013 Salzburg Research.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<archetype-descriptor xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0 http://maven.apache.org/xsd/archetype-descriptor-1.0.0.xsd
+http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0 " name="LMF Module"
+ xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
+ <requiredProperties>
+ <requiredProperty key="moduleKey" />
+ <requiredProperty key="moduleName" />
+ </requiredProperties>
+
+ <fileSets>
+ <fileSet filtered="true" packaged="true" encoding="UTF-8">
+ <directory>src/main/java</directory>
+ <includes>
+ <include>**/*.java</include>
+ </includes>
+ </fileSet>
+ <fileSet filtered="true" packaged="true" encoding="UTF-8">
+ <directory>src/test/java</directory>
+ <includes>
+ <include>**/*.java</include>
+ </includes>
+ </fileSet>
+ <fileSet filtered="true" encoding="UTF-8">
+ <directory>src/main/resources</directory>
+ <includes>
+ <include>**/*.html</include>
+ <include>**/*.xml</include>
+ <include>**/*.properties</include>
+ </includes>
+ </fileSet>
+ <fileSet encoding="UTF-8">
+ <directory>src/main/resources</directory>
+ <includes>
+ <include>**/*.png</include>
+ </includes>
+ </fileSet>
+ </fileSets>
+</archetype-descriptor>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/pom.xml
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/pom.xml b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/pom.xml
new file mode 100644
index 0000000..e533ad4
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/pom.xml
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-parent</artifactId>
+ <version>2.6.0</version>
+ </parent>
+
+ <groupId>${groupId}</groupId>
+ <artifactId>${artifactId}</artifactId>
+
+ <name>LMF Module: ${moduleName}</name>
+ <description></description>
+ <version>${version}</version>
+
+ <repositories>
+ <repository>
+ <id>snml</id>
+ <name>Salzburg NewMediaLab Repository</name>
+ <url>http://devel.kiwi-project.eu:8080/nexus/content/groups/public/</url>
+ </repository>
+ </repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>snml</id>
+ <name>Salzburg NewMediaLab Repository</name>
+ <url>http://devel.kiwi-project.eu:8080/nexus/content/groups/public/</url>
+ </pluginRepository>
+ </pluginRepositories>
+
+ <dependencies>
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-core</artifactId>
+ <version>2.6.0</version>
+ </dependency>
+
+ <!-- Test dependencies -->
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-core</artifactId>
+ <version>2.6.0</version>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.mortbay.jetty</groupId>
+ <artifactId>jetty-embedded</artifactId>
+ <version>6.1.26</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.weld.se</groupId>
+ <artifactId>weld-se-core</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.h2database</groupId>
+ <artifactId>h2</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>com.jayway.restassured</groupId>
+ <artifactId>rest-assured</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hamcrest</groupId>
+ <artifactId>hamcrest-library</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hamcrest</groupId>
+ <artifactId>hamcrest-core</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.code.tempus-fugit</groupId>
+ <artifactId>tempus-fugit</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.googlecode.jatl</groupId>
+ <artifactId>jatl</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+
+ </dependencies>
+
+</project>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/api/MyService.java
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/api/MyService.java b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/api/MyService.java
new file mode 100644
index 0000000..aab70e7
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/api/MyService.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (C) 2013 Salzburg Research.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package ${package}.api;
+
+public interface MyService {
+
+ /**
+ * Does that for a given number of times
+ *
+ * @param i
+ * number of iterations to {@link #doThat()}
+ *
+ * @see #doThat()
+ */
+ public void doThis(int i);
+
+ /**
+ * Does that.
+ */
+ public void doThat();
+
+ /**
+ * Echoes <code>"Hello <name>"</code>.
+ *
+ * @param name
+ * the name to echo
+ * @return <code>"Hello <name>"</code>
+ */
+ public String helloWorld(String name);
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/services/MyServiceImpl.java
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/services/MyServiceImpl.java b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/services/MyServiceImpl.java
new file mode 100644
index 0000000..144403a
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/services/MyServiceImpl.java
@@ -0,0 +1,54 @@
+/**
+ * Copyright (C) 2013 Salzburg Research.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package ${package}.services;
+
+import org.slf4j.Logger;
+
+import javax.enterprise.context.ApplicationScoped;
+import javax.inject.Inject;
+
+import ${package}.api.MyService;
+
+/**
+ * Default Implementation of {@link MyService}
+ */
+@ApplicationScoped
+public class MyServiceImpl implements MyService {
+
+ @Inject
+ private Logger log;
+
+ @Override
+ public void doThis(int i) {
+ log.debug("Doing that for {} times...", i);
+ for (int j = 0; j < i; j++) {
+ doThat();
+ }
+ log.debug("Did this.");
+ }
+
+ @Override
+ public void doThat() {
+ log.debug("Doing THAT");
+ }
+
+ @Override
+ public String helloWorld(String name) {
+ log.debug("Greeting {}", name);
+ return "Hello " + name;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/webservices/MyWebService.java
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/webservices/MyWebService.java b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/webservices/MyWebService.java
new file mode 100644
index 0000000..0684d35
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/webservices/MyWebService.java
@@ -0,0 +1,54 @@
+/**
+ * Copyright (C) 2013 Salzburg Research.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package ${package}.webservices;
+
+import kiwi.core.model.Constants;
+import org.apache.commons.lang.StringUtils;
+
+import javax.enterprise.context.ApplicationScoped;
+import javax.inject.Inject;
+import javax.ws.rs.*;
+import javax.ws.rs.core.Response;
+import javax.ws.rs.core.Response.Status;
+
+import ${package}.api.MyService;
+
+@Path("/${moduleKey}")
+@ApplicationScoped
+public class MyWebService {
+
+ @Inject
+ private MyService myService;
+
+ @GET
+ @Produces(Constants.MIME_TYPE_HTML)
+ public Response hello(@QueryParam("name") String name) {
+ if (StringUtils.isEmpty(name)) {
+ // No name given? Invalid request.
+ return Response.status(Status.BAD_REQUEST).entity("Missing Parameter 'name'").build();
+ }
+
+ // Return the greeting.
+ return Response.ok(myService.helloWorld(name)).build();
+ }
+
+ @POST
+ public Response doThis(@QueryParam("turns") @DefaultValue("2") int turns) {
+ myService.doThis(turns);
+ return Response.ok().build();
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/META-INF/beans.xml
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/META-INF/beans.xml b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/META-INF/beans.xml
new file mode 100644
index 0000000..e75d400
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/META-INF/beans.xml
@@ -0,0 +1,29 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Copyright (C) 2013 Salzburg Research.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<beans
+ xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="
+ http://java.sun.com/xml/ns/javaee
+ http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
+
+</beans>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/config-defaults.properties
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/config-defaults.properties b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/config-defaults.properties
new file mode 100644
index 0000000..d85b91c
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/config-defaults.properties
@@ -0,0 +1,22 @@
+#
+# Copyright (C) 2013 Salzburg Research.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+${symbol_pound} configure module configuration options and default values here and add descriptions to config-descriptions.properties
+
+${moduleKey}.enabled = true
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/config-descriptions.properties
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/config-descriptions.properties b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/config-descriptions.properties
new file mode 100644
index 0000000..0403af9
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/config-descriptions.properties
@@ -0,0 +1,25 @@
+#
+# Copyright (C) 2013 Salzburg Research.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+${symbol_pound} describe module configuration options here (textual description and type)
+
+${moduleKey}.enabled.description = this is a demo property of ${moduleName}
+${moduleKey}.enabled.type = java.lang.Boolean
+
+
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/kiwi-module.properties
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/kiwi-module.properties b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/kiwi-module.properties
new file mode 100644
index 0000000..a0bb797
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/kiwi-module.properties
@@ -0,0 +1,49 @@
+#
+# Copyright (C) 2013 Salzburg Research.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+${symbol_pound}
+${symbol_pound} Copyright (c) 2012 Salzburg Research.
+${symbol_pound}
+${symbol_pound} Licensed under the Apache License, Version 2.0 (the "License");
+${symbol_pound} you may not use this file except in compliance with the License.
+${symbol_pound} You may obtain a copy of the License at
+${symbol_pound}
+${symbol_pound} http://www.apache.org/licenses/LICENSE-2.0
+${symbol_pound}
+${symbol_pound} Unless required by applicable law or agreed to in writing, software
+${symbol_pound} distributed under the License is distributed on an "AS IS" BASIS,
+${symbol_pound} WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+${symbol_pound} See the License for the specific language governing permissions and
+${symbol_pound} limitations under the License.
+${symbol_pound}
+name=${moduleName}
+subtitle = ${moduleName}
+weight=70
+
+baseurl=/${moduleKey}
+
+webservices=${package}.webservices.MyWebService
+
+icon_small = /admin/img/clock_small.png
+
+
+${symbol_pound}entities=${symbol_escape}
+${symbol_pound} ${package}.model.Model
+
+adminpages=/admin/about.html,/admin/configuration.html
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/about.html
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/about.html b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/about.html
new file mode 100644
index 0000000..5e57eee
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/about.html
@@ -0,0 +1,56 @@
+<!--
+
+ Copyright (C) 2013 Salzburg Research.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<!--
+ ~ Copyright (c) 2008-2012 Salzburg Research.
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+<html>
+<head>
+ <!--${symbol_pound}${symbol_pound}${symbol_pound}BEGIN_HEAD${symbol_pound}${symbol_pound}${symbol_pound}-->
+ <title>About ${moduleName}</title>
+ <link rel="stylesheet" type="text/css" href="../../core/public/style/center.css"/>
+ <!--${symbol_pound}${symbol_pound}${symbol_pound}END_HEAD${symbol_pound}${symbol_pound}${symbol_pound}-->
+</head>
+<body>
+<!--${symbol_pound}${symbol_pound}${symbol_pound}BEGIN_CONTENT${symbol_pound}${symbol_pound}${symbol_pound}-->
+<h1><a id="Introduction"></a>Introduction on ${moduleName}<a class="section_anchor" href="${symbol_pound}Introduction"></a></h1>
+
+<p>
+ ${moduleName} aims at...
+</p>
+
+
+
+
+<!--${symbol_pound}${symbol_pound}${symbol_pound}END_CONTENT${symbol_pound}${symbol_pound}${symbol_pound}-->
+</body>
+</html>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/configuration.html
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/configuration.html b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/configuration.html
new file mode 100644
index 0000000..1c491fd
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/configuration.html
@@ -0,0 +1,83 @@
+<!--
+
+ Copyright (C) 2013 Salzburg Research.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<!--
+ ~ Copyright (c) 2012 Salzburg Research.
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+<html>
+<head>
+<!--${symbol_pound}${symbol_pound}${symbol_pound}BEGIN_HEAD${symbol_pound}${symbol_pound}${symbol_pound}-->
+ <title>${moduleName} Configuration</title>
+ <script type="text/javascript" src="http://code.jquery.com/jquery-1.6.2.min.js"></script>
+ <script type="text/javascript" src="../../core/public/js/widgets/property_config.js"></script>
+ <script type="text/javascript">
+ jQuery(document).ready(function(){
+ var settings = {
+ host: _SERVER_URL,
+ anker_name: '${moduleKey}',
+ title: 'Versioning Properties <span style="font-size:12px">(parameter name MUST start with ${symbol_escape}'${moduleKey}.${symbol_escape}')</small>',
+ loading_img: '../../core/public/img/ajax-loader_small.gif',
+ blacklist_keys:[],
+ toplink:true,
+ prefix:'${moduleKey}'
+ }
+ ${symbol_dollar}('${symbol_pound}lmf_configurator').lmf_configurator(settings);
+ });
+ </script>
+ <link rel="stylesheet" type="text/css" href="../../core/public/style/center.css"/>
+ <style type="text/css">
+ h2 {
+ margin: 10px 0;
+ }
+ </style>
+<!--${symbol_pound}${symbol_pound}${symbol_pound}END_HEAD${symbol_pound}${symbol_pound}${symbol_pound}-->
+</head>
+<body>
+<div id="main">
+<div id="contents">
+<!--${symbol_pound}${symbol_pound}${symbol_pound}BEGIN_CONTENT${symbol_pound}${symbol_pound}${symbol_pound}-->
+<h1>${moduleName} Configuration</h1>
+ <p>
+ Here you can configure the LMF ${moduleName} Services.<br/>
+ The configuration contains:
+ </p>
+ <ul>
+ <li><a href="${symbol_pound}lmf_configurator">Generic Parameter Configuration</a></li>
+ </ul>
+ <div id="lmf_configurator">
+ <h4>Loading configurator</h4>
+ </div>
+<!--${symbol_pound}${symbol_pound}${symbol_pound}END_CONTENT${symbol_pound}${symbol_pound}${symbol_pound}-->
+</div>
+</div>
+</body>
+</html>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/img/clock_small.png
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/img/clock_small.png b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/img/clock_small.png
new file mode 100644
index 0000000..e34f22f
Binary files /dev/null and b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/img/clock_small.png differ
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/test/java/services/MyServiceTest.java
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/test/java/services/MyServiceTest.java b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/test/java/services/MyServiceTest.java
new file mode 100644
index 0000000..d93d4b6
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/test/java/services/MyServiceTest.java
@@ -0,0 +1,46 @@
+package ${package}.services;
+
+import junit.framework.Assert;
+import kiwi.core.test.base.EmbeddedLMF;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import ${package}.api.MyService;
+
+public class MyServiceTest {
+
+ private static EmbeddedLMF lmf;
+ private static MyService myService;
+
+ @BeforeClass
+ public static void setUp() {
+ lmf = new EmbeddedLMF();
+ myService = lmf.getService(MyService.class);
+ }
+
+ @Test
+ public void testDoThis() {
+
+ }
+
+ @Test
+ public void testDoThat() {
+
+ }
+
+ @Test
+ public void testHelloWorld() {
+ Assert.assertEquals("Hello You", myService.helloWorld("You"));
+ Assert.assertEquals("Hello Steve", myService.helloWorld("Steve"));
+ Assert.assertEquals("Hello Tom", myService.helloWorld("Tom"));
+ Assert.assertEquals("Hello Ron", myService.helloWorld("Ron"));
+ Assert.assertEquals("Hello Wüterich", myService.helloWorld("Wüterich"));
+ }
+
+ @AfterClass
+ public static void tearDown() {
+ lmf.shutdown();
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/test/java/webservices/MyWebServiceTest.java
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/test/java/webservices/MyWebServiceTest.java b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/test/java/webservices/MyWebServiceTest.java
new file mode 100644
index 0000000..5fd7b51
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/test/java/webservices/MyWebServiceTest.java
@@ -0,0 +1,85 @@
+package ${package}.webservices;
+
+import static com.jayway.restassured.RestAssured.expect;
+import static com.jayway.restassured.RestAssured.given;
+import static org.hamcrest.Matchers.containsString;
+
+import com.jayway.restassured.RestAssured;
+import com.jayway.restassured.config.DecoderConfig;
+import com.jayway.restassured.config.RestAssuredConfig;
+import com.jayway.restassured.http.ContentType;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import kiwi.core.test.base.JettyLMF;
+
+public class MyWebServiceTest {
+ private static JettyLMF lmf;
+
+ @BeforeClass
+ public static void beforeClass() {
+ lmf = new JettyLMF("/${moduleKey}-test", 9090, MyWebService.class);
+
+ RestAssured.baseURI = "http://localhost";
+ RestAssured.port = 9090;
+ RestAssured.basePath = "/${moduleKey}-test";
+ RestAssured.config = RestAssuredConfig.newConfig().decoderConfig(DecoderConfig.decoderConfig().defaultContentCharset("UTF-8"));
+ }
+
+ @AfterClass
+ public static void afterClass() {
+ if (lmf != null) {
+ lmf.shutdown();
+ }
+ }
+
+ @Test
+ public void testHello() {
+ /*
+ * GET ?name=<xxx>
+ */
+ given()
+ .param("name", "Steve")
+ .expect()
+ .content(containsString("Hello Steve"))
+ .when()
+ .get("/${moduleKey}");
+
+ given()
+ .contentType(ContentType.HTML)
+ .param("name", "Jürgen")
+ .expect()
+ .content(containsString("Hello Jürgen"))
+ .when()
+ .get("/${moduleKey}");
+
+ expect()
+ .statusCode(400)
+ .when()
+ .get("/${moduleKey}");
+ }
+
+ @Test
+ public void testDoThis() {
+ /*
+ * POST ?turns=i default 2
+ */
+ given()
+ .param("turns", 1)
+ .expect().statusCode(200)
+ .when()
+ .post("/${moduleKey}");
+
+ given()
+ .param("turns", 10)
+ .expect().statusCode(200)
+ .when()
+ .post("/${moduleKey}");
+
+ expect().statusCode(200)
+ .when()
+ .post("/${moduleKey}");
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/test/resources/projects/basic/archetype.properties
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/test/resources/projects/basic/archetype.properties b/lmf-archetypes/lmf-archetype-module/src/test/resources/projects/basic/archetype.properties
new file mode 100644
index 0000000..0cecd4d
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/test/resources/projects/basic/archetype.properties
@@ -0,0 +1,7 @@
+#Wed Oct 17 14:53:58 CEST 2012
+package=it.pkg
+version=0.1-SNAPSHOT
+groupId=archetype.it
+artifactId=basic
+moduleKey=mymodule
+moduleName=My Module
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/test/resources/projects/basic/goal.txt
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/test/resources/projects/basic/goal.txt b/lmf-archetypes/lmf-archetype-module/src/test/resources/projects/basic/goal.txt
new file mode 100644
index 0000000..e69de29
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/.project
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/.project b/lmf-archetypes/lmf-archetype-webapp/.project
new file mode 100644
index 0000000..3837ede
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>lmf-archetype-webapp</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ </natures>
+</projectDescription>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/.settings/org.eclipse.m2e.core.prefs
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/.settings/org.eclipse.m2e.core.prefs b/lmf-archetypes/lmf-archetype-webapp/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/pom.xml
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/pom.xml b/lmf-archetypes/lmf-archetype-webapp/pom.xml
new file mode 100644
index 0000000..147c35f
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/pom.xml
@@ -0,0 +1,155 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Copyright (c) 2013 Salzburg Research.
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<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/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-archetypes</artifactId>
+ <version>3.0.0-SNAPSHOT</version>
+ <relativePath>../</relativePath>
+ </parent>
+
+
+ <artifactId>lmf-archetype-webapp</artifactId>
+ <packaging>maven-archetype</packaging>
+
+ <name>LMF Archetype: Web Application</name>
+
+ <build>
+ <extensions>
+ <extension>
+ <groupId>org.apache.maven.wagon</groupId>
+ <artifactId>wagon-ssh-external</artifactId>
+ <version>1.0-beta-6</version>
+ </extension>
+ <extension>
+ <groupId>org.apache.maven.archetype</groupId>
+ <artifactId>archetype-packaging</artifactId>
+ <version>2.2</version>
+ </extension>
+ </extensions>
+
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <artifactId>maven-archetype-plugin</artifactId>
+ <version>2.2</version>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-site-plugin</artifactId>
+ <configuration>
+ <skip>true</skip>
+ <skipDeploy>true</skipDeploy>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <description>Web Application bundle (WAR file) containing the complete Linked Media Framework</description>
+
+ <url>https://code.google.com/p/lmf/lmf-webapp/</url>
+
+ <developers>
+ <developer>
+ <name>Sebastian Schaffert</name>
+ <email>sebastian.schaffert@salzburgresearch.at</email>
+ <organization>Salzburg Research</organization>
+ </developer>
+ <developer>
+ <name>Thomas Kurz</name>
+ <email>thomas.kurz@salzburgresearch.at</email>
+ <organization>Salzburg Research</organization>
+ </developer>
+ <developer>
+ <name>Jakob Frank</name>
+ <email>jakob.frank@salzburgresearch.at</email>
+ <organization>Salzburg Research</organization>
+ </developer>
+ <developer>
+ <name>Sergio Fernández</name>
+ <email>sergio.fernandez@salzburgresearch.at</email>
+ <organization>Salzburg Research</organization>
+ </developer>
+ <developer>
+ <name>Dietmar Glachs</name>
+ <email>dietmar.glachs@salzburgresearch.at</email>
+ <organization>Salzburg Research</organization>
+ </developer>
+ </developers>
+
+ <licenses>
+ <license>
+ <name>Apache Software License, Version 2.0</name>
+ <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+ <distribution>repo</distribution>
+ <comments>A business-friendly OSS license</comments>
+ </license>
+ </licenses>
+
+ <scm>
+ <connection>scm:hg:https://code.google.com/p/lmf/lmf-webapp/</connection>
+ <developerConnection>scm:hg:https://code.google.com/p/lmf/lmf-webapp/</developerConnection>
+ <url>https://code.google.com/p/lmf/lmf-webapp/</url>
+ <tag>HEAD</tag>
+ </scm>
+
+ <distributionManagement>
+ <repository>
+ <id>snml.releases</id>
+ <name>Salzburg NewMediaLab Repository</name>
+ <url>http://devel.kiwi-project.eu:8080/nexus/content/repositories/releases/</url>
+ </repository>
+ <snapshotRepository>
+ <id>snml.snapshots</id>
+ <name>Salzburg NewMediaLab Repository</name>
+ <url>http://devel.kiwi-project.eu:8080/nexus/content/repositories/snapshots/</url>
+ </snapshotRepository>
+ </distributionManagement>
+
+ <profiles>
+ <profile>
+ <id>sign</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-gpg-plugin</artifactId>
+ <version>1.4</version>
+ <executions>
+ <execution>
+ <id>sign-artifacts</id>
+ <phase>verify</phase>
+ <goals>
+ <goal>sign</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+
+</project>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/META-INF/maven/archetype-metadata.xml
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/META-INF/maven/archetype-metadata.xml b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/META-INF/maven/archetype-metadata.xml
new file mode 100644
index 0000000..de2e4cd
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/META-INF/maven/archetype-metadata.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Copyright (C) 2013 Salzburg Research.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<archetype-descriptor xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0 http://maven.apache.org/xsd/archetype-descriptor-1.0.0.xsd" name="lmf-webapp"
+ xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <fileSets>
+ <fileSet filtered="true" encoding="UTF-8">
+ <directory>src/main/webapp</directory>
+ <includes>
+ <include>**/*.jsp</include>
+ <include>**/*.html</include>
+ <include>**/*.xml</include>
+ <include>**/*.properties</include>
+ </includes>
+ </fileSet>
+ <fileSet filtered="true" encoding="UTF-8">
+ <directory>src/main/resources</directory>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.properties</include>
+ </includes>
+ </fileSet>
+ <fileSet encoding="UTF-8">
+ <directory>src/main/webapp</directory>
+ <includes>
+ <include>**/*.xsl</include>
+ <include>**/*.png</include>
+ <include>**/*.js</include>
+ <include>**/*.ftl</include>
+ <include>**/*.ico</include>
+ <include>**/*.css</include>
+ </includes>
+ </fileSet>
+ <fileSet filtered="true" encoding="UTF-8">
+ <directory>src/test/resources</directory>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.properties</include>
+ </includes>
+ </fileSet>
+ <fileSet filtered="true" encoding="UTF-8">
+ <directory>src/test</directory>
+ <includes>
+ <include>**/*.groovy</include>
+ </includes>
+ </fileSet>
+ </fileSets>
+</archetype-descriptor>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/pom.xml
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/pom.xml b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/pom.xml
new file mode 100644
index 0000000..d18f138
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/pom.xml
@@ -0,0 +1,289 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-parent</artifactId>
+ <version>2.6.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>${groupId}</groupId>
+ <artifactId>${artifactId}</artifactId>
+ <packaging>war</packaging>
+
+ <name>LMF Web Application</name>
+ <description>Web Application bundle (WAR file) containing the complete Linked Media Framework</description>
+ <version>${version}</version>
+
+ <repositories>
+ <repository>
+ <id>snml</id>
+ <name>Salzburg NewMediaLab Repository</name>
+ <url>http://devel.kiwi-project.eu:8080/nexus/content/groups/public/</url>
+ </repository>
+ </repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>snml</id>
+ <name>Salzburg NewMediaLab Repository</name>
+ <url>http://devel.kiwi-project.eu:8080/nexus/content/groups/public/</url>
+ </pluginRepository>
+ </pluginRepositories>
+
+ <properties>
+ <!-- these are used for the goals tomcat6/7:run or jetty:run -->
+ <lmf.home>/tmp/lmf</lmf.home>
+ <lmf.context>/</lmf.context>
+ <lmf.port>8080</lmf.port>
+ <lmf.version>2.6.0</lmf.version>
+ </properties>
+
+ <build>
+ <finalName>LMF</finalName>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <artifactId>maven-war-plugin</artifactId>
+ <version>2.3</version>
+ <configuration>
+ <archive>
+ <manifest>
+ <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
+ <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
+ </manifest>
+ </archive>
+ <archiveClasses>false</archiveClasses>
+ </configuration>
+ </plugin>
+ <plugin> <!-- generate JRebel Configuration -->
+ <groupId>org.zeroturnaround</groupId>
+ <artifactId>jrebel-maven-plugin</artifactId>
+ <configuration>
+ <relativePath>../</relativePath>
+ <rootPath>${rebel.root}</rootPath>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <version>2.7</version>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.tomcat.maven</groupId>
+ <artifactId>tomcat6-maven-plugin</artifactId>
+ <version>2.0</version>
+ <configuration>
+ <path>${lmf.context}</path>
+ <port>${lmf.port}</port>
+ <systemProperties>
+ <kiwi.home>${lmf.home}</kiwi.home>
+ </systemProperties>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.tomcat.maven</groupId>
+ <artifactId>tomcat7-maven-plugin</artifactId>
+ <version>2.0</version>
+ <configuration>
+ <path>${lmf.context}</path>
+ <port>${lmf.port}</port>
+ <systemProperties>
+ <kiwi.home>${lmf.home}</kiwi.home>
+ </systemProperties>
+ <!-- <contextReloadable>true</contextReloadable> -->
+ <!-- <backgroundProcessorDelay>10</backgroundProcessorDelay> -->
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.mortbay.jetty</groupId>
+ <artifactId>maven-jetty-plugin</artifactId>
+ <version>6.1.10</version>
+ <configuration>
+ <contextPath>${lmf.context}</contextPath>
+ <connectors>
+ <connector
+ implementation="org.mortbay.jetty.nio.SelectChannelConnector">
+ <port>${lmf.port}</port>
+ </connector>
+ </connectors>
+ <systemProperties>
+ <systemProperty>
+ <name>kiwi.home</name>
+ <value>${lmf.home}</value>
+ </systemProperty>
+ </systemProperties>
+ <stopKey>foo</stopKey>
+ <stopPort>9999</stopPort>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>true</filtering>
+ </resource>
+ </resources>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.tomcat.maven</groupId>
+ <artifactId>tomcat6-maven-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.tomcat.maven</groupId>
+ <artifactId>tomcat7-maven-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>org.mortbay.jetty</groupId>
+ <artifactId>maven-jetty-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <artifactId>maven-dependency-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+
+ <profiles>
+ <profile>
+ <id>cleanall</id>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-clean-plugin</artifactId>
+ <version>2.5</version>
+ <configuration>
+ <filesets>
+ <fileset>
+ <directory>${lmf.home}</directory>
+ <followSymlinks>true</followSymlinks>
+ </fileset>
+ </filesets>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+
+ <dependencies>
+ <!-- LMF Modules, include the ones needed by the application -->
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-core</artifactId>
+ <version>${lmf.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-ldpath</artifactId>
+ <version>${lmf.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-ldcache</artifactId>
+ <version>${lmf.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-reasoner</artifactId>
+ <version>${lmf.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-sparql</artifactId>
+ <version>${lmf.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-skos</artifactId>
+ <version>${lmf.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-search</artifactId>
+ <version>${lmf.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-security</artifactId>
+ <version>${lmf.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-scheduler</artifactId>
+ <version>${lmf.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-versioning</artifactId>
+ <version>${lmf.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-stanbol</artifactId>
+ <version>${lmf.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-enhancer</artifactId>
+ <version>${lmf.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-geo</artifactId>
+ <version>${lmf.version}</version>
+ </dependency>
+ <!--
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-templating</artifactId>
+ <version>${lmf.version}</version>
+ </dependency>
+ -->
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-user</artifactId>
+ <version>${lmf.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-social</artifactId>
+ <version>${lmf.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>at.newmedialab.lmf</groupId>
+ <artifactId>lmf-demo-books</artifactId>
+ <version>${lmf.version}</version>
+ </dependency>
+
+ <!-- Servlet / CDI Environment -->
+ <dependency>
+ <groupId>javax.el</groupId>
+ <artifactId>el-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.weld.servlet</groupId>
+ <artifactId>weld-servlet-core</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.weld</groupId>
+ <artifactId>weld-core</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.h2database</groupId>
+ <artifactId>h2</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>postgresql</groupId>
+ <artifactId>postgresql</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>mysql</groupId>
+ <artifactId>mysql-connector-java</artifactId>
+ </dependency>
+ </dependencies>
+
+</project>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/META-INF/beans.xml
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/META-INF/beans.xml b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/META-INF/beans.xml
new file mode 100644
index 0000000..e75d400
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/META-INF/beans.xml
@@ -0,0 +1,29 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Copyright (C) 2013 Salzburg Research.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<beans
+ xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="
+ http://java.sun.com/xml/ns/javaee
+ http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
+
+</beans>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/config-defaults.properties
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/config-defaults.properties b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/config-defaults.properties
new file mode 100644
index 0000000..d85b91c
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/config-defaults.properties
@@ -0,0 +1,22 @@
+#
+# Copyright (C) 2013 Salzburg Research.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+${symbol_pound} configure module configuration options and default values here and add descriptions to config-descriptions.properties
+
+${moduleKey}.enabled = true
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/config-descriptions.properties
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/config-descriptions.properties b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/config-descriptions.properties
new file mode 100644
index 0000000..0403af9
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/config-descriptions.properties
@@ -0,0 +1,25 @@
+#
+# Copyright (C) 2013 Salzburg Research.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+${symbol_pound} describe module configuration options here (textual description and type)
+
+${moduleKey}.enabled.description = this is a demo property of ${moduleName}
+${moduleKey}.enabled.type = java.lang.Boolean
+
+