comments & general maintainability things
This commit is contained in:
parent
a625bb55cd
commit
d6360d207a
2 changed files with 11 additions and 7 deletions
16
main.cpp
16
main.cpp
|
|
@ -151,14 +151,14 @@ int main() {
|
|||
buffer[bytes_received] = '\0';
|
||||
std::cout << "[i] Received: " << buffer << std::endl;
|
||||
std::vector<std::string> parsed = parse_resp_request(buffer);
|
||||
for (std::string& var: parsed) {
|
||||
}
|
||||
|
||||
if (parsed[0] == "GET") {
|
||||
bool found = false;
|
||||
for (const auto& inner_vec: database) {
|
||||
|
||||
for (const auto& inner_vec: database) { // Iterate through DB and find the required item
|
||||
if (!inner_vec.empty() && inner_vec[0] == parsed[1]) {
|
||||
int length = inner_vec[1].length();
|
||||
std::string return_string = std::format("${}\r\n{}\r\n", length, inner_vec[1]);
|
||||
std::string return_string = std::format("${}\r\n{}\r\n", length, inner_vec[1]); // Serialise to RESP
|
||||
std::cout << "[d] Sending: " << return_string << std::endl;
|
||||
send(client_socket, return_string.data(), return_string.length(), 0);
|
||||
found = true;
|
||||
|
|
@ -166,16 +166,18 @@ int main() {
|
|||
}
|
||||
|
||||
if (!found) {
|
||||
send(client_socket, "$-1\r\n", strlen("$-1\r\n"), 0);
|
||||
send(client_socket, "$-1\r\n", strlen("$-1\r\n"), 0); // Not found
|
||||
}
|
||||
} else if (parsed[0] == "SET") {
|
||||
bool found = false;
|
||||
bool found = false; // Avoids SEGFAULT
|
||||
|
||||
for (auto& inner_vec: database) {
|
||||
if (!inner_vec.empty() && inner_vec[0] == parsed[1]) {
|
||||
inner_vec[1] = parsed[2];
|
||||
send(client_socket, "+OK\r\n", strlen("+OK\r\n"), 0);
|
||||
found = true;
|
||||
}
|
||||
|
||||
if (!found) {
|
||||
std::vector<std::string> new_kv = { parsed[1], parsed[2] };
|
||||
database.push_back(new_kv);
|
||||
|
|
@ -184,7 +186,7 @@ int main() {
|
|||
}
|
||||
}
|
||||
} else {
|
||||
send(client_socket, "+OK\r\n", strlen("+OK\r\n"), 0);
|
||||
send(client_socket, "+OK\r\n", strlen("+OK\r\n"), 0); // Temporary catch-all (for more advanced handshake)
|
||||
}
|
||||
} else {
|
||||
close(client_socket);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue