You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@deltaspike.apache.org by ta...@apache.org on 2015/11/25 22:05:34 UTC
deltaspike git commit: DELTASPIKE-1029 refactored
Repository: deltaspike
Updated Branches:
refs/heads/master 70165b048 -> d778adaef
DELTASPIKE-1029 refactored
Project: http://git-wip-us.apache.org/repos/asf/deltaspike/repo
Commit: http://git-wip-us.apache.org/repos/asf/deltaspike/commit/d778adae
Tree: http://git-wip-us.apache.org/repos/asf/deltaspike/tree/d778adae
Diff: http://git-wip-us.apache.org/repos/asf/deltaspike/diff/d778adae
Branch: refs/heads/master
Commit: d778adaef916f5185fa63dcaad89576cc639e79a
Parents: 70165b0
Author: Thomas Andraschko <ta...@apache.org>
Authored: Wed Nov 25 22:05:21 2015 +0100
Committer: Thomas Andraschko <ta...@apache.org>
Committed: Wed Nov 25 22:05:21 2015 +0100
----------------------------------------------------------------------
.../DeltaSpikeExternalContextWrapper.java | 7 +-
.../request/DeltaSpikeFacesContextWrapper.java | 9 ---
.../DeltaSpikePartialResponseWriter.java | 71 --------------------
.../DeltaSpikePartialViewContext.java | 53 ---------------
.../strategy/AbstractClientWindowStrategy.java | 7 +-
.../strategy/ClientSideWindowStrategy.java | 9 +--
6 files changed, 13 insertions(+), 143 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/deltaspike/blob/d778adae/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/listener/request/DeltaSpikeExternalContextWrapper.java
----------------------------------------------------------------------
diff --git a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/listener/request/DeltaSpikeExternalContextWrapper.java b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/listener/request/DeltaSpikeExternalContextWrapper.java
index 6b741e8..a5dccc5 100644
--- a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/listener/request/DeltaSpikeExternalContextWrapper.java
+++ b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/listener/request/DeltaSpikeExternalContextWrapper.java
@@ -51,9 +51,12 @@ public class DeltaSpikeExternalContextWrapper extends ExternalContextWrapper imp
JsfUtils.saveFacesMessages(this.wrapped);
}
- String targetURL = ClientWindowHelper.appendWindowId(facesContext, url, this.clientWindow);
+ if (clientWindow != null)
+ {
+ url = clientWindow.interceptRedirect(facesContext, url);
+ }
- this.wrapped.redirect(targetURL);
+ this.wrapped.redirect(url);
}
@Override
http://git-wip-us.apache.org/repos/asf/deltaspike/blob/d778adae/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/listener/request/DeltaSpikeFacesContextWrapper.java
----------------------------------------------------------------------
diff --git a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/listener/request/DeltaSpikeFacesContextWrapper.java b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/listener/request/DeltaSpikeFacesContextWrapper.java
index e2301cc..18578ab 100644
--- a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/listener/request/DeltaSpikeFacesContextWrapper.java
+++ b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/listener/request/DeltaSpikeFacesContextWrapper.java
@@ -38,10 +38,8 @@ import javax.faces.context.FacesContextWrapper;
import java.util.List;
import java.util.Map;
import java.util.concurrent.CopyOnWriteArrayList;
-import javax.faces.context.PartialViewContext;
import org.apache.deltaspike.core.util.metadata.AnnotationInstanceProvider;
import org.apache.deltaspike.jsf.impl.exception.control.BridgeExceptionHandlerWrapper;
-import org.apache.deltaspike.jsf.impl.navigation.DeltaSpikePartialViewContext;
import org.apache.deltaspike.jsf.impl.navigation.NavigationHandlerAwareApplication;
import org.apache.deltaspike.jsf.impl.security.SecurityAwareViewHandler;
@@ -100,13 +98,6 @@ class DeltaSpikeFacesContextWrapper extends FacesContextWrapper
wrappedFacesContext.release();
}
-
- @Override
- public PartialViewContext getPartialViewContext()
- {
- PartialViewContext partialViewContext = getWrapped().getPartialViewContext();
- return new DeltaSpikePartialViewContext(partialViewContext);
- }
@Override
public ExceptionHandler getExceptionHandler()
http://git-wip-us.apache.org/repos/asf/deltaspike/blob/d778adae/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/navigation/DeltaSpikePartialResponseWriter.java
----------------------------------------------------------------------
diff --git a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/navigation/DeltaSpikePartialResponseWriter.java b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/navigation/DeltaSpikePartialResponseWriter.java
deleted file mode 100644
index 0c2e27c..0000000
--- a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/navigation/DeltaSpikePartialResponseWriter.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.deltaspike.jsf.impl.navigation;
-
-import java.io.IOException;
-import javax.faces.context.FacesContext;
-import javax.faces.context.PartialResponseWriter;
-import org.apache.deltaspike.core.api.provider.BeanProvider;
-import org.apache.deltaspike.jsf.spi.scope.window.ClientWindow;
-
-public class DeltaSpikePartialResponseWriter extends PartialResponseWriter
-{
- private ClientWindow clientWindow;
-
- private volatile Boolean initialized;
-
- public DeltaSpikePartialResponseWriter(PartialResponseWriter wrapped)
- {
- super(wrapped);
- }
-
- @Override
- public void redirect(String url) throws IOException
- {
- lazyInit();
-
- if (clientWindow == null)
- {
- super.redirect(url);
- }
- else
- {
- super.redirect(clientWindow.interceptRedirect(FacesContext.getCurrentInstance(), url));
- }
- }
-
- private void lazyInit()
- {
- if (this.initialized == null)
- {
- init();
- }
- }
-
- private synchronized void init()
- {
- // switch into paranoia mode
- if (this.initialized == null)
- {
- clientWindow = BeanProvider.getContextualReference(ClientWindow.class, true);
-
- this.initialized = true;
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/deltaspike/blob/d778adae/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/navigation/DeltaSpikePartialViewContext.java
----------------------------------------------------------------------
diff --git a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/navigation/DeltaSpikePartialViewContext.java b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/navigation/DeltaSpikePartialViewContext.java
deleted file mode 100644
index 8fc04aa..0000000
--- a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/navigation/DeltaSpikePartialViewContext.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.deltaspike.jsf.impl.navigation;
-
-import javax.faces.context.PartialResponseWriter;
-import javax.faces.context.PartialViewContext;
-import javax.faces.context.PartialViewContextWrapper;
-
-public class DeltaSpikePartialViewContext extends PartialViewContextWrapper
-{
- private final PartialViewContext wrapped;
- private PartialResponseWriter writer = null;
-
- public DeltaSpikePartialViewContext(PartialViewContext wrapped)
- {
- this.wrapped = wrapped;
- }
-
- @Override
- public PartialResponseWriter getPartialResponseWriter()
- {
- if (writer == null)
- {
- PartialResponseWriter parentWriter = getWrapped().getPartialResponseWriter();
- writer = new DeltaSpikePartialResponseWriter(parentWriter);
- }
-
- return writer;
- }
-
-
- @Override
- public PartialViewContext getWrapped()
- {
- return this.wrapped;
- }
-}
http://git-wip-us.apache.org/repos/asf/deltaspike/blob/d778adae/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/scope/window/strategy/AbstractClientWindowStrategy.java
----------------------------------------------------------------------
diff --git a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/scope/window/strategy/AbstractClientWindowStrategy.java b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/scope/window/strategy/AbstractClientWindowStrategy.java
index 97aca91..111f85b 100644
--- a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/scope/window/strategy/AbstractClientWindowStrategy.java
+++ b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/scope/window/strategy/AbstractClientWindowStrategy.java
@@ -104,6 +104,11 @@ public abstract class AbstractClientWindowStrategy implements ClientWindow
return "" + (new Random()).nextInt() % 10000;
}
+ protected String generateNewRequestToken()
+ {
+ return "" + ((int) Math.floor(Math.random() * 999));
+ }
+
protected boolean isPost(FacesContext facesContext)
{
if (facesContext.isPostback())
@@ -214,6 +219,6 @@ public abstract class AbstractClientWindowStrategy implements ClientWindow
@Override
public String interceptRedirect(FacesContext facesContext, String url)
{
- return url;
+ return ClientWindowHelper.appendWindowId(facesContext, url, this);
}
}
http://git-wip-us.apache.org/repos/asf/deltaspike/blob/d778adae/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/scope/window/strategy/ClientSideWindowStrategy.java
----------------------------------------------------------------------
diff --git a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/scope/window/strategy/ClientSideWindowStrategy.java b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/scope/window/strategy/ClientSideWindowStrategy.java
index 3b48e2a..1ca586b 100644
--- a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/scope/window/strategy/ClientSideWindowStrategy.java
+++ b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/scope/window/strategy/ClientSideWindowStrategy.java
@@ -196,13 +196,13 @@ public class ClientSideWindowStrategy extends AbstractClientWindowStrategy
return "";
}
-
+
@Override
public String interceptRedirect(FacesContext facesContext, String url)
{
if (facesContext.getPartialViewContext().isAjaxRequest())
{
- String requestToken = newRequestToken();
+ String requestToken = generateNewRequestToken();
String windowId = getWindowId(facesContext);
ClientWindowHelper.addRequestWindowIdCookie(facesContext,
@@ -225,9 +225,4 @@ public class ClientSideWindowStrategy extends AbstractClientWindowStrategy
return url;
}
-
- protected String newRequestToken()
- {
- return "" + ((int) Math.floor(Math.random() * 999));
- }
}