/** * Indicates if the backend has a ChangesSink. * A sink is an active notification mechanism which does not need polling. * Since Zarafa 7.0.5 such a sink is available. * The Zarafa backend uses this method to initialize the sink with mapi. * * @access public * @return boolean */ public function HasChangesSink() { if (!$this->notifications) { ZLog::Write(LOGLEVEL_DEBUG, "ZarafaBackend->HasChangesSink(): sink is not available"); return false; } $this->changesSink = @mapi_sink_create(); if (!$this->changesSink || mapi_last_hresult()) { ZLog::Write(LOGLEVEL_WARN, sprintf("ZarafaBackend->HasChangesSink(): sink could not be created with 0x%X", mapi_last_hresult())); return false; } ZLog::Write(LOGLEVEL_DEBUG, "ZarafaBackend->HasChangesSink(): created"); // advise the main store and also to check if the connection supports it return $this->adviseStoreToSink($this->defaultstore); }
/** * Indicates if the backend has a ChangesSink. * A sink is an active notification mechanism which does not need polling. * Since Zarafa 7.0.5 such a sink is available. * The Zarafa backend uses this method to initialize the sink with mapi. * * @access public * @return boolean */ public function HasChangesSink() { if (!$this->notifications) { ZLog::Write(LOGLEVEL_DEBUG, "ZarafaBackend->HasChangesSink(): sink is not available"); return false; } $this->changesSink = @mapi_sink_create(); if (!$this->changesSink) { ZLog::Write(LOGLEVEL_DEBUG, "ZarafaBackend->HasChangesSink(): sink could not be created"); return false; } ZLog::Write(LOGLEVEL_DEBUG, "ZarafaBackend->HasChangesSink(): created"); return true; }