diff --git a/cmd/launcher/main.go b/cmd/launcher/main.go
index 06b34250..bca84f57 100644
--- a/cmd/launcher/main.go
+++ b/cmd/launcher/main.go
@@ -42,6 +42,10 @@ const (
appName = "Proton Mail Launcher"
configName = "bridge"
exeName = "proton-bridge"
+ guiName = "proton-bridge-gui"
+
+ FlagCLI = "--cli"
+ FlagLauncher = "--launcher"
)
func main() { //nolint:funlen
@@ -86,9 +90,15 @@ func main() { //nolint:funlen
versioner := versioner.New(updatesPath)
- exe, err := getPathToUpdatedExecutable(exeName, versioner, kr, reporter)
+ exeToLaunch := guiName
+ args := os.Args[1:]
+ if isCliMode(&args) {
+ exeToLaunch = exeName
+ }
+
+ exe, err := getPathToUpdatedExecutable(exeToLaunch, versioner, kr, reporter)
if err != nil {
- if exe, err = getFallbackExecutable(exeName, versioner); err != nil {
+ if exe, err = getFallbackExecutable(exeToLaunch, versioner); err != nil {
logrus.WithError(err).Fatal("Failed to find any launchable executable")
}
}
@@ -98,7 +108,7 @@ func main() { //nolint:funlen
logrus.WithError(err).Fatal("Failed to determine path to launcher")
}
- cmd := execabs.Command(exe, appendLauncherPath(launcher, os.Args[1:])...) //nolint:gosec
+ cmd := execabs.Command(exe, appendLauncherPath(launcher, args)...) //nolint:gosec
cmd.Stdin = os.Stdin
cmd.Stdout = os.Stdout
@@ -122,7 +132,7 @@ func appendLauncherPath(path string, args []string) []string {
hasFlag := false
for k, v := range res {
- if v != "--launcher" {
+ if v != FlagLauncher {
continue
}
@@ -136,12 +146,22 @@ func appendLauncherPath(path string, args []string) []string {
}
if !hasFlag {
- res = append(res, "--launcher", path)
+ res = append(res, FlagLauncher, path)
}
return res
}
+func isCliMode(args *[]string) bool {
+ for _, v := range *args {
+ if v == FlagCLI {
+ return true
+ }
+ }
+
+ return false
+}
+
func getPathToUpdatedExecutable(
name string,
versioner *versioner.Versioner,
diff --git a/internal/app/base/base.go b/internal/app/base/base.go
index 372f6c88..9dc5ec7e 100644
--- a/internal/app/base/base.go
+++ b/internal/app/base/base.go
@@ -93,10 +93,11 @@ type Base struct {
TLS *tls.TLS
Autostart *autostart.App
- Name string // the app's name
- usage string // the app's usage description
- command string // the command used to launch the app (either the exe path or the launcher path)
- restart bool // whether the app is currently set to restart
+ Name string // the app's name
+ usage string // the app's usage description
+ command string // the command used to launch the app (either the exe path or the launcher path)
+ restart bool // whether the app is currently set to restart
+ launcher string // launcher to be used if not set in args
teardown []func() error // actions to perform when app is exiting
}
@@ -322,6 +323,11 @@ func (b *Base) SetToRestart() {
b.restart = true
}
+func (b *Base) ForceLauncher(launcher string) {
+ b.launcher = launcher
+ b.setupLauncher(launcher)
+}
+
// AddTeardownAction adds an action to perform during app teardown.
func (b *Base) AddTeardownAction(fn func() error) {
b.teardown = append(b.teardown, fn)
@@ -335,10 +341,7 @@ func (b *Base) wrapMainLoop(appMainLoop func(*Base, *cli.Context) error) cli.Act
// If launcher was used to start the app, use that for restart
// and autostart.
if launcher := c.String(FlagLauncher); launcher != "" {
- b.command = launcher
- // Bridge supports no-window option which we should use
- // for autostart.
- b.Autostart.Exec = []string{launcher, "--" + FlagNoWindow}
+ b.setupLauncher(launcher)
}
if c.Bool(flagCPUProfile) {
@@ -402,3 +405,10 @@ func (b *Base) doTeardown() error {
return nil
}
+
+func (b *Base) setupLauncher(launcher string) {
+ b.command = launcher
+ // Bridge supports no-window option which we should use
+ // for autostart.
+ b.Autostart.Exec = []string{launcher, "--" + FlagNoWindow}
+}
diff --git a/internal/app/base/restart.go b/internal/app/base/restart.go
index ebfd0808..a7014d60 100644
--- a/internal/app/base/restart.go
+++ b/internal/app/base/restart.go
@@ -38,6 +38,10 @@ func (b *Base) restartApp(crash bool) error {
args = os.Args[1:]
}
+ if b.launcher != "" {
+ args = forceLauncherFlag(args, b.launcher)
+ }
+
logrus.
WithField("command", b.command).
WithField("args", args).
@@ -78,3 +82,29 @@ func incrementRestartFlag(args []string) []string {
return res
}
+
+// forceLauncherFlag replace or add the launcher args with the one set in the app.
+func forceLauncherFlag(args []string, launcher string) []string {
+ res := append([]string{}, args...)
+
+ hasFlag := false
+
+ for k, v := range res {
+ if v != "--launcher" {
+ continue
+ }
+
+ if k+1 >= len(res) {
+ continue
+ }
+
+ hasFlag = true
+ res[k+1] = launcher
+ }
+
+ if !hasFlag {
+ res = append(res, "--launcher", launcher)
+ }
+
+ return res
+}
diff --git a/internal/frontend/.gitignore b/internal/frontend/.gitignore
index 1619873b..13e783fc 100644
--- a/internal/frontend/.gitignore
+++ b/internal/frontend/.gitignore
@@ -9,8 +9,6 @@ rcc.qrc
rcc_cgo_*.go
*.qmlc
-# QtCreator env
-CMakeLists.txt.user
-
# Generated file
bridge-gui/Version.h
+bridge-gui/Config.h
diff --git a/internal/frontend/bridge-gui/BridgeMonitor.cpp b/internal/frontend/bridge-gui/BridgeMonitor.cpp
index 435ebd6e..d69bf8a1 100644
--- a/internal/frontend/bridge-gui/BridgeMonitor.cpp
+++ b/internal/frontend/bridge-gui/BridgeMonitor.cpp
@@ -34,7 +34,7 @@ QString const exeSuffix = ".exe";
QString const exeSuffix;
#endif
-QString const exeName = "bridge" + exeSuffix; ///< The bridge executable file name.
+QString const exeName = "proton-bridge" + exeSuffix; ///< The bridge executable file name.*
}
@@ -55,9 +55,10 @@ QString BridgeMonitor::locateBridgeExe()
/// \param[in] exePath The path of the Bridge executable.
/// \param[in] parent The parent object of the worker.
//****************************************************************************************************************************************************
-BridgeMonitor::BridgeMonitor(QString const &exePath, QObject *parent)
+BridgeMonitor::BridgeMonitor(QString const &exePath, QStringList const &args, QObject *parent)
: Worker(parent)
, exePath_(exePath)
+ , args_(args)
{
QFileInfo fileInfo(exePath);
if (!fileInfo.exists())
@@ -77,16 +78,23 @@ void BridgeMonitor::run()
emit started();
QProcess p;
- p.start(exePath_, QStringList());
+ p.start(exePath_, args_);
p.waitForStarted();
+ status_.running = true;
+ status_.pid = p.processId();
+
while (!p.waitForFinished(100))
{
// we discard output from bridge, it's logged to file on bridge side.
p.readAllStandardError();
p.readAllStandardOutput();
}
- emit processExited(p.exitCode());
+
+ status_.running = false;
+ status_.returnCode = p.exitCode();
+
+ emit processExited(status_.returnCode );
emit finished();
}
catch (Exception const &e)
@@ -94,3 +102,11 @@ void BridgeMonitor::run()
emit error(e.qwhat());
}
}
+
+//****************************************************************************************************************************************************
+/// \return status of the monitored process
+//****************************************************************************************************************************************************
+const BridgeMonitor::MonitorStatus& BridgeMonitor::getStatus()
+{
+ return status_;
+}
diff --git a/internal/frontend/bridge-gui/BridgeMonitor.h b/internal/frontend/bridge-gui/BridgeMonitor.h
index f3e1f640..948f4966 100644
--- a/internal/frontend/bridge-gui/BridgeMonitor.h
+++ b/internal/frontend/bridge-gui/BridgeMonitor.h
@@ -33,8 +33,14 @@ class BridgeMonitor: public bridgepp::Worker
public: // static member functions
static QString locateBridgeExe(); ///< Try to find the bridge executable path.
+ struct MonitorStatus {
+ bool running = false;
+ int returnCode = 0;
+ qint64 pid = 0;
+ };
+
public: // member functions.
- BridgeMonitor(QString const& exePath, QObject *parent); ///< Default constructor.
+ BridgeMonitor(QString const& exePath, QStringList const &args, QObject *parent); ///< Default constructor.
BridgeMonitor(BridgeMonitor const&) = delete; ///< Disabled copy-constructor.
BridgeMonitor(BridgeMonitor&&) = delete; ///< Disabled assignment copy-constructor.
~BridgeMonitor() override = default; ///< Destructor.
@@ -42,11 +48,14 @@ public: // member functions.
BridgeMonitor& operator=(BridgeMonitor&&) = delete; ///< Disabled move assignment operator.
void run() override; ///< Run the worker.
+ const MonitorStatus& getStatus();
signals:
- void processExited(int code); ///< Slot for the exiting of the process
+ void processExited(int code); ///< Slot for the exiting of the process.
private: // data members
QString const exePath_; ///< The path to the bridge executable.
+ QStringList args_; ///< arguments to be passed to the brigde.
+ MonitorStatus status_; ///< Status of the monitoring.
};
diff --git a/internal/frontend/bridge-gui/CMakeLists.txt b/internal/frontend/bridge-gui/CMakeLists.txt
index 45ce73c8..6bd5c6fe 100644
--- a/internal/frontend/bridge-gui/CMakeLists.txt
+++ b/internal/frontend/bridge-gui/CMakeLists.txt
@@ -34,6 +34,7 @@ else()
message(STATUS "Bridge version is ${BRIDGE_APP_VERSION}")
endif()
+configure_file(Version.h.in ${CMAKE_SOURCE_DIR}/Version.h)
if (APPLE) # On macOS, we have some Objective-C++ code in DockIcon to deal with the dock icon.
enable_language(OBJC OBJCXX)
endif()
@@ -90,7 +91,7 @@ add_executable(bridge-gui
QMLBackend.cpp QMLBackend.h
UserList.cpp UserList.h
${DOCK_ICON_SRC_FILE} DockIcon/DockIcon.h
- )
+ UserDirectories.h)
target_precompile_headers(bridge-gui PRIVATE Pch.h)
target_include_directories(bridge-gui PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
diff --git a/internal/frontend/bridge-gui/Config.h.in b/internal/frontend/bridge-gui/Config.h.in
new file mode 100644
index 00000000..db360297
--- /dev/null
+++ b/internal/frontend/bridge-gui/Config.h.in
@@ -0,0 +1,24 @@
+// Copyright (c) 2022 Proton AG
+//
+// This file is part of Proton Mail Bridge.
+//
+// Proton Mail Bridge is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// Proton Mail Bridge is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with Proton Mail Bridge. If not, see .
+
+
+#ifndef BRIDGE_GUI_CONFIG_H
+#define BRIDGE_GUI_CONFIG_H
+
+#cmakedefine ATTACH_MODE @ATTACH_MODE@
+
+#endif // BRIDGE_GUI_CONFIG_H
diff --git a/internal/frontend/bridge-gui/QMLBackend.cpp b/internal/frontend/bridge-gui/QMLBackend.cpp
index 21fbd80c..34e59a12 100644
--- a/internal/frontend/bridge-gui/QMLBackend.cpp
+++ b/internal/frontend/bridge-gui/QMLBackend.cpp
@@ -83,7 +83,7 @@ void QMLBackend::connectGrpcEvents()
// app events
connect(client, &GRPCClient::internetStatus, this, [&](bool isOn) { if (isOn) emit internetOn(); else emit internetOff(); });
connect(client, &GRPCClient::toggleAutostartFinished, this, &QMLBackend::toggleAutostartFinished);
- connect(client, &GRPCClient::resetFinished, this, &QMLBackend::resetFinished);
+ connect(client, &GRPCClient::resetFinished, this, &QMLBackend::onResetFinished);
connect(client, &GRPCClient::reportBugFinished, this, &QMLBackend::reportBugFinished);
connect(client, &GRPCClient::reportBugSuccess, this, &QMLBackend::bugReportSendSuccess);
connect(client, &GRPCClient::reportBugError, this, &QMLBackend::bugReportSendError);
@@ -220,7 +220,12 @@ void QMLBackend::quit()
void QMLBackend::restart()
{
app().grpc().restart();
- app().log().error("RESTART is not implemented"); /// \todo GODT-1671 implement restart.
+ app().grpc().quit();
+}
+
+void QMLBackend::forceLauncher(QString launcher)
+{
+ app().grpc().forceLauncher(launcher);
}
@@ -333,3 +338,12 @@ void QMLBackend::triggerReset()
{
app().grpc().triggerReset();
}
+
+//****************************************************************************************************************************************************
+//
+//****************************************************************************************************************************************************
+void QMLBackend::onResetFinished()
+{
+ emit resetFinished();
+ this->restart();
+}
\ No newline at end of file
diff --git a/internal/frontend/bridge-gui/QMLBackend.h b/internal/frontend/bridge-gui/QMLBackend.h
index 204b99c5..b31c3d40 100644
--- a/internal/frontend/bridge-gui/QMLBackend.h
+++ b/internal/frontend/bridge-gui/QMLBackend.h
@@ -150,11 +150,13 @@ public slots: // slot for signals received from QML -> To be forwarded to Bridge
void guiReady(); // _ func() `slot:"guiReady"`
void quit(); // _ func() `slot:"quit"`
void restart(); // _ func() `slot:"restart"`
+ void forceLauncher(QString launcher); // _ func() `slot:"forceLauncher"`
void checkUpdates(); // _ func() `slot:"checkUpdates"`
void installUpdate(); // _ func() `slot:"installUpdate"`
void triggerReset(); // _ func() `slot:"triggerReset"`
void reportBug(QString const &description, QString const& address, QString const &emailClient, bool includeLogs) {
app().grpc().reportBug(description, address, emailClient, includeLogs); } // _ func(description, address, emailClient string, includeLogs bool) `slot:"reportBug"`
+ void onResetFinished();
signals: // Signals received from the Go backend, to be forwarded to QML
void toggleAutostartFinished(); // _ func() `signal:"toggleAutostartFinished"`
diff --git a/internal/frontend/bridge-gui/UserDirectories.h b/internal/frontend/bridge-gui/UserDirectories.h
new file mode 100644
index 00000000..4a78767e
--- /dev/null
+++ b/internal/frontend/bridge-gui/UserDirectories.h
@@ -0,0 +1,79 @@
+//
+// Created by romain on 01/08/22.
+//
+
+#ifndef PROTON_BRIDGE_GUI_USERDIRECTORIES_H
+#define PROTON_BRIDGE_GUI_USERDIRECTORIES_H
+
+#include
+
+using namespace bridgepp;
+
+namespace UserDirectories {
+
+ QString const configFolder = "protonmail/bridge";
+
+//****************************************************************************************************************************************************
+/// \return user configuration directory used by bridge (based on Golang OS/File's UserConfigDir).
+//****************************************************************************************************************************************************
+ static const QString UserConfigDir()
+ {
+ QString dir;
+#ifdef Q_OS_WIN
+ dir = qgetenv ("AppData");
+ if (dir.isEmpty())
+ throw Exception("%AppData% is not defined.");
+#elif defined(Q_OS_IOS) || defined(Q_OS_DARWIN)
+ dir = qgetenv ("HOME");
+ if (dir.isEmpty())
+ throw Exception("$HOME is not defined.");
+ dir += "/Library/Application Support";
+#else
+ dir = qgetenv ("XDG_CONFIG_HOME");
+ if (dir.isEmpty())
+ dir = qgetenv ("HOME");
+ if (dir.isEmpty())
+ throw Exception("neither $XDG_CONFIG_HOME nor $HOME are defined");
+ dir += "/.config";
+#endif
+ QString folder = dir + "/" + configFolder;
+ QDir().mkpath(folder);
+
+ return folder;
+ }
+
+
+//****************************************************************************************************************************************************
+/// \return user configuration directory used by bridge (based on Golang OS/File's UserCacheDir).
+//****************************************************************************************************************************************************
+ static const QString UserCacheDir()
+ {
+ QString dir;
+
+#ifdef Q_OS_WIN
+ dir = qgetenv ("LocalAppData");
+ if (dir.isEmpty())
+ throw Exception("%LocalAppData% is not defined.");
+#elif defined(Q_OS_IOS) || defined(Q_OS_DARWIN)
+ dir = qgetenv ("HOME");
+ if (dir.isEmpty())
+ throw Exception("$HOME is not defined.");
+ dir += "/Library/Caches";
+#else
+ dir = qgetenv ("XDG_CACHE_HOME");
+ if (dir.isEmpty())
+ dir = qgetenv ("HOME");
+ if (dir.isEmpty())
+ throw Exception("neither XDG_CACHE_HOME nor $HOME are defined");
+ dir += "/.cache";
+#endif
+ QString folder = dir + "/" + configFolder;
+ QDir().mkpath(folder);
+
+ return folder;
+ }
+
+};
+
+
+#endif //PROTON_BRIDGE_GUI_USERDIRECTORIES_H
diff --git a/internal/frontend/bridge-gui/main.cpp b/internal/frontend/bridge-gui/main.cpp
index 23d55a29..a9e9d730 100644
--- a/internal/frontend/bridge-gui/main.cpp
+++ b/internal/frontend/bridge-gui/main.cpp
@@ -19,6 +19,7 @@
#include "QMLBackend.h"
#include "BridgeMonitor.h"
#include "Version.h"
+#include "UserDirectories.h"
#include
#include
@@ -26,6 +27,13 @@
using namespace bridgepp;
+namespace
+{
+ QString const launcherFlag = "--launcher"; ///< launcher flag parameter used for bridge.
+ QString const bridgeLock = "bridge-gui.lock"; ///< file name used for the lock file.
+}
+
+
//****************************************************************************************************************************************************
/// // initialize the Qt application.
//****************************************************************************************************************************************************
@@ -84,56 +92,94 @@ QQmlComponent *createRootQmlComponent(QQmlApplicationEngine &engine)
//****************************************************************************************************************************************************
-/// \param[in] exePath The path of the Bridge executable. If empty, the function will try to locate the bridge application.
+/// \param[in] lock The lock file to be checked.
+/// \return True if the lock can be taken, false otherwize.
//****************************************************************************************************************************************************
-void launchBridge(QString const &exePath)
+bool checkSingleInstance(QLockFile &lock)
+{
+ lock.setStaleLockTime(0);
+ if (!lock.tryLock())
+ {
+ qint64 pid;
+ QString hostname, appName, details;
+ if (lock.getLockInfo(&pid, &hostname, &appName))
+ details = QString("(PID : %1 - Host : %2 - App : %3)").arg(pid).arg(hostname, appName);
+
+ app().log().error(QString("Instance already exists %1 %2").arg(lock.fileName(), details));
+ return false;
+ }
+ else
+ {
+ app().log().info(QString("lock file created %1").arg(lock.fileName()));
+ }
+ return true;
+}
+
+
+//****************************************************************************************************************************************************
+/// \param [in] argc number of arguments passed to the application.
+/// \param [in] argv list of arguments passed to the application.
+/// \param [out] args list of arguments passed to the application as a QStringList.
+/// \param [out] launcher launcher used in argument, forced to self application if not specify.
+/// \param[out] outAttach The value for the 'attach' command-line parameter.
+//****************************************************************************************************************************************************
+void parseArguments(int argc, char *argv[], QStringList& args, QString& launcher, bool &outAttach) {
+ bool flagFound = false;
+ launcher = QString::fromLocal8Bit(argv[0]);
+ // for unknown reasons, on Windows QCoreApplication::arguments() frequently returns an empty list, which is incorrect, so we rebuild the argument
+ // list from the original argc and argv values.
+ for (int i = 1; i < argc; i++) {
+ QString const &arg = QString::fromLocal8Bit(argv[i]);
+ // we can't use QCommandLineParser here since it will fails on unknown options.
+ // Arguments may contain some bridge flags.
+ if (arg == launcherFlag)
+ {
+ args.append(arg);
+ launcher = QString::fromLocal8Bit(argv[++i]);
+ args.append(launcher);
+ flagFound = true;
+ }
+#ifdef QT_DEBUG
+ else if (arg == "--attach" || arg == "-a")
+ {
+ // we don't keep the attach mode within the args since we don't need it for Bridge.
+ outAttach = true;
+ }
+#endif
+ else
+ {
+ args.append(arg);
+ }
+ }
+ if (!flagFound)
+ {
+ // add bridge-gui as launcher
+ args.append(launcherFlag);
+ args.append(launcher);
+ }
+}
+
+
+//****************************************************************************************************************************************************
+/// \param [in] args list of arguments to pass to bridge.
+//****************************************************************************************************************************************************
+void launchBridge(QStringList const &args)
{
UPOverseer& overseer = app().bridgeOverseer();
overseer.reset();
- QString bridgeExePath = exePath;
- if (exePath.isEmpty())
- bridgeExePath = BridgeMonitor::locateBridgeExe();
+ const QString bridgeExePath = BridgeMonitor::locateBridgeExe();
if (bridgeExePath.isEmpty())
throw Exception("Could not locate the bridge executable path");
else
app().log().debug(QString("Bridge executable path: %1").arg(QDir::toNativeSeparators(bridgeExePath)));
- overseer = std::make_unique(new BridgeMonitor(bridgeExePath, nullptr), nullptr);
+ overseer = std::make_unique(new BridgeMonitor(bridgeExePath, args, nullptr), nullptr);
overseer->startWorker(true);
}
-//****************************************************************************************************************************************************
-/// \param[in] argc The number of command-line arguments.
-/// \param[in] argv The list of command line arguments.
-/// \param[out] outAttach The value for the 'attach' command-line parameter.
-/// \param[out] outExePath The value for the 'bridge-exe-path' command-line parameter.
-//****************************************************************************************************************************************************
-void parseArguments(int argc, char **argv, bool &outAttach, QString &outExePath)
-{
- // for unknown reasons, on Windows QCoreApplication::arguments() frequently returns an empty list, which is incorrect, so we rebuild the argument
- // list from the original argc and argv values.
- QStringList args;
- for (int i = 0; i < argc; i++)
- args.append(QString::fromLocal8Bit(argv[i]));
-
- // We do not want to 'advertise' the following switches, so we do not offer a '-h/--help' option.
- // we have not yet connected to Bridge, we do not know the application version number, so we do not offer a -v/--version switch.
- QCommandLineParser parser;
- parser.setApplicationDescription("Proton Mail Bridge");
- QCommandLineOption attachOption(QStringList() << "attach" << "a", "attach to an existing bridge process");
- parser.addOption(attachOption);
- QCommandLineOption exePathOption(QStringList() << "bridge-exe-path" << "b", "bridge executable path", "path", QString());
- parser.addOption(exePathOption);
-
- parser.process(args);
- outAttach = parser.isSet(attachOption);
- outExePath = parser.value(exePathOption);
-}
-
-
//****************************************************************************************************************************************************
//
//****************************************************************************************************************************************************
@@ -166,14 +212,19 @@ int main(int argc, char *argv[])
QGuiApplication guiApp(argc, argv);
initQtApplication();
- bool attach = false;
- QString exePath;
- parseArguments(argc, argv, attach, exePath);
-
Log &log = initLog();
+ QLockFile lock(UserDirectories::UserCacheDir() + "/" + bridgeLock);
+ if (!checkSingleInstance(lock))
+ return EXIT_FAILURE;
+
+ QStringList args;
+ QString launcher;
+ bool attach = false;
+ parseArguments(argc, argv, args, launcher, attach);
+
if (!attach)
- launchBridge(exePath);
+ launchBridge(args);
app().backend().init();
@@ -185,15 +236,34 @@ int main(int argc, char *argv[])
BridgeMonitor *bridgeMonitor = app().bridgeMonitor();
bool bridgeExited = false;
+ bool startError = false;
QMetaObject::Connection connection;
if (bridgeMonitor)
- connection = QObject::connect(bridgeMonitor, &BridgeMonitor::processExited, [&](int returnCode) {
- // GODT-1671 We need to find a 'safe' way to check if Bridge crashed and restart instead of just quitting. Is returnCode enough?
- bridgeExited = true;// clazy:exclude=lambda-in-connect
- qGuiApp->exit(returnCode);
- });
+ {
+ const BridgeMonitor::MonitorStatus& status = bridgeMonitor->getStatus();
+ if (!status.running && !attach)
+ {
+ // BridgeMonitor already stopped meaning we are attached to an orphan Bridge.
+ // Restart the full process to be sure there is no more bridge orphans
+ app().log().error("Found orphan bridge, need to restart.");
+ app().backend().forceLauncher(launcher);
+ app().backend().restart();
+ bridgeExited = true;
+ startError = true;
+ }
+ else
+ {
+ app().log().debug(QString("Monitoring Bridge PID : %1").arg(status.pid));
+ connection = QObject::connect(bridgeMonitor, &BridgeMonitor::processExited, [&](int returnCode) {
+ bridgeExited = true;// clazy:exclude=lambda-in-connect
+ qGuiApp->exit(returnCode);
+ });
+ }
+ }
- int const result = QGuiApplication::exec();
+ int result = 0;
+ if (!startError)
+ result = QGuiApplication::exec();
QObject::disconnect(connection);
app().grpc().stopEventStream();
@@ -204,7 +274,8 @@ int main(int argc, char *argv[])
if (!bridgeExited)
closeBridgeApp();
-
+ // release the lock file
+ lock.unlock();
return result;
}
catch (Exception const &e)
diff --git a/internal/frontend/bridge-gui/qml/Notifications/Notifications.qml b/internal/frontend/bridge-gui/qml/Notifications/Notifications.qml
index 8f897239..6dd3f9ce 100644
--- a/internal/frontend/bridge-gui/qml/Notifications/Notifications.qml
+++ b/internal/frontend/bridge-gui/qml/Notifications/Notifications.qml
@@ -193,7 +193,7 @@ QtObject {
onTriggered: {
Qt.openUrlExternally(Backend.landingPageLink)
root.updateManualError.active = false
- root.backend.quit()
+ Backend.quit()
}
},
Action {
diff --git a/internal/frontend/bridgepp/bridgepp/GRPC/GRPCClient.cpp b/internal/frontend/bridgepp/bridgepp/GRPC/GRPCClient.cpp
index 4759217f..2a87ede2 100644
--- a/internal/frontend/bridgepp/bridgepp/GRPC/GRPCClient.cpp
+++ b/internal/frontend/bridgepp/bridgepp/GRPC/GRPCClient.cpp
@@ -387,6 +387,18 @@ grpc::Status GRPCClient::triggerReset()
}
+//****************************************************************************************************************************************************
+/// \return The status for the gRPC call.
+//****************************************************************************************************************************************************
+grpc::Status GRPCClient::forceLauncher(QString const &launcher)
+{
+ grpc::ClientContext ctx;
+ StringValue s;
+ s.set_value(launcher.toStdString());
+ return this->logGRPCCallStatus(stub_->ForceLauncher(&ctx, s, &empty), __FUNCTION__);
+}
+
+
//****************************************************************************************************************************************************
/// \param[in] port The port to check.
/// \param[out] outFree The result of the check.
@@ -1366,4 +1378,4 @@ void GRPCClient::processUserEvent(UserEvent const &event)
}
-} // namespace bridgepp
\ No newline at end of file
+} // namespace bridgepp
diff --git a/internal/frontend/bridgepp/bridgepp/GRPC/GRPCClient.h b/internal/frontend/bridgepp/bridgepp/GRPC/GRPCClient.h
index 6826dd6d..8010b7e8 100644
--- a/internal/frontend/bridgepp/bridgepp/GRPC/GRPCClient.h
+++ b/internal/frontend/bridgepp/bridgepp/GRPC/GRPCClient.h
@@ -70,6 +70,7 @@ public: // member functions.
grpc::Status quit(); ///< Perform the "Quit" gRPC call.
grpc::Status restart(); ///< Performs the Restart gRPC call.
grpc::Status triggerReset(); ///< Performs the triggerReset gRPC call.
+ grpc::Status forceLauncher(QString const &launcher); ///< Performs the 'ForceLauncher' call.
grpc::Status isPortFree(qint32 port, bool &outFree); ///< Performs the 'IsPortFree' call.
grpc::Status showOnStartup(bool &outValue); ///< Performs the 'ShowOnStartup' call.
grpc::Status showSplashScreen(bool &outValue); ///< Performs the 'ShowSplashScreen' call.
diff --git a/internal/frontend/bridgepp/bridgepp/GRPC/bridge.grpc.pb.cc b/internal/frontend/bridgepp/bridgepp/GRPC/bridge.grpc.pb.cc
index 4a8140ad..7731d0f6 100644
--- a/internal/frontend/bridgepp/bridgepp/GRPC/bridge.grpc.pb.cc
+++ b/internal/frontend/bridgepp/bridgepp/GRPC/bridge.grpc.pb.cc
@@ -45,6 +45,7 @@ static const char* Bridge_method_names[] = {
"/grpc.Bridge/ColorSchemeName",
"/grpc.Bridge/CurrentEmailClient",
"/grpc.Bridge/ReportBug",
+ "/grpc.Bridge/ForceLauncher",
"/grpc.Bridge/Login",
"/grpc.Bridge/Login2FA",
"/grpc.Bridge/Login2Passwords",
@@ -108,37 +109,38 @@ Bridge::Stub::Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, co
, rpcmethod_ColorSchemeName_(Bridge_method_names[20], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_CurrentEmailClient_(Bridge_method_names[21], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_ReportBug_(Bridge_method_names[22], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_Login_(Bridge_method_names[23], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_Login2FA_(Bridge_method_names[24], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_Login2Passwords_(Bridge_method_names[25], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_LoginAbort_(Bridge_method_names[26], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_CheckUpdate_(Bridge_method_names[27], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_InstallUpdate_(Bridge_method_names[28], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_SetIsAutomaticUpdateOn_(Bridge_method_names[29], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_IsAutomaticUpdateOn_(Bridge_method_names[30], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_IsCacheOnDiskEnabled_(Bridge_method_names[31], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_DiskCachePath_(Bridge_method_names[32], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_ChangeLocalCache_(Bridge_method_names[33], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_SetIsDoHEnabled_(Bridge_method_names[34], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_IsDoHEnabled_(Bridge_method_names[35], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_SetUseSslForSmtp_(Bridge_method_names[36], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_UseSslForSmtp_(Bridge_method_names[37], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_Hostname_(Bridge_method_names[38], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_ImapPort_(Bridge_method_names[39], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_SmtpPort_(Bridge_method_names[40], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_ChangePorts_(Bridge_method_names[41], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_IsPortFree_(Bridge_method_names[42], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_AvailableKeychains_(Bridge_method_names[43], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_SetCurrentKeychain_(Bridge_method_names[44], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_CurrentKeychain_(Bridge_method_names[45], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_GetUserList_(Bridge_method_names[46], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_GetUser_(Bridge_method_names[47], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_SetUserSplitMode_(Bridge_method_names[48], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_LogoutUser_(Bridge_method_names[49], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_RemoveUser_(Bridge_method_names[50], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_ConfigureUserAppleMail_(Bridge_method_names[51], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
- , rpcmethod_StartEventStream_(Bridge_method_names[52], options.suffix_for_stats(),::grpc::internal::RpcMethod::SERVER_STREAMING, channel)
- , rpcmethod_StopEventStream_(Bridge_method_names[53], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_ForceLauncher_(Bridge_method_names[23], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_Login_(Bridge_method_names[24], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_Login2FA_(Bridge_method_names[25], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_Login2Passwords_(Bridge_method_names[26], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_LoginAbort_(Bridge_method_names[27], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_CheckUpdate_(Bridge_method_names[28], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_InstallUpdate_(Bridge_method_names[29], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_SetIsAutomaticUpdateOn_(Bridge_method_names[30], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_IsAutomaticUpdateOn_(Bridge_method_names[31], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_IsCacheOnDiskEnabled_(Bridge_method_names[32], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_DiskCachePath_(Bridge_method_names[33], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_ChangeLocalCache_(Bridge_method_names[34], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_SetIsDoHEnabled_(Bridge_method_names[35], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_IsDoHEnabled_(Bridge_method_names[36], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_SetUseSslForSmtp_(Bridge_method_names[37], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_UseSslForSmtp_(Bridge_method_names[38], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_Hostname_(Bridge_method_names[39], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_ImapPort_(Bridge_method_names[40], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_SmtpPort_(Bridge_method_names[41], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_ChangePorts_(Bridge_method_names[42], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_IsPortFree_(Bridge_method_names[43], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_AvailableKeychains_(Bridge_method_names[44], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_SetCurrentKeychain_(Bridge_method_names[45], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_CurrentKeychain_(Bridge_method_names[46], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_GetUserList_(Bridge_method_names[47], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_GetUser_(Bridge_method_names[48], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_SetUserSplitMode_(Bridge_method_names[49], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_LogoutUser_(Bridge_method_names[50], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_RemoveUser_(Bridge_method_names[51], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_ConfigureUserAppleMail_(Bridge_method_names[52], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
+ , rpcmethod_StartEventStream_(Bridge_method_names[53], options.suffix_for_stats(),::grpc::internal::RpcMethod::SERVER_STREAMING, channel)
+ , rpcmethod_StopEventStream_(Bridge_method_names[54], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
{}
::grpc::Status Bridge::Stub::AddLogEntry(::grpc::ClientContext* context, const ::grpc::AddLogEntryRequest& request, ::google::protobuf::Empty* response) {
@@ -670,6 +672,29 @@ void Bridge::Stub::async::ReportBug(::grpc::ClientContext* context, const ::grpc
return result;
}
+::grpc::Status Bridge::Stub::ForceLauncher(::grpc::ClientContext* context, const ::google::protobuf::StringValue& request, ::google::protobuf::Empty* response) {
+ return ::grpc::internal::BlockingUnaryCall< ::google::protobuf::StringValue, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_ForceLauncher_, context, request, response);
+}
+
+void Bridge::Stub::async::ForceLauncher(::grpc::ClientContext* context, const ::google::protobuf::StringValue* request, ::google::protobuf::Empty* response, std::function f) {
+ ::grpc::internal::CallbackUnaryCall< ::google::protobuf::StringValue, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_ForceLauncher_, context, request, response, std::move(f));
+}
+
+void Bridge::Stub::async::ForceLauncher(::grpc::ClientContext* context, const ::google::protobuf::StringValue* request, ::google::protobuf::Empty* response, ::grpc::ClientUnaryReactor* reactor) {
+ ::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_ForceLauncher_, context, request, response, reactor);
+}
+
+::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>* Bridge::Stub::PrepareAsyncForceLauncherRaw(::grpc::ClientContext* context, const ::google::protobuf::StringValue& request, ::grpc::CompletionQueue* cq) {
+ return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::google::protobuf::Empty, ::google::protobuf::StringValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_ForceLauncher_, context, request);
+}
+
+::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>* Bridge::Stub::AsyncForceLauncherRaw(::grpc::ClientContext* context, const ::google::protobuf::StringValue& request, ::grpc::CompletionQueue* cq) {
+ auto* result =
+ this->PrepareAsyncForceLauncherRaw(context, request, cq);
+ result->StartCall();
+ return result;
+}
+
::grpc::Status Bridge::Stub::Login(::grpc::ClientContext* context, const ::grpc::LoginRequest& request, ::google::protobuf::Empty* response) {
return ::grpc::internal::BlockingUnaryCall< ::grpc::LoginRequest, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_Login_, context, request, response);
}
@@ -1610,12 +1635,12 @@ Bridge::Service::Service() {
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[23],
::grpc::internal::RpcMethod::NORMAL_RPC,
- new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::grpc::LoginRequest, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
+ new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::StringValue, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
::grpc::ServerContext* ctx,
- const ::grpc::LoginRequest* req,
+ const ::google::protobuf::StringValue* req,
::google::protobuf::Empty* resp) {
- return service->Login(ctx, req, resp);
+ return service->ForceLauncher(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[24],
@@ -1625,7 +1650,7 @@ Bridge::Service::Service() {
::grpc::ServerContext* ctx,
const ::grpc::LoginRequest* req,
::google::protobuf::Empty* resp) {
- return service->Login2FA(ctx, req, resp);
+ return service->Login(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[25],
@@ -1635,11 +1660,21 @@ Bridge::Service::Service() {
::grpc::ServerContext* ctx,
const ::grpc::LoginRequest* req,
::google::protobuf::Empty* resp) {
- return service->Login2Passwords(ctx, req, resp);
+ return service->Login2FA(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[26],
::grpc::internal::RpcMethod::NORMAL_RPC,
+ new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::grpc::LoginRequest, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
+ [](Bridge::Service* service,
+ ::grpc::ServerContext* ctx,
+ const ::grpc::LoginRequest* req,
+ ::google::protobuf::Empty* resp) {
+ return service->Login2Passwords(ctx, req, resp);
+ }, this)));
+ AddMethod(new ::grpc::internal::RpcServiceMethod(
+ Bridge_method_names[27],
+ ::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::grpc::LoginAbortRequest, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
::grpc::ServerContext* ctx,
@@ -1648,7 +1683,7 @@ Bridge::Service::Service() {
return service->LoginAbort(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[27],
+ Bridge_method_names[28],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Empty, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1658,7 +1693,7 @@ Bridge::Service::Service() {
return service->CheckUpdate(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[28],
+ Bridge_method_names[29],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Empty, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1668,7 +1703,7 @@ Bridge::Service::Service() {
return service->InstallUpdate(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[29],
+ Bridge_method_names[30],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::BoolValue, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1678,7 +1713,7 @@ Bridge::Service::Service() {
return service->SetIsAutomaticUpdateOn(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[30],
+ Bridge_method_names[31],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Empty, ::google::protobuf::BoolValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1688,7 +1723,7 @@ Bridge::Service::Service() {
return service->IsAutomaticUpdateOn(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[31],
+ Bridge_method_names[32],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Empty, ::google::protobuf::BoolValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1698,7 +1733,7 @@ Bridge::Service::Service() {
return service->IsCacheOnDiskEnabled(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[32],
+ Bridge_method_names[33],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Empty, ::google::protobuf::StringValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1708,7 +1743,7 @@ Bridge::Service::Service() {
return service->DiskCachePath(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[33],
+ Bridge_method_names[34],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::grpc::ChangeLocalCacheRequest, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1718,7 +1753,7 @@ Bridge::Service::Service() {
return service->ChangeLocalCache(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[34],
+ Bridge_method_names[35],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::BoolValue, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1728,7 +1763,7 @@ Bridge::Service::Service() {
return service->SetIsDoHEnabled(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[35],
+ Bridge_method_names[36],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Empty, ::google::protobuf::BoolValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1738,7 +1773,7 @@ Bridge::Service::Service() {
return service->IsDoHEnabled(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[36],
+ Bridge_method_names[37],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::BoolValue, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1748,7 +1783,7 @@ Bridge::Service::Service() {
return service->SetUseSslForSmtp(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[37],
+ Bridge_method_names[38],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Empty, ::google::protobuf::BoolValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1758,7 +1793,7 @@ Bridge::Service::Service() {
return service->UseSslForSmtp(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[38],
+ Bridge_method_names[39],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Empty, ::google::protobuf::StringValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1768,7 +1803,7 @@ Bridge::Service::Service() {
return service->Hostname(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[39],
+ Bridge_method_names[40],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Empty, ::google::protobuf::Int32Value, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1778,7 +1813,7 @@ Bridge::Service::Service() {
return service->ImapPort(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[40],
+ Bridge_method_names[41],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Empty, ::google::protobuf::Int32Value, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1788,7 +1823,7 @@ Bridge::Service::Service() {
return service->SmtpPort(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[41],
+ Bridge_method_names[42],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::grpc::ChangePortsRequest, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1798,7 +1833,7 @@ Bridge::Service::Service() {
return service->ChangePorts(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[42],
+ Bridge_method_names[43],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Int32Value, ::google::protobuf::BoolValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1808,7 +1843,7 @@ Bridge::Service::Service() {
return service->IsPortFree(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[43],
+ Bridge_method_names[44],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Empty, ::grpc::AvailableKeychainsResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1818,7 +1853,7 @@ Bridge::Service::Service() {
return service->AvailableKeychains(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[44],
+ Bridge_method_names[45],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::StringValue, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1828,7 +1863,7 @@ Bridge::Service::Service() {
return service->SetCurrentKeychain(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[45],
+ Bridge_method_names[46],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Empty, ::google::protobuf::StringValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1838,7 +1873,7 @@ Bridge::Service::Service() {
return service->CurrentKeychain(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[46],
+ Bridge_method_names[47],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Empty, ::grpc::UserListResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1848,7 +1883,7 @@ Bridge::Service::Service() {
return service->GetUserList(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[47],
+ Bridge_method_names[48],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::StringValue, ::grpc::User, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1858,7 +1893,7 @@ Bridge::Service::Service() {
return service->GetUser(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[48],
+ Bridge_method_names[49],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::grpc::UserSplitModeRequest, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1868,7 +1903,7 @@ Bridge::Service::Service() {
return service->SetUserSplitMode(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[49],
+ Bridge_method_names[50],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::StringValue, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1878,7 +1913,7 @@ Bridge::Service::Service() {
return service->LogoutUser(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[50],
+ Bridge_method_names[51],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::StringValue, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1888,7 +1923,7 @@ Bridge::Service::Service() {
return service->RemoveUser(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[51],
+ Bridge_method_names[52],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::grpc::ConfigureAppleMailRequest, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -1898,7 +1933,7 @@ Bridge::Service::Service() {
return service->ConfigureUserAppleMail(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[52],
+ Bridge_method_names[53],
::grpc::internal::RpcMethod::SERVER_STREAMING,
new ::grpc::internal::ServerStreamingHandler< Bridge::Service, ::grpc::EventStreamRequest, ::grpc::StreamEvent>(
[](Bridge::Service* service,
@@ -1908,7 +1943,7 @@ Bridge::Service::Service() {
return service->StartEventStream(ctx, req, writer);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
- Bridge_method_names[53],
+ Bridge_method_names[54],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Empty, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@@ -2083,6 +2118,13 @@ Bridge::Service::~Service() {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
+::grpc::Status Bridge::Service::ForceLauncher(::grpc::ServerContext* context, const ::google::protobuf::StringValue* request, ::google::protobuf::Empty* response) {
+ (void) context;
+ (void) request;
+ (void) response;
+ return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
+}
+
::grpc::Status Bridge::Service::Login(::grpc::ServerContext* context, const ::grpc::LoginRequest* request, ::google::protobuf::Empty* response) {
(void) context;
(void) request;
diff --git a/internal/frontend/bridgepp/bridgepp/GRPC/bridge.grpc.pb.h b/internal/frontend/bridgepp/bridgepp/GRPC/bridge.grpc.pb.h
index d652b909..c5d0b575 100644
--- a/internal/frontend/bridgepp/bridgepp/GRPC/bridge.grpc.pb.h
+++ b/internal/frontend/bridgepp/bridgepp/GRPC/bridge.grpc.pb.h
@@ -219,6 +219,13 @@ class Bridge final {
std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::google::protobuf::Empty>> PrepareAsyncReportBug(::grpc::ClientContext* context, const ::grpc::ReportBugRequest& request, ::grpc::CompletionQueue* cq) {
return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::google::protobuf::Empty>>(PrepareAsyncReportBugRaw(context, request, cq));
}
+ virtual ::grpc::Status ForceLauncher(::grpc::ClientContext* context, const ::google::protobuf::StringValue& request, ::google::protobuf::Empty* response) = 0;
+ std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::google::protobuf::Empty>> AsyncForceLauncher(::grpc::ClientContext* context, const ::google::protobuf::StringValue& request, ::grpc::CompletionQueue* cq) {
+ return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::google::protobuf::Empty>>(AsyncForceLauncherRaw(context, request, cq));
+ }
+ std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::google::protobuf::Empty>> PrepareAsyncForceLauncher(::grpc::ClientContext* context, const ::google::protobuf::StringValue& request, ::grpc::CompletionQueue* cq) {
+ return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::google::protobuf::Empty>>(PrepareAsyncForceLauncherRaw(context, request, cq));
+ }
// login
virtual ::grpc::Status Login(::grpc::ClientContext* context, const ::grpc::LoginRequest& request, ::google::protobuf::Empty* response) = 0;
std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::google::protobuf::Empty>> AsyncLogin(::grpc::ClientContext* context, const ::grpc::LoginRequest& request, ::grpc::CompletionQueue* cq) {
@@ -497,6 +504,8 @@ class Bridge final {
virtual void CurrentEmailClient(::grpc::ClientContext* context, const ::google::protobuf::Empty* request, ::google::protobuf::StringValue* response, ::grpc::ClientUnaryReactor* reactor) = 0;
virtual void ReportBug(::grpc::ClientContext* context, const ::grpc::ReportBugRequest* request, ::google::protobuf::Empty* response, std::function) = 0;
virtual void ReportBug(::grpc::ClientContext* context, const ::grpc::ReportBugRequest* request, ::google::protobuf::Empty* response, ::grpc::ClientUnaryReactor* reactor) = 0;
+ virtual void ForceLauncher(::grpc::ClientContext* context, const ::google::protobuf::StringValue* request, ::google::protobuf::Empty* response, std::function) = 0;
+ virtual void ForceLauncher(::grpc::ClientContext* context, const ::google::protobuf::StringValue* request, ::google::protobuf::Empty* response, ::grpc::ClientUnaryReactor* reactor) = 0;
// login
virtual void Login(::grpc::ClientContext* context, const ::grpc::LoginRequest* request, ::google::protobuf::Empty* response, std::function) = 0;
virtual void Login(::grpc::ClientContext* context, const ::grpc::LoginRequest* request, ::google::protobuf::Empty* response, ::grpc::ClientUnaryReactor* reactor) = 0;
@@ -617,6 +626,8 @@ class Bridge final {
virtual ::grpc::ClientAsyncResponseReaderInterface< ::google::protobuf::StringValue>* PrepareAsyncCurrentEmailClientRaw(::grpc::ClientContext* context, const ::google::protobuf::Empty& request, ::grpc::CompletionQueue* cq) = 0;
virtual ::grpc::ClientAsyncResponseReaderInterface< ::google::protobuf::Empty>* AsyncReportBugRaw(::grpc::ClientContext* context, const ::grpc::ReportBugRequest& request, ::grpc::CompletionQueue* cq) = 0;
virtual ::grpc::ClientAsyncResponseReaderInterface< ::google::protobuf::Empty>* PrepareAsyncReportBugRaw(::grpc::ClientContext* context, const ::grpc::ReportBugRequest& request, ::grpc::CompletionQueue* cq) = 0;
+ virtual ::grpc::ClientAsyncResponseReaderInterface< ::google::protobuf::Empty>* AsyncForceLauncherRaw(::grpc::ClientContext* context, const ::google::protobuf::StringValue& request, ::grpc::CompletionQueue* cq) = 0;
+ virtual ::grpc::ClientAsyncResponseReaderInterface< ::google::protobuf::Empty>* PrepareAsyncForceLauncherRaw(::grpc::ClientContext* context, const ::google::protobuf::StringValue& request, ::grpc::CompletionQueue* cq) = 0;
virtual ::grpc::ClientAsyncResponseReaderInterface< ::google::protobuf::Empty>* AsyncLoginRaw(::grpc::ClientContext* context, const ::grpc::LoginRequest& request, ::grpc::CompletionQueue* cq) = 0;
virtual ::grpc::ClientAsyncResponseReaderInterface< ::google::protobuf::Empty>* PrepareAsyncLoginRaw(::grpc::ClientContext* context, const ::grpc::LoginRequest& request, ::grpc::CompletionQueue* cq) = 0;
virtual ::grpc::ClientAsyncResponseReaderInterface< ::google::protobuf::Empty>* AsyncLogin2FARaw(::grpc::ClientContext* context, const ::grpc::LoginRequest& request, ::grpc::CompletionQueue* cq) = 0;
@@ -845,6 +856,13 @@ class Bridge final {
std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>> PrepareAsyncReportBug(::grpc::ClientContext* context, const ::grpc::ReportBugRequest& request, ::grpc::CompletionQueue* cq) {
return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>>(PrepareAsyncReportBugRaw(context, request, cq));
}
+ ::grpc::Status ForceLauncher(::grpc::ClientContext* context, const ::google::protobuf::StringValue& request, ::google::protobuf::Empty* response) override;
+ std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>> AsyncForceLauncher(::grpc::ClientContext* context, const ::google::protobuf::StringValue& request, ::grpc::CompletionQueue* cq) {
+ return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>>(AsyncForceLauncherRaw(context, request, cq));
+ }
+ std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>> PrepareAsyncForceLauncher(::grpc::ClientContext* context, const ::google::protobuf::StringValue& request, ::grpc::CompletionQueue* cq) {
+ return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>>(PrepareAsyncForceLauncherRaw(context, request, cq));
+ }
::grpc::Status Login(::grpc::ClientContext* context, const ::grpc::LoginRequest& request, ::google::protobuf::Empty* response) override;
std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>> AsyncLogin(::grpc::ClientContext* context, const ::grpc::LoginRequest& request, ::grpc::CompletionQueue* cq) {
return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>>(AsyncLoginRaw(context, request, cq));
@@ -1113,6 +1131,8 @@ class Bridge final {
void CurrentEmailClient(::grpc::ClientContext* context, const ::google::protobuf::Empty* request, ::google::protobuf::StringValue* response, ::grpc::ClientUnaryReactor* reactor) override;
void ReportBug(::grpc::ClientContext* context, const ::grpc::ReportBugRequest* request, ::google::protobuf::Empty* response, std::function) override;
void ReportBug(::grpc::ClientContext* context, const ::grpc::ReportBugRequest* request, ::google::protobuf::Empty* response, ::grpc::ClientUnaryReactor* reactor) override;
+ void ForceLauncher(::grpc::ClientContext* context, const ::google::protobuf::StringValue* request, ::google::protobuf::Empty* response, std::function) override;
+ void ForceLauncher(::grpc::ClientContext* context, const ::google::protobuf::StringValue* request, ::google::protobuf::Empty* response, ::grpc::ClientUnaryReactor* reactor) override;
void Login(::grpc::ClientContext* context, const ::grpc::LoginRequest* request, ::google::protobuf::Empty* response, std::function) override;
void Login(::grpc::ClientContext* context, const ::grpc::LoginRequest* request, ::google::protobuf::Empty* response, ::grpc::ClientUnaryReactor* reactor) override;
void Login2FA(::grpc::ClientContext* context, const ::grpc::LoginRequest* request, ::google::protobuf::Empty* response, std::function) override;
@@ -1231,6 +1251,8 @@ class Bridge final {
::grpc::ClientAsyncResponseReader< ::google::protobuf::StringValue>* PrepareAsyncCurrentEmailClientRaw(::grpc::ClientContext* context, const ::google::protobuf::Empty& request, ::grpc::CompletionQueue* cq) override;
::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>* AsyncReportBugRaw(::grpc::ClientContext* context, const ::grpc::ReportBugRequest& request, ::grpc::CompletionQueue* cq) override;
::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>* PrepareAsyncReportBugRaw(::grpc::ClientContext* context, const ::grpc::ReportBugRequest& request, ::grpc::CompletionQueue* cq) override;
+ ::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>* AsyncForceLauncherRaw(::grpc::ClientContext* context, const ::google::protobuf::StringValue& request, ::grpc::CompletionQueue* cq) override;
+ ::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>* PrepareAsyncForceLauncherRaw(::grpc::ClientContext* context, const ::google::protobuf::StringValue& request, ::grpc::CompletionQueue* cq) override;
::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>* AsyncLoginRaw(::grpc::ClientContext* context, const ::grpc::LoginRequest& request, ::grpc::CompletionQueue* cq) override;
::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>* PrepareAsyncLoginRaw(::grpc::ClientContext* context, const ::grpc::LoginRequest& request, ::grpc::CompletionQueue* cq) override;
::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>* AsyncLogin2FARaw(::grpc::ClientContext* context, const ::grpc::LoginRequest& request, ::grpc::CompletionQueue* cq) override;
@@ -1317,6 +1339,7 @@ class Bridge final {
const ::grpc::internal::RpcMethod rpcmethod_ColorSchemeName_;
const ::grpc::internal::RpcMethod rpcmethod_CurrentEmailClient_;
const ::grpc::internal::RpcMethod rpcmethod_ReportBug_;
+ const ::grpc::internal::RpcMethod rpcmethod_ForceLauncher_;
const ::grpc::internal::RpcMethod rpcmethod_Login_;
const ::grpc::internal::RpcMethod rpcmethod_Login2FA_;
const ::grpc::internal::RpcMethod rpcmethod_Login2Passwords_;
@@ -1380,6 +1403,7 @@ class Bridge final {
// TODO Color scheme should probably entirely be managed by the client.
virtual ::grpc::Status CurrentEmailClient(::grpc::ServerContext* context, const ::google::protobuf::Empty* request, ::google::protobuf::StringValue* response);
virtual ::grpc::Status ReportBug(::grpc::ServerContext* context, const ::grpc::ReportBugRequest* request, ::google::protobuf::Empty* response);
+ virtual ::grpc::Status ForceLauncher(::grpc::ServerContext* context, const ::google::protobuf::StringValue* request, ::google::protobuf::Empty* response);
// login
virtual ::grpc::Status Login(::grpc::ServerContext* context, const ::grpc::LoginRequest* request, ::google::protobuf::Empty* response);
virtual ::grpc::Status Login2FA(::grpc::ServerContext* context, const ::grpc::LoginRequest* request, ::google::protobuf::Empty* response);
@@ -1881,12 +1905,32 @@ class Bridge final {
}
};
template
+ class WithAsyncMethod_ForceLauncher : public BaseClass {
+ private:
+ void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
+ public:
+ WithAsyncMethod_ForceLauncher() {
+ ::grpc::Service::MarkMethodAsync(23);
+ }
+ ~WithAsyncMethod_ForceLauncher() override {
+ BaseClassMustBeDerivedFromService(this);
+ }
+ // disable synchronous version of this method
+ ::grpc::Status ForceLauncher(::grpc::ServerContext* /*context*/, const ::google::protobuf::StringValue* /*request*/, ::google::protobuf::Empty* /*response*/) override {
+ abort();
+ return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
+ }
+ void RequestForceLauncher(::grpc::ServerContext* context, ::google::protobuf::StringValue* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
+ ::grpc::Service::RequestAsyncUnary(23, context, request, response, new_call_cq, notification_cq, tag);
+ }
+ };
+ template
class WithAsyncMethod_Login : public BaseClass {
private:
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_Login() {
- ::grpc::Service::MarkMethodAsync(23);
+ ::grpc::Service::MarkMethodAsync(24);
}
~WithAsyncMethod_Login() override {
BaseClassMustBeDerivedFromService(this);
@@ -1897,7 +1941,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestLogin(::grpc::ServerContext* context, ::grpc::LoginRequest* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(23, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(24, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -1906,7 +1950,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_Login2FA() {
- ::grpc::Service::MarkMethodAsync(24);
+ ::grpc::Service::MarkMethodAsync(25);
}
~WithAsyncMethod_Login2FA() override {
BaseClassMustBeDerivedFromService(this);
@@ -1917,7 +1961,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestLogin2FA(::grpc::ServerContext* context, ::grpc::LoginRequest* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(24, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(25, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -1926,7 +1970,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_Login2Passwords() {
- ::grpc::Service::MarkMethodAsync(25);
+ ::grpc::Service::MarkMethodAsync(26);
}
~WithAsyncMethod_Login2Passwords() override {
BaseClassMustBeDerivedFromService(this);
@@ -1937,7 +1981,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestLogin2Passwords(::grpc::ServerContext* context, ::grpc::LoginRequest* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(25, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(26, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -1946,7 +1990,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_LoginAbort() {
- ::grpc::Service::MarkMethodAsync(26);
+ ::grpc::Service::MarkMethodAsync(27);
}
~WithAsyncMethod_LoginAbort() override {
BaseClassMustBeDerivedFromService(this);
@@ -1957,7 +2001,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestLoginAbort(::grpc::ServerContext* context, ::grpc::LoginAbortRequest* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(26, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(27, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -1966,7 +2010,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_CheckUpdate() {
- ::grpc::Service::MarkMethodAsync(27);
+ ::grpc::Service::MarkMethodAsync(28);
}
~WithAsyncMethod_CheckUpdate() override {
BaseClassMustBeDerivedFromService(this);
@@ -1977,7 +2021,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestCheckUpdate(::grpc::ServerContext* context, ::google::protobuf::Empty* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(27, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(28, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -1986,7 +2030,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_InstallUpdate() {
- ::grpc::Service::MarkMethodAsync(28);
+ ::grpc::Service::MarkMethodAsync(29);
}
~WithAsyncMethod_InstallUpdate() override {
BaseClassMustBeDerivedFromService(this);
@@ -1997,7 +2041,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestInstallUpdate(::grpc::ServerContext* context, ::google::protobuf::Empty* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(28, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(29, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2006,7 +2050,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_SetIsAutomaticUpdateOn() {
- ::grpc::Service::MarkMethodAsync(29);
+ ::grpc::Service::MarkMethodAsync(30);
}
~WithAsyncMethod_SetIsAutomaticUpdateOn() override {
BaseClassMustBeDerivedFromService(this);
@@ -2017,7 +2061,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestSetIsAutomaticUpdateOn(::grpc::ServerContext* context, ::google::protobuf::BoolValue* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(29, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(30, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2026,7 +2070,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_IsAutomaticUpdateOn() {
- ::grpc::Service::MarkMethodAsync(30);
+ ::grpc::Service::MarkMethodAsync(31);
}
~WithAsyncMethod_IsAutomaticUpdateOn() override {
BaseClassMustBeDerivedFromService(this);
@@ -2037,7 +2081,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestIsAutomaticUpdateOn(::grpc::ServerContext* context, ::google::protobuf::Empty* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::BoolValue>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(30, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(31, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2046,7 +2090,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_IsCacheOnDiskEnabled() {
- ::grpc::Service::MarkMethodAsync(31);
+ ::grpc::Service::MarkMethodAsync(32);
}
~WithAsyncMethod_IsCacheOnDiskEnabled() override {
BaseClassMustBeDerivedFromService(this);
@@ -2057,7 +2101,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestIsCacheOnDiskEnabled(::grpc::ServerContext* context, ::google::protobuf::Empty* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::BoolValue>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(31, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(32, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2066,7 +2110,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_DiskCachePath() {
- ::grpc::Service::MarkMethodAsync(32);
+ ::grpc::Service::MarkMethodAsync(33);
}
~WithAsyncMethod_DiskCachePath() override {
BaseClassMustBeDerivedFromService(this);
@@ -2077,7 +2121,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestDiskCachePath(::grpc::ServerContext* context, ::google::protobuf::Empty* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::StringValue>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(32, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(33, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2086,7 +2130,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_ChangeLocalCache() {
- ::grpc::Service::MarkMethodAsync(33);
+ ::grpc::Service::MarkMethodAsync(34);
}
~WithAsyncMethod_ChangeLocalCache() override {
BaseClassMustBeDerivedFromService(this);
@@ -2097,7 +2141,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestChangeLocalCache(::grpc::ServerContext* context, ::grpc::ChangeLocalCacheRequest* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(33, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(34, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2106,7 +2150,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_SetIsDoHEnabled() {
- ::grpc::Service::MarkMethodAsync(34);
+ ::grpc::Service::MarkMethodAsync(35);
}
~WithAsyncMethod_SetIsDoHEnabled() override {
BaseClassMustBeDerivedFromService(this);
@@ -2117,7 +2161,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestSetIsDoHEnabled(::grpc::ServerContext* context, ::google::protobuf::BoolValue* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(34, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(35, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2126,7 +2170,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_IsDoHEnabled() {
- ::grpc::Service::MarkMethodAsync(35);
+ ::grpc::Service::MarkMethodAsync(36);
}
~WithAsyncMethod_IsDoHEnabled() override {
BaseClassMustBeDerivedFromService(this);
@@ -2137,7 +2181,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestIsDoHEnabled(::grpc::ServerContext* context, ::google::protobuf::Empty* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::BoolValue>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(35, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(36, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2146,7 +2190,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_SetUseSslForSmtp() {
- ::grpc::Service::MarkMethodAsync(36);
+ ::grpc::Service::MarkMethodAsync(37);
}
~WithAsyncMethod_SetUseSslForSmtp() override {
BaseClassMustBeDerivedFromService(this);
@@ -2157,7 +2201,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestSetUseSslForSmtp(::grpc::ServerContext* context, ::google::protobuf::BoolValue* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(36, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(37, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2166,7 +2210,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_UseSslForSmtp() {
- ::grpc::Service::MarkMethodAsync(37);
+ ::grpc::Service::MarkMethodAsync(38);
}
~WithAsyncMethod_UseSslForSmtp() override {
BaseClassMustBeDerivedFromService(this);
@@ -2177,7 +2221,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestUseSslForSmtp(::grpc::ServerContext* context, ::google::protobuf::Empty* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::BoolValue>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(37, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(38, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2186,7 +2230,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_Hostname() {
- ::grpc::Service::MarkMethodAsync(38);
+ ::grpc::Service::MarkMethodAsync(39);
}
~WithAsyncMethod_Hostname() override {
BaseClassMustBeDerivedFromService(this);
@@ -2197,7 +2241,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestHostname(::grpc::ServerContext* context, ::google::protobuf::Empty* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::StringValue>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(38, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(39, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2206,7 +2250,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_ImapPort() {
- ::grpc::Service::MarkMethodAsync(39);
+ ::grpc::Service::MarkMethodAsync(40);
}
~WithAsyncMethod_ImapPort() override {
BaseClassMustBeDerivedFromService(this);
@@ -2217,7 +2261,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestImapPort(::grpc::ServerContext* context, ::google::protobuf::Empty* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Int32Value>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(39, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(40, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2226,7 +2270,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_SmtpPort() {
- ::grpc::Service::MarkMethodAsync(40);
+ ::grpc::Service::MarkMethodAsync(41);
}
~WithAsyncMethod_SmtpPort() override {
BaseClassMustBeDerivedFromService(this);
@@ -2237,7 +2281,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestSmtpPort(::grpc::ServerContext* context, ::google::protobuf::Empty* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Int32Value>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(40, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(41, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2246,7 +2290,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_ChangePorts() {
- ::grpc::Service::MarkMethodAsync(41);
+ ::grpc::Service::MarkMethodAsync(42);
}
~WithAsyncMethod_ChangePorts() override {
BaseClassMustBeDerivedFromService(this);
@@ -2257,7 +2301,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestChangePorts(::grpc::ServerContext* context, ::grpc::ChangePortsRequest* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(41, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(42, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2266,7 +2310,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_IsPortFree() {
- ::grpc::Service::MarkMethodAsync(42);
+ ::grpc::Service::MarkMethodAsync(43);
}
~WithAsyncMethod_IsPortFree() override {
BaseClassMustBeDerivedFromService(this);
@@ -2277,7 +2321,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestIsPortFree(::grpc::ServerContext* context, ::google::protobuf::Int32Value* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::BoolValue>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(42, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(43, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2286,7 +2330,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_AvailableKeychains() {
- ::grpc::Service::MarkMethodAsync(43);
+ ::grpc::Service::MarkMethodAsync(44);
}
~WithAsyncMethod_AvailableKeychains() override {
BaseClassMustBeDerivedFromService(this);
@@ -2297,7 +2341,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestAvailableKeychains(::grpc::ServerContext* context, ::google::protobuf::Empty* request, ::grpc::ServerAsyncResponseWriter< ::grpc::AvailableKeychainsResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(43, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(44, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2306,7 +2350,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_SetCurrentKeychain() {
- ::grpc::Service::MarkMethodAsync(44);
+ ::grpc::Service::MarkMethodAsync(45);
}
~WithAsyncMethod_SetCurrentKeychain() override {
BaseClassMustBeDerivedFromService(this);
@@ -2317,7 +2361,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestSetCurrentKeychain(::grpc::ServerContext* context, ::google::protobuf::StringValue* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(44, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(45, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2326,7 +2370,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_CurrentKeychain() {
- ::grpc::Service::MarkMethodAsync(45);
+ ::grpc::Service::MarkMethodAsync(46);
}
~WithAsyncMethod_CurrentKeychain() override {
BaseClassMustBeDerivedFromService(this);
@@ -2337,7 +2381,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestCurrentKeychain(::grpc::ServerContext* context, ::google::protobuf::Empty* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::StringValue>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(45, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(46, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2346,7 +2390,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_GetUserList() {
- ::grpc::Service::MarkMethodAsync(46);
+ ::grpc::Service::MarkMethodAsync(47);
}
~WithAsyncMethod_GetUserList() override {
BaseClassMustBeDerivedFromService(this);
@@ -2357,7 +2401,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestGetUserList(::grpc::ServerContext* context, ::google::protobuf::Empty* request, ::grpc::ServerAsyncResponseWriter< ::grpc::UserListResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(46, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(47, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2366,7 +2410,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_GetUser() {
- ::grpc::Service::MarkMethodAsync(47);
+ ::grpc::Service::MarkMethodAsync(48);
}
~WithAsyncMethod_GetUser() override {
BaseClassMustBeDerivedFromService(this);
@@ -2377,7 +2421,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestGetUser(::grpc::ServerContext* context, ::google::protobuf::StringValue* request, ::grpc::ServerAsyncResponseWriter< ::grpc::User>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(47, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(48, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2386,7 +2430,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_SetUserSplitMode() {
- ::grpc::Service::MarkMethodAsync(48);
+ ::grpc::Service::MarkMethodAsync(49);
}
~WithAsyncMethod_SetUserSplitMode() override {
BaseClassMustBeDerivedFromService(this);
@@ -2397,7 +2441,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestSetUserSplitMode(::grpc::ServerContext* context, ::grpc::UserSplitModeRequest* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(48, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(49, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2406,7 +2450,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_LogoutUser() {
- ::grpc::Service::MarkMethodAsync(49);
+ ::grpc::Service::MarkMethodAsync(50);
}
~WithAsyncMethod_LogoutUser() override {
BaseClassMustBeDerivedFromService(this);
@@ -2417,7 +2461,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestLogoutUser(::grpc::ServerContext* context, ::google::protobuf::StringValue* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(49, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(50, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2426,7 +2470,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_RemoveUser() {
- ::grpc::Service::MarkMethodAsync(50);
+ ::grpc::Service::MarkMethodAsync(51);
}
~WithAsyncMethod_RemoveUser() override {
BaseClassMustBeDerivedFromService(this);
@@ -2437,7 +2481,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestRemoveUser(::grpc::ServerContext* context, ::google::protobuf::StringValue* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(50, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(51, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2446,7 +2490,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_ConfigureUserAppleMail() {
- ::grpc::Service::MarkMethodAsync(51);
+ ::grpc::Service::MarkMethodAsync(52);
}
~WithAsyncMethod_ConfigureUserAppleMail() override {
BaseClassMustBeDerivedFromService(this);
@@ -2457,7 +2501,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestConfigureUserAppleMail(::grpc::ServerContext* context, ::grpc::ConfigureAppleMailRequest* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(51, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(52, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -2466,7 +2510,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_StartEventStream() {
- ::grpc::Service::MarkMethodAsync(52);
+ ::grpc::Service::MarkMethodAsync(53);
}
~WithAsyncMethod_StartEventStream() override {
BaseClassMustBeDerivedFromService(this);
@@ -2477,7 +2521,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestStartEventStream(::grpc::ServerContext* context, ::grpc::EventStreamRequest* request, ::grpc::ServerAsyncWriter< ::grpc::StreamEvent>* writer, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncServerStreaming(52, context, request, writer, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncServerStreaming(53, context, request, writer, new_call_cq, notification_cq, tag);
}
};
template
@@ -2486,7 +2530,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithAsyncMethod_StopEventStream() {
- ::grpc::Service::MarkMethodAsync(53);
+ ::grpc::Service::MarkMethodAsync(54);
}
~WithAsyncMethod_StopEventStream() override {
BaseClassMustBeDerivedFromService(this);
@@ -2497,10 +2541,10 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestStopEventStream(::grpc::ServerContext* context, ::google::protobuf::Empty* request, ::grpc::ServerAsyncResponseWriter< ::google::protobuf::Empty>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(53, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(54, context, request, response, new_call_cq, notification_cq, tag);
}
};
- typedef WithAsyncMethod_AddLogEntry > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > AsyncService;
+ typedef WithAsyncMethod_AddLogEntry > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > AsyncService;
template
class WithCallbackMethod_AddLogEntry : public BaseClass {
private:
@@ -3123,18 +3167,45 @@ class Bridge final {
::grpc::CallbackServerContext* /*context*/, const ::grpc::ReportBugRequest* /*request*/, ::google::protobuf::Empty* /*response*/) { return nullptr; }
};
template
+ class WithCallbackMethod_ForceLauncher : public BaseClass {
+ private:
+ void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
+ public:
+ WithCallbackMethod_ForceLauncher() {
+ ::grpc::Service::MarkMethodCallback(23,
+ new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::StringValue, ::google::protobuf::Empty>(
+ [this](
+ ::grpc::CallbackServerContext* context, const ::google::protobuf::StringValue* request, ::google::protobuf::Empty* response) { return this->ForceLauncher(context, request, response); }));}
+ void SetMessageAllocatorFor_ForceLauncher(
+ ::grpc::MessageAllocator< ::google::protobuf::StringValue, ::google::protobuf::Empty>* allocator) {
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(23);
+ static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::StringValue, ::google::protobuf::Empty>*>(handler)
+ ->SetMessageAllocator(allocator);
+ }
+ ~WithCallbackMethod_ForceLauncher() override {
+ BaseClassMustBeDerivedFromService(this);
+ }
+ // disable synchronous version of this method
+ ::grpc::Status ForceLauncher(::grpc::ServerContext* /*context*/, const ::google::protobuf::StringValue* /*request*/, ::google::protobuf::Empty* /*response*/) override {
+ abort();
+ return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
+ }
+ virtual ::grpc::ServerUnaryReactor* ForceLauncher(
+ ::grpc::CallbackServerContext* /*context*/, const ::google::protobuf::StringValue* /*request*/, ::google::protobuf::Empty* /*response*/) { return nullptr; }
+ };
+ template
class WithCallbackMethod_Login : public BaseClass {
private:
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_Login() {
- ::grpc::Service::MarkMethodCallback(23,
+ ::grpc::Service::MarkMethodCallback(24,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::LoginRequest, ::google::protobuf::Empty>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::LoginRequest* request, ::google::protobuf::Empty* response) { return this->Login(context, request, response); }));}
void SetMessageAllocatorFor_Login(
::grpc::MessageAllocator< ::grpc::LoginRequest, ::google::protobuf::Empty>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(23);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(24);
static_cast<::grpc::internal::CallbackUnaryHandler< ::grpc::LoginRequest, ::google::protobuf::Empty>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3155,13 +3226,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_Login2FA() {
- ::grpc::Service::MarkMethodCallback(24,
+ ::grpc::Service::MarkMethodCallback(25,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::LoginRequest, ::google::protobuf::Empty>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::LoginRequest* request, ::google::protobuf::Empty* response) { return this->Login2FA(context, request, response); }));}
void SetMessageAllocatorFor_Login2FA(
::grpc::MessageAllocator< ::grpc::LoginRequest, ::google::protobuf::Empty>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(24);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(25);
static_cast<::grpc::internal::CallbackUnaryHandler< ::grpc::LoginRequest, ::google::protobuf::Empty>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3182,13 +3253,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_Login2Passwords() {
- ::grpc::Service::MarkMethodCallback(25,
+ ::grpc::Service::MarkMethodCallback(26,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::LoginRequest, ::google::protobuf::Empty>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::LoginRequest* request, ::google::protobuf::Empty* response) { return this->Login2Passwords(context, request, response); }));}
void SetMessageAllocatorFor_Login2Passwords(
::grpc::MessageAllocator< ::grpc::LoginRequest, ::google::protobuf::Empty>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(25);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(26);
static_cast<::grpc::internal::CallbackUnaryHandler< ::grpc::LoginRequest, ::google::protobuf::Empty>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3209,13 +3280,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_LoginAbort() {
- ::grpc::Service::MarkMethodCallback(26,
+ ::grpc::Service::MarkMethodCallback(27,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::LoginAbortRequest, ::google::protobuf::Empty>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::LoginAbortRequest* request, ::google::protobuf::Empty* response) { return this->LoginAbort(context, request, response); }));}
void SetMessageAllocatorFor_LoginAbort(
::grpc::MessageAllocator< ::grpc::LoginAbortRequest, ::google::protobuf::Empty>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(26);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(27);
static_cast<::grpc::internal::CallbackUnaryHandler< ::grpc::LoginAbortRequest, ::google::protobuf::Empty>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3236,13 +3307,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_CheckUpdate() {
- ::grpc::Service::MarkMethodCallback(27,
+ ::grpc::Service::MarkMethodCallback(28,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::Empty>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::Empty* request, ::google::protobuf::Empty* response) { return this->CheckUpdate(context, request, response); }));}
void SetMessageAllocatorFor_CheckUpdate(
::grpc::MessageAllocator< ::google::protobuf::Empty, ::google::protobuf::Empty>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(27);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(28);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::Empty>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3263,13 +3334,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_InstallUpdate() {
- ::grpc::Service::MarkMethodCallback(28,
+ ::grpc::Service::MarkMethodCallback(29,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::Empty>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::Empty* request, ::google::protobuf::Empty* response) { return this->InstallUpdate(context, request, response); }));}
void SetMessageAllocatorFor_InstallUpdate(
::grpc::MessageAllocator< ::google::protobuf::Empty, ::google::protobuf::Empty>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(28);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(29);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::Empty>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3290,13 +3361,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_SetIsAutomaticUpdateOn() {
- ::grpc::Service::MarkMethodCallback(29,
+ ::grpc::Service::MarkMethodCallback(30,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::BoolValue, ::google::protobuf::Empty>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::BoolValue* request, ::google::protobuf::Empty* response) { return this->SetIsAutomaticUpdateOn(context, request, response); }));}
void SetMessageAllocatorFor_SetIsAutomaticUpdateOn(
::grpc::MessageAllocator< ::google::protobuf::BoolValue, ::google::protobuf::Empty>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(29);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(30);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::BoolValue, ::google::protobuf::Empty>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3317,13 +3388,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_IsAutomaticUpdateOn() {
- ::grpc::Service::MarkMethodCallback(30,
+ ::grpc::Service::MarkMethodCallback(31,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::BoolValue>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::Empty* request, ::google::protobuf::BoolValue* response) { return this->IsAutomaticUpdateOn(context, request, response); }));}
void SetMessageAllocatorFor_IsAutomaticUpdateOn(
::grpc::MessageAllocator< ::google::protobuf::Empty, ::google::protobuf::BoolValue>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(30);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(31);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::BoolValue>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3344,13 +3415,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_IsCacheOnDiskEnabled() {
- ::grpc::Service::MarkMethodCallback(31,
+ ::grpc::Service::MarkMethodCallback(32,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::BoolValue>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::Empty* request, ::google::protobuf::BoolValue* response) { return this->IsCacheOnDiskEnabled(context, request, response); }));}
void SetMessageAllocatorFor_IsCacheOnDiskEnabled(
::grpc::MessageAllocator< ::google::protobuf::Empty, ::google::protobuf::BoolValue>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(31);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(32);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::BoolValue>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3371,13 +3442,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_DiskCachePath() {
- ::grpc::Service::MarkMethodCallback(32,
+ ::grpc::Service::MarkMethodCallback(33,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::StringValue>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::Empty* request, ::google::protobuf::StringValue* response) { return this->DiskCachePath(context, request, response); }));}
void SetMessageAllocatorFor_DiskCachePath(
::grpc::MessageAllocator< ::google::protobuf::Empty, ::google::protobuf::StringValue>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(32);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(33);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::StringValue>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3398,13 +3469,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_ChangeLocalCache() {
- ::grpc::Service::MarkMethodCallback(33,
+ ::grpc::Service::MarkMethodCallback(34,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ChangeLocalCacheRequest, ::google::protobuf::Empty>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ChangeLocalCacheRequest* request, ::google::protobuf::Empty* response) { return this->ChangeLocalCache(context, request, response); }));}
void SetMessageAllocatorFor_ChangeLocalCache(
::grpc::MessageAllocator< ::grpc::ChangeLocalCacheRequest, ::google::protobuf::Empty>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(33);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(34);
static_cast<::grpc::internal::CallbackUnaryHandler< ::grpc::ChangeLocalCacheRequest, ::google::protobuf::Empty>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3425,13 +3496,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_SetIsDoHEnabled() {
- ::grpc::Service::MarkMethodCallback(34,
+ ::grpc::Service::MarkMethodCallback(35,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::BoolValue, ::google::protobuf::Empty>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::BoolValue* request, ::google::protobuf::Empty* response) { return this->SetIsDoHEnabled(context, request, response); }));}
void SetMessageAllocatorFor_SetIsDoHEnabled(
::grpc::MessageAllocator< ::google::protobuf::BoolValue, ::google::protobuf::Empty>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(34);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(35);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::BoolValue, ::google::protobuf::Empty>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3452,13 +3523,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_IsDoHEnabled() {
- ::grpc::Service::MarkMethodCallback(35,
+ ::grpc::Service::MarkMethodCallback(36,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::BoolValue>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::Empty* request, ::google::protobuf::BoolValue* response) { return this->IsDoHEnabled(context, request, response); }));}
void SetMessageAllocatorFor_IsDoHEnabled(
::grpc::MessageAllocator< ::google::protobuf::Empty, ::google::protobuf::BoolValue>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(35);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(36);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::BoolValue>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3479,13 +3550,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_SetUseSslForSmtp() {
- ::grpc::Service::MarkMethodCallback(36,
+ ::grpc::Service::MarkMethodCallback(37,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::BoolValue, ::google::protobuf::Empty>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::BoolValue* request, ::google::protobuf::Empty* response) { return this->SetUseSslForSmtp(context, request, response); }));}
void SetMessageAllocatorFor_SetUseSslForSmtp(
::grpc::MessageAllocator< ::google::protobuf::BoolValue, ::google::protobuf::Empty>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(36);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(37);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::BoolValue, ::google::protobuf::Empty>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3506,13 +3577,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_UseSslForSmtp() {
- ::grpc::Service::MarkMethodCallback(37,
+ ::grpc::Service::MarkMethodCallback(38,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::BoolValue>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::Empty* request, ::google::protobuf::BoolValue* response) { return this->UseSslForSmtp(context, request, response); }));}
void SetMessageAllocatorFor_UseSslForSmtp(
::grpc::MessageAllocator< ::google::protobuf::Empty, ::google::protobuf::BoolValue>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(37);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(38);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::BoolValue>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3533,13 +3604,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_Hostname() {
- ::grpc::Service::MarkMethodCallback(38,
+ ::grpc::Service::MarkMethodCallback(39,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::StringValue>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::Empty* request, ::google::protobuf::StringValue* response) { return this->Hostname(context, request, response); }));}
void SetMessageAllocatorFor_Hostname(
::grpc::MessageAllocator< ::google::protobuf::Empty, ::google::protobuf::StringValue>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(38);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(39);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::StringValue>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3560,13 +3631,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_ImapPort() {
- ::grpc::Service::MarkMethodCallback(39,
+ ::grpc::Service::MarkMethodCallback(40,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::Int32Value>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::Empty* request, ::google::protobuf::Int32Value* response) { return this->ImapPort(context, request, response); }));}
void SetMessageAllocatorFor_ImapPort(
::grpc::MessageAllocator< ::google::protobuf::Empty, ::google::protobuf::Int32Value>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(39);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(40);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::Int32Value>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3587,13 +3658,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_SmtpPort() {
- ::grpc::Service::MarkMethodCallback(40,
+ ::grpc::Service::MarkMethodCallback(41,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::Int32Value>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::Empty* request, ::google::protobuf::Int32Value* response) { return this->SmtpPort(context, request, response); }));}
void SetMessageAllocatorFor_SmtpPort(
::grpc::MessageAllocator< ::google::protobuf::Empty, ::google::protobuf::Int32Value>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(40);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(41);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::Int32Value>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3614,13 +3685,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_ChangePorts() {
- ::grpc::Service::MarkMethodCallback(41,
+ ::grpc::Service::MarkMethodCallback(42,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ChangePortsRequest, ::google::protobuf::Empty>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ChangePortsRequest* request, ::google::protobuf::Empty* response) { return this->ChangePorts(context, request, response); }));}
void SetMessageAllocatorFor_ChangePorts(
::grpc::MessageAllocator< ::grpc::ChangePortsRequest, ::google::protobuf::Empty>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(41);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(42);
static_cast<::grpc::internal::CallbackUnaryHandler< ::grpc::ChangePortsRequest, ::google::protobuf::Empty>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3641,13 +3712,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_IsPortFree() {
- ::grpc::Service::MarkMethodCallback(42,
+ ::grpc::Service::MarkMethodCallback(43,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Int32Value, ::google::protobuf::BoolValue>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::Int32Value* request, ::google::protobuf::BoolValue* response) { return this->IsPortFree(context, request, response); }));}
void SetMessageAllocatorFor_IsPortFree(
::grpc::MessageAllocator< ::google::protobuf::Int32Value, ::google::protobuf::BoolValue>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(42);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(43);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Int32Value, ::google::protobuf::BoolValue>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3668,13 +3739,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_AvailableKeychains() {
- ::grpc::Service::MarkMethodCallback(43,
+ ::grpc::Service::MarkMethodCallback(44,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::grpc::AvailableKeychainsResponse>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::Empty* request, ::grpc::AvailableKeychainsResponse* response) { return this->AvailableKeychains(context, request, response); }));}
void SetMessageAllocatorFor_AvailableKeychains(
::grpc::MessageAllocator< ::google::protobuf::Empty, ::grpc::AvailableKeychainsResponse>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(43);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(44);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::grpc::AvailableKeychainsResponse>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3695,13 +3766,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_SetCurrentKeychain() {
- ::grpc::Service::MarkMethodCallback(44,
+ ::grpc::Service::MarkMethodCallback(45,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::StringValue, ::google::protobuf::Empty>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::StringValue* request, ::google::protobuf::Empty* response) { return this->SetCurrentKeychain(context, request, response); }));}
void SetMessageAllocatorFor_SetCurrentKeychain(
::grpc::MessageAllocator< ::google::protobuf::StringValue, ::google::protobuf::Empty>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(44);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(45);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::StringValue, ::google::protobuf::Empty>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3722,13 +3793,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_CurrentKeychain() {
- ::grpc::Service::MarkMethodCallback(45,
+ ::grpc::Service::MarkMethodCallback(46,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::StringValue>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::Empty* request, ::google::protobuf::StringValue* response) { return this->CurrentKeychain(context, request, response); }));}
void SetMessageAllocatorFor_CurrentKeychain(
::grpc::MessageAllocator< ::google::protobuf::Empty, ::google::protobuf::StringValue>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(45);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(46);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::StringValue>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3749,13 +3820,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_GetUserList() {
- ::grpc::Service::MarkMethodCallback(46,
+ ::grpc::Service::MarkMethodCallback(47,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::grpc::UserListResponse>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::Empty* request, ::grpc::UserListResponse* response) { return this->GetUserList(context, request, response); }));}
void SetMessageAllocatorFor_GetUserList(
::grpc::MessageAllocator< ::google::protobuf::Empty, ::grpc::UserListResponse>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(46);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(47);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::grpc::UserListResponse>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3776,13 +3847,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_GetUser() {
- ::grpc::Service::MarkMethodCallback(47,
+ ::grpc::Service::MarkMethodCallback(48,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::StringValue, ::grpc::User>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::StringValue* request, ::grpc::User* response) { return this->GetUser(context, request, response); }));}
void SetMessageAllocatorFor_GetUser(
::grpc::MessageAllocator< ::google::protobuf::StringValue, ::grpc::User>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(47);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(48);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::StringValue, ::grpc::User>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3803,13 +3874,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_SetUserSplitMode() {
- ::grpc::Service::MarkMethodCallback(48,
+ ::grpc::Service::MarkMethodCallback(49,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::UserSplitModeRequest, ::google::protobuf::Empty>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::UserSplitModeRequest* request, ::google::protobuf::Empty* response) { return this->SetUserSplitMode(context, request, response); }));}
void SetMessageAllocatorFor_SetUserSplitMode(
::grpc::MessageAllocator< ::grpc::UserSplitModeRequest, ::google::protobuf::Empty>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(48);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(49);
static_cast<::grpc::internal::CallbackUnaryHandler< ::grpc::UserSplitModeRequest, ::google::protobuf::Empty>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3830,13 +3901,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_LogoutUser() {
- ::grpc::Service::MarkMethodCallback(49,
+ ::grpc::Service::MarkMethodCallback(50,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::StringValue, ::google::protobuf::Empty>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::StringValue* request, ::google::protobuf::Empty* response) { return this->LogoutUser(context, request, response); }));}
void SetMessageAllocatorFor_LogoutUser(
::grpc::MessageAllocator< ::google::protobuf::StringValue, ::google::protobuf::Empty>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(49);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(50);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::StringValue, ::google::protobuf::Empty>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3857,13 +3928,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_RemoveUser() {
- ::grpc::Service::MarkMethodCallback(50,
+ ::grpc::Service::MarkMethodCallback(51,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::StringValue, ::google::protobuf::Empty>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::StringValue* request, ::google::protobuf::Empty* response) { return this->RemoveUser(context, request, response); }));}
void SetMessageAllocatorFor_RemoveUser(
::grpc::MessageAllocator< ::google::protobuf::StringValue, ::google::protobuf::Empty>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(50);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(51);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::StringValue, ::google::protobuf::Empty>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3884,13 +3955,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_ConfigureUserAppleMail() {
- ::grpc::Service::MarkMethodCallback(51,
+ ::grpc::Service::MarkMethodCallback(52,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ConfigureAppleMailRequest, ::google::protobuf::Empty>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ConfigureAppleMailRequest* request, ::google::protobuf::Empty* response) { return this->ConfigureUserAppleMail(context, request, response); }));}
void SetMessageAllocatorFor_ConfigureUserAppleMail(
::grpc::MessageAllocator< ::grpc::ConfigureAppleMailRequest, ::google::protobuf::Empty>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(51);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(52);
static_cast<::grpc::internal::CallbackUnaryHandler< ::grpc::ConfigureAppleMailRequest, ::google::protobuf::Empty>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3911,7 +3982,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_StartEventStream() {
- ::grpc::Service::MarkMethodCallback(52,
+ ::grpc::Service::MarkMethodCallback(53,
new ::grpc::internal::CallbackServerStreamingHandler< ::grpc::EventStreamRequest, ::grpc::StreamEvent>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::EventStreamRequest* request) { return this->StartEventStream(context, request); }));
@@ -3933,13 +4004,13 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithCallbackMethod_StopEventStream() {
- ::grpc::Service::MarkMethodCallback(53,
+ ::grpc::Service::MarkMethodCallback(54,
new ::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::Empty>(
[this](
::grpc::CallbackServerContext* context, const ::google::protobuf::Empty* request, ::google::protobuf::Empty* response) { return this->StopEventStream(context, request, response); }));}
void SetMessageAllocatorFor_StopEventStream(
::grpc::MessageAllocator< ::google::protobuf::Empty, ::google::protobuf::Empty>* allocator) {
- ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(53);
+ ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(54);
static_cast<::grpc::internal::CallbackUnaryHandler< ::google::protobuf::Empty, ::google::protobuf::Empty>*>(handler)
->SetMessageAllocator(allocator);
}
@@ -3954,7 +4025,7 @@ class Bridge final {
virtual ::grpc::ServerUnaryReactor* StopEventStream(
::grpc::CallbackServerContext* /*context*/, const ::google::protobuf::Empty* /*request*/, ::google::protobuf::Empty* /*response*/) { return nullptr; }
};
- typedef WithCallbackMethod_AddLogEntry > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > CallbackService;
+ typedef WithCallbackMethod_AddLogEntry > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > CallbackService;
typedef CallbackService ExperimentalCallbackService;
template
class WithGenericMethod_AddLogEntry : public BaseClass {
@@ -4348,12 +4419,29 @@ class Bridge final {
}
};
template
+ class WithGenericMethod_ForceLauncher : public BaseClass {
+ private:
+ void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
+ public:
+ WithGenericMethod_ForceLauncher() {
+ ::grpc::Service::MarkMethodGeneric(23);
+ }
+ ~WithGenericMethod_ForceLauncher() override {
+ BaseClassMustBeDerivedFromService(this);
+ }
+ // disable synchronous version of this method
+ ::grpc::Status ForceLauncher(::grpc::ServerContext* /*context*/, const ::google::protobuf::StringValue* /*request*/, ::google::protobuf::Empty* /*response*/) override {
+ abort();
+ return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
+ }
+ };
+ template
class WithGenericMethod_Login : public BaseClass {
private:
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_Login() {
- ::grpc::Service::MarkMethodGeneric(23);
+ ::grpc::Service::MarkMethodGeneric(24);
}
~WithGenericMethod_Login() override {
BaseClassMustBeDerivedFromService(this);
@@ -4370,7 +4458,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_Login2FA() {
- ::grpc::Service::MarkMethodGeneric(24);
+ ::grpc::Service::MarkMethodGeneric(25);
}
~WithGenericMethod_Login2FA() override {
BaseClassMustBeDerivedFromService(this);
@@ -4387,7 +4475,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_Login2Passwords() {
- ::grpc::Service::MarkMethodGeneric(25);
+ ::grpc::Service::MarkMethodGeneric(26);
}
~WithGenericMethod_Login2Passwords() override {
BaseClassMustBeDerivedFromService(this);
@@ -4404,7 +4492,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_LoginAbort() {
- ::grpc::Service::MarkMethodGeneric(26);
+ ::grpc::Service::MarkMethodGeneric(27);
}
~WithGenericMethod_LoginAbort() override {
BaseClassMustBeDerivedFromService(this);
@@ -4421,7 +4509,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_CheckUpdate() {
- ::grpc::Service::MarkMethodGeneric(27);
+ ::grpc::Service::MarkMethodGeneric(28);
}
~WithGenericMethod_CheckUpdate() override {
BaseClassMustBeDerivedFromService(this);
@@ -4438,7 +4526,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_InstallUpdate() {
- ::grpc::Service::MarkMethodGeneric(28);
+ ::grpc::Service::MarkMethodGeneric(29);
}
~WithGenericMethod_InstallUpdate() override {
BaseClassMustBeDerivedFromService(this);
@@ -4455,7 +4543,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_SetIsAutomaticUpdateOn() {
- ::grpc::Service::MarkMethodGeneric(29);
+ ::grpc::Service::MarkMethodGeneric(30);
}
~WithGenericMethod_SetIsAutomaticUpdateOn() override {
BaseClassMustBeDerivedFromService(this);
@@ -4472,7 +4560,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_IsAutomaticUpdateOn() {
- ::grpc::Service::MarkMethodGeneric(30);
+ ::grpc::Service::MarkMethodGeneric(31);
}
~WithGenericMethod_IsAutomaticUpdateOn() override {
BaseClassMustBeDerivedFromService(this);
@@ -4489,7 +4577,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_IsCacheOnDiskEnabled() {
- ::grpc::Service::MarkMethodGeneric(31);
+ ::grpc::Service::MarkMethodGeneric(32);
}
~WithGenericMethod_IsCacheOnDiskEnabled() override {
BaseClassMustBeDerivedFromService(this);
@@ -4506,7 +4594,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_DiskCachePath() {
- ::grpc::Service::MarkMethodGeneric(32);
+ ::grpc::Service::MarkMethodGeneric(33);
}
~WithGenericMethod_DiskCachePath() override {
BaseClassMustBeDerivedFromService(this);
@@ -4523,7 +4611,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_ChangeLocalCache() {
- ::grpc::Service::MarkMethodGeneric(33);
+ ::grpc::Service::MarkMethodGeneric(34);
}
~WithGenericMethod_ChangeLocalCache() override {
BaseClassMustBeDerivedFromService(this);
@@ -4540,7 +4628,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_SetIsDoHEnabled() {
- ::grpc::Service::MarkMethodGeneric(34);
+ ::grpc::Service::MarkMethodGeneric(35);
}
~WithGenericMethod_SetIsDoHEnabled() override {
BaseClassMustBeDerivedFromService(this);
@@ -4557,7 +4645,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_IsDoHEnabled() {
- ::grpc::Service::MarkMethodGeneric(35);
+ ::grpc::Service::MarkMethodGeneric(36);
}
~WithGenericMethod_IsDoHEnabled() override {
BaseClassMustBeDerivedFromService(this);
@@ -4574,7 +4662,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_SetUseSslForSmtp() {
- ::grpc::Service::MarkMethodGeneric(36);
+ ::grpc::Service::MarkMethodGeneric(37);
}
~WithGenericMethod_SetUseSslForSmtp() override {
BaseClassMustBeDerivedFromService(this);
@@ -4591,7 +4679,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_UseSslForSmtp() {
- ::grpc::Service::MarkMethodGeneric(37);
+ ::grpc::Service::MarkMethodGeneric(38);
}
~WithGenericMethod_UseSslForSmtp() override {
BaseClassMustBeDerivedFromService(this);
@@ -4608,7 +4696,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_Hostname() {
- ::grpc::Service::MarkMethodGeneric(38);
+ ::grpc::Service::MarkMethodGeneric(39);
}
~WithGenericMethod_Hostname() override {
BaseClassMustBeDerivedFromService(this);
@@ -4625,7 +4713,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_ImapPort() {
- ::grpc::Service::MarkMethodGeneric(39);
+ ::grpc::Service::MarkMethodGeneric(40);
}
~WithGenericMethod_ImapPort() override {
BaseClassMustBeDerivedFromService(this);
@@ -4642,7 +4730,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_SmtpPort() {
- ::grpc::Service::MarkMethodGeneric(40);
+ ::grpc::Service::MarkMethodGeneric(41);
}
~WithGenericMethod_SmtpPort() override {
BaseClassMustBeDerivedFromService(this);
@@ -4659,7 +4747,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_ChangePorts() {
- ::grpc::Service::MarkMethodGeneric(41);
+ ::grpc::Service::MarkMethodGeneric(42);
}
~WithGenericMethod_ChangePorts() override {
BaseClassMustBeDerivedFromService(this);
@@ -4676,7 +4764,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_IsPortFree() {
- ::grpc::Service::MarkMethodGeneric(42);
+ ::grpc::Service::MarkMethodGeneric(43);
}
~WithGenericMethod_IsPortFree() override {
BaseClassMustBeDerivedFromService(this);
@@ -4693,7 +4781,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_AvailableKeychains() {
- ::grpc::Service::MarkMethodGeneric(43);
+ ::grpc::Service::MarkMethodGeneric(44);
}
~WithGenericMethod_AvailableKeychains() override {
BaseClassMustBeDerivedFromService(this);
@@ -4710,7 +4798,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_SetCurrentKeychain() {
- ::grpc::Service::MarkMethodGeneric(44);
+ ::grpc::Service::MarkMethodGeneric(45);
}
~WithGenericMethod_SetCurrentKeychain() override {
BaseClassMustBeDerivedFromService(this);
@@ -4727,7 +4815,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_CurrentKeychain() {
- ::grpc::Service::MarkMethodGeneric(45);
+ ::grpc::Service::MarkMethodGeneric(46);
}
~WithGenericMethod_CurrentKeychain() override {
BaseClassMustBeDerivedFromService(this);
@@ -4744,7 +4832,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_GetUserList() {
- ::grpc::Service::MarkMethodGeneric(46);
+ ::grpc::Service::MarkMethodGeneric(47);
}
~WithGenericMethod_GetUserList() override {
BaseClassMustBeDerivedFromService(this);
@@ -4761,7 +4849,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_GetUser() {
- ::grpc::Service::MarkMethodGeneric(47);
+ ::grpc::Service::MarkMethodGeneric(48);
}
~WithGenericMethod_GetUser() override {
BaseClassMustBeDerivedFromService(this);
@@ -4778,7 +4866,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_SetUserSplitMode() {
- ::grpc::Service::MarkMethodGeneric(48);
+ ::grpc::Service::MarkMethodGeneric(49);
}
~WithGenericMethod_SetUserSplitMode() override {
BaseClassMustBeDerivedFromService(this);
@@ -4795,7 +4883,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_LogoutUser() {
- ::grpc::Service::MarkMethodGeneric(49);
+ ::grpc::Service::MarkMethodGeneric(50);
}
~WithGenericMethod_LogoutUser() override {
BaseClassMustBeDerivedFromService(this);
@@ -4812,7 +4900,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_RemoveUser() {
- ::grpc::Service::MarkMethodGeneric(50);
+ ::grpc::Service::MarkMethodGeneric(51);
}
~WithGenericMethod_RemoveUser() override {
BaseClassMustBeDerivedFromService(this);
@@ -4829,7 +4917,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_ConfigureUserAppleMail() {
- ::grpc::Service::MarkMethodGeneric(51);
+ ::grpc::Service::MarkMethodGeneric(52);
}
~WithGenericMethod_ConfigureUserAppleMail() override {
BaseClassMustBeDerivedFromService(this);
@@ -4846,7 +4934,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_StartEventStream() {
- ::grpc::Service::MarkMethodGeneric(52);
+ ::grpc::Service::MarkMethodGeneric(53);
}
~WithGenericMethod_StartEventStream() override {
BaseClassMustBeDerivedFromService(this);
@@ -4863,7 +4951,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithGenericMethod_StopEventStream() {
- ::grpc::Service::MarkMethodGeneric(53);
+ ::grpc::Service::MarkMethodGeneric(54);
}
~WithGenericMethod_StopEventStream() override {
BaseClassMustBeDerivedFromService(this);
@@ -5335,12 +5423,32 @@ class Bridge final {
}
};
template
+ class WithRawMethod_ForceLauncher : public BaseClass {
+ private:
+ void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
+ public:
+ WithRawMethod_ForceLauncher() {
+ ::grpc::Service::MarkMethodRaw(23);
+ }
+ ~WithRawMethod_ForceLauncher() override {
+ BaseClassMustBeDerivedFromService(this);
+ }
+ // disable synchronous version of this method
+ ::grpc::Status ForceLauncher(::grpc::ServerContext* /*context*/, const ::google::protobuf::StringValue* /*request*/, ::google::protobuf::Empty* /*response*/) override {
+ abort();
+ return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
+ }
+ void RequestForceLauncher(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
+ ::grpc::Service::RequestAsyncUnary(23, context, request, response, new_call_cq, notification_cq, tag);
+ }
+ };
+ template
class WithRawMethod_Login : public BaseClass {
private:
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_Login() {
- ::grpc::Service::MarkMethodRaw(23);
+ ::grpc::Service::MarkMethodRaw(24);
}
~WithRawMethod_Login() override {
BaseClassMustBeDerivedFromService(this);
@@ -5351,7 +5459,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestLogin(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(23, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(24, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5360,7 +5468,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_Login2FA() {
- ::grpc::Service::MarkMethodRaw(24);
+ ::grpc::Service::MarkMethodRaw(25);
}
~WithRawMethod_Login2FA() override {
BaseClassMustBeDerivedFromService(this);
@@ -5371,7 +5479,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestLogin2FA(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(24, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(25, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5380,7 +5488,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_Login2Passwords() {
- ::grpc::Service::MarkMethodRaw(25);
+ ::grpc::Service::MarkMethodRaw(26);
}
~WithRawMethod_Login2Passwords() override {
BaseClassMustBeDerivedFromService(this);
@@ -5391,7 +5499,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestLogin2Passwords(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(25, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(26, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5400,7 +5508,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_LoginAbort() {
- ::grpc::Service::MarkMethodRaw(26);
+ ::grpc::Service::MarkMethodRaw(27);
}
~WithRawMethod_LoginAbort() override {
BaseClassMustBeDerivedFromService(this);
@@ -5411,7 +5519,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestLoginAbort(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(26, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(27, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5420,7 +5528,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_CheckUpdate() {
- ::grpc::Service::MarkMethodRaw(27);
+ ::grpc::Service::MarkMethodRaw(28);
}
~WithRawMethod_CheckUpdate() override {
BaseClassMustBeDerivedFromService(this);
@@ -5431,7 +5539,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestCheckUpdate(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(27, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(28, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5440,7 +5548,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_InstallUpdate() {
- ::grpc::Service::MarkMethodRaw(28);
+ ::grpc::Service::MarkMethodRaw(29);
}
~WithRawMethod_InstallUpdate() override {
BaseClassMustBeDerivedFromService(this);
@@ -5451,7 +5559,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestInstallUpdate(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(28, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(29, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5460,7 +5568,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_SetIsAutomaticUpdateOn() {
- ::grpc::Service::MarkMethodRaw(29);
+ ::grpc::Service::MarkMethodRaw(30);
}
~WithRawMethod_SetIsAutomaticUpdateOn() override {
BaseClassMustBeDerivedFromService(this);
@@ -5471,7 +5579,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestSetIsAutomaticUpdateOn(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(29, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(30, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5480,7 +5588,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_IsAutomaticUpdateOn() {
- ::grpc::Service::MarkMethodRaw(30);
+ ::grpc::Service::MarkMethodRaw(31);
}
~WithRawMethod_IsAutomaticUpdateOn() override {
BaseClassMustBeDerivedFromService(this);
@@ -5491,7 +5599,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestIsAutomaticUpdateOn(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(30, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(31, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5500,7 +5608,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_IsCacheOnDiskEnabled() {
- ::grpc::Service::MarkMethodRaw(31);
+ ::grpc::Service::MarkMethodRaw(32);
}
~WithRawMethod_IsCacheOnDiskEnabled() override {
BaseClassMustBeDerivedFromService(this);
@@ -5511,7 +5619,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestIsCacheOnDiskEnabled(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(31, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(32, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5520,7 +5628,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_DiskCachePath() {
- ::grpc::Service::MarkMethodRaw(32);
+ ::grpc::Service::MarkMethodRaw(33);
}
~WithRawMethod_DiskCachePath() override {
BaseClassMustBeDerivedFromService(this);
@@ -5531,7 +5639,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestDiskCachePath(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(32, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(33, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5540,7 +5648,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_ChangeLocalCache() {
- ::grpc::Service::MarkMethodRaw(33);
+ ::grpc::Service::MarkMethodRaw(34);
}
~WithRawMethod_ChangeLocalCache() override {
BaseClassMustBeDerivedFromService(this);
@@ -5551,7 +5659,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestChangeLocalCache(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(33, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(34, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5560,7 +5668,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_SetIsDoHEnabled() {
- ::grpc::Service::MarkMethodRaw(34);
+ ::grpc::Service::MarkMethodRaw(35);
}
~WithRawMethod_SetIsDoHEnabled() override {
BaseClassMustBeDerivedFromService(this);
@@ -5571,7 +5679,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestSetIsDoHEnabled(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(34, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(35, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5580,7 +5688,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_IsDoHEnabled() {
- ::grpc::Service::MarkMethodRaw(35);
+ ::grpc::Service::MarkMethodRaw(36);
}
~WithRawMethod_IsDoHEnabled() override {
BaseClassMustBeDerivedFromService(this);
@@ -5591,7 +5699,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestIsDoHEnabled(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(35, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(36, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5600,7 +5708,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_SetUseSslForSmtp() {
- ::grpc::Service::MarkMethodRaw(36);
+ ::grpc::Service::MarkMethodRaw(37);
}
~WithRawMethod_SetUseSslForSmtp() override {
BaseClassMustBeDerivedFromService(this);
@@ -5611,7 +5719,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestSetUseSslForSmtp(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(36, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(37, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5620,7 +5728,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_UseSslForSmtp() {
- ::grpc::Service::MarkMethodRaw(37);
+ ::grpc::Service::MarkMethodRaw(38);
}
~WithRawMethod_UseSslForSmtp() override {
BaseClassMustBeDerivedFromService(this);
@@ -5631,7 +5739,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestUseSslForSmtp(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(37, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(38, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5640,7 +5748,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_Hostname() {
- ::grpc::Service::MarkMethodRaw(38);
+ ::grpc::Service::MarkMethodRaw(39);
}
~WithRawMethod_Hostname() override {
BaseClassMustBeDerivedFromService(this);
@@ -5651,7 +5759,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestHostname(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(38, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(39, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5660,7 +5768,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_ImapPort() {
- ::grpc::Service::MarkMethodRaw(39);
+ ::grpc::Service::MarkMethodRaw(40);
}
~WithRawMethod_ImapPort() override {
BaseClassMustBeDerivedFromService(this);
@@ -5671,7 +5779,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestImapPort(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(39, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(40, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5680,7 +5788,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_SmtpPort() {
- ::grpc::Service::MarkMethodRaw(40);
+ ::grpc::Service::MarkMethodRaw(41);
}
~WithRawMethod_SmtpPort() override {
BaseClassMustBeDerivedFromService(this);
@@ -5691,7 +5799,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestSmtpPort(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(40, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(41, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5700,7 +5808,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_ChangePorts() {
- ::grpc::Service::MarkMethodRaw(41);
+ ::grpc::Service::MarkMethodRaw(42);
}
~WithRawMethod_ChangePorts() override {
BaseClassMustBeDerivedFromService(this);
@@ -5711,7 +5819,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestChangePorts(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(41, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(42, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5720,7 +5828,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_IsPortFree() {
- ::grpc::Service::MarkMethodRaw(42);
+ ::grpc::Service::MarkMethodRaw(43);
}
~WithRawMethod_IsPortFree() override {
BaseClassMustBeDerivedFromService(this);
@@ -5731,7 +5839,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestIsPortFree(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(42, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(43, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5740,7 +5848,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_AvailableKeychains() {
- ::grpc::Service::MarkMethodRaw(43);
+ ::grpc::Service::MarkMethodRaw(44);
}
~WithRawMethod_AvailableKeychains() override {
BaseClassMustBeDerivedFromService(this);
@@ -5751,7 +5859,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestAvailableKeychains(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(43, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(44, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5760,7 +5868,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_SetCurrentKeychain() {
- ::grpc::Service::MarkMethodRaw(44);
+ ::grpc::Service::MarkMethodRaw(45);
}
~WithRawMethod_SetCurrentKeychain() override {
BaseClassMustBeDerivedFromService(this);
@@ -5771,7 +5879,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestSetCurrentKeychain(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(44, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(45, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5780,7 +5888,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_CurrentKeychain() {
- ::grpc::Service::MarkMethodRaw(45);
+ ::grpc::Service::MarkMethodRaw(46);
}
~WithRawMethod_CurrentKeychain() override {
BaseClassMustBeDerivedFromService(this);
@@ -5791,7 +5899,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestCurrentKeychain(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(45, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(46, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5800,7 +5908,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_GetUserList() {
- ::grpc::Service::MarkMethodRaw(46);
+ ::grpc::Service::MarkMethodRaw(47);
}
~WithRawMethod_GetUserList() override {
BaseClassMustBeDerivedFromService(this);
@@ -5811,7 +5919,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestGetUserList(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(46, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(47, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5820,7 +5928,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_GetUser() {
- ::grpc::Service::MarkMethodRaw(47);
+ ::grpc::Service::MarkMethodRaw(48);
}
~WithRawMethod_GetUser() override {
BaseClassMustBeDerivedFromService(this);
@@ -5831,7 +5939,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestGetUser(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(47, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(48, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5840,7 +5948,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_SetUserSplitMode() {
- ::grpc::Service::MarkMethodRaw(48);
+ ::grpc::Service::MarkMethodRaw(49);
}
~WithRawMethod_SetUserSplitMode() override {
BaseClassMustBeDerivedFromService(this);
@@ -5851,7 +5959,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestSetUserSplitMode(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(48, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(49, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5860,7 +5968,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_LogoutUser() {
- ::grpc::Service::MarkMethodRaw(49);
+ ::grpc::Service::MarkMethodRaw(50);
}
~WithRawMethod_LogoutUser() override {
BaseClassMustBeDerivedFromService(this);
@@ -5871,7 +5979,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestLogoutUser(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(49, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(50, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5880,7 +5988,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_RemoveUser() {
- ::grpc::Service::MarkMethodRaw(50);
+ ::grpc::Service::MarkMethodRaw(51);
}
~WithRawMethod_RemoveUser() override {
BaseClassMustBeDerivedFromService(this);
@@ -5891,7 +5999,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestRemoveUser(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(50, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(51, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5900,7 +6008,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_ConfigureUserAppleMail() {
- ::grpc::Service::MarkMethodRaw(51);
+ ::grpc::Service::MarkMethodRaw(52);
}
~WithRawMethod_ConfigureUserAppleMail() override {
BaseClassMustBeDerivedFromService(this);
@@ -5911,7 +6019,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestConfigureUserAppleMail(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(51, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(52, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -5920,7 +6028,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_StartEventStream() {
- ::grpc::Service::MarkMethodRaw(52);
+ ::grpc::Service::MarkMethodRaw(53);
}
~WithRawMethod_StartEventStream() override {
BaseClassMustBeDerivedFromService(this);
@@ -5931,7 +6039,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestStartEventStream(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncWriter< ::grpc::ByteBuffer>* writer, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncServerStreaming(52, context, request, writer, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncServerStreaming(53, context, request, writer, new_call_cq, notification_cq, tag);
}
};
template
@@ -5940,7 +6048,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawMethod_StopEventStream() {
- ::grpc::Service::MarkMethodRaw(53);
+ ::grpc::Service::MarkMethodRaw(54);
}
~WithRawMethod_StopEventStream() override {
BaseClassMustBeDerivedFromService(this);
@@ -5951,7 +6059,7 @@ class Bridge final {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
void RequestStopEventStream(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
- ::grpc::Service::RequestAsyncUnary(53, context, request, response, new_call_cq, notification_cq, tag);
+ ::grpc::Service::RequestAsyncUnary(54, context, request, response, new_call_cq, notification_cq, tag);
}
};
template
@@ -6461,12 +6569,34 @@ class Bridge final {
::grpc::CallbackServerContext* /*context*/, const ::grpc::ByteBuffer* /*request*/, ::grpc::ByteBuffer* /*response*/) { return nullptr; }
};
template
+ class WithRawCallbackMethod_ForceLauncher : public BaseClass {
+ private:
+ void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
+ public:
+ WithRawCallbackMethod_ForceLauncher() {
+ ::grpc::Service::MarkMethodRawCallback(23,
+ new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
+ [this](
+ ::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->ForceLauncher(context, request, response); }));
+ }
+ ~WithRawCallbackMethod_ForceLauncher() override {
+ BaseClassMustBeDerivedFromService(this);
+ }
+ // disable synchronous version of this method
+ ::grpc::Status ForceLauncher(::grpc::ServerContext* /*context*/, const ::google::protobuf::StringValue* /*request*/, ::google::protobuf::Empty* /*response*/) override {
+ abort();
+ return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
+ }
+ virtual ::grpc::ServerUnaryReactor* ForceLauncher(
+ ::grpc::CallbackServerContext* /*context*/, const ::grpc::ByteBuffer* /*request*/, ::grpc::ByteBuffer* /*response*/) { return nullptr; }
+ };
+ template
class WithRawCallbackMethod_Login : public BaseClass {
private:
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_Login() {
- ::grpc::Service::MarkMethodRawCallback(23,
+ ::grpc::Service::MarkMethodRawCallback(24,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->Login(context, request, response); }));
@@ -6488,7 +6618,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_Login2FA() {
- ::grpc::Service::MarkMethodRawCallback(24,
+ ::grpc::Service::MarkMethodRawCallback(25,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->Login2FA(context, request, response); }));
@@ -6510,7 +6640,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_Login2Passwords() {
- ::grpc::Service::MarkMethodRawCallback(25,
+ ::grpc::Service::MarkMethodRawCallback(26,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->Login2Passwords(context, request, response); }));
@@ -6532,7 +6662,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_LoginAbort() {
- ::grpc::Service::MarkMethodRawCallback(26,
+ ::grpc::Service::MarkMethodRawCallback(27,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->LoginAbort(context, request, response); }));
@@ -6554,7 +6684,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_CheckUpdate() {
- ::grpc::Service::MarkMethodRawCallback(27,
+ ::grpc::Service::MarkMethodRawCallback(28,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->CheckUpdate(context, request, response); }));
@@ -6576,7 +6706,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_InstallUpdate() {
- ::grpc::Service::MarkMethodRawCallback(28,
+ ::grpc::Service::MarkMethodRawCallback(29,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->InstallUpdate(context, request, response); }));
@@ -6598,7 +6728,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_SetIsAutomaticUpdateOn() {
- ::grpc::Service::MarkMethodRawCallback(29,
+ ::grpc::Service::MarkMethodRawCallback(30,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->SetIsAutomaticUpdateOn(context, request, response); }));
@@ -6620,7 +6750,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_IsAutomaticUpdateOn() {
- ::grpc::Service::MarkMethodRawCallback(30,
+ ::grpc::Service::MarkMethodRawCallback(31,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->IsAutomaticUpdateOn(context, request, response); }));
@@ -6642,7 +6772,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_IsCacheOnDiskEnabled() {
- ::grpc::Service::MarkMethodRawCallback(31,
+ ::grpc::Service::MarkMethodRawCallback(32,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->IsCacheOnDiskEnabled(context, request, response); }));
@@ -6664,7 +6794,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_DiskCachePath() {
- ::grpc::Service::MarkMethodRawCallback(32,
+ ::grpc::Service::MarkMethodRawCallback(33,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->DiskCachePath(context, request, response); }));
@@ -6686,7 +6816,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_ChangeLocalCache() {
- ::grpc::Service::MarkMethodRawCallback(33,
+ ::grpc::Service::MarkMethodRawCallback(34,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->ChangeLocalCache(context, request, response); }));
@@ -6708,7 +6838,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_SetIsDoHEnabled() {
- ::grpc::Service::MarkMethodRawCallback(34,
+ ::grpc::Service::MarkMethodRawCallback(35,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->SetIsDoHEnabled(context, request, response); }));
@@ -6730,7 +6860,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_IsDoHEnabled() {
- ::grpc::Service::MarkMethodRawCallback(35,
+ ::grpc::Service::MarkMethodRawCallback(36,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->IsDoHEnabled(context, request, response); }));
@@ -6752,7 +6882,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_SetUseSslForSmtp() {
- ::grpc::Service::MarkMethodRawCallback(36,
+ ::grpc::Service::MarkMethodRawCallback(37,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->SetUseSslForSmtp(context, request, response); }));
@@ -6774,7 +6904,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_UseSslForSmtp() {
- ::grpc::Service::MarkMethodRawCallback(37,
+ ::grpc::Service::MarkMethodRawCallback(38,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->UseSslForSmtp(context, request, response); }));
@@ -6796,7 +6926,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_Hostname() {
- ::grpc::Service::MarkMethodRawCallback(38,
+ ::grpc::Service::MarkMethodRawCallback(39,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->Hostname(context, request, response); }));
@@ -6818,7 +6948,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_ImapPort() {
- ::grpc::Service::MarkMethodRawCallback(39,
+ ::grpc::Service::MarkMethodRawCallback(40,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->ImapPort(context, request, response); }));
@@ -6840,7 +6970,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_SmtpPort() {
- ::grpc::Service::MarkMethodRawCallback(40,
+ ::grpc::Service::MarkMethodRawCallback(41,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->SmtpPort(context, request, response); }));
@@ -6862,7 +6992,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_ChangePorts() {
- ::grpc::Service::MarkMethodRawCallback(41,
+ ::grpc::Service::MarkMethodRawCallback(42,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->ChangePorts(context, request, response); }));
@@ -6884,7 +7014,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_IsPortFree() {
- ::grpc::Service::MarkMethodRawCallback(42,
+ ::grpc::Service::MarkMethodRawCallback(43,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->IsPortFree(context, request, response); }));
@@ -6906,7 +7036,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_AvailableKeychains() {
- ::grpc::Service::MarkMethodRawCallback(43,
+ ::grpc::Service::MarkMethodRawCallback(44,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->AvailableKeychains(context, request, response); }));
@@ -6928,7 +7058,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_SetCurrentKeychain() {
- ::grpc::Service::MarkMethodRawCallback(44,
+ ::grpc::Service::MarkMethodRawCallback(45,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->SetCurrentKeychain(context, request, response); }));
@@ -6950,7 +7080,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_CurrentKeychain() {
- ::grpc::Service::MarkMethodRawCallback(45,
+ ::grpc::Service::MarkMethodRawCallback(46,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->CurrentKeychain(context, request, response); }));
@@ -6972,7 +7102,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_GetUserList() {
- ::grpc::Service::MarkMethodRawCallback(46,
+ ::grpc::Service::MarkMethodRawCallback(47,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->GetUserList(context, request, response); }));
@@ -6994,7 +7124,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_GetUser() {
- ::grpc::Service::MarkMethodRawCallback(47,
+ ::grpc::Service::MarkMethodRawCallback(48,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->GetUser(context, request, response); }));
@@ -7016,7 +7146,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_SetUserSplitMode() {
- ::grpc::Service::MarkMethodRawCallback(48,
+ ::grpc::Service::MarkMethodRawCallback(49,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->SetUserSplitMode(context, request, response); }));
@@ -7038,7 +7168,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_LogoutUser() {
- ::grpc::Service::MarkMethodRawCallback(49,
+ ::grpc::Service::MarkMethodRawCallback(50,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->LogoutUser(context, request, response); }));
@@ -7060,7 +7190,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_RemoveUser() {
- ::grpc::Service::MarkMethodRawCallback(50,
+ ::grpc::Service::MarkMethodRawCallback(51,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->RemoveUser(context, request, response); }));
@@ -7082,7 +7212,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_ConfigureUserAppleMail() {
- ::grpc::Service::MarkMethodRawCallback(51,
+ ::grpc::Service::MarkMethodRawCallback(52,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->ConfigureUserAppleMail(context, request, response); }));
@@ -7104,7 +7234,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_StartEventStream() {
- ::grpc::Service::MarkMethodRawCallback(52,
+ ::grpc::Service::MarkMethodRawCallback(53,
new ::grpc::internal::CallbackServerStreamingHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const::grpc::ByteBuffer* request) { return this->StartEventStream(context, request); }));
@@ -7126,7 +7256,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithRawCallbackMethod_StopEventStream() {
- ::grpc::Service::MarkMethodRawCallback(53,
+ ::grpc::Service::MarkMethodRawCallback(54,
new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
[this](
::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->StopEventStream(context, request, response); }));
@@ -7764,12 +7894,39 @@ class Bridge final {
virtual ::grpc::Status StreamedReportBug(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::grpc::ReportBugRequest,::google::protobuf::Empty>* server_unary_streamer) = 0;
};
template
+ class WithStreamedUnaryMethod_ForceLauncher : public BaseClass {
+ private:
+ void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
+ public:
+ WithStreamedUnaryMethod_ForceLauncher() {
+ ::grpc::Service::MarkMethodStreamed(23,
+ new ::grpc::internal::StreamedUnaryHandler<
+ ::google::protobuf::StringValue, ::google::protobuf::Empty>(
+ [this](::grpc::ServerContext* context,
+ ::grpc::ServerUnaryStreamer<
+ ::google::protobuf::StringValue, ::google::protobuf::Empty>* streamer) {
+ return this->StreamedForceLauncher(context,
+ streamer);
+ }));
+ }
+ ~WithStreamedUnaryMethod_ForceLauncher() override {
+ BaseClassMustBeDerivedFromService(this);
+ }
+ // disable regular version of this method
+ ::grpc::Status ForceLauncher(::grpc::ServerContext* /*context*/, const ::google::protobuf::StringValue* /*request*/, ::google::protobuf::Empty* /*response*/) override {
+ abort();
+ return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
+ }
+ // replace default version of method with streamed unary
+ virtual ::grpc::Status StreamedForceLauncher(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::google::protobuf::StringValue,::google::protobuf::Empty>* server_unary_streamer) = 0;
+ };
+ template
class WithStreamedUnaryMethod_Login : public BaseClass {
private:
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_Login() {
- ::grpc::Service::MarkMethodStreamed(23,
+ ::grpc::Service::MarkMethodStreamed(24,
new ::grpc::internal::StreamedUnaryHandler<
::grpc::LoginRequest, ::google::protobuf::Empty>(
[this](::grpc::ServerContext* context,
@@ -7796,7 +7953,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_Login2FA() {
- ::grpc::Service::MarkMethodStreamed(24,
+ ::grpc::Service::MarkMethodStreamed(25,
new ::grpc::internal::StreamedUnaryHandler<
::grpc::LoginRequest, ::google::protobuf::Empty>(
[this](::grpc::ServerContext* context,
@@ -7823,7 +7980,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_Login2Passwords() {
- ::grpc::Service::MarkMethodStreamed(25,
+ ::grpc::Service::MarkMethodStreamed(26,
new ::grpc::internal::StreamedUnaryHandler<
::grpc::LoginRequest, ::google::protobuf::Empty>(
[this](::grpc::ServerContext* context,
@@ -7850,7 +8007,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_LoginAbort() {
- ::grpc::Service::MarkMethodStreamed(26,
+ ::grpc::Service::MarkMethodStreamed(27,
new ::grpc::internal::StreamedUnaryHandler<
::grpc::LoginAbortRequest, ::google::protobuf::Empty>(
[this](::grpc::ServerContext* context,
@@ -7877,7 +8034,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_CheckUpdate() {
- ::grpc::Service::MarkMethodStreamed(27,
+ ::grpc::Service::MarkMethodStreamed(28,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::Empty, ::google::protobuf::Empty>(
[this](::grpc::ServerContext* context,
@@ -7904,7 +8061,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_InstallUpdate() {
- ::grpc::Service::MarkMethodStreamed(28,
+ ::grpc::Service::MarkMethodStreamed(29,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::Empty, ::google::protobuf::Empty>(
[this](::grpc::ServerContext* context,
@@ -7931,7 +8088,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_SetIsAutomaticUpdateOn() {
- ::grpc::Service::MarkMethodStreamed(29,
+ ::grpc::Service::MarkMethodStreamed(30,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::BoolValue, ::google::protobuf::Empty>(
[this](::grpc::ServerContext* context,
@@ -7958,7 +8115,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_IsAutomaticUpdateOn() {
- ::grpc::Service::MarkMethodStreamed(30,
+ ::grpc::Service::MarkMethodStreamed(31,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::Empty, ::google::protobuf::BoolValue>(
[this](::grpc::ServerContext* context,
@@ -7985,7 +8142,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_IsCacheOnDiskEnabled() {
- ::grpc::Service::MarkMethodStreamed(31,
+ ::grpc::Service::MarkMethodStreamed(32,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::Empty, ::google::protobuf::BoolValue>(
[this](::grpc::ServerContext* context,
@@ -8012,7 +8169,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_DiskCachePath() {
- ::grpc::Service::MarkMethodStreamed(32,
+ ::grpc::Service::MarkMethodStreamed(33,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::Empty, ::google::protobuf::StringValue>(
[this](::grpc::ServerContext* context,
@@ -8039,7 +8196,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_ChangeLocalCache() {
- ::grpc::Service::MarkMethodStreamed(33,
+ ::grpc::Service::MarkMethodStreamed(34,
new ::grpc::internal::StreamedUnaryHandler<
::grpc::ChangeLocalCacheRequest, ::google::protobuf::Empty>(
[this](::grpc::ServerContext* context,
@@ -8066,7 +8223,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_SetIsDoHEnabled() {
- ::grpc::Service::MarkMethodStreamed(34,
+ ::grpc::Service::MarkMethodStreamed(35,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::BoolValue, ::google::protobuf::Empty>(
[this](::grpc::ServerContext* context,
@@ -8093,7 +8250,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_IsDoHEnabled() {
- ::grpc::Service::MarkMethodStreamed(35,
+ ::grpc::Service::MarkMethodStreamed(36,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::Empty, ::google::protobuf::BoolValue>(
[this](::grpc::ServerContext* context,
@@ -8120,7 +8277,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_SetUseSslForSmtp() {
- ::grpc::Service::MarkMethodStreamed(36,
+ ::grpc::Service::MarkMethodStreamed(37,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::BoolValue, ::google::protobuf::Empty>(
[this](::grpc::ServerContext* context,
@@ -8147,7 +8304,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_UseSslForSmtp() {
- ::grpc::Service::MarkMethodStreamed(37,
+ ::grpc::Service::MarkMethodStreamed(38,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::Empty, ::google::protobuf::BoolValue>(
[this](::grpc::ServerContext* context,
@@ -8174,7 +8331,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_Hostname() {
- ::grpc::Service::MarkMethodStreamed(38,
+ ::grpc::Service::MarkMethodStreamed(39,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::Empty, ::google::protobuf::StringValue>(
[this](::grpc::ServerContext* context,
@@ -8201,7 +8358,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_ImapPort() {
- ::grpc::Service::MarkMethodStreamed(39,
+ ::grpc::Service::MarkMethodStreamed(40,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::Empty, ::google::protobuf::Int32Value>(
[this](::grpc::ServerContext* context,
@@ -8228,7 +8385,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_SmtpPort() {
- ::grpc::Service::MarkMethodStreamed(40,
+ ::grpc::Service::MarkMethodStreamed(41,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::Empty, ::google::protobuf::Int32Value>(
[this](::grpc::ServerContext* context,
@@ -8255,7 +8412,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_ChangePorts() {
- ::grpc::Service::MarkMethodStreamed(41,
+ ::grpc::Service::MarkMethodStreamed(42,
new ::grpc::internal::StreamedUnaryHandler<
::grpc::ChangePortsRequest, ::google::protobuf::Empty>(
[this](::grpc::ServerContext* context,
@@ -8282,7 +8439,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_IsPortFree() {
- ::grpc::Service::MarkMethodStreamed(42,
+ ::grpc::Service::MarkMethodStreamed(43,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::Int32Value, ::google::protobuf::BoolValue>(
[this](::grpc::ServerContext* context,
@@ -8309,7 +8466,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_AvailableKeychains() {
- ::grpc::Service::MarkMethodStreamed(43,
+ ::grpc::Service::MarkMethodStreamed(44,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::Empty, ::grpc::AvailableKeychainsResponse>(
[this](::grpc::ServerContext* context,
@@ -8336,7 +8493,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_SetCurrentKeychain() {
- ::grpc::Service::MarkMethodStreamed(44,
+ ::grpc::Service::MarkMethodStreamed(45,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::StringValue, ::google::protobuf::Empty>(
[this](::grpc::ServerContext* context,
@@ -8363,7 +8520,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_CurrentKeychain() {
- ::grpc::Service::MarkMethodStreamed(45,
+ ::grpc::Service::MarkMethodStreamed(46,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::Empty, ::google::protobuf::StringValue>(
[this](::grpc::ServerContext* context,
@@ -8390,7 +8547,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_GetUserList() {
- ::grpc::Service::MarkMethodStreamed(46,
+ ::grpc::Service::MarkMethodStreamed(47,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::Empty, ::grpc::UserListResponse>(
[this](::grpc::ServerContext* context,
@@ -8417,7 +8574,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_GetUser() {
- ::grpc::Service::MarkMethodStreamed(47,
+ ::grpc::Service::MarkMethodStreamed(48,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::StringValue, ::grpc::User>(
[this](::grpc::ServerContext* context,
@@ -8444,7 +8601,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_SetUserSplitMode() {
- ::grpc::Service::MarkMethodStreamed(48,
+ ::grpc::Service::MarkMethodStreamed(49,
new ::grpc::internal::StreamedUnaryHandler<
::grpc::UserSplitModeRequest, ::google::protobuf::Empty>(
[this](::grpc::ServerContext* context,
@@ -8471,7 +8628,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_LogoutUser() {
- ::grpc::Service::MarkMethodStreamed(49,
+ ::grpc::Service::MarkMethodStreamed(50,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::StringValue, ::google::protobuf::Empty>(
[this](::grpc::ServerContext* context,
@@ -8498,7 +8655,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_RemoveUser() {
- ::grpc::Service::MarkMethodStreamed(50,
+ ::grpc::Service::MarkMethodStreamed(51,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::StringValue, ::google::protobuf::Empty>(
[this](::grpc::ServerContext* context,
@@ -8525,7 +8682,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_ConfigureUserAppleMail() {
- ::grpc::Service::MarkMethodStreamed(51,
+ ::grpc::Service::MarkMethodStreamed(52,
new ::grpc::internal::StreamedUnaryHandler<
::grpc::ConfigureAppleMailRequest, ::google::protobuf::Empty>(
[this](::grpc::ServerContext* context,
@@ -8552,7 +8709,7 @@ class Bridge final {
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithStreamedUnaryMethod_StopEventStream() {
- ::grpc::Service::MarkMethodStreamed(53,
+ ::grpc::Service::MarkMethodStreamed(54,
new ::grpc::internal::StreamedUnaryHandler<
::google::protobuf::Empty, ::google::protobuf::Empty>(
[this](::grpc::ServerContext* context,
@@ -8573,14 +8730,14 @@ class Bridge final {
// replace default version of method with streamed unary
virtual ::grpc::Status StreamedStopEventStream(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::google::protobuf::Empty,::google::protobuf::Empty>* server_unary_streamer) = 0;
};
- typedef WithStreamedUnaryMethod_AddLogEntry > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > StreamedUnaryService;
+ typedef WithStreamedUnaryMethod_AddLogEntry > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > StreamedUnaryService;
template
class WithSplitStreamingMethod_StartEventStream : public BaseClass {
private:
void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
public:
WithSplitStreamingMethod_StartEventStream() {
- ::grpc::Service::MarkMethodStreamed(52,
+ ::grpc::Service::MarkMethodStreamed(53,
new ::grpc::internal::SplitServerStreamingHandler<
::grpc::EventStreamRequest, ::grpc::StreamEvent>(
[this](::grpc::ServerContext* context,
@@ -8602,7 +8759,7 @@ class Bridge final {
virtual ::grpc::Status StreamedStartEventStream(::grpc::ServerContext* context, ::grpc::ServerSplitStreamer< ::grpc::EventStreamRequest,::grpc::StreamEvent>* server_split_streamer) = 0;
};
typedef WithSplitStreamingMethod_StartEventStream SplitStreamedService;
- typedef WithStreamedUnaryMethod_AddLogEntry > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > StreamedService;
+ typedef WithStreamedUnaryMethod_AddLogEntry > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > StreamedService;
};
} // namespace grpc
diff --git a/internal/frontend/bridgepp/bridgepp/GRPC/bridge.pb.cc b/internal/frontend/bridgepp/bridgepp/GRPC/bridge.pb.cc
index 0068c6cf..24fd00a5 100644
--- a/internal/frontend/bridgepp/bridgepp/GRPC/bridge.pb.cc
+++ b/internal/frontend/bridgepp/bridgepp/GRPC/bridge.pb.cc
@@ -1466,7 +1466,7 @@ const char descriptor_table_protodef_bridge_2eproto[] PROTOBUF_SECTION_VARIABLE(
"CACHE_UNAVAILABLE_ERROR\020\000\022\031\n\025CACHE_CANT_"
"MOVE_ERROR\020\001\022\r\n\tDISK_FULL\020\002*A\n\025MailSetti"
"ngsErrorType\022\023\n\017IMAP_PORT_ISSUE\020\000\022\023\n\017SMT"
- "P_PORT_ISSUE\020\0012\371\034\n\006Bridge\022\?\n\013AddLogEntry"
+ "P_PORT_ISSUE\020\0012\300\035\n\006Bridge\022\?\n\013AddLogEntry"
"\022\030.grpc.AddLogEntryRequest\032\026.google.prot"
"obuf.Empty\022:\n\010GuiReady\022\026.google.protobuf"
".Empty\032\026.google.protobuf.Empty\0226\n\004Quit\022\026"
@@ -1506,61 +1506,63 @@ const char descriptor_table_protodef_bridge_2eproto[] PROTOBUF_SECTION_VARIABLE(
"lClient\022\026.google.protobuf.Empty\032\034.google"
".protobuf.StringValue\022;\n\tReportBug\022\026.grp"
"c.ReportBugRequest\032\026.google.protobuf.Emp"
- "ty\0223\n\005Login\022\022.grpc.LoginRequest\032\026.google"
- ".protobuf.Empty\0226\n\010Login2FA\022\022.grpc.Login"
- "Request\032\026.google.protobuf.Empty\022=\n\017Login"
- "2Passwords\022\022.grpc.LoginRequest\032\026.google."
- "protobuf.Empty\022=\n\nLoginAbort\022\027.grpc.Logi"
- "nAbortRequest\032\026.google.protobuf.Empty\022=\n"
- "\013CheckUpdate\022\026.google.protobuf.Empty\032\026.g"
- "oogle.protobuf.Empty\022\?\n\rInstallUpdate\022\026."
- "google.protobuf.Empty\032\026.google.protobuf."
- "Empty\022L\n\026SetIsAutomaticUpdateOn\022\032.google"
- ".protobuf.BoolValue\032\026.google.protobuf.Em"
- "pty\022I\n\023IsAutomaticUpdateOn\022\026.google.prot"
- "obuf.Empty\032\032.google.protobuf.BoolValue\022J"
- "\n\024IsCacheOnDiskEnabled\022\026.google.protobuf"
- ".Empty\032\032.google.protobuf.BoolValue\022E\n\rDi"
- "skCachePath\022\026.google.protobuf.Empty\032\034.go"
- "ogle.protobuf.StringValue\022I\n\020ChangeLocal"
- "Cache\022\035.grpc.ChangeLocalCacheRequest\032\026.g"
- "oogle.protobuf.Empty\022E\n\017SetIsDoHEnabled\022"
- "\032.google.protobuf.BoolValue\032\026.google.pro"
- "tobuf.Empty\022B\n\014IsDoHEnabled\022\026.google.pro"
- "tobuf.Empty\032\032.google.protobuf.BoolValue\022"
- "F\n\020SetUseSslForSmtp\022\032.google.protobuf.Bo"
- "olValue\032\026.google.protobuf.Empty\022C\n\rUseSs"
- "lForSmtp\022\026.google.protobuf.Empty\032\032.googl"
- "e.protobuf.BoolValue\022@\n\010Hostname\022\026.googl"
- "e.protobuf.Empty\032\034.google.protobuf.Strin"
- "gValue\022\?\n\010ImapPort\022\026.google.protobuf.Emp"
- "ty\032\033.google.protobuf.Int32Value\022\?\n\010SmtpP"
- "ort\022\026.google.protobuf.Empty\032\033.google.pro"
- "tobuf.Int32Value\022\?\n\013ChangePorts\022\030.grpc.C"
- "hangePortsRequest\032\026.google.protobuf.Empt"
- "y\022E\n\nIsPortFree\022\033.google.protobuf.Int32V"
- "alue\032\032.google.protobuf.BoolValue\022N\n\022Avai"
- "lableKeychains\022\026.google.protobuf.Empty\032 "
- ".grpc.AvailableKeychainsResponse\022J\n\022SetC"
- "urrentKeychain\022\034.google.protobuf.StringV"
- "alue\032\026.google.protobuf.Empty\022G\n\017CurrentK"
- "eychain\022\026.google.protobuf.Empty\032\034.google"
- ".protobuf.StringValue\022=\n\013GetUserList\022\026.g"
- "oogle.protobuf.Empty\032\026.grpc.UserListResp"
- "onse\0223\n\007GetUser\022\034.google.protobuf.String"
- "Value\032\n.grpc.User\022F\n\020SetUserSplitMode\022\032."
- "grpc.UserSplitModeRequest\032\026.google.proto"
- "buf.Empty\022B\n\nLogoutUser\022\034.google.protobu"
- "f.StringValue\032\026.google.protobuf.Empty\022B\n"
- "\nRemoveUser\022\034.google.protobuf.StringValu"
- "e\032\026.google.protobuf.Empty\022Q\n\026ConfigureUs"
- "erAppleMail\022\037.grpc.ConfigureAppleMailReq"
- "uest\032\026.google.protobuf.Empty\022A\n\020StartEve"
- "ntStream\022\030.grpc.EventStreamRequest\032\021.grp"
- "c.StreamEvent0\001\022A\n\017StopEventStream\022\026.goo"
- "gle.protobuf.Empty\032\026.google.protobuf.Emp"
- "tyB6Z4github.com/ProtonMail/proton-bridg"
- "e/v2/internal/grpcb\006proto3"
+ "ty\022E\n\rForceLauncher\022\034.google.protobuf.St"
+ "ringValue\032\026.google.protobuf.Empty\0223\n\005Log"
+ "in\022\022.grpc.LoginRequest\032\026.google.protobuf"
+ ".Empty\0226\n\010Login2FA\022\022.grpc.LoginRequest\032\026"
+ ".google.protobuf.Empty\022=\n\017Login2Password"
+ "s\022\022.grpc.LoginRequest\032\026.google.protobuf."
+ "Empty\022=\n\nLoginAbort\022\027.grpc.LoginAbortReq"
+ "uest\032\026.google.protobuf.Empty\022=\n\013CheckUpd"
+ "ate\022\026.google.protobuf.Empty\032\026.google.pro"
+ "tobuf.Empty\022\?\n\rInstallUpdate\022\026.google.pr"
+ "otobuf.Empty\032\026.google.protobuf.Empty\022L\n\026"
+ "SetIsAutomaticUpdateOn\022\032.google.protobuf"
+ ".BoolValue\032\026.google.protobuf.Empty\022I\n\023Is"
+ "AutomaticUpdateOn\022\026.google.protobuf.Empt"
+ "y\032\032.google.protobuf.BoolValue\022J\n\024IsCache"
+ "OnDiskEnabled\022\026.google.protobuf.Empty\032\032."
+ "google.protobuf.BoolValue\022E\n\rDiskCachePa"
+ "th\022\026.google.protobuf.Empty\032\034.google.prot"
+ "obuf.StringValue\022I\n\020ChangeLocalCache\022\035.g"
+ "rpc.ChangeLocalCacheRequest\032\026.google.pro"
+ "tobuf.Empty\022E\n\017SetIsDoHEnabled\022\032.google."
+ "protobuf.BoolValue\032\026.google.protobuf.Emp"
+ "ty\022B\n\014IsDoHEnabled\022\026.google.protobuf.Emp"
+ "ty\032\032.google.protobuf.BoolValue\022F\n\020SetUse"
+ "SslForSmtp\022\032.google.protobuf.BoolValue\032\026"
+ ".google.protobuf.Empty\022C\n\rUseSslForSmtp\022"
+ "\026.google.protobuf.Empty\032\032.google.protobu"
+ "f.BoolValue\022@\n\010Hostname\022\026.google.protobu"
+ "f.Empty\032\034.google.protobuf.StringValue\022\?\n"
+ "\010ImapPort\022\026.google.protobuf.Empty\032\033.goog"
+ "le.protobuf.Int32Value\022\?\n\010SmtpPort\022\026.goo"
+ "gle.protobuf.Empty\032\033.google.protobuf.Int"
+ "32Value\022\?\n\013ChangePorts\022\030.grpc.ChangePort"
+ "sRequest\032\026.google.protobuf.Empty\022E\n\nIsPo"
+ "rtFree\022\033.google.protobuf.Int32Value\032\032.go"
+ "ogle.protobuf.BoolValue\022N\n\022AvailableKeyc"
+ "hains\022\026.google.protobuf.Empty\032 .grpc.Ava"
+ "ilableKeychainsResponse\022J\n\022SetCurrentKey"
+ "chain\022\034.google.protobuf.StringValue\032\026.go"
+ "ogle.protobuf.Empty\022G\n\017CurrentKeychain\022\026"
+ ".google.protobuf.Empty\032\034.google.protobuf"
+ ".StringValue\022=\n\013GetUserList\022\026.google.pro"
+ "tobuf.Empty\032\026.grpc.UserListResponse\0223\n\007G"
+ "etUser\022\034.google.protobuf.StringValue\032\n.g"
+ "rpc.User\022F\n\020SetUserSplitMode\022\032.grpc.User"
+ "SplitModeRequest\032\026.google.protobuf.Empty"
+ "\022B\n\nLogoutUser\022\034.google.protobuf.StringV"
+ "alue\032\026.google.protobuf.Empty\022B\n\nRemoveUs"
+ "er\022\034.google.protobuf.StringValue\032\026.googl"
+ "e.protobuf.Empty\022Q\n\026ConfigureUserAppleMa"
+ "il\022\037.grpc.ConfigureAppleMailRequest\032\026.go"
+ "ogle.protobuf.Empty\022A\n\020StartEventStream\022"
+ "\030.grpc.EventStreamRequest\032\021.grpc.StreamE"
+ "vent0\001\022A\n\017StopEventStream\022\026.google.proto"
+ "buf.Empty\032\026.google.protobuf.EmptyB6Z4git"
+ "hub.com/ProtonMail/proton-bridge/v2/inte"
+ "rnal/grpcb\006proto3"
;
static const ::_pbi::DescriptorTable* const descriptor_table_bridge_2eproto_deps[2] = {
&::descriptor_table_google_2fprotobuf_2fempty_2eproto,
@@ -1568,7 +1570,7 @@ static const ::_pbi::DescriptorTable* const descriptor_table_bridge_2eproto_deps
};
static ::_pbi::once_flag descriptor_table_bridge_2eproto_once;
const ::_pbi::DescriptorTable descriptor_table_bridge_2eproto = {
- false, false, 9226, descriptor_table_protodef_bridge_2eproto,
+ false, false, 9297, descriptor_table_protodef_bridge_2eproto,
"bridge.proto",
&descriptor_table_bridge_2eproto_once, descriptor_table_bridge_2eproto_deps, 2, 57,
schemas, file_default_instances, TableStruct_bridge_2eproto::offsets,
diff --git a/internal/frontend/bridgepp/bridgepp/Worker/Overseer.cpp b/internal/frontend/bridgepp/bridgepp/Worker/Overseer.cpp
index 37121583..62c9f4e4 100644
--- a/internal/frontend/bridgepp/bridgepp/Worker/Overseer.cpp
+++ b/internal/frontend/bridgepp/bridgepp/Worker/Overseer.cpp
@@ -59,7 +59,7 @@ void Overseer::startWorker(bool autorelease) const
worker_->moveToThread(thread_);
connect(thread_, &QThread::started, worker_, &Worker::run);
- connect(worker_, &Worker::finished, [&]() { thread_->quit(); }); // for unkwown reason, connect to the QThread::quit slot does not work...
+ connect(worker_, &Worker::finished, [&]() {thread_->quit(); }); // Safety, normally the thread already properly quits.
connect(worker_, &Worker::error, [&]() { thread_->quit(); });
if (autorelease)
diff --git a/internal/frontend/grpc/bridge.pb.go b/internal/frontend/grpc/bridge.pb.go
index d461ff57..c00c74a0 100644
--- a/internal/frontend/grpc/bridge.pb.go
+++ b/internal/frontend/grpc/bridge.pb.go
@@ -18,7 +18,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.0
-// protoc v3.21.2
+// protoc v3.21.3
// source: bridge.proto
package grpc
@@ -4122,7 +4122,7 @@ var file_bridge_proto_rawDesc = []byte{
0x73, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x49, 0x4d,
0x41, 0x50, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x49, 0x53, 0x53, 0x55, 0x45, 0x10, 0x00, 0x12,
0x13, 0x0a, 0x0f, 0x53, 0x4d, 0x54, 0x50, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x49, 0x53, 0x53,
- 0x55, 0x45, 0x10, 0x01, 0x32, 0xf9, 0x1c, 0x0a, 0x06, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x12,
+ 0x55, 0x45, 0x10, 0x01, 0x32, 0xc0, 0x1d, 0x0a, 0x06, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x12,
0x3f, 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x18,
0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x64, 0x64, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72,
0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
@@ -4221,143 +4221,148 @@ var file_bridge_proto_rawDesc = []byte{
0x65, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x75, 0x67, 0x12, 0x16, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e,
0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x75, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
- 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x33, 0x0a, 0x05, 0x4c, 0x6f, 0x67, 0x69,
- 0x6e, 0x12, 0x12, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
- 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x36, 0x0a,
- 0x08, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x32, 0x46, 0x41, 0x12, 0x12, 0x2e, 0x67, 0x72, 0x70, 0x63,
- 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e,
- 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
- 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3d, 0x0a, 0x0f, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x32, 0x50,
- 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x12, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e,
+ 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x45, 0x0a, 0x0d, 0x46, 0x6f, 0x72, 0x63,
+ 0x65, 0x4c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x65, 0x72, 0x12, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69,
+ 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12,
+ 0x33, 0x0a, 0x05, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x12, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e,
0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45,
- 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3d, 0x0a, 0x0a, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x41, 0x62, 0x6f,
- 0x72, 0x74, 0x12, 0x17, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x41,
- 0x62, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f,
- 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d,
- 0x70, 0x74, 0x79, 0x12, 0x3d, 0x0a, 0x0b, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x70, 0x64, 0x61,
- 0x74, 0x65, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
- 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f,
- 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70,
- 0x74, 0x79, 0x12, 0x3f, 0x0a, 0x0d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x55, 0x70, 0x64,
- 0x61, 0x74, 0x65, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
- 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16, 0x2e, 0x67, 0x6f,
- 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d,
- 0x70, 0x74, 0x79, 0x12, 0x4c, 0x0a, 0x16, 0x53, 0x65, 0x74, 0x49, 0x73, 0x41, 0x75, 0x74, 0x6f,
- 0x6d, 0x61, 0x74, 0x69, 0x63, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x6e, 0x12, 0x1a, 0x2e,
- 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
- 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6d, 0x70, 0x74, 0x79, 0x12, 0x36, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x32, 0x46, 0x41,
+ 0x12, 0x12, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3d, 0x0a, 0x0f,
+ 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x32, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x12,
+ 0x12, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3d, 0x0a, 0x0a, 0x4c,
+ 0x6f, 0x67, 0x69, 0x6e, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x12, 0x17, 0x2e, 0x67, 0x72, 0x70, 0x63,
+ 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3d, 0x0a, 0x0b, 0x43, 0x68,
+ 0x65, 0x63, 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74,
- 0x79, 0x12, 0x49, 0x0a, 0x13, 0x49, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63,
- 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x6e, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x79, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3f, 0x0a, 0x0d, 0x49, 0x6e, 0x73,
+ 0x74, 0x61, 0x6c, 0x6c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70,
+ 0x74, 0x79, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x4c, 0x0a, 0x16, 0x53, 0x65,
+ 0x74, 0x49, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x55, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x4f, 0x6e, 0x12, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65,
+ 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
+ 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x49, 0x0a, 0x13, 0x49, 0x73, 0x41, 0x75,
+ 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x6e, 0x12,
+ 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
+ 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61,
+ 0x6c, 0x75, 0x65, 0x12, 0x4a, 0x0a, 0x14, 0x49, 0x73, 0x43, 0x61, 0x63, 0x68, 0x65, 0x4f, 0x6e,
+ 0x44, 0x69, 0x73, 0x6b, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x16, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d,
+ 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12,
+ 0x45, 0x0a, 0x0d, 0x44, 0x69, 0x73, 0x6b, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x61, 0x74, 0x68,
+ 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
+ 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e,
+ 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x49, 0x0a, 0x10, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
+ 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x1d, 0x2e, 0x67, 0x72, 0x70,
+ 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x61, 0x63,
+ 0x68, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74,
+ 0x79, 0x12, 0x45, 0x0a, 0x0f, 0x53, 0x65, 0x74, 0x49, 0x73, 0x44, 0x6f, 0x48, 0x45, 0x6e, 0x61,
+ 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65,
+ 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
+ 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x42, 0x0a, 0x0c, 0x49, 0x73, 0x44, 0x6f,
+ 0x48, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79,
0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
- 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x4a, 0x0a, 0x14,
- 0x49, 0x73, 0x43, 0x61, 0x63, 0x68, 0x65, 0x4f, 0x6e, 0x44, 0x69, 0x73, 0x6b, 0x45, 0x6e, 0x61,
- 0x62, 0x6c, 0x65, 0x64, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
- 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x67,
- 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42,
- 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x45, 0x0a, 0x0d, 0x44, 0x69, 0x73, 0x6b,
- 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
- 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74,
- 0x79, 0x1a, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
- 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12,
- 0x49, 0x0a, 0x10, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x61,
- 0x63, 0x68, 0x65, 0x12, 0x1d, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67,
- 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
- 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x45, 0x0a, 0x0f, 0x53, 0x65,
- 0x74, 0x49, 0x73, 0x44, 0x6f, 0x48, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1a, 0x2e,
+ 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x46, 0x0a, 0x10,
+ 0x53, 0x65, 0x74, 0x55, 0x73, 0x65, 0x53, 0x73, 0x6c, 0x46, 0x6f, 0x72, 0x53, 0x6d, 0x74, 0x70,
+ 0x12, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
+ 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45,
+ 0x6d, 0x70, 0x74, 0x79, 0x12, 0x43, 0x0a, 0x0d, 0x55, 0x73, 0x65, 0x53, 0x73, 0x6c, 0x46, 0x6f,
+ 0x72, 0x53, 0x6d, 0x74, 0x70, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
- 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x40, 0x0a, 0x08, 0x48, 0x6f, 0x73,
+ 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1c, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
+ 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x49,
+ 0x6d, 0x61, 0x70, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a,
+ 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
+ 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3f, 0x0a, 0x08,
+ 0x53, 0x6d, 0x74, 0x70, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79,
+ 0x1a, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
+ 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3f, 0x0a,
+ 0x0b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x18, 0x2e, 0x67,
+ 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x45,
+ 0x0a, 0x0a, 0x49, 0x73, 0x50, 0x6f, 0x72, 0x74, 0x46, 0x72, 0x65, 0x65, 0x12, 0x1b, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49,
+ 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c,
+ 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x4e, 0x0a, 0x12, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62,
+ 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d,
+ 0x70, 0x74, 0x79, 0x1a, 0x20, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x76, 0x61, 0x69, 0x6c,
+ 0x61, 0x62, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x12, 0x53, 0x65, 0x74, 0x43, 0x75, 0x72, 0x72,
+ 0x65, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x1c, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74,
+ 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74,
- 0x79, 0x12, 0x42, 0x0a, 0x0c, 0x49, 0x73, 0x44, 0x6f, 0x48, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65,
- 0x64, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
- 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
- 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c,
- 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x46, 0x0a, 0x10, 0x53, 0x65, 0x74, 0x55, 0x73, 0x65, 0x53,
- 0x73, 0x6c, 0x46, 0x6f, 0x72, 0x53, 0x6d, 0x74, 0x70, 0x12, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
- 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c,
- 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
- 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x43, 0x0a,
- 0x0d, 0x55, 0x73, 0x65, 0x53, 0x73, 0x6c, 0x46, 0x6f, 0x72, 0x53, 0x6d, 0x74, 0x70, 0x12, 0x16,
+ 0x79, 0x12, 0x47, 0x0a, 0x0f, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x63,
+ 0x68, 0x61, 0x69, 0x6e, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1c, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53,
+ 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3d, 0x0a, 0x0b, 0x47, 0x65,
+ 0x74, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74,
+ 0x79, 0x1a, 0x16, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73,
+ 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x07, 0x47, 0x65, 0x74,
+ 0x55, 0x73, 0x65, 0x72, 0x12, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c,
+ 0x75, 0x65, 0x1a, 0x0a, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x12, 0x46,
+ 0x0a, 0x10, 0x53, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x4d, 0x6f,
+ 0x64, 0x65, 0x12, 0x1a, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x53, 0x70,
+ 0x6c, 0x69, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
- 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
- 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c,
- 0x75, 0x65, 0x12, 0x40, 0x0a, 0x08, 0x48, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16,
- 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
- 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
- 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56,
- 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x49, 0x6d, 0x61, 0x70, 0x50, 0x6f, 0x72, 0x74,
- 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
- 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
- 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32,
- 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x53, 0x6d, 0x74, 0x70, 0x50, 0x6f, 0x72,
- 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
- 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
- 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33,
- 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3f, 0x0a, 0x0b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
- 0x50, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x18, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61,
- 0x6e, 0x67, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
- 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
- 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x45, 0x0a, 0x0a, 0x49, 0x73, 0x50, 0x6f, 0x72,
- 0x74, 0x46, 0x72, 0x65, 0x65, 0x12, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
- 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c,
- 0x75, 0x65, 0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
- 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x4e,
- 0x0a, 0x12, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x63, 0x68,
- 0x61, 0x69, 0x6e, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
- 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x20, 0x2e, 0x67,
- 0x72, 0x70, 0x63, 0x2e, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4b, 0x65, 0x79,
- 0x63, 0x68, 0x61, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a,
- 0x0a, 0x12, 0x53, 0x65, 0x74, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x63,
- 0x68, 0x61, 0x69, 0x6e, 0x12, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
+ 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x42, 0x0a, 0x0a, 0x4c, 0x6f, 0x67, 0x6f, 0x75, 0x74,
+ 0x55, 0x73, 0x65, 0x72, 0x12, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c,
0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
- 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x47, 0x0a, 0x0f, 0x43, 0x75,
- 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x16, 0x2e,
- 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
- 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
- 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61,
- 0x6c, 0x75, 0x65, 0x12, 0x3d, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69,
- 0x73, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
- 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16, 0x2e, 0x67, 0x72, 0x70,
- 0x63, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x12, 0x33, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1c, 0x2e,
- 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
- 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x0a, 0x2e, 0x67, 0x72,
- 0x70, 0x63, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x12, 0x46, 0x0a, 0x10, 0x53, 0x65, 0x74, 0x55, 0x73,
- 0x65, 0x72, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1a, 0x2e, 0x67, 0x72,
- 0x70, 0x63, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x4d, 0x6f, 0x64, 0x65,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
- 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12,
- 0x42, 0x0a, 0x0a, 0x4c, 0x6f, 0x67, 0x6f, 0x75, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1c, 0x2e,
- 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
- 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f,
- 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d,
- 0x70, 0x74, 0x79, 0x12, 0x42, 0x0a, 0x0a, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x55, 0x73, 0x65,
- 0x72, 0x12, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
- 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a,
+ 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x42, 0x0a, 0x0a, 0x52, 0x65,
+ 0x6d, 0x6f, 0x76, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e,
+ 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x51,
+ 0x0a, 0x16, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x55, 0x73, 0x65, 0x72, 0x41,
+ 0x70, 0x70, 0x6c, 0x65, 0x4d, 0x61, 0x69, 0x6c, 0x12, 0x1f, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x65, 0x4d, 0x61,
+ 0x69, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74,
+ 0x79, 0x12, 0x41, 0x0a, 0x10, 0x53, 0x74, 0x61, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x53,
+ 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x18, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x76, 0x65,
+ 0x6e, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x11, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65,
+ 0x6e, 0x74, 0x30, 0x01, 0x12, 0x41, 0x0a, 0x0f, 0x53, 0x74, 0x6f, 0x70, 0x45, 0x76, 0x65, 0x6e,
+ 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a,
0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
- 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x51, 0x0a, 0x16, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x75, 0x72, 0x65, 0x55, 0x73, 0x65, 0x72, 0x41, 0x70, 0x70, 0x6c, 0x65, 0x4d, 0x61, 0x69,
- 0x6c, 0x12, 0x1f, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75,
- 0x72, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x65, 0x4d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
- 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x41, 0x0a, 0x10, 0x53, 0x74,
- 0x61, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x18,
- 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61,
- 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e,
- 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x30, 0x01, 0x12, 0x41, 0x0a,
- 0x0f, 0x53, 0x74, 0x6f, 0x70, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
- 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
- 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
- 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79,
- 0x42, 0x36, 0x5a, 0x34, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50,
- 0x72, 0x6f, 0x74, 0x6f, 0x6e, 0x4d, 0x61, 0x69, 0x6c, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x6e,
- 0x2d, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x2f, 0x76, 0x32, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72,
- 0x6e, 0x61, 0x6c, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+ 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x42, 0x36, 0x5a, 0x34, 0x67, 0x69, 0x74, 0x68, 0x75,
+ 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x6e, 0x4d, 0x61, 0x69, 0x6c,
+ 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x6e, 0x2d, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x2f, 0x76,
+ 0x32, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x62,
+ 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -4517,93 +4522,95 @@ var file_bridge_proto_depIdxs = []int32{
62, // 71: grpc.Bridge.ColorSchemeName:input_type -> google.protobuf.Empty
62, // 72: grpc.Bridge.CurrentEmailClient:input_type -> google.protobuf.Empty
6, // 73: grpc.Bridge.ReportBug:input_type -> grpc.ReportBugRequest
- 7, // 74: grpc.Bridge.Login:input_type -> grpc.LoginRequest
- 7, // 75: grpc.Bridge.Login2FA:input_type -> grpc.LoginRequest
- 7, // 76: grpc.Bridge.Login2Passwords:input_type -> grpc.LoginRequest
- 8, // 77: grpc.Bridge.LoginAbort:input_type -> grpc.LoginAbortRequest
- 62, // 78: grpc.Bridge.CheckUpdate:input_type -> google.protobuf.Empty
- 62, // 79: grpc.Bridge.InstallUpdate:input_type -> google.protobuf.Empty
- 63, // 80: grpc.Bridge.SetIsAutomaticUpdateOn:input_type -> google.protobuf.BoolValue
- 62, // 81: grpc.Bridge.IsAutomaticUpdateOn:input_type -> google.protobuf.Empty
- 62, // 82: grpc.Bridge.IsCacheOnDiskEnabled:input_type -> google.protobuf.Empty
- 62, // 83: grpc.Bridge.DiskCachePath:input_type -> google.protobuf.Empty
- 9, // 84: grpc.Bridge.ChangeLocalCache:input_type -> grpc.ChangeLocalCacheRequest
- 63, // 85: grpc.Bridge.SetIsDoHEnabled:input_type -> google.protobuf.BoolValue
- 62, // 86: grpc.Bridge.IsDoHEnabled:input_type -> google.protobuf.Empty
- 63, // 87: grpc.Bridge.SetUseSslForSmtp:input_type -> google.protobuf.BoolValue
- 62, // 88: grpc.Bridge.UseSslForSmtp:input_type -> google.protobuf.Empty
- 62, // 89: grpc.Bridge.Hostname:input_type -> google.protobuf.Empty
- 62, // 90: grpc.Bridge.ImapPort:input_type -> google.protobuf.Empty
- 62, // 91: grpc.Bridge.SmtpPort:input_type -> google.protobuf.Empty
- 10, // 92: grpc.Bridge.ChangePorts:input_type -> grpc.ChangePortsRequest
- 65, // 93: grpc.Bridge.IsPortFree:input_type -> google.protobuf.Int32Value
- 62, // 94: grpc.Bridge.AvailableKeychains:input_type -> google.protobuf.Empty
- 64, // 95: grpc.Bridge.SetCurrentKeychain:input_type -> google.protobuf.StringValue
- 62, // 96: grpc.Bridge.CurrentKeychain:input_type -> google.protobuf.Empty
- 62, // 97: grpc.Bridge.GetUserList:input_type -> google.protobuf.Empty
- 64, // 98: grpc.Bridge.GetUser:input_type -> google.protobuf.StringValue
- 13, // 99: grpc.Bridge.SetUserSplitMode:input_type -> grpc.UserSplitModeRequest
- 64, // 100: grpc.Bridge.LogoutUser:input_type -> google.protobuf.StringValue
- 64, // 101: grpc.Bridge.RemoveUser:input_type -> google.protobuf.StringValue
- 15, // 102: grpc.Bridge.ConfigureUserAppleMail:input_type -> grpc.ConfigureAppleMailRequest
- 16, // 103: grpc.Bridge.StartEventStream:input_type -> grpc.EventStreamRequest
- 62, // 104: grpc.Bridge.StopEventStream:input_type -> google.protobuf.Empty
- 62, // 105: grpc.Bridge.AddLogEntry:output_type -> google.protobuf.Empty
- 62, // 106: grpc.Bridge.GuiReady:output_type -> google.protobuf.Empty
- 62, // 107: grpc.Bridge.Quit:output_type -> google.protobuf.Empty
- 62, // 108: grpc.Bridge.Restart:output_type -> google.protobuf.Empty
- 63, // 109: grpc.Bridge.ShowOnStartup:output_type -> google.protobuf.BoolValue
- 63, // 110: grpc.Bridge.ShowSplashScreen:output_type -> google.protobuf.BoolValue
- 63, // 111: grpc.Bridge.IsFirstGuiStart:output_type -> google.protobuf.BoolValue
- 62, // 112: grpc.Bridge.SetIsAutostartOn:output_type -> google.protobuf.Empty
- 63, // 113: grpc.Bridge.IsAutostartOn:output_type -> google.protobuf.BoolValue
- 62, // 114: grpc.Bridge.SetIsBetaEnabled:output_type -> google.protobuf.Empty
- 63, // 115: grpc.Bridge.IsBetaEnabled:output_type -> google.protobuf.BoolValue
- 64, // 116: grpc.Bridge.GoOs:output_type -> google.protobuf.StringValue
- 62, // 117: grpc.Bridge.TriggerReset:output_type -> google.protobuf.Empty
- 64, // 118: grpc.Bridge.Version:output_type -> google.protobuf.StringValue
- 64, // 119: grpc.Bridge.LogsPath:output_type -> google.protobuf.StringValue
- 64, // 120: grpc.Bridge.LicensePath:output_type -> google.protobuf.StringValue
- 64, // 121: grpc.Bridge.ReleaseNotesPageLink:output_type -> google.protobuf.StringValue
- 64, // 122: grpc.Bridge.DependencyLicensesLink:output_type -> google.protobuf.StringValue
- 64, // 123: grpc.Bridge.LandingPageLink:output_type -> google.protobuf.StringValue
- 62, // 124: grpc.Bridge.SetColorSchemeName:output_type -> google.protobuf.Empty
- 64, // 125: grpc.Bridge.ColorSchemeName:output_type -> google.protobuf.StringValue
- 64, // 126: grpc.Bridge.CurrentEmailClient:output_type -> google.protobuf.StringValue
- 62, // 127: grpc.Bridge.ReportBug:output_type -> google.protobuf.Empty
- 62, // 128: grpc.Bridge.Login:output_type -> google.protobuf.Empty
- 62, // 129: grpc.Bridge.Login2FA:output_type -> google.protobuf.Empty
- 62, // 130: grpc.Bridge.Login2Passwords:output_type -> google.protobuf.Empty
- 62, // 131: grpc.Bridge.LoginAbort:output_type -> google.protobuf.Empty
- 62, // 132: grpc.Bridge.CheckUpdate:output_type -> google.protobuf.Empty
- 62, // 133: grpc.Bridge.InstallUpdate:output_type -> google.protobuf.Empty
- 62, // 134: grpc.Bridge.SetIsAutomaticUpdateOn:output_type -> google.protobuf.Empty
- 63, // 135: grpc.Bridge.IsAutomaticUpdateOn:output_type -> google.protobuf.BoolValue
- 63, // 136: grpc.Bridge.IsCacheOnDiskEnabled:output_type -> google.protobuf.BoolValue
- 64, // 137: grpc.Bridge.DiskCachePath:output_type -> google.protobuf.StringValue
- 62, // 138: grpc.Bridge.ChangeLocalCache:output_type -> google.protobuf.Empty
- 62, // 139: grpc.Bridge.SetIsDoHEnabled:output_type -> google.protobuf.Empty
- 63, // 140: grpc.Bridge.IsDoHEnabled:output_type -> google.protobuf.BoolValue
- 62, // 141: grpc.Bridge.SetUseSslForSmtp:output_type -> google.protobuf.Empty
- 63, // 142: grpc.Bridge.UseSslForSmtp:output_type -> google.protobuf.BoolValue
- 64, // 143: grpc.Bridge.Hostname:output_type -> google.protobuf.StringValue
- 65, // 144: grpc.Bridge.ImapPort:output_type -> google.protobuf.Int32Value
- 65, // 145: grpc.Bridge.SmtpPort:output_type -> google.protobuf.Int32Value
- 62, // 146: grpc.Bridge.ChangePorts:output_type -> google.protobuf.Empty
- 63, // 147: grpc.Bridge.IsPortFree:output_type -> google.protobuf.BoolValue
- 11, // 148: grpc.Bridge.AvailableKeychains:output_type -> grpc.AvailableKeychainsResponse
- 62, // 149: grpc.Bridge.SetCurrentKeychain:output_type -> google.protobuf.Empty
- 64, // 150: grpc.Bridge.CurrentKeychain:output_type -> google.protobuf.StringValue
- 14, // 151: grpc.Bridge.GetUserList:output_type -> grpc.UserListResponse
- 12, // 152: grpc.Bridge.GetUser:output_type -> grpc.User
- 62, // 153: grpc.Bridge.SetUserSplitMode:output_type -> google.protobuf.Empty
- 62, // 154: grpc.Bridge.LogoutUser:output_type -> google.protobuf.Empty
- 62, // 155: grpc.Bridge.RemoveUser:output_type -> google.protobuf.Empty
- 62, // 156: grpc.Bridge.ConfigureUserAppleMail:output_type -> google.protobuf.Empty
- 17, // 157: grpc.Bridge.StartEventStream:output_type -> grpc.StreamEvent
- 62, // 158: grpc.Bridge.StopEventStream:output_type -> google.protobuf.Empty
- 105, // [105:159] is the sub-list for method output_type
- 51, // [51:105] is the sub-list for method input_type
+ 64, // 74: grpc.Bridge.ForceLauncher:input_type -> google.protobuf.StringValue
+ 7, // 75: grpc.Bridge.Login:input_type -> grpc.LoginRequest
+ 7, // 76: grpc.Bridge.Login2FA:input_type -> grpc.LoginRequest
+ 7, // 77: grpc.Bridge.Login2Passwords:input_type -> grpc.LoginRequest
+ 8, // 78: grpc.Bridge.LoginAbort:input_type -> grpc.LoginAbortRequest
+ 62, // 79: grpc.Bridge.CheckUpdate:input_type -> google.protobuf.Empty
+ 62, // 80: grpc.Bridge.InstallUpdate:input_type -> google.protobuf.Empty
+ 63, // 81: grpc.Bridge.SetIsAutomaticUpdateOn:input_type -> google.protobuf.BoolValue
+ 62, // 82: grpc.Bridge.IsAutomaticUpdateOn:input_type -> google.protobuf.Empty
+ 62, // 83: grpc.Bridge.IsCacheOnDiskEnabled:input_type -> google.protobuf.Empty
+ 62, // 84: grpc.Bridge.DiskCachePath:input_type -> google.protobuf.Empty
+ 9, // 85: grpc.Bridge.ChangeLocalCache:input_type -> grpc.ChangeLocalCacheRequest
+ 63, // 86: grpc.Bridge.SetIsDoHEnabled:input_type -> google.protobuf.BoolValue
+ 62, // 87: grpc.Bridge.IsDoHEnabled:input_type -> google.protobuf.Empty
+ 63, // 88: grpc.Bridge.SetUseSslForSmtp:input_type -> google.protobuf.BoolValue
+ 62, // 89: grpc.Bridge.UseSslForSmtp:input_type -> google.protobuf.Empty
+ 62, // 90: grpc.Bridge.Hostname:input_type -> google.protobuf.Empty
+ 62, // 91: grpc.Bridge.ImapPort:input_type -> google.protobuf.Empty
+ 62, // 92: grpc.Bridge.SmtpPort:input_type -> google.protobuf.Empty
+ 10, // 93: grpc.Bridge.ChangePorts:input_type -> grpc.ChangePortsRequest
+ 65, // 94: grpc.Bridge.IsPortFree:input_type -> google.protobuf.Int32Value
+ 62, // 95: grpc.Bridge.AvailableKeychains:input_type -> google.protobuf.Empty
+ 64, // 96: grpc.Bridge.SetCurrentKeychain:input_type -> google.protobuf.StringValue
+ 62, // 97: grpc.Bridge.CurrentKeychain:input_type -> google.protobuf.Empty
+ 62, // 98: grpc.Bridge.GetUserList:input_type -> google.protobuf.Empty
+ 64, // 99: grpc.Bridge.GetUser:input_type -> google.protobuf.StringValue
+ 13, // 100: grpc.Bridge.SetUserSplitMode:input_type -> grpc.UserSplitModeRequest
+ 64, // 101: grpc.Bridge.LogoutUser:input_type -> google.protobuf.StringValue
+ 64, // 102: grpc.Bridge.RemoveUser:input_type -> google.protobuf.StringValue
+ 15, // 103: grpc.Bridge.ConfigureUserAppleMail:input_type -> grpc.ConfigureAppleMailRequest
+ 16, // 104: grpc.Bridge.StartEventStream:input_type -> grpc.EventStreamRequest
+ 62, // 105: grpc.Bridge.StopEventStream:input_type -> google.protobuf.Empty
+ 62, // 106: grpc.Bridge.AddLogEntry:output_type -> google.protobuf.Empty
+ 62, // 107: grpc.Bridge.GuiReady:output_type -> google.protobuf.Empty
+ 62, // 108: grpc.Bridge.Quit:output_type -> google.protobuf.Empty
+ 62, // 109: grpc.Bridge.Restart:output_type -> google.protobuf.Empty
+ 63, // 110: grpc.Bridge.ShowOnStartup:output_type -> google.protobuf.BoolValue
+ 63, // 111: grpc.Bridge.ShowSplashScreen:output_type -> google.protobuf.BoolValue
+ 63, // 112: grpc.Bridge.IsFirstGuiStart:output_type -> google.protobuf.BoolValue
+ 62, // 113: grpc.Bridge.SetIsAutostartOn:output_type -> google.protobuf.Empty
+ 63, // 114: grpc.Bridge.IsAutostartOn:output_type -> google.protobuf.BoolValue
+ 62, // 115: grpc.Bridge.SetIsBetaEnabled:output_type -> google.protobuf.Empty
+ 63, // 116: grpc.Bridge.IsBetaEnabled:output_type -> google.protobuf.BoolValue
+ 64, // 117: grpc.Bridge.GoOs:output_type -> google.protobuf.StringValue
+ 62, // 118: grpc.Bridge.TriggerReset:output_type -> google.protobuf.Empty
+ 64, // 119: grpc.Bridge.Version:output_type -> google.protobuf.StringValue
+ 64, // 120: grpc.Bridge.LogsPath:output_type -> google.protobuf.StringValue
+ 64, // 121: grpc.Bridge.LicensePath:output_type -> google.protobuf.StringValue
+ 64, // 122: grpc.Bridge.ReleaseNotesPageLink:output_type -> google.protobuf.StringValue
+ 64, // 123: grpc.Bridge.DependencyLicensesLink:output_type -> google.protobuf.StringValue
+ 64, // 124: grpc.Bridge.LandingPageLink:output_type -> google.protobuf.StringValue
+ 62, // 125: grpc.Bridge.SetColorSchemeName:output_type -> google.protobuf.Empty
+ 64, // 126: grpc.Bridge.ColorSchemeName:output_type -> google.protobuf.StringValue
+ 64, // 127: grpc.Bridge.CurrentEmailClient:output_type -> google.protobuf.StringValue
+ 62, // 128: grpc.Bridge.ReportBug:output_type -> google.protobuf.Empty
+ 62, // 129: grpc.Bridge.ForceLauncher:output_type -> google.protobuf.Empty
+ 62, // 130: grpc.Bridge.Login:output_type -> google.protobuf.Empty
+ 62, // 131: grpc.Bridge.Login2FA:output_type -> google.protobuf.Empty
+ 62, // 132: grpc.Bridge.Login2Passwords:output_type -> google.protobuf.Empty
+ 62, // 133: grpc.Bridge.LoginAbort:output_type -> google.protobuf.Empty
+ 62, // 134: grpc.Bridge.CheckUpdate:output_type -> google.protobuf.Empty
+ 62, // 135: grpc.Bridge.InstallUpdate:output_type -> google.protobuf.Empty
+ 62, // 136: grpc.Bridge.SetIsAutomaticUpdateOn:output_type -> google.protobuf.Empty
+ 63, // 137: grpc.Bridge.IsAutomaticUpdateOn:output_type -> google.protobuf.BoolValue
+ 63, // 138: grpc.Bridge.IsCacheOnDiskEnabled:output_type -> google.protobuf.BoolValue
+ 64, // 139: grpc.Bridge.DiskCachePath:output_type -> google.protobuf.StringValue
+ 62, // 140: grpc.Bridge.ChangeLocalCache:output_type -> google.protobuf.Empty
+ 62, // 141: grpc.Bridge.SetIsDoHEnabled:output_type -> google.protobuf.Empty
+ 63, // 142: grpc.Bridge.IsDoHEnabled:output_type -> google.protobuf.BoolValue
+ 62, // 143: grpc.Bridge.SetUseSslForSmtp:output_type -> google.protobuf.Empty
+ 63, // 144: grpc.Bridge.UseSslForSmtp:output_type -> google.protobuf.BoolValue
+ 64, // 145: grpc.Bridge.Hostname:output_type -> google.protobuf.StringValue
+ 65, // 146: grpc.Bridge.ImapPort:output_type -> google.protobuf.Int32Value
+ 65, // 147: grpc.Bridge.SmtpPort:output_type -> google.protobuf.Int32Value
+ 62, // 148: grpc.Bridge.ChangePorts:output_type -> google.protobuf.Empty
+ 63, // 149: grpc.Bridge.IsPortFree:output_type -> google.protobuf.BoolValue
+ 11, // 150: grpc.Bridge.AvailableKeychains:output_type -> grpc.AvailableKeychainsResponse
+ 62, // 151: grpc.Bridge.SetCurrentKeychain:output_type -> google.protobuf.Empty
+ 64, // 152: grpc.Bridge.CurrentKeychain:output_type -> google.protobuf.StringValue
+ 14, // 153: grpc.Bridge.GetUserList:output_type -> grpc.UserListResponse
+ 12, // 154: grpc.Bridge.GetUser:output_type -> grpc.User
+ 62, // 155: grpc.Bridge.SetUserSplitMode:output_type -> google.protobuf.Empty
+ 62, // 156: grpc.Bridge.LogoutUser:output_type -> google.protobuf.Empty
+ 62, // 157: grpc.Bridge.RemoveUser:output_type -> google.protobuf.Empty
+ 62, // 158: grpc.Bridge.ConfigureUserAppleMail:output_type -> google.protobuf.Empty
+ 17, // 159: grpc.Bridge.StartEventStream:output_type -> grpc.StreamEvent
+ 62, // 160: grpc.Bridge.StopEventStream:output_type -> google.protobuf.Empty
+ 106, // [106:161] is the sub-list for method output_type
+ 51, // [51:106] is the sub-list for method input_type
51, // [51:51] is the sub-list for extension type_name
51, // [51:51] is the sub-list for extension extendee
0, // [0:51] is the sub-list for field type_name
diff --git a/internal/frontend/grpc/bridge.proto b/internal/frontend/grpc/bridge.proto
index 8e9a7bf0..c90a13bd 100644
--- a/internal/frontend/grpc/bridge.proto
+++ b/internal/frontend/grpc/bridge.proto
@@ -53,6 +53,7 @@ service Bridge {
rpc ColorSchemeName(google.protobuf.Empty) returns (google.protobuf.StringValue); // TODO Color scheme should probably entirely be managed by the client.
rpc CurrentEmailClient(google.protobuf.Empty) returns (google.protobuf.StringValue);
rpc ReportBug(ReportBugRequest) returns (google.protobuf.Empty);
+ rpc ForceLauncher(google.protobuf.StringValue) returns (google.protobuf.Empty);
// login
rpc Login(LoginRequest) returns (google.protobuf.Empty);
diff --git a/internal/frontend/grpc/bridge_grpc.pb.go b/internal/frontend/grpc/bridge_grpc.pb.go
index 93241849..2dad3695 100644
--- a/internal/frontend/grpc/bridge_grpc.pb.go
+++ b/internal/frontend/grpc/bridge_grpc.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.2.0
-// - protoc v3.21.2
+// - protoc v3.21.3
// source: bridge.proto
package grpc
@@ -48,6 +48,7 @@ type BridgeClient interface {
ColorSchemeName(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*wrapperspb.StringValue, error)
CurrentEmailClient(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*wrapperspb.StringValue, error)
ReportBug(ctx context.Context, in *ReportBugRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
+ ForceLauncher(ctx context.Context, in *wrapperspb.StringValue, opts ...grpc.CallOption) (*emptypb.Empty, error)
// login
Login(ctx context.Context, in *LoginRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
Login2FA(ctx context.Context, in *LoginRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
@@ -303,6 +304,15 @@ func (c *bridgeClient) ReportBug(ctx context.Context, in *ReportBugRequest, opts
return out, nil
}
+func (c *bridgeClient) ForceLauncher(ctx context.Context, in *wrapperspb.StringValue, opts ...grpc.CallOption) (*emptypb.Empty, error) {
+ out := new(emptypb.Empty)
+ err := c.cc.Invoke(ctx, "/grpc.Bridge/ForceLauncher", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *bridgeClient) Login(ctx context.Context, in *LoginRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/grpc.Bridge/Login", in, out, opts...)
@@ -633,6 +643,7 @@ type BridgeServer interface {
ColorSchemeName(context.Context, *emptypb.Empty) (*wrapperspb.StringValue, error)
CurrentEmailClient(context.Context, *emptypb.Empty) (*wrapperspb.StringValue, error)
ReportBug(context.Context, *ReportBugRequest) (*emptypb.Empty, error)
+ ForceLauncher(context.Context, *wrapperspb.StringValue) (*emptypb.Empty, error)
// login
Login(context.Context, *LoginRequest) (*emptypb.Empty, error)
Login2FA(context.Context, *LoginRequest) (*emptypb.Empty, error)
@@ -747,6 +758,9 @@ func (UnimplementedBridgeServer) CurrentEmailClient(context.Context, *emptypb.Em
func (UnimplementedBridgeServer) ReportBug(context.Context, *ReportBugRequest) (*emptypb.Empty, error) {
return nil, status.Errorf(codes.Unimplemented, "method ReportBug not implemented")
}
+func (UnimplementedBridgeServer) ForceLauncher(context.Context, *wrapperspb.StringValue) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ForceLauncher not implemented")
+}
func (UnimplementedBridgeServer) Login(context.Context, *LoginRequest) (*emptypb.Empty, error) {
return nil, status.Errorf(codes.Unimplemented, "method Login not implemented")
}
@@ -1267,6 +1281,24 @@ func _Bridge_ReportBug_Handler(srv interface{}, ctx context.Context, dec func(in
return interceptor(ctx, in, info, handler)
}
+func _Bridge_ForceLauncher_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(wrapperspb.StringValue)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(BridgeServer).ForceLauncher(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/grpc.Bridge/ForceLauncher",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(BridgeServer).ForceLauncher(ctx, req.(*wrapperspb.StringValue))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
func _Bridge_Login_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(LoginRequest)
if err := dec(in); err != nil {
@@ -1927,6 +1959,10 @@ var Bridge_ServiceDesc = grpc.ServiceDesc{
MethodName: "ReportBug",
Handler: _Bridge_ReportBug_Handler,
},
+ {
+ MethodName: "ForceLauncher",
+ Handler: _Bridge_ForceLauncher_Handler,
+ },
{
MethodName: "Login",
Handler: _Bridge_Login_Handler,
diff --git a/internal/frontend/grpc/service.go b/internal/frontend/grpc/service.go
index cca85cb4..83501c42 100644
--- a/internal/frontend/grpc/service.go
+++ b/internal/frontend/grpc/service.go
@@ -335,7 +335,7 @@ func (s *Service) waitForUserChangeDone(done <-chan string, userID string) {
}
func (s *Service) restart() {
- s.log.Error("Restart is not implemented") // TO-DO GODT-1671 implement restart.
+ s.restarter.SetToRestart()
}
func (s *Service) triggerReset() {
diff --git a/internal/frontend/grpc/service_methods.go b/internal/frontend/grpc/service_methods.go
index 76b528e0..062bb453 100644
--- a/internal/frontend/grpc/service_methods.go
+++ b/internal/frontend/grpc/service_methods.go
@@ -92,11 +92,14 @@ func (s *Service) Quit(ctx context.Context, empty *emptypb.Empty) (*emptypb.Empt
// Restart implement the Restart gRPC service call.
func (s *Service) Restart(context.Context, *emptypb.Empty) (*emptypb.Empty, error) {
- s.log.Info("Restart") // TO-DO-GODT-1671 handle restart.
+ s.log.Info("Restart")
+ go func() {
+ defer s.panicHandler.HandlePanic()
- s.restart()
+ s.restart()
+ }()
- return nil, ErrNotImplemented
+ return &emptypb.Empty{}, nil
}
func (s *Service) ShowOnStartup(context.Context, *emptypb.Empty) (*wrapperspb.BoolValue, error) {
@@ -192,7 +195,7 @@ func (s *Service) TriggerReset(context.Context, *emptypb.Empty) (*emptypb.Empty,
defer s.panicHandler.HandlePanic()
s.triggerReset()
}()
- return nil, ErrNotImplemented
+ return &emptypb.Empty{}, nil
}
func (s *Service) Version(context.Context, *emptypb.Empty) (*wrapperspb.StringValue, error) {
@@ -291,6 +294,15 @@ func (s *Service) ReportBug(_ context.Context, report *ReportBugRequest) (*empty
return &emptypb.Empty{}, nil
}
+func (s *Service) ForceLauncher(_ context.Context, launcher *wrapperspb.StringValue) (*emptypb.Empty, error) {
+ s.log.WithField("launcher", launcher.Value).Info("ForceLauncher")
+ go func() {
+ defer s.panicHandler.HandlePanic()
+ s.restarter.ForceLauncher(launcher.Value)
+ }()
+ return &emptypb.Empty{}, nil
+}
+
func (s *Service) Login(_ context.Context, login *LoginRequest) (*emptypb.Empty, error) {
s.log.WithField("username", login.Username).Info("Login")
go func() {
diff --git a/internal/frontend/types/types.go b/internal/frontend/types/types.go
index 88051a38..1cce4b11 100644
--- a/internal/frontend/types/types.go
+++ b/internal/frontend/types/types.go
@@ -32,6 +32,7 @@ type PanicHandler interface {
// Restarter allows the app to set itself to restart next time it is closed.
type Restarter interface {
SetToRestart()
+ ForceLauncher(string)
}
type NoEncConfirmator interface {
diff --git a/internal/locations/locations.go b/internal/locations/locations.go
index 61b6141c..69e528f8 100644
--- a/internal/locations/locations.go
+++ b/internal/locations/locations.go
@@ -38,14 +38,16 @@ import (
type Locations struct {
userConfig, userCache string
configName string
+ configGuiName string
}
// New returns a new locations object.
func New(provider Provider, configName string) *Locations {
return &Locations{
- userConfig: provider.UserConfig(),
- userCache: provider.UserCache(),
- configName: configName,
+ userConfig: provider.UserConfig(),
+ userCache: provider.UserCache(),
+ configName: configName,
+ configGuiName: configName + "-gui",
}
}
@@ -54,6 +56,11 @@ func (l *Locations) GetLockFile() string {
return filepath.Join(l.userCache, l.configName+".lock")
}
+// GetGuiLockFile returns the path to the lock file (e.g. ~/.cache///.lock).
+func (l *Locations) GetGuiLockFile() string {
+ return filepath.Join(l.userCache, l.configGuiName+".lock")
+}
+
// GetLicenseFilePath returns path to liense file.
func (l *Locations) GetLicenseFilePath() string {
path := l.getLicenseFilePath()
@@ -210,6 +217,7 @@ func (l *Locations) Clear() error {
l.userCache,
).Except(
l.GetLockFile(),
+ l.GetGuiLockFile(),
l.getUpdatesPath(),
).Do()
}
@@ -226,6 +234,7 @@ func (l *Locations) ClearUpdates() error {
func (l *Locations) Clean() error {
return files.Remove(l.userCache).Except(
l.GetLockFile(),
+ l.GetGuiLockFile(),
l.getLogsPath(),
l.getCachePath(),
l.getUpdatesPath(),