1 package org.enhydra.shark.api.internal.toolagent;2 3 import org.enhydra.shark.api.SharkTransaction;4 import org.enhydra.shark.api.RootException;5 import org.enhydra.shark.api.internal.working.CallbackUtilities;6 import java.util.List ;7 8 /**9 * @author Sasa Bojanic10 * @author Vladimir Puskas11 */12 public interface ToolAgentFactory {13 void configure (CallbackUtilities cus) throws RootException;14 15 /**16 * Creates an instance of ToolAgent specified by its full class name.17 *18 * @param t a SharkTransaction19 * @param className a String20 *21 * @return a ToolAgent22 *23 * @throws RootException24 *25 */26 ToolAgent createToolAgent (SharkTransaction t,String className) throws RootException;27 28 /**29 * Gets the list of full class names of tool agent implementations that are30 * explicitly known by the implementation of the factory.31 *32 * @param t a SharkTransaction33 *34 * @return a List35 *36 * @throws RootException37 *38 */39 List getDefinedToolAgents (SharkTransaction t) throws RootException;40 41 }42