MuseScore  3.4
Music composition and notation
Public Slots | Signals | Public Member Functions | Private Types | Private Slots | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | List of all members
Ms::LoginManager Class Reference

#include <loginmanager.h>

Inheritance diagram for Ms::LoginManager:
Inheritance graph
[legend]
Collaboration diagram for Ms::LoginManager:
Collaboration graph
[legend]

Public Slots

void tryLogin ()
 

Signals

void loginError (const QString &error)
 
void loginSuccess ()
 
void getUserError (const QString &error)
 
void getUserSuccess ()
 
void getScoreError (const QString &error)
 
void getScoreSuccess (const QString &title, const QString &description, bool priv, const QString &license, const QString &tags, const QString &url)
 
void uploadError (const QString &error)
 
void uploadSuccess (const QString &url, const QString &nid, const QString &vid)
 
void tryLoginSuccess ()
 
void mediaUploadSuccess ()
 

Public Member Functions

 LoginManager (QAction *uploadAudioMenuAction, QObject *parent=0)
 
void login (QString login, QString password)
 
void upload (const QString &path, int nid, const QString &title)
 
void updateScoreData (const QString &nid, bool newScore)
 
bool hasAccessToken ()
 
void getUser ()
 
void getScoreInfo (int nid)
 
void getMediaUrl (const QString &nid, const QString &vid, const QString &format)
 
bool save ()
 
bool load ()
 
bool logout ()
 
const QString & userName () const
 
int uid () const
 
const QUrl & avatar () const
 

Private Types

enum  RequestType {
  RequestType::LOGIN, RequestType::LOGIN_REFRESH, RequestType::GET_USER_INFO, RequestType::GET_SCORE_INFO,
  RequestType::UPLOAD_SCORE, RequestType::GET_MEDIA_URL
}
 

Private Slots

void uploadMedia ()
 
void mediaUploadFinished ()
 
void mediaUploadProgress (qint64, qint64)
 
void onTryLoginSuccess ()
 
void onTryLoginError (const QString &)
 

Private Member Functions

void onReplyFinished (ApiRequest *, RequestType)
 
void handleReply (QNetworkReply *, RequestType)
 
void onGetUserReply (QNetworkReply *reply, int code, const QJsonObject &replyContent)
 
void onLoginReply (QNetworkReply *reply, int code, const QJsonObject &replyContent)
 
void onLoginRefreshReply (QNetworkReply *reply, int code, const QJsonObject &replyContent)
 
void onUploadReply (QNetworkReply *reply, int code, const QJsonObject &replyContent)
 
void onGetScoreInfoReply (QNetworkReply *reply, int code, const QJsonObject &replyContent)
 
void onGetMediaUrlReply (QNetworkReply *reply, int code, const QJsonObject &replyContent)
 
ApiRequestbuildLoginRefreshRequest () const
 

Static Private Member Functions

static QString getErrorString (QNetworkReply *, const QJsonObject &)
 

Private Attributes

QNetworkAccessManager * _networkManager
 
QAction * _uploadAudioMenuAction = nullptr
 
QString _accessToken
 
QString _refreshToken
 
QString _userName
 
QUrl _avatar
 
int _uid = -1
 
QString _updateScoreDataPath
 
QString _mediaUrl
 
QFile * _mp3File
 
int _uploadTryCount = 0
 
QProgressDialog * _progressDialog
 

Static Private Attributes

static constexpr int MAX_UPLOAD_TRY_COUNT = 5
 
static constexpr int MAX_REFRESH_LOGIN_RETRY_COUNT = 2
 

Member Enumeration Documentation

◆ RequestType

enum Ms::LoginManager::RequestType
strongprivate
Enumerator
LOGIN 
LOGIN_REFRESH 
GET_USER_INFO 
GET_SCORE_INFO 
UPLOAD_SCORE 
GET_MEDIA_URL 

Constructor & Destructor Documentation

◆ LoginManager()

Ms::LoginManager::LoginManager ( QAction *  uploadAudioMenuAction,
QObject *  parent = 0 
)

Member Function Documentation

◆ avatar()

const QUrl& Ms::LoginManager::avatar ( ) const
inline

◆ buildLoginRefreshRequest()

ApiRequest * Ms::LoginManager::buildLoginRefreshRequest ( ) const
private

◆ getErrorString()

QString Ms::LoginManager::getErrorString ( QNetworkReply *  reply,
const QJsonObject &  obj 
)
staticprivate

◆ getMediaUrl()

void Ms::LoginManager::getMediaUrl ( const QString &  nid,
const QString &  vid,
const QString &  format 
)

◆ getScoreError

void Ms::LoginManager::getScoreError ( const QString &  error)
signal

◆ getScoreInfo()

void Ms::LoginManager::getScoreInfo ( int  nid)

◆ getScoreSuccess

void Ms::LoginManager::getScoreSuccess ( const QString &  title,
const QString &  description,
bool  priv,
const QString &  license,
const QString &  tags,
const QString &  url 
)
signal

◆ getUser()

