46 lines
1.1 KiB
C#
46 lines
1.1 KiB
C#
using System.ComponentModel.DataAnnotations;
|
|
using Canon.Server.Entities;
|
|
|
|
namespace Canon.Server.DataTransferObjects;
|
|
|
|
public class CompileResponse
|
|
{
|
|
[Required]
|
|
public string Id { get; set; }
|
|
|
|
[Required]
|
|
public string SourceCode { get; set; }
|
|
|
|
[Required]
|
|
public string CompiledCode { get; set; }
|
|
|
|
[Required]
|
|
public string ImageAddress { get; set; }
|
|
|
|
[Required]
|
|
public string CompileTime { get; set; }
|
|
|
|
[Required]
|
|
public string CompileInformation { get; set; }
|
|
|
|
public CompileResponse()
|
|
{
|
|
Id = string.Empty;
|
|
SourceCode = string.Empty;
|
|
CompiledCode = string.Empty;
|
|
ImageAddress = string.Empty;
|
|
CompileTime = string.Empty;
|
|
CompileInformation = string.Empty;
|
|
}
|
|
|
|
public CompileResponse(CompileResult result)
|
|
{
|
|
Id = result.CompileId;
|
|
SourceCode = result.SourceCode;
|
|
CompiledCode = result.CompiledCode;
|
|
ImageAddress = $"/api/file/{result.SytaxTreeImageFilename}";
|
|
CompileTime = result.CompileTime.AddHours(8).ToString("yyyy-MM-dd HH:mm:ss");
|
|
CompileInformation = result.CompileInformation;
|
|
}
|
|
}
|