public ITicketActivityHandler getTicketActivityHandler(IDataProcessingProvider dataProcessingProvider, AbstractTicketParam ticketParams) { ITicketActivityHandler ticketActivityInstance = getInstance(dataProcessingProvider, ticketParams); if (ticketActivityInstance != null) { return(ticketActivityInstance); } throw new Exception(String.Format(" {0} cannot be found to instance. Please make sure that it have been registered", ticketParams.ActivityCode)); }
public object takeAction(ITicketDataParser ticketDataParser, IActivityMessageHandler moreActMsgHandler) { var ticketParam = ticketDataParser.parse(); ITicketActivityHandler acitivity = TicketActivityFactoryImpl.getInstance().getTicketActivityHandler(dataProcessingProvider, ticketParam); IActivityMessageHandler actMsgHandler = new ActivityMessageHandler(dataProcessingProvider); acitivity.addActMsgHandler(actMsgHandler); if (moreActMsgHandler != null) { acitivity.addActMsgHandler(moreActMsgHandler); } if (ticketDataParser.getActivityDto() != null) { acitivity.addActMsgHandler(new K2ActionHandlers(ticketEnquiry, ticketDataParser.getActivityDto().CurrUser)); } acitivity.setNotifyHandler(new TicketNotifyHander(dataProcessingProvider)); var tran = this.unitOfWork.begin(); try { acitivity.takeAction(); unitOfWork.commit(tran); } catch (Exception e) { unitOfWork.rollBack(tran); logger.Error(e); throw e; } var message = ((ITicketMessaging)actMsgHandler).getMessage(); return(message); }