You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2014/10/11 18:19:18 UTC

[1/3] git commit: ISIS-917: reinstating method that had been removed from RendererContext API, causing unnecessary breakage in isisaddons' isis-module-publishing.

Repository: isis
Updated Branches:
  refs/heads/master 70dff7ce2 -> 13eb20023


ISIS-917: reinstating method that had been removed from RendererContext API, causing unnecessary breakage in isisaddons' isis-module-publishing.


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/b1983f60
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/b1983f60
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/b1983f60

Branch: refs/heads/master
Commit: b1983f60fe09858d63bc275dc3ae5acbf1b03631
Parents: 70dff7c
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Sat Oct 11 17:00:30 2014 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Sat Oct 11 17:00:30 2014 +0100

----------------------------------------------------------------------
 .../isis/viewer/restfulobjects/rendering/RendererContext.java  | 3 +++
 .../restfulobjects/server/resources/DomainResourceHelper.java  | 6 ++++++
 2 files changed, 9 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/b1983f60/core/viewer-restfulobjects-rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/RendererContext.java
----------------------------------------------------------------------
diff --git a/core/viewer-restfulobjects-rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/RendererContext.java b/core/viewer-restfulobjects-rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/RendererContext.java
index 6af0f9f..0111c11 100644
--- a/core/viewer-restfulobjects-rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/RendererContext.java
+++ b/core/viewer-restfulobjects-rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/RendererContext.java
@@ -25,6 +25,7 @@ import org.apache.isis.applib.profiles.Localization;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
+import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.runtime.system.persistence.PersistenceSession;
 import org.apache.isis.viewer.restfulobjects.rendering.domainobjects.DomainObjectReprRenderer;
 
@@ -38,6 +39,8 @@ public interface RendererContext {
     
     public PersistenceSession getPersistenceSession();
 
+    public AdapterManager getAdapterManager();
+
     public Where getWhere();
 
     public List<List<String>> getFollowLinks();

http://git-wip-us.apache.org/repos/asf/isis/blob/b1983f60/core/viewer-restfulobjects-server/src/main/java/org/apache/isis/viewer/restfulobjects/server/resources/DomainResourceHelper.java
----------------------------------------------------------------------
diff --git a/core/viewer-restfulobjects-server/src/main/java/org/apache/isis/viewer/restfulobjects/server/resources/DomainResourceHelper.java b/core/viewer-restfulobjects-server/src/main/java/org/apache/isis/viewer/restfulobjects/server/resources/DomainResourceHelper.java
index 9b623ba..44f30e6 100644
--- a/core/viewer-restfulobjects-server/src/main/java/org/apache/isis/viewer/restfulobjects/server/resources/DomainResourceHelper.java
+++ b/core/viewer-restfulobjects-server/src/main/java/org/apache/isis/viewer/restfulobjects/server/resources/DomainResourceHelper.java
@@ -24,6 +24,7 @@ import org.apache.isis.applib.profiles.Localization;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
+import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
 import org.apache.isis.core.metamodel.spec.feature.OneToManyAssociation;
 import org.apache.isis.core.metamodel.spec.feature.OneToOneAssociation;
@@ -75,6 +76,11 @@ public class DomainResourceHelper {
         }
 
         @Override
+        public AdapterManager getAdapterManager() {
+            return rendererContext.getAdapterManager();
+        }
+
+        @Override
         public Where getWhere() {
             return rendererContext.getWhere();
         }


[2/3] git commit: ISIS-927: bookmark service now wrapper factory aware.

Posted by da...@apache.org.
ISIS-927: bookmark service now wrapper factory aware.

Also includes fix for wrapper factory itself, where the isUnwrapped method (and related) were seeemingly broken...


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/282a2f82
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/282a2f82
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/282a2f82

Branch: refs/heads/master
Commit: 282a2f824c702678a5b329a5813a789462a6de62
Parents: b1983f6
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Sat Oct 11 17:01:18 2014 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Sat Oct 11 17:01:18 2014 +0100

----------------------------------------------------------------------
 .../services/bookmarks/BookmarkServiceDefault.java          | 9 ++++++++-
 .../wrapper/handlers/DomainObjectInvocationHandler.java     | 5 +++++
 2 files changed, 13 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/282a2f82/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceDefault.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceDefault.java
index 6998c6a..3a75df3 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceDefault.java
@@ -24,6 +24,7 @@ import org.apache.isis.applib.annotation.Programmatic;
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.services.bookmark.BookmarkHolder;
 import org.apache.isis.applib.services.bookmark.BookmarkService;
+import org.apache.isis.applib.services.wrapper.WrapperFactory;
 import org.apache.isis.core.metamodel.adapter.DomainObjectServices;
 import org.apache.isis.core.metamodel.adapter.DomainObjectServicesAware;
 import org.apache.isis.core.runtime.persistence.ObjectNotFoundException;
@@ -74,7 +75,11 @@ public class BookmarkServiceDefault implements BookmarkService, DomainObjectServ
         if(domainObject == null) {
             return null;
         }
-        return domainObjectServices.bookmarkFor(domainObject);
+        return domainObjectServices.bookmarkFor(unwrapped(domainObject));
+    }
+
+    private Object unwrapped(Object domainObject) {
+        return wrapperFactory != null ? wrapperFactory.unwrap(domainObject) : domainObject;
     }
 
     @Override
