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 2013/10/08 08:46:59 UTC
[05/12] ISIS-555: new simple archetype;
mothballing non-maintained examples
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/Approver.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/Approver.java b/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/Approver.java
new file mode 100644
index 0000000..a479da1
--- /dev/null
+++ b/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/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.example.application.claims.dom.claim;
+
+public interface Approver {
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/Claim.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/Claim.java b/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/Claim.java
new file mode 100644
index 0000000..c4f9df4
--- /dev/null
+++ b/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/Claim.java
@@ -0,0 +1,323 @@
+/*
+ * 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.example.application.claims.dom.claim;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.apache.isis.applib.AbstractDomainObject;
+import org.apache.isis.applib.annotation.Disabled;
+import org.apache.isis.applib.annotation.Hidden;
+import org.apache.isis.applib.annotation.MaxLength;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.MustSatisfy;
+import org.apache.isis.applib.annotation.Named;
+import org.apache.isis.applib.annotation.Optional;
+import org.apache.isis.applib.spec.Specification;
+import org.apache.isis.applib.util.Reasons;
+import org.apache.isis.applib.value.Date;
+import org.apache.isis.applib.value.Money;
+
+/**
+ * @author danhaywood
+ */
+public class Claim extends AbstractDomainObject /* implements Calendarable */{
+
+ // {{ Title
+ public String title() {
+ return getStatus() + " - " + getDate();
+ }
+
+ // }}
+
+ // {{ Lifecycle
+ public void created() {
+ status = "New";
+ date = new Date(); // applib date uses the Clock
+ }
+
+ // }}
+
+ // {{ Rush
+ private boolean rush;
+
+ @Hidden
+ @MemberOrder(sequence = "1.2")
+ public boolean getRush() {
+ return rush;
+ }
+
+ public void setRush(final boolean flag) {
+ this.rush = flag;
+ }
+
+ // }}
+
+ // {{ 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";
+ }
+
+ public String validateDescription(final String description) {
+ if (description == null) {
+ return null;
+ }
+ if (description.contains("foobar")) {
+ return "can't contain foobar!";
+ }
+ return null;
+ }
+
+ // }}
+
+ // {{ Date
+ private Date date;
+
+ @MemberOrder(sequence = "2")
+ public Date getDate() {
+ return date;
+ }
+
+ public void setDate(final Date date) {
+ this.date = date;
+ }
+
+ // }}
+
+ // {{ Status
+ /**
+ * @uml.property name="status"
+ */
+ private String status;
+
+ /**
+ * @return
+ * @uml.property name="status"
+ */
+ @Disabled
+ @MemberOrder(sequence = "3")
+ @MaxLength(5)
+ public String getStatus() {
+ return status;
+ }
+
+ /**
+ * @param status
+ * @uml.property name="status"
+ */
+ public void setStatus(final String status) {
+ this.status = status;
+ }
+
+ // }}
+
+ // {{ changeStatus
+ @MemberOrder(sequence = "1")
+ public void changeStatus(@MustSatisfy(ClaimStatus.ChoicesSpecification.class) final String status) {
+ setStatus(status);
+ }
+
+ public List<String> choices0ChangeStatus() {
+ return ClaimStatus.ALL;
+ }
+
+ private String ifAlreadySubmitted() {
+ return ClaimStatus.SUBMITTED.equals(getStatus()) ? "Already submitted" : null;
+ }
+
+ // }}
+
+ // {{ Claimant
+ /**
+ * @uml.property name="claimant"
+ * @uml.associationEnd
+ */
+ private Claimant claimant;
+
+ /**
+ * @return
+ * @uml.property name="claimant"
+ */
+ @Disabled
+ @MemberOrder(sequence = "4")
+ public Claimant getClaimant() {
+ return claimant;
+ }
+
+ /**
+ * @param claimant
+ * @uml.property name="claimant"
+ */
+ public void setClaimant(final Claimant claimant) {
+ this.claimant = claimant;
+ }
+
+ // }}
+
+ // {{ Approver
+ private Approver approver;
+
+ // @Disabled
+ @MemberOrder(sequence = "5")
+ @Optional
+ public Approver getApprover() {
+ return approver;
+ }
+
+ public void setApprover(final Approver approver) {
+ this.approver = approver;
+ }
+
+ public String disableApprover() {
+ return getDescription().contains("baz") ? "desc contains baz" : null;
+ }
+
+ public String validateApprover(final Approver approver) {
+ if (approver == null) {
+ return null;
+ }
+ return approver == getClaimant() ? "Can't approve own claims" : null;
+ }
+
+ // }}
+
+ // {{ 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);
+ }
+
+ public void removeFromItems(final ClaimItem item) {
+ items.remove(item);
+ }
+
+ // }}
+
+ // {{ action: Submit
+ public void submit(final Approver approver) {
+ setStatus(ClaimStatus.SUBMITTED);
+ setApprover(approver);
+ }
+
+ public String disableSubmit(final Approver approver) {
+ return !ClaimStatus.SUBMITTED.equals(getStatus()) ? null : "Claim has already been submitted";
+ }
+
+ public Approver default0Submit() {
+ return getClaimant().getDefaultApprover();
+ }
+
+ // }}
+
+ // {{ action: addItem
+ @MemberOrder(sequence = "1")
+ public void addItem(@Named("Days since") final int days, @Named("Amount") final double amount, @Named("Description") final String description) {
+ final ClaimItem claimItem = newTransientInstance(ClaimItem.class);
+ Date date = new Date();
+ date = date.add(0, 0, days);
+ claimItem.setDateIncurred(date);
+ claimItem.setDescription(description);
+ claimItem.setAmount(new Money(amount, "USD"));
+ persist(claimItem);
+ addToItems(claimItem);
+ }
+
+ public String disableAddItem(final int days, final double amount, final String description) {
+ return Reasons.coalesce(ifAlreadySubmitted());
+ }
+
+ // }}
+
+ // {{ removeItem
+ @MemberOrder(sequence = "2")
+ public void removeItem(final ClaimItem claimItem) {
+ removeFromItems(claimItem);
+ }
+
+ public String disableRemoveItem(final ClaimItem claimItem) {
+ return Reasons.coalesce(ifAlreadySubmitted());
+ }
+
+ public ClaimItem default0RemoveItem() {
+ if (getItems().size() > 0) {
+ return getItems().get(getItems().size() - 1);
+ } else {
+ return null;
+ }
+ }
+
+ public List<ClaimItem> choices0RemoveItem() {
+ return Collections.unmodifiableList(getItems());
+ }
+
+ // }}
+
+ public String validate() {
+ if (ClaimStatus.INCOMPLETE.equals(getStatus())) {
+ return "incomplete";
+ }
+ if (getDescription().contains("foobaz")) {
+ return "no 'foobaz' allowed in description!";
+ }
+ return null;
+ }
+
+ public static class ClaimStatus {
+
+ private static final String NEW = "New";
+ private static final String INCOMPLETE = "Incomplete";
+ private static final String SUBMITTED = "Submitted";
+
+ public static final List<String> ALL = Collections.unmodifiableList(Arrays.asList(NEW, INCOMPLETE, SUBMITTED));
+
+ public static class ChoicesSpecification implements Specification {
+
+ @Override
+ public String satisfies(final Object obj) {
+ for (final String str : ALL) {
+ if (str.equals(obj)) {
+ return null;
+ }
+ }
+ return "Must be one of " + ALL;
+ }
+ }
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/ClaimItem.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/ClaimItem.java b/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/ClaimItem.java
new file mode 100644
index 0000000..0422040
--- /dev/null
+++ b/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/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.example.application.claims.dom.claim;
+
+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/3df42bf4/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/ClaimRepository.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/ClaimRepository.java b/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/ClaimRepository.java
new file mode 100644
index 0000000..3132d57
--- /dev/null
+++ b/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/ClaimRepository.java
@@ -0,0 +1,133 @@
+/*
+ * 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.example.application.claims.dom.claim;
+
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.List;
+
+import org.apache.isis.applib.AbstractFactoryAndRepository;
+import org.apache.isis.applib.annotation.Named;
+import org.apache.isis.applib.annotation.NotContributed;
+import org.apache.isis.applib.annotation.NotInServiceMenu;
+import org.apache.isis.applib.filter.Filter;
+import org.apache.isis.applib.value.Date;
+
+@Named("Claims")
+public class ClaimRepository extends AbstractFactoryAndRepository {
+
+ // {{ Id, iconName
+ @Override
+ public String getId() {
+ return "claims";
+ }
+
+ public String iconName() {
+ return "ClaimRepository";
+ }
+
+ // }}
+
+ // {{ action: allClaims
+ public List<Claim> allClaims() {
+ return allInstances(Claim.class);
+ }
+
+ // }}
+
+ // {{ action: findClaims
+ public List<Claim> findClaims(@Named("Description") String description) {
+ return allMatches(Claim.class, description);
+ }
+
+ // }}
+
+ // {{ action: claimsFor
+ public List<Claim> claimsFor(final Claimant claimant) {
+ final Claim pattern = newTransientInstance(Claim.class);
+ pattern.setDescription(null);
+ pattern.setApprover(null);
+ pattern.setStatus(null);
+ pattern.setDate(null);
+ pattern.setClaimant(claimant);
+ return allMatches(Claim.class, pattern);
+ }
+
+ // }}
+
+ // {{ action: newClaim
+ public Claim newClaim(final Claimant claimant) {
+ final Claim claim = newTransientInstance(Claim.class);
+ if (claimant != null) {
+ claim.setClaimant(claimant);
+ claim.setApprover(claimant.getDefaultApprover());
+ }
+ return claim;
+ }
+
+ // }}
+
+ // {{ action: newClaimWithDescription
+ @Named("New Claim")
+ public Claim newClaimWithDescription(Claimant claimant, String description) {
+ final Claim claim = newClaim(claimant);
+ claim.setDescription(description);
+ return claim;
+ }
+
+ // }}
+
+ // {{ action: claimsSince
+ @NotInServiceMenu
+ public List<Claim> claimsSince(final Claimant claimant, final Date since) {
+ return allMatches(Claim.class, new Filter<Claim>() {
+
+ @Override
+ public boolean accept(final Claim pojo) {
+ return pojo.getClaimant() == claimant && pojo.getDate() != null && pojo.getDate().isGreaterThan(since);
+ }
+ });
+ }
+
+ public String validateClaimsSince(final Claimant claimant, final Date since) {
+ final Date today = new Date();
+ return since.isGreaterThan(today) ? "cannot be after today" : null;
+ }
+
+ // }}
+
+ @NotContributed
+ int countClaimsFor(Claimant claimant) {
+ return claimsFor(claimant).size();
+ }
+
+ @NotContributed
+ Claim mostRecentClaim(Claimant claimant) {
+ final List<Claim> claims = claimsFor(claimant);
+ Collections.sort(claims, new Comparator<Claim>() {
+ @Override
+ public int compare(final Claim o1, final Claim o2) {
+ return o1.getDate().isLessThan(o2.getDate()) ? +1 : -1;
+ }
+ });
+ return claims.size() > 0 ? claims.get(0) : null;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/Claimant.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/Claimant.java b/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/Claimant.java
new file mode 100644
index 0000000..2d82053
--- /dev/null
+++ b/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/claim/Claimant.java
@@ -0,0 +1,28 @@
+/*
+ * 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.example.application.claims.dom.claim;
+
+public interface Claimant {
+
+ Approver getDefaultApprover();
+
+ String title();
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/employee/Employee.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/employee/Employee.java b/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/employee/Employee.java
new file mode 100644
index 0000000..2ecba9d
--- /dev/null
+++ b/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/employee/Employee.java
@@ -0,0 +1,98 @@
+/*
+ * 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.example.application.claims.dom.employee;
+
+import org.apache.isis.applib.AbstractDomainObject;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.Optional;
+import org.apache.isis.example.application.claims.dom.claim.Approver;
+import org.apache.isis.example.application.claims.dom.claim.Claimant;
+
+public class Employee extends AbstractDomainObject implements Claimant, Approver {
+
+ // {{ Title
+ @Override
+ public String title() {
+ return getName();
+ }
+
+ // }}
+
+ // {{ Icon
+ public String iconName() {
+ return getName().replaceAll(" ", "");
+ }
+
+ // }}
+
+ // {{ Name
+ private String name;
+
+ @MemberOrder(sequence = "1")
+ public String getName() {
+ return name;
+ }
+
+ public void setName(final String lastName) {
+ this.name = lastName;
+ }
+
+ // }}
+
+ // {{ Approver
+ private Approver defaultApprover;
+
+ @Override
+ @MemberOrder(sequence = "2")
+ public Approver getDefaultApprover() {
+ return defaultApprover;
+ }
+
+ public void setDefaultApprover(final Approver approver) {
+ this.defaultApprover = approver;
+ }
+
+ public String validateDefaultApprover(final Approver approver) {
+ if (approver == null) {
+ return null;
+ }
+ if (approver == this) {
+ return "Cannot act as own approver";
+ }
+ return null;
+ }
+
+ // }}
+
+ // {{ Limit
+ private Integer limit;
+
+ @Optional
+ @MemberOrder(sequence = "1")
+ public Integer getLimit() {
+ return limit;
+ }
+
+ public void setLimit(final Integer limit) {
+ this.limit = limit;
+ }
+ // }}
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/employee/EmployeeRepository.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/employee/EmployeeRepository.java b/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/employee/EmployeeRepository.java
new file mode 100644
index 0000000..739d621
--- /dev/null
+++ b/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/employee/EmployeeRepository.java
@@ -0,0 +1,61 @@
+/*
+ * 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.example.application.claims.dom.employee;
+
+import java.util.List;
+
+import org.apache.isis.applib.AbstractFactoryAndRepository;
+import org.apache.isis.applib.annotation.Named;
+
+@Named("Employees")
+public class EmployeeRepository extends AbstractFactoryAndRepository {
+
+
+ // {{ Id, iconName
+ @Override
+ public String getId() {
+ return "claimants";
+ }
+
+ public String iconName() {
+ return "EmployeeRepository";
+ }
+ // }}
+
+ // {{ action: allEmployees
+ public List<Employee> allEmployees() {
+ return allInstances(Employee.class);
+ }
+
+ // }}
+
+ // {{ action: findEmployees
+ public List<Employee> findEmployees(@Named("Name") String name) {
+ return allMatches(Employee.class, name);
+ }
+ // }}
+
+ // {{ action: newEmployee
+ public EmployeeTakeOn newEmployee() {
+ return newTransientInstance(EmployeeTakeOn.class);
+ }
+ // }}
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/employee/EmployeeTakeOn.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/employee/EmployeeTakeOn.java b/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/employee/EmployeeTakeOn.java
new file mode 100644
index 0000000..2feccfb
--- /dev/null
+++ b/mothballed/example/application/claims/dom/src/main/java/org/apache/isis/example/application/claims/dom/employee/EmployeeTakeOn.java
@@ -0,0 +1,150 @@
+/*
+ * 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.example.application.claims.dom.employee;
+
+import org.apache.isis.applib.AbstractDomainObject;
+import org.apache.isis.applib.annotation.Hidden;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.Optional;
+import org.apache.isis.example.application.claims.dom.claim.Approver;
+
+public class EmployeeTakeOn extends AbstractDomainObject {
+
+ // {{ Lifecycle methods
+ public void created() {
+ state = "page1";
+ }
+
+ // }}
+
+ // {{ Name
+ private String name;
+
+ @MemberOrder(sequence = "1")
+ public String getName() {
+ return name;
+ }
+
+ public void setName(final String name) {
+ this.name = name;
+ }
+
+ public boolean hideName() {
+ return !state.equals("page1") && isNotLast();
+ }
+
+ public String disableName() {
+ return disableToConfirmIfLast();
+ }
+
+ // }}
+
+ // {{ Approver
+ private Approver approver;
+
+ @MemberOrder(sequence = "2")
+ @Optional
+ public Approver getApprover() {
+ return approver;
+ }
+
+ public void setApprover(final Approver approver) {
+ this.approver = approver;
+ }
+
+ public boolean hideApprover() {
+ return !state.equals("page2") && isNotLast();
+ }
+
+ public String disableApprover() {
+ return disableToConfirmIfLast();
+ }
+
+ // }}
+
+ // {{ next
+ @MemberOrder(sequence = "1")
+ public EmployeeTakeOn next() {
+ if (state.equals("page1")) {
+ state = "page2";
+ } else if (state.equals("page2")) {
+ state = "page3";
+ }
+ return this;
+ }
+
+ public boolean hideNext() {
+ return isLast();
+ }
+
+ // }}
+
+ // {{ finish
+ @MemberOrder(sequence = "2")
+ public Employee finish() {
+ final Employee employee = newTransientInstance(Employee.class);
+ employee.setName(getName());
+ employee.setDefaultApprover(approver);
+ persist(employee);
+ return employee;
+ }
+
+ public boolean hideFinish() {
+ return isNotLast();
+ }
+
+ // }}
+
+ // {{ State
+ private String state;
+
+ @MemberOrder(sequence = "1")
+ @Hidden
+ public String getState() {
+ return state;
+ }
+
+ public void setState(final String state) {
+ this.state = state;
+ }
+
+ // }}
+
+ // {{ NotLast
+ @MemberOrder(sequence = "1")
+ @Hidden
+ public boolean isNotLast() {
+ return !isLast();
+ }
+
+ // }}
+
+ // {{ Last
+ @MemberOrder(sequence = "1")
+ @Hidden
+ public boolean isLast() {
+ return state.equals("page3");
+ }
+
+ private String disableToConfirmIfLast() {
+ return isLast() ? "confirm" : null;
+ }
+ // }}
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/dom/src/main/resources/images/Claim.gif
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/dom/src/main/resources/images/Claim.gif b/mothballed/example/application/claims/dom/src/main/resources/images/Claim.gif
new file mode 100644
index 0000000..abe8c9c
Binary files /dev/null and b/mothballed/example/application/claims/dom/src/main/resources/images/Claim.gif differ
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/dom/src/main/resources/images/ClaimItem.gif
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/dom/src/main/resources/images/ClaimItem.gif b/mothballed/example/application/claims/dom/src/main/resources/images/ClaimItem.gif
new file mode 100644
index 0000000..8ec80df
Binary files /dev/null and b/mothballed/example/application/claims/dom/src/main/resources/images/ClaimItem.gif differ
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/dom/src/main/resources/images/ClaimRepository.gif
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/dom/src/main/resources/images/ClaimRepository.gif b/mothballed/example/application/claims/dom/src/main/resources/images/ClaimRepository.gif
new file mode 100644
index 0000000..a5fc6ff
Binary files /dev/null and b/mothballed/example/application/claims/dom/src/main/resources/images/ClaimRepository.gif differ
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/dom/src/main/resources/images/Employee.gif
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/dom/src/main/resources/images/Employee.gif b/mothballed/example/application/claims/dom/src/main/resources/images/Employee.gif
new file mode 100644
index 0000000..b2015dc
Binary files /dev/null and b/mothballed/example/application/claims/dom/src/main/resources/images/Employee.gif differ
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/dom/src/main/resources/images/EmployeeRepository.gif
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/dom/src/main/resources/images/EmployeeRepository.gif b/mothballed/example/application/claims/dom/src/main/resources/images/EmployeeRepository.gif
new file mode 100644
index 0000000..dde9be8
Binary files /dev/null and b/mothballed/example/application/claims/dom/src/main/resources/images/EmployeeRepository.gif differ
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/dom/src/main/resources/images/FredSmith.jpg
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/dom/src/main/resources/images/FredSmith.jpg b/mothballed/example/application/claims/dom/src/main/resources/images/FredSmith.jpg
new file mode 100644
index 0000000..1f5c7ea
Binary files /dev/null and b/mothballed/example/application/claims/dom/src/main/resources/images/FredSmith.jpg differ
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/dom/src/main/resources/images/SamJones.jpg
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/dom/src/main/resources/images/SamJones.jpg b/mothballed/example/application/claims/dom/src/main/resources/images/SamJones.jpg
new file mode 100644
index 0000000..6aeadde
Binary files /dev/null and b/mothballed/example/application/claims/dom/src/main/resources/images/SamJones.jpg differ
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/dom/src/main/resources/images/TomBrown.jpg
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/dom/src/main/resources/images/TomBrown.jpg b/mothballed/example/application/claims/dom/src/main/resources/images/TomBrown.jpg
new file mode 100644
index 0000000..e24f534
Binary files /dev/null and b/mothballed/example/application/claims/dom/src/main/resources/images/TomBrown.jpg differ
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/fixture/pom.xml
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/fixture/pom.xml b/mothballed/example/application/claims/fixture/pom.xml
new file mode 100644
index 0000000..1116d28
--- /dev/null
+++ b/mothballed/example/application/claims/fixture/pom.xml
@@ -0,0 +1,39 @@
+<?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>claims</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>claims-fixture</artifactId>
+ <name>Example Claims App Fixtures</name>
+
+ <dependencies>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>claims-dom</artifactId>
+ </dependency>
+ </dependencies>
+
+</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/fixture/src/main/java/org/apache/isis/example/application/claims/fixture/ClaimsFixture.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/fixture/src/main/java/org/apache/isis/example/application/claims/fixture/ClaimsFixture.java b/mothballed/example/application/claims/fixture/src/main/java/org/apache/isis/example/application/claims/fixture/ClaimsFixture.java
new file mode 100644
index 0000000..aaf9bb6
--- /dev/null
+++ b/mothballed/example/application/claims/fixture/src/main/java/org/apache/isis/example/application/claims/fixture/ClaimsFixture.java
@@ -0,0 +1,82 @@
+/*
+ * 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.example.application.claims.fixture;
+
+import org.apache.isis.applib.fixtures.AbstractFixture;
+import org.apache.isis.applib.value.Date;
+import org.apache.isis.applib.value.Money;
+import org.apache.isis.example.application.claims.dom.claim.Claim;
+import org.apache.isis.example.application.claims.dom.claim.ClaimItem;
+import org.apache.isis.example.application.claims.dom.employee.Employee;
+
+public class ClaimsFixture extends AbstractFixture {
+
+ @Override
+ public void install() {
+ final Employee fred = createEmployee("Fred Smith", null);
+ final Employee tom = createEmployee("Tom Brown", fred);
+ createEmployee("Sam Jones", fred);
+
+ Claim claim = createClaim(tom, -16, "Meeting with client");
+ addItem(claim, -16, 38.50, "Lunch with client");
+ addItem(claim, -16, 16.50, "Euston - Mayfair (return)");
+
+ claim = createClaim(tom, -18, "Meeting in city office");
+ addItem(claim, -16, 18.00, "Car parking");
+ addItem(claim, -16, 26.50, "Reading - London (return)");
+
+ claim = createClaim(fred, -14, "Meeting at clients");
+ addItem(claim, -14, 18.00, "Car parking");
+ addItem(claim, -14, 26.50, "Reading - London (return)");
+
+ }
+
+ private Employee createEmployee(final String name, final Employee approver) {
+ Employee claimant;
+ claimant = newTransientInstance(Employee.class);
+ claimant.setName(name);
+ claimant.setDefaultApprover(approver);
+ persist(claimant);
+ return claimant;
+ }
+
+ private Claim createClaim(final Employee claimant, final int days, final String description) {
+ final Claim claim = newTransientInstance(Claim.class);
+ claim.setClaimant(claimant);
+ claim.setDescription(description);
+ Date date = new Date();
+ date = date.add(0, 0, days);
+ claim.setDate(date);
+ persist(claim);
+ return claim;
+ }
+
+ private void addItem(final Claim claim, final int days, final double amount, final String description) {
+ final ClaimItem claimItem = newTransientInstance(ClaimItem.class);
+ Date date = new Date();
+ date = date.add(0, 0, days);
+ claimItem.setDateIncurred(date);
+ claimItem.setDescription(description);
+ claimItem.setAmount(new Money(amount, "USD"));
+ persist(claimItem);
+ claim.addToItems(claimItem);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/fixture/src/main/java/org/apache/isis/example/application/claims/fixture/ClaimsLogonFixture.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/fixture/src/main/java/org/apache/isis/example/application/claims/fixture/ClaimsLogonFixture.java b/mothballed/example/application/claims/fixture/src/main/java/org/apache/isis/example/application/claims/fixture/ClaimsLogonFixture.java
new file mode 100644
index 0000000..8ad749a
--- /dev/null
+++ b/mothballed/example/application/claims/fixture/src/main/java/org/apache/isis/example/application/claims/fixture/ClaimsLogonFixture.java
@@ -0,0 +1,30 @@
+/*
+ * 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.example.application.claims.fixture;
+
+import org.apache.isis.applib.fixtures.LogonFixture;
+
+public class ClaimsLogonFixture extends LogonFixture {
+
+ public ClaimsLogonFixture() {
+ super("bill");
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/pom.xml
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/pom.xml b/mothballed/example/application/claims/pom.xml
new file mode 100644
index 0000000..b01af39
--- /dev/null
+++ b/mothballed/example/application/claims/pom.xml
@@ -0,0 +1,248 @@
+<?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>
+
+ <groupId>org.apache.isis.example.application</groupId>
+ <artifactId>claims</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+
+ <name>Example Claims</name>
+ <description>Example of a claims submitting application</description>
+
+ <packaging>pom</packaging>
+
+ <properties>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+
+ <isis.version>1.3.0-SNAPSHOT</isis.version>
+ <isis-objectstore-xml.version>1.0.0-SNAPSHOT</isis-objectstore-xml.version>
+ <isis-profilestore-xml.version>1.0.0-SNAPSHOT</isis-profilestore-xml.version>
+ <isis-security-file.version>1.0.2-SNAPSHOT</isis-security-file.version>
+ <isis-viewer-dnd.version>1.0.0-SNAPSHOT</isis-viewer-dnd.version>
+ <isis-viewer-wicket.version>1.3.0-SNAPSHOT</isis-viewer-wicket.version>
+ <isis-viewer-scimpi.version>1.0.0-SNAPSHOT</isis-viewer-scimpi.version>
+ <datanucleus-core.version>3.2.7</datanucleus-core.version>
+ </properties>
+
+ <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>
+
+ <!-- http://simplericity.com/2009/11/10/1257880778509.html -->
+ <plugin>
+ <groupId>org.simplericity.jettyconsole</groupId>
+ <artifactId>jetty-console-maven-plugin</artifactId>
+ <version>1.43</version>
+ </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>
+
+ <modules>
+ <module>dom</module>
+ <module>fixture</module>
+ <module>viewer-scimpi</module>
+ <module>viewer-wicket</module>
+ <module>viewer-dnd</module>
+ </modules>
+
+ <dependencyManagement>
+ <dependencies>
+
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis</artifactId>
+ <version>${isis.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.objectstore</groupId>
+ <artifactId>isis-objectstore-xml</artifactId>
+ <version>${isis-objectstore-xml.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.profilestore</groupId>
+ <artifactId>isis-profilestore-xml</artifactId>
+ <version>${isis-profilestore-xml.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.viewer</groupId>
+ <artifactId>isis-viewer-dnd</artifactId>
+ <version>${isis-viewer-dnd.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.viewer</groupId>
+ <artifactId>isis-viewer-wicket</artifactId>
+ <version>${isis-viewer-wicket.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.viewer</groupId>
+ <artifactId>isis-viewer-scimpi</artifactId>
+ <version>${isis-viewer-scimpi.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+
+
+ <dependency>
+ <groupId>org.apache.isis.security</groupId>
+ <artifactId>isis-security-file</artifactId>
+ <version>${isis-security-file.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+
+
+ <!-- this project's own modules -->
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>claims-dom</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>claims-fixture</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>viewer-html</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>tests-unit</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>claims-viewer-dnd</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>viewer-scimpi</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ </dependencies>
+ </dependencyManagement>
+
+</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/viewer-bdd/pom.xml
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/viewer-bdd/pom.xml b/mothballed/example/application/claims/viewer-bdd/pom.xml
new file mode 100644
index 0000000..38cb7db
--- /dev/null
+++ b/mothballed/example/application/claims/viewer-bdd/pom.xml
@@ -0,0 +1,107 @@
+<?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>claims</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>claims-viewer-bdd</artifactId>
+
+ <name>Example Claims App: BDD (Concordion) Tests</name>
+
+ <properties>
+ <maven.test.skip>true</maven.test.skip>
+ </properties>
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <systemPropertyVariables>
+ <concordion.output.dir>${project.build.directory}/concordion</concordion.output.dir>
+ </systemPropertyVariables>
+ <includes>
+ <include>**/AllStories.java</include>
+ </includes>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <dependencies>
+
+ <!-- this project's dependencies -->
+ <dependency>
+ <groupId>org.apache.isis.example.application</groupId>
+ <artifactId>claims-dom</artifactId>
+ </dependency>
+
+ <!-- isis core -->
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-metamodel</artifactId>
+ </dependency>
+
+ <!-- isis default runtime -->
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-bytecode-cglib</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-objectstore</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.objectstore</groupId>
+ <artifactId>isis-objectstore-xml</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-profilestore</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-security</artifactId>
+ </dependency>
+
+
+ <!-- BDD Viewers concordion dependencies -->
+ <dependency>
+ <groupId>org.apache.isis.viewer</groupId>
+ <artifactId>isis-viewer-bdd-concordion</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <scope>test</scope>
+ </dependency>
+
+ <!-- direct dependency required because is LGPL licensed -->
+ <dependency>
+ <groupId>xom</groupId>
+ <artifactId>xom</artifactId>
+ <version>1.2.5</version>
+ </dependency>
+
+ </dependencies>
+</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/viewer-bdd/src/main/resources/isis.properties
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/viewer-bdd/src/main/resources/isis.properties b/mothballed/example/application/claims/viewer-bdd/src/main/resources/isis.properties
new file mode 100644
index 0000000..3d8a4bd
--- /dev/null
+++ b/mothballed/example/application/claims/viewer-bdd/src/main/resources/isis.properties
@@ -0,0 +1,43 @@
+# 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.services.prefix = org.apache.isis.example.claims.objstore.dflt
+isis.services = employee.EmployeeRepositoryDefault, claim.ClaimRepositoryDefault
+
+isis.fixtures.prefix= org.apache.isis.example.claims.fixture
+isis.fixtures= ClaimsFixture
+
+isis.exploration.users=sven, dick, bob
+
+
+isis.reflector.class-substitutor=org.apache.isis.runtimes.dflt.bytecode.dflt.classsubstitutor.CglibClassSubstitutor
+#isis.reflector.class-substitutor=org.apache.isis.runtimes.dflt.bytecode.javassist.classsubstitutor.JavassistClassSubstitutor
+#isis.reflector.class-substitutor=org.apache.isis.runtimes.dflt.bytecode.identity.classsubstitutor.ClassSubstitutorIdentity
+
+isis.persistor.object-factory=org.apache.isis.runtimes.dflt.bytecode.dflt.objectfactory.CglibObjectFactory
+#isis.persistor.object-factory=org.apache.isis.runtimes.dflt.bytecode.javassist.objectfactory.JavassistObjectFactory
+#isis.persistor.object-factory=org.apache.isis.runtimes.dflt.bytecode.identity.objectfactory.ObjectFactoryBasic
+
+
+isis.persistor.domain-object-container=org.apache.isis.core.metamodel.services.container.DomainObjectContainerDefault
+#isis.persistor.domain-object-container=org.apache.isis.progmodel.wrapper.metamodel.DomainObjectContainerWrapperFactory
+
+
+#isis.reflector.facets.include=org.apache.isis.runtimes.dflt.runtime.authorization.standard.AuthorizationFacetFactoryImpl
+#isis.authorization.learn=true
+
+isis.persistor=in-memory
+#isis.xmlos.dir=/tmp/xml
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/AbstractApplicationStory.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/AbstractApplicationStory.java b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/AbstractApplicationStory.java
new file mode 100644
index 0000000..05a5481
--- /dev/null
+++ b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/AbstractApplicationStory.java
@@ -0,0 +1,34 @@
+/*
+ * 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.example.application.claims;
+
+import org.apache.isis.viewer.bdd.concordion.AbstractIsisConcordionScenario;
+
+public abstract class AbstractApplicationStory extends AbstractIsisConcordionScenario {
+
+ /**
+ * This superclass also acts as the marker for the location of the custom
+ * CSS.
+ */
+ @Override
+ protected Class<?> customCssPackage() {
+ return AbstractApplicationStory.class;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/common/BootstrapInExplorationMode.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/common/BootstrapInExplorationMode.java b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/common/BootstrapInExplorationMode.java
new file mode 100644
index 0000000..0accb3f
--- /dev/null
+++ b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/common/BootstrapInExplorationMode.java
@@ -0,0 +1,25 @@
+/*
+ * 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.example.application.claims.common;
+
+import org.apache.isis.viewer.bdd.concordion.AbstractIsisConcordionScenario;
+
+public class BootstrapInExplorationMode extends AbstractIsisConcordionScenario {
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/common/BootstrapInPrototypeMode.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/common/BootstrapInPrototypeMode.java b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/common/BootstrapInPrototypeMode.java
new file mode 100644
index 0000000..6b269d9
--- /dev/null
+++ b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/common/BootstrapInPrototypeMode.java
@@ -0,0 +1,25 @@
+/*
+ * 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.example.application.claims.common;
+
+import org.apache.isis.viewer.bdd.concordion.AbstractIsisConcordionScenario;
+
+public class BootstrapInPrototypeMode extends AbstractIsisConcordionScenario {
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/common/Employees.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/common/Employees.java b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/common/Employees.java
new file mode 100644
index 0000000..d3be0f4
--- /dev/null
+++ b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/common/Employees.java
@@ -0,0 +1,25 @@
+/*
+ * 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.example.application.claims.common;
+
+import org.apache.isis.viewer.bdd.concordion.AbstractIsisConcordionScenario;
+
+public class Employees extends AbstractIsisConcordionScenario {
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/AllStories.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/AllStories.java b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/AllStories.java
new file mode 100644
index 0000000..2506c86
--- /dev/null
+++ b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/AllStories.java
@@ -0,0 +1,25 @@
+/*
+ * 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.example.application.claims.stories;
+
+import org.apache.isis.example.application.claims.AbstractApplicationStory;
+
+public class AllStories extends AbstractApplicationStory {
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/newClaim/Fixture.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/newClaim/Fixture.java b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/newClaim/Fixture.java
new file mode 100644
index 0000000..5155ad2
--- /dev/null
+++ b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/newClaim/Fixture.java
@@ -0,0 +1,25 @@
+/*
+ * 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.example.application.claims.stories.newClaim;
+
+import org.apache.isis.example.application.claims.AbstractApplicationStory;
+
+public class Fixture extends AbstractApplicationStory {
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/newClaim/Index.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/newClaim/Index.java b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/newClaim/Index.java
new file mode 100644
index 0000000..8a3b5a6
--- /dev/null
+++ b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/newClaim/Index.java
@@ -0,0 +1,25 @@
+/*
+ * 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.example.application.claims.stories.newClaim;
+
+import org.apache.isis.example.application.claims.AbstractApplicationStory;
+
+public class Index extends AbstractApplicationStory {
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/newClaim/ScenarioDefaultsOk.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/newClaim/ScenarioDefaultsOk.java b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/newClaim/ScenarioDefaultsOk.java
new file mode 100644
index 0000000..3a28731
--- /dev/null
+++ b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/newClaim/ScenarioDefaultsOk.java
@@ -0,0 +1,25 @@
+/*
+ * 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.example.application.claims.stories.newClaim;
+
+import org.apache.isis.example.application.claims.AbstractApplicationStory;
+
+public class ScenarioDefaultsOk extends AbstractApplicationStory {
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/newClaim/ScenarioOnceCreatedShowsUpForClaimant.java
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/newClaim/ScenarioOnceCreatedShowsUpForClaimant.java b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/newClaim/ScenarioOnceCreatedShowsUpForClaimant.java
new file mode 100644
index 0000000..7238d57
--- /dev/null
+++ b/mothballed/example/application/claims/viewer-bdd/src/test/java/org/apache/isis/example/application/claims/stories/newClaim/ScenarioOnceCreatedShowsUpForClaimant.java
@@ -0,0 +1,25 @@
+/*
+ * 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.example.application.claims.stories.newClaim;
+
+import org.apache.isis.example.application.claims.AbstractApplicationStory;
+
+public class ScenarioOnceCreatedShowsUpForClaimant extends AbstractApplicationStory {
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/3df42bf4/mothballed/example/application/claims/viewer-bdd/src/test/resources/dtd/xhtml-lat1.ent
----------------------------------------------------------------------
diff --git a/mothballed/example/application/claims/viewer-bdd/src/test/resources/dtd/xhtml-lat1.ent b/mothballed/example/application/claims/viewer-bdd/src/test/resources/dtd/xhtml-lat1.ent
new file mode 100644
index 0000000..ffee223
--- /dev/null
+++ b/mothballed/example/application/claims/viewer-bdd/src/test/resources/dtd/xhtml-lat1.ent
@@ -0,0 +1,196 @@
+<!-- Portions (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+-->
+<!-- Character entity set. Typical invocation:
+ <!ENTITY % HTMLlat1 PUBLIC
+ "-//W3C//ENTITIES Latin 1 for XHTML//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml-lat1.ent">
+ %HTMLlat1;
+-->
+
+<!ENTITY nbsp " "> <!-- no-break space = non-breaking space,
+ U+00A0 ISOnum -->
+<!ENTITY iexcl "¡"> <!-- inverted exclamation mark, U+00A1 ISOnum -->
+<!ENTITY cent "¢"> <!-- cent sign, U+00A2 ISOnum -->
+<!ENTITY pound "£"> <!-- pound sign, U+00A3 ISOnum -->
+<!ENTITY curren "¤"> <!-- currency sign, U+00A4 ISOnum -->
+<!ENTITY yen "¥"> <!-- yen sign = yuan sign, U+00A5 ISOnum -->
+<!ENTITY brvbar "¦"> <!-- broken bar = broken vertical bar,
+ U+00A6 ISOnum -->
+<!ENTITY sect "§"> <!-- section sign, U+00A7 ISOnum -->
+<!ENTITY uml "¨"> <!-- diaeresis = spacing diaeresis,
+ U+00A8 ISOdia -->
+<!ENTITY copy "©"> <!-- copyright sign, U+00A9 ISOnum -->
+<!ENTITY ordf "ª"> <!-- feminine ordinal indicator, U+00AA ISOnum -->
+<!ENTITY laquo "«"> <!-- left-pointing double angle quotation mark
+ = left pointing guillemet, U+00AB ISOnum -->
+<!ENTITY not "¬"> <!-- not sign = angled dash,
+ U+00AC ISOnum -->
+<!ENTITY shy "­"> <!-- soft hyphen = discretionary hyphen,
+ U+00AD ISOnum -->
+<!ENTITY reg "®"> <!-- registered sign = registered trade mark sign,
+ U+00AE ISOnum -->
+<!ENTITY macr "¯"> <!-- macron = spacing macron = overline
+ = APL overbar, U+00AF ISOdia -->
+<!ENTITY deg "°"> <!-- degree sign, U+00B0 ISOnum -->
+<!ENTITY plusmn "±"> <!-- plus-minus sign = plus-or-minus sign,
+ U+00B1 ISOnum -->
+<!ENTITY sup2 "²"> <!-- superscript two = superscript digit two
+ = squared, U+00B2 ISOnum -->
+<!ENTITY sup3 "³"> <!-- superscript three = superscript digit three
+ = cubed, U+00B3 ISOnum -->
+<!ENTITY acute "´"> <!-- acute accent = spacing acute,
+ U+00B4 ISOdia -->
+<!ENTITY micro "µ"> <!-- micro sign, U+00B5 ISOnum -->
+<!ENTITY para "¶"> <!-- pilcrow sign = paragraph sign,
+ U+00B6 ISOnum -->
+<!ENTITY middot "·"> <!-- middle dot = Georgian comma
+ = Greek middle dot, U+00B7 ISOnum -->
+<!ENTITY cedil "¸"> <!-- cedilla = spacing cedilla, U+00B8 ISOdia -->
+<!ENTITY sup1 "¹"> <!-- superscript one = superscript digit one,
+ U+00B9 ISOnum -->
+<!ENTITY ordm "º"> <!-- masculine ordinal indicator,
+ U+00BA ISOnum -->
+<!ENTITY raquo "»"> <!-- right-pointing double angle quotation mark
+ = right pointing guillemet, U+00BB ISOnum -->
+<!ENTITY frac14 "¼"> <!-- vulgar fraction one quarter
+ = fraction one quarter, U+00BC ISOnum -->
+<!ENTITY frac12 "½"> <!-- vulgar fraction one half
+ = fraction one half, U+00BD ISOnum -->
+<!ENTITY frac34 "¾"> <!-- vulgar fraction three quarters
+ = fraction three quarters, U+00BE ISOnum -->
+<!ENTITY iquest "¿"> <!-- inverted question mark
+ = turned question mark, U+00BF ISOnum -->
+<!ENTITY Agrave "À"> <!-- latin capital letter A with grave
+ = latin capital letter A grave,
+ U+00C0 ISOlat1 -->
+<!ENTITY Aacute "Á"> <!-- latin capital letter A with acute,
+ U+00C1 ISOlat1 -->
+<!ENTITY Acirc "Â"> <!-- latin capital letter A with circumflex,
+ U+00C2 ISOlat1 -->
+<!ENTITY Atilde "Ã"> <!-- latin capital letter A with tilde,
+ U+00C3 ISOlat1 -->
+<!ENTITY Auml "Ä"> <!-- latin capital letter A with diaeresis,
+ U+00C4 ISOlat1 -->
+<!ENTITY Aring "Å"> <!-- latin capital letter A with ring above
+ = latin capital letter A ring,
+ U+00C5 ISOlat1 -->
+<!ENTITY AElig "Æ"> <!-- latin capital letter AE
+ = latin capital ligature AE,
+ U+00C6 ISOlat1 -->
+<!ENTITY Ccedil "Ç"> <!-- latin capital letter C with cedilla,
+ U+00C7 ISOlat1 -->
+<!ENTITY Egrave "È"> <!-- latin capital letter E with grave,
+ U+00C8 ISOlat1 -->
+<!ENTITY Eacute "É"> <!-- latin capital letter E with acute,
+ U+00C9 ISOlat1 -->
+<!ENTITY Ecirc "Ê"> <!-- latin capital letter E with circumflex,
+ U+00CA ISOlat1 -->
+<!ENTITY Euml "Ë"> <!-- latin capital letter E with diaeresis,
+ U+00CB ISOlat1 -->
+<!ENTITY Igrave "Ì"> <!-- latin capital letter I with grave,
+ U+00CC ISOlat1 -->
+<!ENTITY Iacute "Í"> <!-- latin capital letter I with acute,
+ U+00CD ISOlat1 -->
+<!ENTITY Icirc "Î"> <!-- latin capital letter I with circumflex,
+ U+00CE ISOlat1 -->
+<!ENTITY Iuml "Ï"> <!-- latin capital letter I with diaeresis,
+ U+00CF ISOlat1 -->
+<!ENTITY ETH "Ð"> <!-- latin capital letter ETH, U+00D0 ISOlat1 -->
+<!ENTITY Ntilde "Ñ"> <!-- latin capital letter N with tilde,
+ U+00D1 ISOlat1 -->
+<!ENTITY Ograve "Ò"> <!-- latin capital letter O with grave,
+ U+00D2 ISOlat1 -->
+<!ENTITY Oacute "Ó"> <!-- latin capital letter O with acute,
+ U+00D3 ISOlat1 -->
+<!ENTITY Ocirc "Ô"> <!-- latin capital letter O with circumflex,
+ U+00D4 ISOlat1 -->
+<!ENTITY Otilde "Õ"> <!-- latin capital letter O with tilde,
+ U+00D5 ISOlat1 -->
+<!ENTITY Ouml "Ö"> <!-- latin capital letter O with diaeresis,
+ U+00D6 ISOlat1 -->
+<!ENTITY times "×"> <!-- multiplication sign, U+00D7 ISOnum -->
+<!ENTITY Oslash "Ø"> <!-- latin capital letter O with stroke
+ = latin capital letter O slash,
+ U+00D8 ISOlat1 -->
+<!ENTITY Ugrave "Ù"> <!-- latin capital letter U with grave,
+ U+00D9 ISOlat1 -->
+<!ENTITY Uacute "Ú"> <!-- latin capital letter U with acute,
+ U+00DA ISOlat1 -->
+<!ENTITY Ucirc "Û"> <!-- latin capital letter U with circumflex,
+ U+00DB ISOlat1 -->
+<!ENTITY Uuml "Ü"> <!-- latin capital letter U with diaeresis,
+ U+00DC ISOlat1 -->
+<!ENTITY Yacute "Ý"> <!-- latin capital letter Y with acute,
+ U+00DD ISOlat1 -->
+<!ENTITY THORN "Þ"> <!-- latin capital letter THORN,
+ U+00DE ISOlat1 -->
+<!ENTITY szlig "ß"> <!-- latin small letter sharp s = ess-zed,
+ U+00DF ISOlat1 -->
+<!ENTITY agrave "à"> <!-- latin small letter a with grave
+ = latin small letter a grave,
+ U+00E0 ISOlat1 -->
+<!ENTITY aacute "á"> <!-- latin small letter a with acute,
+ U+00E1 ISOlat1 -->
+<!ENTITY acirc "â"> <!-- latin small letter a with circumflex,
+ U+00E2 ISOlat1 -->
+<!ENTITY atilde "ã"> <!-- latin small letter a with tilde,
+ U+00E3 ISOlat1 -->
+<!ENTITY auml "ä"> <!-- latin small letter a with diaeresis,
+ U+00E4 ISOlat1 -->
+<!ENTITY aring "å"> <!-- latin small letter a with ring above
+ = latin small letter a ring,
+ U+00E5 ISOlat1 -->
+<!ENTITY aelig "æ"> <!-- latin small letter ae
+ = latin small ligature ae, U+00E6 ISOlat1 -->
+<!ENTITY ccedil "ç"> <!-- latin small letter c with cedilla,
+ U+00E7 ISOlat1 -->
+<!ENTITY egrave "è"> <!-- latin small letter e with grave,
+ U+00E8 ISOlat1 -->
+<!ENTITY eacute "é"> <!-- latin small letter e with acute,
+ U+00E9 ISOlat1 -->
+<!ENTITY ecirc "ê"> <!-- latin small letter e with circumflex,
+ U+00EA ISOlat1 -->
+<!ENTITY euml "ë"> <!-- latin small letter e with diaeresis,
+ U+00EB ISOlat1 -->
+<!ENTITY igrave "ì"> <!-- latin small letter i with grave,
+ U+00EC ISOlat1 -->
+<!ENTITY iacute "í"> <!-- latin small letter i with acute,
+ U+00ED ISOlat1 -->
+<!ENTITY icirc "î"> <!-- latin small letter i with circumflex,
+ U+00EE ISOlat1 -->
+<!ENTITY iuml "ï"> <!-- latin small letter i with diaeresis,
+ U+00EF ISOlat1 -->
+<!ENTITY eth "ð"> <!-- latin small letter eth, U+00F0 ISOlat1 -->
+<!ENTITY ntilde "ñ"> <!-- latin small letter n with tilde,
+ U+00F1 ISOlat1 -->
+<!ENTITY ograve "ò"> <!-- latin small letter o with grave,
+ U+00F2 ISOlat1 -->
+<!ENTITY oacute "ó"> <!-- latin small letter o with acute,
+ U+00F3 ISOlat1 -->
+<!ENTITY ocirc "ô"> <!-- latin small letter o with circumflex,
+ U+00F4 ISOlat1 -->
+<!ENTITY otilde "õ"> <!-- latin small letter o with tilde,
+ U+00F5 ISOlat1 -->
+<!ENTITY ouml "ö"> <!-- latin small letter o with diaeresis,
+ U+00F6 ISOlat1 -->
+<!ENTITY divide "÷"> <!-- division sign, U+00F7 ISOnum -->
+<!ENTITY oslash "ø"> <!-- latin small letter o with stroke,
+ = latin small letter o slash,
+ U+00F8 ISOlat1 -->
+<!ENTITY ugrave "ù"> <!-- latin small letter u with grave,
+ U+00F9 ISOlat1 -->
+<!ENTITY uacute "ú"> <!-- latin small letter u with acute,
+ U+00FA ISOlat1 -->
+<!ENTITY ucirc "û"> <!-- latin small letter u with circumflex,
+ U+00FB ISOlat1 -->
+<!ENTITY uuml "ü"> <!-- latin small letter u with diaeresis,
+ U+00FC ISOlat1 -->
+<!ENTITY yacute "ý"> <!-- latin small letter y with acute,
+ U+00FD ISOlat1 -->
+<!ENTITY thorn "þ"> <!-- latin small letter thorn,
+ U+00FE ISOlat1 -->
+<!ENTITY yuml "ÿ"> <!-- latin small letter y with diaeresis,
+ U+00FF ISOlat1 -->