Jump to: navigation, search

Difference between revisions of "EFS"

Line 1: Line 1:
 
The Eclipse File System (EFS) is an abstract file system API.  It is used in the Eclipse platform to abstract away implementation details about what file system is used to store data in the workspace.  This page is a repository of information for plug-in developers who are writing their own EFS implementations.
 
The Eclipse File System (EFS) is an abstract file system API.  It is used in the Eclipse platform to abstract away implementation details about what file system is used to store data in the workspace.  This page is a repository of information for plug-in developers who are writing their own EFS implementations.
  
== Available Examples ==
+
== Known Implementations ==
  
There are some basic sample implementations of EFS available:
+
Are you working on an EFS implementation that you would like the community to know about?  If so, add it to the list below. If possible, include CVS connection information. You may find others in the community who are working on an implementation for the same kind of file system and may be able to pool resources.
  
* The best example is the local file system implementation found in the org.eclipse.core.filesystem plugin.  See the classes in the org.eclipse.core.internal.filesystem.local package for more details.  This EFS implementation is product quality, and currently ships as part of the Eclipse platform (as of the 3.2 release).
+
=== Local file system ===
* The org.eclipse.ui.examples.filesystem plug-in contains two sample EFS implementations. The first is an EFS implementation that treats a single zip file as the backing file system.  The second is an entirely in-memory file system that is useful in automated tests.  This plugin is found in the dev.eclipse.org/cvsroot/eclipse CVS repository, at the path www/eclipse/platform-ui/plugins/org.eclipse.ui.examples.filesystem.
+
* The org.eclipse.core.filesystem.ftp plug-in contains a ''partial'' implementation of EFS on top of File Transfer Protocol (FTP).  This FTP implementation is not currently functional, but if you want to help out patches are always welcome!  This plug-in is found in the dev.eclipse.org/cvsroot/org.eclipse repository, at the path /platform-core-home/plugins/org.eclipse.core.filesystem.ftp. This plug-in depends on the "team extras" FTP plug-in, found in the same repository at the path /platform-vcm-home/plugins/target/org.eclipse.ftp.
+
  
== Known Implementations ==
+
Plug-in id: org.eclipse.core.filesystem
 +
CVS: dev.eclipse.org:/cvsroot/eclipse/org.eclipse.core.filesystem
 +
Bugs: [https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Platform Eclipse Platform] Resources
 +
Contact: The [http://dev.eclipse.org/mailman/listinfo/platform-core-dev platform-core-dev mailing list]]
 +
Description: This EFS implementation is backed by the local fileystem through a combination of java.io API, and some optional native fragments.  The implementation is product quality, and is available in Eclipse Platform 3.2 release or greater.
 +
 
 +
=== FTP ===
 +
 
 +
Plug-in id: org.eclipse.core.filesystem.ftp
 +
CVS: dev.eclipse.org:/cvsroot/eclipse/platform-core-home/plugins/org.eclipse.core.filesystem.ftp
 +
Bugs: [https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Platform Eclipse Platform] Resources
 +
Contact: The [http://dev.eclipse.org/mailman/listinfo/platform-core-dev platform-core-dev mailing list]]
 +
Description: This is a ''partial'' EFS implementation backed by the File Transfer Protocol (FTP). This implementation is not currently functional.  You will need to create a KeyRing class with your FTP connection information.  This plugin depends on the "team extras" FTP plug-in, found in the same repository at the path /platform-vcm-home/plugins/target/org.eclipse.ftp.
  
Are you working on an EFS implementation that you would like the community to know about?  If so, add it to the list below.  You may find others in the community who are working on an implementation for the same kind of file system and may be able to pool resources.
+
=== UI Examples: Zip and Memory file systems ===
  
*
+
Plug-in id: org.eclipse.ui.examples.filesystem
 +
CVS: dev.eclipse.org:/cvsroot/org.eclipse/www/eclipse/platform-ui/plugins/org.eclipse.ui.examples.filesystem
 +
Bugs: [https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Platform Eclipse Platform] Resources
 +
Contact: The [http://dev.eclipse.org/mailman/listinfo/platform-core-dev platform-core-dev mailing list]]
 +
Description: This plug-in contains two sample EFS implementations. The first is an EFS implementation that treats a single zip file as the backing file system.  The second is an entirely in-memory file system that is useful in automated tests.

Revision as of 10:00, 25 July 2006

The Eclipse File System (EFS) is an abstract file system API. It is used in the Eclipse platform to abstract away implementation details about what file system is used to store data in the workspace. This page is a repository of information for plug-in developers who are writing their own EFS implementations.

Known Implementations

Are you working on an EFS implementation that you would like the community to know about? If so, add it to the list below. If possible, include CVS connection information. You may find others in the community who are working on an implementation for the same kind of file system and may be able to pool resources.

Local file system

Plug-in id: org.eclipse.core.filesystem CVS: dev.eclipse.org:/cvsroot/eclipse/org.eclipse.core.filesystem Bugs: Eclipse Platform Resources Contact: The platform-core-dev mailing list] Description: This EFS implementation is backed by the local fileystem through a combination of java.io API, and some optional native fragments. The implementation is product quality, and is available in Eclipse Platform 3.2 release or greater.

FTP

Plug-in id: org.eclipse.core.filesystem.ftp CVS: dev.eclipse.org:/cvsroot/eclipse/platform-core-home/plugins/org.eclipse.core.filesystem.ftp Bugs: Eclipse Platform Resources Contact: The platform-core-dev mailing list] Description: This is a partial EFS implementation backed by the File Transfer Protocol (FTP). This implementation is not currently functional. You will need to create a KeyRing class with your FTP connection information. This plugin depends on the "team extras" FTP plug-in, found in the same repository at the path /platform-vcm-home/plugins/target/org.eclipse.ftp.

UI Examples: Zip and Memory file systems

Plug-in id: org.eclipse.ui.examples.filesystem CVS: dev.eclipse.org:/cvsroot/org.eclipse/www/eclipse/platform-ui/plugins/org.eclipse.ui.examples.filesystem Bugs: Eclipse Platform Resources Contact: The platform-core-dev mailing list] Description: This plug-in contains two sample EFS implementations. The first is an EFS implementation that treats a single zip file as the backing file system. The second is an entirely in-memory file system that is useful in automated tests.