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 2011/10/24 13:54:13 UTC
svn commit: r1188099 - in /incubator/isis/trunk/framework:
tck/tck-dom/src/main/java/org/apache/isis/tck/dom/simples/
tck/tck-objstore-dflt/src/main/java/org/apache/isis/tck/objstore/dflt/simples/
viewer/json/json-applib/src/main/java/org/apache/isis/v...
Author: danhaywood
Date: Mon Oct 24 11:54:12 2011
New Revision: 1188099
URL: http://svn.apache.org/viewvc?rev=1188099&view=rev
Log:
ISIS-109: changes for v0.48 of spec; fixes for void action/non-idempotent action/action taking ref as param
Added:
incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/DomainObjectRepresentationTest.java
incubator/isis/trunk/framework/viewer/json/json-applib/src/test/resources/org/apache/isis/viewer/json/applib/domainObjectRepresentation.json
Modified:
incubator/isis/trunk/framework/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/simples/SimpleEntity.java
incubator/isis/trunk/framework/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/simples/SimpleEntityRepository.java
incubator/isis/trunk/framework/tck/tck-objstore-dflt/src/main/java/org/apache/isis/tck/objstore/dflt/simples/SimpleEntityRepositoryDefault.java
incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/JsonRepresentation.java
incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/domainobjects/DomainObjectRepresentation.java
incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/resources/service/invoke/DomainServiceResourceTest_invokeAction.java
incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/resources/service/serviceId/DomainServiceResourceTest_serviceId_xrofollowlinks.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/RuntimeExceptionMapper.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/ResourceAbstract.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/capabilities/CapabilitiesResourceServerside.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainObjectResourceServerside.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainResourceHelper.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainServiceResourceServerside.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/MemberType.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domaintypes/DomainTypeResourceServerside.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/home/HomePageResourceServerside.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/user/UserResourceServerside.java
Modified: incubator/isis/trunk/framework/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/simples/SimpleEntity.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/simples/SimpleEntity.java?rev=1188099&r1=1188098&r2=1188099&view=diff
==============================================================================
--- incubator/isis/trunk/framework/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/simples/SimpleEntity.java (original)
+++ incubator/isis/trunk/framework/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/simples/SimpleEntity.java Mon Oct 24 11:54:12 2011
@@ -41,7 +41,6 @@ public class SimpleEntity extends Abstra
}
// }}
-
// {{ Flag (boolean)
private Boolean flag;
@@ -170,11 +169,4 @@ public class SimpleEntity extends Abstra
}
// }}
-
-
-
-
-
-
-
}
Modified: incubator/isis/trunk/framework/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/simples/SimpleEntityRepository.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/simples/SimpleEntityRepository.java?rev=1188099&r1=1188098&r2=1188099&view=diff
==============================================================================
--- incubator/isis/trunk/framework/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/simples/SimpleEntityRepository.java (original)
+++ incubator/isis/trunk/framework/tck/tck-dom/src/main/java/org/apache/isis/tck/dom/simples/SimpleEntityRepository.java Mon Oct 24 11:54:12 2011
@@ -37,10 +37,13 @@ public interface SimpleEntityRepository
public SimpleEntity newTransientEntity();
@Idempotent
- @MemberOrder(sequence="2")
+ @MemberOrder(sequence="3")
public SimpleEntity newPersistentEntity(
@Named("name") String name,
@Named("flag") Boolean flag);
+ @MemberOrder(sequence="4")
+ public void toggle(
+ @Named("object") SimpleEntity object);
}
Modified: incubator/isis/trunk/framework/tck/tck-objstore-dflt/src/main/java/org/apache/isis/tck/objstore/dflt/simples/SimpleEntityRepositoryDefault.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/tck/tck-objstore-dflt/src/main/java/org/apache/isis/tck/objstore/dflt/simples/SimpleEntityRepositoryDefault.java?rev=1188099&r1=1188098&r2=1188099&view=diff
==============================================================================
--- incubator/isis/trunk/framework/tck/tck-objstore-dflt/src/main/java/org/apache/isis/tck/objstore/dflt/simples/SimpleEntityRepositoryDefault.java (original)
+++ incubator/isis/trunk/framework/tck/tck-objstore-dflt/src/main/java/org/apache/isis/tck/objstore/dflt/simples/SimpleEntityRepositoryDefault.java Mon Oct 24 11:54:12 2011
@@ -47,6 +47,11 @@ public class SimpleEntityRepositoryDefau
getContainer().persist(entity);
return entity;
}
+
+ @Override
+ public void toggle(SimpleEntity object) {
+ object.setFlag(!object.getFlag());
+ }
}
Modified: incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/JsonRepresentation.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/JsonRepresentation.java?rev=1188099&r1=1188098&r2=1188099&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/JsonRepresentation.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/JsonRepresentation.java Mon Oct 24 11:54:12 2011
@@ -965,9 +965,6 @@ public class JsonRepresentation {
}
Path path = Path.parse(key);
ObjectNode node = JsonNodeUtils.walkNodeUpTo(asObjectNode(), path.getHead());
- if(node.has(path.getTail())) {
- throw new IllegalStateException("already has key " + key);
- }
node.put(path.getTail(), value.asJsonNode());
}
Modified: incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/domainobjects/DomainObjectRepresentation.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/domainobjects/DomainObjectRepresentation.java?rev=1188099&r1=1188098&r2=1188099&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/domainobjects/DomainObjectRepresentation.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/domainobjects/DomainObjectRepresentation.java Mon Oct 24 11:54:12 2011
@@ -47,15 +47,32 @@ public class DomainObjectRepresentation
public JsonRepresentation getMembers() {
return getArray("members");
}
+
+ public JsonRepresentation getProperty(final String id) {
+ return getRepresentation("members[memberType=property id=%s]", id);
+ }
public JsonRepresentation getProperties() {
return getRepresentation("members[memberType=property]");
}
-
+
+ public JsonRepresentation getCollection(final String id) {
+ return getRepresentation("members[memberType=collection id=%s]", id);
+ }
+
+ public JsonRepresentation getCollections() {
+ return getRepresentation("members[memberType=collection]");
+ }
+
public JsonRepresentation getActions() {
return getRepresentation("members[memberType=action]");
}
-
+
+ public JsonRepresentation getAction(final String id) {
+ return getRepresentation("members[memberType=action id=%s]", id);
+ }
+
+
public JsonRepresentation getLinks() {
return getArray("links");
}
@@ -63,5 +80,4 @@ public class DomainObjectRepresentation
return getMap("extensions");
}
-
}
Added: incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/DomainObjectRepresentationTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/DomainObjectRepresentationTest.java?rev=1188099&view=auto
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/DomainObjectRepresentationTest.java (added)
+++ incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/DomainObjectRepresentationTest.java Mon Oct 24 11:54:12 2011
@@ -0,0 +1,52 @@
+/*
+ * 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.viewer.json.applib;
+
+import static org.apache.isis.viewer.json.applib.JsonUtils.readJson;
+import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.CoreMatchers.not;
+import static org.hamcrest.CoreMatchers.nullValue;
+import static org.junit.Assert.assertThat;
+
+import java.io.IOException;
+
+import org.apache.isis.viewer.json.applib.domainobjects.DomainObjectRepresentation;
+import org.codehaus.jackson.JsonParseException;
+import org.codehaus.jackson.map.JsonMappingException;
+import org.junit.Before;
+import org.junit.Test;
+
+public class DomainObjectRepresentationTest {
+
+ private DomainObjectRepresentation representation;
+
+ @Before
+ public void setUp() throws Exception {
+ representation = new DomainObjectRepresentation(readJson("domainObjectRepresentation.json"));
+ }
+
+
+ @Test
+ public void xx() throws JsonParseException, JsonMappingException, IOException {
+ final JsonRepresentation flag = representation.getProperty("flag");
+ assertThat(flag, is(not(nullValue())));
+ assertThat(flag.getBoolean("value"), is(true));
+ }
+
+}
Added: incubator/isis/trunk/framework/viewer/json/json-applib/src/test/resources/org/apache/isis/viewer/json/applib/domainObjectRepresentation.json
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-applib/src/test/resources/org/apache/isis/viewer/json/applib/domainObjectRepresentation.json?rev=1188099&view=auto
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-applib/src/test/resources/org/apache/isis/viewer/json/applib/domainObjectRepresentation.json (added)
+++ incubator/isis/trunk/framework/viewer/json/json-applib/src/test/resources/org/apache/isis/viewer/json/applib/domainObjectRepresentation.json Mon Oct 24 11:54:12 2011
@@ -0,0 +1,238 @@
+{
+ "oid": "OID:25",
+ "title": "Untitled Simple Entity",
+ "members": [
+ {
+ "id": "ABigDecimal",
+ "memberType": "property",
+ "details": {
+ "rel": "details",
+ "href": "http://localhost:8080/objects/OID:25/properties/ABigDecimal",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/objectproperty\""
+ },
+ "extensions": {},
+ "links": [
+ {
+ "rel": "describedby",
+ "href": "http://localhost:8080/domainTypes/org.apache.isis.tck.dom.simples.SimpleEntity/properties/ABigDecimal",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/typeproperty\""
+ }
+ ]
+ },
+ {
+ "id": "ABigInteger",
+ "memberType": "property",
+ "details": {
+ "rel": "details",
+ "href": "http://localhost:8080/objects/OID:25/properties/ABigInteger",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/objectproperty\""
+ },
+ "extensions": {},
+ "links": [
+ {
+ "rel": "describedby",
+ "href": "http://localhost:8080/domainTypes/org.apache.isis.tck.dom.simples.SimpleEntity/properties/ABigInteger",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/typeproperty\""
+ }
+ ]
+ },
+ {
+ "id": "ADouble",
+ "memberType": "property",
+ "details": {
+ "rel": "details",
+ "href": "http://localhost:8080/objects/OID:25/properties/ADouble",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/objectproperty\""
+ },
+ "value": 0,
+ "extensions": {},
+ "links": [
+ {
+ "rel": "describedby",
+ "href": "http://localhost:8080/domainTypes/org.apache.isis.tck.dom.simples.SimpleEntity/properties/ADouble",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/typeproperty\""
+ }
+ ]
+ },
+ {
+ "id": "ALong",
+ "memberType": "property",
+ "details": {
+ "rel": "details",
+ "href": "http://localhost:8080/objects/OID:25/properties/ALong",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/objectproperty\""
+ },
+ "value": 0,
+ "extensions": {},
+ "links": [
+ {
+ "rel": "describedby",
+ "href": "http://localhost:8080/domainTypes/org.apache.isis.tck.dom.simples.SimpleEntity/properties/ALong",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/typeproperty\""
+ }
+ ]
+ },
+ {
+ "id": "anInt",
+ "memberType": "property",
+ "details": {
+ "rel": "details",
+ "href": "http://localhost:8080/objects/OID:25/properties/anInt",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/objectproperty\""
+ },
+ "value": 0,
+ "extensions": {},
+ "links": [
+ {
+ "rel": "describedby",
+ "href": "http://localhost:8080/domainTypes/org.apache.isis.tck.dom.simples.SimpleEntity/properties/anInt",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/typeproperty\""
+ }
+ ]
+ },
+ {
+ "id": "anotherDouble",
+ "memberType": "property",
+ "details": {
+ "rel": "details",
+ "href": "http://localhost:8080/objects/OID:25/properties/anotherDouble",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/objectproperty\""
+ },
+ "extensions": {},
+ "links": [
+ {
+ "rel": "describedby",
+ "href": "http://localhost:8080/domainTypes/org.apache.isis.tck.dom.simples.SimpleEntity/properties/anotherDouble",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/typeproperty\""
+ }
+ ]
+ },
+ {
+ "id": "anotherInt",
+ "memberType": "property",
+ "details": {
+ "rel": "details",
+ "href": "http://localhost:8080/objects/OID:25/properties/anotherInt",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/objectproperty\""
+ },
+ "extensions": {},
+ "links": [
+ {
+ "rel": "describedby",
+ "href": "http://localhost:8080/domainTypes/org.apache.isis.tck.dom.simples.SimpleEntity/properties/anotherInt",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/typeproperty\""
+ }
+ ]
+ },
+ {
+ "id": "anotherLong",
+ "memberType": "property",
+ "details": {
+ "rel": "details",
+ "href": "http://localhost:8080/objects/OID:25/properties/anotherLong",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/objectproperty\""
+ },
+ "extensions": {},
+ "links": [
+ {
+ "rel": "describedby",
+ "href": "http://localhost:8080/domainTypes/org.apache.isis.tck.dom.simples.SimpleEntity/properties/anotherLong",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/typeproperty\""
+ }
+ ]
+ },
+ {
+ "id": "flag",
+ "memberType": "property",
+ "details": {
+ "rel": "details",
+ "href": "http://localhost:8080/objects/OID:25/properties/flag",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/objectproperty\""
+ },
+ "value": true,
+ "extensions": {},
+ "links": [
+ {
+ "rel": "describedby",
+ "href": "http://localhost:8080/domainTypes/org.apache.isis.tck.dom.simples.SimpleEntity/properties/flag",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/typeproperty\""
+ }
+ ]
+ },
+ {
+ "id": "name",
+ "memberType": "property",
+ "details": {
+ "rel": "details",
+ "href": "http://localhost:8080/objects/OID:25/properties/name",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/objectproperty\""
+ },
+ "value": "New name",
+ "extensions": {},
+ "links": [
+ {
+ "rel": "describedby",
+ "href": "http://localhost:8080/domainTypes/org.apache.isis.tck.dom.simples.SimpleEntity/properties/name",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/typeproperty\""
+ }
+ ]
+ },
+ {
+ "id": "toggle",
+ "memberType": "action",
+ "details": {
+ "rel": "details",
+ "href": "http://localhost:8080/objects/OID:25/actions/toggle",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/objectaction\""
+ },
+ "extensions": {
+ "actionType": "user",
+ "actionSemantics": "sideEffects"
+ },
+ "links": [
+ {
+ "rel": "describedby",
+ "href": "http://localhost:8080/domainTypes/org.apache.isis.tck.dom.simples.SimpleEntity/actions/toggle",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/typeaction\""
+ },
+ {
+ "rel": "contributedBy",
+ "href": "http://localhost:8080/objects/OID:5",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/domainobject\""
+ }
+ ]
+ }
+ ],
+ "links": [
+ {
+ "rel": "describedby",
+ "href": "http://localhost:8080/domainTypes/org.apache.isis.tck.dom.simples.SimpleEntity",
+ "method": "GET",
+ "type": "application/json;profile=\"urn:org.restfulobjects/domaintype\""
+ }
+ ],
+ "extensions": {}
+}
\ No newline at end of file
Modified: incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/resources/service/invoke/DomainServiceResourceTest_invokeAction.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/resources/service/invoke/DomainServiceResourceTest_invokeAction.java?rev=1188099&r1=1188098&r2=1188099&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/resources/service/invoke/DomainServiceResourceTest_invokeAction.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/resources/service/invoke/DomainServiceResourceTest_invokeAction.java Mon Oct 24 11:54:12 2011
@@ -22,6 +22,7 @@ import static org.hamcrest.CoreMatchers.
import static org.hamcrest.CoreMatchers.not;
import static org.hamcrest.CoreMatchers.nullValue;
import static org.junit.Assert.assertThat;
+import static org.junit.Assert.fail;
import java.io.IOException;
@@ -113,8 +114,54 @@ public class DomainServiceResourceTest_i
RestfulResponse<DomainObjectRepresentation> restfulResponse = RestfulResponse.ofT(response);
final DomainObjectRepresentation objectRepr = restfulResponse.getEntity();
- assertThat(objectRepr.getRepresentation("members[propertyId=%s].value", "name").asString(), is("New Name"));
- assertThat(objectRepr.getRepresentation("members[propertyId=%s].value", "flag").asBoolean(), is(true));
+ assertThat(objectRepr.getProperty("name").getString("value"), is("New Name"));
+ assertThat(objectRepr.getProperty("flag").getBoolean("value"), is(true));
+ }
+
+ @Test
+ public void invokeNonIdempotent_returningVoid_withReferenceArgs_usingClientFollow() throws Exception {
+
+ // given simple entity with 'flag' property set to true
+ final Link linkToSimpleEntity = givenLinkToSimpleEntity(0);
+ final Response responseBefore = client.follow(linkToSimpleEntity);
+ final RestfulResponse<DomainObjectRepresentation> restfulResponseBefore = RestfulResponse.ofT(responseBefore);
+ final DomainObjectRepresentation simpleEntityBefore = restfulResponseBefore.getEntity();
+ assertThat(simpleEntityBefore.getProperty("flag").getBoolean("value"), is(true));
+
+ // and given 'toggle' action on repo
+ JsonRepresentation givenAction = givenAction("simples", "toggle");
+ final ObjectActionRepresentation actionRepr = givenAction.as(ObjectActionRepresentation.class);
+
+ // when
+ final Link invokeLink = actionRepr.getInvoke();
+
+ // then
+ assertThat(invokeLink, is(not(nullValue())));
+
+ final JsonRepresentation args = invokeLink.getArguments();
+ assertThat(args.size(), is(1));
+ assertThat(args.mapHas("object"), is(true));
+
+ // when
+ args.mapPut("object", linkToSimpleEntity);
+ final Response response = client.follow(invokeLink, args);
+
+ // then
+ RestfulResponse<JsonRepresentation> restfulResponse = RestfulResponse.ofT(response);
+ assertThat(restfulResponse.getStatus(), is(HttpStatusCode.NO_CONTENT));
+
+ // and then simple entity 'flag' property set to false
+ final Response responseAfter = client.follow(linkToSimpleEntity);
+ final RestfulResponse<DomainObjectRepresentation> restfulResponseAfter = RestfulResponse.ofT(responseAfter);
+ final DomainObjectRepresentation simpleEntityAfter = restfulResponseAfter.getEntity();
+ assertThat(simpleEntityAfter.getProperty("flag").getBoolean("value"), is(false));
+ }
+
+
+ @org.junit.Ignore("todo")
+ @Test
+ public void invoke_returningScalar_withReferenceArgs_usingClientFollow() throws Exception {
+ fail();
}
@org.junit.Ignore("up to here")
@@ -152,13 +199,13 @@ public class DomainServiceResourceTest_i
final String href = givenHrefToService(serviceId);
final RestfulRequest request =
- client.createRequest(HttpMethod.GET, href).withArg(QueryParameter.FOLLOW_LINKS, "members[actionId=%s].details", actionId);
+ client.createRequest(HttpMethod.GET, href).withArg(QueryParameter.FOLLOW_LINKS, "members[id=%s].details", actionId);
final RestfulResponse<DomainObjectRepresentation> restfulResponse = request.executeT();
assertThat(restfulResponse.getStatus(), is(HttpStatusCode.OK));
final DomainObjectRepresentation repr = restfulResponse.getEntity();
- JsonRepresentation actionLinkRepr = repr.getRepresentation("members[actionId=%s]", actionId);
+ JsonRepresentation actionLinkRepr = repr.getAction(actionId);
return actionLinkRepr.getRepresentation("details.value");
}
@@ -171,5 +218,22 @@ public class DomainServiceResourceTest_i
return services.getRepresentation("values[key=%s]", serviceId).asLink().getHref();
}
+ private Link givenLinkToSimpleEntity(int num) throws JsonParseException, JsonMappingException, IOException, Exception {
+ // given
+ JsonRepresentation givenAction = givenAction("simples", "list");
+ final ObjectActionRepresentation actionRepr = givenAction.as(ObjectActionRepresentation.class);
+
+ // when
+ final Link invokeLink = actionRepr.getInvoke();
+
+ // then
+ final Response response = client.follow(invokeLink);
+ RestfulResponse<ListRepresentation> restfulResponse = RestfulResponse.ofT(response);
+ final ListRepresentation listRepr = restfulResponse.getEntity();
+
+ return listRepr.getValues().arrayGet(num).asLink();
+ }
+
+
}
\ No newline at end of file
Modified: incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/resources/service/serviceId/DomainServiceResourceTest_serviceId_xrofollowlinks.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/resources/service/serviceId/DomainServiceResourceTest_serviceId_xrofollowlinks.java?rev=1188099&r1=1188098&r2=1188099&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/resources/service/serviceId/DomainServiceResourceTest_serviceId_xrofollowlinks.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/resources/service/serviceId/DomainServiceResourceTest_serviceId_xrofollowlinks.java Mon Oct 24 11:54:12 2011
@@ -63,7 +63,7 @@ public class DomainServiceResourceTest_s
final String href = givenHrefToService("simples");
final RestfulRequest request =
- client.createRequest(HttpMethod.GET, href).withArg(QueryParameter.FOLLOW_LINKS, "members[actionId=%s].details", "list");
+ client.createRequest(HttpMethod.GET, href).withArg(QueryParameter.FOLLOW_LINKS, "members[id=%s].details", "list");
final RestfulResponse<DomainObjectRepresentation> restfulResponse = request.executeT();
assertThat(restfulResponse.getStatus(), is(HttpStatusCode.OK));
@@ -74,11 +74,11 @@ public class DomainServiceResourceTest_s
JsonRepresentation actionRepr;
- actionRepr = membersList.getRepresentation("[actionId=%s]", "list");
+ actionRepr = membersList.getRepresentation("[id=%s]", "list");
assertThat(actionRepr.getRepresentation("details"), is(not(nullValue())));
assertThat(actionRepr.getRepresentation("details.value"), is(not(nullValue()))); // followed
- actionRepr = membersList.getRepresentation("[actionId=%s]", "newTransientEntity");
+ actionRepr = membersList.getRepresentation("[id=%s]", "newTransientEntity");
assertThat(actionRepr.getRepresentation("details"), is(not(nullValue())));
assertThat(actionRepr.getRepresentation("details.value"), is(nullValue())); // not followed
}
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/RuntimeExceptionMapper.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/RuntimeExceptionMapper.java?rev=1188099&r1=1188098&r2=1188099&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/RuntimeExceptionMapper.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/RuntimeExceptionMapper.java Mon Oct 24 11:54:12 2011
@@ -60,7 +60,7 @@ public class RuntimeExceptionMapper impl
private ExceptionPojo causedBy;
public ExceptionPojo(Throwable ex) {
- this.message = ex.getMessage();
+ this.message = messageFor(ex);
StackTraceElement[] stackTraceElements = ex.getStackTrace();
for (StackTraceElement stackTraceElement : stackTraceElements) {
this.stackTrace.add(format(stackTraceElement));
@@ -71,6 +71,11 @@ public class RuntimeExceptionMapper impl
}
}
+ private static String messageFor(Throwable ex) {
+ final String message = ex.getMessage();
+ return message!=null?message:ex.getClass().getName();
+ }
+
@SuppressWarnings("unused")
public String getMessage() {
return message;
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/ResourceAbstract.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/ResourceAbstract.java?rev=1188099&r1=1188098&r2=1188099&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/ResourceAbstract.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/ResourceAbstract.java Mon Oct 24 11:54:12 2011
@@ -184,28 +184,34 @@ public abstract class ResourceAbstract {
// Responses
// //////////////////////////////////////////////////////////////
- public static ResponseBuilder responseOf(HttpStatusCode httpStatusCode) {
- return Response.status(httpStatusCode.getJaxrsStatusType()).type(MediaType.APPLICATION_JSON_TYPE);
+ public static ResponseBuilder responseOfNoContent(Version version) {
+ final ResponseBuilder response = responseOf(HttpStatusCode.NO_CONTENT);
+ addLastModifiedIfAvailable(response, version);
+ return response;
}
- public static ResponseBuilder responseOfNoContent(Version version) {
- return responseOf(HttpStatusCode.NO_CONTENT).lastModified(version.getTime());
+ public static ResponseBuilder responseOfOk(ReprRenderer<?,?> renderer, Caching caching) {
+ return responseOfOk(renderer, caching, null);
}
- public static ResponseBuilder responseOfOk(RepresentationType representationType, Caching caching, String representation) {
- return responseOf(HttpStatusCode.OK)
+ public static ResponseBuilder responseOfOk(ReprRenderer<?,?> renderer, Caching caching, Version version) {
+ RepresentationType representationType = renderer.getRepresentationType();
+ final ResponseBuilder response = responseOf(HttpStatusCode.OK)
.type(representationType.getMediaType())
.cacheControl(caching.getCacheControl())
- .entity(representation);
+ .entity(jsonFor(renderer.render()));
+ return addLastModifiedIfAvailable(response, version);
}
- public static ResponseBuilder responseOfOk(RepresentationType representationType, Caching caching, JsonRepresentation representation) {
- return responseOfOk(representationType, caching, jsonFor(representation));
+ private static ResponseBuilder responseOf(HttpStatusCode httpStatusCode) {
+ return Response.status(httpStatusCode.getJaxrsStatusType()).type(MediaType.APPLICATION_JSON_TYPE);
}
- public static ResponseBuilder responseOfOk(Caching caching, ReprRenderer<?,?> renderer) {
- RepresentationType representationType = renderer.getRepresentationType();
- return responseOfOk(representationType, caching, renderer.render());
+ private static ResponseBuilder addLastModifiedIfAvailable(final ResponseBuilder responseBuilder, Version version) {
+ if(version!=null) {
+ responseBuilder.lastModified(version.getTime());
+ }
+ return responseBuilder;
}
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/capabilities/CapabilitiesResourceServerside.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/capabilities/CapabilitiesResourceServerside.java?rev=1188099&r1=1188098&r2=1188099&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/capabilities/CapabilitiesResourceServerside.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/capabilities/CapabilitiesResourceServerside.java Mon Oct 24 11:54:12 2011
@@ -55,7 +55,7 @@ public class CapabilitiesResourceServers
(CapabilitiesReprRenderer) factory.newRenderer(getResourceContext(), null, JsonRepresentation.newMap());
renderer.includesSelf();
- return responseOfOk(Caching.ONE_DAY, renderer).build();
+ return responseOfOk(renderer, Caching.ONE_DAY).build();
}
private void fakeRuntimeExceptionIfXFail() {
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainObjectResourceServerside.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainObjectResourceServerside.java?rev=1188099&r1=1188098&r2=1188099&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainObjectResourceServerside.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainObjectResourceServerside.java Mon Oct 24 11:54:12 2011
@@ -78,7 +78,7 @@ public class DomainObjectResourceServers
(DomainObjectReprRenderer) rendererFactory.newRenderer(getResourceContext(), null, JsonRepresentation.newMap());
renderer.with(objectAdapter);
- ResponseBuilder respBuilder = responseOfOk(Caching.NONE, renderer);
+ ResponseBuilder respBuilder = responseOfOk(renderer, Caching.NONE);
Version version = objectAdapter.getVersion();
if (version != null && version.getTime() != null) {
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainResourceHelper.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainResourceHelper.java?rev=1188099&r1=1188098&r2=1188099&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainResourceHelper.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainResourceHelper.java Mon Oct 24 11:54:12 2011
@@ -93,7 +93,7 @@ public class DomainResourceHelper {
renderer.with(new ObjectAndProperty(objectAdapter, property));
- return ResourceAbstract.responseOfOk(caching, renderer).build();
+ return ResourceAbstract.responseOfOk(renderer, caching).build();
}
// //////////////////////////////////////////////////////////////
@@ -112,7 +112,7 @@ public class DomainResourceHelper {
.withSelf()
.withMutatorsIfEnabled();
- return ResourceAbstract.responseOfOk(Caching.NONE, renderer).build();
+ return ResourceAbstract.responseOfOk(renderer, Caching.NONE).build();
}
@@ -251,7 +251,7 @@ public class DomainResourceHelper {
final ListReprRenderer renderer = (ListReprRenderer) factory.newRenderer(resourceContext, null, representation);
renderer.with(collectionAdapters);
- return ResourceAbstract.responseOfOk(Caching.NONE, renderer).build();
+ return ResourceAbstract.responseOfOk(renderer, Caching.NONE).build();
}
@@ -264,7 +264,7 @@ public class DomainResourceHelper {
ScalarValueReprRenderer renderer = (ScalarValueReprRenderer) factory.newRenderer(resourceContext, null, representation);
renderer.with(objectAdapter);
- return ResourceAbstract.responseOfOk(Caching.NONE, renderer).build();
+ return ResourceAbstract.responseOfOk(renderer, Caching.NONE).build();
}
@@ -273,7 +273,7 @@ public class DomainResourceHelper {
final DomainObjectReprRenderer renderer = (DomainObjectReprRenderer) factory.newRenderer(resourceContext, null, representation);
renderer.with(returnedAdapter);
- ResponseBuilder respBuilder = ResourceAbstract.responseOfOk(Caching.NONE, renderer);
+ ResponseBuilder respBuilder = ResourceAbstract.responseOfOk(renderer, Caching.NONE);
Version version = returnedAdapter.getVersion();
if (version != null && version.getTime() != null) {
@@ -386,10 +386,10 @@ public class DomainResourceHelper {
ObjectAssociation association = objectAdapter.getSpecification()
.getAssociation(propertyId);
if (association == null || !association.isOneToOneAssociation()) {
- throwNotFoundException(propertyId, MemberType.OBJECT_PROPERTY);
+ throwNotFoundException(propertyId, MemberType.PROPERTY);
}
OneToOneAssociation property = (OneToOneAssociation) association;
- return memberThatIsVisibleAndUsable(objectAdapter, property, MemberType.OBJECT_PROPERTY,
+ return memberThatIsVisibleAndUsable(objectAdapter, property, MemberType.PROPERTY,
intent);
}
@@ -401,10 +401,10 @@ public class DomainResourceHelper {
ObjectAssociation association = objectAdapter.getSpecification()
.getAssociation(collectionId);
if (association == null || !association.isOneToManyAssociation()) {
- throwNotFoundException(collectionId, MemberType.OBJECT_COLLECTION);
+ throwNotFoundException(collectionId, MemberType.COLLECTION);
}
OneToManyAssociation collection = (OneToManyAssociation) association;
- return memberThatIsVisibleAndUsable(objectAdapter, collection, MemberType.OBJECT_COLLECTION,
+ return memberThatIsVisibleAndUsable(objectAdapter, collection, MemberType.COLLECTION,
intent);
}
@@ -415,10 +415,10 @@ public class DomainResourceHelper {
ObjectAction action = objectAdapter.getSpecification().getObjectAction(actionId);
if (action == null) {
- throwNotFoundException(actionId, MemberType.OBJECT_ACTION);
+ throwNotFoundException(actionId, MemberType.ACTION);
}
- return memberThatIsVisibleAndUsable(objectAdapter, action, MemberType.OBJECT_ACTION, intent);
+ return memberThatIsVisibleAndUsable(objectAdapter, action, MemberType.ACTION, intent);
}
protected <T extends ObjectMember> T memberThatIsVisibleAndUsable(
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainServiceResourceServerside.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainServiceResourceServerside.java?rev=1188099&r1=1188098&r2=1188099&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainServiceResourceServerside.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainServiceResourceServerside.java Mon Oct 24 11:54:12 2011
@@ -60,7 +60,7 @@ public class DomainServiceResourceServer
.withSelf("services")
.with(serviceAdapters);
- return responseOfOk(Caching.ONE_DAY, renderer).build();
+ return responseOfOk(renderer, Caching.ONE_DAY).build();
}
////////////////////////////////////////////////////////////
@@ -85,7 +85,7 @@ public class DomainServiceResourceServer
.includesSelf()
.with(serviceAdapter);
- return responseOfOk(Caching.ONE_DAY, renderer).build();
+ return responseOfOk(renderer, Caching.ONE_DAY).build();
}
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/MemberType.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/MemberType.java?rev=1188099&r1=1188098&r2=1188099&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/MemberType.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/MemberType.java Mon Oct 24 11:54:12 2011
@@ -42,7 +42,7 @@ import com.google.common.collect.Immutab
public enum MemberType {
- OBJECT_PROPERTY("properties/", "propertyId", Rel.DETAILS, RepresentationType.OBJECT_PROPERTY,
+ PROPERTY("properties/", "id", Rel.DETAILS, RepresentationType.OBJECT_PROPERTY,
ImmutableMap.of(
"modify", MutatorSpec.of(Rel.MODIFY, PropertyValidateFacet.class, PropertySetterFacet.class, HttpMethod.PUT, BodyArgs.ONE),
"clear", MutatorSpec.of(Rel.CLEAR, PropertyValidateFacet.class, PropertyClearFacet.class, HttpMethod.DELETE, BodyArgs.NONE)
@@ -55,7 +55,7 @@ public enum MemberType {
/**
* {@link #getMutators()} are keyed by {@link CollectionSemantics#getAddToKey()}
*/
- OBJECT_COLLECTION("collections/", "collectionId", Rel.DETAILS, RepresentationType.OBJECT_COLLECTION,
+ COLLECTION("collections/", "id", Rel.DETAILS, RepresentationType.OBJECT_COLLECTION,
ImmutableMap.of(
"addToSet", MutatorSpec.of(Rel.ADD_TO, CollectionValidateAddToFacet.class, CollectionAddToFacet.class, HttpMethod.PUT, BodyArgs.ONE),
"addToList", MutatorSpec.of(Rel.ADD_TO, CollectionValidateAddToFacet.class, CollectionAddToFacet.class, HttpMethod.POST, BodyArgs.ONE),
@@ -69,7 +69,7 @@ public enum MemberType {
/**
* {@link #getMutators()} are keyed by {@link ActionSemantics#getInvokeKey()}
*/
- OBJECT_ACTION("actions/", "actionId", Rel.DETAILS, RepresentationType.OBJECT_ACTION,
+ ACTION("actions/", "id", Rel.DETAILS, RepresentationType.OBJECT_ACTION,
ImmutableMap.of(
"invokeQueryOnly", MutatorSpec.of(Rel.INVOKE, ActionValidationFacet.class, ActionInvocationFacet.class, HttpMethod.GET, BodyArgs.MANY, "invoke"),
"invokeIdempotent", MutatorSpec.of(Rel.INVOKE, ActionValidationFacet.class, ActionInvocationFacet.class, HttpMethod.PUT, BodyArgs.MANY, "invoke"),
@@ -115,15 +115,15 @@ public enum MemberType {
public abstract ObjectSpecification specFor(ObjectMember objectMember);
public boolean isProperty() {
- return this == MemberType.OBJECT_PROPERTY;
+ return this == MemberType.PROPERTY;
}
public boolean isCollection() {
- return this == MemberType.OBJECT_COLLECTION;
+ return this == MemberType.COLLECTION;
}
public boolean isAction() {
- return this == MemberType.OBJECT_ACTION;
+ return this == MemberType.ACTION;
}
public static MemberType lookup(final String memberTypeName) {
@@ -137,10 +137,10 @@ public enum MemberType {
public static MemberType of(ObjectMember objectMember) {
return objectMember.isAction()?
- OBJECT_ACTION:
+ ACTION:
objectMember.isOneToOneAssociation()?
- OBJECT_PROPERTY:
- OBJECT_COLLECTION;
+ PROPERTY:
+ COLLECTION;
}
public RepresentationType getRepresentationType() {
@@ -157,13 +157,13 @@ public enum MemberType {
public static MemberType determineFrom(ObjectFeature objectFeature) {
if (objectFeature instanceof ObjectAction) {
- return MemberType.OBJECT_ACTION;
+ return MemberType.ACTION;
}
if (objectFeature instanceof OneToOneAssociation) {
- return MemberType.OBJECT_PROPERTY;
+ return MemberType.PROPERTY;
}
if (objectFeature instanceof OneToManyAssociation) {
- return MemberType.OBJECT_COLLECTION;
+ return MemberType.COLLECTION;
}
return null;
}
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domaintypes/DomainTypeResourceServerside.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domaintypes/DomainTypeResourceServerside.java?rev=1188099&r1=1188098&r2=1188099&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domaintypes/DomainTypeResourceServerside.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domaintypes/DomainTypeResourceServerside.java Mon Oct 24 11:54:12 2011
@@ -66,7 +66,7 @@ public class DomainTypeResourceServersid
(DomainTypesReprRenderer) rendererFactory.newRenderer(getResourceContext(), null, JsonRepresentation.newMap());
renderer.with(allSpecifications).includesSelf();
- return responseOfOk(Caching.ONE_DAY, renderer).build();
+ return responseOfOk(renderer, Caching.ONE_DAY).build();
}
@@ -86,7 +86,7 @@ public class DomainTypeResourceServersid
(DomainTypeReprRenderer) rendererFactory.newRenderer(getResourceContext(), null, JsonRepresentation.newMap());
renderer.with(objectSpec).includesSelf();
- return responseOfOk(Caching.ONE_DAY, renderer).build();
+ return responseOfOk(renderer, Caching.ONE_DAY).build();
}
@GET
@@ -116,7 +116,7 @@ public class DomainTypeResourceServersid
(TypePropertyReprRenderer) rendererFactory.newRenderer(getResourceContext(), null, JsonRepresentation.newMap());
renderer.with(new SpecAndProperty(objectSpec, property)).includesSelf();
- return responseOfOk(Caching.ONE_DAY, renderer).build();
+ return responseOfOk(renderer, Caching.ONE_DAY).build();
}
@GET
@@ -146,7 +146,7 @@ public class DomainTypeResourceServersid
(TypeCollectionReprRenderer) rendererFactory.newRenderer(getResourceContext(), null, JsonRepresentation.newMap());
renderer.with(new SpecAndCollection(objectSpec, collection)).includesSelf();
- return responseOfOk(Caching.ONE_DAY, renderer).build();
+ return responseOfOk(renderer, Caching.ONE_DAY).build();
}
@GET
@@ -176,7 +176,7 @@ public class DomainTypeResourceServersid
(TypeActionReprRenderer) rendererFactory.newRenderer(getResourceContext(), null, JsonRepresentation.newMap());
renderer.with(new SpecAndAction(objectSpec, action)).includesSelf();
- return responseOfOk(Caching.ONE_DAY, renderer).build();
+ return responseOfOk(renderer, Caching.ONE_DAY).build();
}
@GET
@@ -209,7 +209,7 @@ public class DomainTypeResourceServersid
(TypeActionParamReprRenderer) rendererFactory.newRenderer(getResourceContext(), null, JsonRepresentation.newMap());
renderer.with(new SpecAndActionParam(objectSpec, actionParam)).includesSelf();
- return responseOfOk(Caching.ONE_DAY, renderer).build();
+ return responseOfOk(renderer, Caching.ONE_DAY).build();
}
}
\ No newline at end of file
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/home/HomePageResourceServerside.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/home/HomePageResourceServerside.java?rev=1188099&r1=1188098&r2=1188099&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/home/HomePageResourceServerside.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/home/HomePageResourceServerside.java Mon Oct 24 11:54:12 2011
@@ -47,7 +47,7 @@ public class HomePageResourceServerside
(HomePageReprRenderer) factory.newRenderer(getResourceContext(), null, JsonRepresentation.newMap());
renderer.includesSelf();
- return responseOfOk(Caching.ONE_DAY, renderer).build();
+ return responseOfOk(renderer, Caching.ONE_DAY).build();
}
}
\ No newline at end of file
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/user/UserResourceServerside.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/user/UserResourceServerside.java?rev=1188099&r1=1188098&r2=1188099&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/user/UserResourceServerside.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/user/UserResourceServerside.java Mon Oct 24 11:54:12 2011
@@ -43,7 +43,7 @@ public class UserResourceServerside exte
renderer.includesSelf()
.with(getAuthenticationSession());
- return responseOfOk(Caching.ONE_HOUR, renderer).build();
+ return responseOfOk(renderer, Caching.ONE_HOUR).build();
}