コード例 #1
0
        private void ProcessItem(Attachment attachment)
            {
            if (IsAttachmentAlreadyLocatedInDraftDirectory(attachment))
                {
                Console.WriteLine("Already in draft directory - no action will be taken.");
                return;
                }                

            if (!CanAttachmentBeFound(attachment))
                {
                Console.WriteLine("Cannot find attachment - no action will be taken.");
                return;
                }

            MoveAttachmentToDraftDirectory(attachment);
            Console.WriteLine("File moved to Draft directory.");
            }
コード例 #2
0
 private bool IsAttachmentAlreadyLocatedInDraftDirectory(Attachment attachment)
     {
     var whereFileShouldEndUp = GenerateDestinationFileName(attachment);
     var result = File.Exists(whereFileShouldEndUp);
     return result;
     }
コード例 #3
0
 private static void RenderItem(Attachment attachment)
     {
     Console.WriteLine();
     Console.WriteLine("- {0} {1} {2}", attachment.ArchetypeCode, attachment.Parent, attachment.FileName);
     }
コード例 #4
0
 private string GenerateDestinationFileName(Attachment attachment)
     {
     var result = Path.Combine(this._attachmentsDirectory, attachment.ArchetypeCode);
     result = Path.Combine(result, attachment.Parent.ToString("D"));
     result = Path.Combine(result, "Draft");
     result = Path.Combine(result, attachment.FileName);
     return result;
     }
コード例 #5
0
 private void MoveAttachmentToDraftDirectory(Attachment attachment)
     {
     var source = GenerateSourceFileName(attachment);
     var destination = GenerateDestinationFileName(attachment);
     var destinationDirectory = Path.GetDirectoryName(destination);
     EnsureDirectoryExists(destinationDirectory);
     File.Move(source, destination);
     }
コード例 #6
0
 private bool CanAttachmentBeFound(Attachment attachment)
     {
     var whereFileShouldStart = GenerateSourceFileName(attachment);
     var result = File.Exists(whereFileShouldStart);
     return result;
     }