using System;
using SiberTek.Xenta.Data.Entities;
using SiberTek.Xenta.Data.Entities.Collections;
namespace SiberTek.Xenta.Data.Providers
{
/// <summary>
/// Defines file meta data provider methods
/// </summary>
public interface IFileMetaDataProvider : IDataProvider
{
#region Methods
#region C
bool InsertFile(int ownerID, Guid guid, string name, string mimeType, int size, DateTime createdOn, DateTime accessedOn, DateTime updatedOn, out int fileID);
#endregion
#region R
FileMetaData GetFile(int fileID);
FileMetaData GetFileByGuid(Guid guid);
FileMetaDataCollection GetAllFiles(string searchTerm, string mimeType, int? ownerID, DateTime? createdOnStart, DateTime? createdOnEnd, DateTime? accessedOnStart, DateTime? accessedOnEnd, int startIndex, int count, out int totalCount);
#endregion
#region U
bool UpdateFile(int fileID, int ownerID, Guid guid, string name, string mimeType, int size, DateTime createdOn, DateTime accessedOn, DateTime updatedOn);
#endregion
#region D
bool DeleteFile(int fileID);
#endregion
#endregion
}
}