Saros
Distributed Collaborative Editing and Distributed Party Programming
de.fu_berlin.inf.dpp.vcs.VCSAdapter Class Reference
Inheritance diagram for de.fu_berlin.inf.dpp.vcs.VCSAdapter:
de.fu_berlin.inf.dpp.vcs.VCSProvider de.fu_berlin.inf.dpp.vcs.SubclipseAdapter

List of all members.

Public Member Functions

 VCSAdapter (RepositoryProviderType provider)
abstract boolean isManaged (IResource resource)
abstract boolean isInManagedProject (IResource resource)
String getProviderID (IResource resource)
String getRevisionString (IResource resource)
abstract String getRepositoryString (IResource resource)
abstract String getUrl (IResource resource)
abstract VCSResourceInfo getResourceInfo (IResource resource)
abstract VCSResourceInfo getCurrentResourceInfo (IResource resource)
abstract IProject checkoutProject (String newProjectName, FileList fileList, IProgressMonitor monitor)
abstract void connect (IProject project, String repositoryRoot, String directory, IProgressMonitor progress)
abstract void disconnect (IProject project, boolean deleteContent, IProgressMonitor progress)
abstract void revert (IResource resource)
abstract void switch_ (IResource resource, String url, String revision, IProgressMonitor monitor)
abstract void update (IResource resource, String targetRevision, IProgressMonitor monitor)
abstract boolean hasLocalCache (IProject project)
abstract VCSActivity getUpdateActivity (ISarosSession sarosSession, IResource resource)
abstract VCSActivity getSwitchActivity (ISarosSession sarosSession, IResource resource)
ProjectDeltaVisitor getProjectDeltaVisitor (EditorManager editorManager, ISarosSession sarosSession, SharedProject sharedProject)
boolean isManaged (de.fu_berlin.inf.dpp.filesystem.IResource resource)
String getRepositoryString (de.fu_berlin.inf.dpp.filesystem.IResource resource)
VCSResourceInfo getResourceInfo (de.fu_berlin.inf.dpp.filesystem.IResource resource)
VCSResourceInfo getCurrentResourceInfo (de.fu_berlin.inf.dpp.filesystem.IResource resource)
String getUrl (de.fu_berlin.inf.dpp.filesystem.IResource resource)
de.fu_berlin.inf.dpp.filesystem.IProject checkoutProject (String newProjectName, FileList fileList, de.fu_berlin.inf.dpp.monitoring.IProgressMonitor monitor)
void connect (de.fu_berlin.inf.dpp.filesystem.IProject project, String repositoryRoot, String directory, de.fu_berlin.inf.dpp.monitoring.IProgressMonitor progress)
void disconnect (de.fu_berlin.inf.dpp.filesystem.IProject project, boolean deleteContent, de.fu_berlin.inf.dpp.monitoring.IProgressMonitor progress)
void revert (de.fu_berlin.inf.dpp.filesystem.IResource resource)
void switch_ (de.fu_berlin.inf.dpp.filesystem.IResource resource, String url, String revision, de.fu_berlin.inf.dpp.monitoring.IProgressMonitor monitor)
void update (de.fu_berlin.inf.dpp.filesystem.IResource resource, String targetRevision, de.fu_berlin.inf.dpp.monitoring.IProgressMonitor monitor)

Static Public Member Functions

static VCSAdapter getAdapter (String identifier)
static VCSAdapter getAdapter (IProject project)

Protected Member Functions

void undocumentedException (Exception e)

Protected Attributes

RepositoryProviderType provider

Detailed Description

Eclipse Adapter for accessing the Version Control System (Team Provider).

This adapter is capable of handling Eclipse org.eclipse.core.resources.IResource resources} and virtual DPP de.fu_berlin.inf.dpp.filesystem.IResource resources} simultaneously.

Implementation Note: Clients should only implement the abstract methods rather than implementing the VCSProvider} interface.

Author:
haferburg

Constructor & Destructor Documentation

de.fu_berlin.inf.dpp.vcs.VCSAdapter.VCSAdapter ( RepositoryProviderType  provider)

Member Function Documentation

abstract IProject de.fu_berlin.inf.dpp.vcs.VCSAdapter.checkoutProject ( String  newProjectName,
FileList  fileList,
IProgressMonitor  monitor 
) [pure virtual]
de.fu_berlin.inf.dpp.filesystem.IProject de.fu_berlin.inf.dpp.vcs.VCSAdapter.checkoutProject ( String  newProjectName,
FileList  fileList,
de.fu_berlin.inf.dpp.monitoring.IProgressMonitor  monitor 
)
abstract void de.fu_berlin.inf.dpp.vcs.VCSAdapter.connect ( IProject  project,
String  repositoryRoot,
String  directory,
IProgressMonitor  progress 
) [pure virtual]
void de.fu_berlin.inf.dpp.vcs.VCSAdapter.connect ( de.fu_berlin.inf.dpp.filesystem.IProject  project,
String  repositoryRoot,
String  directory,
de.fu_berlin.inf.dpp.monitoring.IProgressMonitor  progress 
)
abstract void de.fu_berlin.inf.dpp.vcs.VCSAdapter.disconnect ( IProject  project,
boolean  deleteContent,
IProgressMonitor  progress 
) [pure virtual]
void de.fu_berlin.inf.dpp.vcs.VCSAdapter.disconnect ( de.fu_berlin.inf.dpp.filesystem.IProject  project,
boolean  deleteContent,
de.fu_berlin.inf.dpp.monitoring.IProgressMonitor  progress 
)
static VCSAdapter de.fu_berlin.inf.dpp.vcs.VCSAdapter.getAdapter ( String  identifier) [static]

