1 package nl.hippo.cms.workflows.reviewedactions; 2 3 import com.opensymphony.module.propertyset.PropertySet; 4 import com.opensymphony.workflow.WorkflowException; 5 import java.io.IOException ; 6 import java.util.HashSet ; 7 import java.util.Map ; 8 import java.util.Set ; 9 import nl.hippo.cms.Constants; 10 import nl.hippo.cms.workflows.shared.FunctionProviderComponent; 11 import nl.hippo.cms.workflows.shared.URIUtil; 12 import nl.hippo.cocoon.webdav.Property; 13 import nl.hippo.cocoon.webdav.WebDAVHelper; 14 import org.apache.commons.httpclient.HttpState; 15 16 public class StoreCreatorFunction extends FunctionProviderComponent 17 { 18 public StoreCreatorFunction() 19 { 20 super(); 21 } 22 23 public void executeImpl(final Map transientVars, Map args, PropertySet ps) 24 throws WorkflowException 25 { 26 String location = URIUtil.getHTTPURI((String ) transientVars.get("location")); 27 HttpState httpState = (HttpState) transientVars.get("httpstate"); 28 String user = ""; 29 try 30 { 31 user = WebDAVHelper.propfindAsString(location, Constants.CMS_1_0_NAMESPACE, 32 Constants.LAST_WORKFLOW_USER_PROPERTY_NAME, httpState); 33 } 34 catch (IOException e) 35 { 36 } 38 39 try 40 { 41 Set propertiesToSet = new HashSet (); 42 propertiesToSet.add(new Property("H", Constants.CMS_1_0_NAMESPACE, "createdBy", user)); 43 WebDAVHelper.proppatch(location, propertiesToSet, null, httpState); 44 } 45 catch (IOException e) 46 { 47 throw new WorkflowException(e); 48 } 49 } 50 } | Popular Tags |