@@ -90,5 +95,7 @@ public class BookmarkServiceDefault implements BookmarkService, DomainObjectServ
     }
 
 
+    @javax.inject.Inject
+    private WrapperFactory wrapperFactory;
 
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/282a2f82/core/wrapper/src/main/java/org/apache/isis/core/wrapper/handlers/DomainObjectInvocationHandler.java
----------------------------------------------------------------------
diff --git a/core/wrapper/src/main/java/org/apache/isis/core/wrapper/handlers/DomainObjectInvocationHandler.java b/core/wrapper/src/main/java/org/apache/isis/core/wrapper/handlers/DomainObjectInvocationHandler.java
index d505add..e5594c9 100644
--- a/core/wrapper/src/main/java/org/apache/isis/core/wrapper/handlers/DomainObjectInvocationHandler.java
+++ b/core/wrapper/src/main/java/org/apache/isis/core/wrapper/handlers/DomainObjectInvocationHandler.java
@@ -116,12 +116,17 @@ public class DomainObjectInvocationHandler<T> extends DelegatingInvocationHandle
 
         try {
             titleMethod = delegate.getClass().getMethod("title", new Class[]{});
+        } catch (final NoSuchMethodException e) {
+            // ignore
+        }
+        try {
             __isis_saveMethod = WrapperObject.class.getMethod("__isis_save", new Class[]{});
             __isis_wrappedMethod = WrapperObject.class.getMethod("__isis_wrapped", new Class[]{});
             __isis_executionMode = WrapperObject.class.getMethod("__isis_executionMode", new Class[]{});
             saveMethod = WrapperObject.class.getMethod("save", new Class[] {});
             wrappedMethod = WrapperObject.class.getMethod("wrapped", new Class[] {});
         } catch (final NoSuchMethodException e) {
+            throw new IllegalStateException("Could not locate reserved declared methods in the WrappingObject and WrappedObject interfaces");
         }
     }
 


[3/3] git commit: ISIS-872: various minor stabilization bug fixes or cosmetic fix.

Posted by da...@apache.org.
ISIS-872: various minor stabilization bug fixes or cosmetic fix.

1. workaround for scrollbars showing up in action modal dialog in Chrome
2. PageAbstract, make the applicaton name theme resilient to non-valid characters in the application name
3. in publishing support class, allow for a null arg for published actions.


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/13eb2002
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/13eb2002
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/13eb2002

Branch: refs/heads/master
Commit: 13eb200238b522b4522a3b83d459304f596cabfc
Parents: 282a2f8
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Sat Oct 11 17:03:45 2014 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Sat Oct 11 17:12:28 2014 +0100

----------------------------------------------------------------------
 .../actionprompt/ActionPromptModalWindow.java   |  2 +-
 .../viewer/wicket/ui/pages/PageAbstract.css     |  2 +-
 .../viewer/wicket/ui/pages/PageAbstract.java    |  6 ++---
 .../wicket/ui/pages/PageAbstractTest.java       | 23 ++++++++++++++++++++
 ...shingServiceWithDefaultPayloadFactories.java |  3 +++
 5 files changed, 31 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/13eb2002/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actionprompt/ActionPromptModalWindow.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actionprompt/ActionPromptModalWindow.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actionprompt/ActionPromptModalWindow.java
