:SqlManager */ protected $sqlManager; /** * Variable for the serialazarion manager of the api * @var :SqlManager */ protected $serialManager; /** * Variable for the contentype of XML * @var string */ protected static $contentypeXML = "application/xml;charset=utf-8"; /** * Variable for the contentype of Json * @var string */ protected static $contentypeJson = "application/json;charset=utf-8"; /** * Variable for the regex−string to search json-contenttype * @var string */ private static $jsonRegStr = '/json/'; /** * Keyword for the accept parameter of the requestheader * @var string */ private static $keyReqHeaderAccept = "Accept"; /** * Constructor * @param array[assoc] $headers - RequestHeader */ public function __construct($headers = array()) { $this->connect(); parent::__construct(); // set content type if ($headers && array_key_exists(self::$keyReqHeaderAccept, $headers) && preg_match(self::$jsonRegStr, $headers[self::$keyReqHeaderAccept])) { $this->serialManager = new \utiliy\JsonManager(); $this->contentType(self::$contentypeJson); } else { $this->serialManager = new \utiliy\XmlManager(); $this->contentType(self::$contentypeXML); } } /** * Default-DeConstructor */ public function __destruct() { // destroy the sqlManager $this->sqlManager->closeConnection(); unset($this->sqlManager); unset($this->serialManager); } /** * Method start a connection to the database */ public function connect() { $this->sqlManager->connect(); } } ?>