/* * 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.Data; namespace SafeExamBrowser.Communication.Contracts.Proxies { /// /// Defines the functionality for a proxy to the communication host of the runtime application component. /// public interface IRuntimeProxy : ICommunicationProxy { /// /// Retrieves the application configuration from the runtime. /// CommunicationResult GetConfiguration(); /// /// Informs the runtime that the client is ready. /// CommunicationResult InformClientReady(); /// /// Requests the runtime to shut down the application. /// CommunicationResult RequestShutdown(); /// /// Requests the runtime to reconfigure the application with the specified configuration. /// CommunicationResult RequestReconfiguration(string filePath, string url); /// /// Submits the result of a server exam selection previously requested by the runtime. If the procedure was aborted by the user, /// the selected exam identifier will be ! /// CommunicationResult SubmitExamSelectionResult(Guid requestId, bool success, string selectedExamId = default(string)); /// /// Submits the result of a message box input previously requested by the runtime. /// CommunicationResult SubmitMessageBoxResult(Guid requestId, int result); /// /// Submits the result of a password input previously requested by the runtime. If the procedure was aborted by the user, /// the password parameter will be ! /// CommunicationResult SubmitPassword(Guid requestId, bool success, string password = default(string)); /// /// Submits the result of a server failure action selection previously requested by the runtime. /// CommunicationResult SubmitServerFailureActionResult(Guid requestId, bool abort, bool fallback, bool retry); } }