Eclipse Platform
Release 3.1

org.eclipse.core.resources
Interface IResourceProxy


public interface IResourceProxy

A callback for requesting information about a resource when using a fast resource visitor. All of the "get" methods on a resource proxy have trivial performance cost. Requesting the full path or the actual resource handle will cause extra objects to be created and will thus have greater cost.

Note that a resource proxy is a transient object that is only valid for the duration of a single visit method. A proxy should not be referenced once the single resource visit is complete. The equals and hashCode methods should not be relied on.

This interface is not intended to be implemented by clients.

Since:
2.1
See Also:
IResourceProxyVisitor

Method Summary
 long getModificationStamp()
          Returns the modification stamp of the resource being visited.
 String getName()
          Returns the simple name of the resource being visited.
 Object getSessionProperty(QualifiedName key)
          Returns the value of the session property of the resource being visited, identified by the given key.
 int getType()
          Returns the type of the resource being visited.
 boolean isAccessible()
          Returns whether the resource being visited is accessible.
 boolean isDerived()
          Returns whether the resource being visited is derived.
 boolean isLinked()
          Returns whether the resource being visited is a linked resource.
 boolean isPhantom()
          Returns whether the resource being visited is a phantom resource.
 boolean isTeamPrivateMember()
          Returns whether the resource being visited is a team private member.
 IPath requestFullPath()
          Returns the full workspace path of the resource being visited.
 IResource requestResource()
          Returns the handle of the resource being visited.
 

Method Detail

getModificationStamp

public long getModificationStamp()
Returns the modification stamp of the resource being visited.

Returns:
the modification stamp, or NULL_STAMP if the resource either does not exist or exists as a closed project
See Also:
IResource.getModificationStamp()

isAccessible

public boolean isAccessible()
Returns whether the resource being visited is accessible.

Returns:
true if the resource is accessible, and false otherwise
See Also:
IResource.isAccessible()

isDerived

public boolean isDerived()
Returns whether the resource being visited is derived.

Returns:
true if the resource is marked as derived, and false otherwise
See Also:
IResource.isDerived()

isLinked

public boolean isLinked()
Returns whether the resource being visited is a linked resource.

Returns:
true if the resource is linked, and false otherwise
See Also:
IResource.isLinked()

isPhantom

public boolean isPhantom()
Returns whether the resource being visited is a phantom resource.

Returns:
true if the resource is a phantom resource, and false otherwise
See Also:
IResource.isPhantom()

isTeamPrivateMember

public boolean isTeamPrivateMember()
Returns whether the resource being visited is a team private member.

Returns:
true if the resource is a team private member, and false otherwise
See Also:
IResource.isTeamPrivateMember()

getName

public String getName()
Returns the simple name of the resource being visited.

Returns:
the name of the resource
See Also:
IResource.getName()

getSessionProperty

public Object getSessionProperty(QualifiedName key)
Returns the value of the session property of the resource being visited, identified by the given key. Returns null if this resource has no such property.

Note that this method can return an out of date property value, or a value that no longer exists, if session properties are being modified concurrently with the resource visit.

Parameters:
key - the qualified name of the property
Returns:
the string value of the session property, or null if the resource has no such property
See Also:
IResource.getSessionProperty(QualifiedName)

getType

public int getType()
Returns the type of the resource being visited.

Returns:
the resource type
See Also:
IResource.getType()

requestFullPath

public IPath requestFullPath()
Returns the full workspace path of the resource being visited.

Note that this is not a "free" proxy operation. This method will generally cause a path object to be created. For an optimal visitor, only call this method when absolutely necessary. Note that the simple resource name can be obtained from the proxy with no cost.

Returns:
the full path of the resource
See Also:
IResource.getFullPath()

requestResource

public IResource requestResource()
Returns the handle of the resource being visited.

Note that this is not a "free" proxy operation. This method will generally cause both a path object and a resource object to be created. For an optimal visitor, only call this method when absolutely necessary. Note that the simple resource name can be obtained from the proxy with no cost, and the full path of the resource can be obtained through the proxy with smaller cost.

Returns:
the resource handle

Eclipse Platform
Release 3.1

Guidelines for using Eclipse APIs.

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