Add event source to the public api
This commit is contained in:
parent
54c918fe48
commit
dad53180bc
|
@ -12,7 +12,7 @@
|
||||||
*
|
*
|
||||||
* use server side events with caution, to many open requests can hang the server
|
* use server side events with caution, to many open requests can hang the server
|
||||||
*/
|
*/
|
||||||
class OC_EventSource {
|
class OC_EventSource implements \OCP\IEventSource {
|
||||||
/**
|
/**
|
||||||
* @var bool
|
* @var bool
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -492,4 +492,13 @@ class Server extends SimpleContainer implements IServerContainer {
|
||||||
}
|
}
|
||||||
return new CertificateManager($user);
|
return new CertificateManager($user);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns a search instance
|
||||||
|
*
|
||||||
|
* @return \OCP\IEventSource
|
||||||
|
*/
|
||||||
|
function getEventSource() {
|
||||||
|
return new \OC_EventSource();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,32 @@
|
||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* Copyright (c) 2014 Robin Appelman <icewind@owncloud.com>
|
||||||
|
* This file is licensed under the Affero General Public License version 3 or
|
||||||
|
* later.
|
||||||
|
* See the COPYING-README file.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace OCP;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* wrapper for server side events (http://en.wikipedia.org/wiki/Server-sent_events)
|
||||||
|
* includes a fallback for older browsers and IE
|
||||||
|
*
|
||||||
|
* use server side events with caution, to many open requests can hang the server
|
||||||
|
*/
|
||||||
|
interface IEventSource {
|
||||||
|
/**
|
||||||
|
* send a message to the client
|
||||||
|
*
|
||||||
|
* @param string $type
|
||||||
|
* @param mixed $data
|
||||||
|
*
|
||||||
|
* if only one parameter is given, a typeless message will be send with that parameter as data
|
||||||
|
*/
|
||||||
|
public function send($type, $data = null);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* close the connection of the event source
|
||||||
|
*/
|
||||||
|
public function close();
|
||||||
|
}
|
|
@ -235,4 +235,11 @@ interface IServerContainer {
|
||||||
* @return \OCP\ICertificateManager
|
* @return \OCP\ICertificateManager
|
||||||
*/
|
*/
|
||||||
function getCertificateManager($user = null);
|
function getCertificateManager($user = null);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns a search instance
|
||||||
|
*
|
||||||
|
* @return \OCP\IEventSource
|
||||||
|
*/
|
||||||
|
function getEventSource();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue