You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2014/07/04 16:53:33 UTC
[05/16] git commit: ISIS-833: starting to break out modules
ISIS-833: starting to break out modules
* new (empty) modules:
- isis-module-audit-jdo; isis-module-background; isis-module-command-jdo; isis-module-devutils; isis-module-publishing-jdo; isis-module-settings;
* renamed o.a.i.core:isis-core-wrapper to o.a.i.module.isis-module-wrapper
* added Javadoc comments to those services already annotated with @DomainService and implemented either in applib or core.runtime:
- Bulk.InteractionContext; ClassDiscoveryServiceUsingReflections; ClockService; CommandContext; QueryResultsCache; Scratchpad; MementoServiceDefault;
* IsisJdoSupportImpl now annotated with @DomainService (since part of core) so automatically registered
* EventBusServiceJdo now annotated with @DomainService (since part of core) so automatically registered
* EventBusServiceDefault now marked as deprecated because it has effectively been subsumed by EventBusServiceJdo
* IsisJdoSupport moved from jdo-applib to core-applib; requires update to applib's pom.xml to reference javax.jdo:jdo-api
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/bf34a19d
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/bf34a19d
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/bf34a19d
Branch: refs/heads/master
Commit: bf34a19d0dcbbebdd09059da8976b2b1cb07eaf6
Parents: 0efc26e
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Fri Jul 4 07:00:24 2014 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Fri Jul 4 07:00:24 2014 +0100
----------------------------------------------------------------------
core/applib/pom.xml | 12 +
.../org/apache/isis/applib/annotation/Bulk.java | 7 +-
.../services/bookmark/BookmarkService.java | 9 +
.../classdiscovery/ClassDiscoveryService.java | 10 +
.../ClassDiscoveryServiceUsingReflections.java | 9 +
.../applib/services/clock/ClockService.java | 10 +
.../applib/services/command/CommandContext.java | 7 +-
.../applib/services/memento/MementoService.java | 10 +
.../queryresultscache/QueryResultsCache.java | 10 +
.../applib/services/scratchpad/Scratchpad.java | 10 +
.../applib/services/wrapper/WrapperFactory.java | 5 +
.../xmlsnapshot/XmlSnapshotService.java | 10 +
.../applib/service/support/IsisJdoSupport.java | 83 +++
core/integtestsupport/pom.xml | 4 +-
.../bookmarks/BookmarkServiceDefault.java | 11 +-
core/module-audit-jdo/.gitignore | 1 +
core/module-audit-jdo/pom.xml | 149 ++++
.../src/main/java/META-INF/persistence.xml | 26 +
core/module-background/.gitignore | 1 +
core/module-background/pom.xml | 57 ++
core/module-command-jdo/.gitignore | 1 +
core/module-command-jdo/pom.xml | 149 ++++
.../src/main/java/META-INF/persistence.xml | 26 +
core/module-devutils/.gitignore | 1 +
core/module-devutils/applib/.gitignore | 1 +
core/module-devutils/applib/pom.xml | 55 ++
core/module-devutils/impl/.gitignore | 1 +
core/module-devutils/impl/pom.xml | 55 ++
core/module-devutils/pom.xml | 62 ++
core/module-publishing-jdo/.gitignore | 1 +
core/module-publishing-jdo/pom.xml | 147 ++++
.../src/main/java/META-INF/persistence.xml | 26 +
core/module-settings/.gitignore | 1 +
core/module-settings/applib/.gitignore | 1 +
core/module-settings/applib/pom.xml | 55 ++
core/module-settings/impl-jdo/.gitignore | 1 +
core/module-settings/impl-jdo/pom.xml | 146 ++++
.../src/main/java/META-INF/persistence.xml | 26 +
core/module-settings/pom.xml | 62 ++
core/module-wrapper/pom.xml | 139 ++++
.../core/wrapper/WrapperFactoryAbstract.java | 314 ++++++++
.../isis/core/wrapper/WrapperFactoryCglib.java | 30 +
.../core/wrapper/WrapperFactoryDefault.java | 38 +
.../core/wrapper/WrapperFactoryJavassist.java | 30 +
.../dispatchers/InteractionEventDispatcher.java | 28 +
.../InteractionEventDispatcherTypeSafe.java | 34 +
.../AbstractCollectionInvocationHandler.java | 92 +++
.../handlers/CollectionInvocationHandler.java | 53 ++
.../handlers/DelegatingInvocationHandler.java | 32 +
.../DelegatingInvocationHandlerDefault.java | 131 ++++
.../handlers/DomainObjectInvocationHandler.java | 721 +++++++++++++++++++
.../wrapper/handlers/MapInvocationHandler.java | 48 ++
.../wrapper/handlers/ProxyContextHandler.java | 84 +++
.../core/wrapper/internal/util/Constants.java | 52 ++
.../internal/util/MethodPrefixFinder.java | 48 ++
.../isis/core/wrapper/internal/util/Util.java | 53 ++
.../core/wrapper/proxy/ProxyInstantiator.java | 26 +
.../proxy/ProxyInstantiatorForCglib.java | 101 +++
.../proxy/ProxyInstantiatorForJavassist.java | 77 ++
.../wrapper/WrapperFactoryAbstractTest.java | 109 +++
...rapperFactoryAbstractTest_wrappedObject.java | 379 ++++++++++
...oryAbstractTest_wrappedObject_transient.java | 259 +++++++
.../WrapperFactoryCglibTest_wrappedObject.java | 32 +
...actoryCglibTest_wrappedObject_transient.java | 73 ++
...apperFactoryJavassistTest_wrappedObject.java | 32 +
...ryJavassistTest_wrappedObject_transient.java | 31 +
.../applib/service/support/IsisJdoSupport.java | 83 ---
.../service/eventbus/EventBusServiceJdo.java | 17 +-
.../service/support/IsisJdoSupportImpl.java | 15 +-
core/pom.xml | 14 +-
.../background/BackgroundServiceDefault.java | 24 +-
.../eventbus/EventBusServiceDefault.java | 4 +
.../services/memento/MementoServiceDefault.java | 9 +
.../xmlsnapshot/XmlSnapshotServiceDefault.java | 9 +
core/specsupport/pom.xml | 4 +-
core/wrapper/pom.xml | 138 ----
.../core/wrapper/WrapperFactoryAbstract.java | 314 --------
.../isis/core/wrapper/WrapperFactoryCglib.java | 30 -
.../core/wrapper/WrapperFactoryDefault.java | 28 -
.../core/wrapper/WrapperFactoryJavassist.java | 30 -
.../dispatchers/InteractionEventDispatcher.java | 28 -
.../InteractionEventDispatcherTypeSafe.java | 34 -
.../AbstractCollectionInvocationHandler.java | 92 ---
.../handlers/CollectionInvocationHandler.java | 53 --
.../handlers/DelegatingInvocationHandler.java | 32 -
.../DelegatingInvocationHandlerDefault.java | 131 ----
.../handlers/DomainObjectInvocationHandler.java | 721 -------------------
.../wrapper/handlers/MapInvocationHandler.java | 48 --
.../wrapper/handlers/ProxyContextHandler.java | 84 ---
.../core/wrapper/internal/util/Constants.java | 52 --
.../internal/util/MethodPrefixFinder.java | 48 --
.../isis/core/wrapper/internal/util/Util.java | 53 --
.../core/wrapper/proxy/ProxyInstantiator.java | 26 -
.../proxy/ProxyInstantiatorForCglib.java | 101 ---
.../proxy/ProxyInstantiatorForJavassist.java | 77 --
.../wrapper/WrapperFactoryAbstractTest.java | 109 ---
...rapperFactoryAbstractTest_wrappedObject.java | 379 ----------
...oryAbstractTest_wrappedObject_transient.java | 259 -------
.../WrapperFactoryCglibTest_wrappedObject.java | 32 -
...actoryCglibTest_wrappedObject_transient.java | 73 --
...apperFactoryJavassistTest_wrappedObject.java | 32 -
...ryJavassistTest_wrappedObject_transient.java | 31 -
.../integtests/pom.xml | 4 +-
.../webapp/pom.xml | 4 +-
.../integtests/pom.xml | 4 +-
.../simple_wicket_restful_jdo/webapp/pom.xml | 4 +-
.../quickstart_wicket_restful_jdo/pom.xml | 2 +-
.../archetype/simple_wicket_restful_jdo/pom.xml | 2 +-
108 files changed, 4380 insertions(+), 3158 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/applib/pom.xml
----------------------------------------------------------------------
diff --git a/core/applib/pom.xml b/core/applib/pom.xml
index 85fe0b9..e41bb77 100644
--- a/core/applib/pom.xml
+++ b/core/applib/pom.xml
@@ -84,6 +84,18 @@
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-jcdi_1.0_spec</artifactId>
</dependency>
+
+ <!--
+ must be kept consistent with the API bundled by
+ org.datanucleus:datanucleus-accessplatform-jdo-rdbms
+ -->
+ <dependency>
+ <groupId>javax.jdo</groupId>
+ <artifactId>jdo-api</artifactId>
+ <version>3.1-rc1</version>
+ </dependency>
+
+
<dependency>
<groupId>org.apache.isis.core</groupId>
<artifactId>isis-core-unittestsupport</artifactId>
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/applib/src/main/java/org/apache/isis/applib/annotation/Bulk.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/annotation/Bulk.java b/core/applib/src/main/java/org/apache/isis/applib/annotation/Bulk.java
index e424a24..d016c3b 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/annotation/Bulk.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/annotation/Bulk.java
@@ -60,7 +60,12 @@ public @interface Bulk {
AppliesTo value() default AppliesTo.BULK_AND_REGULAR;
/**
- * Register this as a service in order to access context information about a bulk action invocation.
+ * This service provides access to context information about a bulk action invocation.
+ *
+ * <p>
+ * Because this service is annotated with {@link org.apache.isis.applib.annotation.DomainService} and is
+ * implemented in the applib, it is automatically registered and available for use; no configuration is required.
+ * </p>
*/
@DomainService
@RequestScoped
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkService.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkService.java b/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkService.java
index 0de2213..6dda621 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkService.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkService.java
@@ -22,6 +22,15 @@ import org.apache.isis.applib.annotation.Named;
import org.apache.isis.applib.annotation.NotInServiceMenu;
import org.apache.isis.applib.annotation.Programmatic;
+/**
+ * This service enables a serializable "bookmark" to be created for an entity.
+ *
+ * <p>
+ * Because an implementation of this service (<tt>BookmarkServiceDefault</tt>) is annotated with
+ * {@link org.apache.isis.applib.annotation.DomainService} and is implemented in the core.metamodel, it is
+ * automatically registered and available for use; no configuration is required.
+ * </p>
+ */
@Named("Bookmarks")
public interface BookmarkService {
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/applib/src/main/java/org/apache/isis/applib/services/classdiscovery/ClassDiscoveryService.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/classdiscovery/ClassDiscoveryService.java b/core/applib/src/main/java/org/apache/isis/applib/services/classdiscovery/ClassDiscoveryService.java
index 0f32664..9989cd6 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/classdiscovery/ClassDiscoveryService.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/classdiscovery/ClassDiscoveryService.java
@@ -22,6 +22,16 @@ import java.util.Set;
import org.apache.isis.applib.annotation.Programmatic;
+/**
+ * This utility service supports the dynamic discovery of classes from the classpath. One service that uses this
+ * is the <tt>FixtureScripts</tt> domain service.
+ *
+ * <p>
+ * Because an implementation of this service (<tt>ClassDiscoveryServiceUsingReflections</tt> is annotated with
+ * {@link org.apache.isis.applib.annotation.DomainService} and is implemented in the core applib, it is automatically
+ * registered and available for use; no configuration is required.
+ * </p>
+ */
public interface ClassDiscoveryService {
@Programmatic
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/applib/src/main/java/org/apache/isis/applib/services/classdiscovery/ClassDiscoveryServiceUsingReflections.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/classdiscovery/ClassDiscoveryServiceUsingReflections.java b/core/applib/src/main/java/org/apache/isis/applib/services/classdiscovery/ClassDiscoveryServiceUsingReflections.java
index a2a52e6..2d820db 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/classdiscovery/ClassDiscoveryServiceUsingReflections.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/classdiscovery/ClassDiscoveryServiceUsingReflections.java
@@ -27,6 +27,15 @@ import org.reflections.util.ClasspathHelper;
import org.apache.isis.applib.AbstractService;
import org.apache.isis.applib.annotation.DomainService;
+/**
+ * This utility service supports the dynamic discovery of classes from the classpath. One service that uses this
+ * is the <tt>FixtureScripts</tt> domain service.
+ *
+ * <p>
+ * Because this service is annotated with {@link org.apache.isis.applib.annotation.DomainService} and is
+ * implemented in the core applib, it is automatically registered and available for use; no configuration is required.
+ * </p>
+ */
@DomainService
public class ClassDiscoveryServiceUsingReflections
extends AbstractService
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/applib/src/main/java/org/apache/isis/applib/services/clock/ClockService.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/clock/ClockService.java b/core/applib/src/main/java/org/apache/isis/applib/services/clock/ClockService.java
index dd4a775..7c2ab95 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/clock/ClockService.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/clock/ClockService.java
@@ -24,6 +24,16 @@ import org.apache.isis.applib.annotation.DomainService;
import org.apache.isis.applib.annotation.Programmatic;
import org.apache.isis.applib.clock.Clock;
+/**
+ * This service allows an application to be decoupled from the system time. The most common use case is in support of
+ * testing scenarios, to "mock the clock". Use of this service also opens up the use of centralized
+ * co-ordinated time management through a centralized time service.
+ *
+ * <p>
+ * Because this service is annotated with {@link org.apache.isis.applib.annotation.DomainService} and is
+ * implemented in the core applib, it is automatically registered and available for use; no configuration is required.
+ * </p>
+ */
@DomainService
public class ClockService {
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/applib/src/main/java/org/apache/isis/applib/services/command/CommandContext.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/command/CommandContext.java b/core/applib/src/main/java/org/apache/isis/applib/services/command/CommandContext.java
index 913c26e..5d15b40 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/command/CommandContext.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/command/CommandContext.java
@@ -25,7 +25,12 @@ import org.apache.isis.applib.annotation.DomainService;
import org.apache.isis.applib.annotation.Programmatic;
/**
- * Register this as a service in order to access context information about any {@link Command}.
+ * This service provides access to context information about any {@link Command}.
+ *
+ * <p>
+ * Because this service is annotated with {@link org.apache.isis.applib.annotation.DomainService} and is
+ * implemented in the core applib, it is automatically registered and available for use; no configuration is required.
+ * </p>
*/
@DomainService
@RequestScoped
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/applib/src/main/java/org/apache/isis/applib/services/memento/MementoService.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/memento/MementoService.java b/core/applib/src/main/java/org/apache/isis/applib/services/memento/MementoService.java
index e3b7a05..3ee8505 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/memento/MementoService.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/memento/MementoService.java
@@ -21,6 +21,16 @@ import java.util.Set;
import org.apache.isis.applib.annotation.Programmatic;
import org.apache.isis.applib.services.bookmark.Bookmark;
+/**
+ * This service provides a mechanism by which a serializable memento of arbitrary state can be created. Most
+ * commonly this is in support of implementing the {@link org.apache.isis.applib.ViewModel} interface.
+ *
+ * <p>
+ * Because an implementation of this service (<tt>MementoServiceDefault</tt>) is annotated with
+ * {@link org.apache.isis.applib.annotation.DomainService} and is implemented in the core runtime, it is automatically
+ * registered and available for use; no configuration is required.
+ * </p>
+ */
public interface MementoService {
public static interface Memento {
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/applib/src/main/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCache.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCache.java b/core/applib/src/main/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCache.java
index 5035ff5..fb918d9 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCache.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCache.java
@@ -30,6 +30,16 @@ import org.slf4j.LoggerFactory;
import org.apache.isis.applib.annotation.DomainService;
import org.apache.isis.applib.annotation.Programmatic;
+/**
+ * This service provides a mechanism by which idempotent query results can be cached for the duration of an interaction.
+ * Most commonly this allows otherwise "naive" - eg that makes a repository call many times within a loop - to
+ * be performance tuned. The benefit is that the algorithm of the business logic can remain easy to understand.
+ *
+ * <p>
+ * Because this service is annotated with {@link org.apache.isis.applib.annotation.DomainService} and is
+ * implemented in the applib, it is automatically registered and available for use; no configuration is required.
+ * </p>
+ */
@DomainService
@RequestScoped
public class QueryResultsCache {
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/applib/src/main/java/org/apache/isis/applib/services/scratchpad/Scratchpad.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/scratchpad/Scratchpad.java b/core/applib/src/main/java/org/apache/isis/applib/services/scratchpad/Scratchpad.java
index 65017e2..999f7e6 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/scratchpad/Scratchpad.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/scratchpad/Scratchpad.java
@@ -27,6 +27,16 @@ import com.google.common.collect.Maps;
import org.apache.isis.applib.annotation.DomainService;
import org.apache.isis.applib.annotation.Programmatic;
+/**
+ * This service provides a mechanism to interchange information between multiple objects invoked in the same
+ * interaction. Most commonly this will be as the result of invoking a {@link org.apache.isis.applib.annotation.Bulk}
+ * action.
+ *
+ * <p>
+ * Because this service is annotated with {@link org.apache.isis.applib.annotation.DomainService} and is
+ * implemented in the core applib, it is automatically registered and available for use; no configuration is required.
+ * </p>
+ */
@DomainService
@RequestScoped
public class Scratchpad {
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/applib/src/main/java/org/apache/isis/applib/services/wrapper/WrapperFactory.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/wrapper/WrapperFactory.java b/core/applib/src/main/java/org/apache/isis/applib/services/wrapper/WrapperFactory.java
index 4a8a452..31f5420 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/wrapper/WrapperFactory.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/wrapper/WrapperFactory.java
@@ -59,6 +59,11 @@ import org.apache.isis.applib.services.wrapper.listeners.InteractionListener;
*
* <p>
* An exception will be thrown if any other methods are thrown.
+ *
+ * <p>
+ * An implementation of this service (<tt>WrapperFactoryDefault</tt>) can be registered by including
+ * <tt>o.a.i.module:isis-module-wrapper</tt> on the classpath; no further configuration is required.
+ * </p>
*/
@Hidden
public interface WrapperFactory {
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/applib/src/main/java/org/apache/isis/applib/services/xmlsnapshot/XmlSnapshotService.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/xmlsnapshot/XmlSnapshotService.java b/core/applib/src/main/java/org/apache/isis/applib/services/xmlsnapshot/XmlSnapshotService.java
index 759539d..f1c8974 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/xmlsnapshot/XmlSnapshotService.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/xmlsnapshot/XmlSnapshotService.java
@@ -21,6 +21,16 @@ import org.w3c.dom.Element;
import org.apache.isis.applib.annotation.Programmatic;
+/**
+ * This service allows an XML document to be generated capturing the data of a root entity and specified related
+ * entities. This XML can be used for various purposes, such as mail merge/reporting, or adhoc auditing.
+ *
+ * <p>
+ * Because an implementation of this service (<tt>XmlSnapshotServiceDefault</tt>) is annotated with
+ * {@link org.apache.isis.applib.annotation.DomainService} and is implemented in the core runtime, it is automatically
+ * registered and available for use; no configuration is required.
+ * </p>
+ */
public interface XmlSnapshotService {
public interface Snapshot {
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/support/IsisJdoSupport.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/support/IsisJdoSupport.java b/core/applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/support/IsisJdoSupport.java
new file mode 100644
index 0000000..23faeb2
--- /dev/null
+++ b/core/applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/support/IsisJdoSupport.java
@@ -0,0 +1,83 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.isis.objectstore.jdo.applib.service.support;
+
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+
+import javax.jdo.PersistenceManager;
+
+import org.apache.isis.applib.annotation.Programmatic;
+
+/**
+ * Service that provide a number of workarounds when using JDO/DataNucleus.
+ */
+public interface IsisJdoSupport {
+
+ /**
+ * Force a reload (corresponding to the JDO <tt>PersistenceManager</tt>'s <tt>refresh()</tt> method)
+ * of a domain objects.
+ *
+ * <p>
+ * In fact, this may just reset the lazy-load state of the domain object, but the effect is the same:
+ * to cause the object's state to be reloaded from the database.
+ *
+ * <p>
+ * The particular example that led to this method being added was a 1:m bidirectional relationship,
+ * analogous to <tt>Customer <-> * Order</tt>. Persisting the child <tt>Order</tt> object did not cause
+ * the parent <tt>Customer</tt>'s collection of orders to be updated. In fact, JDO does not make any
+ * such guarantee to do so. Options are therefore either to maintain the collection in code, or to
+ * refresh the parent.
+ */
+ @Programmatic
+ <T> T refresh(T domainObject);
+
+ @Programmatic
+ void ensureLoaded(Collection<?> collectionOfDomainObjects);
+
+ @Programmatic
+ PersistenceManager getJdoPersistenceManager();
+
+ @Programmatic
+ List<Map<String, Object>> executeSql(String sql);
+
+ @Programmatic
+ Integer executeUpdate(String sql);
+
+ /**
+ * Force the deletion of all instances of the specified class.
+ *
+ * <p>
+ * Note: this is intended primarily for testing purposes, eg clearing existing data as part of
+ * installing fixtures. It will generate a <tt>SQL DELETE</tt> for each instance. To perform
+ * a bulk deletion with a single <tt>SQL DELETE</tt>, use {@link #executeUpdate(String)}.
+ *
+ * <p>
+ * Implementation note: It can occasionally be the case that Isis' internal adapter for the domain object is
+ * still in memory. JDO/DataNucleus seems to bump up the version of the object prior to its deletion,
+ * which under normal circumstances would cause Isis to throw a concurrency exception. Therefore
+ * To prevent this from happening (ie to <i>force</i> the deletion of all instances), concurrency checking
+ * is temporarily disabled while this method is performed.
+ */
+ @Programmatic
+ void deleteAll(Class<?>... pcClasses);
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/integtestsupport/pom.xml
----------------------------------------------------------------------
diff --git a/core/integtestsupport/pom.xml b/core/integtestsupport/pom.xml
index 48bc875..708e65d 100644
--- a/core/integtestsupport/pom.xml
+++ b/core/integtestsupport/pom.xml
@@ -118,8 +118,8 @@
</dependency>
<dependency>
- <groupId>org.apache.isis.core</groupId>
- <artifactId>isis-core-wrapper</artifactId>
+ <groupId>org.apache.isis.module</groupId>
+ <artifactId>isis-module-wrapper</artifactId>
</dependency>
<dependency>
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceDefault.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceDefault.java
index da4b478..daa4370 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceDefault.java
@@ -27,14 +27,21 @@ import org.apache.isis.core.metamodel.adapter.DomainObjectServices;
import org.apache.isis.core.metamodel.adapter.DomainObjectServicesAware;
import org.apache.isis.core.runtime.persistence.ObjectNotFoundException;
+/**
+ * This service enables a serializable "bookmark" to be created for an entity.
+ *
+ * <p>
+ * Because this service is annotated with {@link org.apache.isis.applib.annotation.DomainService} and is
+ * implemented in the core.metamodel, it is automatically registered and available for use; no configuration is required.
+ * </p>
+ */
@DomainService
public class BookmarkServiceDefault implements BookmarkService, DomainObjectServicesAware {
private DomainObjectServices domainObjectServices;
/**
- * Contributed action contributed to
- * any class that implements {@link BookmarkHolder}.
+ * Contributed action contributed to any class that implements {@link BookmarkHolder}.
*
* <p>
* If required, applications can suppress by subclassing and annotating the
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-audit-jdo/.gitignore
----------------------------------------------------------------------
diff --git a/core/module-audit-jdo/.gitignore b/core/module-audit-jdo/.gitignore
new file mode 100644
index 0000000..a48e45b
--- /dev/null
+++ b/core/module-audit-jdo/.gitignore
@@ -0,0 +1 @@
+/target-ide
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-audit-jdo/pom.xml
----------------------------------------------------------------------
diff --git a/core/module-audit-jdo/pom.xml b/core/module-audit-jdo/pom.xml
new file mode 100644
index 0000000..bf23a69
--- /dev/null
+++ b/core/module-audit-jdo/pom.xml
@@ -0,0 +1,149 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis</artifactId>
+ <version>1.6.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.isis.module</groupId>
+ <artifactId>isis-module-audit-jdo</artifactId>
+
+ <name>Isis Module: Audit (JDO Implementation)</name>
+ <description>
+ AuditingService implementation that persists audit entries to
+ database (via JDO objectstore).
+ </description>
+
+ <properties>
+ <siteBaseDir>..</siteBaseDir>
+ <relativeUrl>module-audit/</relativeUrl>
+ </properties>
+
+ <url>http://isis.apache.org/${relativeUrl}</url>
+
+ <build>
+ <resources>
+ <resource>
+ <filtering>false</filtering>
+ <directory>src/main/resources</directory>
+ </resource>
+ <resource>
+ <filtering>false</filtering>
+ <directory>src/main/java</directory>
+ <includes>
+ <include>**</include>
+ </includes>
+ <excludes>
+ <exclude>**/*.java</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ <plugins>
+ <plugin>
+ <groupId>org.datanucleus</groupId>
+ <artifactId>datanucleus-maven-plugin</artifactId>
+ <version>${datanucleus-maven-plugin.version}</version>
+ <configuration>
+ <fork>false</fork>
+ <verbose>true</verbose>
+ </configuration>
+ <executions>
+ <execution>
+ <phase>compile</phase>
+ <goals>
+ <goal>enhance</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ <pluginManagement>
+ <plugins>
+ <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
+ <plugin>
+ <groupId>org.eclipse.m2e</groupId>
+ <artifactId>lifecycle-mapping</artifactId>
+ <version>1.0.0</version>
+ <configuration>
+ <lifecycleMappingMetadata>
+ <pluginExecutions>
+ <pluginExecution>
+ <pluginExecutionFilter>
+ <groupId>
+ org.datanucleus
+ </groupId>
+ <artifactId>
+ datanucleus-maven-plugin
+ </artifactId>
+ <versionRange>
+ [3.2.0-release,)
+ </versionRange>
+ <goals>
+ <goal>enhance</goal>
+ </goals>
+ </pluginExecutionFilter>
+ <action>
+ <ignore />
+ </action>
+ </pluginExecution>
+ </pluginExecutions>
+ </lifecycleMappingMetadata>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-applib</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-unittestsupport</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </dependency>
+
+ <!-- DataNucleus (jdo-api, and for enhancer) -->
+ <dependency>
+ <groupId>org.datanucleus</groupId>
+ <artifactId>datanucleus-accessplatform-jdo-rdbms</artifactId>
+ <type>pom</type>
+ </dependency>
+ <dependency>
+ <groupId>org.datanucleus</groupId>
+ <artifactId>datanucleus-jodatime</artifactId>
+ </dependency>
+
+ </dependencies>
+
+
+</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-audit-jdo/src/main/java/META-INF/persistence.xml
----------------------------------------------------------------------
diff --git a/core/module-audit-jdo/src/main/java/META-INF/persistence.xml b/core/module-audit-jdo/src/main/java/META-INF/persistence.xml
new file mode 100644
index 0000000..ded7c39
--- /dev/null
+++ b/core/module-audit-jdo/src/main/java/META-INF/persistence.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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.
+-->
+<persistence xmlns="http://java.sun.com/xml/ns/persistence"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0">
+
+ <persistence-unit name="isis-module-audit-jdo">
+ </persistence-unit>
+</persistence>
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-background/.gitignore
----------------------------------------------------------------------
diff --git a/core/module-background/.gitignore b/core/module-background/.gitignore
new file mode 100644
index 0000000..a48e45b
--- /dev/null
+++ b/core/module-background/.gitignore
@@ -0,0 +1 @@
+/target-ide
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-background/pom.xml
----------------------------------------------------------------------
diff --git a/core/module-background/pom.xml b/core/module-background/pom.xml
new file mode 100644
index 0000000..2e3d055
--- /dev/null
+++ b/core/module-background/pom.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis</artifactId>
+ <version>1.6.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.isis.module</groupId>
+ <artifactId>isis-module-background</artifactId>
+
+ <name>Isis Module: Background</name>
+ <description>
+ BackgroundService implementation to enable apps to schedule actions
+ be run that run asynchronously (eg using a Quartz scheduler).
+ </description>
+
+ <properties>
+ <siteBaseDir>..</siteBaseDir>
+ <relativeUrl>module-background/</relativeUrl>
+ </properties>
+
+ <url>http://isis.apache.org/${relativeUrl}</url>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-applib</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-unittestsupport</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-command-jdo/.gitignore
----------------------------------------------------------------------
diff --git a/core/module-command-jdo/.gitignore b/core/module-command-jdo/.gitignore
new file mode 100644
index 0000000..a48e45b
--- /dev/null
+++ b/core/module-command-jdo/.gitignore
@@ -0,0 +1 @@
+/target-ide
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-command-jdo/pom.xml
----------------------------------------------------------------------
diff --git a/core/module-command-jdo/pom.xml b/core/module-command-jdo/pom.xml
new file mode 100644
index 0000000..702ec31
--- /dev/null
+++ b/core/module-command-jdo/pom.xml
@@ -0,0 +1,149 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis</artifactId>
+ <version>1.6.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.isis.module</groupId>
+ <artifactId>isis-module-command-jdo</artifactId>
+
+ <name>Isis Module: Command (JDO Implementation)</name>
+ <description>
+ CommandService and BackgroundCommandService implementations that
+ persist commands to database (via JDO objectstore) for profiling and
+ to support background command execution.
+ </description>
+
+ <properties>
+ <siteBaseDir>..</siteBaseDir>
+ <relativeUrl>module-command/</relativeUrl>
+ </properties>
+
+ <url>http://isis.apache.org/${relativeUrl}</url>
+
+ <build>
+ <resources>
+ <resource>
+ <filtering>false</filtering>
+ <directory>src/main/resources</directory>
+ </resource>
+ <resource>
+ <filtering>false</filtering>
+ <directory>src/main/java</directory>
+ <includes>
+ <include>**</include>
+ </includes>
+ <excludes>
+ <exclude>**/*.java</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ <plugins>
+ <plugin>
+ <groupId>org.datanucleus</groupId>
+ <artifactId>datanucleus-maven-plugin</artifactId>
+ <version>${datanucleus-maven-plugin.version}</version>
+ <configuration>
+ <fork>false</fork>
+ <verbose>true</verbose>
+ </configuration>
+ <executions>
+ <execution>
+ <phase>compile</phase>
+ <goals>
+ <goal>enhance</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ <pluginManagement>
+ <plugins>
+ <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
+ <plugin>
+ <groupId>org.eclipse.m2e</groupId>
+ <artifactId>lifecycle-mapping</artifactId>
+ <version>1.0.0</version>
+ <configuration>
+ <lifecycleMappingMetadata>
+ <pluginExecutions>
+ <pluginExecution>
+ <pluginExecutionFilter>
+ <groupId>
+ org.datanucleus
+ </groupId>
+ <artifactId>
+ datanucleus-maven-plugin
+ </artifactId>
+ <versionRange>
+ [3.2.0-release,)
+ </versionRange>
+ <goals>
+ <goal>enhance</goal>
+ </goals>
+ </pluginExecutionFilter>
+ <action>
+ <ignore />
+ </action>
+ </pluginExecution>
+ </pluginExecutions>
+ </lifecycleMappingMetadata>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-applib</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-unittestsupport</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </dependency>
+
+ <!-- DataNucleus (jdo-api, and for enhancer) -->
+ <dependency>
+ <groupId>org.datanucleus</groupId>
+ <artifactId>datanucleus-accessplatform-jdo-rdbms</artifactId>
+ <type>pom</type>
+ </dependency>
+ <dependency>
+ <groupId>org.datanucleus</groupId>
+ <artifactId>datanucleus-jodatime</artifactId>
+ </dependency>
+
+ </dependencies>
+
+</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-command-jdo/src/main/java/META-INF/persistence.xml
----------------------------------------------------------------------
diff --git a/core/module-command-jdo/src/main/java/META-INF/persistence.xml b/core/module-command-jdo/src/main/java/META-INF/persistence.xml
new file mode 100644
index 0000000..e6b83a4
--- /dev/null
+++ b/core/module-command-jdo/src/main/java/META-INF/persistence.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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.
+-->
+<persistence xmlns="http://java.sun.com/xml/ns/persistence"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0">
+
+ <persistence-unit name="isis-module-command-jdo">
+ </persistence-unit>
+</persistence>
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-devutils/.gitignore
----------------------------------------------------------------------
diff --git a/core/module-devutils/.gitignore b/core/module-devutils/.gitignore
new file mode 100644
index 0000000..a48e45b
--- /dev/null
+++ b/core/module-devutils/.gitignore
@@ -0,0 +1 @@
+/target-ide
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-devutils/applib/.gitignore
----------------------------------------------------------------------
diff --git a/core/module-devutils/applib/.gitignore b/core/module-devutils/applib/.gitignore
new file mode 100644
index 0000000..a48e45b
--- /dev/null
+++ b/core/module-devutils/applib/.gitignore
@@ -0,0 +1 @@
+/target-ide
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-devutils/applib/pom.xml
----------------------------------------------------------------------
diff --git a/core/module-devutils/applib/pom.xml b/core/module-devutils/applib/pom.xml
new file mode 100644
index 0000000..5df558c
--- /dev/null
+++ b/core/module-devutils/applib/pom.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.isis.module</groupId>
+ <artifactId>isis-module-devutils</artifactId>
+ <version>1.6.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>isis-module-devutils-applib</artifactId>
+
+ <name>Isis Module: Developer Utilities applib</name>
+ <description>
+ API for the Developer Utilities module
+ </description>
+
+ <properties>
+ <siteBaseDir>../..</siteBaseDir>
+ <relativeUrl>module-devutils/applib/</relativeUrl>
+ </properties>
+
+ <url>http://isis.apache.org/${relativeUrl}</url>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-applib</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-unittestsupport</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-devutils/impl/.gitignore
----------------------------------------------------------------------
diff --git a/core/module-devutils/impl/.gitignore b/core/module-devutils/impl/.gitignore
new file mode 100644
index 0000000..a48e45b
--- /dev/null
+++ b/core/module-devutils/impl/.gitignore
@@ -0,0 +1 @@
+/target-ide
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-devutils/impl/pom.xml
----------------------------------------------------------------------
diff --git a/core/module-devutils/impl/pom.xml b/core/module-devutils/impl/pom.xml
new file mode 100644
index 0000000..20c3ad7
--- /dev/null
+++ b/core/module-devutils/impl/pom.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.isis.module</groupId>
+ <artifactId>isis-module-devutils</artifactId>
+ <version>1.6.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>isis-module-devutils-impl</artifactId>
+
+ <name>Isis Module: Developer Utilities implementation</name>
+ <description>
+ Implementation of the Developer Utilities module
+ </description>
+
+ <properties>
+ <siteBaseDir>../..</siteBaseDir>
+ <relativeUrl>module-devutils/impl/</relativeUrl>
+ </properties>
+
+ <url>http://isis.apache.org/${relativeUrl}</url>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-applib</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-unittestsupport</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-devutils/pom.xml
----------------------------------------------------------------------
diff --git a/core/module-devutils/pom.xml b/core/module-devutils/pom.xml
new file mode 100644
index 0000000..a8d80a3
--- /dev/null
+++ b/core/module-devutils/pom.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis</artifactId>
+ <version>1.6.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.isis.module</groupId>
+ <artifactId>isis-module-devutils</artifactId>
+ <packaging>pom</packaging>
+
+ <name>Isis Module: Developer Utilities</name>
+ <description>
+ Developer utilities.
+ </description>
+
+ <properties>
+ <siteBaseDir>..</siteBaseDir>
+ <relativeUrl>module-devutils/</relativeUrl>
+ </properties>
+
+ <url>http://isis.apache.org/${relativeUrl}</url>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-applib</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-unittestsupport</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <modules>
+ <module>applib</module>
+ <module>impl</module>
+ </modules>
+
+</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-publishing-jdo/.gitignore
----------------------------------------------------------------------
diff --git a/core/module-publishing-jdo/.gitignore b/core/module-publishing-jdo/.gitignore
new file mode 100644
index 0000000..a48e45b
--- /dev/null
+++ b/core/module-publishing-jdo/.gitignore
@@ -0,0 +1 @@
+/target-ide
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-publishing-jdo/pom.xml
----------------------------------------------------------------------
diff --git a/core/module-publishing-jdo/pom.xml b/core/module-publishing-jdo/pom.xml
new file mode 100644
index 0000000..58bb8ac
--- /dev/null
+++ b/core/module-publishing-jdo/pom.xml
@@ -0,0 +1,147 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis</artifactId>
+ <version>1.6.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.isis.module</groupId>
+ <artifactId>isis-module-publishing-jdo</artifactId>
+
+ <name>Isis Module: Publishing (JDO Implementation)</name>
+ <description>
+ PublishingService implementation that persists published events
+ to the database (using JDO Objectstore).
+ </description>
+
+ <properties>
+ <siteBaseDir>..</siteBaseDir>
+ <relativeUrl>module-publishing/</relativeUrl>
+ </properties>
+
+ <url>http://isis.apache.org/${relativeUrl}</url>
+
+ <build>
+ <resources>
+ <resource>
+ <filtering>false</filtering>
+ <directory>src/main/resources</directory>
+ </resource>
+ <resource>
+ <filtering>false</filtering>
+ <directory>src/main/java</directory>
+ <includes>
+ <include>**</include>
+ </includes>
+ <excludes>
+ <exclude>**/*.java</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ <plugins>
+ <plugin>
+ <groupId>org.datanucleus</groupId>
+ <artifactId>datanucleus-maven-plugin</artifactId>
+ <version>${datanucleus-maven-plugin.version}</version>
+ <configuration>
+ <fork>false</fork>
+ <verbose>true</verbose>
+ </configuration>
+ <executions>
+ <execution>
+ <phase>compile</phase>
+ <goals>
+ <goal>enhance</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ <pluginManagement>
+ <plugins>
+ <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
+ <plugin>
+ <groupId>org.eclipse.m2e</groupId>
+ <artifactId>lifecycle-mapping</artifactId>
+ <version>1.0.0</version>
+ <configuration>
+ <lifecycleMappingMetadata>
+ <pluginExecutions>
+ <pluginExecution>
+ <pluginExecutionFilter>
+ <groupId>
+ org.datanucleus
+ </groupId>
+ <artifactId>
+ datanucleus-maven-plugin
+ </artifactId>
+ <versionRange>
+ [3.2.0-release,)
+ </versionRange>
+ <goals>
+ <goal>enhance</goal>
+ </goals>
+ </pluginExecutionFilter>
+ <action>
+ <ignore />
+ </action>
+ </pluginExecution>
+ </pluginExecutions>
+ </lifecycleMappingMetadata>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-applib</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-unittestsupport</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </dependency>
+
+ <!-- DataNucleus (jdo-api, and for enhancer) -->
+ <dependency>
+ <groupId>org.datanucleus</groupId>
+ <artifactId>datanucleus-accessplatform-jdo-rdbms</artifactId>
+ <type>pom</type>
+ </dependency>
+ <dependency>
+ <groupId>org.datanucleus</groupId>
+ <artifactId>datanucleus-jodatime</artifactId>
+ </dependency>
+ </dependencies>
+
+</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-publishing-jdo/src/main/java/META-INF/persistence.xml
----------------------------------------------------------------------
diff --git a/core/module-publishing-jdo/src/main/java/META-INF/persistence.xml b/core/module-publishing-jdo/src/main/java/META-INF/persistence.xml
new file mode 100644
index 0000000..1cb71dd
--- /dev/null
+++ b/core/module-publishing-jdo/src/main/java/META-INF/persistence.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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.
+-->
+<persistence xmlns="http://java.sun.com/xml/ns/persistence"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0">
+
+ <persistence-unit name="isis-module-publishing-jdo">
+ </persistence-unit>
+</persistence>
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-settings/.gitignore
----------------------------------------------------------------------
diff --git a/core/module-settings/.gitignore b/core/module-settings/.gitignore
new file mode 100644
index 0000000..a48e45b
--- /dev/null
+++ b/core/module-settings/.gitignore
@@ -0,0 +1 @@
+/target-ide
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-settings/applib/.gitignore
----------------------------------------------------------------------
diff --git a/core/module-settings/applib/.gitignore b/core/module-settings/applib/.gitignore
new file mode 100644
index 0000000..a48e45b
--- /dev/null
+++ b/core/module-settings/applib/.gitignore
@@ -0,0 +1 @@
+/target-ide
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-settings/applib/pom.xml
----------------------------------------------------------------------
diff --git a/core/module-settings/applib/pom.xml b/core/module-settings/applib/pom.xml
new file mode 100644
index 0000000..efa3099
--- /dev/null
+++ b/core/module-settings/applib/pom.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.isis.module</groupId>
+ <artifactId>isis-module-settings</artifactId>
+ <version>1.6.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>isis-module-settings-applib</artifactId>
+
+ <name>Isis Module: Application and User Settings applib</name>
+ <description>
+ API for the application and user settings module.
+ </description>
+
+ <properties>
+ <siteBaseDir>../..</siteBaseDir>
+ <relativeUrl>module-settings/applib/</relativeUrl>
+ </properties>
+
+ <url>http://isis.apache.org/${relativeUrl}</url>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-applib</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-unittestsupport</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-settings/impl-jdo/.gitignore
----------------------------------------------------------------------
diff --git a/core/module-settings/impl-jdo/.gitignore b/core/module-settings/impl-jdo/.gitignore
new file mode 100644
index 0000000..a48e45b
--- /dev/null
+++ b/core/module-settings/impl-jdo/.gitignore
@@ -0,0 +1 @@
+/target-ide
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-settings/impl-jdo/pom.xml
----------------------------------------------------------------------
diff --git a/core/module-settings/impl-jdo/pom.xml b/core/module-settings/impl-jdo/pom.xml
new file mode 100644
index 0000000..ff6b97f
--- /dev/null
+++ b/core/module-settings/impl-jdo/pom.xml
@@ -0,0 +1,146 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.isis.module</groupId>
+ <artifactId>isis-module-settings</artifactId>
+ <version>1.6.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>isis-module-settings-impl-jdo</artifactId>
+
+ <name>Isis Module: Application and User Settings (JDO implementation)</name>
+ <description>
+ Implementation of the application and user settings module, persisting
+ to database (using JDO Objectstore)
+ </description>
+
+ <properties>
+ <siteBaseDir>../..</siteBaseDir>
+ <relativeUrl>module-settings/impl/</relativeUrl>
+ </properties>
+
+ <url>http://isis.apache.org/${relativeUrl}</url>
+
+ <build>
+ <resources>
+ <resource>
+ <filtering>false</filtering>
+ <directory>src/main/resources</directory>
+ </resource>
+ <resource>
+ <filtering>false</filtering>
+ <directory>src/main/java</directory>
+ <includes>
+ <include>**</include>
+ </includes>
+ <excludes>
+ <exclude>**/*.java</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ <plugins>
+ <plugin>
+ <groupId>org.datanucleus</groupId>
+ <artifactId>datanucleus-maven-plugin</artifactId>
+ <version>${datanucleus-maven-plugin.version}</version>
+ <configuration>
+ <fork>false</fork>
+ <verbose>true</verbose>
+ </configuration>
+ <executions>
+ <execution>
+ <phase>compile</phase>
+ <goals>
+ <goal>enhance</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ <pluginManagement>
+ <plugins>
+ <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
+ <plugin>
+ <groupId>org.eclipse.m2e</groupId>
+ <artifactId>lifecycle-mapping</artifactId>
+ <version>1.0.0</version>
+ <configuration>
+ <lifecycleMappingMetadata>
+ <pluginExecutions>
+ <pluginExecution>
+ <pluginExecutionFilter>
+ <groupId>
+ org.datanucleus
+ </groupId>
+ <artifactId>
+ datanucleus-maven-plugin
+ </artifactId>
+ <versionRange>
+ [3.2.0-release,)
+ </versionRange>
+ <goals>
+ <goal>enhance</goal>
+ </goals>
+ </pluginExecutionFilter>
+ <action>
+ <ignore />
+ </action>
+ </pluginExecution>
+ </pluginExecutions>
+ </lifecycleMappingMetadata>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-applib</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-unittestsupport</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </dependency>
+
+ <!-- DataNucleus (jdo-api, and for enhancer) -->
+ <dependency>
+ <groupId>org.datanucleus</groupId>
+ <artifactId>datanucleus-accessplatform-jdo-rdbms</artifactId>
+ <type>pom</type>
+ </dependency>
+ <dependency>
+ <groupId>org.datanucleus</groupId>
+ <artifactId>datanucleus-jodatime</artifactId>
+ </dependency>
+ </dependencies>
+
+</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-settings/impl-jdo/src/main/java/META-INF/persistence.xml
----------------------------------------------------------------------
diff --git a/core/module-settings/impl-jdo/src/main/java/META-INF/persistence.xml b/core/module-settings/impl-jdo/src/main/java/META-INF/persistence.xml
new file mode 100644
index 0000000..1b83835
--- /dev/null
+++ b/core/module-settings/impl-jdo/src/main/java/META-INF/persistence.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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.
+-->
+<persistence xmlns="http://java.sun.com/xml/ns/persistence"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0">
+
+ <persistence-unit name="isis-module-settings-impl-jdo">
+ </persistence-unit>
+</persistence>
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-settings/pom.xml
----------------------------------------------------------------------
diff --git a/core/module-settings/pom.xml b/core/module-settings/pom.xml
new file mode 100644
index 0000000..19e24ab
--- /dev/null
+++ b/core/module-settings/pom.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis</artifactId>
+ <version>1.6.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.isis.module</groupId>
+ <artifactId>isis-module-settings</artifactId>
+ <packaging>pom</packaging>
+
+ <name>Isis Module: Application and User Settings</name>
+ <description>
+ Application and user settings
+ </description>
+
+ <properties>
+ <siteBaseDir>..</siteBaseDir>
+ <relativeUrl>module-settings/</relativeUrl>
+ </properties>
+
+ <url>http://isis.apache.org/${relativeUrl}</url>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-applib</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-unittestsupport</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <modules>
+ <module>applib</module>
+ <module>impl-jdo</module>
+ </modules>
+
+</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/bf34a19d/core/module-wrapper/pom.xml
----------------------------------------------------------------------
diff --git a/core/module-wrapper/pom.xml b/core/module-wrapper/pom.xml
new file mode 100644
index 0000000..b15c9b7
--- /dev/null
+++ b/core/module-wrapper/pom.xml
@@ -0,0 +1,139 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis</artifactId>
+ <version>1.6.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.isis.module</groupId>
+ <artifactId>isis-module-wrapper</artifactId>
+
+ <name>Isis Core Wrapper Service</name>
+ <description>Isis Core Wrapper Service</description>
+
+
+ <properties>
+ <siteBaseDir>..</siteBaseDir>
+ <relativeUrl>wrapper/</relativeUrl>
+ </properties>
+
+ <!-- used in Site generation for relative references. -->
+ <url>http://isis.apache.org/${relativeUrl}</url>
+
+ <reporting>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-project-info-reports-plugin</artifactId>
+ <inherited>false</inherited>
+ <configuration>
+ <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
+ </configuration>
+ <reportSets>
+ <reportSet>
+ <inherited>false</inherited>
+ <reports>
+ <report>dependencies</report>
+ <report>dependency-convergence</report>
+ <report>plugins</report>
+ <report>summary</report>
+ </reports>
+ </reportSet>
+ </reportSets>
+ </plugin>
+ </plugins>
+ </reporting>
+
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>asm</groupId>
+ <artifactId>asm</artifactId>
+ <version>3.3.1</version>
+ </dependency>
+ <dependency>
+ <groupId>cglib</groupId>
+ <artifactId>cglib-nodep</artifactId>
+ <version>2.2.2</version>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-runtime</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-metamodel</artifactId>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-runtime</artifactId>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-unittestsupport</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-tck-dom</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.objenesis</groupId>
+ <artifactId>objenesis</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.javassist</groupId>
+ <artifactId>javassist</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>asm</groupId>
+ <artifactId>asm</artifactId>
+ <!-- explicitly include for use of WrapperFactoryCglib -->
+ <optional>true</optional>
+ </dependency>
+
+ <dependency>
+ <groupId>cglib</groupId>
+ <artifactId>cglib-nodep</artifactId>
+ <!-- explicitly include for use of WrapperFactoryCglib -->
+ <optional>true</optional>
+ </dependency>
+
+ </dependencies>
+
+</project>