CRM-14370 - API Kernel - Extract createRequest()
authorTim Otten <totten@civicrm.org>
Mon, 24 Mar 2014 22:47:04 +0000 (15:47 -0700)
committerTim Otten <totten@civicrm.org>
Sun, 6 Apr 2014 04:16:01 +0000 (21:16 -0700)
Civi/API/Kernel.php

index ed13ecb28052385128bf77a3507dfd9195a5f62f..2ab5acc6b67d75b56b2bb7f707926503395925f8 100644 (file)
@@ -31,7 +31,6 @@ use Civi\API\Event\PrepareEvent;
 use Civi\API\Event\ExceptionEvent;
 use Civi\API\Event\RespondEvent;
 
-
 /**
  *
  * @package Civi
@@ -67,13 +66,7 @@ class Kernel {
    * @return array|int
    */
   public function run($entity, $action, $params, $extra) {
-    $apiRequest = array();
-    $apiRequest['entity'] = \CRM_Utils_String::munge($entity);
-    $apiRequest['action'] = \CRM_Utils_String::munge($action);
-    $apiRequest['version'] = civicrm_get_api_version($params);
-    $apiRequest['params'] = $params;
-    $apiRequest['extra'] = $extra;
-    $apiRequest['fields'] = NULL;
+    $apiRequest = $this->createRequest($entity, $action, $params, $extra);
 
     try {
       if (!is_array($params)) {
@@ -129,6 +122,26 @@ class Kernel {
 
   }
 
+  /**
+   * Create a formatted/normalized request object.
+   *
+   * @param string $entity
+   * @param string $action
+   * @param array $params
+   * @param mixed $extra
+   * @return array the request descriptor
+   */
+  public function createRequest($entity, $action, $params, $extra) {
+    $apiRequest = array();
+    $apiRequest['entity'] = \CRM_Utils_String::munge($entity);
+    $apiRequest['action'] = \CRM_Utils_String::munge($action);
+    $apiRequest['version'] = civicrm_get_api_version($params);
+    $apiRequest['params'] = $params;
+    $apiRequest['extra'] = $extra;
+    $apiRequest['fields'] = NULL;
+    return $apiRequest;
+  }
+
   public function boot() {
     require_once ('api/v3/utils.php');
     require_once 'api/Exception.php';