Package javax.help

# Class Merge

java.lang.Object
javax.help.Merge

Direct Known Subclasses:
  `AppendMerge`, `NoMerge`, `SortMerge`, `UniteAppendMerge`

public abstract class Merge extends Object
Common superclass for all merge types

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static class`
`Merge.DefaultMergeFactory`
Default Merge factory which creates concrete Merge objects

## Field Summary

Fields
Modifier and Type
Field
Description
`protected Locale`
`locale`
HelpSet's locale which is used in sorting
`protected DefaultMutableTreeNode`
`slaveTopNode`
Slave node

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`Merge(NavigatorView master, NavigatorView slave)`
Constructs Merge for master and slave NavigatorViews

## Method Summary

Modifier and Type
Method
Description
`static void`
`mergeNodeChildren(TreeNode node)`
Merge Node Children.
`static void`
`mergeNodes(TreeNode master, TreeNode slave)`
Merge Nodes.
`abstract TreeNode`
`processMerge(TreeNode node)`
Processes merge.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### slaveTopNode

protected DefaultMutableTreeNode slaveTopNode
Slave node

### locale

protected Locale locale
HelpSet's locale which is used in sorting

## Constructor Details

### Merge

protected Merge(NavigatorView master, NavigatorView slave)
Constructs Merge for master and slave NavigatorViews

Parameters:
  `master` - The master NavigatorView
  `slave` - The slave NavigatorView

## Method Details

### processMerge

public abstract TreeNode processMerge(TreeNode node)
Processes merge. Changes master node according merge rules using slave node.

Parameters:
  `node` - The master node
Returns:
  The changed master node

### mergeNodes

public static void mergeNodes(TreeNode master, TreeNode slave)
Merge Nodes. Merge two nodes according to the merging rules of the masterNode. Each Subclass should override this implementation.

Parameters:
  `master` - The master node to merge with
  `slave` - The node to merge into the master

### mergeNodeChildren

public static void mergeNodeChildren(TreeNode node)
Merge Node Children. Merge the children of a node according to the merging rules of the parent. Each subclass must implement this method

Parameters:
  `node` - The parent node from which the children are merged