package org.agnitas.emm.springws.endpoint.mailing; import javax.annotation.Resource; import org.agnitas.emm.core.mailing.service.MailingModel; import org.agnitas.emm.core.mailing.service.MailingService; import org.agnitas.emm.springws.endpoint.Utils; import org.agnitas.emm.springws.jaxb.AddMailingRequest; import org.agnitas.emm.springws.jaxb.AddMailingResponse; import org.agnitas.emm.springws.jaxb.ObjectFactory; import org.agnitas.emm.springws.jaxb.AddMailingRequest.TargetIDList; import org.agnitas.emm.springws.jaxb.SendMailingRequest; import org.agnitas.emm.springws.jaxb.SendMailingResponse; import org.springframework.ws.server.endpoint.AbstractMarshallingPayloadEndpoint; public class SendMailingEndpoint extends AbstractMarshallingPayloadEndpoint { @Resource private MailingService mailingService; @Resource private ObjectFactory objectFactory; @Override protected Object invokeInternal(Object arg0) throws Exception { SendMailingRequest request = (SendMailingRequest) arg0; MailingModel model = new MailingModel(); model.setCompanyId(Utils.getUserCompany()); model.setMailingId(request.getMailingID()); model.setMaildropStatus(request.getRecipientsType()); model.setSendDate(request.getSendDate()); model.setBlocksize(request.getBlocksize()); model.setStepping(request.getStepping()); mailingService.sendMailing(model); return objectFactory.createSendMailingResponse(); } }