using System;
namespace AppLimit.CloudComputing.SharpBox
{
///
/// Normally file based storage systems are supporting file system
/// entries. This interface will be used to get access on the
/// file system entry in the cloud storage
///
public interface ICloudFileSystemEntry
{
///
/// The name of the associated folder
///
string Name { get; }
///
/// This attribute contains uniq id of the entry. Id = Name for most providers
///
string Id { get; }
///
/// This attribute contains the size of a file or the count of childs
/// of the associated directory
///
long Length { get; }
///
/// This attribute contains the modification date of the object
///
DateTime Modified { get; }
///
/// ID of the parent folder.
///
string ParentID { get; set; }
///
/// The parent folder of the associated folder, can be null if it's
/// the root folder
///
ICloudDirectoryEntry Parent { get; set; }
///
/// This method return an implementation of an content data transfer interface
///
///
ICloudFileDataTransfer GetDataTransferAccessor();
///
/// This method gives raw access to the properties of the specific
/// protocol provider
///
///
///
string GetPropertyValue(string key);
}
}