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/05/26 12:33:02 UTC
[01/12] git commit: ISIS-793: fix comment,
make configuration of WebJars library easier to override
Repository: isis
Updated Branches:
refs/heads/master d99641d06 -> 5e3751a67
ISIS-793: fix comment, make configuration of WebJars library easier to override
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/d887d84f
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/d887d84f
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/d887d84f
Branch: refs/heads/master
Commit: d887d84fd38bf251a342208fb7b103e1c5f1648a
Parents: d99641d
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon May 26 10:56:00 2014 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Mon May 26 10:56:00 2014 +0100
----------------------------------------------------------------------
.../wicket/viewer/IsisWicketApplication.java | 45 +++++++++-----------
1 file changed, 21 insertions(+), 24 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/d887d84f/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
index 9a8f426..bddf816 100644
--- a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
+++ b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
@@ -132,24 +132,8 @@ import org.apache.isis.viewer.wicket.viewer.integration.wicket.WebRequestCycleFo
* make the {@link ComponentFactory} defined within it available.
*
* <p>
- * Alternatively, {@link ComponentFactory}s can be specified by overridding
- * {@link #newComponentFactoryList()}. This offers more fine-grained control for
- * the ordering, but is more fiddly.
- *
- * <p>
- * There are also a number of other pluggable hooks (similar way to other Wicket
- * customizations)
- * <ul>
- * <li> {@link #newComponentFactoryList()} (mentioned above)</li>
- * <li> {@link #newComponentFactoryRegistry()} (uses the
- * {@link ComponentFactoryRegistrar} provided by {@link #newComponentFactoryList()})</li>
- * <li> {@link #newPageClassList()}</li>
- * <li> {@link #newPageRegistry()} (uses the {@link PageClassList} provided by
- * {@link #newPageClassList()})</li>
- * <li> {@link #newConverterLocator()} (probably should not be changed.)</li>
- * <li> {@link #newRequestCycle(Request, Response)} (probably should not be
- * changed.)</li>
- * </ul>
+ * Alternatively, {@link ComponentFactory}s can be specified by overridding {@link #newIsisWicketModule()}.
+ * This mechanism allows a number of other aspects to be customized.
*/
public class IsisWicketApplication extends AuthenticatedWebApplication implements ComponentFactoryRegistryAccessor, PageClassRegistryAccessor, AuthenticationSessionProvider {
@@ -226,13 +210,9 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
try {
super.init();
- // install 2 default collector instances
- // (FileAssetPathCollector(WEBJARS_PATH_PREFIX), JarAssetPathCollector)
- // and a webjars resource finder.
- WebjarsSettings settings = new WebjarsSettings();
+ configureWebJars();
+
- WicketWebjars.install(this, settings);
-
String isisConfigDir = getServletContext().getInitParameter("isis.config.dir");
final String loggingPropertiesDir;
if(isisConfigDir != null) {
@@ -314,6 +294,23 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
}
}
+ // //////////////////////////////////////
+
+ /**
+ * Install 2 default collector instances: (FileAssetPathCollector(WEBJARS_PATH_PREFIX), JarAssetPathCollector),
+ * and a webjars resource finder.
+ *
+ * <p>
+ * Factored out for easy (informal) pluggability.
+ * </p>
+ */
+ protected void configureWebJars() {
+ WebjarsSettings settings = new WebjarsSettings();
+ WicketWebjars.install(this, settings);
+ }
+
+ // //////////////////////////////////////
+
/**
* The validation errors, if any, that occurred on {@link #init() startup}.
*/
[07/12] git commit: ISIS-793: just moving methods around in
IsisWicketApplication (for instantiating IsisWicketModule)
Posted by da...@apache.org.
ISIS-793: just moving methods around in IsisWicketApplication (for instantiating IsisWicketModule)
... already protected visibility so can be overridden if required.
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/a14d2d21
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/a14d2d21
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/a14d2d21
Branch: refs/heads/master
Commit: a14d2d21786c41c3ef55f878056c9a4eb0410e6a
Parents: fe64d09
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon May 26 11:07:59 2014 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Mon May 26 11:07:59 2014 +0100
----------------------------------------------------------------------
.../viewer/wicket/viewer/IsisWicketApplication.java | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/a14d2d21/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
index b2a9f37..3ff19bc 100644
--- a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
+++ b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
@@ -479,6 +479,15 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
}
}
+ // //////////////////////////////////////
+
+ /**
+ * Override if required
+ */
+ protected Module newIsisWicketModule() {
+ return new IsisWicketModule();
+ }
+
// //////////////////////////////////////
@@ -560,13 +569,6 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
getComponentInstantiationListeners().add(new GuiceComponentInjector(this, injector, false));
}
- /**
- * Override if required
- */
- protected Module newIsisWicketModule() {
- return new IsisWicketModule();
- }
-
// /////////////////////////////////////////////////
// Wicket Hooks
// /////////////////////////////////////////////////
[11/12] git commit: ISIS-793: just moving methods around in
IsisWicketApplication (mountPage supporting method)
Posted by da...@apache.org.
ISIS-793: just moving methods around in IsisWicketApplication (mountPage supporting method)
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/16b195e5
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/16b195e5
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/16b195e5
Branch: refs/heads/master
Commit: 16b195e5fc1e1dc39aa078941554a19303bbe8a5
Parents: a6f2e57
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon May 26 11:18:07 2014 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Mon May 26 11:18:07 2014 +0100
----------------------------------------------------------------------
.../wicket/viewer/IsisWicketApplication.java | 43 ++++++++------------
1 file changed, 17 insertions(+), 26 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/16b195e5/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
index 0419078..0cf689f 100644
--- a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
+++ b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
@@ -19,11 +19,7 @@
package org.apache.isis.viewer.wicket.viewer;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.List;
-import java.util.ServiceLoader;
-import java.util.Set;
+import java.util.*;
import javax.servlet.ServletContext;
@@ -38,8 +34,6 @@ import com.google.inject.Injector;
import com.google.inject.Module;
import de.agilecoders.wicket.webjars.WicketWebjars;
-import de.agilecoders.wicket.webjars.collectors.AssetPathCollector;
-import de.agilecoders.wicket.webjars.collectors.VfsJarAssetPathCollector;
import de.agilecoders.wicket.webjars.settings.WebjarsSettings;
import org.apache.wicket.Application;
@@ -56,10 +50,7 @@ import org.apache.wicket.markup.head.IHeaderResponse;
import org.apache.wicket.markup.head.filter.JavaScriptFilteredIntoFooterHeaderResponse;
import org.apache.wicket.markup.html.IHeaderResponseDecorator;
import org.apache.wicket.markup.html.WebPage;
-import org.apache.wicket.request.Request;
-import org.apache.wicket.request.Response;
import org.apache.wicket.request.cycle.IRequestCycleListener;
-import org.apache.wicket.request.cycle.RequestCycle;
import org.apache.wicket.request.resource.CssResourceReference;
import org.apache.wicket.settings.IRequestCycleSettings.RenderStrategy;
import org.slf4j.Logger;
@@ -91,7 +82,6 @@ import org.apache.isis.viewer.wicket.model.mementos.ObjectAdapterMemento;
import org.apache.isis.viewer.wicket.model.models.ImageResourceCache;
import org.apache.isis.viewer.wicket.model.models.PageType;
import org.apache.isis.viewer.wicket.ui.ComponentFactory;
-import org.apache.isis.viewer.wicket.ui.app.registry.ComponentFactoryRegistrar;
import org.apache.isis.viewer.wicket.ui.app.registry.ComponentFactoryRegistry;
import org.apache.isis.viewer.wicket.ui.app.registry.ComponentFactoryRegistryAccessor;
import org.apache.isis.viewer.wicket.ui.components.additionallinks.AdditionalLinksPanel;
@@ -99,9 +89,6 @@ import org.apache.isis.viewer.wicket.ui.components.entity.properties.EntityPrope
import org.apache.isis.viewer.wicket.ui.components.scalars.string.MultiLineStringPanel;
import org.apache.isis.viewer.wicket.ui.components.widgets.cssmenu.CssMenuItemPanel;
import org.apache.isis.viewer.wicket.ui.components.widgets.cssmenu.CssSubMenuItemsPanel;
-import org.apache.isis.viewer.wicket.ui.overlays.Overlays;
-import org.apache.isis.viewer.wicket.ui.pages.PageAbstract;
-import org.apache.isis.viewer.wicket.ui.pages.PageClassList;
import org.apache.isis.viewer.wicket.ui.pages.PageClassRegistry;
import org.apache.isis.viewer.wicket.ui.pages.PageClassRegistryAccessor;
import org.apache.isis.viewer.wicket.ui.panels.PanelUtil;
@@ -512,8 +499,20 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
mountPage("/action/${objectOid}/${actionOwningSpec}/${actionId}/${actionType}", PageType.ACTION_PROMPT);
}
+ protected void mountPage(final String mountPath, final PageType pageType) {
+ final Class<? extends Page> pageClass = this.pageClassRegistry.getPageClass(pageType);
+ mount(new MountedMapper(mountPath, pageClass){
+ @Override
+ protected String getOptionalPlaceholder(String s) {
+ return getPlaceholder(s, '~');
+ }
+ });
+ }
+
+
// //////////////////////////////////////
+
/**
* The validation errors, if any, that occurred on {@link #init() startup}.
*/
@@ -535,17 +534,6 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
LOG.error(msg);
}
- private void mountPage(final String mountPath, final PageType pageType) {
- final Class<? extends Page> pageClass = this.pageClassRegistry.getPageClass(pageType);
- mount(new MountedMapper(mountPath, pageClass){
- @Override
- protected String getOptionalPlaceholder(String s) {
- return getPlaceholder(s, '~');
- }
- });
- }
-
-
/**
* Whether Wicket tags should be stripped from the markup, as specified by configuration settings (otherwise
* depends on the {@link #deploymentType deployment type}.
@@ -558,7 +546,8 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
final boolean strip = configuration.getBoolean(STRIP_WICKET_TAGS_KEY, deploymentType.isProduction());
return strip;
}
-
+
+ // //////////////////////////////////////
@Override
protected void onDestroy() {
@@ -572,6 +561,8 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
}
}
+ // //////////////////////////////////////
+
@Override
public RuntimeConfigurationType getConfigurationType() {
if(determiningDeploymentType) {
[09/12] git commit: ISIS-793: make easier to override filtering of
Javascript contributions
Posted by da...@apache.org.
ISIS-793: make easier to override filtering of Javascript contributions
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/c31e50ff
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/c31e50ff
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/c31e50ff
Branch: refs/heads/master
Commit: c31e50ffb1e8c3bec548c11784bf7996b2cdb418
Parents: 813841a
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon May 26 11:12:56 2014 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Mon May 26 11:12:56 2014 +0100
----------------------------------------------------------------------
.../wicket/viewer/IsisWicketApplication.java | 36 ++++++++++++++------
1 file changed, 25 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/c31e50ff/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
index ae8c427..9d80a4c 100644
--- a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
+++ b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
@@ -239,17 +239,8 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
// must be done after injected componentFactoryRegistry into the app itself
buildCssBundle();
- // filters Javascript header contributions so rendered to bottom of page
- setHeaderResponseDecorator(new IHeaderResponseDecorator()
- {
- @Override
- public IHeaderResponse decorate(IHeaderResponse response)
- {
- // use this header resource decorator to load all JavaScript resources in the page
- // footer (after </body>)
- return new JavaScriptFilteredIntoFooterHeaderResponse(response, "footerJS");
- }
- });
+ filterJavascriptContributions();
+
//
// map entity and action to provide prettier URLs
@@ -492,6 +483,29 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
// //////////////////////////////////////
/**
+ * filters Javascript header contributions so rendered to bottom of page.
+ *
+ * <p>
+ * Factored out for easy (informal) pluggability.
+ * </p>
+ */
+ protected void filterJavascriptContributions() {
+ setHeaderResponseDecorator(new IHeaderResponseDecorator()
+ {
+ @Override
+ public IHeaderResponse decorate(IHeaderResponse response)
+ {
+ // use this header resource decorator to load all JavaScript resources in the page
+ // footer (after </body>)
+ return new JavaScriptFilteredIntoFooterHeaderResponse(response, "footerJS");
+ }
+ });
+ }
+
+
+ // //////////////////////////////////////
+
+ /**
* The validation errors, if any, that occurred on {@link #init() startup}.
*/
public List<String> getValidationErrors() {
[05/12] git commit: ISIS-793: make easier to override the setup of
CSS bundles
Posted by da...@apache.org.
ISIS-793: make easier to override the setup of CSS bundles
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/c3136bf9
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/c3136bf9
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/c3136bf9
Branch: refs/heads/master
Commit: c3136bf92f0a058407664102cac9d88ee368d2c7
Parents: c566cae
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon May 26 11:04:46 2014 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Mon May 26 11:04:46 2014 +0100
----------------------------------------------------------------------
.../wicket/viewer/IsisWicketApplication.java | 106 ++++++++++---------
1 file changed, 56 insertions(+), 50 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/c3136bf9/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
index 537ac22..259a0bd 100644
--- a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
+++ b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
@@ -371,102 +371,108 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
// //////////////////////////////////////
/**
- * The validation errors, if any, that occurred on {@link #init() startup}.
+ * Made protected visibility for easy (informal) pluggability.
*/
- public List<String> getValidationErrors() {
- return validationErrors;
- }
-
- private void logError(String validationError) {
- log(validationError);
- }
-
- private static void logBanner() {
- String msg = "################################################ ISIS METAMODEL VALIDATION ERRORS ################################################################";
- log(msg);
- }
-
- private static void log(String msg) {
- System.err.println(msg);
- LOG.error(msg);
- }
-
- private void mountPage(final String mountPath, final PageType pageType) {
- final Class<? extends Page> pageClass = this.pageClassRegistry.getPageClass(pageType);
- mount(new MountedMapper(mountPath, pageClass){
- @Override
- protected String getOptionalPlaceholder(String s) {
- return getPlaceholder(s, '~');
- }
- });
- }
-
- private void buildCssBundle() {
+ protected void buildCssBundle() {
// get the css for all components built by component factories
final Set<CssResourceReference> references = cssResourceReferencesForAllComponents();
-
+
// some additional special cases.
addSpecialCasesToCssBundle(references);
-
+
// create the bundle
getResourceBundles().addCssBundle(
- IsisWicketApplication.class, "isis-wicket-viewer-bundle.css",
+ IsisWicketApplication.class, "isis-wicket-viewer-bundle.css",
references.toArray(new CssResourceReference[]{}));
}
/**
* Additional special cases to be included in the main CSS bundle.
- *
+ *
* <p>
* These are typically either superclasses or components that don't have their own ComponentFactory, or
* for {@link ComponentFactory}s (such as <tt>StringPanelFactory</tt>) that don't quite follow the usual pattern
* (because they create different types of panels).
- *
+ *
* <p>
- * Note that it doesn't really matter if we miss one or two; their CSS will simply be served up individually.
+ * Note that it doesn't really matter if we miss one or two; their CSS will simply be served up individually.
*/
- private void addSpecialCasesToCssBundle(final Set<CssResourceReference> references) {
+ protected void addSpecialCasesToCssBundle(final Set<CssResourceReference> references) {
// abstract classes
-
- // ... though it turns out we cannot add this particular one to the bundle, because
+
+ // ... though it turns out we cannot add this particular one to the bundle, because
// it has CSS image links intended to be resolved relative to LinksSelectorPanelAbstract.class.
- // Adding them into the bundle would mean these CSS links are resolved relative to IsisWicketApplication.class
+ // Adding them into the bundle would mean these CSS links are resolved relative to IsisWicketApplication.class
// instead.
// references.add(PanelUtil.cssResourceReferenceFor(LinksSelectorPanelAbstract.class));
-
+
// components without factories
references.add(PanelUtil.cssResourceReferenceFor(AdditionalLinksPanel.class));
references.add(PanelUtil.cssResourceReferenceFor(CssSubMenuItemsPanel.class));
references.add(PanelUtil.cssResourceReferenceFor(CssMenuItemPanel.class));
references.add(PanelUtil.cssResourceReferenceFor(EntityPropertiesForm.class));
-
+
// non-conforming component factories
references.add(PanelUtil.cssResourceReferenceFor(MultiLineStringPanel.class));
}
- private final static Function<ComponentFactory, Iterable<CssResourceReference>> getCssResourceReferences =
+ protected final static Function<ComponentFactory, Iterable<CssResourceReference>> getCssResourceReferences =
new Function<ComponentFactory, Iterable<CssResourceReference>>(){
@Override
public Iterable<CssResourceReference> apply(final ComponentFactory input) {
- final CssResourceReference cssResourceReference = input.getCssResourceReference();
- return cssResourceReference != null?
- Collections.singletonList(cssResourceReference):
- Collections.<CssResourceReference>emptyList();
+ final CssResourceReference cssResourceReference = input.getCssResourceReference();
+ return cssResourceReference != null?
+ Collections.singletonList(cssResourceReference):
+ Collections.<CssResourceReference>emptyList();
}
- };
+ };
- private Set<CssResourceReference> cssResourceReferencesForAllComponents() {
+ protected Set<CssResourceReference> cssResourceReferencesForAllComponents() {
Collection<ComponentFactory> componentFactories = getComponentFactoryRegistry().listComponentFactories();
return Sets.newLinkedHashSet(
Iterables.concat(
Iterables.transform(
- componentFactories,
+ componentFactories,
getCssResourceReferences)));
}
+ // //////////////////////////////////////
+
+ /**
+ * The validation errors, if any, that occurred on {@link #init() startup}.
+ */
+ public List<String> getValidationErrors() {
+ return validationErrors;
+ }
+
+ private void logError(String validationError) {
+ log(validationError);
+ }
+
+ private static void logBanner() {
+ String msg = "################################################ ISIS METAMODEL VALIDATION ERRORS ################################################################";
+ log(msg);
+ }
+
+ private static void log(String msg) {
+ System.err.println(msg);
+ LOG.error(msg);
+ }
+
+ private void mountPage(final String mountPath, final PageType pageType) {
+ final Class<? extends Page> pageClass = this.pageClassRegistry.getPageClass(pageType);
+ mount(new MountedMapper(mountPath, pageClass){
+ @Override
+ protected String getOptionalPlaceholder(String s) {
+ return getPlaceholder(s, '~');
+ }
+ });
+ }
+
+
/**
* Whether Wicket tags should be stripped from the markup, as specified by configuration settings (otherwise
* depends on the {@link #deploymentType deployment type}.
[12/12] git commit: ISIS-793: make easier to override handling of
runtime (metamodel) exceptions
Posted by da...@apache.org.
ISIS-793: make easier to override handling of runtime (metamodel) exceptions
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/5e3751a6
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/5e3751a6
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/5e3751a6
Branch: refs/heads/master
Commit: 5e3751a672b7a63daacaa18d28af6cd599420fec
Parents: 16b195e
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon May 26 11:20:38 2014 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Mon May 26 11:20:38 2014 +0100
----------------------------------------------------------------------
.../wicket/viewer/IsisWicketApplication.java | 30 +++++++-------------
1 file changed, 11 insertions(+), 19 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/5e3751a6/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
index 0cf689f..d0390dc 100644
--- a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
+++ b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
@@ -19,10 +19,11 @@
package org.apache.isis.viewer.wicket.viewer;
-import java.util.*;
+import de.agilecoders.wicket.webjars.WicketWebjars;
+import de.agilecoders.wicket.webjars.settings.WebjarsSettings;
+import java.util.*;
import javax.servlet.ServletContext;
-
import com.google.common.base.Function;
import com.google.common.base.Throwables;
import com.google.common.collect.Iterables;
@@ -32,16 +33,7 @@ import com.google.inject.Guice;
import com.google.inject.Inject;
import com.google.inject.Injector;
import com.google.inject.Module;
-
-import de.agilecoders.wicket.webjars.WicketWebjars;
-import de.agilecoders.wicket.webjars.settings.WebjarsSettings;
-
-import org.apache.wicket.Application;
-import org.apache.wicket.ConverterLocator;
-import org.apache.wicket.IConverterLocator;
-import org.apache.wicket.Page;
-import org.apache.wicket.RuntimeConfigurationType;
-import org.apache.wicket.SharedResources;
+import org.apache.wicket.*;
import org.apache.wicket.authroles.authentication.AuthenticatedWebApplication;
import org.apache.wicket.authroles.authentication.AuthenticatedWebSession;
import org.apache.wicket.core.request.mapper.MountedMapper;
@@ -55,7 +47,6 @@ import org.apache.wicket.request.resource.CssResourceReference;
import org.apache.wicket.settings.IRequestCycleSettings.RenderStrategy;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-
import org.apache.isis.core.commons.authentication.AuthenticationSession;
import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
import org.apache.isis.core.commons.authentication.AuthenticationSessionProviderAware;
@@ -234,8 +225,7 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
SharedResources sharedResources = getSharedResources();
} catch(RuntimeException ex) {
- List<MetaModelInvalidException> mmies = Lists.newArrayList(
- Iterables.filter(Throwables.getCausalChain(ex), MetaModelInvalidException.class));
+ List<MetaModelInvalidException> mmies = locateMetaModelInvalidExceptions(ex);
if(!mmies.isEmpty()) {
final MetaModelInvalidException mmie = mmies.get(0);
log("");
@@ -512,6 +502,10 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
// //////////////////////////////////////
+ protected List<MetaModelInvalidException> locateMetaModelInvalidExceptions(RuntimeException ex) {
+ return Lists.newArrayList(
+ Iterables.filter(Throwables.getCausalChain(ex), MetaModelInvalidException.class));
+ }
/**
* The validation errors, if any, that occurred on {@link #init() startup}.
@@ -534,6 +528,8 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
LOG.error(msg);
}
+ // //////////////////////////////////////
+
/**
* Whether Wicket tags should be stripped from the markup, as specified by configuration settings (otherwise
* depends on the {@link #deploymentType deployment type}.
@@ -618,10 +614,6 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
// Component Factories
// /////////////////////////////////////////////////
- /**
- * The {@link ComponentFactoryRegistry} created in
- * {@link #newComponentFactoryRegistry()}.
- */
@Override
public final ComponentFactoryRegistry getComponentFactoryRegistry() {
return componentFactoryRegistry;
[03/12] git commit: ISIS-793: make registration of
WebRequestCycleForIsis easier to override.
Posted by da...@apache.org.
ISIS-793: make registration of WebRequestCycleForIsis easier to override.
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/ce09b83e
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/ce09b83e
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/ce09b83e
Branch: refs/heads/master
Commit: ce09b83e12012a7ace3c5f7be5bbc1ff6adf54a5
Parents: d0db510
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon May 26 11:00:14 2014 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Mon May 26 11:00:14 2014 +0100
----------------------------------------------------------------------
.../viewer/wicket/viewer/IsisWicketApplication.java | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/ce09b83e/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
index 85986e5..50f5110 100644
--- a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
+++ b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
@@ -58,6 +58,7 @@ import org.apache.wicket.markup.html.IHeaderResponseDecorator;
import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.request.Request;
import org.apache.wicket.request.Response;
+import org.apache.wicket.request.cycle.IRequestCycleListener;
import org.apache.wicket.request.cycle.RequestCycle;
import org.apache.wicket.request.resource.CssResourceReference;
import org.apache.wicket.settings.IRequestCycleSettings.RenderStrategy;
@@ -218,7 +219,7 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
getRequestCycleSettings().setRenderStrategy(RenderStrategy.REDIRECT_TO_RENDER);
- getRequestCycleListeners().add(new WebRequestCycleForIsis());
+ getRequestCycleListeners().add(newWebRequestCycleForIsis());
getResourceSettings().setParentFolderPlaceholder("$up$");
@@ -318,6 +319,15 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
loggingConfigurer.configureLogging(loggingPropertiesDir, new String[0]);
}
+ // //////////////////////////////////////
+
+ /**
+ * Factored out for easy (informal) pluggability.
+ */
+ protected IRequestCycleListener newWebRequestCycleForIsis() {
+ return new WebRequestCycleForIsis();
+ }
+
// //////////////////////////////////////
[10/12] git commit: ISIS-793: make easier to override mapping of page
URLs
Posted by da...@apache.org.
ISIS-793: make easier to override mapping of page URLs
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/a6f2e576
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/a6f2e576
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/a6f2e576
Branch: refs/heads/master
Commit: a6f2e5760d4cd028ad42d7449ee5df7573959098
Parents: c31e50f
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon May 26 11:14:54 2014 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Mon May 26 11:14:54 2014 +0100
----------------------------------------------------------------------
.../wicket/viewer/IsisWicketApplication.java | 27 +++++++++++++-------
1 file changed, 18 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/a6f2e576/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
index 9d80a4c..0419078 100644
--- a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
+++ b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
@@ -241,16 +241,8 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
filterJavascriptContributions();
+ mountPages();
- //
- // map entity and action to provide prettier URLs
- //
- // nb: action mount cannot contain {actionArgs}, because the default
- // parameters encoder doesn't seem to be able to handle multiple args
- //
- mountPage("/entity/${objectOid}", PageType.ENTITY);
- mountPage("/action/${objectOid}/${actionOwningSpec}/${actionId}/${actionType}", PageType.ACTION_PROMPT);
-
@SuppressWarnings("unused")
SharedResources sharedResources = getSharedResources();
@@ -502,6 +494,23 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
});
}
+ // //////////////////////////////////////
+
+ /**
+ * Map entity and action to provide prettier URLs.
+ *
+ * <p>
+ * Factored out for easy (informal) pluggability.
+ * </p>
+ */
+ protected void mountPages() {
+
+ mountPage("/entity/${objectOid}", PageType.ENTITY);
+
+ // nb: action mount cannot contain {actionArgs}, because the default
+ // parameters encoder doesn't seem to be able to handle multiple args
+ mountPage("/action/${objectOid}/${actionOwningSpec}/${actionId}/${actionType}", PageType.ACTION_PROMPT);
+ }
// //////////////////////////////////////
[04/12] git commit: ISIS-793: make determination of DeploymentType
easier to override.
Posted by da...@apache.org.
ISIS-793: make determination of DeploymentType easier to override.
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/c566cae3
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/c566cae3
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/c566cae3
Branch: refs/heads/master
Commit: c566cae378444b6c56a0dcfc73ebcbe6a7672297
Parents: ce09b83
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon May 26 11:02:26 2014 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Mon May 26 11:02:26 2014 +0100
----------------------------------------------------------------------
.../wicket/viewer/IsisWicketApplication.java | 71 +++++++++++---------
1 file changed, 39 insertions(+), 32 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/c566cae3/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
index 50f5110..537ac22 100644
--- a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
+++ b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
@@ -328,6 +328,45 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
return new WebRequestCycleForIsis();
}
+ // //////////////////////////////////////
+
+ /**
+ * Made protected visibility for easy (informal) pluggability.
+ */
+ protected void determineDeploymentTypeIfRequired() {
+ if(deploymentType != null) {
+ return;
+ }
+
+ determiningDeploymentType = true;
+ try {
+ final IsisConfigurationBuilder isisConfigurationBuilder = createConfigBuilder();
+ final IsisConfiguration configuration = isisConfigurationBuilder.getConfiguration();
+ String deploymentTypeFromConfig = configuration.getString("isis.deploymentType");
+ deploymentType = determineDeploymentType(deploymentTypeFromConfig);
+ } finally {
+ determiningDeploymentType = false;
+ }
+ }
+
+ /**
+ * Made protected visibility for easy (informal) pluggability.
+ */
+ protected DeploymentTypeWicketAbstract determineDeploymentType(String deploymentTypeFromConfig) {
+ final DeploymentTypeWicketAbstract prototype = new WicketServerPrototype();
+ final DeploymentTypeWicketAbstract deployment = new WicketServer();
+
+ if(deploymentTypeFromConfig != null) {
+ final DeploymentType deploymentType = DeploymentType.lookup(deploymentTypeFromConfig);
+ return !deploymentType.getDeploymentCategory().isProduction()
+ ? prototype
+ : deployment;
+ } else {
+ return usesDevelopmentConfig()
+ ? prototype
+ : deployment;
+ }
+ }
// //////////////////////////////////////
@@ -428,22 +467,6 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
}
- private void determineDeploymentTypeIfRequired() {
- if(deploymentType != null) {
- return;
- }
-
- determiningDeploymentType = true;
- try {
- final IsisConfigurationBuilder isisConfigurationBuilder = createConfigBuilder();
- final IsisConfiguration configuration = isisConfigurationBuilder.getConfiguration();
- String deploymentTypeFromConfig = configuration.getString("isis.deploymentType");
- deploymentType = determineDeploymentType(deploymentTypeFromConfig);
- } finally {
- determiningDeploymentType = false;
- }
- }
-
/**
* Whether Wicket tags should be stripped from the markup, as specified by configuration settings (otherwise
* depends on the {@link #deploymentType deployment type}.
@@ -485,22 +508,6 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
return new IsisInjectModule(deploymentType, isisConfigurationBuilder);
}
- private DeploymentTypeWicketAbstract determineDeploymentType(String deploymentTypeFromConfig) {
- final DeploymentTypeWicketAbstract prototype = new WicketServerPrototype();
- final DeploymentTypeWicketAbstract deployment = new WicketServer();
-
- if(deploymentTypeFromConfig != null) {
- final DeploymentType deploymentType = DeploymentType.lookup(deploymentTypeFromConfig);
- return !deploymentType.getDeploymentCategory().isProduction()
- ? prototype
- : deployment;
- } else {
- return usesDevelopmentConfig()
- ? prototype
- : deployment;
- }
- }
-
private IsisConfigurationBuilder createConfigBuilder() {
return createConfigBuilder(getServletContext());
}
[02/12] git commit: ISIS-793: make configuration of
logging.properties easier to override.
Posted by da...@apache.org.
ISIS-793: make configuration of logging.properties easier to override.
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/d0db510f
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/d0db510f
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/d0db510f
Branch: refs/heads/master
Commit: d0db510ff698d65309496e619b49216e5c314fe3
Parents: d887d84
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon May 26 10:57:40 2014 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Mon May 26 10:57:40 2014 +0100
----------------------------------------------------------------------
.../wicket/viewer/IsisWicketApplication.java | 26 ++++++++++++++------
1 file changed, 18 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/d0db510f/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
index bddf816..85986e5 100644
--- a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
+++ b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
@@ -212,16 +212,9 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
configureWebJars();
-
String isisConfigDir = getServletContext().getInitParameter("isis.config.dir");
- final String loggingPropertiesDir;
- if(isisConfigDir != null) {
- loggingPropertiesDir = isisConfigDir;
- } else {
- loggingPropertiesDir = getServletContext().getRealPath("/WEB-INF");
- }
- loggingConfigurer.configureLogging(loggingPropertiesDir, new String[0]);
+ configureLogging(isisConfigDir);
getRequestCycleSettings().setRenderStrategy(RenderStrategy.REDIRECT_TO_RENDER);
@@ -312,6 +305,23 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
// //////////////////////////////////////
/**
+ * Factored out for easy (informal) pluggability.
+ */
+ protected void configureLogging(String isisConfigDir) {
+ final String loggingPropertiesDir;
+ if(isisConfigDir != null) {
+ loggingPropertiesDir = isisConfigDir;
+ } else {
+ loggingPropertiesDir = getServletContext().getRealPath("/WEB-INF");
+ }
+
+ loggingConfigurer.configureLogging(loggingPropertiesDir, new String[0]);
+ }
+
+
+ // //////////////////////////////////////
+
+ /**
* The validation errors, if any, that occurred on {@link #init() startup}.
*/
public List<String> getValidationErrors() {
[06/12] git commit: ISIS-793: just moving methods around in
IsisWicketApplication (for config builder)
Posted by da...@apache.org.
ISIS-793: just moving methods around in IsisWicketApplication (for config builder)
... already protected visibility so can be overridden if required.
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/fe64d09c
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/fe64d09c
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/fe64d09c
Branch: refs/heads/master
Commit: fe64d09c1623afee37e830995442222ede523609
Parents: c3136bf
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon May 26 11:06:26 2014 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Mon May 26 11:06:26 2014 +0100
----------------------------------------------------------------------
.../wicket/viewer/IsisWicketApplication.java | 79 ++++++++++----------
1 file changed, 41 insertions(+), 38 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/fe64d09c/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
index 259a0bd..b2a9f37 100644
--- a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
+++ b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
@@ -438,6 +438,47 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
getCssResourceReferences)));
}
+ // //////////////////////////////////////
+
+ private IsisConfigurationBuilder createConfigBuilder() {
+ return createConfigBuilder(getServletContext());
+ }
+
+ protected IsisConfigurationBuilder createConfigBuilder(final ServletContext servletContext) {
+
+ final String configLocation = servletContext.getInitParameter(WebAppConstants.CONFIG_DIR_PARAM);
+ final ResourceStreamSourceForWebInf rssWebInf = new ResourceStreamSourceForWebInf(servletContext);
+ final ResourceStreamSourceContextLoaderClassPath rssContextLoaderClassPath = ResourceStreamSourceContextLoaderClassPath.create();
+ final ResourceStreamSourceCurrentClassClassPath rssCurrentClassPath = new ResourceStreamSourceCurrentClassClassPath();
+ final ResourceStreamSourceComposite compositeSource = new ResourceStreamSourceComposite(rssWebInf, rssContextLoaderClassPath, rssCurrentClassPath);
+
+ if ( configLocation != null ) {
+ LOG.info( "Config override location: " + configLocation );
+ compositeSource.addResourceStreamSource(ResourceStreamSourceFileSystem.create(configLocation));
+ } else {
+ LOG.info( "Config override location: No override location configured!" );
+ }
+
+ final IsisConfigurationBuilder configurationBuilder = new IsisConfigurationBuilderResourceStreams(compositeSource);
+
+ primeConfigurationBuilder(configurationBuilder, servletContext);
+ configurationBuilder.addDefaultConfigurationResources();
+
+ IsisWebAppBootstrapperUtil.addConfigurationResourcesForViewers(configurationBuilder, servletContext);
+ return configurationBuilder;
+ }
+
+ @SuppressWarnings("unchecked")
+ private static void primeConfigurationBuilder(final IsisConfigurationBuilder isisConfigurationBuilder, final ServletContext servletContext) {
+ final List<IsisConfigurationBuilderPrimer> isisConfigurationBuilderPrimers = (List<IsisConfigurationBuilderPrimer>) servletContext.getAttribute(WebAppConstants.CONFIGURATION_PRIMERS_KEY);
+ if (isisConfigurationBuilderPrimers == null) {
+ return;
+ }
+ for (final IsisConfigurationBuilderPrimer isisConfigurationBuilderPrimer : isisConfigurationBuilderPrimers) {
+ isisConfigurationBuilderPrimer.primeConfigurationBuilder(isisConfigurationBuilder);
+ }
+ }
+
// //////////////////////////////////////
@@ -514,44 +555,6 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
return new IsisInjectModule(deploymentType, isisConfigurationBuilder);
}
- private IsisConfigurationBuilder createConfigBuilder() {
- return createConfigBuilder(getServletContext());
- }
-
- protected IsisConfigurationBuilder createConfigBuilder(final ServletContext servletContext) {
-
- final String configLocation = servletContext.getInitParameter(WebAppConstants.CONFIG_DIR_PARAM);
- final ResourceStreamSourceForWebInf rssWebInf = new ResourceStreamSourceForWebInf(servletContext);
- final ResourceStreamSourceContextLoaderClassPath rssContextLoaderClassPath = ResourceStreamSourceContextLoaderClassPath.create();
- final ResourceStreamSourceCurrentClassClassPath rssCurrentClassPath = new ResourceStreamSourceCurrentClassClassPath();
- final ResourceStreamSourceComposite compositeSource = new ResourceStreamSourceComposite(rssWebInf, rssContextLoaderClassPath, rssCurrentClassPath);
-
- if ( configLocation != null ) {
- LOG.info( "Config override location: " + configLocation );
- compositeSource.addResourceStreamSource(ResourceStreamSourceFileSystem.create(configLocation));
- } else {
- LOG.info( "Config override location: No override location configured!" );
- }
-
- final IsisConfigurationBuilder configurationBuilder = new IsisConfigurationBuilderResourceStreams(compositeSource);
-
- primeConfigurationBuilder(configurationBuilder, servletContext);
- configurationBuilder.addDefaultConfigurationResources();
-
- IsisWebAppBootstrapperUtil.addConfigurationResourcesForViewers(configurationBuilder, servletContext);
- return configurationBuilder;
- }
-
- @SuppressWarnings("unchecked")
- private static void primeConfigurationBuilder(final IsisConfigurationBuilder isisConfigurationBuilder, final ServletContext servletContext) {
- final List<IsisConfigurationBuilderPrimer> isisConfigurationBuilderPrimers = (List<IsisConfigurationBuilderPrimer>) servletContext.getAttribute(WebAppConstants.CONFIGURATION_PRIMERS_KEY);
- if (isisConfigurationBuilderPrimers == null) {
- return;
- }
- for (final IsisConfigurationBuilderPrimer isisConfigurationBuilderPrimer : isisConfigurationBuilderPrimers) {
- isisConfigurationBuilderPrimer.primeConfigurationBuilder(isisConfigurationBuilder);
- }
- }
protected void initWicketComponentInjection(final Injector injector) {
getComponentInstantiationListeners().add(new GuiceComponentInjector(this, injector, false));
[08/12] git commit: ISIS-793: just moving methods around in
IsisWicketApplication (CSS bundle)
Posted by da...@apache.org.
ISIS-793: just moving methods around in IsisWicketApplication (CSS bundle)
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/813841a8
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/813841a8
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/813841a8
Branch: refs/heads/master
Commit: 813841a8e12a53d6c43ec08a0f3e63399a8c3ddc
Parents: a14d2d2
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon May 26 11:10:53 2014 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Mon May 26 11:10:53 2014 +0100
----------------------------------------------------------------------
.../wicket/viewer/IsisWicketApplication.java | 104 ++++++++++---------
1 file changed, 53 insertions(+), 51 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/813841a8/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
index 3ff19bc..ae8c427 100644
--- a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
+++ b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
@@ -368,6 +368,57 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
}
}
+
+ // //////////////////////////////////////
+
+ private IsisConfigurationBuilder createConfigBuilder() {
+ return createConfigBuilder(getServletContext());
+ }
+
+ protected IsisConfigurationBuilder createConfigBuilder(final ServletContext servletContext) {
+
+ final String configLocation = servletContext.getInitParameter(WebAppConstants.CONFIG_DIR_PARAM);
+ final ResourceStreamSourceForWebInf rssWebInf = new ResourceStreamSourceForWebInf(servletContext);
+ final ResourceStreamSourceContextLoaderClassPath rssContextLoaderClassPath = ResourceStreamSourceContextLoaderClassPath.create();
+ final ResourceStreamSourceCurrentClassClassPath rssCurrentClassPath = new ResourceStreamSourceCurrentClassClassPath();
+ final ResourceStreamSourceComposite compositeSource = new ResourceStreamSourceComposite(rssWebInf, rssContextLoaderClassPath, rssCurrentClassPath);
+
+ if ( configLocation != null ) {
+ LOG.info( "Config override location: " + configLocation );
+ compositeSource.addResourceStreamSource(ResourceStreamSourceFileSystem.create(configLocation));
+ } else {
+ LOG.info( "Config override location: No override location configured!" );
+ }
+
+ final IsisConfigurationBuilder configurationBuilder = new IsisConfigurationBuilderResourceStreams(compositeSource);
+
+ primeConfigurationBuilder(configurationBuilder, servletContext);
+ configurationBuilder.addDefaultConfigurationResources();
+
+ IsisWebAppBootstrapperUtil.addConfigurationResourcesForViewers(configurationBuilder, servletContext);
+ return configurationBuilder;
+ }
+
+ @SuppressWarnings("unchecked")
+ private static void primeConfigurationBuilder(final IsisConfigurationBuilder isisConfigurationBuilder, final ServletContext servletContext) {
+ final List<IsisConfigurationBuilderPrimer> isisConfigurationBuilderPrimers = (List<IsisConfigurationBuilderPrimer>) servletContext.getAttribute(WebAppConstants.CONFIGURATION_PRIMERS_KEY);
+ if (isisConfigurationBuilderPrimers == null) {
+ return;
+ }
+ for (final IsisConfigurationBuilderPrimer isisConfigurationBuilderPrimer : isisConfigurationBuilderPrimers) {
+ isisConfigurationBuilderPrimer.primeConfigurationBuilder(isisConfigurationBuilder);
+ }
+ }
+
+ // //////////////////////////////////////
+
+ /**
+ * Override if required
+ */
+ protected Module newIsisWicketModule() {
+ return new IsisWicketModule();
+ }
+
// //////////////////////////////////////
/**
@@ -440,57 +491,6 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
// //////////////////////////////////////
- private IsisConfigurationBuilder createConfigBuilder() {
- return createConfigBuilder(getServletContext());
- }
-
- protected IsisConfigurationBuilder createConfigBuilder(final ServletContext servletContext) {
-
- final String configLocation = servletContext.getInitParameter(WebAppConstants.CONFIG_DIR_PARAM);
- final ResourceStreamSourceForWebInf rssWebInf = new ResourceStreamSourceForWebInf(servletContext);
- final ResourceStreamSourceContextLoaderClassPath rssContextLoaderClassPath = ResourceStreamSourceContextLoaderClassPath.create();
- final ResourceStreamSourceCurrentClassClassPath rssCurrentClassPath = new ResourceStreamSourceCurrentClassClassPath();
- final ResourceStreamSourceComposite compositeSource = new ResourceStreamSourceComposite(rssWebInf, rssContextLoaderClassPath, rssCurrentClassPath);
-
- if ( configLocation != null ) {
- LOG.info( "Config override location: " + configLocation );
- compositeSource.addResourceStreamSource(ResourceStreamSourceFileSystem.create(configLocation));
- } else {
- LOG.info( "Config override location: No override location configured!" );
- }
-
- final IsisConfigurationBuilder configurationBuilder = new IsisConfigurationBuilderResourceStreams(compositeSource);
-
- primeConfigurationBuilder(configurationBuilder, servletContext);
- configurationBuilder.addDefaultConfigurationResources();
-
- IsisWebAppBootstrapperUtil.addConfigurationResourcesForViewers(configurationBuilder, servletContext);
- return configurationBuilder;
- }
-
- @SuppressWarnings("unchecked")
- private static void primeConfigurationBuilder(final IsisConfigurationBuilder isisConfigurationBuilder, final ServletContext servletContext) {
- final List<IsisConfigurationBuilderPrimer> isisConfigurationBuilderPrimers = (List<IsisConfigurationBuilderPrimer>) servletContext.getAttribute(WebAppConstants.CONFIGURATION_PRIMERS_KEY);
- if (isisConfigurationBuilderPrimers == null) {
- return;
- }
- for (final IsisConfigurationBuilderPrimer isisConfigurationBuilderPrimer : isisConfigurationBuilderPrimers) {
- isisConfigurationBuilderPrimer.primeConfigurationBuilder(isisConfigurationBuilder);
- }
- }
-
- // //////////////////////////////////////
-
- /**
- * Override if required
- */
- protected Module newIsisWicketModule() {
- return new IsisWicketModule();
- }
-
-
- // //////////////////////////////////////
-
/**
* The validation errors, if any, that occurred on {@link #init() startup}.
*/
@@ -564,6 +564,8 @@ public class IsisWicketApplication extends AuthenticatedWebApplication implement
return new IsisInjectModule(deploymentType, isisConfigurationBuilder);
}
+ // //////////////////////////////////////
+
protected void initWicketComponentInjection(final Injector injector) {
getComponentInstantiationListeners().add(new GuiceComponentInjector(this, injector, false));