// Copyright Epic Games, Inc. All Rights Reserved.
using System;
using System.Collections.Generic;
using System.Text.Json.Serialization;
#pragma warning disable CA2227
namespace EpicGames.Horde.Artifacts
{
///
/// Request to return a set of blobs for Unsync
///
public class GetUnsyncDataRequest
{
///
/// The strong hash algorithm
///
[JsonPropertyName("hash_strong")]
public string? HashStrong { get; set; }
///
/// Files to retrieve
///
[JsonPropertyName("blocks")]
public List Blocks { get; set; } = new List();
///
/// Files to retrieve
///
[JsonPropertyName("files")]
public List Files { get; set; } = new List();
}
///
/// Requests a set of blobs from a particular file
///
public class GetUnsyncFileRequest
{
///
/// Path to the file
///
public string Name { get; set; } = String.Empty;
///
/// Blobs to return
///
public List Blocks { get; set; } = new List();
}
///
/// Requests a block of data
///
public class GetUnsyncBlockRequest
{
///
/// Hash of the block
///
[JsonPropertyName("hash_strong")]
public string? Hash { get; set; }
}
}