示例#1
0
        void ProcessDirectory(object sender, DirectoryEventArgs e)
        {
            if ( !e.HasMatchingFiles && CreateEmptyDirectories ) {
                if ( events_ != null ) {
                    events_.OnProcessDirectory(e.Name, e.HasMatchingFiles);
                }

                if ( e.ContinueRunning ) {
                    if (e.Name != sourceDirectory_) {
                        ZipEntry entry = entryFactory_.MakeDirectoryEntry(e.Name);
                        outputStream_.PutNextEntry(entry);
                    }
                }
            }
        }
示例#2
0
 /// <summary>
 /// Fires the <see cref="ProcessDirectory">process directory</see> delegate.
 /// </summary>
 /// <param name="directory">The directory being processed.</param>
 /// <param name="hasMatchingFiles">Flag indicating if the directory has matching files as determined by the current filter.</param>
 /// <returns>A <see cref="bool"/> of true if the operation should continue; false otherwise.</returns>
 public bool OnProcessDirectory(string directory, bool hasMatchingFiles)
 {
     bool result = true;
     if ( ProcessDirectory != null ) {
         DirectoryEventArgs args = new DirectoryEventArgs(directory, hasMatchingFiles);
         ProcessDirectory(this, args);
         result = args.ContinueRunning;
     }
     return result;
 }
示例#3
0
 /// <summary>
 /// Raise the ProcessDirectory event.
 /// </summary>
 /// <param name="directory">The directory name.</param>
 /// <param name="hasMatchingFiles">Flag indicating if the directory has matching files.</param>
 void OnProcessDirectory(string directory, bool hasMatchingFiles)
 {
     if ( ProcessDirectory != null ) {
         DirectoryEventArgs args = new DirectoryEventArgs(directory, hasMatchingFiles);
         ProcessDirectory(this, args);
         alive_ = args.ContinueRunning;
     }
 }