All Downloads are FREE. Search and download functionalities are using the official Maven repository.
Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
org.ajax4jsf.framework.resource.TemplateCSSResource Maven / Gradle / Ivy
/**
* Licensed under the Common Development and Distribution License,
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.sun.com/cddl/
*
* 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.ajax4jsf.framework.resource;
import java.io.IOException;
import java.io.InputStream;
import java.util.Date;
import java.util.Map;
import javax.faces.FacesException;
import javax.faces.context.FacesContext;
/**
* Class for create and send resources from template ( at most, used for CSS files )
* @author shura (latest modification by $Author: alexsmirnov $)
* @version $Revision: 1.7 $ $Date: 2006/09/26 18:56:29 $
*
*/
public class TemplateCSSResource implements InternetResource {
private String templateName;
private InternetResource _resource;
private static TemplateCSSRenderer templateCSSRenderer = new TemplateCSSRenderer();
public TemplateCSSResource(){
}
/**
* @param templateName
*/
public TemplateCSSResource(String templateName) {
super();
setPath(templateName);
}
/**
* @param templateName
* @throws FacesException
*/
public void setPath(String templateName) throws FacesException {
// remove leaded / - as need for ClassLoader.getResource call.
this.templateName = templateName.startsWith("/")?templateName.substring(1):templateName;
// Self-register resource in system.
_resource = InternetResourceBuilder.getInstance().createResource(null,this.templateName);
_resource.setRenderer(templateCSSRenderer);
try {
// Attempt to compile template at init time. Due to client-side caching,
// without registering resources requests can be not call rendering template.
templateCSSRenderer.getTemplate(_resource, null);
} catch (Exception e) {
// Do nothing - template will be compiled at rendering time.
// TODO log error.
}
}
/**
* @param context
* @param data
* @param attributes
* @throws IOException
* @see org.ajax4jsf.framework.resource.InternetResource#encode(javax.faces.context.FacesContext, java.lang.Object, java.util.Map)
*/
public void encode(FacesContext context, Object data, Map attributes) throws IOException {
_resource.encode(context, data, attributes);
}
/**
* @param context
* @param data
* @throws IOException
* @see org.ajax4jsf.framework.resource.InternetResource#encode(javax.faces.context.FacesContext, java.lang.Object)
*/
public void encode(FacesContext context, Object data) throws IOException {
_resource.encode(context, data);
}
/**
* @param context
* @param component
* @param attrs
* @throws IOException
* @see org.ajax4jsf.framework.resource.InternetResource#encodeBegin(javax.faces.context.FacesContext, java.lang.Object, java.util.Map)
*/
public void encodeBegin(FacesContext context, Object component, Map attrs) throws IOException {
_resource.encodeBegin(context, component, attrs);
}
/**
* @param context
* @param component
* @throws IOException
* @see org.ajax4jsf.framework.resource.InternetResource#encodeEnd(javax.faces.context.FacesContext, java.lang.Object)
*/
public void encodeEnd(FacesContext context, Object component) throws IOException {
_resource.encodeEnd(context, component);
}
/**
* @return
* @see org.ajax4jsf.framework.resource.InternetResource#getContentLength()
*/
public int getContentLength() {
return _resource.getContentLength();
}
/**
* @return
* @see org.ajax4jsf.framework.resource.InternetResource#getContentType()
*/
public String getContentType() {
return _resource.getContentType();
}
/**
* @return
* @see org.ajax4jsf.framework.resource.InternetResource#getExpired()
*/
public Date getExpired() {
return _resource.getExpired();
}
/**
* @return
* @see org.ajax4jsf.framework.resource.InternetResource#getKey()
*/
public String getKey() {
return _resource.getKey();
}
/**
* @return
* @see org.ajax4jsf.framework.resource.InternetResource#getLastModified()
*/
public Date getLastModified() {
return _resource.getLastModified();
}
/**
* @param key
* @return
* @see org.ajax4jsf.framework.resource.InternetResource#getProperty(java.lang.Object)
*/
public Object getProperty(Object key) {
return _resource.getProperty(key);
}
/**
* @param context
* @return
* @see org.ajax4jsf.framework.resource.InternetResource#getResourceAsStream(org.ajax4jsf.framework.resource.ResourceContext)
*/
public InputStream getResourceAsStream(ResourceContext context) {
return _resource.getResourceAsStream(context);
}
/**
* @param context
* @param data
* @return
* @see org.ajax4jsf.framework.resource.InternetResource#getUri(javax.faces.context.FacesContext, java.lang.Object)
*/
public String getUri(FacesContext context, Object data) {
return _resource.getUri(context, data);
}
/**
* @return
* @see org.ajax4jsf.framework.resource.InternetResource#isCacheable()
*/
public boolean isCacheable() {
return _resource.isCacheable();
}
/**
* @return
* @see org.ajax4jsf.framework.resource.InternetResource#isSessionAware()
*/
public boolean isSessionAware() {
return _resource.isSessionAware();
}
/**
* @return
* @see org.ajax4jsf.framework.resource.InternetResource#requireFacesContext()
*/
public boolean requireFacesContext() {
return _resource.requireFacesContext();
}
/**
* @param context
* @throws IOException
* @see org.ajax4jsf.framework.resource.InternetResource#send(org.ajax4jsf.framework.resource.ResourceContext)
*/
public void send(ResourceContext context) throws IOException {
_resource.send(context);
}
/**
* @param response
* @see org.ajax4jsf.framework.resource.InternetResource#sendHeaders(org.ajax4jsf.framework.resource.ResourceContext)
*/
public void sendHeaders(ResourceContext response) {
_resource.sendHeaders(response);
}
/**
* @param key
* @see org.ajax4jsf.framework.resource.InternetResource#setKey(java.lang.String)
*/
public void setKey(String key) {
_resource.setKey(key);
}
/**
* @param key
* @param value
* @see org.ajax4jsf.framework.resource.InternetResource#setProperty(java.lang.Object, java.lang.Object)
*/
public void setProperty(Object key, Object value) {
_resource.setProperty(key, value);
}
/**
* @param renderer
* @see org.ajax4jsf.framework.resource.InternetResource#setRenderer(org.ajax4jsf.framework.resource.ResourceRenderer)
*/
public void setRenderer(ResourceRenderer renderer) {
_resource.setRenderer(renderer);
}
/**
* @return
* @see org.ajax4jsf.framework.resource.InternetResource#getRenderer()
*/
public ResourceRenderer getRenderer() {
return _resource.getRenderer();
}
/**
* @param cacheable
* @see org.ajax4jsf.framework.resource.InternetResource#setCacheable(boolean)
*/
public void setCacheable(boolean cacheable) {
_resource.setCacheable(cacheable);
}
/**
* @param expired
* @see org.ajax4jsf.framework.resource.InternetResource#setExpired(java.util.Date)
*/
public void setExpired(Date expired) {
_resource.setExpired(expired);
}
/**
* @param lastModified
* @see org.ajax4jsf.framework.resource.InternetResource#setLastModified(java.util.Date)
*/
public void setLastModified(Date lastModified) {
_resource.setLastModified(lastModified);
}
/**
* @param sessionAware
* @see org.ajax4jsf.framework.resource.InternetResource#setSessionAware(boolean)
*/
public void setSessionAware(boolean sessionAware) {
_resource.setSessionAware(sessionAware);
}
}