DayZ 1.24
Loading...
Searching...
No Matches
ErrorModuleHandler Class Reference

The error handler itself, for managing and distributing errors to modules Manages the ErrorHandlerModule instances inserted in Init. API comes with several functions to Create, Throw and extract data from error codes. The format used is an int which is made up of two shorts, one that holds the category and one that holds the code. Therefore when looking at an error code, it is much easier to identify when looking at the hex value. More...

Private Member Functions

void SafeAddModule (notnull ErrorHandlerModule errorModule)
 Wrapper for AddModule to give feedback whether it succeeded or not.
 
void SafeRemoveModule (notnull ErrorHandlerModule errorModule)
 Wrapper for RemoveModule to give feedback whether it succeeded or not.
 
void SafeRemoveModule (ErrorCategory category)
 Wrapper for RemoveModule to give feedback whether it succeeded or not.
 
void Init ()
 Gets called shortly after creation of ErrorModuleHandler.
 
void OnEvent (EventType eventTypeId, Param params)
 is called by DayZGame to pass Events.
 

Static Private Member Functions

static proto int ThrowError (ErrorCategory category, int code, string additionalInfo="")
 Creates and throws the error code, sending it to the handler of the category.
 
static proto int ThrowErrorCode (int errorCode, string additionalInfo="")
 Throws the error code and sends it to the handler of the category.
 
static proto int CreateError (ErrorCategory category, int code)
 Creates full error code.
 
static proto ErrorCategory GetCategoryFromError (int errorCode)
 Returns the category the error was thrown from.
 
static proto int GetCodeFromError (int errorCode)
 Returns the code of the error.
 
static proto owned string GetErrorHex (int errorCode)
 Returns a formatted string of the error code.
 
static proto bool AddModule (ErrorCategory category, notnull ErrorHandlerModule errorModule)
 Adds a module handler to the ErrorModuleHandler.
 
static proto bool RemoveModule (ErrorCategory category)
 Removes a module handler from the ErrorModuleHandler.
 
static proto string GetClientMessage (ErrorCategory category, int code, string additionalInfo="")
 Gets the Client Message for specified error.
 
static proto string GetClientMessageByCode (int errorCode, string additionalInfo="")
 Gets the Client Message for specified error.
 
static proto string GetLastClientMessage (ErrorCategory category, int code)
 Gets the Client Message for specified error, while attempting to restore information on the most recent error.
 
static proto string GetLastClientMessageByCode (int errorCode)
 Gets the Client Message for specified error, while attempting to restore information on the most recent error.
 
static proto string GetServerMessage (ErrorCategory category, int code, string additionalInfo="")
 Gets the Server Message for specified error.
 
static proto string GetServerMessageByCode (int errorCode, string additionalInfo="")
 Gets the Server Message for specified error.
 
static proto string GetLastServerMessage (ErrorCategory category, int code)
 Gets the Server Message for specified error, while attempting to restore information on the most recent error.
 
static proto string GetLastServerMessageByCode (int errorCode)
 Gets the Server Message for specified error, while attempting to restore information on the most recent error.
 
static proto native ErrorModuleHandler GetInstance ()
 Gets the EMH Instance.
 
static proto void GetErrorModules (notnull out array< ErrorHandlerModule > errorModules)
 

Detailed Description

The error handler itself, for managing and distributing errors to modules Manages the ErrorHandlerModule instances inserted in Init. API comes with several functions to Create, Throw and extract data from error codes. The format used is an int which is made up of two shorts, one that holds the category and one that holds the code. Therefore when looking at an error code, it is much easier to identify when looking at the hex value.

Definition at line 28 of file ErrorModuleHandler.c.

Member Function Documentation

◆ AddModule()

static proto bool ErrorModuleHandler::AddModule ( ErrorCategory category,
notnull ErrorHandlerModule errorModule )
staticprivate

Adds a module handler to the ErrorModuleHandler.

Parameters
categoryErrorCategory Category the module is for
errorModuleErrorHandlerModule The class containing the information and codes for the category.
Returns
bool Whether the adding of the module was successful or not

Referenced by SafeAddModule().

◆ CreateError()

static proto int ErrorModuleHandler::CreateError ( ErrorCategory category,
int code )
staticprivate

Creates full error code.

Parameters
categoryErrorCategory Category the error is thrown from
codeint The code that the error belongs to inside the category between [-32768, 32767]
Returns
int The full error code
int errorCode = ErrorModuleHandler.CreateError( ErrorCategory.ConnectErrorClient, -1 );
>> errorCode = 196607
ErrorCategory
ErrorCategory - To decide what ErrorHandlerModule needs to be called and easily identify where it cam...
The error handler itself, for managing and distributing errors to modules Manages the ErrorHandlerMod...
static proto int CreateError(ErrorCategory category, int code)
Creates full error code.
proto void Print(void var)
Prints content of variable to console/log.

