GODT-1672: Forward QML log to bridge.

This commit is contained in:
Xavier Michelon
2022-07-25 10:47:27 +02:00
committed by Jakub
parent 649364beb5
commit 055829dcf8
17 changed files with 3081 additions and 1796 deletions

View File

@ -40,7 +40,7 @@ int const maxCertificateWaitMsecs = 60 * 1000; ///< Ammount of time we wait for
}
//****************************************************************************************************************************************************
/// \return user configuration directory used by bridge (based on Golang OS/File::UserConfigDir).
/// \return user configuration directory used by bridge (based on Golang OS/File's UserConfigDir).
//****************************************************************************************************************************************************
static const QString _userConfigDir(){
QString dir;
@ -167,6 +167,22 @@ bool GRPCClient::connectToServer(QString &outError)
}
//****************************************************************************************************************************************************
/// \param[in] level The level of the log entry.
/// \param[in] package The package (component) that triggered the entry.
/// \param[in] message The message.
/// \return The status for the gRPC call.
//****************************************************************************************************************************************************
grpc::Status GRPCClient::addLogEntry(Log::Level level, QString const &package, QString const &message)
{
grpc::ClientContext ctx;
AddLogEntryRequest request;
request.set_level(logLevelToGRPC(level));
request.set_package(package.toStdString());
request.set_message(message.toStdString());
return stub_->AddLogEntry(&ctx, request, &empty);
}
//****************************************************************************************************************************************************
/// \return The status for the gRPC call.
//****************************************************************************************************************************************************
@ -1291,5 +1307,3 @@ void GRPCClient::processUserEvent(UserEvent const &event)
app().log().error("Unknown User event received.");
}
}

View File

@ -23,6 +23,7 @@
#include "GRPC/bridge.grpc.pb.h"
#include "grpc++/grpc++.h"
#include "User/User.h"
#include "Log.h"
typedef grpc::Status (grpc::Bridge::Stub::*SimpleMethod)(grpc::ClientContext*, const google::protobuf::Empty&, google::protobuf::Empty*);
@ -49,7 +50,8 @@ public: // member functions.
GRPCClient& operator=(GRPCClient const&) = delete; ///< Disabled assignment operator.
GRPCClient& operator=(GRPCClient&&) = delete; ///< Disabled move assignment operator.
bool connectToServer(QString &outError); ///< Establish connection to the gRPC server.
grpc::Status addLogEntry(Log::Level level, QString const& package, QString const &message); ///< Performs the "AddLogEntry" gRPC call.
grpc::Status guiReady(); ///< performs the "GuiReady" gRPC call.
grpc::Status isFirstGUIStart(bool &outIsFirst); ///< performs the "IsFirstGUIStart" gRPC call.
grpc::Status isAutostartOn(bool &outIsOn); ///< Performs the "isAutostartOn" gRPC call.

View File

@ -16,8 +16,9 @@
// along with Proton Mail Bridge. If not, see <https://www.gnu.org/licenses/>.
#include "Pch.h"
#include "Exception.h"
#include "GRPCUtils.h"
#include "QMLBackend.h"
//****************************************************************************************************************************************************
@ -61,3 +62,23 @@ SPUser parsegrpcUser(grpc::User const &grpcUser)
user->setProperty("id", QString::fromStdString(grpcUser.id()));
return user;
}
//****************************************************************************************************************************************************
/// \param[in] level The log level
//****************************************************************************************************************************************************
grpc::LogLevel logLevelToGRPC(Log::Level level)
{
switch (level)
{
case Log::Level::Panic: return grpc::LogLevel::PANIC;
case Log::Level::Fatal: return grpc::LogLevel::FATAL;
case Log::Level::Error: return grpc::LogLevel::ERROR;
case Log::Level::Warn: return grpc::LogLevel::WARN;
case Log::Level::Info: return grpc::LogLevel::INFO;
case Log::Level::Debug: return grpc::LogLevel::DEBUG;
case Log::Level::Trace: return grpc::LogLevel::TRACE;
default:
throw Exception(QString("unknown log level %1.").arg(qint32(level)));
}
}

View File

@ -19,6 +19,8 @@
#ifndef BRIDGE_QT6_GRPCUTILS_H
#define BRIDGE_QT6_GRPCUTILS_H
#include "Log.h"
#include "GRPC/bridge.grpc.pb.h"
#include "grpc++/grpc++.h"
#include "User/User.h"
@ -26,5 +28,7 @@
void logGRPCCallStatus(grpc::Status const& status, QString const &callName); ///< Log the status of a gRPC code.
SPUser parsegrpcUser(grpc::User const& grpcUser); ///< Parse a gRPC user struct and return a User.
grpc::LogLevel logLevelToGRPC(Log::Level level); ///< Convert a Log::Level to gRPC enum value.
#endif // BRIDGE_QT6_GRPCUTILS_H

View File

