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 2012/12/06 15:29:38 UTC
[12/32] ISIS-188: factored out isis-parent pom
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/WEB-INF/persistor_datanucleus.properties
----------------------------------------------------------------------
diff --git a/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/WEB-INF/persistor_datanucleus.properties b/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/WEB-INF/persistor_datanucleus.properties
deleted file mode 100644
index 14f8038..0000000
--- a/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/WEB-INF/persistor_datanucleus.properties
+++ /dev/null
@@ -1,114 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-${symbol_pound} Licensed to the Apache Software Foundation (ASF) under one
-${symbol_pound} or more contributor license agreements. See the NOTICE file
-${symbol_pound} distributed with this work for additional information
-${symbol_pound} regarding copyright ownership. The ASF licenses this file
-${symbol_pound} to you under the Apache License, Version 2.0 (the
-${symbol_pound} "License"); you may not use this file except in compliance
-${symbol_pound} with the License. You may obtain a copy of the License at
-${symbol_pound}
-${symbol_pound} http://www.apache.org/licenses/LICENSE-2.0
-${symbol_pound}
-${symbol_pound} Unless required by applicable law or agreed to in writing,
-${symbol_pound} software distributed under the License is distributed on an
-${symbol_pound} "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-${symbol_pound} KIND, either express or implied. See the License for the
-${symbol_pound} specific language governing permissions and limitations
-${symbol_pound} under the License.
-
-${symbol_pound}
-${symbol_pound} configuration file for the JDO objectstore
-${symbol_pound}
-
-isis.persistor.datanucleus.impl.javax.jdo.PersistenceManagerFactoryClass=org.datanucleus.api.jdo.JDOPersistenceManagerFactory
-isis.persistor.datanucleus.impl.datanucleus.autoCreateSchema=true
-isis.persistor.datanucleus.impl.datanucleus.validateTables=true
-isis.persistor.datanucleus.impl.datanucleus.validateConstraints=true
-
-
-${symbol_pound} L2 cache (on by default)
-isis.persistor.datanucleus.impl.datanucleus.cache.level2.type=none
-
-${symbol_pound}see http://www.datanucleus.org/products/datanucleus/jdo/transaction_types.html${symbol_pound}optimistic
-isis.persistor.datanucleus.impl.datanucleus.persistenceByReachabilityAtCommit=false
-
-
-
-
-
-${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbo
l_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}
-${symbol_pound} JDBC connection details
-${symbol_pound} (also update the pom.xml to reference the appropriate JDBC driver)
-${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbo
l_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}
-
-${symbol_pound}
-${symbol_pound} HSQLDB in-memory
-${symbol_pound}
-isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionDriverName=org.hsqldb.jdbcDriver
-isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionURL=jdbc:hsqldb:mem:test
-isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionUserName=sa
-isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionPassword=
-
-${symbol_pound}
-${symbol_pound} HSQLDB in-memory (using log4jdbc-remix)
-${symbol_pound}
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionDriverName=net.sf.log4jdbc.DriverSpy
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionURL=jdbc:log4jdbc:hsqldb:mem:test
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionUserName=sa
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionPassword=
-
-
-
-${symbol_pound}
-${symbol_pound} HSQLDB to file
-${symbol_pound}
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionDriverName=org.hsqldb.jdbcDriver
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionURL=jdbc:hsqldb:file:/tmp/isis-todo-app/hsql-db;hsqldb.write_delay=false;shutdown=true
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionUserName=sa
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionPassword=
-
-${symbol_pound}
-${symbol_pound} HSQLDB to file (using log4jdbc-remix)
-${symbol_pound}
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionDriverName=net.sf.log4jdbc.DriverSpy
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionURL=jdbc:log4jdbc:hsqldb:file:/tmp/isis-todo-app/hsql-db;hsqldb.write_delay=false;shutdown=true
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionUserName=sa
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionPassword=
-
-
-
-${symbol_pound}
-${symbol_pound} PostgreSQL Server
-${symbol_pound}
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionDriverName=org.postgresql.Driver
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionURL=jdbc:postgresql://localhost:5432/isis
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionUserName=isis
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionPassword=isis
-
-${symbol_pound}
-${symbol_pound} PostgreSQL Server (using log4jdbc-remix)
-${symbol_pound}
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionDriverName=net.sf.log4jdbc.DriverSpy
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionURL=jdbc:log4jdbc:postgresql://localhost:5432/isis
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionUserName=isis
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionPassword=isis
-
-
-
-${symbol_pound}
-${symbol_pound} MS SQL Server
-${symbol_pound}
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionDriverName=com.microsoft.sqlserver.jdbc.SQLServerDriver
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionURL=jdbc:sqlserver://127.0.0.1:1433;instance=SQLEXPRESS;databaseName=jdo
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionUserName=jdo
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionPassword=jdopass
-
-${symbol_pound}
-${symbol_pound} MS SQL Server (using log4jdbc-remix)
-${symbol_pound}
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionDriverName=net.sf.log4jdbc.DriverSpy
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionURL=jdbc:log4jdbc:sqlserver://127.0.0.1:1433;instance=SQLEXPRESS;databaseName=jdo
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionUserName=jdo
-${symbol_pound}isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionPassword=jdopass
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/WEB-INF/web.xml
----------------------------------------------------------------------
diff --git a/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/WEB-INF/web.xml b/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/WEB-INF/web.xml
deleted file mode 100644
index 7b6d253..0000000
--- a/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/WEB-INF/web.xml
+++ /dev/null
@@ -1,136 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-<?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.
--->
-<web-app id="WebApp_ID" version="2.4"
- xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
-
- <display-name>Quickstart Wicket app</display-name>
-
- <!-- which configuration directory to read overloaded property files from -->
- <!--
- Normally configuration like this should be done from outside your web
- application. Especially if your configuration is not know in advance or
- if it can change depending on where the application gets deployed.
-
- For instance to configure this in Tomcat outside the application WAR add
- the following line to your application context ( For more detail see:
- http://tomcat.apache.org/tomcat-7.0-doc/config/context.html${symbol_pound}Context_Parameters )
-
- <Parameter name="isis.config.dir" value="/usr/local/tomcat/conf/"
- override="true"/>
-
- If your configuration directory is fixed you can enable the following
- context parameter in here and forget about the outside part.
-
- <context-param>
- <param-name>isis.config.dir</param-name>
- <param-value>location of your config directory if fixed</param-value>
- </context-param>
- -->
-
- <!-- cache static resources for 1 day -->
- <filter>
- <filter-name>ResourceCachingFilter</filter-name>
- <filter-class>org.apache.isis.core.webapp.content.ResourceCachingFilter</filter-class>
- <init-param>
- <param-name>CacheTime</param-name>
- <param-value>86400</param-value>
- </init-param>
- </filter>
- <filter-mapping>
- <filter-name>ResourceCachingFilter</filter-name>
- <url-pattern>*.js</url-pattern>
- </filter-mapping>
- <filter-mapping>
- <filter-name>ResourceCachingFilter</filter-name>
- <url-pattern>*.css</url-pattern>
- </filter-mapping>
- <filter-mapping>
- <filter-name>ResourceCachingFilter</filter-name>
- <url-pattern>*.png</url-pattern>
- </filter-mapping>
- <filter-mapping>
- <filter-name>ResourceCachingFilter</filter-name>
- <url-pattern>*.jpg</url-pattern>
- </filter-mapping>
- <filter-mapping>
- <filter-name>ResourceCachingFilter</filter-name>
- <url-pattern>*.gif</url-pattern>
- </filter-mapping>
- <filter-mapping>
- <filter-name>ResourceCachingFilter</filter-name>
- <url-pattern>*.html</url-pattern>
- </filter-mapping>
-
- <servlet>
- <servlet-name>Resource</servlet-name>
- <servlet-class>org.apache.isis.core.webapp.content.ResourceServlet</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>Resource</servlet-name>
- <url-pattern>*.css</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>Resource</servlet-name>
- <url-pattern>*.png</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>Resource</servlet-name>
- <url-pattern>*.jpg</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>Resource</servlet-name>
- <url-pattern>*.gif</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>Resource</servlet-name>
- <url-pattern>*.js</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>Resource</servlet-name>
- <url-pattern>*.html</url-pattern>
- </servlet-mapping>
-
-
-
- <!--
- -
- - config specific to the wicket-viewer
- -
- -->
- <filter>
- <filter-name>wicket</filter-name>
- <filter-class>org.apache.wicket.protocol.http.WicketFilter</filter-class>
- <init-param>
- <param-name>applicationClassName</param-name>
- <param-value>app.QuickStartApplication</param-value>
- </init-param>
- </filter>
-
- <filter-mapping>
- <filter-name>wicket</filter-name>
- <url-pattern>/*</url-pattern>
- </filter-mapping>
-
-
-</web-app>
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/css/application.css
----------------------------------------------------------------------
diff --git a/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/css/application.css b/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/css/application.css
deleted file mode 100644
index bd4c5b0..0000000
--- a/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/css/application.css
+++ /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.
- */
-
-/*
-uncomment to add a logo (in an ../images directory relative to this file)
-
-#header {
- height: 48px;
- background-image: url("../images/logo.png");
- background-repeat: no-repeat;
-}
-
-#header h1 {
- display: none;
-}
-*/
-
-body {
- background-color: #00477F;
-}
-
-.welcome .intro {
- font-size: larger;
- text-align: center;
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/images/app-banner.pdn
----------------------------------------------------------------------
diff --git a/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/images/app-banner.pdn b/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/images/app-banner.pdn
deleted file mode 100644
index 8fae9aa..0000000
Binary files a/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/images/app-banner.pdn and /dev/null differ
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/images/app-banner.png
----------------------------------------------------------------------
diff --git a/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/images/app-banner.png b/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/images/app-banner.png
deleted file mode 100644
index 01967f2..0000000
Binary files a/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/images/app-banner.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/scripts/application.js
----------------------------------------------------------------------
diff --git a/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/scripts/application.js b/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/scripts/application.js
deleted file mode 100644
index d8cf6fe..0000000
--- a/framework/archetype/quickstart/src/main/resources/archetype-resources/viewer-wicket/src/main/webapp/scripts/application.js
+++ /dev/null
@@ -1,3 +0,0 @@
-$(document).ready(function() {
- /// here...
-});
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/archetype/quickstart/src/test/resources/projects/basic/archetype.properties
----------------------------------------------------------------------
diff --git a/framework/archetype/quickstart/src/test/resources/projects/basic/archetype.properties b/framework/archetype/quickstart/src/test/resources/projects/basic/archetype.properties
deleted file mode 100644
index 57ffe72..0000000
--- a/framework/archetype/quickstart/src/test/resources/projects/basic/archetype.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-#Fri Oct 12 17:51:43 BST 2012
-package=it.pkg
-version=0.1-SNAPSHOT
-groupId=archetype.it
-artifactId=basic
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/archetype/quickstart/src/test/resources/projects/basic/goal.txt
----------------------------------------------------------------------
diff --git a/framework/archetype/quickstart/src/test/resources/projects/basic/goal.txt b/framework/archetype/quickstart/src/test/resources/projects/basic/goal.txt
deleted file mode 100644
index e69de29..0000000
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/pom.xml
----------------------------------------------------------------------
diff --git a/framework/core/pom.xml b/framework/core/pom.xml
index 90e2ebd..c218482 100644
--- a/framework/core/pom.xml
+++ b/framework/core/pom.xml
@@ -14,8 +14,9 @@
<parent>
<groupId>org.apache.isis</groupId>
- <artifactId>isis</artifactId>
+ <artifactId>isis-parent</artifactId>
<version>0.3.1-SNAPSHOT</version>
+ <relativePath>../isis-parent/pom.xml</relativePath>
</parent>
<artifactId>core</artifactId>
@@ -46,20 +47,22 @@
<url>http://incubator.apache.org/isis/${relativeUrl}</url>
<modules>
-
- <module>unittestsupport</module>
<module>applib</module>
<module>metamodel</module>
<module>runtime</module>
<module>webserver</module>
- <module>integtestsupport</module>
<module>bytecode-cglib</module>
<module>bytecode-javassist</module>
<module>objectstore-inmemory</module>
<module>profilestore-inmemory</module>
<module>security-noop</module>
+
+ <module>unittestsupport</module>
+ <module>integtestsupport</module>
+
+ <module>tck</module>
</modules>
<build>
@@ -161,12 +164,6 @@
<artifactId>dflt</artifactId>
<version>0.3.1-SNAPSHOT</version>
</dependency>
- <dependency>
- <groupId>org.apache.isis.runtimes.dflt.bytecode</groupId>
- <artifactId>dflt</artifactId>
- <version>0.3.1-SNAPSHOT</version>
- <scope>test</scope>
- </dependency>
<!-- bytecode-javassist -->
<dependency>
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/pom.xml
----------------------------------------------------------------------
diff --git a/framework/core/tck/pom.xml b/framework/core/tck/pom.xml
new file mode 100644
index 0000000..4898791
--- /dev/null
+++ b/framework/core/tck/pom.xml
@@ -0,0 +1,244 @@
+<?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</groupId>
+ <artifactId>core</artifactId>
+ <version>0.3.1-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.isis.tck</groupId>
+ <artifactId>tck</artifactId>
+
+ <name>TCK App</name>
+
+ <packaging>pom</packaging>
+
+
+ <repositories>
+ <repository>
+ <id>apache.snapshots</id>
+ <name>Apache Snapshots</name>
+ <url>https://repository.apache.org/content/repositories/snapshots/</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ </snapshots>
+ </repository>
+ </repositories>
+
+ <build>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>2.3.1</version>
+ <configuration>
+ <source>1.6</source>
+ <target>1.6</target>
+ </configuration>
+ <executions>
+ <execution>
+ <id>source</id>
+ <phase>compile</phase>
+ </execution>
+ <execution>
+ <id>test</id>
+ <phase>test-compile</phase>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.5</version>
+ <configuration>
+ <excludes>
+ <exclude>**/Test*.java</exclude>
+ </excludes>
+ <useFile>true</useFile>
+ <printSummary>false</printSummary>
+ <outputDirectory>${project.build.directory}/surefire-reports</outputDirectory>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-report-plugin</artifactId>
+ <version>2.5</version>
+ <configuration>
+ <excludes>
+ <exclude>**/Test*.java</exclude>
+ </excludes>
+ <showSuccess>false</showSuccess>
+ </configuration>
+ <executions>
+ <execution>
+ <phase>test</phase>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.mortbay.jetty</groupId>
+ <artifactId>maven-jetty-plugin</artifactId>
+ <version>6.1.25</version>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-shade-plugin</artifactId>
+ <version>1.4</version>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <version>1.6</version>
+ <executions>
+ <execution>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-report-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+
+ <dependencyManagement>
+ <dependencies>
+
+ <!-- this project's own modules -->
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>tck-dom</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>tck-fixture</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+
+ <!-- isis: applib -->
+ <dependency>
+ <groupId>org.apache.isis</groupId>
+ <artifactId>applib</artifactId>
+ <version>0.3.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis</groupId>
+ <artifactId>applib</artifactId>
+ <classifier>javadoc</classifier>
+ <version>0.3.1-SNAPSHOT</version>
+ </dependency>
+
+ <!-- isis: core -->
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>commons</artifactId>
+ <version>0.3.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-metamodel</artifactId>
+ <version>0.3.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>progmodel</artifactId>
+ <version>0.3.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>runtime</artifactId>
+ <version>0.3.1-SNAPSHOT</version>
+ </dependency>
+
+ <!-- isis: security: dflt -->
+ <dependency>
+ <groupId>org.apache.isis.security</groupId>
+ <artifactId>dflt</artifactId>
+ <version>0.3.1-SNAPSHOT</version>
+ </dependency>
+
+ <!-- isis: runtimes: dflt -->
+ <dependency>
+ <groupId>org.apache.isis.runtimes.dflt</groupId>
+ <artifactId>runtime</artifactId>
+ <version>0.3.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.runtimes.dflt</groupId>
+ <artifactId>isis-webserver</artifactId>
+ <version>0.3.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.runtimes.dflt.bytecode</groupId>
+ <artifactId>dflt</artifactId>
+ <version>0.3.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.runtimes.dflt.bytecode</groupId>
+ <artifactId>javassist</artifactId>
+ <version>0.3.1-SNAPSHOT</version>
+ </dependency>
+
+ <!-- isis: runtimes-dflt: objectstores: dflt -->
+ <dependency>
+ <groupId>org.apache.isis.runtimes.dflt.objectstores</groupId>
+ <artifactId>dflt</artifactId>
+ <version>0.3.1-SNAPSHOT</version>
+ </dependency>
+
+ <!-- isis: runtimes-dflt: profilestores: dflt -->
+ <dependency>
+ <groupId>org.apache.isis.runtimes.dflt.profilestores</groupId>
+ <artifactId>dflt</artifactId>
+ <version>0.3.1-SNAPSHOT</version>
+ </dependency>
+
+ </dependencies>
+ </dependencyManagement>
+
+ <modules>
+ <module>tck-dom</module>
+ <module>tck-fixture</module>
+ </modules>
+</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/.gitignore
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/.gitignore b/framework/core/tck/tck-dom/.gitignore
new file mode 100644
index 0000000..0a37d92
--- /dev/null
+++ b/framework/core/tck/tck-dom/.gitignore
@@ -0,0 +1,19 @@
+#
+# 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
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/log4j.properties
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/log4j.properties b/framework/core/tck/tck-dom/log4j.properties
new file mode 100644
index 0000000..155ae59
--- /dev/null
+++ b/framework/core/tck/tck-dom/log4j.properties
@@ -0,0 +1,40 @@
+# 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.
+
+
+
+# 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/cb83d4c7/framework/core/tck/tck-dom/pom.xml
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/pom.xml b/framework/core/tck/tck-dom/pom.xml
new file mode 100644
index 0000000..99ddbd4
--- /dev/null
+++ b/framework/core/tck/tck-dom/pom.xml
@@ -0,0 +1,151 @@
+<?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.tck</groupId>
+ <artifactId>tck</artifactId>
+ <version>0.3.1-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>tck-dom</artifactId>
+ <name>TCK DOM</name>
+
+ <profiles>
+ <profile>
+ <id>isis-jdo-objectstore</id>
+ <activation>
+ <property>
+ <name>component</name>
+ <value>isis-jdo-objectstore</value>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.datanucleus</groupId>
+ <artifactId>maven-datanucleus-plugin</artifactId>
+ <version>3.1.1</version>
+ <configuration>
+ <fork>false</fork>
+ <verbose>true</verbose>
+ <log4jConfiguration>${basedir}/log4j.properties</log4jConfiguration>
+ </configuration>
+ <executions>
+ <execution>
+ <phase>compile</phase>
+ <goals>
+ <goal>enhance</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ <!--
+ <plugin>
+ <groupId>org.apache.isis.tools</groupId>
+ <artifactId>isis-maven-plugin</artifactId>
+ <version>0.3.1-SNAPSHOT</version>
+ </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>
+ maven-datanucleus-plugin
+ </artifactId>
+ <versionRange>
+ [3.0.2,)
+ </versionRange>
+ <goals>
+ <goal>enhance</goal>
+ </goals>
+ </pluginExecutionFilter>
+ <action>
+ <ignore></ignore>
+ </action>
+ </pluginExecution>
+ </pluginExecutions>
+ </lifecycleMappingMetadata>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+ </profile>
+ </profiles>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.isis</groupId>
+ <artifactId>applib</artifactId>
+ </dependency>
+
+ <!-- necessary, since we have JDO annotations in the code -->
+ <dependency>
+ <groupId>javax.jdo</groupId>
+ <artifactId>jdo-api</artifactId>
+ <version>3.0.1</version>
+ <exclusions>
+ <exclusion>
+ <!-- use geronimo-jta_1.1_spec instead -->
+ <groupId>javax.transaction</groupId>
+ <artifactId>jta</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.datanucleus</groupId>
+ <artifactId>datanucleus-core</artifactId>
+ <version>3.1.2</version>
+ <scope>runtime</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.datanucleus</groupId>
+ <artifactId>datanucleus-enhancer</artifactId>
+ <version>3.1.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.datanucleus</groupId>
+ <artifactId>datanucleus-api-jdo</artifactId>
+ <version>3.1.2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.geronimo.specs</groupId>
+ <artifactId>geronimo-jta_1.1_spec</artifactId>
+ <version>1.1.1</version>
+ </dependency>
+ </dependencies>
+
+</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/appended-resources/supplemental-models.xml
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/appended-resources/supplemental-models.xml b/framework/core/tck/tck-dom/src/main/appended-resources/supplemental-models.xml
new file mode 100644
index 0000000..bbf2a84
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/appended-resources/supplemental-models.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<supplementalDataModels
+ xmlns="http://maven.apache.org/supplemental-model/1.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/supplemental-model/1.0.0
+ http://maven.apache.org/xsd/supplemental-model-1.0.0.xsd">
+
+</supplementalDataModels>
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/AbstractEntityRepository.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/AbstractEntityRepository.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/AbstractEntityRepository.java
new file mode 100644
index 0000000..c65fe21
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/AbstractEntityRepository.java
@@ -0,0 +1,72 @@
+/*
+ * 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.tck.dom;
+
+import java.util.List;
+import java.util.Map;
+
+import org.apache.isis.applib.AbstractFactoryAndRepository;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.Programmatic;
+import org.apache.isis.applib.annotation.QueryOnly;
+import org.apache.isis.applib.query.Query;
+import org.apache.isis.applib.query.QueryDefault;
+
+public abstract class AbstractEntityRepository<T> extends AbstractFactoryAndRepository {
+
+ private final Class<T> entityClass;
+ private final String serviceId;
+
+ public AbstractEntityRepository(Class<T> entityClass, String serviceId) {
+ this.entityClass = entityClass;
+ this.serviceId = serviceId;
+ }
+
+ @Override
+ public final String getId() {
+ return serviceId;
+ }
+
+ @QueryOnly
+ @MemberOrder(sequence = "1")
+ public List<T> list() {
+ return allInstances(entityClass);
+ }
+
+ @MemberOrder(sequence = "2")
+ public T newEntity() {
+ final T entity = newTransientInstance(entityClass);
+ persist(entity);
+ return entity;
+ }
+
+ @Programmatic
+ public T findByNamedQueryFirstOnly(String queryName, Map<String, Object> argumentByParameterName) {
+ final Query<T> query = new QueryDefault<T>(entityClass, queryName, argumentByParameterName);
+ return this.firstMatch(query);
+ }
+
+ @Programmatic
+ public List<T> findByNamedQueryAll(String queryName, Map<String, Object> argumentByParameterName) {
+ final Query<T> query = new QueryDefault<T>(entityClass, queryName, argumentByParameterName);
+ return this.allMatches(query);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/Approver.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/Approver.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/Approver.java
new file mode 100644
index 0000000..b53da6a
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/Approver.java
@@ -0,0 +1,24 @@
+/*
+ * 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.tck.dom.claimapp.claims;
+
+public interface Approver {
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/Claim.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/Claim.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/Claim.java
new file mode 100644
index 0000000..cb48621
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/Claim.java
@@ -0,0 +1,239 @@
+/*
+ * 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.tck.dom.claimapp.claims;
+
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.isis.applib.AbstractDomainObject;
+import org.apache.isis.applib.annotation.Disabled;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.value.Color;
+import org.apache.isis.applib.value.Date;
+
+public class Claim extends AbstractDomainObject {
+
+ // {{ Title
+ public String title() {
+ return getStatus() + " - " + getDate();
+ }
+
+ // }}
+
+ // {{ Lifecycle
+ public void created() {
+ status = "New";
+ date = new Date();
+ }
+
+ // }}
+
+ // {{ Description
+ private String description;
+
+ @MemberOrder(sequence = "1")
+ public String getDescription() {
+ return description;
+ }
+
+ public void setDescription(final String description) {
+ this.description = description;
+ }
+
+ public String defaultDescription() {
+ return "enter a description here";
+ }
+
+ // }}
+
+ // {{ Date
+ private Date date;
+
+ @MemberOrder(sequence = "2")
+ public Date getDate() {
+ return date;
+ }
+
+ public void setDate(final Date date) {
+ this.date = date;
+ }
+
+ // }}
+
+ // {{ Status
+ private String status;
+
+ @Disabled
+ @MemberOrder(sequence = "3")
+ public String getStatus() {
+ return status;
+ }
+
+ public void setStatus(final String status) {
+ this.status = status;
+ }
+
+ // }}
+
+ // {{ Claimant
+ private Claimant claimant;
+
+ @Disabled
+ @MemberOrder(sequence = "4")
+ public Claimant getClaimant() {
+ return claimant;
+ }
+
+ public void setClaimant(final Claimant claimant) {
+ this.claimant = claimant;
+ }
+
+ // }}
+
+ // {{ BigDecimal
+ private BigDecimal bigDecimal;
+
+ @MemberOrder(sequence = "9")
+ public BigDecimal getBigDecimal() {
+ return bigDecimal;
+ }
+
+ public void setBigDecimal(final BigDecimal bigDecimal) {
+ this.bigDecimal = bigDecimal;
+ }
+
+ public void modifyBigDecimal(final BigDecimal bigDecimal) {
+ // check for no-op
+ if (bigDecimal == null || bigDecimal.equals(getBigDecimal())) {
+ return;
+ }
+ // associate new
+ setBigDecimal(bigDecimal);
+ // additional business logic
+ onModifyBigDecimal(bigDecimal);
+ }
+
+ public void clearBigDecimal() {
+ // check for no-op
+ if (getBigDecimal() == null) {
+ return;
+ }
+ // dissociate existing
+ setBigDecimal(null);
+ // additional business logic
+ onClearBigDecimal();
+ }
+
+ protected void onModifyBigDecimal(final BigDecimal bigDecimal) {
+ }
+
+ protected void onClearBigDecimal() {
+ }
+
+ // }}
+
+ // {{ Color
+ private Color color;
+
+ @MemberOrder(sequence = "8")
+ public Color getColor() {
+ return color;
+ }
+
+ public void setColor(final Color color) {
+ this.color = color;
+ }
+
+ public void modifyColor(final Color color) {
+ // check for no-op
+ if (color == null || color.equals(getColor())) {
+ return;
+ }
+ // associate new
+ setColor(color);
+ // additional business logic
+ onModifyColor(color);
+ }
+
+ public void clearColor() {
+ // check for no-op
+ if (getColor() == null) {
+ return;
+ }
+ // dissociate existing
+ setColor(null);
+ // additional business logic
+ onClearColor();
+ }
+
+ protected void onModifyColor(final Color color) {
+ }
+
+ protected void onClearColor() {
+ }
+
+ // }}
+
+ // {{ Approver
+ private Approver approver;
+
+ @Disabled
+ @MemberOrder(sequence = "5")
+ public Approver getApprover() {
+ return approver;
+ }
+
+ public void setApprover(final Approver approver) {
+ this.approver = approver;
+ }
+
+ // }}
+
+ // {{ Items
+ private final List<ClaimItem> items = new ArrayList<ClaimItem>();
+
+ @MemberOrder(sequence = "6")
+ public List<ClaimItem> getItems() {
+ return items;
+ }
+
+ public void addToItems(final ClaimItem item) {
+ items.add(item);
+ }
+
+ // }}
+
+ // {{ action: Submit
+ public void submit(final Approver approver) {
+ setStatus("Submitted");
+ setApprover(approver);
+ }
+
+ public String disableSubmit() {
+ return getStatus().equals("New") ? null : "Claim has already been submitted";
+ }
+
+ public Object[] defaultSubmit() {
+ return new Object[] { getClaimant().getApprover() };
+ }
+ // }}
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/ClaimItem.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/ClaimItem.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/ClaimItem.java
new file mode 100644
index 0000000..1deee7e
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/ClaimItem.java
@@ -0,0 +1,77 @@
+/*
+ * 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.tck.dom.claimapp.claims;
+
+import org.apache.isis.applib.AbstractDomainObject;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.value.Date;
+import org.apache.isis.applib.value.Money;
+
+public class ClaimItem extends AbstractDomainObject {
+
+ // {{ Title
+ public String title() {
+ return getDescription();
+ }
+
+ // }}
+
+ // {{ DateIncurred
+ private Date dateIncurred;
+
+ @MemberOrder(sequence = "1")
+ public Date getDateIncurred() {
+ return dateIncurred;
+ }
+
+ public void setDateIncurred(final Date dateIncurred) {
+ this.dateIncurred = dateIncurred;
+ }
+
+ // }}
+
+ // {{ Description
+ private String description;
+
+ @MemberOrder(sequence = "2")
+ public String getDescription() {
+ return description;
+ }
+
+ public void setDescription(final String description) {
+ this.description = description;
+ }
+
+ // }}
+
+ // {{ Amount
+ private Money amount;
+
+ @MemberOrder(sequence = "3")
+ public Money getAmount() {
+ return amount;
+ }
+
+ public void setAmount(final Money price) {
+ this.amount = price;
+ }
+ // }}
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/ClaimRepository.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/ClaimRepository.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/ClaimRepository.java
new file mode 100644
index 0000000..9eb6f12
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/ClaimRepository.java
@@ -0,0 +1,36 @@
+/*
+ * 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.tck.dom.claimapp.claims;
+
+import java.util.List;
+
+import org.apache.isis.applib.annotation.Named;
+
+@Named("Claims")
+public interface ClaimRepository {
+
+ public List<Claim> allClaims();
+
+ public List<Claim> findClaims(@Named("Description") String description);
+
+ public List<Claim> claimsFor(Claimant claimant);
+
+ public Claim newClaim(Claimant claimant);
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/ClaimRepositoryImpl.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/ClaimRepositoryImpl.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/ClaimRepositoryImpl.java
new file mode 100644
index 0000000..1eefa13
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/ClaimRepositoryImpl.java
@@ -0,0 +1,46 @@
+/*
+ * 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.tck.dom.claimapp.claims;
+
+import java.util.List;
+
+public class ClaimRepositoryImpl implements ClaimRepository {
+
+ @Override
+ public List<Claim> allClaims() {
+ return null;
+ }
+
+ @Override
+ public List<Claim> findClaims(final String description) {
+ return null;
+ }
+
+ @Override
+ public List<Claim> claimsFor(final Claimant claimant) {
+ return null;
+ }
+
+ @Override
+ public Claim newClaim(final Claimant claimant) {
+ return null;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/Claimant.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/Claimant.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/Claimant.java
new file mode 100644
index 0000000..5dd2ba1
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/claims/Claimant.java
@@ -0,0 +1,26 @@
+/*
+ * 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.tck.dom.claimapp.claims;
+
+public interface Claimant {
+
+ Approver getApprover();
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/employees/Employee.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/employees/Employee.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/employees/Employee.java
new file mode 100644
index 0000000..dd6f12b
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/employees/Employee.java
@@ -0,0 +1,120 @@
+/*
+ * 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.tck.dom.claimapp.employees;
+
+import org.apache.isis.applib.AbstractDomainObject;
+import org.apache.isis.applib.annotation.Disabled;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.When;
+import org.apache.isis.tck.dom.claimapp.claims.Approver;
+import org.apache.isis.tck.dom.claimapp.claims.Claimant;
+
+public class Employee extends AbstractDomainObject implements Claimant, Approver {
+
+ // {{ Title
+ public String title() {
+ return getName();
+ }
+
+ // }}
+
+ // {{ Name
+ private String name;
+
+ @MemberOrder(sequence = "1")
+ public String getName() {
+ return name;
+ }
+
+ public void setName(final String name) {
+ this.name = name;
+ }
+
+ public void modifyName(final String name) {
+ setName(name);
+ }
+
+ public void clearName() {
+ setName(null);
+ }
+
+ public boolean whetherHideName;
+
+ public boolean hideName() {
+ return whetherHideName;
+ }
+
+ public String reasonDisableName;
+
+ public String disableName() {
+ return reasonDisableName;
+ }
+
+ public String reasonValidateName;
+
+ public String validateName(final String name) {
+ return reasonValidateName;
+ }
+
+ // }}
+
+ // {{ Password
+ private String password;
+
+ @MemberOrder(sequence = "2")
+ @Disabled(when = When.ONCE_PERSISTED)
+ public String getPassword() {
+ return password;
+ }
+
+ public void setPassword(final String password) {
+ this.password = password;
+ }
+
+ // }}
+
+ // {{ Approver
+ private Approver approver;
+
+ @Override
+ @MemberOrder(sequence = "2")
+ public Approver getApprover() {
+ return approver;
+ }
+
+ public void setApprover(final Approver approver) {
+ this.approver = approver;
+ }
+
+ // }}
+
+ // {{ injected: EmployeeRepository
+ private EmployeeRepository employeeRepository;
+
+ public EmployeeRepository getEmployeeRepository() {
+ return employeeRepository;
+ }
+
+ public void setEmployeeRepository(final EmployeeRepository employeeRepository) {
+ this.employeeRepository = employeeRepository;
+ }
+ // }}
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/employees/EmployeeRepository.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/employees/EmployeeRepository.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/employees/EmployeeRepository.java
new file mode 100644
index 0000000..773a674
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/employees/EmployeeRepository.java
@@ -0,0 +1,32 @@
+/*
+ * 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.tck.dom.claimapp.employees;
+
+import java.util.List;
+
+import org.apache.isis.applib.annotation.Named;
+
+@Named("Employees")
+public interface EmployeeRepository {
+
+ public List<Employee> allEmployees();
+
+ public List<Employee> findEmployees(@Named("Name") String name);
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/employees/EmployeeRepositoryImpl.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/employees/EmployeeRepositoryImpl.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/employees/EmployeeRepositoryImpl.java
new file mode 100644
index 0000000..9fc09b2
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/claimapp/employees/EmployeeRepositoryImpl.java
@@ -0,0 +1,35 @@
+/*
+ * 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.tck.dom.claimapp.employees;
+
+import java.util.List;
+
+public class EmployeeRepositoryImpl implements EmployeeRepository {
+
+ @Override
+ public List<Employee> allEmployees() {
+ return null;
+ }
+
+ @Override
+ public List<Employee> findEmployees(final String name) {
+ return null;
+ }
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/defaults/HiddenRepository.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/defaults/HiddenRepository.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/defaults/HiddenRepository.java
new file mode 100644
index 0000000..9e9ab0d
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/defaults/HiddenRepository.java
@@ -0,0 +1,29 @@
+/*
+ * 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.tck.dom.defaults;
+
+import org.apache.isis.applib.annotation.Hidden;
+
+@Hidden
+public class HiddenRepository {
+
+ public String someAction() {
+ return null;
+ }
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/defaults/WithDefaultsEntity.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/defaults/WithDefaultsEntity.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/defaults/WithDefaultsEntity.java
new file mode 100644
index 0000000..78ae7b8
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/defaults/WithDefaultsEntity.java
@@ -0,0 +1,112 @@
+/*
+ * 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.tck.dom.defaults;
+
+import java.util.List;
+
+import org.apache.isis.applib.AbstractDomainObject;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.Title;
+
+public class WithDefaultsEntity extends AbstractDomainObject {
+
+ // {{ Name (string, title)
+ private String name;
+
+ @MemberOrder(sequence = "1")
+ @Title
+ public String getName() {
+ return name;
+ }
+
+ public void setName(final String name) {
+ this.name = name;
+ }
+
+ public String defaultName() {
+ return "default-name";
+ }
+
+ // }}
+
+ // {{ Flag (boolean)
+ private boolean flag;
+
+ @MemberOrder(sequence = "1")
+ public boolean getFlag() {
+ return flag;
+ }
+
+ public void setFlag(final boolean flag) {
+ this.flag = flag;
+ }
+
+ public boolean defaultFlag() {
+ return true;
+ }
+
+ // }}
+
+ // {{ AnInt (int)
+ private int anInt;
+
+ @MemberOrder(sequence = "1")
+ public int getAnInt() {
+ return anInt;
+ }
+
+ public void setAnInt(final int anInt) {
+ this.anInt = anInt;
+ }
+
+ public int defaultAnInt() {
+ return 42;
+ }
+
+ // }}
+
+ // {{ Other (property)
+ private WithDefaultsEntity other;
+
+ @MemberOrder(sequence = "1")
+ public WithDefaultsEntity getOther() {
+ return other;
+ }
+
+ public void setOtherEntity(final WithDefaultsEntity withDefaultsEntity) {
+ this.other = withDefaultsEntity;
+ }
+
+ public WithDefaultsEntity defaultOther() {
+ final List<WithDefaultsEntity> list = repository.list();
+ return list.size() > 0 ? list.get(list.size() - 1) : null;
+ }
+
+ // }}
+
+ // {{ injected: WithDefaultsEntityRepository
+ private WithDefaultsEntityRepository repository;
+
+ public void setWithDefaultsEntityRepository(final WithDefaultsEntityRepository repository) {
+ this.repository = repository;
+ }
+ // }}
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/defaults/WithDefaultsEntityRepository.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/defaults/WithDefaultsEntityRepository.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/defaults/WithDefaultsEntityRepository.java
new file mode 100644
index 0000000..5aa2a35
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/defaults/WithDefaultsEntityRepository.java
@@ -0,0 +1,56 @@
+/*
+ * 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.tck.dom.defaults;
+
+import java.util.List;
+
+import org.apache.isis.applib.AbstractFactoryAndRepository;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.Named;
+import org.apache.isis.applib.annotation.QueryOnly;
+import org.apache.isis.applib.filter.Filter;
+
+@Named("Simples")
+public class WithDefaultsEntityRepository extends AbstractFactoryAndRepository {
+
+ @Override
+ public String getId() {
+ return "withDefaultsEntities";
+ }
+
+ @MemberOrder(sequence = "1")
+ @QueryOnly
+ public List<WithDefaultsEntity> list() {
+ final Filter<Object> filterPersistentOnly = new Filter<Object>() {
+
+ @Override
+ public boolean accept(final Object t) {
+ return getContainer().isPersistent(t);
+ }
+ };
+ return allMatches(WithDefaultsEntity.class, filterPersistentOnly);
+ }
+
+ @MemberOrder(sequence = "3")
+ public WithDefaultsEntity newTransientEntity() {
+ return newTransientInstance(WithDefaultsEntity.class);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/movies/Movie.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/movies/Movie.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/movies/Movie.java
new file mode 100644
index 0000000..ccecba6
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/movies/Movie.java
@@ -0,0 +1,68 @@
+/*
+ * 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.tck.dom.movies;
+
+import java.util.List;
+
+import com.google.common.collect.Lists;
+
+import org.apache.isis.applib.annotation.ObjectType;
+
+@ObjectType("movies.MOVIE")
+public class Movie {
+
+ public String title() {
+ return name;
+ }
+
+ // {{ name: String
+ private String name;
+ public String getName() {
+ return name;
+ }
+ public void setName(final String name) {
+ this.name = name;
+ }
+ // }}
+
+ // {{ director: Person
+ private Person director;
+ public Person getDirector() {
+ return director;
+ }
+ public void setDirector(final Person director) {
+ this.director = director;
+ }
+
+ // }}
+
+ // {{ roles: List
+ private final List<Role> roles = Lists.newArrayList();
+ public List<Role> getRoles() {
+ return roles;
+ }
+ public void addToRoles(final Role role) {
+ roles.add(role);
+ }
+ public void removeFromRoles(final Role role) {
+ roles.remove(role);
+ }
+ // }}
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/movies/MovieDomainRepository.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/movies/MovieDomainRepository.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/movies/MovieDomainRepository.java
new file mode 100644
index 0000000..5852810
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/movies/MovieDomainRepository.java
@@ -0,0 +1,50 @@
+/*
+ * 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.tck.dom.movies;
+
+import java.util.List;
+
+import org.apache.isis.applib.DomainObjectContainer;
+
+public class MovieDomainRepository {
+
+ public List<Person> allPersons() {
+ return container.allInstances(Person.class);
+ }
+
+ public List<Movie> allMovies() {
+ return container.allInstances(Movie.class);
+ }
+
+ public List<Role> allRoles() {
+ return container.allInstances(Role.class);
+ }
+
+
+ // {{ injected: DomainObjectContainer
+ private DomainObjectContainer container;
+
+ public void setDomainObjectContainer(final DomainObjectContainer container) {
+ this.container = container;
+ }
+ // }}
+
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/movies/Person.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/movies/Person.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/movies/Person.java
new file mode 100644
index 0000000..408402d
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/movies/Person.java
@@ -0,0 +1,54 @@
+/*
+ * 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.tck.dom.movies;
+
+import java.util.Date;
+
+import org.apache.isis.applib.annotation.ObjectType;
+
+@ObjectType("movies.PERSON")
+public class Person {
+
+ public String title() {
+ return name;
+ }
+
+ // {{ name: String
+ private String name;
+ public String getName() {
+ return name;
+ }
+ public void setName(final String name) {
+ this.name = name;
+ }
+ // }}
+
+
+ // {{ Date: java.util.Date
+ private Date date;
+ public Date getDate() {
+ return date;
+ }
+ public void setDate(final Date date) {
+ this.date = date;
+ }
+ // }}
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/movies/Role.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/movies/Role.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/movies/Role.java
new file mode 100644
index 0000000..48c02bb
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/movies/Role.java
@@ -0,0 +1,54 @@
+/*
+ * 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.tck.dom.movies;
+
+import org.apache.isis.applib.annotation.ObjectType;
+
+
+@ObjectType("movies.ROLE")
+public class Role {
+
+ public String title() {
+ return name;
+ }
+
+ // {{ name: String
+ private String name;
+ public String getName() {
+ return name;
+ }
+ public void setName(final String name) {
+ this.name = name;
+ }
+ // }}
+
+
+ // {{ actor: Person
+ private Person actor;
+ public Person getActor() {
+ return actor;
+ }
+ public void setActor(final Person actor) {
+ this.actor = actor;
+ }
+ // }}
+
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/poly/Empty.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/poly/Empty.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/poly/Empty.java
new file mode 100755
index 0000000..2db0384
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/poly/Empty.java
@@ -0,0 +1,23 @@
+/*
+ * 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.tck.dom.poly;
+
+public interface Empty {
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/cb83d4c7/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/poly/EmptyEntityWithOwnProperty.java
----------------------------------------------------------------------
diff --git a/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/poly/EmptyEntityWithOwnProperty.java b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/poly/EmptyEntityWithOwnProperty.java
new file mode 100644
index 0000000..03261ed
--- /dev/null
+++ b/framework/core/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/poly/EmptyEntityWithOwnProperty.java
@@ -0,0 +1,36 @@
+/*
+ * 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.tck.dom.poly;
+
+
+public class EmptyEntityWithOwnProperty implements Empty {
+
+ // {{ Special: string
+ private String special;
+
+ public String getSpecial() {
+ return special;
+ }
+
+ public void setSpecial(final String special) {
+ this.special = special;
+ }
+ // }}
+
+}
\ No newline at end of file