Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » DSDP - Target Management » Remote System Explorer / other plugins integration
Remote System Explorer / other plugins integration [message #18467] Tue, 05 February 2008 00:46 Go to next message
Fabio Zadrozny is currently offline Fabio Zadrozny
Messages: 26
Registered: July 2009
Location: Brazil
Junior Member
A bug has been reported to pydev
( https://sourceforge.net/tracker/index.php?func=detail&ai d=1874801&group_id=85796&atid=577329)
saying that its code-completion does not work when using a remote
project...

As I have no idea of the underlying structure and what a remote
project consists of, I'd like to know what is it that a remote
project consists of and if other plugins are expected to work
seamlessly with it (so, is this actually a bug in pydev or is this to
be expected when using a remote project?) -- if it should be working,
could you explain which should be the interfaces that pydev should
rely on when interacting with it?

Thanks,

Fabio
Re: Remote System Explorer / efs integration [message #18475 is a reply to message #18467] Thu, 07 February 2008 18:31 Go to previous message
Martin Oberhuber is currently offline Martin Oberhuber
Messages: 984
Registered: July 2009
Senior Member
Hello Fabio,

thanks for your request.

For an initial read, see this FAQ (you may also
edit that FAQ on the Wiki in order to reference
your own project there):
http://wiki.eclipse.org/index.php/TM_and_RSE_FAQ#Why_is_the_ Outline_View_empty_when_editing_a_remote_PHP_or_C_file.3F

The background of remote projects is that Eclipse
switched its Resources system to use a concept of
an abstract file system with version Eclipse 3.2.
So, instead of using java.io.File directly, the
Eclipse Resoruces system now uses the Eclipse
Filesystem (EFS) interfaces:
http://wiki.eclipse.org/EFS

EFS makes it possible that file system implementations
other than the default local one are contributed.
This, in turn, makes it possible that resources
managed by the Eclipse Workspace actually reside
on a remote system rather than the local one.

In the end, all Eclipse Plugins are expected to
be aware of this change, and able to treat such
remote resources transparently. This has been
documented in the Eclipse 3.2 migration notes:
http://help.eclipse.org/help33/topic/org.eclipse.platform.do c.isv/porting/3.2/incompatibilities.html#nonLocalResources

Transparently working on remote resources is
possible if the client plugins rely on Eclipse
IResource APIs and EFS APIs only, and can handle
the URIs used by EFS just as explained in the
migration docs mentioned above.

As of today, not all Eclipse Plugins are fully
aware of remote resources, but more and more
are migrating; the Platform itself with JDT
and PDE were the first to support remote resources,
although some efs-related bugs were filed even
recently like with storing Debug Launches.

WTP and PDT are pretty far in migration as far as
I know, so they should also transparently work
on remote resources:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=196172

CDT is currently migrating:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=180677
https://bugs.eclipse.org/bugs/show_bug.cgi?id=177994
This patch might give some insight:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=142092

How difficult it is to migrate to transparent
support of EFS depends on your project. For
CDT, it seems nontrivial to support remote
resources, especially because handling
#include statements and include pathes in
the parser is not trivial for remote resources,
but they are in the process of getting this
fixed.

For testing remote projects and EFS, it's
likely the easiest for you to install the
RSE-SDK from the Target Management Project,
and then follow instructions from the FAQ
mentioned at the beginning of this
message.

Cheers,
--
Martin Oberhuber, Senior Member of Technical Staff, Wind River
Target Management Project Lead, DSDP PMC Member
http://www.eclipse.org/dsdp/tm




Fabio Zadrozny wrote:
> A bug has been reported to pydev
> ( https://sourceforge.net/tracker/index.php?func=detail&ai d=1874801&group_id=85796&atid=577329)
>
> saying that its code-completion does not work when using a remote
> project...
>
> As I have no idea of the underlying structure and what a remote
> project consists of, I'd like to know what is it that a remote
> project consists of and if other plugins are expected to work
> seamlessly with it (so, is this actually a bug in pydev or is this to
> be expected when using a remote project?) -- if it should be working,
> could you explain which should be the interfaces that pydev should
> rely on when interacting with it?
>
> Thanks,
>
> Fabio
>
Re: Remote System Explorer / efs integration [message #572188 is a reply to message #18467] Thu, 07 February 2008 18:31 Go to previous message
Martin Oberhuber is currently offline Martin Oberhuber
Messages: 984
Registered: July 2009
Senior Member
Hello Fabio,

thanks for your request.

For an initial read, see this FAQ (you may also
edit that FAQ on the Wiki in order to reference
your own project there):
http://wiki.eclipse.org/index.php/TM_and_RSE_FAQ#Why_is_the_ Outline_View_empty_when_editing_a_remote_PHP_or_C_file.3F

The background of remote projects is that Eclipse
switched its Resources system to use a concept of
an abstract file system with version Eclipse 3.2.
So, instead of using java.io.File directly, the
Eclipse Resoruces system now uses the Eclipse
Filesystem (EFS) interfaces:
http://wiki.eclipse.org/EFS

EFS makes it possible that file system implementations
other than the default local one are contributed.
This, in turn, makes it possible that resources
managed by the Eclipse Workspace actually reside
on a remote system rather than the local one.

In the end, all Eclipse Plugins are expected to
be aware of this change, and able to treat such
remote resources transparently. This has been
documented in the Eclipse 3.2 migration notes:
http://help.eclipse.org/help33/topic/org.eclipse.platform.do c.isv/porting/3.2/incompatibilities.html#nonLocalResources

Transparently working on remote resources is
possible if the client plugins rely on Eclipse
IResource APIs and EFS APIs only, and can handle
the URIs used by EFS just as explained in the
migration docs mentioned above.

As of today, not all Eclipse Plugins are fully
aware of remote resources, but more and more
are migrating; the Platform itself with JDT
and PDE were the first to support remote resources,
although some efs-related bugs were filed even
recently like with storing Debug Launches.

WTP and PDT are pretty far in migration as far as
I know, so they should also transparently work
on remote resources:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=196172

CDT is currently migrating:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=180677
https://bugs.eclipse.org/bugs/show_bug.cgi?id=177994
This patch might give some insight:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=142092

How difficult it is to migrate to transparent
support of EFS depends on your project. For
CDT, it seems nontrivial to support remote
resources, especially because handling
#include statements and include pathes in
the parser is not trivial for remote resources,
but they are in the process of getting this
fixed.

For testing remote projects and EFS, it's
likely the easiest for you to install the
RSE-SDK from the Target Management Project,
and then follow instructions from the FAQ
mentioned at the beginning of this
message.

Cheers,
--
Martin Oberhuber, Senior Member of Technical Staff, Wind River
Target Management Project Lead, DSDP PMC Member
http://www.eclipse.org/dsdp/tm




Fabio Zadrozny wrote:
> A bug has been reported to pydev
> ( https://sourceforge.net/tracker/index.php?func=detail&ai d=1874801&group_id=85796&atid=577329)
>
> saying that its code-completion does not work when using a remote
> project...
>
> As I have no idea of the underlying structure and what a remote
> project consists of, I'd like to know what is it that a remote
> project consists of and if other plugins are expected to work
> seamlessly with it (so, is this actually a bug in pydev or is this to
> be expected when using a remote project?) -- if it should be working,
> could you explain which should be the interfaces that pydev should
> rely on when interacting with it?
>
> Thanks,
>
> Fabio
>
Previous Topic:Remote System Explorer / other plugins integration
Next Topic:RSE hangs on FTP import
Goto Forum:
  


Current Time: Tue Oct 21 18:27:02 GMT 2014

Powered by FUDForum. Page generated in 0.02395 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software