summaryrefslogtreecommitdiffstats
path: root/dom/presentation/interfaces/nsIPresentationControlService.idl
diff options
context:
space:
mode:
Diffstat (limited to 'dom/presentation/interfaces/nsIPresentationControlService.idl')
-rw-r--r--dom/presentation/interfaces/nsIPresentationControlService.idl156
1 files changed, 0 insertions, 156 deletions
diff --git a/dom/presentation/interfaces/nsIPresentationControlService.idl b/dom/presentation/interfaces/nsIPresentationControlService.idl
deleted file mode 100644
index d4b967b00..000000000
--- a/dom/presentation/interfaces/nsIPresentationControlService.idl
+++ /dev/null
@@ -1,156 +0,0 @@
-/* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this file,
- * You can obtain one at http://mozilla.org/MPL/2.0/. */
-
-#include "nsISupports.idl"
-
-interface nsIPresentationControlChannel;
-
-%{C++
-#define PRESENTATION_CONTROL_SERVICE_CONTACT_ID \
- "@mozilla.org/presentation/control-service;1"
-%}
-
-/*
- * The device information required for establishing control channel.
- */
-[scriptable, uuid(296fd171-e4d0-4de0-99ff-ad8ed52ddef3)]
-interface nsITCPDeviceInfo: nsISupports
-{
- readonly attribute AUTF8String id;
- readonly attribute AUTF8String address;
- readonly attribute uint16_t port;
- // SHA-256 fingerprint of server certificate. Empty string represents
- // server doesn't support TLS or not available.
- readonly attribute AUTF8String certFingerprint;
-};
-
-[scriptable, uuid(09bddfaf-fcc2-4dc9-b33e-a509a1c2fb6d)]
-interface nsIPresentationControlServerListener: nsISupports
-{
- /**
- * Callback while the server is ready or restarted.
- * @param aPort
- * The port of the server socket.
- * @param aCertFingerprint
- * The SHA-256 fingerprint of TLS server certificate.
- * Empty string represents server started without encryption.
- */
- void onServerReady(in uint16_t aPort, in AUTF8String aCertFingerprint);
-
- /**
- * Callback while the server is stopped or fails to start.
- * @param aResult
- * The error cause of server stopped or the reason of
- * start failure.
- * NS_OK means the server is stopped by close.
- */
- void onServerStopped(in nsresult aResult);
-
- /**
- * Callback while the remote host is requesting to start a presentation session.
- * @param aDeviceInfo The device information related to the remote host.
- * @param aUrl The URL requested to open by remote device.
- * @param aPresentationId The Id for representing this session.
- * @param aControlChannel The control channel for this session.
- */
- void onSessionRequest(in nsITCPDeviceInfo aDeviceInfo,
- in DOMString aUrl,
- in DOMString aPresentationId,
- in nsIPresentationControlChannel aControlChannel);
-
- /**
- * Callback while the remote host is requesting to terminate a presentation session.
- * @param aDeviceInfo The device information related to the remote host.
- * @param aPresentationId The Id for representing this session.
- * @param aControlChannel The control channel for this session.
- * @param aIsFromReceiver true if termination is initiated by receiver.
- */
- void onTerminateRequest(in nsITCPDeviceInfo aDeviceInfo,
- in DOMString aPresentationId,
- in nsIPresentationControlChannel aControlChannel,
- in boolean aIsFromReceiver);
-
- /**
- * Callback while the remote host is requesting to reconnect a presentation session.
- * @param aDeviceInfo The device information related to the remote host.
- * @param aUrl The URL requested to open by remote device.
- * @param aPresentationId The Id for representing this session.
- * @param aControlChannel The control channel for this session.
- */
- void onReconnectRequest(in nsITCPDeviceInfo aDeviceInfo,
- in DOMString url,
- in DOMString aPresentationId,
- in nsIPresentationControlChannel aControlChannel);
-};
-
-/**
- * Presentation control service which can be used for both presentation
- * control client and server.
- */
-[scriptable, uuid(55d6b605-2389-4aae-a8fe-60d4440540ea)]
-interface nsIPresentationControlService: nsISupports
-{
- /**
- * This method initializes server socket. Caller should set listener and
- * monitor onServerReady event to get the correct server info.
- * @param aEncrypted
- * True for using TLS control channel.
- * @param aPort
- * The port of the server socket. Pass 0 or opt-out to indicate no
- * preference, and a port will be selected automatically.
- * @throws NS_ERROR_FAILURE if the server socket has been inited or the
- * server socket can not be inited.
- */
- void startServer(in boolean aEncrypted, [optional] in uint16_t aPort);
-
- /**
- * Request connection to designated remote presentation control receiver.
- * @param aDeviceInfo
- * The remtoe device info for establish connection.
- * @returns The control channel for this session.
- * @throws NS_ERROR_FAILURE if the Id hasn't been inited.
- */
- nsIPresentationControlChannel connect(in nsITCPDeviceInfo aDeviceInfo);
-
- /**
- * Check the compatibility to remote presentation control server.
- * @param aVersion
- * The version of remote server.
- */
- boolean isCompatibleServer(in uint32_t aVersion);
-
- /**
- * Close server socket and call |listener.onClose(NS_OK)|
- */
- void close();
-
- /**
- * Get the listen port of the TCP socket, valid after the server is ready.
- * 0 indicates the server socket is not ready or is closed.
- */
- readonly attribute uint16_t port;
-
- /**
- * The protocol version implemented by this server.
- */
- readonly attribute uint32_t version;
-
- /**
- * The id of the TCP presentation server. |requestSession| won't
- * work until the |id| is set.
- */
- attribute AUTF8String id;
-
- /**
- * The fingerprint of the TLS server certificate.
- * Empty string indicates the server is not ready or not encrypted.
- */
- attribute AUTF8String certFingerprint;
-
- /**
- * The listener for handling events of this presentation control server.
- * Listener must be provided before invoke |startServer| and |close|.
- */
- attribute nsIPresentationControlServerListener listener;
-};