/*******************************************************************************
 * Copyright (c) 2004 Actuate Corporation. All rights reserved. This program and
 * the accompanying materials are made available under the terms of the Eclipse
 * Public License v1.0 which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 * 
 * Contributors: Actuate Corporation - initial API and implementation
 ******************************************************************************/

package org.eclipse.birt.test.performance.reporting.model;

import java.util.ArrayList;
import java.util.List;

import org.eclipse.birt.test.performance.reporting.xml.XMLReportVisitor;

public class TestCaseNode extends BaseNode
{

	private String name = null;
	private String format = null;
	private String encoding = "UTF-8";
	private String locale = "en_US";
	private int threadCount = 0;
	private int reportCount = 0;

	private String description = null;
	
	private List tasks = new ArrayList();

	
	/**
	 * @return Returns the description.
	 */
	public String getDescription( )
	{
		return description;
	}

	
	/**
	 * @param description The description to set.
	 */
	public void setDescription( String description )
	{
		this.description = description;
	}

	
	/**
	 * @return Returns the encoding.
	 */
	public String getEncoding( )
	{
		return encoding;
	}

	
	/**
	 * @param encoding The encoding to set.
	 */
	public void setEncoding( String encoding )
	{
		this.encoding = encoding;
	}

	
	/**
	 * @return Returns the format.
	 */
	public String getFormat( )
	{
		return format;
	}

	
	/**
	 * @param format The format to set.
	 */
	public void setFormat( String format )
	{
		this.format = format;
	}

	
	/**
	 * @return Returns the locale.
	 */
	public String getLocale( )
	{
		return locale;
	}

	
	/**
	 * @param locale The locale to set.
	 */
	public void setLocale( String locale )
	{
		this.locale = locale;
	}

	
	/**
	 * @return Returns the name.
	 */
	public String getName( )
	{
		return name;
	}

	
	/**
	 * @param name The name to set.
	 */
	public void setName( String name )
	{
		this.name = name;
	}

	
	/**
	 * @return Returns the reportCount.
	 */
	public int getReportCount( )
	{
		return reportCount;
	}

	
	/**
	 * @param reportCount The reportCount to set.
	 */
	public void setReportCount( int reportCount )
	{
		this.reportCount = reportCount;
	}

	
	/**
	 * @return Returns the tasks.
	 */
	public List getTasks( )
	{
		return tasks;
	}

	
	/**
	 * @param task 
	 * @param tasks The tasks to set.
	 */
	public void addTasks( TaskNode task )
	{
		this.tasks.add( tasks );
	}

	
	/**
	 * @return Returns the threadCount.
	 */
	public int getThreadCount( )
	{
		return threadCount;
	}

	
	/**
	 * @param threadCount The threadCount to set.
	 */
	public void setThreadCount( int threadCount )
	{
		this.threadCount = threadCount;
	}


	public void accept( XMLReportVisitor visitor )
	{
		visitor.visit( this );
		
	}
	
}
