Package com.gentics.cr.util

Source Code of com.gentics.cr.util.PluggableActionCaller

package com.gentics.cr.util;

import java.util.HashMap;
import java.util.Iterator;

import org.apache.log4j.Logger;

import com.gentics.api.portalnode.action.PluggableActionInvoker;
import com.gentics.api.portalnode.action.PluggableActionRequest;
import com.gentics.api.portalnode.action.PluggableActionResponse;

/**
*
* Last changed: $Date: 2010-04-01 15:24:41 +0200 (Do, 01 Apr 2010) $
* @version $Revision: 543 $
* @author $Author: supnig@constantinopel.at $
*
*/
public class PluggableActionCaller {

  private static Logger log = Logger.getLogger(PluggableActionCaller.class);

  /**
   * Static Class helps you to call PluggableActions from Java
   * @param pluggableActionName Name of the Pluggable Action see http://www.gentics.com/help/ for valid Pluggable Actions
   * @param parameters Hashmap with parameters for the Pluggable Action
   * @return returns response, see response.getFeedbackParameters() and response.getFeedbackMessage() for details on errors.
   */

  public static PluggableActionResponse call(String pluggableActionName, HashMap<String, Object> parameters) {
    log.debug("PluggableAction " + pluggableActionName + " start");
    PluggableActionRequest request = PluggableActionInvoker.createRequestObject();
    PluggableActionResponse response = PluggableActionInvoker.createResponseObject();
    Iterator<String> keyIterator = parameters.keySet().iterator();
    while (keyIterator.hasNext()) {
      String key = keyIterator.next();
      request.setParameter(key, parameters.get(key));
    }
    boolean sucess = PluggableActionInvoker.invokeAction(pluggableActionName, request, response);
    if (sucess == false) {
      log.error("PluggableAction " + pluggableActionName + " wasn't finished sucessfull. Returned false.");
    } else {
      log.debug("PluggableAction " + pluggableActionName + " was finished sucessfull. Returned true.");
    }
    return response;
  }

}
TOP

Related Classes of com.gentics.cr.util.PluggableActionCaller

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.