package gr.uoa.di.web.utils.collection;

import eu.dnetlib.domain.functionality.Collection;

public class CollectionNode {

	private Collection collection;
	private boolean isFatherPrivate = false;
	private String ownerEmail;
	private DocumentNode[] basketDocuments;
	private DocumentNode[] queryResults;
	private int queryResultCount = 0;
	private boolean highlighted = false;
	private boolean hasContainerChildren = false;
	private boolean expandable = false;
	private boolean editable = false;

	public CollectionNode(Collection collection, boolean isFatherPrivate,
			String ownerEmail) {

		this.collection = collection;
		this.isFatherPrivate = isFatherPrivate;
		this.ownerEmail = ownerEmail;
	}

	public CollectionNode(Collection collection, String ownerEmail) {

		this.collection = collection;
		this.ownerEmail = ownerEmail;
	}

	public CollectionNode() {
	}

	public Collection getCollection() {
		return collection;
	}

	public void setCollection(Collection collection) {
		this.collection = collection;
	}

	public boolean getIsFatherPrivate() {
		return isFatherPrivate;
	}

	public void setFatherPrivate(boolean isFatherPrivate) {
		this.isFatherPrivate = isFatherPrivate;
	}

	public String getOwnerEmail() {
		return ownerEmail;
	}

	public void setOwnerEmail(String ownerEmail) {
		this.ownerEmail = ownerEmail;
	}

	public DocumentNode[] getBasketDocuments() {
		return basketDocuments;
	}

	public void setBasketDocuments(DocumentNode[] basketDocuments) {
		this.basketDocuments = basketDocuments;
	}

	public boolean getHighlighted() {
		return highlighted;
	}

	public void setHighlighted(boolean highlighted) {
		this.highlighted = highlighted;
	}

	public DocumentNode[] getQueryResults() {
		return queryResults;
	}

	public void setQueryResults(DocumentNode[] queryResults) {
		this.queryResults = queryResults;
	}

	public boolean isHasContainerChildren() {
		return hasContainerChildren;
	}

	public void setHasContainerChildren(boolean hasContainerChildren) {
		this.hasContainerChildren = hasContainerChildren;
	}

	public int getQueryResultCount() {
		return queryResultCount;
	}

	public void setQueryResultCount(int queryResultCount) {
		this.queryResultCount = queryResultCount;
	}

	public boolean isExpandable() {
		return expandable;
	}

	public void setExpandable(boolean expandable) {
		this.expandable = expandable;
	}

	public boolean isEditable() {
		return editable;
	}

	public void setEditable(boolean editable) {
		this.editable = editable;
	}
}