Determine and instantiate the corresponding VCSAdapter for the provided identifier.

Parameters:
identifier
Returns:
See also:
RepositoryProvider.getID()
static VCSAdapter de.fu_berlin.inf.dpp.vcs.VCSAdapter.getAdapter ( IProject  project) [static]

Determine the repository provider of the project and return the corresponding VCSAdapter. The method will return null if the project is not under version control, or if no VCSAdapter was found for the repository provider used.

Parameters:
project
Returns:
abstract VCSResourceInfo de.fu_berlin.inf.dpp.vcs.VCSAdapter.getCurrentResourceInfo ( IResource  resource) [pure virtual]
VCSResourceInfo de.fu_berlin.inf.dpp.vcs.VCSAdapter.getCurrentResourceInfo ( de.fu_berlin.inf.dpp.filesystem.IResource  resource)
ProjectDeltaVisitor de.fu_berlin.inf.dpp.vcs.VCSAdapter.getProjectDeltaVisitor ( EditorManager  editorManager,
ISarosSession  sarosSession,
SharedProject  sharedProject 
)
String de.fu_berlin.inf.dpp.vcs.VCSAdapter.getProviderID ( IResource  resource)
Parameters:
resource
Returns:
The identifier of the resource's Team Provider.
abstract String de.fu_berlin.inf.dpp.vcs.VCSAdapter.getRepositoryString ( IResource  resource) [pure virtual]
String de.fu_berlin.inf.dpp.vcs.VCSAdapter.getRepositoryString ( de.fu_berlin.inf.dpp.filesystem.IResource  resource)
VCSResourceInfo de.fu_berlin.inf.dpp.vcs.VCSAdapter.getResourceInfo ( de.fu_berlin.inf.dpp.filesystem.IResource  resource)
abstract VCSResourceInfo de.fu_berlin.inf.dpp.vcs.VCSAdapter.getResourceInfo ( IResource  resource) [pure virtual]
String de.fu_berlin.inf.dpp.vcs.VCSAdapter.getRevisionString ( IResource  resource)
Parameters:
resource
Returns:
The revision of the resource as a String, or null.
abstract VCSActivity de.fu_berlin.inf.dpp.vcs.VCSAdapter.getSwitchActivity ( ISarosSession  sarosSession,
IResource  resource 
) [pure virtual]
abstract VCSActivity de.fu_berlin.inf.dpp.vcs.VCSAdapter.getUpdateActivity ( ISarosSession  sarosSession,
IResource  resource 
) [pure virtual]
String de.fu_berlin.inf.dpp.vcs.VCSAdapter.getUrl ( de.fu_berlin.inf.dpp.filesystem.IResource  resource)
abstract String de.fu_berlin.inf.dpp.vcs.VCSAdapter.getUrl ( IResource  resource) [pure virtual]
Parameters:
resource
Returns:
The URL of the remote resource in the repository, or null.

Implements de.fu_berlin.inf.dpp.vcs.VCSProvider.

Implemented in de.fu_berlin.inf.dpp.vcs.SubclipseAdapter.

abstract boolean de.fu_berlin.inf.dpp.vcs.VCSAdapter.hasLocalCache ( IProject  project) [pure virtual]

Returns true if there is a folder like e.g. SVN's .svn for the project. Such a folder might exists even when the project is not currently connected to the Team provider.

Implemented in de.fu_berlin.inf.dpp.vcs.SubclipseAdapter.

abstract boolean de.fu_berlin.inf.dpp.vcs.VCSAdapter.isInManagedProject ( IResource  resource) [pure virtual]
Parameters:
resource
Returns:
true if the resource is in a project that's under VC.

Implemented in de.fu_berlin.inf.dpp.vcs.SubclipseAdapter.

abstract boolean de.fu_berlin.inf.dpp.vcs.VCSAdapter.isManaged ( IResource  resource) [pure virtual]
boolean de.fu_berlin.inf.dpp.vcs.VCSAdapter.isManaged ( de.fu_berlin.inf.dpp.filesystem.IResource  resource)
void de.fu_berlin.inf.dpp.vcs.VCSAdapter.revert ( de.fu_berlin.inf.dpp.filesystem.IResource  resource)
abstract void de.fu_berlin.inf.dpp.vcs.VCSAdapter.revert ( IResource  resource) [pure virtual]
void de.fu_berlin.inf.dpp.vcs.VCSAdapter.switch_ ( de.fu_berlin.inf.dpp.filesystem.IResource  resource,
String  url,
String  revision,
de.fu_berlin.inf.dpp.monitoring.IProgressMonitor  monitor 
)
abstract void de.fu_berlin.inf.dpp.vcs.VCSAdapter.switch_ ( IResource  resource,
String  url,
String  revision,
IProgressMonitor  monitor 
) [pure virtual]
void de.fu_berlin.inf.dpp.vcs.VCSAdapter.undocumentedException ( Exception  e) [protected]

It is unclear under which circumstances this exception is thrown.

void de.fu_berlin.inf.dpp.vcs.VCSAdapter.update ( de.fu_berlin.inf.dpp.filesystem.IResource  resource,
String  targetRevision,
de.fu_berlin.inf.dpp.monitoring.IProgressMonitor  monitor 
)
abstract void de.fu_berlin.inf.dpp.vcs.VCSAdapter.update ( IResource  resource,
String  targetRevision,
IProgressMonitor  monitor 
) [pure virtual]

Member Data Documentation

RepositoryProviderType de.fu_berlin.inf.dpp.vcs.VCSAdapter.provider [protected]
 All Classes Namespaces Files Functions Variables Enumerations