/* * Copyright (c) 2024 ETH Zürich, IT Services * * 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/. */ using System; using SafeExamBrowser.Communication.Contracts.Events; namespace SafeExamBrowser.Communication.Contracts.Hosts { /// /// Defines the functionality of the communication host for the runtime application component. /// public interface IRuntimeHost : ICommunicationHost { /// /// Determines whether another application component may establish a connection with the host. /// bool AllowConnection { get; set; } /// /// The token used for initial authentication. /// Guid? AuthenticationToken { set; } /// /// Event fired when the client disconnected from the runtime. /// event CommunicationEventHandler ClientDisconnected; /// /// Event fired when the client has signaled that it is ready to operate. /// event CommunicationEventHandler ClientReady; /// /// Event fired when the client requested its configuration data. /// event CommunicationEventHandler ClientConfigurationNeeded; /// /// Event fired when the client submitted a server exam selection made by the user. /// event CommunicationEventHandler ExamSelectionReceived; /// /// Event fired when the client submitted a message box result chosen by the user. /// event CommunicationEventHandler MessageBoxReplyReceived; /// /// Event fired when the client submitted a password entered by the user. /// event CommunicationEventHandler PasswordReceived; /// /// Event fired when the client requested a reconfiguration of the application. /// event CommunicationEventHandler ReconfigurationRequested; /// /// Event fired when the client submitted a server failure action chosen by the user. /// event CommunicationEventHandler ServerFailureActionReceived; /// /// Event fired when the client requests to shut down the application. /// event CommunicationEventHandler ShutdownRequested; } }