/*
- * Copyright (C) 2001, 2002 The Mir-coders group
+ * Copyright (C) 2001-2006 The Mir-coders group
*
* This file is part of Mir.
*
*
* In addition, as a special exception, The Mir-coders gives permission to link
* the code of this program with any library licensed under the Apache Software License,
- * The Sun (tm) Java Advanced Imaging library (JAI), The Sun JIMI library
- * (or with modified versions of the above that use the same license as the above),
* and distribute linked combinations including the two. You must obey the
* GNU General Public License in all respects for all of the code used other than
* the above mentioned libraries. If you modify this file, you may extend this
*/
package mir.producer;
-import java.util.Iterator;
+import java.util.List;
import java.util.Map;
+/**
+ *
+ */
public interface ProducerFactory {
public interface ProducerVerb {
String getName();
String getDescription();
}
+ /**
+ * The identifying name of the factory
+ */
public String getName();
+
+ /**
+ * Returns <code>true</code> if <code>aVerb</code> is a valid verb for this factory
+ */
public boolean allowVerb(String aVerb);
+ /**
+ * Instantiates a producer based on the supplied verb
+ */
public Producer makeProducer(String aVerb, Map aStartingValues) throws ProducerFailure, ProducerExc;
- public Iterator verbs(); /* returns ProducerVerbs */
+
+ /**
+ * The set of pre-defined verbs. Returns a <code>List</code> of {@link ProducerVerb}s
+ */
+ public List verbs();
}