/*******************************************************************************
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use
* this file except in compliance with the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file.
* This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the
* specific language governing permissions and limitations under the License.
* *****************************************************************************
* __ _ _ ___
* ( )( \/\/ )/ __)
* /__\ \ / \__ \
* (_)(_) \/\/ (___/
*
* AWS SDK for .NET
* API Version: 2006-03-01
*
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Amazon.S3.IO
{
///
/// Enumeration indicated whether a file system element is a file or directory.
///
public enum FileSystemType
{
///
/// Type is a directory.
///
Directory,
///
/// Type is a file.
///
File
};
///
/// Common interface for both S3FileInfo and S3DirectoryInfo.
///
public interface IS3FileSystemInfo
{
///
/// Returns true if the item exists in S3.
///
bool Exists
{
get;
}
///
/// Returns the extension of the item.
///
string Extension
{
get;
}
///
/// Returns the fully qualified path to the item.
///
string FullName
{
get;
}
///
/// Returns the last modified time for this item from S3 in local timezone.
///
DateTime LastWriteTime
{
get;
}
///
/// Returns the last modified time for this item from S3 in UTC timezone.
///
DateTime LastWriteTimeUtc
{
get;
}
///
/// Returns the name of the item without parent information.
///
string Name
{
get;
}
///
/// Indicates what type of item this object represents.
///
FileSystemType Type
{
get;
}
///
/// Deletes this item from S3.
///
void Delete();
}
}