PhysicalFileExportRequest
using kCura.WinEDDS.Exporters;
using Relativity.Transfer;
using Relativity.Transfer.Http;
namespace Relativity.DataExchange.Export.VolumeManagerV2.Download
{
public class PhysicalFileExportRequest : ExportRequest
{
public string RemoteFileGuid { get; }
private PhysicalFileExportRequest(int artifactId, string sourceLocation, string destinationLocation, string remoteFileGuid)
: base(artifactId, sourceLocation, destinationLocation)
{
RemoteFileGuid = remoteFileGuid;
}
public static PhysicalFileExportRequest CreateRequestForImage(ImageExportInfo image, string destinationLocation)
{
return new PhysicalFileExportRequest(image.ArtifactID, image.SourceLocation, destinationLocation, image.FileGuid);
}
public static PhysicalFileExportRequest CreateRequestForNative(ObjectExportInfo artifact, string destinationLocation)
{
return new PhysicalFileExportRequest(artifact.ArtifactID, artifact.NativeSourceLocation, destinationLocation, artifact.NativeFileGuid);
}
public static PhysicalFileExportRequest CreateRequestForPdf(ObjectExportInfo artifact, string destinationLocation)
{
return new PhysicalFileExportRequest(artifact.ArtifactID, artifact.PdfSourceLocation, destinationLocation, artifact.PdfFileGuid);
}
protected override TransferPath CreateTransferPath()
{
HttpTransferPathData val = new HttpTransferPathData();
val.set_ArtifactId(base.ArtifactId);
val.set_ExportType(3);
val.set_RemoteGuid(RemoteFileGuid);
HttpTransferPathData data = val;
return ExportRequest.CreateTransferPath(base.ArtifactId, base.Order, base.SourceLocation, base.DestinationLocation, data);
}
}
}