/* * 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 client application component. /// public interface IClientHost : ICommunicationHost { /// /// The token used for initial authentication with the runtime. /// Guid AuthenticationToken { set; } /// /// Indicates whether the runtime has established a connection to this host. /// bool IsConnected { get; } /// /// Event fired when the runtime requests a server exam selection from the user. /// event CommunicationEventHandler ExamSelectionRequested; /// /// Event fired when the runtime requests a message box input from the user. /// event CommunicationEventHandler MessageBoxRequested; /// /// Event fired when the runtime requests a password input from the user. /// event CommunicationEventHandler PasswordRequested; /// /// Event fired when the runtime aborted a reconfiguration. /// event CommunicationEventHandler ReconfigurationAborted; /// /// Event fired when the runtime denied a reconfiguration request. /// event CommunicationEventHandler ReconfigurationDenied; /// /// Event fired when the runtime disconnected from the client. /// event CommunicationEventHandler RuntimeDisconnected; /// /// Event fired when the runtime requests a server failure action selection from the user. /// event CommunicationEventHandler ServerFailureActionRequested; /// /// Event fired when the runtime commands the client to shutdown. /// event CommunicationEventHandler Shutdown; } }