public ITransferProxy NewProxy(TransferProxyType type) { return(type switch { TransferProxyType.DesignImport => NewProxy("AWS_DESIGNIMPORT_BUCKET_NAME"), TransferProxyType.Temporary => NewProxy("AWS_TEMPORARY_BUCKET_NAME"), TransferProxyType.TAGFiles => NewProxy("AWS_TAGFILE_BUCKET_NAME"), TransferProxyType.Export => NewProxy("AWS_TEMPORARY_BUCKET_NAME"), // Exports go to temporary bucket currently TransferProxyType.TagFileGatewayArchive => NewProxy("AWS_ALL_TAGFILE_BUCKET_NAME"), _ => throw new ArgumentException($"Unsupported transfer proxy type {type}") });
/// <summary> /// Serializes content from the writer /// </summary> public override void InternalFromBinary(IBinaryRawReader reader) { base.InternalFromBinary(reader); var version = VersionSerializationHelper.CheckVersionByte(reader, VERSION_NUMBER); if (version == 1) { ProjectID = reader.ReadGuid() ?? Guid.Empty; DeletionSelectivity = (DeleteSiteModelSelectivity)reader.ReadInt(); OriginS3TransferProxy = (TransferProxyType)reader.ReadByte(); } }
public SiteModelRebuilder(Guid projectUid, bool archiveTagFiles, TransferProxyType originS3TransferProxy) { ProjectUid = projectUid; var flags = archiveTagFiles ? RebuildSiteModelFlags.AddProcessedTagFileToArchive : 0; _log.LogInformation($"Constructing metadata for rebuilder: Project = {projectUid}, Flags = {flags}, OriginS3TransferProxy = {originS3TransferProxy}"); _metadata = new RebuildSiteModelMetaData { ProjectUID = projectUid, Flags = flags, OriginS3TransferProxy = originS3TransferProxy, DeletionSelectivity = DeleteSiteModelSelectivity.TagFileDerivedData }; }
public ProjectRebuildRequest(Guid projectUid, TransferProxyType dataOrigin, bool archiveTagFiles) { ProjectUid = projectUid; DataOrigin = dataOrigin; ArchiveTagFiles = archiveTagFiles; }
private static ISiteModelRebuilder CreateBuilder(Guid projectUid, bool archiveTagFiles, TransferProxyType transferProxyType) { return(new SiteModelRebuilder(projectUid, archiveTagFiles, transferProxyType) { MetadataCache = DIContext.Obtain <Func <RebuildSiteModelCacheType, IStorageProxyCacheCommit> >()(RebuildSiteModelCacheType.Metadata) as IStorageProxyCache <INonSpatialAffinityKey, IRebuildSiteModelMetaData>, FilesCache = DIContext.Obtain <Func <RebuildSiteModelCacheType, IStorageProxyCacheCommit> >()(RebuildSiteModelCacheType.KeyCollections) as IStorageProxyCache <INonSpatialAffinityKey, ISerialisedByteArrayWrapper> }); }
public void ProjectRebuildRequestValidation_Errors(string projectUid, bool archiveTagFiles, TransferProxyType dataOrigin, int expectedCode, string expectedMessage) { var request = new ProjectRebuildRequest(Guid.Parse(projectUid), dataOrigin, archiveTagFiles); var ex = Assert.Throws <ServiceException>(() => request.Validate()); ex.GetResult.Code.Should().Be(expectedCode); ex.GetResult.Message.Should().Match(expectedMessage); }
public void ProjectRebuildRequestValidation_HappyPath(string projectUid, bool archiveTagFiles, TransferProxyType dataOrigin) { var request = new ProjectRebuildRequest(Guid.Parse(projectUid), dataOrigin, archiveTagFiles); request.Validate(); }
public S3FileTransfer(TransferProxyType type) { _type = type; Proxy = DIContext.ObtainRequired <ITransferProxyFactory>().NewProxy(_type); }