* @param parent the node that should be this node's parent
* @param value the value being partitioned on
* @return a new subdivision node
*/
public ProductPartition createSubdivision(ProductPartition parent, ProductDimension value) {
ProductPartition division = new ProductPartition();
division.setPartitionType(ProductPartitionType.SUBDIVISION);
division.setId(nextId--);
// The root node has neither a parent nor a value
if (parent != null) {
division.setParentCriterionId(parent.getId());
division.setCaseValue(value);
}
BiddableAdGroupCriterion criterion = new BiddableAdGroupCriterion();
criterion.setAdGroupId(adGroupId);
criterion.setCriterion(division);