86 lines
2.5 KiB
C++
86 lines
2.5 KiB
C++
|
|
// Copyright (c) 2022 Sentry. All Rights Reserved.
|
||
|
|
|
||
|
|
#include "SentryBreadcrumbDesktop.h"
|
||
|
|
|
||
|
|
#include "Infrastructure/SentryConvertorsDesktop.h"
|
||
|
|
|
||
|
|
#if USE_SENTRY_NATIVE
|
||
|
|
|
||
|
|
SentryBreadcrumbDesktop::SentryBreadcrumbDesktop()
|
||
|
|
{
|
||
|
|
BreadcrumbDesktop = sentry_value_new_breadcrumb("", "");
|
||
|
|
}
|
||
|
|
|
||
|
|
SentryBreadcrumbDesktop::SentryBreadcrumbDesktop(sentry_value_t breadcrumb)
|
||
|
|
{
|
||
|
|
BreadcrumbDesktop = breadcrumb;
|
||
|
|
}
|
||
|
|
|
||
|
|
SentryBreadcrumbDesktop::~SentryBreadcrumbDesktop()
|
||
|
|
{
|
||
|
|
// Put custom destructor logic here if needed
|
||
|
|
}
|
||
|
|
|
||
|
|
sentry_value_t SentryBreadcrumbDesktop::GetNativeObject()
|
||
|
|
{
|
||
|
|
return BreadcrumbDesktop;
|
||
|
|
}
|
||
|
|
|
||
|
|
void SentryBreadcrumbDesktop::SetMessage(const FString& message)
|
||
|
|
{
|
||
|
|
sentry_value_set_by_key(BreadcrumbDesktop, "message", sentry_value_new_string(TCHAR_TO_UTF8(*message)));
|
||
|
|
}
|
||
|
|
|
||
|
|
FString SentryBreadcrumbDesktop::GetMessage() const
|
||
|
|
{
|
||
|
|
sentry_value_t message = sentry_value_get_by_key(BreadcrumbDesktop, "message");
|
||
|
|
return FString(sentry_value_as_string(message));
|
||
|
|
}
|
||
|
|
|
||
|
|
void SentryBreadcrumbDesktop::SetType(const FString& type)
|
||
|
|
{
|
||
|
|
sentry_value_set_by_key(BreadcrumbDesktop, "type", sentry_value_new_string(TCHAR_TO_ANSI(*type)));
|
||
|
|
}
|
||
|
|
|
||
|
|
FString SentryBreadcrumbDesktop::GetType() const
|
||
|
|
{
|
||
|
|
sentry_value_t type = sentry_value_get_by_key(BreadcrumbDesktop, "type");
|
||
|
|
return FString(sentry_value_as_string(type));
|
||
|
|
}
|
||
|
|
|
||
|
|
void SentryBreadcrumbDesktop::SetCategory(const FString& category)
|
||
|
|
{
|
||
|
|
sentry_value_set_by_key(BreadcrumbDesktop, "category", sentry_value_new_string(TCHAR_TO_ANSI(*category)));
|
||
|
|
}
|
||
|
|
|
||
|
|
FString SentryBreadcrumbDesktop::GetCategory() const
|
||
|
|
{
|
||
|
|
sentry_value_t category = sentry_value_get_by_key(BreadcrumbDesktop, "category");
|
||
|
|
return FString(sentry_value_as_string(category));
|
||
|
|
}
|
||
|
|
|
||
|
|
void SentryBreadcrumbDesktop::SetData(const TMap<FString, FString>& data)
|
||
|
|
{
|
||
|
|
sentry_value_set_by_key(BreadcrumbDesktop, "data", SentryConvertorsDesktop::StringMapToNative(data));
|
||
|
|
}
|
||
|
|
|
||
|
|
TMap<FString, FString> SentryBreadcrumbDesktop::GetData() const
|
||
|
|
{
|
||
|
|
sentry_value_t data = sentry_value_get_by_key(BreadcrumbDesktop, "data");
|
||
|
|
return SentryConvertorsDesktop::StringMapToUnreal(data);
|
||
|
|
}
|
||
|
|
|
||
|
|
void SentryBreadcrumbDesktop::SetLevel(ESentryLevel level)
|
||
|
|
{
|
||
|
|
FString levelStr = SentryConvertorsDesktop::SentryLevelToString(level);
|
||
|
|
if (!levelStr.IsEmpty())
|
||
|
|
sentry_value_set_by_key(BreadcrumbDesktop, "level", sentry_value_new_string(TCHAR_TO_ANSI(*levelStr)));
|
||
|
|
}
|
||
|
|
|
||
|
|
ESentryLevel SentryBreadcrumbDesktop::GetLevel() const
|
||
|
|
{
|
||
|
|
sentry_value_t level = sentry_value_get_by_key(BreadcrumbDesktop, "level");
|
||
|
|
return SentryConvertorsDesktop::SentryLevelToUnreal(level);
|
||
|
|
}
|
||
|
|
|
||
|
|
#endif
|