/* ApplicationTaskManagerDescriptor.java created 2008-02-15 * */ package org.signalml.app.task; import java.io.Serializable; import java.util.ArrayList; import java.util.Iterator; import org.signalml.app.config.AbstractXMLConfiguration; import org.signalml.app.util.XMLUtils; import com.thoughtworks.xstream.XStream; import com.thoughtworks.xstream.annotations.Annotations; import com.thoughtworks.xstream.annotations.XStreamAlias; /** ApplicationTaskManagerDescriptor * * * @author Michal Dobaczewski © 2007-2008 CC Otwarte Systemy Komputerowe Sp. z o.o. */ @XStreamAlias("tasks") public class ApplicationTaskManagerDescriptor extends AbstractXMLConfiguration implements Serializable { private static final long serialVersionUID = 1L; private ArrayList<ApplicationTaskDescriptor> tasks; public ApplicationTaskManagerDescriptor() { tasks = new ArrayList<ApplicationTaskDescriptor>(); } public ApplicationTaskManagerDescriptor(ArrayList<ApplicationTaskDescriptor> tasks) { this.tasks = tasks; } public Iterator<ApplicationTaskDescriptor> taskIterator() { return tasks.iterator(); } @Override public String getStandardFilename() { return "tasks.xml"; } @Override public XStream getStreamer() { if (streamer == null) { streamer = createTaskManagerStreamer(); } return streamer; } private XStream createTaskManagerStreamer() { XStream streamer = XMLUtils.getDefaultStreamer(); Annotations.configureAliases( streamer, ApplicationTaskManagerDescriptor.class, ApplicationTaskDescriptor.class ); streamer.setMode(XStream.NO_REFERENCES); return streamer; } }