Eclipse Platform
Release 3.3

org.eclipse.ltk.core.refactoring
Class RefactoringDescriptorProxy

java.lang.Object
  extended byorg.eclipse.core.runtime.PlatformObject
      extended byorg.eclipse.ltk.core.refactoring.RefactoringDescriptorProxy
All Implemented Interfaces:
Comparable, IAdaptable

public abstract class RefactoringDescriptorProxy
extends PlatformObject
implements Comparable

Proxy of a refactoring descriptor.

Refactoring descriptors are exposed by the refactoring history service as lightweight proxy objects. Refactoring descriptor proxies have an efficient memory representation and are therefore suited to model huge refactoring histories which may be displayed in the user interface. The refactoring history service may hand out any number of proxies for a given descriptor. Proxies only offer direct access to the time stamp getTimeStamp(), the related project getProject() and description getDescription(). In order to access other information such as arguments and comments, clients have to call requestDescriptor(IProgressMonitor) in order to obtain the actual refactoring descriptor.

Refactoring descriptors are potentially heavy weight objects which should not be held on to. Proxies which are retrieved from external sources (e.g. not from the local refactoring history service) may encapsulate refactoring descriptors and should not be held in memory as well.

All time stamps are measured as the milliseconds since January 1, 1970, 00:00:00 GMT.

Note: this class is not intended to be subclassed by clients.

Since:
3.2
See Also:
IRefactoringHistoryService, RefactoringHistory

Constructor Summary
RefactoringDescriptorProxy()
           
 
Method Summary
 int compareTo(Object object)
          
 boolean equals(Object object)
          
abstract  String getDescription()
          Returns a human-readable description of refactoring.
abstract  String getProject()
          Returns the name of the associated project.
abstract  long getTimeStamp()
          Returns the time stamp of this refactoring.
 int hashCode()
          
 RefactoringDescriptor requestDescriptor(IProgressMonitor monitor)
          Resolves this proxy and returns the associated refactoring descriptor.
 
Methods inherited from class org.eclipse.core.runtime.PlatformObject
getAdapter
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RefactoringDescriptorProxy

public RefactoringDescriptorProxy()
Method Detail

compareTo

public int compareTo(Object object)

Specified by:
compareTo in interface Comparable

equals

public final boolean equals(Object object)


getDescription

public abstract String getDescription()
Returns a human-readable description of refactoring.

Returns:
a description of the refactoring

getProject

public abstract String getProject()
Returns the name of the associated project.

Returns:
the non-empty name of the project, or null

getTimeStamp

public abstract long getTimeStamp()
Returns the time stamp of this refactoring.

Returns:
the time stamp, or -1 if no time information is available

hashCode

public final int hashCode()


requestDescriptor

public RefactoringDescriptor requestDescriptor(IProgressMonitor monitor)
Resolves this proxy and returns the associated refactoring descriptor.

Clients must connect to the refactoring history service first before calling this method.

Parameters:
monitor - the progress monitor to use, or null
Returns:
the refactoring descriptor, or null

Eclipse Platform
Release 3.3

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2007. All rights reserved.