<?php namespace jards\eventsapiclient\Swagger\Client\Api; use jards\eventsapiclient\Swagger\Client\Model\Event; use jards\eventsapiclient\Swagger\Client\Api\EventsApi; class EventManagement{ /** * Send an event to a event receiver. * @param string $name name of the event * @param string $description description of the event * @param string $baseURL the root URL of the event receiver REST API * @param string $certFile path to certificate file to use or null to call URL without certificate * @param string $certKey path to certificate key file, null to avoid usage of key * @param string $certPassphrase path to passphrase file for key file, null for no passphrase * @param int $timeout time out in seconds until curl call is aborted * @param \jards\eventsapiclient\Swagger\Client\ApiException $exception output parameter, if exception occurs * * @return boolean true on success, false on error */ public function sendEvent($name, $description, $baseURL='http://localhost/myapps/EventsAPI/rest/events', $certFile = null, $certKey = null, $certPassphrase = null, $timeout = null, &$exception=null){ $event = new Event(); $event->setName($name); $event->setDescription($description); $event->setDate(new \DateTime()); return $this->sendEventObject($event, $baseURL, $certFile, $certKey, $certPassphrase, $timeout, $exception); } /** * Send an event according to swagger API model. * Prepare any event you like, then send it with this function. * * @param Event $eventObject the event object you would like to send * @param string $baseURL the root URL of the event receiver REST API * @param string $certFile path to certificate file to use or null to call URL without certificate * @param string $certKey path to certificate key file, null to avoid usage of key * @param string $certPassphrase path to passphrase file for key file, null for no passphrase * @param int $timeout time out in seconds until curl call is aborted * @param \jards\eventsapiclient\Swagger\Client\ApiException $exception output parameter, if exception occurs * * @return boolean true on success, false on error */ public function sendEventObject($eventObject, $baseURL='http://localhost/myapps/EventsAPI/rest/events', $certFile = null, $certKey = null, $certPassphrase = null, $timeout = null, &$exception=null){ date_default_timezone_set ( 'Europe/Amsterdam' ); $apiClient = new \jards\eventsapiclient\Swagger\Client\ApiClient (); $apiClient->getConfig ()->setHost ( $baseURL ); if(! empty($certFile)){ $apiClient->getConfig ()->setCertificate($certFile); } if(! empty($certKey)){ $apiClient->getConfig ()->setCertificateKey($certKey); } if(! empty($certPassphrase)){ $apiClient->getConfig ()->setCertificatePassphrase($certPassphrase); } if(! empty($timeout)){ $apiClient->getConfig()->setCurlConnectTimeout($timeout); } $eventsApi = new EventsApi($apiClient); try{ $eventsApi->eventsPost($eventObject); } catch(\jards\eventsapiclient\Swagger\Client\ApiException $e){ $exception = $e; return false; } return true; } } ?>