예제 #1
0
 public PackageStatus(IEnumerable <FileStatus> fileData, StatusProcessingProject statusProcessingProject,
                      QueueStatus queueStatus = new QueueStatus())
 {
     FileStatus = fileData?.ToList().AsReadOnly() ?? throw new ArgumentNullException(nameof(fileData));
     StatusProcessingProject = statusProcessingProject;
     QueueStatus             = queueStatus;
 }
예제 #2
0
 public PackageDataShortResponseClient(Guid id, StatusProcessingProject statusProcessingProject,
                                       IList <FileDataShortResponseClient> filesData,
                                       FilesQueueInfoResponseClient filesQueueInfo)
     : base(id, statusProcessingProject, filesData)
 {
     FilesQueueInfo = filesQueueInfo;
 }
 protected PackageDataShortResponseBase(Guid id, StatusProcessingProject statusProcessingProject,
                                        IList <TFileDataResponse> filesData)
 {
     Id = id;
     StatusProcessingProject = statusProcessingProject;
     FilesData = filesData;
 }
        /// <summary>
        /// Преобразовать статус в наименование
        /// </summary>
        public static string StatusProcessingProjectToString(StatusProcessingProject statusProcessingProject)
        {
            var statusProcessingProjectString = String.Empty;

            StatusProcessingProjectString?.TryGetValue(statusProcessingProject, out statusProcessingProjectString);

            return(statusProcessingProjectString);
        }
예제 #5
0
 public HistoryDataClient(Guid packageId, DateTime creationDateTime, string clientName,
                          StatusProcessingProject statusProcessingProject, int filesCount)
 {
     PackageId               = packageId;
     CreationDateTime        = creationDateTime;
     ClientName              = clientName;
     StatusProcessingProject = statusProcessingProject;
     FilesCount              = filesCount;
 }
예제 #6
0
 public PackageServer(Guid id, int attemptingConvertCount, StatusProcessingProject statusProcessingProject,
                      IConvertingPackageSettings convertingSettings, IEnumerable <IFileDataServer> filesDataServer)
 {
     Id = id;
     AttemptingConvertCount    = attemptingConvertCount;
     StatusProcessingProject   = statusProcessingProject;
     ConvertingPackageSettings = convertingSettings;
     FilesDataServer           = filesDataServer.ToList().AsReadOnly();
 }
예제 #7
0
        /// <summary>
        /// Установить статус конвертирования пакета
        /// </summary>
        private bool SetStatusProcessingProject(StatusProcessingProject statusProcessingProject)
        {
            if (StatusProcessingProject == statusProcessingProject)
            {
                return(false);
            }

            StatusProcessingProject = statusProcessingProject;
            return(true);
        }
예제 #8
0
        /// <summary>
        /// Изменить статус файла и присвоить при необходимости ошибку
        /// </summary>
        public void ChangeFileStatus(StatusProcessingProject statusProcessingProject, FileStatus fileStatus)
        {
            bool isStatusProjectChanged = SetStatusProcessingProject(statusProcessingProject);
            var  filesDataChanged       = _filesData.First(file => file.FilePath == fileStatus.FilePath).
                                          ChangeByFileStatus(fileStatus);

            var fileChange = new FilesChange(_filesData, filesDataChanged, ActionType.StatusChange, isStatusProjectChanged);

            UpdateFileData(fileChange);
        }
 public PackageDataEntity(string id, StatusProcessingProject statusProcessingProject, DateTime creationDateTime,
                          string identityLocalName, string identityServerName, int attemptingConvertCount,
                          IList <FileDataEntity> fileDataEntities, ConvertingSettingsComponent convertingSettings)
 {
     Id = id;
     StatusProcessingProject = statusProcessingProject;
     CreationDateTime        = creationDateTime;
     IdentityLocalName       = identityLocalName;
     IdentityServerName      = identityServerName;
     AttemptingConvertCount  = attemptingConvertCount;
     FileDataEntities        = fileDataEntities;
     ConvertingSettings      = convertingSettings;
 }
예제 #10
0
 /// <summary>
 /// Получить информацию о количестве файлов из промежуточного запроса
 /// </summary>
 public static FilesQueueInfo GetQueueInfoByStatus(QueueStatus queueStatus, StatusProcessingProject statusProcessingProject) =>
 statusProcessingProject switch
 {
 public PackageDataResponseServer(Guid id, StatusProcessingProject statusProcessingProject,
                                  IList <FileDataResponseServer> filesData)
     : base(id, statusProcessingProject, filesData)
 {
 }
예제 #12
0
 protected PackageDataResponseBase(Guid id, StatusProcessingProject statusProcessingProject,
                                   IList <TFileDataResponse> filesData)
     : base(id, statusProcessingProject, filesData)
 {
 }
예제 #13
0
 /// <summary>
 /// Присвоить статус обработки проекта
 /// </summary>
 public IPackageServer SetStatusProcessingProject(StatusProcessingProject statusProcessingProject) =>
 statusProcessingProject != StatusProcessingProject ?
 new PackageServer(Id, AttemptingConvertCount, statusProcessingProject, ConvertingPackageSettings, FilesDataServer) :
 this;