245 lines
4.2 KiB
C++
245 lines
4.2 KiB
C++
// ©2022 Batty Bovine Productions, LLC. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
|
|
#include "UnrealzillaJSON.generated.h"
|
|
|
|
|
|
/**
|
|
* JSON structs for POST
|
|
*/
|
|
USTRUCT()
|
|
struct FJSONPostBug
|
|
{
|
|
GENERATED_BODY()
|
|
public:
|
|
UPROPERTY()
|
|
FString product;
|
|
UPROPERTY()
|
|
FString version;
|
|
UPROPERTY()
|
|
FString platform;
|
|
UPROPERTY()
|
|
FString op_sys;
|
|
UPROPERTY()
|
|
FString component;
|
|
UPROPERTY()
|
|
FString severity;
|
|
UPROPERTY()
|
|
FString cf_mapname;
|
|
UPROPERTY()
|
|
FString cf_location;
|
|
UPROPERTY()
|
|
FString summary;
|
|
UPROPERTY()
|
|
FString description;
|
|
UPROPERTY()
|
|
FString status;
|
|
};
|
|
|
|
USTRUCT(Blueprintable)
|
|
struct FJSONPostResponse
|
|
{
|
|
GENERATED_BODY()
|
|
public:
|
|
UPROPERTY(BlueprintReadOnly)
|
|
int32 id = -1;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
bool error = false;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
int32 code = -1;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString message;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString documentation;
|
|
};
|
|
/**
|
|
* END JSON structs for POST
|
|
*/
|
|
|
|
|
|
/**
|
|
* JSON structs for product data
|
|
*/
|
|
USTRUCT(Blueprintable)
|
|
struct FJSONComponentData
|
|
{
|
|
GENERATED_BODY()
|
|
public:
|
|
UPROPERTY()
|
|
int32 id = -1;
|
|
UPROPERTY()
|
|
bool is_active = false;
|
|
UPROPERTY()
|
|
FString name;
|
|
UPROPERTY()
|
|
FString description;
|
|
UPROPERTY()
|
|
FString default_assigned_to;
|
|
UPROPERTY()
|
|
int32 sort_key = -1;
|
|
};
|
|
|
|
USTRUCT(Blueprintable)
|
|
struct FJSONVersionData
|
|
{
|
|
GENERATED_BODY()
|
|
public:
|
|
UPROPERTY()
|
|
int32 id = -1;
|
|
UPROPERTY()
|
|
bool is_active = false;
|
|
UPROPERTY()
|
|
FString name;
|
|
UPROPERTY()
|
|
int32 sort_key = -1;
|
|
};
|
|
|
|
USTRUCT(Blueprintable)
|
|
struct FJSONProductData
|
|
{
|
|
GENERATED_BODY()
|
|
public:
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString name;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString classification;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString description;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
TArray<FJSONComponentData> components;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
TArray<FJSONVersionData> versions;
|
|
};
|
|
|
|
USTRUCT(Blueprintable)
|
|
struct FJSONProductResponse
|
|
{
|
|
GENERATED_BODY()
|
|
public:
|
|
UPROPERTY(BlueprintReadOnly)
|
|
TArray<FJSONProductData> products;
|
|
|
|
UPROPERTY(BlueprintReadOnly)
|
|
bool error = false;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
int32 code = -1;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString message;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString documentation;
|
|
};
|
|
/**
|
|
* END JSON structs for product data
|
|
*/
|
|
|
|
|
|
/**
|
|
* JSON structs for product data
|
|
*/
|
|
USTRUCT(Blueprintable)
|
|
struct FJSONFieldValueData
|
|
{
|
|
GENERATED_BODY()
|
|
public:
|
|
UPROPERTY()
|
|
FString name;
|
|
UPROPERTY()
|
|
int32 sort_key = -1;
|
|
};
|
|
|
|
USTRUCT(Blueprintable)
|
|
struct FJSONFieldData
|
|
{
|
|
GENERATED_BODY()
|
|
public:
|
|
UPROPERTY(BlueprintReadOnly)
|
|
int32 id = -1;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString name;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString display_name;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
bool is_mandatory = false;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
TArray<FJSONFieldValueData> values;
|
|
};
|
|
|
|
USTRUCT(Blueprintable)
|
|
struct FJSONFieldResponse
|
|
{
|
|
GENERATED_BODY()
|
|
public:
|
|
UPROPERTY(BlueprintReadOnly)
|
|
TArray<FJSONFieldData> fields;
|
|
|
|
UPROPERTY(BlueprintReadOnly)
|
|
bool error = false;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
int32 code = -1;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString message;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString documentation;
|
|
};
|
|
/**
|
|
* END JSON structs for product data
|
|
*/
|
|
|
|
|
|
/**
|
|
* JSON structs for bug lists
|
|
*/
|
|
USTRUCT(Blueprintable)
|
|
struct FJSONBugData
|
|
{
|
|
GENERATED_BODY()
|
|
public:
|
|
UPROPERTY(BlueprintReadOnly)
|
|
int32 id = -1;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString summary;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString component;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString cf_mapname;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString cf_location;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString platform;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString op_sys;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
bool is_open = true;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString severity;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString status;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString resolution;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
int32 dupe_of = -1;
|
|
};
|
|
|
|
USTRUCT(Blueprintable)
|
|
struct FJSONBugResponse
|
|
{
|
|
GENERATED_BODY()
|
|
public:
|
|
UPROPERTY(BlueprintReadOnly)
|
|
TArray<FJSONBugData> bugs;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
bool error = false;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
int32 code = -1;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString message;
|
|
UPROPERTY(BlueprintReadOnly)
|
|
FString documentation;
|
|
};
|
|
/**
|
|
* END JSON structs for bug lists
|
|
*/
|