package edu.stanford.rt.datatype;
import java.util.*;
/**
* @author Ninghui Li, Sandra Qiu
*
* Implementation of TreeType
element
*
*/
public class TreeType extends SimpleType
{
/** separator of the tree type. */
private String separator; // required attr.
/** ordering of the tree type */
private boolean rootFirst;
/**
* Constructor for TreeType
*/
public TreeType(String name, String separator, boolean rootFirst)
{
super(name);
this.separator = separator;
rootFirst = rootFirst;
}
/**
* Method isRootFirst.
* @return boolean
*/
public boolean isRootFirst()
{
return rootFirst;
}
/**
* Method getSeparator.
* @return String
*/
public String getSeparator()
{
return separator;
}
/* (non-Javadoc)
* @see edu.stanford.rt.datatype.SimpleType#isValidValue(DataValue)
*/
public boolean isValidValue(DataValue v)
{
if (!(v instanceof TreeValue))
return false;
return true;
}
/* (non-Javadoc)
* @see edu.stanford.rt.datatype.DataType#toString(String)
*/
public String toString(String indent)
{
String thisIndent = indent + " ";
StringBuffer sb = new StringBuffer();
sb
.append(thisIndent)
.append("TreeType: ")
.append(getName())
.append(" ")
.append("separator=")
.append(separator)
.append(" ")
.append("order=")
.append(rootFirst ? "rootFirst" : "leafFirst")
.append("\n");
return sb.toString();
}
}