◆ GetCategoryFromError()

static proto ErrorCategory ErrorModuleHandler::GetCategoryFromError ( int errorCode)
staticprivate

Returns the category the error was thrown from.

Parameters
errorCodeint The full error code
Returns
ErrorCategory The ErrorCategory the error was thrown from
>> category = 2
static proto ErrorCategory GetCategoryFromError(int errorCode)
Returns the category the error was thrown from.

◆ GetClientMessage()

static proto string ErrorModuleHandler::GetClientMessage ( ErrorCategory category,
int code,
string additionalInfo = "" )
staticprivate

Gets the Client Message for specified error.

Parameters
categoryErrorCategory Category the error is thrown from
codeint The code that the error belongs to inside the category between [-32768, 32767]
additionalInfostring Any additional info regarding the error, usually data
Returns
string The message which would appear on Client

Referenced by OnlineServices::ErrorCaught(), and ServerBrowserTab::OnLoadServersAsyncConsole().

◆ GetClientMessageByCode()

static proto string ErrorModuleHandler::GetClientMessageByCode ( int errorCode,
string additionalInfo = "" )
staticprivate

Gets the Client Message for specified error.

Parameters
errorCodeint The full error code
additionalInfostring Any additional info regarding the error, usually data
Returns
string The message which would appear on Client

◆ GetCodeFromError()

static proto int ErrorModuleHandler::GetCodeFromError ( int errorCode)
staticprivate

Returns the code of the error.

Parameters
errorCodeint The full error code
Returns
int The code of the error
>> code = -1
static proto int GetCodeFromError(int errorCode)
Returns the code of the error.

Referenced by GetProperties(), and ConnectErrorScriptModuleUI::OnModalResult().

◆ GetErrorHex()

static proto owned string ErrorModuleHandler::GetErrorHex ( int errorCode)
staticprivate

Returns a formatted string of the error code.

Parameters
errorCodeint The full error code
Returns
string A formatted string of the error code
>> formattedCode = '0x0002FFFF'
static proto owned string GetErrorHex(int errorCode)
Returns a formatted string of the error code.

Referenced by GetLastClientMessage(), GetLastServerMessage(), GetProperties(), ErrorHandlerModule::GetSimpleMessage(), HandleError(), ErrorHandlerModule::OnErrorThrown(), and OnErrorThrown().

◆ GetErrorModules()

static proto void ErrorModuleHandler::GetErrorModules ( notnull out array< ErrorHandlerModule > errorModules)
staticprivate

Referenced by OnEvent().

◆ GetInstance()

static proto native ErrorModuleHandler ErrorModuleHandler::GetInstance ( )
staticprivate

Gets the EMH Instance.

Returns
ErrorModuleHandler The ErrorModuleHandler Instance

Referenced by CGame::OnEvent(), and EnProfilerTests::TestFuncCountData().

◆ GetLastClientMessage()

static proto string ErrorModuleHandler::GetLastClientMessage ( ErrorCategory category,
int code )
staticprivate

Gets the Client Message for specified error, while attempting to restore information on the most recent error.

Parameters
categoryErrorCategory Category the error is thrown from
codeint The code that the error belongs to inside the category between [-32768, 32767]
Returns
string The message which would appear on Client

◆ GetLastClientMessageByCode()

static proto string ErrorModuleHandler::GetLastClientMessageByCode ( int errorCode)
staticprivate

Gets the Client Message for specified error, while attempting to restore information on the most recent error.

Parameters
errorCodeint The full error code
Returns
string The message which would appear on Client

◆ GetLastServerMessage()

static proto string ErrorModuleHandler::GetLastServerMessage ( ErrorCategory category,
int code )
staticprivate

Gets the Server Message for specified error, while attempting to restore information on the most recent error.

Parameters
categoryErrorCategory Category the error is thrown from
codeint The code that the error belongs to inside the category between [-32768, 32767]
Returns
string The message which would appear on Server

◆ GetLastServerMessageByCode()

static proto string ErrorModuleHandler::GetLastServerMessageByCode ( int errorCode)
staticprivate

Gets the Server Message for specified error, while attempting to restore information on the most recent error.

Parameters
errorCodeint The full error code
Returns
string The message which would appear on Server

◆ GetServerMessage()

static proto string ErrorModuleHandler::GetServerMessage ( ErrorCategory category,
int code,
string additionalInfo = "" )
staticprivate

Gets the Server Message for specified error.

Parameters
categoryErrorCategory Category the error is thrown from
codeint The code that the error belongs to inside the category between [-32768, 32767]
additionalInfostring Any additional info regarding the error, usually data
Returns
string The message which would appear on Server

◆ GetServerMessageByCode()

static proto string ErrorModuleHandler::GetServerMessageByCode ( int errorCode,
string additionalInfo = "" )
staticprivate

Gets the Server Message for specified error.

