You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@velocity.apache.org by "Will Glass-Husain (JIRA)" <ji...@apache.org> on 2006/05/18 06:14:06 UTC

[jira] Commented: (VELOCITY-439) Improve Resource existence detection

    [ http://issues.apache.org/jira/browse/VELOCITY-439?page=comments#action_12412290 ] 

Will Glass-Husain commented on VELOCITY-439:
--------------------------------------------

nice idea, thanks for suggesting it.  

Note that you can always do this in the calling code.  This idea though provides a default implementation while 
allowing specific resource loaders to checl the resource existence directly (and likely more efficiently).

> Improve Resource existence detection
> ------------------------------------
>
>          Key: VELOCITY-439
>          URL: http://issues.apache.org/jira/browse/VELOCITY-439
>      Project: Velocity
>         Type: Improvement

>   Components: Source
>     Versions: 1.4
>     Reporter: Tassos Bassoukos
>     Priority: Trivial

>
> Depending on the ResourceLoader used, testing the existence of a resource is 
> somewhat expensive, as the resource has to be opened to test for its existence.
> I'm proposing the following changes:
> 1.
> Add a new method to org.apache.velocity.runtime.resource.loader.ResourceLoader:
>     public boolean resourceExists(String source) {
>         InputStream is = null;
>         try {
>             is = resourceLoader.getResourceStream(resourceName);
>             if (is != null) {
>                 return true;
>             }
>         } catch (ResourceNotFoundException e) {
>         } finally {
>             if (is != null) {
>                 try {
>                     is.close();
>                 } catch (Exception e) {
>                 }
>             }
>         }
>         return false;
>     }
> This method keeps compatibility with all current ResourceLoaders, and can be overriden by subclasses.
> 2. org.apache.velocity.runtime.resource.ResourceManagerImpl
> Modify the String getLoaderNameForResource(String resourceName) method to use
> the new ResourceLoader.resourceExists(String) method.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: velocity-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: velocity-dev-help@jakarta.apache.org