package schedframe.scheduling; import java.io.StringWriter; import java.io.Writer; import org.qcg.broker.schemas.resreqs.Processes; import schedframe.scheduling.utils.ResourceParameterName; /** * * @author Marcin Krystek * */ public class ProcessesResourceRequirements extends AbstractResourceRequirements { protected AbstractProcesses processes; public ProcessesResourceRequirements(AbstractProcesses processes){ this.processes = processes; } public ProcessesResourceRequirements(org.qcg.broker.schemas.resreqs.Processes processes){ this.processes = new schedframe.scheduling.Processes(processes); } public double getParameterDoubleValue(ResourceParameterName parameterName) throws NoSuchFieldException, IllegalArgumentException { return this.processes.getParameterDoubleValue(parameterName); } public String getParameterStringValue(ResourceParameterName parameterName) throws NoSuchFieldException, IllegalArgumentException { return this.processes.getParameterStringValue(parameterName); } public int getProcessesCount(){ return this.processes.getProcessesCount(); } public Processes getDescription() { return this.resourceRequirements; } public String getDocument() throws Exception { Writer w = new StringWriter(); this.resourceRequirements.marshal(w); return w.toString(); } }