Overview

 
Package  Use  Tree  Deprecated  Index  Help 
Eclipse Platform
Release 3.0
 PREV CLASS   NEXT CLASS FRAMES    NO FRAMES  
SUMMARY: NESTED | FIELD | CONSTR | METHOD DETAIL: FIELD | CONSTR | METHOD


 

org.eclipse.compare
Class ResourceNode

java.lang.Object
  extended byorg.eclipse.compare.BufferedContent
      extended byorg.eclipse.compare.ResourceNode

All Implemented Interfaces:
IContentChangeNotifier, IEditableContent, IEncodedStreamContentAccessor, IModificationDate, IStreamContentAccessor, IStructureComparator, ITypedElement


public class ResourceNode
extends BufferedContent
implements IEncodedStreamContentAccessor, IStructureComparator, ITypedElement, IEditableContent, IModificationDate

A ResourceNode wrappers an IResources so that it can be used as input for the differencing engine (interfaces IStructureComparator and ITypedElement) and the ReplaceWithEditionDialog (interfaces ITypedElement and IModificationDate).

Clients may instantiate this class; it is not intended to be subclassed.

See Also:
EditionSelectionDialog


Field Summary
 
Fields inherited from interface org.eclipse.compare.ITypedElement
FOLDER_TYPE, TEXT_TYPE, UNKNOWN_TYPE
 
Constructor Summary
ResourceNode(IResource resource)
          Creates a ResourceNode for the given resource.
 
Method Summary
protected  IStructureComparator createChild(IResource child)
          This hook method is called from getChildren once for every member of a container resource.
protected  InputStream createStream()
          Returns an open stream if the corresponding resource implements the IStorage interface.
 boolean equals(Object other)
          Returns true if the other object is of type ITypedElement and their names are identical.
 String getCharset()
          Returns the name of a charset encoding to be used when decoding this stream accessor's contents into characters.
 Object[] getChildren()
          Returns an iterator for all children of this object or null if there are no children.
 InputStream getContents()
          Returns an open InputStream for this object which can be used to retrieve the object's content.
 Image getImage()
          Returns an image for this object.
 long getModificationDate()
          Returns the modification time of this object.
 String getName()
          Returns the name of this object.
 IResource getResource()
          Returns the corresponding resource for this object.
 String getType()
          Returns the type of this object.
 int hashCode()
          Returns the hash code of the name.
 boolean isEditable()
          Returns true if this object can be modified.
 ITypedElement replace(ITypedElement child, ITypedElement other)
          This method is called on a parent to add or remove a child, or to copy the contents of a child.
 
Methods inherited from class org.eclipse.compare.BufferedContent
addContentChangeListener, discardBuffer, fireContentChanged, getContent, removeContentChangeListener, setContent
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.compare.IEditableContent
setContent
 

Constructor Detail

 

 

ResourceNode

public ResourceNode(IResource resource)

Creates a ResourceNode for the given resource.

Parameters:
resource - the resource
Method Detail

 

 

getResource

public IResource getResource()

Returns the corresponding resource for this object.

Returns:
the corresponding resource


 

 

getContents

public InputStream getContents()
                        throws CoreException

Description copied from interface: IStreamContentAccessor
Returns an open InputStream for this object which can be used to retrieve the object's content. The client is responsible for closing the stream when finished. Returns null if this object has no streamable contents.

Specified by:
getContents in interface IStreamContentAccessor
Overrides:
getContents in class BufferedContent

Throws:
CoreException


 

 

getModificationDate

public long getModificationDate()

Description copied from interface: IModificationDate
Returns the modification time of this object.

Note that this value should only be used to give the user a general idea of how old the object is.

Specified by:
getModificationDate in interface IModificationDate

Returns:
the time of last modification, in milliseconds since January 1, 1970, 00:00:00 GMT


 

 

getName

public String getName()

Description copied from interface: ITypedElement
Returns the name of this object. The name is used when displaying this object in the UI.

Specified by:
getName in interface ITypedElement

Returns:
the name of this object


 

 

getType

public String getType()

Description copied from interface: ITypedElement
Returns the type of this object. For objects with a file name this is typically the file extension. For folders its the constant FOLDER_TYPE. The type is used for determining a suitable viewer for this object.

Specified by:
getType in interface ITypedElement

Returns:
the type of this object


 

 

getImage

public Image getImage()

Description copied from interface: ITypedElement
Returns an image for this object. This image is used when displaying this object in the UI.

Specified by:
getImage in interface ITypedElement

Returns:
the image of this object or null if this type of input has no image


 

 

equals

public boolean equals(Object other)

Returns true if the other object is of type ITypedElement and their names are identical. The content is not considered.

Specified by:
equals in interface IStructureComparator


 

 

hashCode

public int hashCode()

Returns the hash code of the name.


 

 

getChildren

public Object[] getChildren()

Description copied from interface: IStructureComparator
Returns an iterator for all children of this object or null if there are no children.

Specified by:
getChildren in interface IStructureComparator

Returns:
an array with all children of this object, or an empty array if there are no children


 

 

createChild

protected IStructureComparator createChild(IResource child)

This hook method is called from getChildren once for every member of a container resource. This implementation creates a new ResourceNode for the given child resource. Clients may override this method to create a different type of IStructureComparator or to filter children by returning null.

Parameters:
child - the child resource for which a IStructureComparator must be returned
Returns:
a ResourceNode for the given child or null


 

 

createStream

protected InputStream createStream()
                            throws CoreException

Returns an open stream if the corresponding resource implements the IStorage interface. Otherwise the value null is returned.

Specified by:
createStream in class BufferedContent

Returns:
a buffered input stream containing the contents of this storage
Throws:
CoreException - if the contents of this storage could not be accessed


 

 

isEditable

public boolean isEditable()

Description copied from interface: IEditableContent
Returns true if this object can be modified. If it returns false the other methods of this API must not be called.

Specified by:
isEditable in interface IEditableContent

Returns:
true if this object can be modified


 

 

replace

public ITypedElement replace(ITypedElement child,
                             ITypedElement other)

Description copied from interface: IEditableContent
This method is called on a parent to add or remove a child, or to copy the contents of a child. What to do is encoded in the two arguments as follows:
add: child == null other != null
remove: child != null other == null
copy: child != null other != null

Specified by:
replace in interface IEditableContent


 

 

getCharset

public String getCharset()

Description copied from interface: IEncodedStreamContentAccessor
Returns the name of a charset encoding to be used when decoding this stream accessor's contents into characters. Returns null if a proper encoding cannot be determined.

Note: this method does not check whether the result is a supported charset name. Callers should be prepared to handle UnsupportedEncodingException where this charset is used.

Specified by:
getCharset in interface IEncodedStreamContentAccessor

Returns:
the name of a charset, or null
See Also:
IStreamContentAccessor.getContents()


 

Overview

 
Package  Use  Tree  Deprecated  Index  Help 
Eclipse Platform
Release 3.0
 PREV CLASS   NEXT CLASS FRAMES    NO FRAMES  
SUMMARY: NESTED | FIELD | CONSTR | METHOD DETAIL: FIELD | CONSTR | METHOD


Guidelines for using Eclipse APIs.

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