public function getData(kHttpNotificationDispatchJobData $jobData = null)
 {
     $coreObject = unserialize($this->coreObject);
     $apiObject = new $this->apiObjectType();
     /* @var $apiObject KalturaObject */
     $apiObject->fromObject($coreObject);
     $httpNotificationTemplate = EventNotificationTemplatePeer::retrieveByPK($jobData->getTemplateId());
     $notification = new KalturaHttpNotification();
     $notification->object = $apiObject;
     $notification->eventObjectType = kPluginableEnumsManager::coreToApi('EventNotificationEventObjectType', $httpNotificationTemplate->getObjectType());
     $notification->eventNotificationJobId = $jobData->getJobId();
     $notification->templateId = $httpNotificationTemplate->getId();
     $notification->templateName = $httpNotificationTemplate->getName();
     $notification->templateSystemName = $httpNotificationTemplate->getSystemName();
     $notification->eventType = $httpNotificationTemplate->getEventType();
     $data = '';
     switch ($this->format) {
         case KalturaResponseType::RESPONSE_TYPE_XML:
             $serializer = new KalturaXmlSerializer($this->ignoreNull);
             $data = '<notification>' . $serializer->serialize($notification) . '</notification>';
             break;
         case KalturaResponseType::RESPONSE_TYPE_PHP:
             $serializer = new KalturaPhpSerializer($this->ignoreNull);
             $data = $serializer->serialize($notification);
             break;
         case KalturaResponseType::RESPONSE_TYPE_JSON:
             $serializer = new KalturaJsonSerializer($this->ignoreNull);
             $data = $serializer->serialize($notification);
             break;
     }
     return "data={$data}";
 }
 public function serializeResponse($object, $ignoreNull = false)
 {
     $start = microtime(true);
     KalturaLog::debug("Serialize start");
     $format = isset($this->params["format"]) ? $this->params["format"] : KalturaResponseType::RESPONSE_TYPE_XML;
     switch ($format) {
         case KalturaResponseType::RESPONSE_TYPE_XML:
             header("Content-Type: text/xml");
             $serializer = new KalturaXmlSerializer($ignoreNull);
             $serializer->serialize($object);
             echo '<?xml version="1.0" encoding="utf-8"?>';
             echo "<xml>";
             echo "<result>";
             echo $serializer->getSerializedData();
             echo "</result>";
             echo "<executionTime>" . ($this->end - $this->start) . "</executionTime>";
             echo "</xml>";
             break;
         case KalturaResponseType::RESPONSE_TYPE_PHP:
             $serializer = new KalturaPhpSerializer($ignoreNull);
             $serializer->serialize($object);
             echo $serializer->getSerializedData();
             break;
         case KalturaResponseType::RESPONSE_TYPE_JSON:
             header("Content-Type: application/json");
             $serializer = new KalturaJsonSerializer($ignoreNull);
             $serializer->serialize($object);
             echo $serializer->getSerializedData();
             break;
         case KalturaResponseType::RESPONSE_TYPE_JSONP:
             $callback = isset($_GET["callback"]) ? $_GET["callback"] : null;
             if (is_null($callback)) {
                 die("Expecting \"callback\" parameter for jsonp format");
             }
             header("Content-Type: application/javascript");
             $serializer = new KalturaJsonSerializer($ignoreNull);
             $serializer->serialize($object);
             $response = array();
             echo $callback, "(", $serializer->getSerializedData(), ");";
             break;
     }
     KalturaLog::debug("Serialize took - " . (microtime(true) - $start));
 }