Class DiffContainer
- java.lang.Object
-
- org.eclipse.compare.structuremergeviewer.DiffElement
-
- org.eclipse.compare.structuremergeviewer.DiffContainer
-
- All Implemented Interfaces:
ITypedElement,IDiffContainer,IDiffElement
- Direct Known Subclasses:
DiffNode
public abstract class DiffContainer extends DiffElement implements IDiffContainer
The standard implementation of a diff container element.This class may be instantiated, or further subclassed.
-
-
Field Summary
-
Fields inherited from interface org.eclipse.compare.ITypedElement
FOLDER_TYPE, TEXT_TYPE, UNKNOWN_TYPE
-
-
Constructor Summary
Constructors Constructor Description DiffContainer(IDiffContainer parent, int kind)Creates a new container with the specified kind under the given parent.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(IDiffElement diff)Adds the given child to this container.IDiffElementfindChild(String name)Tries to find the child with the given name.IDiffElement[]getChildren()Returns the children of this container.booleanhasChildren()Returns whether this container has at least one child.voidremove(IDiffElement child)Removes the given child (non-recursively) from this container.voidremoveToRoot(IDiffElement child)Removes the given child from this container.-
Methods inherited from class org.eclipse.compare.structuremergeviewer.DiffElement
getImage, getKind, getParent, getType, setKind, setParent
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.eclipse.compare.structuremergeviewer.IDiffElement
getKind, getParent, setParent
-
Methods inherited from interface org.eclipse.compare.ITypedElement
getImage, getName, getType
-
-
-
-
Constructor Detail
-
DiffContainer
public DiffContainer(IDiffContainer parent, int kind)
Creates a new container with the specified kind under the given parent.- Parameters:
parent- under which the new container is added as a child ornull.kind- of difference (defined inDifferencer).
-
-
Method Detail
-
findChild
public IDiffElement findChild(String name)
Tries to find the child with the given name. Returnsnullif no such child exists.- Parameters:
name- of the child to find- Returns:
- the first element with a matching name
-
add
public void add(IDiffElement diff)
Description copied from interface:IDiffContainerAdds the given child to this container. If the child is already contained in this container, this method has no effect.- Specified by:
addin interfaceIDiffContainer- Parameters:
diff- the child to be added to this container
-
removeToRoot
public void removeToRoot(IDiffElement child)
Description copied from interface:IDiffContainerRemoves the given child from this container. If the container becomes empty it is removed from its container. If the child is not contained in this container, this method has no effect.- Specified by:
removeToRootin interfaceIDiffContainer- Parameters:
child- the child to be removed from this container
-
remove
public void remove(IDiffElement child)
Removes the given child (non-recursively) from this container.- Parameters:
child- to remove
-
hasChildren
public boolean hasChildren()
Description copied from interface:IDiffContainerReturns whether this container has at least one child. In some cases this methods avoids having to call the potential more costlygetChildrenmethod.- Specified by:
hasChildrenin interfaceIDiffContainer- Returns:
trueif this container has at least one child
-
getChildren
public IDiffElement[] getChildren()
Description copied from interface:IDiffContainerReturns the children of this container. If this container has no children an empty array is returned (notnull).- Specified by:
getChildrenin interfaceIDiffContainer- Returns:
- the children of this container as an array
-
-