public virtual ICollection <Path> DoContainerLogAggregation(AggregatedLogFormat.LogWriter
                                                                        writer, bool appFinished)
            {
                AppLogAggregatorImpl.Log.Info("Uploading logs for container " + this.containerId
                                              + ". Current good log dirs are " + StringUtils.Join(",", this._enclosing.dirsHandler
                                                                                                  .GetLogDirsForRead()));
                AggregatedLogFormat.LogKey logKey = new AggregatedLogFormat.LogKey(this.containerId
                                                                                   );
                AggregatedLogFormat.LogValue logValue = new AggregatedLogFormat.LogValue(this._enclosing
                                                                                         .dirsHandler.GetLogDirsForRead(), this.containerId, this._enclosing.userUgi.GetShortUserName
                                                                                             (), this._enclosing.logAggregationContext, this.uploadedFileMeta, appFinished);
                try
                {
                    writer.Append(logKey, logValue);
                }
                catch (Exception e)
                {
                    AppLogAggregatorImpl.Log.Error("Couldn't upload logs for " + this.containerId + ". Skipping this container."
                                                   , e);
                    return(new HashSet <Path>());
                }
                Sharpen.Collections.AddAll(this.uploadedFileMeta, logValue.GetCurrentUpLoadedFileMeta
                                               ());
                // if any of the previous uploaded logs have been deleted,
                // we need to remove them from alreadyUploadedLogs
                IEnumerable <string> mask = Iterables.Filter(this.uploadedFileMeta, new _Predicate_581
                                                                 (logValue));

                this.uploadedFileMeta = Sets.NewHashSet(mask);
                return(logValue.GetCurrentUpLoadedFilesPath());
            }
 public _Predicate_581(AggregatedLogFormat.LogValue logValue)
 {
     this.logValue = logValue;
 }