Thanks Franz,
and to be more specific ...
You have to be VERY VERY careful with Java Files.
Example:
File a = new File("./foo/../Foo.bar");
File b = new File("Foo.bar");
System.out.println(a.getPath()); // -> .\foo\..\Foo.bar
System.out.println(a.getAbsolutePath()); // ->
Z:\java\eclipse\saros\Test\.\foo\..\Foo.bar
// this call would actually also resolve symbolic links etc.
System.out.println(a.getCanonicalPath()); // ->
Z:\java\eclipse\saros\Test\Foo.bar
System.out.println(b.getPath()); // -> Foo.bar
System.out.println(b.getAbsolutePath()); // ->
Z:\java\eclipse\saros\Test\Foo.bar
System.out.println(b.getCanonicalPath()); // ->
Z:\java\eclipse\saros\Test\Foo.bar
System.out.println(a.equals(b)); // -> false !
On 21.08.2014 14:48, Zieris, Franz wrote:
> Just to make this clear:
>
>> No, see GIT for example,
>> My workspace is in Z:\java\eclipse\saros
>>
>> The relative workspace path inside Eclipse is:
>> saros\src\...\SarosSession.java
>>
>> Unfortunately the absolute path is NOT:
>> Z:\java\eclipse\saros\saros\src\...\SarosSession.java
> This is not due to Git, but due to the Eclipse option of storing your files
> outside the "default location", i.e. the workspace folder (plus the
> possibility of having "linked files").
> But this does not weaken your point.
> In fact, this should make clear that every Eclipse user (not only the
> Git-infected ones) can be affected.
>
> Franz
>
>
> -----Original Message-----
> From: Stefan Rossbach [mailto:[email protected]]
> Sent: Thursday, August 21, 2014 2:24 PM
> To: Holger Schmeisky; [email protected]
> Subject: Re: [DPP-Devel] Projecthandles in Eclipse
>
> On 21.08.2014 08:54, Holger Schmeisky wrote:
>> Hi,
>>
>> I would like to refactor the IProject implementation in Saros/I and have
>> a few questions about how the Resources API works in Eclipse:
>>
>> * Is ResourcesPlugin.getWorkspace().getRoot() the best way to get at
>> the workspace?
> It is the only way, maybe some other static methods but the result would
> be the same
>> - If yes, We will need a unified mechanism for getting projects
>> from somewhere
>> - Should it have static methods? In that case I dont know how to
>> implement it :-)
>> - otherwise I would suggest and interface + adding the
>> implementation to PicoContainer
>> * Would it work to mimick the IProject.getFile() and .getFolder()
>> behaviour of creating handles by using the io.File API? (If we assume we
>> always work on files and not something exotic)
> No, see GIT for example,
> My workspace is in Z:\java\eclipse\saros
>
> The relative workspace path inside Eclipse is:
> saros\src\...\SarosSession.java
>
> Unfortunately the absolute path is NOT:
> Z:\java\eclipse\saros\saros\src\...\SarosSession.java
>
> But:
> Z:\git_repository\saros\de.fu_berlin.inf...\....\SarosSession.java
>> - I currently see no reason against it, because File creates
>> handles too and actual files are only created when IFile.create() is called.
> Can you please describe your problem what is wrong with the current
> interfaces ?
>> Regards,
>> Holger
>>
>
> ------------------------------------------------------------------------------
> Slashdot TV.
> Video for Nerds. Stuff that matters.
> http://tv.slashdot.org/
> _______________________________________________
> DPP-Devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/dpp-devel
------------------------------------------------------------------------------
Slashdot TV.
Video for Nerds. Stuff that matters.
http://tv.slashdot.org/
_______________________________________________
DPP-Devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dpp-devel