[ 
https://issues.apache.org/jira/browse/TAVERNA-896?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Stian Soiland-Reyes updated TAVERNA-896:
----------------------------------------
    Fix Version/s: engine 3.1.0
                   osgi 0.2.1

> Use Path instead of java.util.File in API signatures
> ----------------------------------------------------
>
>                 Key: TAVERNA-896
>                 URL: https://issues.apache.org/jira/browse/TAVERNA-896
>             Project: Apache Taverna
>          Issue Type: Bug
>          Components: Taverna Engine, Taverna OSGi
>            Reporter: Stian Soiland-Reyes
>            Assignee: Stian Soiland-Reyes
>              Labels: file, path
>             Fix For: osgi 0.2.1, engine 3.1.0
>
>
> Several of our interfaces that are about to be released under taverna-osgi 
> and taverna-engine had methods with {{java.io.File}} in their signatures - 
> however I don't think there should be any reason why this should not be the 
> more modern {{java.nio.file.Path}}
> It's easy to move between File and Path as there's {{file.toPath()}} and 
> {{path.toFile()}} methods that work well with local file:/// paths.
> I had a quick search-replace across the interface signatures inside {{*api}} 
> of taverna-osgi and taverna-engine, but didn't change the implementations 
> beyond doing {{.toFile()}} on the incoming Path's - so the implementations 
> don't currently support non-file:// Paths (e.g. would not support Paths from 
> inside an robundle).
> (When changing from File to Path in implementation, be aware that Path have 
> more explicit exceptions, while File could silently fail - e.g. file.mkdir() 
> would just return no matter if it worked or not)
> Although changing to use Path everywhere probably is good for stability 
> (explicitly handling exceptions where needed), that is a bigger job, so 
> I think at least changing the API interface signatures now means we would be 
> allowed to later change the implementations without affecting the callers.
> I have updated the commandline to the modified calls - but not the workbench 
> (which has other compile issues).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to