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 |