package org.fireflow.service.jdbc.query; import org.fireflow.client.WorkflowSession; import org.fireflow.engine.context.RuntimeContext; import org.fireflow.engine.entity.runtime.ActivityInstance; import org.fireflow.engine.exception.ServiceInvocationException; import org.fireflow.engine.invocation.ServiceInvoker; import org.fireflow.engine.invocation.impl.AbsServiceInvoker; import org.fireflow.model.binding.ServiceBinding; import org.fireflow.model.servicedef.ServiceDef; import org.w3c.dom.Document; public class DBQueryInvoker extends AbsServiceInvoker implements ServiceInvoker { public String getServiceType() { return null; } @Override protected Object getServiceObject(RuntimeContext runtimeContext, WorkflowSession session, ActivityInstance activityInstance, ServiceBinding serviceBinding,ServiceDef svc,Object activity) throws ServiceInvocationException { DBQueryServiceDef dbQueryService = (DBQueryServiceDef)svc; DBQueryImpl dbQueryImpl = new DBQueryImpl(); dbQueryImpl.setDBQueryService(dbQueryService); return dbQueryImpl; } @Override protected Class[] getParameterTypes(Class serviceClass, String methodName, Object[] params) throws ServiceInvocationException { Class[] paramTypes = new Class[1]; paramTypes[0] = Document.class; return paramTypes; } }