void Ms::LoginManager::getUser ( )

◆ getUserError

void Ms::LoginManager::getUserError ( const QString &  error)
signal

◆ getUserSuccess

void Ms::LoginManager::getUserSuccess ( )
signal

◆ handleReply()

void Ms::LoginManager::handleReply ( QNetworkReply *  reply,
RequestType  requestType 
)
private

◆ hasAccessToken()

bool Ms::LoginManager::hasAccessToken ( )

◆ load()

bool Ms::LoginManager::load ( )

◆ login()

void Ms::LoginManager::login ( QString  login,
QString  password 
)

◆ loginError

void Ms::LoginManager::loginError ( const QString &  error)
signal

◆ loginSuccess

void Ms::LoginManager::loginSuccess ( )
signal

◆ logout()

bool Ms::LoginManager::logout ( )

◆ mediaUploadFinished

void Ms::LoginManager::mediaUploadFinished ( )
privateslot

◆ mediaUploadProgress

void Ms::LoginManager::mediaUploadProgress ( qint64  progress,
qint64  total 
)
privateslot

◆ mediaUploadSuccess

void Ms::LoginManager::mediaUploadSuccess ( )
signal

◆ onGetMediaUrlReply()

void Ms::LoginManager::onGetMediaUrlReply ( QNetworkReply *  reply,
int  code,
const QJsonObject &  replyContent 
)
private

◆ onGetScoreInfoReply()

void Ms::LoginManager::onGetScoreInfoReply ( QNetworkReply *  reply,
int  code,
const QJsonObject &  replyContent 
)
private

◆ onGetUserReply()

void Ms::LoginManager::onGetUserReply ( QNetworkReply *  reply,
int  code,
const QJsonObject &  replyContent 
)
private

◆ onLoginRefreshReply()

void Ms::LoginManager::onLoginRefreshReply ( QNetworkReply *  reply,
int  code,
const QJsonObject &  replyContent 
)
private

◆ onLoginReply()

void Ms::LoginManager::onLoginReply ( QNetworkReply *  reply,
int  code,
const QJsonObject &  replyContent 
)
private

◆ onReplyFinished()

void Ms::LoginManager::onReplyFinished ( ApiRequest request,
RequestType  requestType 
)
private

◆ onTryLoginError

void Ms::LoginManager::onTryLoginError ( const QString &  error)
privateslot

◆ onTryLoginSuccess

void Ms::LoginManager::onTryLoginSuccess ( )
privateslot

◆ onUploadReply()

void Ms::LoginManager::onUploadReply ( QNetworkReply *  reply,
int  code,
const QJsonObject &  replyContent 
)
private

◆ save()

bool Ms::LoginManager::save ( )

◆ tryLogin

void Ms::LoginManager::tryLogin ( )
slot

◆ tryLoginSuccess

void Ms::LoginManager::tryLoginSuccess ( )
signal

◆ uid()

int Ms::LoginManager::uid ( ) const
inline

◆ updateScoreData()

void Ms::LoginManager::updateScoreData ( const QString &  nid,
bool  newScore 
)

◆ upload()

void Ms::LoginManager::upload ( const QString &  path,
int  nid,
const QString &  title 
)

◆ uploadError

void Ms::LoginManager::uploadError ( const QString &  error)
signal

◆ uploadMedia

void Ms::LoginManager::uploadMedia ( )
privateslot

◆ uploadSuccess

void Ms::LoginManager::uploadSuccess ( const QString &  url,
const QString &  nid,
const QString &  vid 
)
signal

◆ userName()

const QString& Ms::LoginManager::userName ( ) const
inline

Member Data Documentation

◆ _accessToken

QString Ms::LoginManager::_accessToken
private

◆ _avatar

QUrl Ms::LoginManager::_avatar
private

◆ _mediaUrl

QString Ms::LoginManager::_mediaUrl
private

◆ _mp3File

QFile* Ms::LoginManager::_mp3File
private

◆ _networkManager

QNetworkAccessManager* Ms::LoginManager::_networkManager
private

◆ _progressDialog

QProgressDialog* Ms::LoginManager::_progressDialog
private

◆ _refreshToken

QString Ms::LoginManager::_refreshToken
private

◆ _uid

int Ms::LoginManager::_uid = -1
private

◆ _updateScoreDataPath

QString Ms::LoginManager::_updateScoreDataPath
private

◆ _uploadAudioMenuAction

QAction* Ms::LoginManager::_uploadAudioMenuAction = nullptr
private

◆ _uploadTryCount

int Ms::LoginManager::_uploadTryCount = 0
private

◆ _userName

QString Ms::LoginManager::_userName
private

◆ MAX_REFRESH_LOGIN_RETRY_COUNT

constexpr int Ms::LoginManager::MAX_REFRESH_LOGIN_RETRY_COUNT = 2
staticprivate

◆ MAX_UPLOAD_TRY_COUNT

constexpr int Ms::LoginManager::MAX_UPLOAD_TRY_COUNT = 5
staticprivate

The documentation for this class was generated from the following files: