using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tango.FSE.Common.FileSystem;
using Tango.Integration.Logging;
using Tango.Logging;
using Tango.PPC.Shared.Logs;
namespace Tango.FSE.Common.Logging
{
///
/// Represents global application/firmware logs provider.
///
public interface ILoggingProvider
{
///
/// Gets the last retrieved history of the application log files.
///
ObservableCollection ApplicationLogFiles { get; }
///
/// Gets the last retrieved history of the embedded firmware log files.
///
ObservableCollection FirmwareLogFiles { get; }
///
/// Gets the history of application log files.
///
///
Task> GetApplicationLogFiles();
///
/// Gets the history of the embedded firmware log files.
///
///
Task> GetFirmwareLogFiles();
///
/// Downloads the specified remote log file.
///
/// The log file.
/// Target file.
///
Task DownloadLogFile(RemoteLogFile logFile, String targetFile);
///
/// Occurs when a new FSE application log is available.
///
event EventHandler FSELogAvailable;
///
/// Occurs when a new PPC application log is available.
///
event EventHandler ApplicationLogAvailable;
///
/// Occurs when a new embedded firmware log is available.
///
event EventHandler FirmwareLogAvailable;
}
}