adding logs

This commit is contained in:
Kbz-8
2024-01-21 10:01:32 +01:00
parent d9d6bb3a8c
commit 4374f826ea
6 changed files with 138 additions and 10 deletions

View File

@@ -6,13 +6,14 @@
# By: vavaas <vvaas@student.42.fr> +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ #
# Created: 2023/08/09 15:08:49 by vavaas #+# #+# #
# Updated: 2024/01/20 19:16:37 by maldavid ### ########.fr #
# Updated: 2024/01/21 09:44:11 by maldavid ### ########.fr #
# #
# **************************************************************************** #
NAME = ircserv
SRCS = srcs/main.cpp \
SRCS = srcs/core/main.cpp \
srcs/core/logs.cpp \
srcs/utils/ansi.cpp \
OBJ_DIR = objs

34
includes/logs.hpp Normal file
View File

@@ -0,0 +1,34 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* logs.hpp :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: maldavid <kbz_8.dev@akel-engine.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/01/21 09:15:24 by maldavid #+# #+# */
/* Updated: 2024/01/21 09:30:07 by maldavid ### ########.fr */
/* */
/* ************************************************************************** */
#ifndef __LOGS__
#define __LOGS__
#include <string>
namespace irc
{
enum LogType
{
log_message = 0,
log_warning,
log_error,
log_fatal_error
};
namespace logs
{
void report(LogType type, std::string message, ...); // message is not a const reference due to va_args
}
}
#endif

29
includes/server.hpp Normal file
View File

@@ -0,0 +1,29 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* server.hpp :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: maldavid <kbz_8.dev@akel-engine.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/01/21 09:12:28 by maldavid #+# #+# */
/* Updated: 2024/01/21 09:14:20 by maldavid ### ########.fr */
/* */
/* ************************************************************************** */
#ifndef __SERVER_IRC__
#define __SERVER_IRC__
namespace irc
{
class Server
{
public:
Server();
~Server();
private:
};
}
#endif

46
srcs/core/logs.cpp Normal file
View File

@@ -0,0 +1,46 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* logs.cpp :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: maldavid <kbz_8.dev@akel-engine.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/01/21 09:17:47 by maldavid #+# #+# */
/* Updated: 2024/01/21 09:30:13 by maldavid ### ########.fr */
/* */
/* ************************************************************************** */
#include <logs.hpp>
#include <ansi.hpp>
#include <cstdarg>
#include <cstdlib>
#include <cstdio>
#define BUFFER_SIZE 4096
namespace irc
{
namespace logs
{
void report(LogType type, std::string message, ...)
{
char buffer[BUFFER_SIZE];
va_list al;
va_start(al, message);
vsnprintf(buffer, BUFFER_SIZE, message.c_str(), al);
va_end(al);
switch(type)
{
case log_message: std::cout << AnsiColor::blue << "[IRC serv] Message : " << AnsiColor::reset << buffer << std::endl; break;
case log_warning: std::cout << AnsiColor::magenta << "[IRC serv] Warning : " << AnsiColor::reset << buffer << std::endl; break;
case log_error: std::cerr << AnsiColor::red << "[IRC serv] Error : " << AnsiColor::reset << buffer << std::endl; break;
case log_fatal_error:
std::cerr << AnsiColor::red << "[IRC serv] Fatal Error : " << AnsiColor::reset << buffer << std::endl;
std::exit(EXIT_FAILURE);
break;
}
}
}
}

View File

@@ -6,19 +6,19 @@
/* By: maldavid <kbz_8.dev@akel-engine.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/01/20 09:27:04 by maldavid #+# #+# */
/* Updated: 2024/01/20 19:19:39 by maldavid ### ########.fr */
/* Updated: 2024/01/21 09:30:55 by maldavid ### ########.fr */
/* */
/* ************************************************************************** */
#include <unstd/unique_ptr.hpp>
#include <unstd/shared_ptr.hpp>
#include <unstd/weak_ptr.hpp>
#include <ansi.hpp>
#include <logs.hpp>
int main(int ac, char** av)
{
(void)ac;
if(ac != 3)
{
irc::logs::report(irc::log_message, "usage './ircserv <port> <password>', try again dumbass");
return 0;
}
(void)av;
std::cout << AnsiColor::red << "this" << AnsiColor::blue << " is" << AnsiColor::green << " a" << AnsiColor::yellow << " test" << AnsiColor::reset << std::endl;
return 0;
}

18
srcs/core/server.cpp Normal file
View File

@@ -0,0 +1,18 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* server.cpp :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: maldavid <kbz_8.dev@akel-engine.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/01/21 09:31:17 by maldavid #+# #+# */
/* Updated: 2024/01/21 09:31:28 by maldavid ### ########.fr */
/* */
/* ************************************************************************** */
#include <server.hpp>
namespace irc
{
}