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.AddTemplateRequest; import org.agnitas.emm.springws.jaxb.AddTemplateResponse; import org.agnitas.emm.springws.jaxb.ObjectFactory; import org.agnitas.emm.springws.jaxb.AddTemplateRequest.TargetIDList; import org.springframework.ws.server.endpoint.AbstractMarshallingPayloadEndpoint; public class AddTemplateEndpoint extends AbstractMarshallingPayloadEndpoint { @Resource private MailingService mailingService; @Resource private ObjectFactory objectFactory; @Override protected Object invokeInternal(Object arg0) throws Exception { AddTemplateRequest request = (AddTemplateRequest) arg0; MailingModel model = new MailingModel(); model.setCompanyId(Utils.getUserCompany()); model.setShortname(request.getShortname()); model.setDescription(request.getDescription()); model.setMailinglistId(request.getMailinglistID()); TargetIDList targetIDList = request.getTargetIDList(); if (targetIDList != null) { model.setTargetIDList(targetIDList.getTargetID()); } model.setTargetMode(request.getMatchTargetGroups()); model.setMailingType(request.getMailingType()); model.setSubject(request.getSubject()); model.setSenderName(request.getSenderName()); model.setSenderAddress(request.getSenderAddress()); model.setReplyToName(request.getReplyToName()); model.setReplyToAddress(request.getReplyToAddress()); model.setCharset(request.getCharset()); model.setLinefeed(request.getLinefeed()); model.setFormatString(request.getFormat()); model.setOnePixelString(request.getOnePixel()); // model.setAutoUpdate(request.isAutoUpdate()); model.setTemplate(true); AddTemplateResponse response = objectFactory.createAddTemplateResponse(); response.setTemplateID(mailingService.addMailing(model)); return response; } }