package com.formulasearchengine.mathosphere.basex.types;
import com.thoughtworks.xstream.annotations.XStreamAlias;
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
import com.thoughtworks.xstream.annotations.XStreamImplicit;
import com.thoughtworks.xstream.annotations.XStreamOmitField;
import java.util.ArrayList;
import java.util.List;
/**
* Stores results in NTCIR format.
*
* @author Tobias Uhlich
* @author Thanh Phuong Luu
*/
@XStreamAlias("results")
public class Results {
@XStreamImplicit
private List<Run> runs;
@XStreamAlias("xmlns")
@XStreamAsAttribute
private String xmlns="http://ntcir-math.nii.ac.jp/";
@XStreamOmitField
private boolean showTime = true;
public Results() {
this.runs = new ArrayList<>();
//hack b/c xstream does not support default values
this.xmlns = xmlns;
}
public Results( List<Run> runs ) {
this.runs = new ArrayList<>( runs );
this.xmlns = xmlns;
}
public void setShowTime( boolean showTime ) {
this.showTime = showTime;
if ( runs != null ) {
for ( final Run run : runs ) {
run.setShowTime( showTime );
}
}
}
public boolean getShowTime() {
return this.showTime;
}
public void addRun( Run run ) {
run.setShowTime( showTime );
this.runs.add( run );
}
public void setRuns( List<Run> runs ) {
this.runs = new ArrayList<>( runs );
for ( final Run run : runs ) {
run.setShowTime( showTime );
}
}
public List<Run> getRuns() {
return runs;
}
public int getNumRuns() {
return runs.size();
}
}