1 package nl.hippo.cms.workflows.multiplesitessite; 2 3 import com.opensymphony.module.propertyset.PropertySet; 4 import com.opensymphony.workflow.WorkflowException; 5 import java.text.DateFormat ; 6 import java.text.SimpleDateFormat ; 7 import java.util.Date ; 8 import java.util.Map ; 9 import nl.hippo.cms.workflows.shared.DateUtil; 10 import nl.hippo.cms.workflows.shared.FunctionProviderComponent; 11 import nl.hippo.cms.workflows.shared.WorkflowExtensionUtil; 12 13 public class StorePublicationDateForScheduledPublicationFunction extends FunctionProviderComponent 14 { 15 16 public StorePublicationDateForScheduledPublicationFunction() 17 { 18 super(); 19 } 20 21 public void executeImpl(Map transientVars, Map args, PropertySet ps) throws WorkflowException 22 { 23 DateFormat df = new SimpleDateFormat ("yyyyMMddHHmm"); 24 String publicationDateMode = (String ) transientVars.get("publicationDateMode"); 25 Date publicationDate; 26 if (publicationDateMode.equals("now")) 27 { 28 publicationDate = DateUtil.createToday(); 29 } 30 else 31 { 32 publicationDate = WorkflowExtensionUtil.getDateAndTime(transientVars.get("publicationDate")); 33 } 34 ps.setString("publicationDate", df.format(publicationDate)); 35 36 String unpublicationDateMode = (String ) transientVars.get("unpublicationDateMode"); 37 if (unpublicationDateMode.equals("never")) 38 { 39 ps.remove("unpublicationDate"); 40 } 41 else 42 { 43 Date unpublicationDate = WorkflowExtensionUtil.getDateAndTime(transientVars.get("unpublicationDate")); 44 ps.setString("unpublicationDate", df.format(unpublicationDate)); 45 } 46 } 47 48 } | Popular Tags |