private void cbx_SelectGroup_Unchecked(object sender, RoutedEventArgs e)
        {
            FilesGroup filesGroup = (sender as CheckBox).DataContext as FilesGroup;

            filesGroup.RemoveAllGroupFilesFromSelectedItems(lv_Duplicates.SelectedItems);
            BtnDelFilesEnabled = lv_Duplicates.SelectedItems.Count > 0 ? true : false;
        }
Ejemplo n.º 2
0
        public override async Task <bool> Save(FilesGroup filesGroup, FileWriteMode writeMode)
        {
            var endpointPath = writeMode switch
            {
                FileWriteMode.Override => Endpoints.UpdateEndpoint,
                FileWriteMode.CreateNew => Endpoints.CreateEndpoint,
                _ => throw new ArgumentOutOfRangeException(nameof(writeMode), writeMode, "such operation can't be done")
            };

            var multipartFormDataContent = new MultipartFormDataContent();

            var streamData = await Task.WhenAll(filesGroup.RelatedFiles.Select(MakeStreamContent)).ConfigureAwait(false);

            var fullBookmarkPath = GetFullPath(filesGroup);
            var stringContent    = new StringContent(fullBookmarkPath);

            foreach (var streamContent in streamData)
            {
                var ext = streamContent.Headers.First(kvp => kvp.Key == "Extension").Value.First() !;
                multipartFormDataContent.Add(streamContent, EnumsHelper.ParseType(ext).ToString(), $"{filesGroup.Name}.{ext}");
            }
            multipartFormDataContent.Add(stringContent, "bookmarkPath");

            using var httpRequestMessage = await CreateHttpRequestMessageWithAuthHeader(HttpMethod.Post, endpointPath, multipartFormDataContent).ConfigureAwait(false);

            using var responseMessage = await _httpClient.SendAsync(httpRequestMessage, HttpCompletionOption.ResponseHeadersRead).ConfigureAwait(false);

            return(responseMessage.IsSuccessStatusCode);
        }
 public ExportConfigurationCommand(string commandName, string directory, FilesGroup filesGroup,
                                   IConfigurationTransfer service)
     : base(commandName)
 {
     _filesGroup = filesGroup;
     _clientResourceCRUD = new ClientSideConfigurationTransfer(directory, service);
     _clientResourceCRUD.OnPartTransmit += new EventHandler<PartSendEventArgs>(_clientResourceCRUD_OnPartTransmit);
     _clientResourceCRUD.OnComplete += new EventHandler<OperationStatusEventArgs<FilesGroup>>(_clientResourceCRUD_OnComplete);
 }
Ejemplo n.º 4
0
 public FilesGroup GetPresentationForExport(string uniqueName)
 {
     string presentationFile = _presentationDAL.GetPresentationFile(uniqueName);
     if (string.IsNullOrEmpty(presentationFile)) return null;
     FilesGroup filesGroup = new FilesGroup(presentationFile, presentationFile,
         new FileProperty[] {new FileProperty()
                                 {
                                     FileName = presentationFile,
                                     Length = new FileInfo(presentationFile).Length
                                 }
         });
     return filesGroup;
 }
Ejemplo n.º 5
0
        public override async Task <bool> DeleteBookmark(FilesGroup filesGroup)
        {
            var fullBookmarkPath = GetFullPath(filesGroup);
            var stringContent    = new StringContent(fullBookmarkPath);

            var multipartFormDataContent = new MultipartFormDataContent
            {
                { stringContent, "bookmarkPath" }
            };

            using var httpRequestMessage = await CreateHttpRequestMessageWithAuthHeader(HttpMethod.Post, Endpoints.DeleteBookmarkEndpoint, multipartFormDataContent).ConfigureAwait(false);

            using var responseMessage = await _httpClient.SendAsync(httpRequestMessage, HttpCompletionOption.ResponseHeadersRead).ConfigureAwait(false);

            return(responseMessage.IsSuccessStatusCode);
        }