index 742ece6..f53d560 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actionprompt/ActionPromptModalWindow.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actionprompt/ActionPromptModalWindow.java
@@ -113,7 +113,7 @@ public class ActionPromptModalWindow extends ModalWindow implements ActionPrompt
                 "  ww.autoSizeWindow();\n " +
                 // this is a nasty hack to make dialog appear without scrollbars on Chrome (noticed in version 37.0.2062.120 m)
                 // really though this ought to be fixed in Wicket.Window.get().autoSizeWindow();
-                "  $('.actionPanel .myBlockContainer').css('margin', '19px');\n " +
+                "  $('.actionPanel .myBlockContainer').css('margin', '19px').css('padding', '19px');\n " +
                 "}\n, 0);\n");
         
         target.appendJavaScript(builder.toString());

http://git-wip-us.apache.org/repos/asf/isis/blob/13eb2002/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.css
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.css b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.css
index 6e53e6b..0870a16 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.css
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.css
@@ -754,7 +754,7 @@ div.select2-drop {
 }
 
 .actionPanel .myBlockContainer {
-    margin:20px;
+    margin:19px;
     padding: 20px;
     width: 600px;
     min-height: 200px;

http://git-wip-us.apache.org/repos/asf/isis/blob/13eb2002/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.java
index 1113641..a587f90 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.java
@@ -48,7 +48,6 @@ import org.apache.isis.applib.services.exceprecog.ExceptionRecognizerComposite;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.authentication.MessageBroker;
 import org.apache.isis.core.commons.config.IsisConfiguration;
-import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.services.ServicesInjectorSpi;
 import org.apache.isis.core.metamodel.spec.SpecificationLoaderSpi;
 import org.apache.isis.core.runtime.system.context.IsisContext;
@@ -203,10 +202,11 @@ public abstract class PageAbstract extends WebPage implements ActionPromptProvid
         return pageClassRegistry.getPageClass(PageType.SIGN_IN);
     }
 
-    private static String asCssStyle(final String str) {
-        return StringExtensions.asLowerDashed(str);
+    static String asCssStyle(final String str) {
+        return str.toLowerCase().replaceAll("[^A-Za-z0-9 ]", "").replaceAll("\\s+", "-");
     }
 
+
     protected ExceptionModel recognizeException(Exception ex) {
         List<ExceptionRecognizer> exceptionRecognizers;
         try {

http://git-wip-us.apache.org/repos/asf/isis/blob/13eb2002/component/viewer/wicket/ui/src/test/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstractTest.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/test/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstractTest.java b/component/viewer/wicket/ui/src/test/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstractTest.java
new file mode 100644
index 0000000..6080681
--- /dev/null
+++ b/component/viewer/wicket/ui/src/test/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstractTest.java
@@ -0,0 +1,23 @@
+package org.apache.isis.viewer.wicket.ui.pages;
+
+import org.junit.Test;
+
+import static org.hamcrest.CoreMatchers.is;
+import static org.junit.Assert.assertThat;
+
+public abstract class PageAbstractTest {
+
+    public static class AsCssStyle extends PageAbstractTest {
+
+        @Test
+        public void withSpacesAndCapitals() throws Exception {
+            assertThat(PageAbstract.asCssStyle("Simple App"), is("simple-app"));
+        }
+
+        @Test
+        public void withOtherCharacters() throws Exception {
+            assertThat(PageAbstract.asCssStyle("Kitchen Sink (Demo) App"), is("kitchen-sink-demo-app"));
+        }
+
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/isis/blob/13eb2002/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/objectstore/transaction/PublishingServiceWithDefaultPayloadFactories.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/objectstore/transaction/PublishingServiceWithDefaultPayloadFactories.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/objectstore/transaction/PublishingServiceWithDefaultPayloadFactories.java
index de3198e..f7c7466 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/objectstore/transaction/PublishingServiceWithDefaultPayloadFactories.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/objectstore/transaction/PublishingServiceWithDefaultPayloadFactories.java
@@ -49,6 +49,9 @@ public class PublishingServiceWithDefaultPayloadFactories {
 
     private final static Function<ObjectAdapter, ObjectAdapter> NOT_DESTROYED_ELSE_EMPTY = new Function<ObjectAdapter, ObjectAdapter>() {
         public ObjectAdapter apply(ObjectAdapter adapter) {
+            if(adapter == null) {
+                return null;
+            }
             if (!adapter.isDestroyed()) {
                 return adapter;
             }