[ 
https://issues.apache.org/jira/browse/TRINIDAD-1729?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12840725#action_12840725
 ] 

Jeanne Waldman commented on TRINIDAD-1729:
------------------------------------------

I created this JIRA issue TRINIDAD-1746 move InputStreamProvider to be a public 
API
I will implement 1746 before I implement this JIRA.

> provide a hook for for an external decorator of Skin InputStreamProvider
> ------------------------------------------------------------------------
>
>                 Key: TRINIDAD-1729
>                 URL: https://issues.apache.org/jira/browse/TRINIDAD-1729
>             Project: MyFaces Trinidad
>          Issue Type: Improvement
>          Components: Skinning
>            Reporter: Jeanne Waldman
>            Assignee: Jeanne Waldman
>         Attachments: 1729InputStreamProviderHookWithTodos.patch
>
>
> A third party (Oracle MDS) would like to use their own InputStreamProvider to 
> find skinning css files (like purple-desktop.css) in their own system. The 
> current ways to find css files do not work for them.
> 1. We first discussed decorating ExternalContext.getResource(), since in
> Trinidad we create the URL by calling FacesContext's ExternalContext's
> getResource(style-sheet-name). For an example, see
> http://insights2jsf.wordpress.com/2009/07/03/using-custom-factories-or-howto-wrap-facescontext/
> 2. This won't work for them because it returns an URL object
> 3. using ExternalContext's getResourceAsStream won't work because you can't 
> find out if the file has been modified.
> 4. What would work is if they decorate or extend the InputStreamProvider, and 
> we check this if none of the other means finds the .css file. The other means 
> are those found in SkinStyleSheetProvider.java
> 5. To allow them to plugin their InputStreamProvider we
> can do this with a service provider interface where we open up
> META-INF/services/<fully qualified classname of service> and load all of the
> services that way.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to