Author: nbelaevski
Date: 2008-07-24 12:25:11 -0400 (Thu, 24 Jul 2008)
New Revision: 9772
Added:
trunk/framework/impl/src/main/java/org/ajax4jsf/resource/URIInternetResource.java
Modified:
trunk/framework/impl/src/main/java/org/ajax4jsf/context/RenderPhaseViewResourcesVisitor.java
trunk/framework/impl/src/main/java/org/ajax4jsf/renderkit/HeaderResourcesRendererBase.java
trunk/framework/impl/src/main/java/org/ajax4jsf/resource/ResourceBuilderImpl.java
Log:
https://jira.jboss.org/jira/browse/RF-3687
Modified:
trunk/framework/impl/src/main/java/org/ajax4jsf/context/RenderPhaseViewResourcesVisitor.java
===================================================================
---
trunk/framework/impl/src/main/java/org/ajax4jsf/context/RenderPhaseViewResourcesVisitor.java 2008-07-24
16:25:03 UTC (rev 9771)
+++
trunk/framework/impl/src/main/java/org/ajax4jsf/context/RenderPhaseViewResourcesVisitor.java 2008-07-24
16:25:11 UTC (rev 9772)
@@ -32,10 +32,10 @@
import org.ajax4jsf.renderkit.UserResourceRenderer2;
import org.ajax4jsf.renderkit.RendererUtils.HTML;
import org.ajax4jsf.resource.InternetResource;
-import org.ajax4jsf.resource.InternetResourceBase;
import org.ajax4jsf.resource.InternetResourceBuilder;
import org.ajax4jsf.resource.ResourceNotFoundException;
import org.ajax4jsf.resource.ResourceRenderer;
+import org.ajax4jsf.resource.URIInternetResource;
import org.ajax4jsf.util.ELUtils;
import org.ajax4jsf.webapp.BaseFilter;
import org.apache.commons.logging.Log;
@@ -151,27 +151,11 @@
private HeadResponseWriter user;
private InternetResourceBuilder resourceBuilder;
- private ResourceRenderer scriptRenderer;
- private ResourceRenderer styleRenderer;
private boolean useSkinning;
private boolean ajaxRequest;
private Skin skin;
- protected ResourceRenderer getScriptRenderer() {
- if (scriptRenderer == null) {
- scriptRenderer = resourceBuilder.getRenderer(".js");
- }
- return scriptRenderer;
- }
-
- protected ResourceRenderer getStyleRenderer() {
- if (styleRenderer == null) {
- styleRenderer = resourceBuilder.getRenderer(".css");
- }
- return styleRenderer;
- }
-
protected HeadResponseWriter getComponentWriter() {
return component;
}
@@ -403,25 +387,10 @@
return result;
}
- public static final class InternetResourceImpl extends InternetResourceBase {
- public String getUri() {
- return getKey();
- }
-
- public void setUri(String uri) {
- setKey(uri);
- }
-
- @Override
- public String getUri(FacesContext context, Object data) {
- return getUri();
- }
- };
-
private void encodeResources(FacesContext context, ResourceRenderer renderer,
Set<String> set) throws IOException {
if (set != null) {
- InternetResourceImpl resourceImpl = new InternetResourceImpl();
+ URIInternetResource resourceImpl = new URIInternetResource();
for (String uri : set) {
resourceImpl.setUri(uri);
@@ -450,16 +419,17 @@
if (renderer instanceof HeaderResourceProducer2) {
HeaderResourceProducer2 producer = (HeaderResourceProducer2) renderer;
- producer.encodeToHead(context, state.processStyles, state.processScripts);
+ producer.encodeToHead(context, component, state.processStyles,
+ state.processScripts);
} else if (renderer instanceof HeaderResourceProducer) {
HeaderResourceProducer producer = (HeaderResourceProducer) renderer;
if (state.processScripts) {
- encodeResources(context, state.getScriptRenderer(),
producer.getHeaderScripts(context,
+ encodeResources(context, state.resourceBuilder.getScriptRenderer(),
producer.getHeaderScripts(context,
component));
}
if (state.processStyles) {
- encodeResources(context, state.getStyleRenderer(),
producer.getHeaderStyles(context,
+ encodeResources(context, state.resourceBuilder.getStyleRenderer(),
producer.getHeaderStyles(context,
component));
}
}
@@ -467,16 +437,16 @@
context.setResponseWriter(state.getUserWriter());
UserResourceRenderer2 producer = (UserResourceRenderer2) renderer;
- producer.encodeToHead(context);
+ producer.encodeToHead(context, component);
} else if (renderer instanceof UserResourceRenderer) {
context.setResponseWriter(state.getUserWriter());
UserResourceRenderer producer = (UserResourceRenderer) renderer;
- encodeResources(context, state.getScriptRenderer(),
producer.getHeaderScripts(context,
+ encodeResources(context, state.resourceBuilder.getScriptRenderer(),
producer.getHeaderScripts(context,
component));
- encodeResources(context, state.getStyleRenderer(),
producer.getHeaderStyles(context,
+ encodeResources(context, state.resourceBuilder.getStyleRenderer(),
producer.getHeaderStyles(context,
component));
}
} catch (IOException e) {
@@ -530,9 +500,9 @@
.getViewHandler().getResourceURL(context,
skinStyleSheetUri);
- InternetResourceImpl resourceImpl = new InternetResourceImpl();
+ URIInternetResource resourceImpl = new URIInternetResource();
resourceImpl.setUri(resourceURL);
- resourceImpl.setRenderer(state.getStyleRenderer());
+ resourceImpl.setRenderer(state.resourceBuilder.getStyleRenderer());
resourceImpl.encode(context, null);
useSkinning = true;
@@ -542,9 +512,9 @@
String resourceURL =
context.getApplication().getViewHandler().getResourceURL(context,
skinExtendedStyleSheetUri);
- InternetResourceImpl resourceImpl = new InternetResourceImpl();
+ URIInternetResource resourceImpl = new URIInternetResource();
resourceImpl.setUri(resourceURL);
- resourceImpl.setRenderer(state.getStyleRenderer());
+ resourceImpl.setRenderer(state.resourceBuilder.getStyleRenderer());
resourceImpl.encode(context, null, EXTENDED_SKINNING);
useSkinning = true;
Modified:
trunk/framework/impl/src/main/java/org/ajax4jsf/renderkit/HeaderResourcesRendererBase.java
===================================================================
---
trunk/framework/impl/src/main/java/org/ajax4jsf/renderkit/HeaderResourcesRendererBase.java 2008-07-24
16:25:03 UTC (rev 9771)
+++
trunk/framework/impl/src/main/java/org/ajax4jsf/renderkit/HeaderResourcesRendererBase.java 2008-07-24
16:25:11 UTC (rev 9772)
@@ -41,7 +41,7 @@
*
*/
public abstract class HeaderResourcesRendererBase extends RendererBase
- implements HeaderResourceProducer2 {
+ implements HeaderResourceProducer2, HeaderResourceProducer {
/*
* (non-Javadoc)
@@ -146,8 +146,8 @@
}
}
- public void encodeToHead(FacesContext context, boolean processStyles,
- boolean processScripts) throws IOException {
+ public void encodeToHead(FacesContext context, UIComponent component,
+ boolean processStyles, boolean processScripts) throws IOException {
if (processScripts) {
InternetResource[] scripts = getScripts();
Modified:
trunk/framework/impl/src/main/java/org/ajax4jsf/resource/ResourceBuilderImpl.java
===================================================================
---
trunk/framework/impl/src/main/java/org/ajax4jsf/resource/ResourceBuilderImpl.java 2008-07-24
16:25:03 UTC (rev 9771)
+++
trunk/framework/impl/src/main/java/org/ajax4jsf/resource/ResourceBuilderImpl.java 2008-07-24
16:25:11 UTC (rev 9772)
@@ -90,6 +90,10 @@
private Codec codec;
+ private static final ResourceRenderer scriptRenderer = new ScriptRenderer();
+
+ private static final ResourceRenderer styleRenderer = new StyleRenderer();
+
static {
renderers = new HashMap<String, ResourceRenderer>();
// append known renderers for extentions.
@@ -98,8 +102,8 @@
renderers.put(".jpeg", renderer);
renderers.put(".jpg", renderer);
renderers.put(".png", new PngRenderer());
- renderers.put(".js", new ScriptRenderer());
- renderers.put(".css", new StyleRenderer());
+ renderers.put(".js", scriptRenderer);
+ renderers.put(".css", styleRenderer);
renderers.put(".log", new LogfileRenderer());
renderers.put(".html", new HTMLRenderer());
renderers.put(".xhtml", new
MimeRenderer("application/xhtml+xml"));
@@ -605,7 +609,12 @@
}
@Override
- public ResourceRenderer getRenderer(String name) {
- return renderers.get(name);
+ public ResourceRenderer getScriptRenderer() {
+ return scriptRenderer;
}
+
+ @Override
+ public ResourceRenderer getStyleRenderer() {
+ return styleRenderer;
+ }
}
Added: trunk/framework/impl/src/main/java/org/ajax4jsf/resource/URIInternetResource.java
===================================================================
--- trunk/framework/impl/src/main/java/org/ajax4jsf/resource/URIInternetResource.java
(rev 0)
+++
trunk/framework/impl/src/main/java/org/ajax4jsf/resource/URIInternetResource.java 2008-07-24
16:25:11 UTC (rev 9772)
@@ -0,0 +1,51 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+package org.ajax4jsf.resource;
+
+import javax.faces.context.FacesContext;
+
+
+public class URIInternetResource extends InternetResourceBase {
+
+ public URIInternetResource() {
+ super();
+ }
+
+ public URIInternetResource(String uri) {
+ super();
+
+ setUri(uri);
+ }
+
+ public String getUri() {
+ return getKey();
+ }
+
+ public void setUri(String uri) {
+ setKey(uri);
+ }
+
+ @Override
+ public String getUri(FacesContext context, Object data) {
+ return getUri();
+ }
+}
\ No newline at end of file