Design Pattern Examples
Overview of object-oriented design patterns
Bridge_ConsoleLogger.c File Reference

Implementation of the console logger, along with the CreateConsoleLogger() and DestroyConsoleLogger() factory functions used in the Bridge Pattern. More...

#include <stdlib.h>
#include <stdio.h>
#include "Bridge_LogHelper.h"
#include "Bridge_ConsoleLogger.h"
Include dependency graph for Bridge_ConsoleLogger.c:

Go to the source code of this file.

Functions

static void _WriteLine (const char *loglevel, const char *message)
 Send a formatted line to the console.
 
static void _Console_LogTrace (const char *message, void *data)
 Write a trace message to the console.
 
static void _Console_LogInfo (const char *message, void *data)
 Write an informational message to the console.
 
static void _Console_LogError (const char *message, void *data)
 Write an error message to the console.
 
ILoggerCreateConsoleLogger (void)
 Create an instance of an ILogger that outputs to a console.
 
void DestroyConsoleLogger (ILogger *logger)
 Destroy the given instance of an ILogger for outputting to a console.
 

Detailed Description

Implementation of the console logger, along with the CreateConsoleLogger() and DestroyConsoleLogger() factory functions used in the Bridge Pattern.

Definition in file Bridge_ConsoleLogger.c.

Function Documentation

◆ _Console_LogError()

static void _Console_LogError ( const char *  message,
void *  data 
)
static

Write an error message to the console.

Parameters
messageThe message to log.
dataUnused.

Definition at line 65 of file Bridge_ConsoleLogger.c.

References _WriteLine().

Referenced by CreateConsoleLogger().

◆ _Console_LogInfo()

static void _Console_LogInfo ( const char *  message,
void *  data 
)
static

Write an informational message to the console.

Parameters
messageThe message to log.
dataUnused.

Definition at line 49 of file Bridge_ConsoleLogger.c.

References _WriteLine().

Referenced by CreateConsoleLogger().

◆ _Console_LogTrace()

static void _Console_LogTrace ( const char *  message,
void *  data 
)
static

Write a trace message to the console.

Parameters
messageThe message to log.
dataUnused.

Definition at line 33 of file Bridge_ConsoleLogger.c.

References _WriteLine().

Referenced by CreateConsoleLogger().

◆ _WriteLine()

static void _WriteLine ( const char *  loglevel,
const char *  message 
)
static

Send a formatted line to the console.

Parameters
loglevelThe level of the log detail.
messageThe message to log.

Definition at line 18 of file Bridge_ConsoleLogger.c.

References LogHelper_FormatLogLine().

Referenced by _Console_LogError(), _Console_LogInfo(), and _Console_LogTrace().

◆ CreateConsoleLogger()

ILogger * CreateConsoleLogger ( void  )

Create an instance of an ILogger that outputs to a console.

Returns
Returns an ILogger instance to use for logging to a console; returns NULL if something went wrong in creating the logger.

Definition at line 79 of file Bridge_ConsoleLogger.c.

References _Console_LogError(), _Console_LogInfo(), _Console_LogTrace(), ILogger::data, ILogger::LogError, ILogger::LogInfo, and ILogger::LogTrace.

Referenced by CreateLogger().

◆ DestroyConsoleLogger()

void DestroyConsoleLogger ( ILogger logger)

Destroy the given instance of an ILogger for outputting to a console.

Parameters
loggerThe ILogger instance to destroy.

Definition at line 96 of file Bridge_ConsoleLogger.c.

Referenced by DestroyLogger().