Parameters
errorCodeint The full error code
additionalInfostring Any additional info regarding the error, usually data
Returns
string The message which would appear on Server

◆ Init()

void ErrorModuleHandler::Init ( )
inlineprivate

Gets called shortly after creation of ErrorModuleHandler.

Definition at line 236 of file ErrorModuleHandler.c.

237 {
238 if (!g_Game.IsDedicatedServer())
239 {
243 }
246 }
enum EConnectErrorScript ConnectErrorScriptModule()
DayZGame g_Game
Definition DayZGame.c:3528
void SafeAddModule(notnull ErrorHandlerModule errorModule)
Wrapper for AddModule to give feedback whether it succeeded or not.

References ConnectErrorScriptModule(), g_Game, and SafeAddModule().

◆ OnEvent()

void ErrorModuleHandler::OnEvent ( EventType eventTypeId,
Param params )
inlineprivate

is called by DayZGame to pass Events.

Definition at line 251 of file ErrorModuleHandler.c.

252 {
255
258 }
Definition and API of an ErrorHandlerModule - Do not insert any logic here! (as this class is not mod...
static proto void GetErrorModules(notnull out array< ErrorHandlerModule > errorModules)
void OnEvent(EventType eventTypeId, Param params)
is called by DayZGame to pass Events.

References GetErrorModules().

◆ RemoveModule()

static proto bool ErrorModuleHandler::RemoveModule ( ErrorCategory category)
staticprivate

Removes a module handler from the ErrorModuleHandler.

Parameters
categoryErrorCategory Category the module is for
Returns
bool Whether the removing of the module was successful or not

Referenced by SafeRemoveModule(), and SafeRemoveModule().

◆ SafeAddModule()

void ErrorModuleHandler::SafeAddModule ( notnull ErrorHandlerModule errorModule)
inlineprivate

Wrapper for AddModule to give feedback whether it succeeded or not.

Parameters
errorModuleErrorHandlerModule The ErrorHandlerModule to add

Definition at line 207 of file ErrorModuleHandler.c.

208 {
209 if (!AddModule(errorModule.GetCategory(), errorModule))
210 Error(string.Format("[EMH] Adding %1 failed. (Category: %2)", errorModule, errorModule.GetCategory()));
211 }
static proto bool AddModule(ErrorCategory category, notnull ErrorHandlerModule errorModule)
Adds a module handler to the ErrorModuleHandler.
void Error(string err)
Messagebox with error message.
Definition EnDebug.c:90

References AddModule(), and Error().

Referenced by Init().

◆ SafeRemoveModule() [1/2]

void ErrorModuleHandler::SafeRemoveModule ( ErrorCategory category)
inlineprivate

Wrapper for RemoveModule to give feedback whether it succeeded or not.

Parameters
categoryErrorCategory Category to remove

Definition at line 227 of file ErrorModuleHandler.c.

228 {
230 Error(string.Format("[EMH] Removing %1 failed.", category));
231 }
static proto bool RemoveModule(ErrorCategory category)
Removes a module handler from the ErrorModuleHandler.

References Error(), and RemoveModule().

◆ SafeRemoveModule() [2/2]

void ErrorModuleHandler::SafeRemoveModule ( notnull ErrorHandlerModule errorModule)
inlineprivate

Wrapper for RemoveModule to give feedback whether it succeeded or not.

Parameters
errorModuleErrorHandlerModule The ErrorHandlerModule to add

Definition at line 217 of file ErrorModuleHandler.c.

218 {
219 if (!RemoveModule(errorModule.GetCategory()))
220 Error(string.Format("[EMH] Removing %1 failed. (Category: %2)", errorModule, errorModule.GetCategory()));
221 }

References Error(), and RemoveModule().

◆ ThrowError()

static proto int ErrorModuleHandler::ThrowError ( ErrorCategory category,
int code,
string additionalInfo = "" )
staticprivate

Creates and throws the error code, sending it to the handler of the category.

Parameters
categoryErrorCategory Category the error is thrown from
codeint The code that the error belongs to inside the category between [-32768, 32767]
additionalInfostring Any additional info regarding the error, usually data
Returns
int The full error code
int errorCode = ErrorModuleHandler.ThrowError( ErrorCategory.ConnectErrorClient, -1 );
>> errorCode = 196607
static proto int ThrowError(ErrorCategory category, int code, string additionalInfo="")
Creates and throws the error code, sending it to the handler of the category.

Referenced by CGame::TryConnect().

◆ ThrowErrorCode()

static proto int ErrorModuleHandler::ThrowErrorCode ( int errorCode,
string additionalInfo = "" )
staticprivate

Throws the error code and sends it to the handler of the category.

Parameters
errorCodeint The full error code
additionalInfostring Any additional info regarding the error, usually data
Returns
int The full error code
>> errorCode = 196607
static proto int ThrowErrorCode(int errorCode, string additionalInfo="")
Throws the error code and sends it to the handler of the category.

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