# Class: com.pnfsoftware.jeb.core.units.impl.ContainerUnit

Container units are non\-binary units used to represent tree structures. 

 Children can be attached to container units; it is recommended that clients handle container units as if they were file system folders \(eg, displaying children should take priority over displaying container unit details\).

## Constructor: ContainerUnit
- parameter: `formatType`, type: `java.lang.String`
- parameter: `name`, type: `java.lang.String`
- parameter: `unitProcessor`, type: `com.pnfsoftware.jeb.core.units.IUnitProcessor`
- parameter: `parent`, type: `com.pnfsoftware.jeb.core.IUnitCreator`
- parameter: `pdm`, type: `com.pnfsoftware.jeb.core.properties.IPropertyDefinitionManager`

Description: Create a container unit.
parameter: formatType: unit format type
parameter: name: unit name
parameter: unitProcessor: unit processor
parameter: parent: parent unit or artifact
parameter: pdm: property definition manager

## Constructor: ContainerUnit
- parameter: `name`, type: `java.lang.String`
- parameter: `unitProcessor`, type: `com.pnfsoftware.jeb.core.units.IUnitProcessor`
- parameter: `parent`, type: `com.pnfsoftware.jeb.core.IUnitCreator`
- parameter: `pdm`, type: `com.pnfsoftware.jeb.core.properties.IPropertyDefinitionManager`

Description: Create a container unit of the "composite" format type.
parameter: name: unit name
parameter: unitProcessor: unit processor
parameter: parent: parent unit or artifact
parameter: pdm: property definition manager

## Static Field: CONTAINERS_FIRST
Type: `java.util.Comparator<com.pnfsoftware.jeb.core.units.IUnit>`
Description: Comparator that sorts container units before leaf units, then by name.

## Method: equals
- parameter: `o`, type: `java.lang.Object`
- return type: `boolean`


## Method: getChildren
- return type: `java.util.List<? extends com.pnfsoftware.jeb.core.units.IUnit>`


## Method: getRootContainer
- return type: `com.pnfsoftware.jeb.core.units.impl.ContainerUnit`

Description: Get the top\-level container unit, within a hierarchy of containers.
return: the first non\-container parent

## Method: hashCode
- return type: `int`


## Method: process
- return type: `boolean`


## Method: process
- parameter: `processLeaves`, type: `boolean`
- return type: `boolean`

Description: Process the container.
parameter: processLeaves: true to process leaf units
return: true if processing succeeded

