Hode session_id and id in HTTPSession.

This commit is contained in:
Relintai 2025-05-03 21:19:29 +02:00
parent 7937fb6cae
commit 5aa9a0db10
3 changed files with 20 additions and 20 deletions

View File

@ -117,14 +117,14 @@ Ref<HTTPSession> HTTPSessionManagerDB::delete_session(const String &session_id)
return s;
}
if (!s->id) {
if (!s->get_id()) {
return s;
}
Ref<QueryBuilder> b = get_query_builder();
b->del(_database_data_table_name)->where()->wpi("session_db_id", s->id)->end_command();
b->del(_database_table_name)->where()->wpi("id", s->id)->end_command();
b->del(_database_data_table_name)->where()->wpi("session_db_id", s->get_id())->end_command();
b->del(_database_table_name)->where()->wpi("id", s->get_id())->end_command();
b->run_query();
return s;
@ -133,21 +133,21 @@ Ref<HTTPSession> HTTPSessionManagerDB::delete_session(const String &session_id)
void HTTPSessionManagerDB::save_session(Ref<HTTPSession> session) {
Ref<QueryBuilder> b = get_query_builder();
if (!session->id) {
if (!session->get_id()) {
b->insert(_database_table_name, "session_id");
b->values();
b->vals(session->session_id);
b->vals(session->get_session_id());
b->cvalues();
b->end_command();
b->select_last_insert_id();
session->id = b->run()->get_last_insert_rowid();
session->set_id(b->run()->get_last_insert_rowid());
b->reset();
}
b->del(_database_data_table_name)->where()->wpi("session_db_id", session->id)->end_command();
int id = session->id;
b->del(_database_data_table_name)->where()->wpi("session_db_id", session->get_id())->end_command();
int id = session->get_id();
HashMap<String, Variant> *m = session->get_data();
@ -188,9 +188,9 @@ void HTTPSessionManagerDB::load_sessions() {
Ref<HTTPSession> s;
s.instance();
s->id = id;
s->set_id(id);
s->session_id = session_id;
s->set_session_id(session_id);
add_session(s);
}
@ -210,7 +210,7 @@ void HTTPSessionManagerDB::load_sessions() {
for (int i = 0; i < _sessions_vec.size(); ++i) {
Ref<HTTPSession> ss = _sessions_vec[i];
if (ss.is_valid() && session_db_id == ss->id) {
if (ss.is_valid() && session_db_id == ss->get_id()) {
s = ss;
break;
}

View File

@ -77,12 +77,12 @@ public:
HTTPSession();
~HTTPSession();
String session_id;
int id;
protected:
static void _bind_methods();
String session_id;
int id;
Mutex _mutex;
HashMap<String, Variant> _data;

View File

@ -50,7 +50,7 @@ void HTTPSessionManager::add_session(Ref<HTTPSession> session) {
_mutex.lock();
_sessions_vec.push_back(session);
_sessions[session->session_id] = session;
_sessions[session->get_session_id()] = session;
_mutex.unlock();
}
@ -60,7 +60,7 @@ void HTTPSessionManager::remove_session(Ref<HTTPSession> session) {
_mutex.lock();
_sessions.erase(session->session_id);
_sessions.erase(session->get_session_id());
for (int i = 0; i < _sessions_vec.size(); ++i) {
if (_sessions_vec[i] == session) {
@ -83,7 +83,7 @@ Ref<HTTPSession> HTTPSessionManager::delete_session(const String &session_id) {
for (int i = 0; i < _sessions_vec.size(); ++i) {
Ref<HTTPSession> sess = _sessions_vec[i];
if (sess->session_id == session_id) {
if (sess->get_session_id() == session_id) {
_sessions_vec.remove(i);
break;
@ -107,13 +107,13 @@ Ref<HTTPSession> HTTPSessionManager::create_session() {
session.instance();
while (true) {
session->session_id = generate_session_id(session->session_id);
session->set_session_id(generate_session_id(session->get_session_id()));
_mutex.lock();
if (_sessions[session->session_id] == nullptr) {
if (_sessions[session->get_session_id()] == nullptr) {
_sessions_vec.push_back(session);
_sessions[session->session_id] = session;
_sessions[session->get_session_id()] = session;
_mutex.unlock();