Ejemplo n.º 6
0
 public override Task <bool> DeleteBookmark(FilesGroup filesGroup)
 {
     try
     {
         foreach (var fileProfile in filesGroup.RelatedFiles)
         {
             var fullPath = GetFullPath(fileProfile);
             var fileInfo = new FileInfo(fullPath)
             {
                 Attributes = FileAttributes.Normal
             };
             fileInfo.Delete();
             // RecursiveDeleteEmptyDirectories(fileInfo.Directory);
         }
         // EnsureRootDirectoryExists();
         return(Task.FromResult(true));
     }
     catch
     {
         return(Task.FromResult(false));
     }
 }
Ejemplo n.º 7
0
 public override Task <bool> Save(FilesGroup filesGroup, FileWriteMode writeMode)
 {
     return(filesGroup.RelatedFiles
            .Select(profile => SaveFile(profile, writeMode))
            .GatherResults());
 }
Ejemplo n.º 8
0
 public FilesGroup InitPresentationSchemaExport(UserIdentity userIdentity, FilesGroup filesGroup)
 {
     return _presentationWorker.InitPresentationSchemaExport(userIdentity, filesGroup);
 }
Ejemplo n.º 9
0
 public FromFileGroupProviderService(FilesGroup filesGroup)
 {
     _filesGroup = filesGroup;
 }
 protected override FilesGroup InitDownload(UserIdentity userIdentity, FilesGroup resource)
 {
     return _presentationTransfer.InitPresentationExport(userIdentity, resource);
 }
Ejemplo n.º 11
0
 public FilesGroup InitPresentationSchemaExport(UserIdentity userIdentity, FilesGroup filesGroup)
 {
     return _serverSidePresentationSchemaTransfer.InitSourceDownload(userIdentity, filesGroup);
 }
Ejemplo n.º 12
0
 public FilesGroup GetPresentationSchemaFilesForExport()
 {
     string[] presentationSchemaFiles = _config.GetPresentationSchemaFiles();
     FilesGroup filesGroup = new FilesGroup(
         _config.ScenarioSchemaFile, _config.ScenarioSchemaFile,
         presentationSchemaFiles.Select(file=>new FileProperty()
                                                  {
                                                      FileName = file, Length = new FileInfo(file).Length
                                                  }));
     return filesGroup;
 }
Ejemplo n.º 13
0
 public abstract Task <bool> DeleteBookmark(FilesGroup filesGroup);
Ejemplo n.º 14
0
 public abstract Task <bool> Save(FilesGroup filesGroup, FileWriteMode writeMode);
Ejemplo n.º 15
0
 public virtual FilesGroup InitPresentationSchemaExport(UserIdentity userIdentity, FilesGroup filesGroup)
 {
     throw new System.NotImplementedException();
 }
Ejemplo n.º 16
0
 public override FilesGroup InitPresentationExport(UserIdentity userIdentity, FilesGroup filesGroup)
 {
     return _serverSidePresentationTransfer.InitPresentationExport(userIdentity, filesGroup);
 }
Ejemplo n.º 17
0
 public FilesGroup InitConfigurationExport(UserIdentity userIdentity, FilesGroup filesGroup)
 {
     throw new System.NotImplementedException();
 }
Ejemplo n.º 18
0
 public FilesGroup InitConfigurationExport(UserIdentity userIdentity, FilesGroup filesGroup)
 {
     return _configFileExportHelper.InitConfigurationExport(userIdentity, filesGroup);
 }
 protected override FileSaveStatus OnSaveSource(FilesGroup resource, out string otherResourceId)
 {
     throw new System.NotImplementedException();
 }
Ejemplo n.º 20
0
 public FilesGroup InitConfigurationExport(UserIdentity userIdentity, FilesGroup filesGroup)
 {
     return _serverSideGroupFileTransfer.InitSourceDownload(userIdentity, filesGroup);
 }