@ -22,6 +22,7 @@
namespace grpc {
static const char* Bridge_method_names[] = {
"/grpc.Bridge/AddLogEntry",
"/grpc.Bridge/GuiReady",
"/grpc.Bridge/Quit",
"/grpc.Bridge/Restart",
@ -84,61 +85,85 @@ std::unique_ptr< Bridge::Stub> Bridge::NewStub(const std::shared_ptr< ::grpc::Ch
}
Bridge::Stub::Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options)
: channel_(channel), rpcmethod_GuiReady_(Bridge_method_names[0], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_Quit_(Bridge_method_names[1], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_Restart_(Bridge_method_names[2], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_ShowOnStartup_(Bridge_method_names[3], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_ShowSplashScreen_(Bridge_method_names[4], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_IsFirstGuiStart_(Bridge_method_names[5], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_SetIsAutostartOn_(Bridge_method_names[6], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_IsAutostartOn_(Bridge_method_names[7], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_SetIsBetaEnabled_(Bridge_method_names[8], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_IsBetaEnabled_(Bridge_method_names[9], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_GoOs_(Bridge_method_names[10], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_TriggerReset_(Bridge_method_names[11], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_Version_(Bridge_method_names[12], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_LogsPath_(Bridge_method_names[13], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_LicensePath_(Bridge_method_names[14], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_ReleaseNotesPageLink_(Bridge_method_names[15], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_DependencyLicensesLink_(Bridge_method_names[16], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_LandingPageLink_(Bridge_method_names[17], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_SetColorSchemeName_(Bridge_method_names[18], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_ColorSchemeName_(Bridge_method_names[19], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_CurrentEmailClient_(Bridge_method_names[20], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_ReportBug_(Bridge_method_names[21], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_Login_(Bridge_method_names[22], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_Login2FA_(Bridge_method_names[23], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_Login2Passwords_(Bridge_method_names[24], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_LoginAbort_(Bridge_method_names[25], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_CheckUpdate_(Bridge_method_names[26], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_InstallUpdate_(Bridge_method_names[27], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_SetIsAutomaticUpdateOn_(Bridge_method_names[28], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_IsAutomaticUpdateOn_(Bridge_method_names[29], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_IsCacheOnDiskEnabled_(Bridge_method_names[30], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_DiskCachePath_(Bridge_method_names[31], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_ChangeLocalCache_(Bridge_method_names[32], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_SetIsDoHEnabled_(Bridge_method_names[33], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_IsDoHEnabled_(Bridge_method_names[34], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_SetUseSslForSmtp_(Bridge_method_names[35], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_UseSslForSmtp_(Bridge_method_names[36], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_Hostname_(Bridge_method_names[37], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_ImapPort_(Bridge_method_names[38], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_SmtpPort_(Bridge_method_names[39], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_ChangePorts_(Bridge_method_names[40], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_IsPortFree_(Bridge_method_names[41], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_AvailableKeychains_(Bridge_method_names[42], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_SetCurrentKeychain_(Bridge_method_names[43], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_CurrentKeychain_(Bridge_method_names[44], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_GetUserList_(Bridge_method_names[45], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_GetUser_(Bridge_method_names[46], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_SetUserSplitMode_(Bridge_method_names[47], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_LogoutUser_(Bridge_method_names[48], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_RemoveUser_(Bridge_method_names[49], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_ConfigureUserAppleMail_(Bridge_method_names[50], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_StartEventStream_(Bridge_method_names[51], options.suffix_for_stats(),::grpc::internal::RpcMethod::SERVER_STREAMING, channel)
, rpcmethod_StopEventStream_(Bridge_method_names[52], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
: channel_(channel), rpcmethod_AddLogEntry_(Bridge_method_names[0], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_GuiReady_(Bridge_method_names[1], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_Quit_(Bridge_method_names[2], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_Restart_(Bridge_method_names[3], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_ShowOnStartup_(Bridge_method_names[4], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_ShowSplashScreen_(Bridge_method_names[5], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_IsFirstGuiStart_(Bridge_method_names[6], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_SetIsAutostartOn_(Bridge_method_names[7], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_IsAutostartOn_(Bridge_method_names[8], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_SetIsBetaEnabled_(Bridge_method_names[9], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_IsBetaEnabled_(Bridge_method_names[10], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_GoOs_(Bridge_method_names[11], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_TriggerReset_(Bridge_method_names[12], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_Version_(Bridge_method_names[13], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_LogsPath_(Bridge_method_names[14], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_LicensePath_(Bridge_method_names[15], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_ReleaseNotesPageLink_(Bridge_method_names[16], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_DependencyLicensesLink_(Bridge_method_names[17], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_LandingPageLink_(Bridge_method_names[18], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_SetColorSchemeName_(Bridge_method_names[19], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, 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)
{}
::grpc::Status Bridge::Stub::AddLogEntry(::grpc::ClientContext* context, const ::grpc::AddLogEntryRequest& request, ::google::protobuf::Empty* response) {
return ::grpc::internal::BlockingUnaryCall< ::grpc::AddLogEntryRequest, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_AddLogEntry_, context, request, response);
}
void Bridge::Stub::async::AddLogEntry(::grpc::ClientContext* context, const ::grpc::AddLogEntryRequest* request, ::google::protobuf::Empty* response, std::function<void(::grpc::Status)> f) {
::grpc::internal::CallbackUnaryCall< ::grpc::AddLogEntryRequest, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_AddLogEntry_, context, request, response, std::move(f));
}
void Bridge::Stub::async::AddLogEntry(::grpc::ClientContext* context, const ::grpc::AddLogEntryRequest* request, ::google::protobuf::Empty* response, ::grpc::ClientUnaryReactor* reactor) {
::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_AddLogEntry_, context, request, response, reactor);
}
::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>* Bridge::Stub::PrepareAsyncAddLogEntryRaw(::grpc::ClientContext* context, const ::grpc::AddLogEntryRequest& request, ::grpc::CompletionQueue* cq) {
return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::google::protobuf::Empty, ::grpc::AddLogEntryRequest, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_AddLogEntry_, context, request);
}
::grpc::ClientAsyncResponseReader< ::google::protobuf::Empty>* Bridge::Stub::AsyncAddLogEntryRaw(::grpc::ClientContext* context, const ::grpc::AddLogEntryRequest& request, ::grpc::CompletionQueue* cq) {
auto* result =
this->PrepareAsyncAddLogEntryRaw(context, request, cq);
result->StartCall();
return result;
}
::grpc::Status Bridge::Stub::GuiReady(::grpc::ClientContext* context, const ::google::protobuf::Empty& request, ::google::protobuf::Empty* response) {
return ::grpc::internal::BlockingUnaryCall< ::google::protobuf::Empty, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_GuiReady_, context, request, response);
}
@ -1355,12 +1380,12 @@ Bridge::Service::Service() {
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[0],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Empty, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::grpc::AddLogEntryRequest, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
::grpc::ServerContext* ctx,
const ::google::protobuf::Empty* req,
const ::grpc::AddLogEntryRequest* req,
::google::protobuf::Empty* resp) {
return service->GuiReady(ctx, req, resp);
return service->AddLogEntry(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[1],
@ -1370,7 +1395,7 @@ Bridge::Service::Service() {
::grpc::ServerContext* ctx,
const ::google::protobuf::Empty* req,
::google::protobuf::Empty* resp) {
return service->Quit(ctx, req, resp);
return service->GuiReady(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[2],
@ -1380,17 +1405,17 @@ Bridge::Service::Service() {
::grpc::ServerContext* ctx,
const ::google::protobuf::Empty* req,
::google::protobuf::Empty* resp) {
return service->Restart(ctx, req, resp);
return service->Quit(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[3],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Empty, ::google::protobuf::BoolValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::google::protobuf::Empty, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
::grpc::ServerContext* ctx,
const ::google::protobuf::Empty* req,
::google::protobuf::BoolValue* resp) {
return service->ShowOnStartup(ctx, req, resp);
::google::protobuf::Empty* resp) {
return service->Restart(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[4],
@ -1400,7 +1425,7 @@ Bridge::Service::Service() {
::grpc::ServerContext* ctx,
const ::google::protobuf::Empty* req,
::google::protobuf::BoolValue* resp) {
return service->ShowSplashScreen(ctx, req, resp);
return service->ShowOnStartup(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[5],
@ -1410,11 +1435,21 @@ Bridge::Service::Service() {
::grpc::ServerContext* ctx,
const ::google::protobuf::Empty* req,
::google::protobuf::BoolValue* resp) {
return service->IsFirstGuiStart(ctx, req, resp);
return service->ShowSplashScreen(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[6],
::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,
::grpc::ServerContext* ctx,
const ::google::protobuf::Empty* req,
::google::protobuf::BoolValue* resp) {
return service->IsFirstGuiStart(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[7],
::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,
::grpc::ServerContext* ctx,
@ -1423,7 +1458,7 @@ Bridge::Service::Service() {
return service->SetIsAutostartOn(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[7],
Bridge_method_names[8],
::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,
@ -1433,7 +1468,7 @@ Bridge::Service::Service() {
return service->IsAutostartOn(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[8],
Bridge_method_names[9],
::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,
@ -1443,7 +1478,7 @@ Bridge::Service::Service() {
return service->SetIsBetaEnabled(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[9],
Bridge_method_names[10],
::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,
@ -1453,7 +1488,7 @@ Bridge::Service::Service() {
return service->IsBetaEnabled(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[10],
Bridge_method_names[11],
::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,
@ -1463,7 +1498,7 @@ Bridge::Service::Service() {
return service->GoOs(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[11],
Bridge_method_names[12],
::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,
@ -1473,7 +1508,7 @@ Bridge::Service::Service() {
return service->TriggerReset(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[12],
Bridge_method_names[13],
::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,
@ -1483,7 +1518,7 @@ Bridge::Service::Service() {
return service->Version(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[13],
Bridge_method_names[14],
::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,
@ -1493,7 +1528,7 @@ Bridge::Service::Service() {
return service->LogsPath(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[14],
Bridge_method_names[15],
::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,
@ -1503,7 +1538,7 @@ Bridge::Service::Service() {
return service->LicensePath(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[15],
Bridge_method_names[16],
::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,
@ -1513,7 +1548,7 @@ Bridge::Service::Service() {
return service->ReleaseNotesPageLink(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[16],
Bridge_method_names[17],
::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,
@ -1523,7 +1558,7 @@ Bridge::Service::Service() {
return service->DependencyLicensesLink(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[17],
Bridge_method_names[18],
::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,
@ -1533,7 +1568,7 @@ Bridge::Service::Service() {
return service->LandingPageLink(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[18],
Bridge_method_names[19],
::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,
@ -1543,7 +1578,7 @@ Bridge::Service::Service() {
return service->SetColorSchemeName(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[19],
Bridge_method_names[20],
::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,
@ -1553,7 +1588,7 @@ Bridge::Service::Service() {
return service->ColorSchemeName(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[20],
Bridge_method_names[21],
::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,
@ -1563,7 +1598,7 @@ Bridge::Service::Service() {
return service->CurrentEmailClient(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[21],
Bridge_method_names[22],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< Bridge::Service, ::grpc::ReportBugRequest, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1573,7 +1608,7 @@ Bridge::Service::Service() {
return service->ReportBug(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[22],
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>(
[](Bridge::Service* service,
@ -1583,7 +1618,7 @@ Bridge::Service::Service() {
return service->Login(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[23],
Bridge_method_names[24],
::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,
@ -1593,7 +1628,7 @@ Bridge::Service::Service() {
return service->Login2FA(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[24],
Bridge_method_names[25],
::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,
@ -1603,7 +1638,7 @@ Bridge::Service::Service() {
return service->Login2Passwords(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[25],
Bridge_method_names[26],
::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,
@ -1613,7 +1648,7 @@ Bridge::Service::Service() {
return service->LoginAbort(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[26],
Bridge_method_names[27],
::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,
@ -1623,7 +1658,7 @@ Bridge::Service::Service() {
return service->CheckUpdate(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,
@ -1633,7 +1668,7 @@ Bridge::Service::Service() {
return service->InstallUpdate(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::BoolValue, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1643,7 +1678,7 @@ Bridge::Service::Service() {
return service->SetIsAutomaticUpdateOn(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::Empty, ::google::protobuf::BoolValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1653,7 +1688,7 @@ Bridge::Service::Service() {
return service->IsAutomaticUpdateOn(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,
@ -1663,7 +1698,7 @@ Bridge::Service::Service() {
return service->IsCacheOnDiskEnabled(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::StringValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1673,7 +1708,7 @@ Bridge::Service::Service() {
return service->DiskCachePath(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, ::grpc::ChangeLocalCacheRequest, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1683,7 +1718,7 @@ Bridge::Service::Service() {
return service->ChangeLocalCache(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, ::google::protobuf::BoolValue, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1693,7 +1728,7 @@ Bridge::Service::Service() {
return service->SetIsDoHEnabled(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::Empty, ::google::protobuf::BoolValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1703,7 +1738,7 @@ Bridge::Service::Service() {
return service->IsDoHEnabled(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::BoolValue, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1713,7 +1748,7 @@ Bridge::Service::Service() {
return service->SetUseSslForSmtp(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::Empty, ::google::protobuf::BoolValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1723,7 +1758,7 @@ Bridge::Service::Service() {
return service->UseSslForSmtp(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::StringValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1733,7 +1768,7 @@ Bridge::Service::Service() {
return service->Hostname(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::Int32Value, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1743,7 +1778,7 @@ Bridge::Service::Service() {
return service->ImapPort(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,
@ -1753,7 +1788,7 @@ Bridge::Service::Service() {
return service->SmtpPort(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, ::grpc::ChangePortsRequest, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1763,7 +1798,7 @@ Bridge::Service::Service() {
return service->ChangePorts(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, ::google::protobuf::Int32Value, ::google::protobuf::BoolValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1773,7 +1808,7 @@ Bridge::Service::Service() {
return service->IsPortFree(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::Empty, ::grpc::AvailableKeychainsResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1783,7 +1818,7 @@ Bridge::Service::Service() {
return service->AvailableKeychains(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::StringValue, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1793,7 +1828,7 @@ Bridge::Service::Service() {
return service->SetCurrentKeychain(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::Empty, ::google::protobuf::StringValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1803,7 +1838,7 @@ Bridge::Service::Service() {
return service->CurrentKeychain(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, ::grpc::UserListResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1813,7 +1848,7 @@ Bridge::Service::Service() {
return service->GetUserList(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::StringValue, ::grpc::User, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1823,7 +1858,7 @@ Bridge::Service::Service() {
return service->GetUser(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, ::grpc::UserSplitModeRequest, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1833,7 +1868,7 @@ Bridge::Service::Service() {
return service->SetUserSplitMode(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, ::google::protobuf::StringValue, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1843,7 +1878,7 @@ Bridge::Service::Service() {
return service->LogoutUser(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,
@ -1853,7 +1888,7 @@ Bridge::Service::Service() {
return service->RemoveUser(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, ::grpc::ConfigureAppleMailRequest, ::google::protobuf::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](Bridge::Service* service,
@ -1863,7 +1898,7 @@ Bridge::Service::Service() {
return service->ConfigureUserAppleMail(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[51],
Bridge_method_names[52],
::grpc::internal::RpcMethod::SERVER_STREAMING,
new ::grpc::internal::ServerStreamingHandler< Bridge::Service, ::grpc::EventStreamRequest, ::grpc::StreamEvent>(
[](Bridge::Service* service,
@ -1873,7 +1908,7 @@ Bridge::Service::Service() {
return service->StartEventStream(ctx, req, writer);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
Bridge_method_names[52],
Bridge_method_names[53],
::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,
@ -1887,6 +1922,13 @@ Bridge::Service::Service() {
Bridge::Service::~Service() {
}
::grpc::Status Bridge::Service::AddLogEntry(::grpc::ServerContext* context, const ::grpc::AddLogEntryRequest* request, ::google::protobuf::Empty* response) {
(void) context;
(void) request;
(void) response;
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
::grpc::Status Bridge::Service::GuiReady(::grpc::ServerContext* context, const ::google::protobuf::Empty* request, ::google::protobuf::Empty* response) {
(void) context;
(void) request;

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -49,6 +49,9 @@ struct TableStruct_bridge_2eproto {
};
extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_bridge_2eproto;
namespace grpc {
class AddLogEntryRequest;
struct AddLogEntryRequestDefaultTypeInternal;
extern AddLogEntryRequestDefaultTypeInternal _AddLogEntryRequest_default_instance_;
class AddressChangedEvent;
struct AddressChangedEventDefaultTypeInternal;
extern AddressChangedEventDefaultTypeInternal _AddressChangedEvent_default_instance_;
@ -219,6 +222,7 @@ struct UserSplitModeRequestDefaultTypeInternal;
extern UserSplitModeRequestDefaultTypeInternal _UserSplitModeRequest_default_instance_;
} // namespace grpc
PROTOBUF_NAMESPACE_OPEN
template<> ::grpc::AddLogEntryRequest* Arena::CreateMaybeMessage<::grpc::AddLogEntryRequest>(Arena*);
template<> ::grpc::AddressChangedEvent* Arena::CreateMaybeMessage<::grpc::AddressChangedEvent>(Arena*);
template<> ::grpc::AddressChangedLogoutEvent* Arena::CreateMaybeMessage<::grpc::AddressChangedLogoutEvent>(Arena*);
template<> ::grpc::ApiCertIssueEvent* Arena::CreateMaybeMessage<::grpc::ApiCertIssueEvent>(Arena*);
@ -278,6 +282,36 @@ template<> ::grpc::UserSplitModeRequest* Arena::CreateMaybeMessage<::grpc::UserS
PROTOBUF_NAMESPACE_CLOSE
namespace grpc {
enum LogLevel : int {
PANIC = 0,
FATAL = 1,
ERROR = 2,
WARN = 3,
INFO = 4,
DEBUG = 5,
TRACE = 6,
LogLevel_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<int32_t>::min(),
LogLevel_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<int32_t>::max()
};
bool LogLevel_IsValid(int value);
constexpr LogLevel LogLevel_MIN = PANIC;
constexpr LogLevel LogLevel_MAX = TRACE;
constexpr int LogLevel_ARRAYSIZE = LogLevel_MAX + 1;
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* LogLevel_descriptor();
template<typename T>
inline const std::string& LogLevel_Name(T enum_t_value) {
static_assert(::std::is_same<T, LogLevel>::value ||
::std::is_integral<T>::value,
"Incorrect type passed to function LogLevel_Name.");
return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
LogLevel_descriptor(), enum_t_value);
}
inline bool LogLevel_Parse(
::PROTOBUF_NAMESPACE_ID::ConstStringParam name, LogLevel* value) {
return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<LogLevel>(
LogLevel_descriptor(), name, value);
}
enum LoginErrorType : int {
USERNAME_PASSWORD_ERROR = 0,
FREE_USER = 1,
@ -387,6 +421,186 @@ inline bool MailSettingsErrorType_Parse(
}
// ===================================================================
class AddLogEntryRequest final :
public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:grpc.AddLogEntryRequest) */ {
public:
inline AddLogEntryRequest() : AddLogEntryRequest(nullptr) {}
~AddLogEntryRequest() override;
explicit PROTOBUF_CONSTEXPR AddLogEntryRequest(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
AddLogEntryRequest(const AddLogEntryRequest& from);
AddLogEntryRequest(AddLogEntryRequest&& from) noexcept
: AddLogEntryRequest() {
*this = ::std::move(from);
}
inline AddLogEntryRequest& operator=(const AddLogEntryRequest& from) {
CopyFrom(from);
return *this;
}
inline AddLogEntryRequest& operator=(AddLogEntryRequest&& from) noexcept {
if (this == &from) return *this;
if (GetOwningArena() == from.GetOwningArena()
#ifdef PROTOBUF_FORCE_COPY_IN_MOVE
&& GetOwningArena() != nullptr
#endif // !PROTOBUF_FORCE_COPY_IN_MOVE
) {
InternalSwap(&from);
} else {
CopyFrom(from);
}
return *this;
}
static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
return GetDescriptor();
}
static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
return default_instance().GetMetadata().descriptor;
}
static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
return default_instance().GetMetadata().reflection;
}
static const AddLogEntryRequest& default_instance() {
return *internal_default_instance();
}
static inline const AddLogEntryRequest* internal_default_instance() {
return reinterpret_cast<const AddLogEntryRequest*>(
&_AddLogEntryRequest_default_instance_);
}
static constexpr int kIndexInFileMessages =
0;
friend void swap(AddLogEntryRequest& a, AddLogEntryRequest& b) {
a.Swap(&b);
}
inline void Swap(AddLogEntryRequest* other) {
if (other == this) return;
#ifdef PROTOBUF_FORCE_COPY_IN_SWAP
if (GetOwningArena() != nullptr &&
GetOwningArena() == other->GetOwningArena()) {
#else // PROTOBUF_FORCE_COPY_IN_SWAP
if (GetOwningArena() == other->GetOwningArena()) {
#endif // !PROTOBUF_FORCE_COPY_IN_SWAP
InternalSwap(other);
} else {
::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
}
}
void UnsafeArenaSwap(AddLogEntryRequest* other) {
if (other == this) return;
GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
InternalSwap(other);
}
// implements Message ----------------------------------------------
AddLogEntryRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
return CreateMaybeMessage<AddLogEntryRequest>(arena);
}
using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
void CopyFrom(const AddLogEntryRequest& from);
using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
void MergeFrom( const AddLogEntryRequest& from) {
AddLogEntryRequest::MergeImpl(*this, from);
}
private:
static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
public:
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
bool IsInitialized() const final;
size_t ByteSizeLong() const final;
const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
uint8_t* _InternalSerialize(
uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
private:
void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
void SharedDtor();
void SetCachedSize(int size) const final;
void InternalSwap(AddLogEntryRequest* other);
private:
friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
return "grpc.AddLogEntryRequest";
}
protected:
explicit AddLogEntryRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena,
bool is_message_owned = false);
public:
static const ClassData _class_data_;
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
// nested types ----------------------------------------------------
// accessors -------------------------------------------------------
enum : int {
kPackageFieldNumber = 2,
kMessageFieldNumber = 3,
kLevelFieldNumber = 1,
};
// string package = 2;
void clear_package();
const std::string& package() const;
template <typename ArgT0 = const std::string&, typename... ArgT>
void set_package(ArgT0&& arg0, ArgT... args);
std::string* mutable_package();
PROTOBUF_NODISCARD std::string* release_package();
void set_allocated_package(std::string* package);
private:
const std::string& _internal_package() const;
inline PROTOBUF_ALWAYS_INLINE void _internal_set_package(const std::string& value);
std::string* _internal_mutable_package();
public:
// string message = 3;
void clear_message();
const std::string& message() const;
template <typename ArgT0 = const std::string&, typename... ArgT>
void set_message(ArgT0&& arg0, ArgT... args);
std::string* mutable_message();
PROTOBUF_NODISCARD std::string* release_message();
void set_allocated_message(std::string* message);
private:
const std::string& _internal_message() const;
inline PROTOBUF_ALWAYS_INLINE void _internal_set_message(const std::string& value);
std::string* _internal_mutable_message();
public:
// .grpc.LogLevel level = 1;
void clear_level();
::grpc::LogLevel level() const;
void set_level(::grpc::LogLevel value);
private:
::grpc::LogLevel _internal_level() const;
void _internal_set_level(::grpc::LogLevel value);
public:
// @@protoc_insertion_point(class_scope:grpc.AddLogEntryRequest)
private:
class _Internal;
template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
typedef void InternalArenaConstructable_;
typedef void DestructorSkippable_;
struct Impl_ {
::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr package_;
::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr message_;
int level_;
mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
};
union { Impl_ _impl_; };
friend struct ::TableStruct_bridge_2eproto;
};
// -------------------------------------------------------------------
class ReportBugRequest final :
public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:grpc.ReportBugRequest) */ {
public:
@ -435,7 +649,7 @@ class ReportBugRequest final :
&_ReportBugRequest_default_instance_);
}
static constexpr int kIndexInFileMessages =
0;
1;
friend void swap(ReportBugRequest& a, ReportBugRequest& b) {
a.Swap(&b);
@ -663,7 +877,7 @@ class LoginRequest final :
&_LoginRequest_default_instance_);
}
static constexpr int kIndexInFileMessages =
1;
2;
friend void swap(LoginRequest& a, LoginRequest& b) {
a.Swap(&b);
@ -832,7 +1046,7 @@ class LoginAbortRequest final :
&_LoginAbortRequest_default_instance_);
}
static constexpr int kIndexInFileMessages =
2;
3;
friend void swap(LoginAbortRequest& a, LoginAbortRequest& b) {
a.Swap(&b);
@ -985,7 +1199,7 @@ class ChangeLocalCacheRequest final :
&_ChangeLocalCacheRequest_default_instance_);
}
static constexpr int kIndexInFileMessages =
3;
4;
friend void swap(ChangeLocalCacheRequest& a, ChangeLocalCacheRequest& b) {
a.Swap(&b);
@ -1149,7 +1363,7 @@ class ChangePortsRequest final :
&_ChangePortsRequest_default_instance_);
}
static constexpr int kIndexInFileMessages =
4;
5;
friend void swap(ChangePortsRequest& a, ChangePortsRequest& b) {
a.Swap(&b);
@ -1308,7 +1522,7 @@ class AvailableKeychainsResponse final :
&_AvailableKeychainsResponse_default_instance_);
}
static constexpr int kIndexInFileMessages =
5;
6;
friend void swap(AvailableKeychainsResponse& a, AvailableKeychainsResponse& b) {
a.Swap(&b);
@ -1471,7 +1685,7 @@ class User final :
&_User_default_instance_);
}
static constexpr int kIndexInFileMessages =
6;
7;
friend void swap(User& a, User& b) {
a.Swap(&b);
@ -1753,7 +1967,7 @@ class UserSplitModeRequest final :
&_UserSplitModeRequest_default_instance_);
}
static constexpr int kIndexInFileMessages =
7;
8;
friend void swap(UserSplitModeRequest& a, UserSplitModeRequest& b) {
a.Swap(&b);
@ -1917,7 +2131,7 @@ class UserListResponse final :
&_UserListResponse_default_instance_);
}
static constexpr int kIndexInFileMessages =
8;
9;
friend void swap(UserListResponse& a, UserListResponse& b) {
a.Swap(&b);
@ -2074,7 +2288,7 @@ class ConfigureAppleMailRequest final :
&_ConfigureAppleMailRequest_default_instance_);
}
static constexpr int kIndexInFileMessages =
9;
10;
friend void swap(ConfigureAppleMailRequest& a, ConfigureAppleMailRequest& b) {
a.Swap(&b);
@ -2243,7 +2457,7 @@ class EventStreamRequest final :
&_EventStreamRequest_default_instance_);
}
static constexpr int kIndexInFileMessages =
10;
11;
friend void swap(EventStreamRequest& a, EventStreamRequest& b) {
a.Swap(&b);
@ -2408,7 +2622,7 @@ class StreamEvent final :
&_StreamEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
11;
12;
friend void swap(StreamEvent& a, StreamEvent& b) {
a.Swap(&b);
@ -2735,7 +2949,7 @@ class AppEvent final :
&_AppEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
12;
13;
friend void swap(AppEvent& a, AppEvent& b) {
a.Swap(&b);
@ -3030,7 +3244,7 @@ class InternetStatusEvent final :
&_InternetStatusEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
13;
14;
friend void swap(InternetStatusEvent& a, InternetStatusEvent& b) {
a.Swap(&b);
@ -3177,7 +3391,7 @@ class ToggleAutostartFinishedEvent final :
&_ToggleAutostartFinishedEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
14;
15;
friend void swap(ToggleAutostartFinishedEvent& a, ToggleAutostartFinishedEvent& b) {
a.Swap(&b);
@ -3295,7 +3509,7 @@ class ResetFinishedEvent final :
&_ResetFinishedEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
15;
16;
friend void swap(ResetFinishedEvent& a, ResetFinishedEvent& b) {
a.Swap(&b);
@ -3413,7 +3627,7 @@ class ReportBugFinishedEvent final :
&_ReportBugFinishedEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
16;
17;
friend void swap(ReportBugFinishedEvent& a, ReportBugFinishedEvent& b) {
a.Swap(&b);
@ -3531,7 +3745,7 @@ class ReportBugSuccessEvent final :
&_ReportBugSuccessEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
17;
18;
friend void swap(ReportBugSuccessEvent& a, ReportBugSuccessEvent& b) {
a.Swap(&b);
@ -3649,7 +3863,7 @@ class ReportBugErrorEvent final :
&_ReportBugErrorEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
18;
19;
friend void swap(ReportBugErrorEvent& a, ReportBugErrorEvent& b) {
a.Swap(&b);
@ -3767,7 +3981,7 @@ class ShowMainWindowEvent final :
&_ShowMainWindowEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
19;
20;
friend void swap(ShowMainWindowEvent& a, ShowMainWindowEvent& b) {
a.Swap(&b);
@ -3895,7 +4109,7 @@ class LoginEvent final :
&_LoginEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
20;
21;
friend void swap(LoginEvent& a, LoginEvent& b) {
a.Swap(&b);
@ -4148,7 +4362,7 @@ class LoginErrorEvent final :
&_LoginErrorEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
21;
22;
friend void swap(LoginErrorEvent& a, LoginErrorEvent& b) {
a.Swap(&b);
@ -4312,7 +4526,7 @@ class LoginTfaRequestedEvent final :
&_LoginTfaRequestedEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
22;
23;
friend void swap(LoginTfaRequestedEvent& a, LoginTfaRequestedEvent& b) {
a.Swap(&b);
@ -4464,7 +4678,7 @@ class LoginTwoPasswordsRequestedEvent final :
&_LoginTwoPasswordsRequestedEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
23;
24;
friend void swap(LoginTwoPasswordsRequestedEvent& a, LoginTwoPasswordsRequestedEvent& b) {
a.Swap(&b);
@ -4583,7 +4797,7 @@ class LoginFinishedEvent final :
&_LoginFinishedEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
24;
25;
friend void swap(LoginFinishedEvent& a, LoginFinishedEvent& b) {
a.Swap(&b);
@ -4747,7 +4961,7 @@ class UpdateEvent final :
&_UpdateEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
25;
26;
friend void swap(UpdateEvent& a, UpdateEvent& b) {
a.Swap(&b);
@ -5042,7 +5256,7 @@ class UpdateErrorEvent final :
&_UpdateErrorEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
26;
27;
friend void swap(UpdateErrorEvent& a, UpdateErrorEvent& b) {
a.Swap(&b);
@ -5190,7 +5404,7 @@ class UpdateManualReadyEvent final :
&_UpdateManualReadyEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
27;
28;
friend void swap(UpdateManualReadyEvent& a, UpdateManualReadyEvent& b) {
a.Swap(&b);
@ -5342,7 +5556,7 @@ class UpdateManualRestartNeededEvent final :
&_UpdateManualRestartNeededEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
28;
29;
friend void swap(UpdateManualRestartNeededEvent& a, UpdateManualRestartNeededEvent& b) {
a.Swap(&b);
@ -5461,7 +5675,7 @@ class UpdateForceEvent final :
&_UpdateForceEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
29;
30;
friend void swap(UpdateForceEvent& a, UpdateForceEvent& b) {
a.Swap(&b);
@ -5613,7 +5827,7 @@ class UpdateSilentRestartNeeded final :
&_UpdateSilentRestartNeeded_default_instance_);
}
static constexpr int kIndexInFileMessages =
30;
31;
friend void swap(UpdateSilentRestartNeeded& a, UpdateSilentRestartNeeded& b) {
a.Swap(&b);
@ -5731,7 +5945,7 @@ class UpdateIsLatestVersion final :
&_UpdateIsLatestVersion_default_instance_);
}
static constexpr int kIndexInFileMessages =
31;
32;
friend void swap(UpdateIsLatestVersion& a, UpdateIsLatestVersion& b) {
a.Swap(&b);
@ -5849,7 +6063,7 @@ class UpdateCheckFinished final :
&_UpdateCheckFinished_default_instance_);
}
static constexpr int kIndexInFileMessages =
32;
33;
friend void swap(UpdateCheckFinished& a, UpdateCheckFinished& b) {
a.Swap(&b);
@ -5977,7 +6191,7 @@ class CacheEvent final :
&_CacheEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
33;
34;
friend void swap(CacheEvent& a, CacheEvent& b) {
a.Swap(&b);
@ -6230,7 +6444,7 @@ class CacheErrorEvent final :
&_CacheErrorEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
34;
35;
friend void swap(CacheErrorEvent& a, CacheErrorEvent& b) {
a.Swap(&b);
@ -6377,7 +6591,7 @@ class CacheLocationChangeSuccessEvent final :
&_CacheLocationChangeSuccessEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
35;
36;
friend void swap(CacheLocationChangeSuccessEvent& a, CacheLocationChangeSuccessEvent& b) {
a.Swap(&b);
@ -6495,7 +6709,7 @@ class ChangeLocalCacheFinishedEvent final :
&_ChangeLocalCacheFinishedEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
36;
37;
friend void swap(ChangeLocalCacheFinishedEvent& a, ChangeLocalCacheFinishedEvent& b) {
a.Swap(&b);
@ -6614,7 +6828,7 @@ class IsCacheOnDiskEnabledChanged final :
&_IsCacheOnDiskEnabledChanged_default_instance_);
}
static constexpr int kIndexInFileMessages =
37;
38;
friend void swap(IsCacheOnDiskEnabledChanged& a, IsCacheOnDiskEnabledChanged& b) {
a.Swap(&b);
@ -6762,7 +6976,7 @@ class DiskCachePathChanged final :
&_DiskCachePathChanged_default_instance_);
}
static constexpr int kIndexInFileMessages =
38;
39;
friend void swap(DiskCachePathChanged& a, DiskCachePathChanged& b) {
a.Swap(&b);
@ -6922,7 +7136,7 @@ class MailSettingsEvent final :
&_MailSettingsEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
39;
40;
friend void swap(MailSettingsEvent& a, MailSettingsEvent& b) {
a.Swap(&b);
@ -7133,7 +7347,7 @@ class MailSettingsErrorEvent final :
&_MailSettingsErrorEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
40;
41;
friend void swap(MailSettingsErrorEvent& a, MailSettingsErrorEvent& b) {
a.Swap(&b);
@ -7280,7 +7494,7 @@ class UseSslForSmtpFinishedEvent final :
&_UseSslForSmtpFinishedEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
41;
42;
friend void swap(UseSslForSmtpFinishedEvent& a, UseSslForSmtpFinishedEvent& b) {
a.Swap(&b);
@ -7398,7 +7612,7 @@ class ChangePortsFinishedEvent final :
&_ChangePortsFinishedEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
42;
43;
friend void swap(ChangePortsFinishedEvent& a, ChangePortsFinishedEvent& b) {
a.Swap(&b);
@ -7524,7 +7738,7 @@ class KeychainEvent final :
&_KeychainEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
43;
44;
friend void swap(KeychainEvent& a, KeychainEvent& b) {
a.Swap(&b);
@ -7734,7 +7948,7 @@ class ChangeKeychainFinishedEvent final :
&_ChangeKeychainFinishedEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
44;
45;
friend void swap(ChangeKeychainFinishedEvent& a, ChangeKeychainFinishedEvent& b) {
a.Swap(&b);
@ -7852,7 +8066,7 @@ class HasNoKeychainEvent final :
&_HasNoKeychainEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
45;
46;
friend void swap(HasNoKeychainEvent& a, HasNoKeychainEvent& b) {
a.Swap(&b);
@ -7970,7 +8184,7 @@ class RebuildKeychainEvent final :
&_RebuildKeychainEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
46;
47;
friend void swap(RebuildKeychainEvent& a, RebuildKeychainEvent& b) {
a.Swap(&b);
@ -8097,7 +8311,7 @@ class MailEvent final :
&_MailEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
47;
48;
friend void swap(MailEvent& a, MailEvent& b) {
a.Swap(&b);
@ -8329,7 +8543,7 @@ class NoActiveKeyForRecipientEvent final :
&_NoActiveKeyForRecipientEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
48;
49;
friend void swap(NoActiveKeyForRecipientEvent& a, NoActiveKeyForRecipientEvent& b) {
a.Swap(&b);
@ -8482,7 +8696,7 @@ class AddressChangedEvent final :
&_AddressChangedEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
49;
50;
friend void swap(AddressChangedEvent& a, AddressChangedEvent& b) {
a.Swap(&b);
@ -8635,7 +8849,7 @@ class AddressChangedLogoutEvent final :
&_AddressChangedLogoutEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
50;
51;
friend void swap(AddressChangedLogoutEvent& a, AddressChangedLogoutEvent& b) {
a.Swap(&b);
@ -8787,7 +9001,7 @@ class ApiCertIssueEvent final :
&_ApiCertIssueEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
51;
52;
friend void swap(ApiCertIssueEvent& a, ApiCertIssueEvent& b) {
a.Swap(&b);
@ -8913,7 +9127,7 @@ class UserEvent final :
&_UserEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
52;
53;
friend void swap(UserEvent& a, UserEvent& b) {
a.Swap(&b);
@ -9124,7 +9338,7 @@ class ToggleSplitModeFinishedEvent final :
&_ToggleSplitModeFinishedEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
53;
54;
friend void swap(ToggleSplitModeFinishedEvent& a, ToggleSplitModeFinishedEvent& b) {
a.Swap(&b);
@ -9277,7 +9491,7 @@ class UserDisconnectedEvent final :
&_UserDisconnectedEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
54;
55;
friend void swap(UserDisconnectedEvent& a, UserDisconnectedEvent& b) {
a.Swap(&b);
@ -9430,7 +9644,7 @@ class UserChangedEvent final :
&_UserChangedEvent_default_instance_);
}
static constexpr int kIndexInFileMessages =
55;
56;
friend void swap(UserChangedEvent& a, UserChangedEvent& b) {
a.Swap(&b);
@ -9542,6 +9756,130 @@ class UserChangedEvent final :
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wstrict-aliasing"
#endif // __GNUC__
// AddLogEntryRequest
// .grpc.LogLevel level = 1;
inline void AddLogEntryRequest::clear_level() {
_impl_.level_ = 0;
}
inline ::grpc::LogLevel AddLogEntryRequest::_internal_level() const {
return static_cast< ::grpc::LogLevel >(_impl_.level_);
}
inline ::grpc::LogLevel AddLogEntryRequest::level() const {
// @@protoc_insertion_point(field_get:grpc.AddLogEntryRequest.level)
return _internal_level();
}
inline void AddLogEntryRequest::_internal_set_level(::grpc::LogLevel value) {
_impl_.level_ = value;
}
inline void AddLogEntryRequest::set_level(::grpc::LogLevel value) {
_internal_set_level(value);
// @@protoc_insertion_point(field_set:grpc.AddLogEntryRequest.level)
}
// string package = 2;
inline void AddLogEntryRequest::clear_package() {
_impl_.package_.ClearToEmpty();
}
inline const std::string& AddLogEntryRequest::package() const {
// @@protoc_insertion_point(field_get:grpc.AddLogEntryRequest.package)
return _internal_package();
}
template <typename ArgT0, typename... ArgT>
inline PROTOBUF_ALWAYS_INLINE
void AddLogEntryRequest::set_package(ArgT0&& arg0, ArgT... args) {
_impl_.package_.Set(static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
// @@protoc_insertion_point(field_set:grpc.AddLogEntryRequest.package)
}
inline std::string* AddLogEntryRequest::mutable_package() {
std::string* _s = _internal_mutable_package();
// @@protoc_insertion_point(field_mutable:grpc.AddLogEntryRequest.package)
return _s;
}
inline const std::string& AddLogEntryRequest::_internal_package() const {
return _impl_.package_.Get();
}
inline void AddLogEntryRequest::_internal_set_package(const std::string& value) {
_impl_.package_.Set(value, GetArenaForAllocation());
}
inline std::string* AddLogEntryRequest::_internal_mutable_package() {
return _impl_.package_.Mutable(GetArenaForAllocation());
}
inline std::string* AddLogEntryRequest::release_package() {
// @@protoc_insertion_point(field_release:grpc.AddLogEntryRequest.package)
return _impl_.package_.Release();
}
inline void AddLogEntryRequest::set_allocated_package(std::string* package) {
if (package != nullptr) {
} else {
}
_impl_.package_.SetAllocated(package, GetArenaForAllocation());
#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
if (_impl_.package_.IsDefault()) {
_impl_.package_.Set("", GetArenaForAllocation());
}
#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
// @@protoc_insertion_point(field_set_allocated:grpc.AddLogEntryRequest.package)
}
// string message = 3;
inline void AddLogEntryRequest::clear_message() {
_impl_.message_.ClearToEmpty();
}
inline const std::string& AddLogEntryRequest::message() const {
// @@protoc_insertion_point(field_get:grpc.AddLogEntryRequest.message)
return _internal_message();
}
template <typename ArgT0, typename... ArgT>
inline PROTOBUF_ALWAYS_INLINE
void AddLogEntryRequest::set_message(ArgT0&& arg0, ArgT... args) {
_impl_.message_.Set(static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
// @@protoc_insertion_point(field_set:grpc.AddLogEntryRequest.message)
}
inline std::string* AddLogEntryRequest::mutable_message() {
std::string* _s = _internal_mutable_message();
// @@protoc_insertion_point(field_mutable:grpc.AddLogEntryRequest.message)
return _s;
}
inline const std::string& AddLogEntryRequest::_internal_message() const {
return _impl_.message_.Get();
}
inline void AddLogEntryRequest::_internal_set_message(const std::string& value) {
_impl_.message_.Set(value, GetArenaForAllocation());
}
inline std::string* AddLogEntryRequest::_internal_mutable_message() {
return _impl_.message_.Mutable(GetArenaForAllocation());
}
inline std::string* AddLogEntryRequest::release_message() {
// @@protoc_insertion_point(field_release:grpc.AddLogEntryRequest.message)
return _impl_.message_.Release();
}
inline void AddLogEntryRequest::set_allocated_message(std::string* message) {
if (message != nullptr) {
} else {
}
_impl_.message_.SetAllocated(message, GetArenaForAllocation());
#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
if (_impl_.message_.IsDefault()) {
_impl_.message_.Set("", GetArenaForAllocation());
}
#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
// @@protoc_insertion_point(field_set_allocated:grpc.AddLogEntryRequest.message)
}
// -------------------------------------------------------------------
// ReportBugRequest
// string osType = 1;
@ -15248,6 +15586,8 @@ inline void UserChangedEvent::set_allocated_userid(std::string* userid) {
// -------------------------------------------------------------------
// -------------------------------------------------------------------
// @@protoc_insertion_point(namespace_scope)
@ -15255,6 +15595,11 @@ inline void UserChangedEvent::set_allocated_userid(std::string* userid) {
PROTOBUF_NAMESPACE_OPEN
template <> struct is_proto_enum< ::grpc::LogLevel> : ::std::true_type {};
template <>
inline const EnumDescriptor* GetEnumDescriptor< ::grpc::LogLevel>() {
return ::grpc::LogLevel_descriptor();
}
template <> struct is_proto_enum< ::grpc::LoginErrorType> : ::std::true_type {};
template <>
inline const EnumDescriptor* GetEnumDescriptor< ::grpc::LoginErrorType>() {

View File

@ -20,6 +20,86 @@
#include "Log.h"
namespace
{
//****************************************************************************************************************************************************
/// \param[in] type The message type.
/// \param[in] message The message.
//****************************************************************************************************************************************************
void qtMessageHandler(QtMsgType type, QMessageLogContext const &, QString const &message)
{
static Log &log = app().log();
switch (type)
{
case QtDebugMsg:
log.debug(message);
break;
case QtWarningMsg:
log.warn(message);
break;
case QtCriticalMsg:
case QtFatalMsg:
log.error(message);
break;
case QtInfoMsg:
default:
log.info(message);
break;
}
}
//****************************************************************************************************************************************************
/// \param[in] level The level.
/// \return A string describing the level.
//****************************************************************************************************************************************************
QString logLevelToString(Log::Level level)
{
switch (level)
{
case Log::Level::Panic: return "PANIC";
case Log::Level::Fatal: return "FATAL";
case Log::Level::Error: return "ERROR";
case Log::Level::Warn: return "WARN";
case Log::Level::Info: return "INFO";
case Log::Level::Debug: return "DEBUG";
case Log::Level::Trace: return "TRACE";
default: return "UNKNOWN";
}
}
//****************************************************************************************************************************************************
/// \brief return a string representing the log entry
///
/// \param[in] level The log entry level.
/// \param[in] message The log entry message.
/// \return The string for the log entry
//****************************************************************************************************************************************************
QString logEntryToString(Log::Level level, QString const &message)
{
return QString("[%1] %2").arg(logLevelToString(level)).arg(message);
}
}
//****************************************************************************************************************************************************
/// the message handle process the message from the Qt logging system.
//****************************************************************************************************************************************************
void Log::installQtMessageHandler()
{
qInstallMessageHandler(qtMessageHandler);
}
//****************************************************************************************************************************************************
//
//****************************************************************************************************************************************************
@ -72,88 +152,83 @@ bool Log::echoInConsole() const
//****************************************************************************************************************************************************
/// \param[in] message The message
/// \param[in] message The message.
//****************************************************************************************************************************************************
void Log::debug(QString const &message)
void Log::panic(QString const &message)
{
QMutexLocker locker(&mutex_);
if (qint32(level_) > qint32(Level::Debug))
return;
emit debugEntryAdded(message);
QString const withPrefix = "[DEBUG] " + message;
emit entryAdded(withPrefix);
if (echoInConsole_)
{
stdout_ << withPrefix << "\n";
stdout_.flush();
}
}
//****************************************************************************************************************************************************
/// \param[in] message The message
//****************************************************************************************************************************************************
void Log::info(QString const &message)
{
QMutexLocker locker(&mutex_);
if (qint32(level_) > qint32(Level::Info))
return;
emit infoEntryAdded(message);
QString const withPrefix = "[INFO] " + message;
emit entryAdded(withPrefix);
if (echoInConsole_)
{
stdout_ << withPrefix << "\n";
stdout_.flush();
}
return this->addEntry(Level::Panic, message);
}
//****************************************************************************************************************************************************
//
/// \param[in] message The message.
//****************************************************************************************************************************************************
void Log::warn(QString const &message)
void Log::fatal(QString const &message)
{
QMutexLocker locker(&mutex_);
if (qint32(level_) > qint32(Level::Warn))
return;
emit infoEntryAdded(message);
QString const withPrefix = "[WARNING] " + message;
emit entryAdded(withPrefix);
if (echoInConsole_)
{
stdout_ << withPrefix << "\n";
stdout_.flush();
}
return this->addEntry(Level::Fatal, message);
}
//****************************************************************************************************************************************************
/// message
/// \param[in] message The message.
//****************************************************************************************************************************************************
void Log::error(QString const &message)
{
QMutexLocker locker(&mutex_);
if (qint32(level_) > qint32(Level::Error))
return;
emit infoEntryAdded(message);
QString const withPrefix = "[ERROR] " + message;
emit entryAdded(withPrefix);
if (echoInConsole_)
{
stderr_ << withPrefix << "\n";
stderr_.flush();
}
return this->addEntry(Level::Error, message);
}
//****************************************************************************************************************************************************
/// \param[in] message The message.
//****************************************************************************************************************************************************
void Log::warn(QString const &message)
{
return this->addEntry(Level::Warn, message);
}
//****************************************************************************************************************************************************
/// \param[in] message The message.
//****************************************************************************************************************************************************
void Log::info(QString const &message)
{
return this->addEntry(Level::Info, message);
}
//****************************************************************************************************************************************************
/// \param[in] message The message.
//****************************************************************************************************************************************************
void Log::debug(QString const &message)
{
return this->addEntry(Level::Debug, message);
}
//****************************************************************************************************************************************************
/// \param[in] message The message.
//****************************************************************************************************************************************************
void Log::trace(QString const &message)
{
return this->addEntry(Level::Trace, message);
}
//****************************************************************************************************************************************************
/// \param[in] level The level.
/// \param[in] message The message.
//****************************************************************************************************************************************************
void Log::addEntry(Log::Level level, QString const &message)
{
QMutexLocker locker(&mutex_);
if (qint32(level) > qint32(level_))
return;
emit entryAdded(level, message);
if (echoInConsole_)
{
QTextStream& stream = (qint32(level) <= (qint32(Level::Warn))) ? stderr_ : stdout_;
stream << logEntryToString(level, message) << "\n";
stream.flush();
}
}

View File

@ -27,13 +27,20 @@ class Log : public QObject
{
Q_OBJECT
public: // data types.
/// \brief Log level class. The list matches [logrus log levels](https://pkg.go.dev/github.com/sirupsen/logrus).
enum class Level
{
Debug = 0, ///< Debug
Info = 1, ///< Info
Warn = 2, ///< Warn
Error = 3, ///< Error
}; ///< Log level class
Panic, ///< Panic log level.
Fatal, ///< Fatal log level.
Error, ///< Error log level.
Warn, ///< Warn log level.
Info, ///< Info log level.
Debug, ///< Debug log level.
Trace ///< Trace log level.
};
public: // static member functions
static void installQtMessageHandler(); ///< Install the Qt message handler.
public: // member functions.
Log(); ///< Default constructor.
@ -49,17 +56,18 @@ public: // member functions.
bool echoInConsole() const; ///< Check if the log entries should be echoed in STDOUT/STDERR.
public slots:
void debug(QString const &message); ///< Adds a debug entry in the log.
void info(QString const &message); ///< Adds an info entry to the log.
void warn(QString const &message); ///< Adds a warning entry to the log.
void panic(QString const &message); ///< Adds an panic entry to the log.
void fatal(QString const &message); ///< Adds an fatal entry to the log.
void error(QString const &message); ///< Adds an error entry to the log.
void warn(QString const &message); ///< Adds a warn entry to the log.
void info(QString const &message); ///< Adds an info entry to the log.
void debug(QString const &message); ///< Adds a debug entry in the log.
void trace(QString const &message); ///< Adds a trace entry in the log.
void addEntry(Log::Level level, QString const &message); ///< Adds a trace entry in the log.
signals:
void debugEntryAdded(QString const &); ///< Signal for debug entries.
void infoEntryAdded(QString const &message); ///< Signal for info entries.
void warnEntryAdded(QString const &message); ///< Signal for warning entries.
void errorEntryAdded(QString const &message); ///< Signal for error entries.
void entryAdded(QString const &message); ///< Signal emitted when any type of entry is added.
void entryAdded(Log::Level entry, QString const &); ///< Signal emitted when a log entry is added.
private: // data members
mutable QMutex mutex_; ///< The mutex.

View File

@ -55,6 +55,10 @@ void QMLBackend::init()
eventStreamOverseer_ = std::make_unique<Overseer>(new EventStreamReader(nullptr), nullptr);
eventStreamOverseer_->startWorker(true);
connect(&app().log(), &Log::entryAdded, [&](Log::Level level, QString const& message) {
app().grpc().addLogEntry(level, "frontend/bridge-gui", message);
});
// Grab from bridge the value that will not change during the execution of this app (or that will only change locally
logGRPCCallStatus(app().grpc().showSplashScreen(showSplashScreen_), "showSplashScreen");
logGRPCCallStatus(app().grpc().goos(goos_), "goos");

View File

@ -49,6 +49,7 @@ Log &initLog()
Log &log = app().log();
log.setEchoInConsole(true);
log.setLevel(Log::Level::Debug);
Log::installQtMessageHandler();
return log;
}
@ -105,6 +106,8 @@ void launchBridge(QString const &exePath)
//****************************************************************************************************************************************************
/// \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)
{
@ -208,5 +211,3 @@ int main(int argc, char *argv[])
return EXIT_FAILURE;
}
}