/**
*
*/
package org.nightlabs.jfire.issuetracking.ui.issuelink;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import org.eclipse.swt.graphics.Image;
/**
* @author chairat
*
*/
public class IssueLinkHandlerCategory {
/**
* categoryID
*/
private String categoryId;
public String getCategoryId() {
return categoryId;
}
public void setCategoryId(String categoryId) {
this.categoryId = categoryId;
}
/**
* parent category
*/
private IssueLinkHandlerCategory parent;
public IssueLinkHandlerCategory getParent() {
return parent;
}
public void setParent(IssueLinkHandlerCategory parent) {
this.parent = parent;
}
/**
* name of category
*/
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
/**
* child categories
*/
private List<IssueLinkHandlerCategory> childCategories = new ArrayList<IssueLinkHandlerCategory>();
public List<IssueLinkHandlerCategory> getChildCategories() {
return Collections.unmodifiableList(childCategories);
}
public void addChildCategory(IssueLinkHandlerCategory child) {
childCategories.add(child);
}
public void removeChildCategory(IssueLinkHandlerCategory child) {
childCategories.remove(child);
}
/**
* child factories
*/
private List<IssueLinkHandlerFactory> childFactories = new ArrayList<IssueLinkHandlerFactory>();
public List<IssueLinkHandlerFactory> getChildFactories() {
return Collections.unmodifiableList(childFactories);
}
public void addChildFactory(IssueLinkHandlerFactory child) {
childFactories.add(child);
}
public void removeChildFactory(IssueLinkHandlerFactory child) {
childFactories.remove(child);
}
/**
* parent category
*/
private String parentCategoryId;
public String getParentCategoryId() {
return parentCategoryId;
}
public void setParentCategoryId(String parentCategoryId) {
this.parentCategoryId = parentCategoryId;
}
/**
* image
*/
private Image image;
public Image getImage() {
return image;
}
public void setImage(Image image) {
this.image = image;
}
/**
* Gets all child categories and factories
* @return
*/
public List<Object> getChildObjects() {
List<Object> objs = new ArrayList<Object>();
objs.addAll(childCategories);
objs.addAll(childFactories);
return objs;
}
}