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 2016/11/21 10:23:16 UTC
[4/5] isis git commit: ISIS-1538: reworks simpleapp into more modular
structure; now uses mavenmixin's.
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/Smoke_IntegTest.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/Smoke_IntegTest.java b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/Smoke_IntegTest.java
new file mode 100644
index 0000000..fb9c12c
--- /dev/null
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/Smoke_IntegTest.java
@@ -0,0 +1,110 @@
+/*
+ * 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 domainapp.application.integtests;
+
+import java.util.List;
+
+import javax.inject.Inject;
+
+import org.junit.Test;
+
+import org.apache.isis.applib.fixturescripts.FixtureScripts;
+import org.apache.isis.applib.services.xactn.TransactionService;
+
+import domainapp.application.fixture.teardown.DomainAppTearDown;
+import domainapp.modules.simple.dom.impl.SimpleObject;
+import domainapp.modules.simple.dom.impl.SimpleObjectMenu;
+import static org.assertj.core.api.Assertions.assertThat;
+
+public class Smoke_IntegTest extends DomainAppIntegTestAbstract {
+
+ @Inject
+ FixtureScripts fixtureScripts;
+ @Inject
+ TransactionService transactionService;
+ @Inject
+ SimpleObjectMenu menu;
+
+ @Test
+ public void create_() throws Exception {
+
+ // given
+ DomainAppTearDown fs = new DomainAppTearDown();
+ fixtureScripts.runFixtureScript(fs, null);
+ transactionService.nextTransaction();
+
+
+ // when
+ List<SimpleObject> all = wrap(menu).listAll();
+
+ // then
+ assertThat(all).isEmpty();
+
+
+
+ // when
+ final SimpleObject fred = wrap(menu).create("Fred");
+ transactionService.flushTransaction();
+
+ // then
+ all = wrap(menu).listAll();
+ assertThat(all).hasSize(1);
+ assertThat(all).contains(fred);
+
+
+
+ // when
+ final SimpleObject bill = wrap(menu).create("Bill");
+ transactionService.flushTransaction();
+
+ // then
+ all = wrap(menu).listAll();
+ assertThat(all).hasSize(2);
+ assertThat(all).contains(fred, bill);
+
+
+
+ // when
+ wrap(mixin(SimpleObject._updateName.class, fred)).$$("Freddy");
+ transactionService.flushTransaction();
+
+ // then
+ assertThat(wrap(fred).getName()).isEqualTo("Freddy");
+
+
+
+ // when
+ wrap(fred).setNotes("These are some notes");
+
+ // then
+ assertThat(wrap(fred).getNotes()).isEqualTo("These are some notes");
+
+
+ // when
+ wrap(mixin(SimpleObject._delete.class, fred)).$$();
+ transactionService.flushTransaction();
+
+
+ all = wrap(menu).listAll();
+ assertThat(all).hasSize(1);
+
+ }
+
+}
+
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/.gitignore
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/.gitignore b/example/application/simpleapp/dom/.gitignore
deleted file mode 100644
index cc3e383..0000000
--- a/example/application/simpleapp/dom/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-.gradle
-build/
-!gradle/wrapper/gradle-wrapper.jar
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/build.gradle
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/build.gradle b/example/application/simpleapp/dom/build.gradle
deleted file mode 100644
index 6bfc911..0000000
--- a/example/application/simpleapp/dom/build.gradle
+++ /dev/null
@@ -1,72 +0,0 @@
-/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-//
-// 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.
-//
-/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-//
-// this gradle script compiles and enhances the dom classes.
-//
-// The script is intended to be used in conjunction with IntelliJ IDEA, to remove the necessity to run the DataNucleus
-// enhancer immediately before running the app, and therefore reduce the turn-around time. The script is run as
-// in the background as a daemon while editing/developing; whenever a change is made to any source code, gradle will
-// automatically compile *and* enhance the code.
-//
-// To use, just type:
-//
-// gradle -t --offline &
-//
-// It is also necessary to disable the IntelliJ's automatic building of the 'dom' project. This is done using:
-//
-// File > Settings > Build, Execution, Deployment > Compiler > Excludes
-//
-// and then exclude the .../dom/src/main/java directory
-//
-/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-
-defaultTasks 'compileJava', 'copyClasses'
-
-apply plugin: 'java'
-apply plugin: 'tangram.tools'
-
-sourceCompatibility = 1.8
-targetCompatibility = 1.8
-version = (new XmlParser()).parse('pom.xml').parent.version.text()
-
-buildscript {
- repositories {
- maven { url "http://oss.jfrog.org/artifactory/oss-snapshot-local" }
- jcenter()
- }
- dependencies {
- classpath 'tangram:gradle-plugin:1.1.2'
- }
-}
-repositories {
- mavenLocal()
- maven { url "http://oss.jfrog.org/artifactory/oss-snapshot-local" }
- jcenter()
-}
-dependencies {
- compile group: 'org.apache.isis.core', name: 'isis-core-applib', version: '1.14.0-SNAPSHOT'
-}
-task copyClasses << {
- copy {
- from 'build/classes/main'
- into 'target/classes'
- }
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/gradle/wrapper/gradle-wrapper.jar
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/gradle/wrapper/gradle-wrapper.jar b/example/application/simpleapp/dom/gradle/wrapper/gradle-wrapper.jar
deleted file mode 100644
index ca78035..0000000
Binary files a/example/application/simpleapp/dom/gradle/wrapper/gradle-wrapper.jar and /dev/null differ
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/gradle/wrapper/gradle-wrapper.properties
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/gradle/wrapper/gradle-wrapper.properties b/example/application/simpleapp/dom/gradle/wrapper/gradle-wrapper.properties
deleted file mode 100644
index e8c47aa..0000000
--- a/example/application/simpleapp/dom/gradle/wrapper/gradle-wrapper.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-#Tue May 24 23:14:46 BST 2016
-distributionBase=GRADLE_USER_HOME
-distributionPath=wrapper/dists
-zipStoreBase=GRADLE_USER_HOME
-zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-2.13-bin.zip
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/gradlew
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/gradlew b/example/application/simpleapp/dom/gradlew
deleted file mode 100644
index 27309d9..0000000
--- a/example/application/simpleapp/dom/gradlew
+++ /dev/null
@@ -1,164 +0,0 @@
-#!/usr/bin/env bash
-
-##############################################################################
-##
-## Gradle start up script for UN*X
-##
-##############################################################################
-
-# Attempt to set APP_HOME
-# Resolve links: $0 may be a link
-PRG="$0"
-# Need this for relative symlinks.
-while [ -h "$PRG" ] ; do
- ls=`ls -ld "$PRG"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- if expr "$link" : '/.*' > /dev/null; then
- PRG="$link"
- else
- PRG=`dirname "$PRG"`"/$link"
- fi
-done
-SAVED="`pwd`"
-cd "`dirname \"$PRG\"`/" >/dev/null
-APP_HOME="`pwd -P`"
-cd "$SAVED" >/dev/null
-
-APP_NAME="Gradle"
-APP_BASE_NAME=`basename "$0"`
-
-# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-DEFAULT_JVM_OPTS=""
-
-# Use the maximum available, or set MAX_FD != -1 to use that value.
-MAX_FD="maximum"
-
-warn ( ) {
- echo "$*"
-}
-
-die ( ) {
- echo
- echo "$*"
- echo
- exit 1
-}
-
-# OS specific support (must be 'true' or 'false').
-cygwin=false
-msys=false
-darwin=false
-nonstop=false
-case "`uname`" in
- CYGWIN* )
- cygwin=true
- ;;
- Darwin* )
- darwin=true
- ;;
- MINGW* )
- msys=true
- ;;
- NONSTOP* )
- nonstop=true
- ;;
-esac
-
-CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
-
-# Determine the Java command to use to start the JVM.
-if [ -n "$JAVA_HOME" ] ; then
- if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
- # IBM's JDK on AIX uses strange locations for the executables
- JAVACMD="$JAVA_HOME/jre/sh/java"
- else
- JAVACMD="$JAVA_HOME/bin/java"
- fi
- if [ ! -x "$JAVACMD" ] ; then
- die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
-
-Please set the JAVA_HOME variable in your environment to match the
-location of your Java installation."
- fi
-else
- JAVACMD="java"
- which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-
-Please set the JAVA_HOME variable in your environment to match the
-location of your Java installation."
-fi
-
-# Increase the maximum file descriptors if we can.
-if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
- MAX_FD_LIMIT=`ulimit -H -n`
- if [ $? -eq 0 ] ; then
- if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
- MAX_FD="$MAX_FD_LIMIT"
- fi
- ulimit -n $MAX_FD
- if [ $? -ne 0 ] ; then
- warn "Could not set maximum file descriptor limit: $MAX_FD"
- fi
- else
- warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
- fi
-fi
-
-# For Darwin, add options to specify how the application appears in the dock
-if $darwin; then
- GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
-fi
-
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin ; then
- APP_HOME=`cygpath --path --mixed "$APP_HOME"`
- CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
- JAVACMD=`cygpath --unix "$JAVACMD"`
-
- # We build the pattern for arguments to be converted via cygpath
- ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
- SEP=""
- for dir in $ROOTDIRSRAW ; do
- ROOTDIRS="$ROOTDIRS$SEP$dir"
- SEP="|"
- done
- OURCYGPATTERN="(^($ROOTDIRS))"
- # Add a user-defined pattern to the cygpath arguments
- if [ "$GRADLE_CYGPATTERN" != "" ] ; then
- OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
- fi
- # Now convert the arguments - kludge to limit ourselves to /bin/sh
- i=0
- for arg in "$@" ; do
- CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
- CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
-
- if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
- eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
- else
- eval `echo args$i`="\"$arg\""
- fi
- i=$((i+1))
- done
- case $i in
- (0) set -- ;;
- (1) set -- "$args0" ;;
- (2) set -- "$args0" "$args1" ;;
- (3) set -- "$args0" "$args1" "$args2" ;;
- (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
- (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
- (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
- (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
- (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
- (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
- esac
-fi
-
-# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
-function splitJvmOpts() {
- JVM_OPTS=("$@")
-}
-eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
-JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
-
-exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/gradlew.bat
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/gradlew.bat b/example/application/simpleapp/dom/gradlew.bat
deleted file mode 100644
index 832fdb6..0000000
--- a/example/application/simpleapp/dom/gradlew.bat
+++ /dev/null
@@ -1,90 +0,0 @@
-@if "%DEBUG%" == "" @echo off
-@rem ##########################################################################
-@rem
-@rem Gradle startup script for Windows
-@rem
-@rem ##########################################################################
-
-@rem Set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" setlocal
-
-set DIRNAME=%~dp0
-if "%DIRNAME%" == "" set DIRNAME=.
-set APP_BASE_NAME=%~n0
-set APP_HOME=%DIRNAME%
-
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-set DEFAULT_JVM_OPTS=
-
-@rem Find java.exe
-if defined JAVA_HOME goto findJavaFromJavaHome
-
-set JAVA_EXE=java.exe
-%JAVA_EXE% -version >NUL 2>&1
-if "%ERRORLEVEL%" == "0" goto init
-
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:findJavaFromJavaHome
-set JAVA_HOME=%JAVA_HOME:"=%
-set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-
-if exist "%JAVA_EXE%" goto init
-
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:init
-@rem Get command-line arguments, handling Windows variants
-
-if not "%OS%" == "Windows_NT" goto win9xME_args
-if "%@eval[2+2]" == "4" goto 4NT_args
-
-:win9xME_args
-@rem Slurp the command line arguments.
-set CMD_LINE_ARGS=
-set _SKIP=2
-
-:win9xME_args_slurp
-if "x%~1" == "x" goto execute
-
-set CMD_LINE_ARGS=%*
-goto execute
-
-:4NT_args
-@rem Get arguments from the 4NT Shell from JP Software
-set CMD_LINE_ARGS=%$
-
-:execute
-@rem Setup the command line
-
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
-
-@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
-
-:end
-@rem End local scope for the variables with windows NT shell
-if "%ERRORLEVEL%"=="0" goto mainEnd
-
-:fail
-rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
-rem the _cmd.exe /c_ return code!
-if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
-exit /b 1
-
-:mainEnd
-if "%OS%"=="Windows_NT" endlocal
-
-:omega
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/layouts.gradle
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/layouts.gradle b/example/application/simpleapp/dom/layouts.gradle
deleted file mode 100644
index f5fa30d..0000000
--- a/example/application/simpleapp/dom/layouts.gradle
+++ /dev/null
@@ -1,49 +0,0 @@
-/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-//
-// 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.
-//
-/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-//
-// This gradle script copies over .layout.xml files from src to target directory.
-//
-// This script is intended to be used while the app is running (in prototype mode), reducing the turn-around time
-// when updating the layout.
-//
-// The framework will automatically notice any changes to .layout.xml files, but these are read from the classpath
-// (under target/classes), not the source path. Using IntelliJ (say) these can be copied over manually by invoking
-// Run > Reload Changed Classes, and then refreshing the browser.
-//
-// This script instead is intended to be run in the background as a daemon; whenever a change
-// is made to any .layout.xml file, gradle will automatically copy over the file to the target directory.
-//
-// The script is run using:
-//
-// gradle -t -b layouts.gradle --offline &
-//
-// To reduce turn-around time further, also use the liveReload.gradle script (to automatically refresh the browser).
-//
-/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-
-defaultTasks 'copyLayouts'
-
-task copyLayouts(type:Copy) {
- from 'src/main/java'
- into 'target/classes'
- include '**/*.layout.xml'
-}
-
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/liveReload.gradle
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/liveReload.gradle b/example/application/simpleapp/dom/liveReload.gradle
deleted file mode 100644
index adb0ab1..0000000
--- a/example/application/simpleapp/dom/liveReload.gradle
+++ /dev/null
@@ -1,56 +0,0 @@
-/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-//
-// 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.
-//
-/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-//
-// This gradle script sets up livereload, configured so that any updates to the dom module's classpath will
-// trigger the browser to reload the page. In particular, this relates to the .layout.xml files which define the
-// grid layout of domain objects.
-//
-// As a prerequisite, the app needs to configured to load the livereload.js script. This can be done by adding the
-// following configuration property (to viewer_wicket.properties, isis.properties or the AppManifest, as you prefer):
-//
-// isis.viewer.wicket.liveReloadUrl=http://localhost:35729/livereload.js?snipver=1
-//
-// This gradle script is run using:
-//
-// gradle -t -b livereload.gradle --offline &
-//
-// To reduce turn-around time further, also use the layouts.gradle script (to automatically copy over the layout.xml
-// files to the classpath).
-//
-/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-
-defaultTasks 'liveReload'
-
-buildscript {
- repositories {
- jcenter()
- }
- dependencies {
- classpath 'org.kordamp.gradle:livereload-gradle-plugin:0.2.1'
- }
-}
-
-apply plugin: 'org.kordamp.gradle.livereload'
-
-liveReload {
- docRoot new File('target/classes').canonicalPath
-}
-
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/log4j.properties
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/log4j.properties b/example/application/simpleapp/dom/log4j.properties
deleted file mode 100644
index ca165ac..0000000
--- a/example/application/simpleapp/dom/log4j.properties
+++ /dev/null
@@ -1,41 +0,0 @@
-# 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.
-
-# LOG4J Configuration
-# ===================
-
-# Basic logging goes to "datanucleus.log"
-log4j.appender.A1=org.apache.log4j.FileAppender
-log4j.appender.A1.File=datanucleus.log
-log4j.appender.A1.layout=org.apache.log4j.PatternLayout
-log4j.appender.A1.layout.ConversionPattern=%d{HH:mm:ss,SSS} (%t) %-5p [%c] - %m%n
-#log4j.appender.A1.Threshold=INFO
-
-# Categories
-# Each category can be set to a "level", and to direct to an appender
-
-# Default to DEBUG level for all DataNucleus categories
-log4j.logger.DataNucleus = DEBUG, A1
-
-log4j.category.com.mchange.v2.c3p0=INFO, A1
-log4j.category.com.mchange.v2.resourcepool=INFO, A1
-log4j.category.org.logicalcobwebs.proxool=INFO,A1
-
-
-# Hbase libs logging
-log4j.category.org.apache.hadoop=INFO,A1
-log4j.category.org.apache.zookeeper=INFO,A1
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/pom.xml
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/pom.xml b/example/application/simpleapp/dom/pom.xml
deleted file mode 100644
index b1fd337..0000000
--- a/example/application/simpleapp/dom/pom.xml
+++ /dev/null
@@ -1,210 +0,0 @@
-<?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.example.application</groupId>
- <artifactId>simpleapp</artifactId>
- <version>1.13.1-SNAPSHOT</version>
- </parent>
-
- <artifactId>simpleapp-dom</artifactId>
- <name>Simple App DOM</name>
-
- <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>
- </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>
-
- <!-- Bytecode libraries (for mocking) -->
- <dependency>
- <groupId>org.objenesis</groupId>
- <artifactId>objenesis</artifactId>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.assertj</groupId>
- <artifactId>assertj-core</artifactId>
- <scope>test</scope>
- </dependency>
-
- </dependencies>
-
- <profiles>
- <profile>
- <id>enhance</id>
- <activation>
- <property>
- <name>!skip.enhance</name>
- </property>
- </activation>
- <properties>
- <datanucleus-maven-plugin.version>4.0.1</datanucleus-maven-plugin.version>
- </properties>
- <build>
- <pluginManagement>
- <plugins>
- <plugin>
- <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
- <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>[${datanucleus-maven-plugin.version},)</versionRange>
- <goals>
- <goal>enhance</goal>
- </goals>
- </pluginExecutionFilter>
- <action>
- <ignore></ignore>
- </action>
- </pluginExecution>
- </pluginExecutions>
- </lifecycleMappingMetadata>
- </configuration>
- </plugin>
- </plugins>
- </pluginManagement>
- <plugins>
- <plugin>
- <groupId>org.datanucleus</groupId>
- <artifactId>datanucleus-maven-plugin</artifactId>
- <version>${datanucleus-maven-plugin.version}</version>
- <configuration>
- <fork>false</fork>
- <log4jConfiguration>${basedir}/log4j.properties</log4jConfiguration>
- <verbose>true</verbose>
- <props>${basedir}/datanucleus.properties</props>
- </configuration>
- <executions>
- <execution>
- <phase>process-classes</phase>
- <goals>
- <goal>enhance</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- <dependencies>
- <dependency>
- <groupId>org.datanucleus</groupId>
- <artifactId>datanucleus-core</artifactId>
- </dependency>
- <dependency>
- <groupId>org.datanucleus</groupId>
- <artifactId>datanucleus-jodatime</artifactId>
- </dependency>
- <dependency>
- <groupId>org.datanucleus</groupId>
- <artifactId>datanucleus-api-jdo</artifactId>
- </dependency>
- </dependencies>
- </profile>
-
- <profile>
- <id>isis-validate</id>
- <activation>
- <property>
- <name>!skip.isis-validate</name>
- </property>
- </activation>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.isis.tool</groupId>
- <artifactId>isis-maven-plugin</artifactId>
- <version>${isis.version}</version>
- <configuration>
- <appManifest>domainapp.dom.DomainAppDomManifest</appManifest>
- </configuration>
- <dependencies>
- <dependency>
- <groupId>${project.groupId}</groupId>
- <artifactId>${project.artifactId}</artifactId>
- <version>${project.version}</version>
- </dependency>
- <!--
- ... workaround to avoid conflict with plexus-default
- (not sure why exclusions in the isis-maven-plugin aren't sufficient, though ...
- -->
- <dependency>
- <groupId>com.google.guava</groupId>
- <artifactId>guava</artifactId>
- <version>19.0</version>
- </dependency>
- <dependency>
- <groupId>org.hsqldb</groupId>
- <artifactId>hsqldb</artifactId>
- <version>2.3.1</version>
- </dependency>
- </dependencies>
- <executions>
- <execution>
- <phase>test</phase>
- <goals>
- <goal>validate</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
-
-
- </profiles>
-
-</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/src/main/java/META-INF/persistence.xml
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/src/main/java/META-INF/persistence.xml b/example/application/simpleapp/dom/src/main/java/META-INF/persistence.xml
deleted file mode 100644
index 8824aa1..0000000
--- a/example/application/simpleapp/dom/src/main/java/META-INF/persistence.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?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="simple">
- </persistence-unit>
-</persistence>
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/src/main/java/domainapp/dom/DomainAppDomManifest.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/src/main/java/domainapp/dom/DomainAppDomManifest.java b/example/application/simpleapp/dom/src/main/java/domainapp/dom/DomainAppDomManifest.java
deleted file mode 100644
index 63266f3..0000000
--- a/example/application/simpleapp/dom/src/main/java/domainapp/dom/DomainAppDomManifest.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * 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 domainapp.dom;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.isis.applib.AppManifest;
-import org.apache.isis.applib.fixturescripts.FixtureScript;
-
-/**
- * Provided for <tt>isis-maven-plugin</tt>.
- */
-public class DomainAppDomManifest implements AppManifest {
-
- @Override
- public List<Class<?>> getModules() {
- return Arrays.<Class<?>>asList(
- DomainAppDomainModule.class // domain (entities and repositories)
- );
- }
-
- @Override
- public List<Class<?>> getAdditionalServices() {
- return Collections.emptyList();
- }
-
- @Override
- public String getAuthenticationMechanism() {
- return null;
- }
-
- @Override
- public String getAuthorizationMechanism() {
- return null;
- }
-
- @Override
- public List<Class<? extends FixtureScript>> getFixtures() {
- return null;
- }
-
- /**
- * No overrides.
- */
- @Override
- public Map<String, String> getConfigurationProperties() {
- return null;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/src/main/java/domainapp/dom/DomainAppDomainModule.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/src/main/java/domainapp/dom/DomainAppDomainModule.java b/example/application/simpleapp/dom/src/main/java/domainapp/dom/DomainAppDomainModule.java
deleted file mode 100644
index 1818053..0000000
--- a/example/application/simpleapp/dom/src/main/java/domainapp/dom/DomainAppDomainModule.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * 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 domainapp.dom;
-
-public final class DomainAppDomainModule {
-
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObject.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObject.java b/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObject.java
deleted file mode 100644
index ff0393a..0000000
--- a/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObject.java
+++ /dev/null
@@ -1,175 +0,0 @@
-/*
- * 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 domainapp.dom.simple;
-
-import javax.jdo.annotations.IdentityType;
-import javax.jdo.annotations.VersionStrategy;
-
-import org.apache.isis.applib.annotation.Action;
-import org.apache.isis.applib.annotation.Auditing;
-import org.apache.isis.applib.annotation.CommandReification;
-import org.apache.isis.applib.annotation.DomainObject;
-import org.apache.isis.applib.annotation.Editing;
-import org.apache.isis.applib.annotation.ParameterLayout;
-import org.apache.isis.applib.annotation.Property;
-import org.apache.isis.applib.annotation.Publishing;
-import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.applib.services.eventbus.ActionDomainEvent;
-import org.apache.isis.applib.services.eventbus.PropertyDomainEvent;
-import org.apache.isis.applib.services.i18n.TranslatableString;
-import org.apache.isis.applib.services.message.MessageService;
-import org.apache.isis.applib.services.repository.RepositoryService;
-import org.apache.isis.applib.services.title.TitleService;
-import org.apache.isis.applib.util.ObjectContracts;
-
-@javax.jdo.annotations.PersistenceCapable(
- identityType=IdentityType.DATASTORE,
- schema = "simple"
-)
-@javax.jdo.annotations.DatastoreIdentity(
- strategy=javax.jdo.annotations.IdGeneratorStrategy.IDENTITY,
- column="id")
-@javax.jdo.annotations.Version(
- strategy= VersionStrategy.DATE_TIME,
- column="version")
-@javax.jdo.annotations.Queries({
- @javax.jdo.annotations.Query(
- name = "findByName", language = "JDOQL",
- value = "SELECT "
- + "FROM domainapp.dom.simple.SimpleObject "
- + "WHERE name.indexOf(:name) >= 0 ")
-})
-@javax.jdo.annotations.Unique(name="SimpleObject_name_UNQ", members = {"name"})
-@DomainObject(
- publishing = Publishing.ENABLED,
- auditing = Auditing.ENABLED
-)
-public class SimpleObject implements Comparable<SimpleObject> {
-
- //region > title
- public TranslatableString title() {
- return TranslatableString.tr("Object: {name}", "name", getName());
- }
- //endregion
-
- //region > constructor
- public SimpleObject(final String name) {
- setName(name);
- }
- //endregion
-
- //region > name (read-only property)
- public static final int NAME_LENGTH = 40;
-
- @javax.jdo.annotations.Column(allowsNull = "false", length = NAME_LENGTH)
- private String name;
- @Property(
- editing = Editing.DISABLED
- )
- public String getName() {
- return name;
- }
- public void setName(final String name) {
- this.name = name;
- }
- //endregion
-
- //region > updateName (action)
- public static class UpdateNameDomainEvent extends ActionDomainEvent<SimpleObject> {}
- @Action(
- command = CommandReification.ENABLED,
- publishing = Publishing.ENABLED,
- semantics = SemanticsOf.IDEMPOTENT,
- domainEvent = UpdateNameDomainEvent.class
- )
- public SimpleObject updateName(@ParameterLayout(named="Name") final String name) {
- setName(name);
- return this;
- }
- public String default0UpdateName() {
- return getName();
- }
- public TranslatableString validate0UpdateName(final String name) {
- return name != null && name.contains("!")? TranslatableString.tr("Exclamation mark is not allowed"): null;
- }
-
- //endregion
-
- //region > notes (editable property)
- public static final int NOTES_LENGTH = 4000;
-
- public static class NotesDomainEvent extends PropertyDomainEvent<SimpleObject,String> {}
- @javax.jdo.annotations.Column(
- allowsNull="true",
- length = NOTES_LENGTH
- )
- private String notes;
- @Property(
- command = CommandReification.ENABLED,
- publishing = Publishing.ENABLED,
- domainEvent = NotesDomainEvent.class
- )
- public String getNotes() {
- return notes;
- }
- public void setNotes(final String notes) {
- this.notes = notes;
- }
- //endregion
-
- //region > delete (action)
- public static class DeleteDomainEvent extends ActionDomainEvent<SimpleObject> {}
- @Action(
- domainEvent = DeleteDomainEvent.class,
- semantics = SemanticsOf.NON_IDEMPOTENT_ARE_YOU_SURE
- )
- public void delete() {
- final String title = titleService.titleOf(this);
- messageService.informUser(String.format("'%s' deleted", title));
- repositoryService.remove(this);
- }
-
- //endregion
-
- //region > toString, compareTo
- @Override
- public String toString() {
- return ObjectContracts.toString(this, "name");
- }
- @Override
- public int compareTo(final SimpleObject other) {
- return ObjectContracts.compare(this, other, "name");
- }
-
- //endregion
-
- //region > injected dependencies
-
- @javax.inject.Inject
- RepositoryService repositoryService;
-
- @javax.inject.Inject
- TitleService titleService;
-
- @javax.inject.Inject
- MessageService messageService;
-
- //endregion
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObject.layout.xml
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObject.layout.xml b/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObject.layout.xml
deleted file mode 100644
index b995607..0000000
--- a/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObject.layout.xml
+++ /dev/null
@@ -1,66 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<!--
- 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.
--->
-<bs3:grid xsi:schemaLocation="http://isis.apache.org/applib/layout/component http://isis.apache.org/applib/layout/component/component.xsd http://isis.apache.org/applib/layout/grid/bootstrap3 http://isis.apache.org/applib/layout/grid/bootstrap3/bootstrap3.xsd" xmlns:c="http://isis.apache.org/applib/layout/component" xmlns:bs3="http://isis.apache.org/applib/layout/grid/bootstrap3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <bs3:row>
- <bs3:col span="12" unreferencedActions="true">
- <c:domainObject bookmarking="AS_ROOT"/>
- </bs3:col>
- </bs3:row>
- <bs3:row>
- <bs3:col span="6">
- <bs3:tabGroup>
- <bs3:tab name="General">
- <bs3:row>
- <bs3:col span="12">
- <c:fieldSet name="Name">
- <c:action id="delete"/>
- <c:property id="name" namedEscaped="true">
- <c:action id="updateName"/>
- </c:property>
- <c:property id="notes" namedEscaped="true" multiLine="10" hidden="ALL_TABLES"/>
- </c:fieldSet>
- </bs3:col>
- </bs3:row>
- </bs3:tab>
- <bs3:tab name="Metadata">
- <bs3:row>
- <bs3:col span="12">
- <c:fieldSet name="Metadata"/>
- </bs3:col>
- </bs3:row>
- </bs3:tab>
- <bs3:tab name="Other">
- <bs3:row>
- <bs3:col span="12">
- <c:fieldSet name="Other" unreferencedProperties="true"/>
- </bs3:col>
- </bs3:row>
- </bs3:tab>
- </bs3:tabGroup>
- <bs3:tabGroup>
- </bs3:tabGroup>
- </bs3:col>
- <bs3:col span="6">
- <bs3:tabGroup unreferencedCollections="true">
- </bs3:tabGroup>
- </bs3:col>
- </bs3:row>
-</bs3:grid>
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObject.png
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObject.png b/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObject.png
deleted file mode 100644
index 0bd6f57..0000000
Binary files a/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObject.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObjectMenu.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObjectMenu.java b/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObjectMenu.java
deleted file mode 100644
index 4079bc8..0000000
--- a/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObjectMenu.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * 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 domainapp.dom.simple;
-
-import java.util.List;
-
-import org.apache.isis.applib.annotation.Action;
-import org.apache.isis.applib.annotation.ActionLayout;
-import org.apache.isis.applib.annotation.BookmarkPolicy;
-import org.apache.isis.applib.annotation.DomainService;
-import org.apache.isis.applib.annotation.DomainServiceLayout;
-import org.apache.isis.applib.annotation.MemberOrder;
-import org.apache.isis.applib.annotation.NatureOfService;
-import org.apache.isis.applib.annotation.ParameterLayout;
-import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.applib.services.eventbus.ActionDomainEvent;
-
-@DomainService(
- nature = NatureOfService.VIEW_MENU_ONLY,
- repositoryFor = SimpleObject.class
-)
-@DomainServiceLayout(
- named = "Simple Objects",
- menuOrder = "10"
-)
-public class SimpleObjectMenu {
-
-
- @Action(semantics = SemanticsOf.SAFE)
- @ActionLayout(bookmarking = BookmarkPolicy.AS_ROOT)
- @MemberOrder(sequence = "1")
- public List<SimpleObject> listAll() {
- return simpleObjectRepository.listAll();
- }
-
-
- @Action(semantics = SemanticsOf.SAFE)
- @ActionLayout(bookmarking = BookmarkPolicy.AS_ROOT)
- @MemberOrder(sequence = "2")
- public List<SimpleObject> findByName(
- @ParameterLayout(named="Name")
- final String name
- ) {
- return simpleObjectRepository.findByName(name);
- }
-
-
- public static class CreateDomainEvent extends ActionDomainEvent<SimpleObjectMenu> {}
- @Action(domainEvent = CreateDomainEvent.class)
- @MemberOrder(sequence = "3")
- public SimpleObject create(
- @ParameterLayout(named="Name")
- final String name) {
- return simpleObjectRepository.create(name);
- }
-
-
- @javax.inject.Inject
- SimpleObjectRepository simpleObjectRepository;
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObjectRepository.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObjectRepository.java b/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObjectRepository.java
deleted file mode 100644
index a5d29e0..0000000
--- a/example/application/simpleapp/dom/src/main/java/domainapp/dom/simple/SimpleObjectRepository.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * 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 domainapp.dom.simple;
-
-import java.util.List;
-
-import org.apache.isis.applib.annotation.DomainService;
-import org.apache.isis.applib.annotation.NatureOfService;
-import org.apache.isis.applib.query.QueryDefault;
-import org.apache.isis.applib.services.registry.ServiceRegistry2;
-import org.apache.isis.applib.services.repository.RepositoryService;
-
-@DomainService(
- nature = NatureOfService.DOMAIN,
- repositoryFor = SimpleObject.class
-)
-public class SimpleObjectRepository {
-
- public List<SimpleObject> listAll() {
- return repositoryService.allInstances(SimpleObject.class);
- }
-
- public List<SimpleObject> findByName(final String name) {
- return repositoryService.allMatches(
- new QueryDefault<>(
- SimpleObject.class,
- "findByName",
- "name", name));
- }
-
- public SimpleObject create(final String name) {
- final SimpleObject object = new SimpleObject(name);
- serviceRegistry.injectServicesInto(object);
- repositoryService.persist(object);
- return object;
- }
-
- @javax.inject.Inject
- RepositoryService repositoryService;
- @javax.inject.Inject
- ServiceRegistry2 serviceRegistry;
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/src/test/java/domainapp/dom/simple/SimpleObjectRepositoryTest.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/src/test/java/domainapp/dom/simple/SimpleObjectRepositoryTest.java b/example/application/simpleapp/dom/src/test/java/domainapp/dom/simple/SimpleObjectRepositoryTest.java
deleted file mode 100644
index ccf4ddf..0000000
--- a/example/application/simpleapp/dom/src/test/java/domainapp/dom/simple/SimpleObjectRepositoryTest.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/**
- * 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 domainapp.dom.simple;
-
-import java.util.List;
-
-import com.google.common.collect.Lists;
-
-import org.hamcrest.Description;
-import org.hamcrest.Matcher;
-import org.hamcrest.TypeSafeMatcher;
-import org.jmock.Expectations;
-import org.jmock.Sequence;
-import org.jmock.auto.Mock;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-
-import org.apache.isis.applib.services.registry.ServiceRegistry2;
-import org.apache.isis.applib.services.repository.RepositoryService;
-import org.apache.isis.core.unittestsupport.jmocking.JUnitRuleMockery2;
-import org.apache.isis.core.unittestsupport.jmocking.JUnitRuleMockery2.Mode;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-public class SimpleObjectRepositoryTest {
-
- @Rule
- public JUnitRuleMockery2 context = JUnitRuleMockery2.createFor(Mode.INTERFACES_AND_CLASSES);
-
- @Mock
- ServiceRegistry2 mockServiceRegistry;
-
- @Mock
- RepositoryService mockRepositoryService;
-
- SimpleObjectRepository simpleObjectRepository;
-
- @Before
- public void setUp() throws Exception {
- simpleObjectRepository = new SimpleObjectRepository();
- simpleObjectRepository.repositoryService = mockRepositoryService;
- simpleObjectRepository.serviceRegistry = mockServiceRegistry;
- }
-
- public static class Create extends SimpleObjectRepositoryTest {
-
- @Test
- public void happyCase() throws Exception {
-
- final String someName = "Foobar";
-
- // given
- final Sequence seq = context.sequence("create");
- context.checking(new Expectations() {
- {
- oneOf(mockServiceRegistry).injectServicesInto(with(any(SimpleObject.class)));
- inSequence(seq);
-
- oneOf(mockRepositoryService).persist(with(nameOf(someName)));
- inSequence(seq);
- }
-
- });
-
- // when
- final SimpleObject obj = simpleObjectRepository.create(someName);
-
- // then
- assertThat(obj).isNotNull();
- assertThat(obj.getName()).isEqualTo(someName);
- }
-
- private static Matcher<SimpleObject> nameOf(final String name) {
- return new TypeSafeMatcher<SimpleObject>() {
- @Override
- protected boolean matchesSafely(final SimpleObject item) {
- return name.equals(item.getName());
- }
-
- @Override
- public void describeTo(final Description description) {
- description.appendText("has name of '" + name + "'");
- }
- };
- }
- }
-
- public static class ListAll extends SimpleObjectRepositoryTest {
-
- @Test
- public void happyCase() throws Exception {
-
- // given
- final List<SimpleObject> all = Lists.newArrayList();
-
- context.checking(new Expectations() {
- {
- oneOf(mockRepositoryService).allInstances(SimpleObject.class);
- will(returnValue(all));
- }
- });
-
- // when
- final List<SimpleObject> list = simpleObjectRepository.listAll();
-
- // then
- assertThat(list).isEqualTo(all);
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/dom/src/test/java/domainapp/dom/simple/SimpleObjectTest.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/dom/src/test/java/domainapp/dom/simple/SimpleObjectTest.java b/example/application/simpleapp/dom/src/test/java/domainapp/dom/simple/SimpleObjectTest.java
deleted file mode 100644
index 371bc8d..0000000
--- a/example/application/simpleapp/dom/src/test/java/domainapp/dom/simple/SimpleObjectTest.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/**
- * 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 domainapp.dom.simple;
-
-import org.junit.Before;
-import org.junit.Test;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-public class SimpleObjectTest {
-
- SimpleObject simpleObject;
-
- @Before
- public void setUp() throws Exception {
- simpleObject = new SimpleObject("Foobar");
- }
-
- public static class Name extends SimpleObjectTest {
-
- @Test
- public void happyCase() throws Exception {
- // given
- assertThat(simpleObject.getName()).isEqualTo("Foobar");
-
- // when
- String name = "Foobar - updated";
- simpleObject.setName(name);
-
- // then
- assertThat(simpleObject.getName()).isEqualTo(name);
- }
- }
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/fixture/pom.xml
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/fixture/pom.xml b/example/application/simpleapp/fixture/pom.xml
deleted file mode 100644
index 6231416..0000000
--- a/example/application/simpleapp/fixture/pom.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-<?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.example.application</groupId>
- <artifactId>simpleapp</artifactId>
- <version>1.13.1-SNAPSHOT</version>
- </parent>
-
- <artifactId>simpleapp-fixture</artifactId>
- <name>Simple App Fixtures</name>
-
- <dependencies>
- <dependency>
- <groupId>${project.groupId}</groupId>
- <artifactId>simpleapp-dom</artifactId>
- <exclusions>
- <exclusion>
- <!-- so don't pick up transitive dependency to asm 4.0.0 -->
- <groupId>org.datanucleus</groupId>
- <artifactId>datanucleus-enhancer</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- </dependencies>
-
-</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/DomainAppFixtureModule.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/DomainAppFixtureModule.java b/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/DomainAppFixtureModule.java
deleted file mode 100644
index 8a707e6..0000000
--- a/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/DomainAppFixtureModule.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * 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 domainapp.fixture;
-
-public final class DomainAppFixtureModule {
-
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/DomainAppFixtureScriptsSpecificationProvider.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/DomainAppFixtureScriptsSpecificationProvider.java b/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/DomainAppFixtureScriptsSpecificationProvider.java
deleted file mode 100644
index 92f56cd..0000000
--- a/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/DomainAppFixtureScriptsSpecificationProvider.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * 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 domainapp.fixture;
-
-import org.apache.isis.applib.annotation.DomainService;
-import org.apache.isis.applib.annotation.NatureOfService;
-import org.apache.isis.applib.fixturescripts.FixtureScripts;
-import org.apache.isis.applib.services.fixturespec.FixtureScriptsSpecification;
-import org.apache.isis.applib.services.fixturespec.FixtureScriptsSpecificationProvider;
-
-import domainapp.fixture.scenarios.RecreateSimpleObjects;
-
-/**
- * Specifies where to find fixtures, and other settings.
- */
-@DomainService(nature = NatureOfService.DOMAIN)
-public class DomainAppFixtureScriptsSpecificationProvider implements FixtureScriptsSpecificationProvider {
- @Override
- public FixtureScriptsSpecification getSpecification() {
- return FixtureScriptsSpecification
- .builder(DomainAppFixtureScriptsSpecificationProvider.class)
- .with(FixtureScripts.MultipleExecutionStrategy.EXECUTE)
- .withRunScriptDefault(RecreateSimpleObjects.class)
- .withRunScriptDropDown(FixtureScriptsSpecification.DropDownPolicy.CHOICES)
- .withRecreate(RecreateSimpleObjects.class)
- .build();
- }
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/dom/simple/SimpleObjectCreate.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/dom/simple/SimpleObjectCreate.java b/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/dom/simple/SimpleObjectCreate.java
deleted file mode 100644
index dae9a58..0000000
--- a/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/dom/simple/SimpleObjectCreate.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * 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 domainapp.fixture.dom.simple;
-
-import org.apache.isis.applib.fixturescripts.FixtureScript;
-
-import domainapp.dom.simple.SimpleObject;
-import domainapp.dom.simple.SimpleObjectMenu;
-
-public class SimpleObjectCreate extends FixtureScript {
-
- //region > name (input)
- private String name;
- /**
- * Name of the object (required)
- */
- public String getName() {
- return name;
- }
-
- public SimpleObjectCreate setName(final String name) {
- this.name = name;
- return this;
- }
- //endregion
-
-
- //region > simpleObject (output)
- private SimpleObject simpleObject;
-
- /**
- * The created simple object (output).
- * @return
- */
- public SimpleObject getSimpleObject() {
- return simpleObject;
- }
- //endregion
-
- @Override
- protected void execute(final ExecutionContext ec) {
-
- String name = checkParam("name", ec, String.class);
-
- this.simpleObject = wrap(simpleObjectMenu).create(name);
-
- // also make available to UI
- ec.addResult(this, simpleObject);
- }
-
- @javax.inject.Inject
- private SimpleObjectMenu simpleObjectMenu;
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/dom/simple/SimpleObjectsTearDown.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/dom/simple/SimpleObjectsTearDown.java b/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/dom/simple/SimpleObjectsTearDown.java
deleted file mode 100644
index dd74086..0000000
--- a/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/dom/simple/SimpleObjectsTearDown.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * 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 domainapp.fixture.dom.simple;
-
-import org.apache.isis.applib.fixturescripts.FixtureScript;
-import org.apache.isis.applib.services.jdosupport.IsisJdoSupport;
-
-public class SimpleObjectsTearDown extends FixtureScript {
-
- @Override
- protected void execute(ExecutionContext executionContext) {
- isisJdoSupport.executeUpdate("delete from \"simple\".\"SimpleObject\"");
- }
-
-
- @javax.inject.Inject
- private IsisJdoSupport isisJdoSupport;
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/scenarios/RecreateSimpleObjects.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/scenarios/RecreateSimpleObjects.java b/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/scenarios/RecreateSimpleObjects.java
deleted file mode 100644
index 944ace7..0000000
--- a/example/application/simpleapp/fixture/src/main/java/domainapp/fixture/scenarios/RecreateSimpleObjects.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * 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 domainapp.fixture.scenarios;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-import com.google.common.collect.Lists;
-
-import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.fixturescripts.FixtureScript;
-
-import domainapp.dom.simple.SimpleObject;
-import domainapp.fixture.dom.simple.SimpleObjectCreate;
-import domainapp.fixture.dom.simple.SimpleObjectsTearDown;
-
-public class RecreateSimpleObjects extends FixtureScript {
-
- public final List<String> NAMES = Collections.unmodifiableList(Arrays.asList(
- "Foo", "Bar", "Baz", "Frodo", "Froyo", "Fizz", "Bip", "Bop", "Bang", "Boo"));
-
- public RecreateSimpleObjects() {
- withDiscoverability(Discoverability.DISCOVERABLE);
- }
-
- //region > number (optional input)
- private Integer number;
-
- /**
- * The number of objects to create, up to 10; optional, defaults to 3.
- */
- public Integer getNumber() {
- return number;
- }
-
- public RecreateSimpleObjects setNumber(final Integer number) {
- this.number = number;
- return this;
- }
- //endregion
-
- //region > simpleObjects (output)
- private final List<SimpleObject> simpleObjects = Lists.newArrayList();
-
- /**
- * The simpleobjects created by this fixture (output).
- */
- @Programmatic
- public List<SimpleObject> getSimpleObjects() {
- return simpleObjects;
- }
- //endregion
-
- @Override
- protected void execute(final ExecutionContext ec) {
-
- // defaults
- final int number = defaultParam("number", ec, 3);
-
- // validate
- if(number < 0 || number > NAMES.size()) {
- throw new IllegalArgumentException(String.format("number must be in range [0,%d)", NAMES.size()));
- }
-
- //
- // execute
- //
- ec.executeChild(this, new SimpleObjectsTearDown());
-
- for (int i = 0; i < number; i++) {
- final SimpleObjectCreate fs = new SimpleObjectCreate().setName(NAMES.get(i));
- ec.executeChild(this, fs.getName(), fs);
- simpleObjects.add(fs.getSimpleObject());
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/integtests/.gitignore
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/integtests/.gitignore b/example/application/simpleapp/integtests/.gitignore
deleted file mode 100644
index 88dfbbc..0000000
--- a/example/application/simpleapp/integtests/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/translations.pot
http://git-wip-us.apache.org/repos/asf/isis/blob/e35c1539/example/application/simpleapp/integtests/logging.properties
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/integtests/logging.properties b/example/application/simpleapp/integtests/logging.properties
deleted file mode 100644
index b552495..0000000
--- a/example/application/simpleapp/integtests/logging.properties
+++ /dev/null
@@ -1,111 +0,0 @@
-# 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.
-
-
-#
-# Isis uses log4j is used to provide system logging
-#
-log4j.rootCategory=INFO, Console
-
-# The console appender
-log4j.appender.Console=org.apache.log4j.ConsoleAppender
-log4j.appender.Console.target=System.out
-log4j.appender.Console.layout=org.apache.log4j.PatternLayout
-log4j.appender.Console.layout.ConversionPattern=%d{ABSOLUTE} [%-20c{1} %-10t %-5p] %m%n
-
-log4j.appender.File=org.apache.log4j.RollingFileAppender
-log4j.appender.File.file=isis.log
-log4j.appender.File.append=false
-log4j.appender.File.layout=org.apache.log4j.PatternLayout
-log4j.appender.File.layout.ConversionPattern=%d [%-20c{1} %-10t %-5p] %m%n
-
-log4j.appender.translations-po=org.apache.log4j.FileAppender
-log4j.appender.translations-po.File=./translations.pot
-log4j.appender.translations-po.Append=false
-log4j.appender.translations-po.layout=org.apache.log4j.PatternLayout
-log4j.appender.translations-po.layout.ConversionPattern=%m%n
-
-! turn on the internal log4j debugging flag so we can see what it is doing
-#log4j.debug=true
-
-
-# DataNucleus
-# the first two log the DML and DDL (if set to DEBUG)
-log4j.logger.DataNucleus.Datastore.Native=WARN, Console
-log4j.logger.DataNucleus.Datastore.Schema=DEBUG, Console
-# the remainder can probably be left to WARN
-log4j.logger.DataNucleus.Persistence=WARN, Console
-log4j.logger.DataNucleus.Transaction=WARN, Console
-log4j.logger.DataNucleus.Connection=WARN, Console
-log4j.logger.DataNucleus.Query=WARN, Console
-log4j.logger.DataNucleus.Cache=WARN, Console
-log4j.logger.DataNucleus.MetaData=WARN, Console
-log4j.logger.DataNucleus.Datastore=WARN, Console
-log4j.logger.DataNucleus.Datastore.Persist=WARN, Console
-log4j.logger.DataNucleus.Datastore.Retrieve=WARN, Console
-log4j.logger.DataNucleus.General=WARN, Console
-log4j.logger.DataNucleus.Lifecycle=WARN, Console
-log4j.logger.DataNucleus.ValueGeneration=WARN, Console
-log4j.logger.DataNucleus.Enhancer=WARN, Console
-log4j.logger.DataNucleus.SchemaTool=ERROR, Console
-log4j.logger.DataNucleus.JDO=WARN, Console
-log4j.logger.DataNucleus.JPA=ERROR, Console
-log4j.logger.DataNucleus.JCA=WARN, Console
-log4j.logger.DataNucleus.IDE=ERROR, Console
-
-log4j.additivity.DataNucleus.Datastore.Native=false
-log4j.additivity.DataNucleus.Datastore.Schema=false
-log4j.additivity.DataNucleus.Datastore.Persistence=false
-log4j.additivity.DataNucleus.Datastore.Transaction=false
-log4j.additivity.DataNucleus.Datastore.Connection=false
-log4j.additivity.DataNucleus.Datastore.Query=false
-log4j.additivity.DataNucleus.Datastore.Cache=false
-log4j.additivity.DataNucleus.Datastore.MetaData=false
-log4j.additivity.DataNucleus.Datastore.Datastore=false
-log4j.additivity.DataNucleus.Datastore.Datastore.Persist=false
-log4j.additivity.DataNucleus.Datastore.Datastore.Retrieve=false
-log4j.additivity.DataNucleus.Datastore.General=false
-log4j.additivity.DataNucleus.Datastore.Lifecycle=false
-log4j.additivity.DataNucleus.Datastore.ValueGeneration=false
-log4j.additivity.DataNucleus.Datastore.Enhancer=false
-log4j.additivity.DataNucleus.Datastore.SchemaTool=false
-log4j.additivity.DataNucleus.Datastore.JDO=false
-log4j.additivity.DataNucleus.Datastore.JPA=false
-log4j.additivity.DataNucleus.Datastore.JCA=false
-log4j.additivity.DataNucleus.Datastore.IDE=false
-
-
-
-
-# if using log4jdbc-remix as JDBC driver
-#log4j.logger.jdbc.sqlonly=DEBUG, sql, Console
-#log4j.additivity.jdbc.sqlonly=false
-#log4j.logger.jdbc.resultsettable=DEBUG, jdbc, Console
-#log4j.additivity.jdbc.resultsettable=false
-
-#log4j.logger.jdbc.audit=WARN,jdbc, Console
-#log4j.additivity.jdbc.audit=false
-#log4j.logger.jdbc.resultset=WARN,jdbc
-#log4j.additivity.jdbc.resultset=false
-#log4j.logger.jdbc.sqltiming=WARN,sqltiming
-#log4j.additivity.jdbc.sqltiming=false
-#log4j.logger.jdbc.connection=FATAL,connection
-#log4j.additivity.jdbc.connection=false
-
-
-log4j.logger.org.apache.isis.core.runtime.services.i18n.po.PoWriter=INFO,translations-po
-log4j.additivity.org.apache.isis.core.runtime.services.i18n.po.PotWriter=false