Move webservice settings to own file

This commit is contained in:
Vitor Kiguchi
2020-08-20 04:46:35 -03:00
parent 88a4759702
commit fa0cb52a5d
14 changed files with 104 additions and 76 deletions

View File

@@ -16,8 +16,8 @@
#include "citra_qt/multiplayer/validation.h"
#include "citra_qt/uisettings.h"
#include "core/hle/service/cfg/cfg.h"
#include "core/settings.h"
#include "network/network.h"
#include "network/network_settings.h"
#include "ui_direct_connect.h"
enum class ConnectionType : u8 { TraversalServer, IP };
@@ -34,9 +34,9 @@ DirectConnectWindow::DirectConnectWindow(QWidget* parent)
ui->nickname->setValidator(validation.GetNickname());
ui->nickname->setText(UISettings::values.nickname);
if (ui->nickname->text().isEmpty() && !Settings::values.citra_username.empty()) {
if (ui->nickname->text().isEmpty() && !NetSettings::values.citra_username.empty()) {
// Use Citra Web Service user name as nickname by default
ui->nickname->setText(QString::fromStdString(Settings::values.citra_username));
ui->nickname->setText(QString::fromStdString(NetSettings::values.citra_username));
}
ui->ip->setValidator(validation.GetIP());
ui->ip->setText(UISettings::values.ip);
@@ -92,7 +92,6 @@ void DirectConnectWindow::Connect() {
UISettings::values.port = (ui->port->isModified() && !ui->port->text().isEmpty())
? ui->port->text()
: UISettings::values.port;
Settings::Apply();
// attempt to connect in a different thread
QFuture<void> f = QtConcurrent::run([&] {

View File

@@ -21,7 +21,7 @@
#include "common/logging/log.h"
#include "core/announce_multiplayer_session.h"
#include "core/hle/service/cfg/cfg.h"
#include "core/settings.h"
#include "network/network_settings.h"
#include "ui_host_room.h"
#ifdef ENABLE_WEB_SERVICE
#include "web_service/verify_user_jwt.h"
@@ -53,9 +53,9 @@ HostRoomWindow::HostRoomWindow(QWidget* parent, QStandardItemModel* list,
// Restore the settings:
ui->username->setText(UISettings::values.room_nickname);
if (ui->username->text().isEmpty() && !Settings::values.citra_username.empty()) {
if (ui->username->text().isEmpty() && !NetSettings::values.citra_username.empty()) {
// Use Citra Web Service user name as nickname by default
ui->username->setText(QString::fromStdString(Settings::values.citra_username));
ui->username->setText(QString::fromStdString(NetSettings::values.citra_username));
}
ui->room_name->setText(UISettings::values.room_name);
ui->port->setText(UISettings::values.room_port);
@@ -92,7 +92,8 @@ std::unique_ptr<Network::VerifyUser::Backend> HostRoomWindow::CreateVerifyBacken
std::unique_ptr<Network::VerifyUser::Backend> verify_backend;
if (use_validation) {
#ifdef ENABLE_WEB_SERVICE
verify_backend = std::make_unique<WebService::VerifyUserJWT>(Settings::values.web_api_url);
verify_backend =
std::make_unique<WebService::VerifyUserJWT>(NetSettings::values.web_api_url);
#else
verify_backend = std::make_unique<Network::VerifyUser::NullBackend>();
#endif
@@ -144,7 +145,7 @@ void HostRoomWindow::Host() {
bool created = room->Create(ui->room_name->text().toStdString(),
ui->room_description->toPlainText().toStdString(), "", port,
password, ui->max_player->value(),
Settings::values.citra_username, game_name.toStdString(),
NetSettings::values.citra_username, game_name.toStdString(),
game_id, CreateVerifyBackend(is_public), ban_list);
if (!created) {
NetworkMessage::ErrorManager::ShowError(
@@ -182,8 +183,9 @@ void HostRoomWindow::Host() {
std::string token;
#ifdef ENABLE_WEB_SERVICE
if (is_public) {
WebService::Client client(Settings::values.web_api_url, Settings::values.citra_username,
Settings::values.citra_token);
WebService::Client client(NetSettings::values.web_api_url,
NetSettings::values.citra_username,
NetSettings::values.citra_token);
if (auto room = Network::GetRoom().lock()) {
token = client.GetExternalJWT(room->GetVerifyUID()).returned_data;
}
@@ -210,7 +212,6 @@ void HostRoomWindow::Host() {
? ui->port->text()
: QString::number(Network::DefaultRoomPort);
UISettings::values.room_description = ui->room_description->toPlainText();
Settings::Apply();
ui->host->setEnabled(true);
close();
}

View File

@@ -16,8 +16,8 @@
#include "citra_qt/uisettings.h"
#include "common/logging/log.h"
#include "core/hle/service/cfg/cfg.h"
#include "core/settings.h"
#include "network/network.h"
#include "network/network_settings.h"
#include "ui_lobby.h"
#ifdef ENABLE_WEB_SERVICE
#include "web_service/web_backend.h"
@@ -58,9 +58,9 @@ Lobby::Lobby(QWidget* parent, QStandardItemModel* list,
ui->nickname->setValidator(validation.GetNickname());
ui->nickname->setText(UISettings::values.nickname);
if (ui->nickname->text().isEmpty() && !Settings::values.citra_username.empty()) {
if (ui->nickname->text().isEmpty() && !NetSettings::values.citra_username.empty()) {
// Use Citra Web Service user name as nickname by default
ui->nickname->setText(QString::fromStdString(Settings::values.citra_username));
ui->nickname->setText(QString::fromStdString(NetSettings::values.citra_username));
}
// UI Buttons
@@ -155,9 +155,11 @@ void Lobby::OnJoinRoom(const QModelIndex& source) {
QFuture<void> f = QtConcurrent::run([nickname, ip, port, password, verify_UID] {
std::string token;
#ifdef ENABLE_WEB_SERVICE
if (!Settings::values.citra_username.empty() && !Settings::values.citra_token.empty()) {
WebService::Client client(Settings::values.web_api_url, Settings::values.citra_username,
Settings::values.citra_token);
if (!NetSettings::values.citra_username.empty() &&
!NetSettings::values.citra_token.empty()) {
WebService::Client client(NetSettings::values.web_api_url,
NetSettings::values.citra_username,
NetSettings::values.citra_token);
token = client.GetExternalJWT(verify_UID).returned_data;
if (token.empty()) {
LOG_ERROR(WebService, "Could not get external JWT, verification may fail");
@@ -179,7 +181,6 @@ void Lobby::OnJoinRoom(const QModelIndex& source) {
UISettings::values.nickname = ui->nickname->text();
UISettings::values.ip = proxy->data(connection_index, LobbyItemHost::HostIPRole).toString();
UISettings::values.port = proxy->data(connection_index, LobbyItemHost::HostPortRole).toString();
Settings::Apply();
}
void Lobby::ResetModel() {