Show / Hide Table of Contents

Class FileSystemSessionItem

Represents an abstraction for items kept in a file system - i.e. directories and files.This class is NOT thread-safe

Inheritance
System.Object
DisposableObject
FileSystemSessionItem
FileSystemDirectory
FileSystemFile
Implements
System.IDisposable
INamed
Inherited Members
DisposableObject.DisposeAndNull<T>(T)
DisposableObject.DisposeStarted
DisposableObject.Disposed
DisposableObject.EnsureObjectNotDisposed()
DisposableObject.Dispose()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
Namespace: NFX.IO.FileSystem
Assembly: NFX.dll
Syntax
public abstract class FileSystemSessionItem : DisposableObject, IDisposable, INamed

Constructors

FileSystemSessionItem(FileSystemSession, String, String, IFileSystemHandle)

Declaration
protected FileSystemSessionItem(FileSystemSession session, string parentPath, string name, IFileSystemHandle handle)
Parameters
Type Name Description
FileSystemSession session
System.String parentPath
System.String name
IFileSystemHandle handle

Fields

m_FileSystem

Declaration
protected readonly FileSystem m_FileSystem
Field Value
Type Description
FileSystem

m_Handle

Declaration
protected readonly IFileSystemHandle m_Handle
Field Value
Type Description
IFileSystemHandle

m_Modified

Declaration
protected bool m_Modified
Field Value
Type Description
System.Boolean

m_Session

Declaration
protected readonly FileSystemSession m_Session
Field Value
Type Description
FileSystemSession

Properties

CreationTimestamp

Gets/sets UTC creation timestamp

Declaration
public DateTime? CreationTimestamp { get; set; }
Property Value
Type Description
System.Nullable<System.DateTime>

CreationUser

Gets the user who created this item

Declaration
public User CreationUser { get; }
Property Value
Type Description
User

FileSystem

Returns filesystem - this is a shortcut to Session.FileSystem

Declaration
public FileSystem FileSystem { get; }
Property Value
Type Description
FileSystem

Handle

Returns file system handle for this entity

Declaration
public IFileSystemHandle Handle { get; }
Property Value
Type Description
IFileSystemHandle

IsReadOnly

Indicates whether this item can change and file system supports modifications

Declaration
public bool IsReadOnly { get; }
Property Value
Type Description
System.Boolean

LastAccessTimestamp

Gets/sets UTC last access timestamp

Declaration
public DateTime? LastAccessTimestamp { get; set; }
Property Value
Type Description
System.Nullable<System.DateTime>

LastAccessUser

Gets the last user who accessed the item

Declaration
public User LastAccessUser { get; }
Property Value
Type Description
User

MetadataStream

Returns item metadata stream

Declaration
public FileSystemStream MetadataStream { get; }
Property Value
Type Description
FileSystemStream

ModificationTimestamp

Gets/sets UTC modification timestamp

Declaration
public DateTime? ModificationTimestamp { get; set; }
Property Value
Type Description
System.Nullable<System.DateTime>

ModificationUser

Gets the user who modified this item

Declaration
public User ModificationUser { get; }
Property Value
Type Description
User

Modified

Indicates whether anything has changed since last transaction has started

Declaration
public bool Modified { get; }
Property Value
Type Description
System.Boolean

Name

Declaration
public string Name { get; set; }
Property Value
Type Description
System.String

ParentPath

Returns path to directory that contains this item

Declaration
public string ParentPath { get; }
Property Value
Type Description
System.String

Path

Returns an absolute path for this item

Declaration
public string Path { get; }
Property Value
Type Description
System.String

PermissionsStream

Returns item permissions stream

Declaration
public FileSystemStream PermissionsStream { get; }
Property Value
Type Description
FileSystemStream

ReadOnly

Gets/sets readonly attribute

Declaration
public bool ReadOnly { get; set; }
Property Value
Type Description
System.Boolean

Session

Returns session through which this object was obtained

Declaration
public FileSystemSession Session { get; }
Property Value
Type Description
FileSystemSession

Size

Returns the byte size of the item, depending on implementation this property may return approximate sizes for files and directories (i.e in distributed systems)

Declaration
public ulong Size { get; }
Property Value
Type Description
System.UInt64

Methods

CheckCanChange()

Throws when item can not change

Declaration
public void CheckCanChange()

CheckCanChangeAsync()

Async version of CheckCanChange()

Declaration
public Task CheckCanChangeAsync()
Returns
Type Description
System.Threading.Tasks.Task

Delete()

Deletes this item from file system

Declaration
public void Delete()

DeleteAsync()

Async version of Delete()

Declaration
public Task DeleteAsync()
Returns
Type Description
System.Threading.Tasks.Task

Destructor()

Declaration
protected override void Destructor()
Overrides
DisposableObject.Destructor()

GetCreationUserAsync()

Async version of CreationUser

Declaration
public Task<User> GetCreationUserAsync()
Returns
Type Description
System.Threading.Tasks.Task<User>

GetLastAccessUserAsync()

Async version of LastAccessUser

Declaration
public Task<User> GetLastAccessUserAsync()
Returns
Type Description
System.Threading.Tasks.Task<User>

GetModificationUserAsync()

Async version of ModificationUser

Declaration
public Task<User> GetModificationUserAsync()
Returns
Type Description
System.Threading.Tasks.Task<User>

GetSizeAsync()

Async version of Size

Declaration
public Task<ulong> GetSizeAsync()
Returns
Type Description
System.Threading.Tasks.Task<System.UInt64>

Refresh()

Refreshes the state represented by this item, i.e. this may re-read attributes from remote file system

Declaration
public void Refresh()

RefreshAsync()

Async version of Refresh()

Declaration
public Task RefreshAsync()
Returns
Type Description
System.Threading.Tasks.Task

Rename(String)

Renames an item. Check file system capabilities to see if renaming is supported

Declaration
public void Rename(string newName)
Parameters
Type Name Description
System.String newName

RenameAsync(String)

Async version of Rename(String)

Declaration
public Task RenameAsync(string newName)
Parameters
Type Name Description
System.String newName
Returns
Type Description
System.Threading.Tasks.Task

SetCreationTimestampAsync(DateTime)

Async version of CreationTimestamp

Declaration
public Task SetCreationTimestampAsync(DateTime timestamp)
Parameters
Type Name Description
System.DateTime timestamp
Returns
Type Description
System.Threading.Tasks.Task

SetLastAccessTimestampAsync(DateTime)

Async version of LastAccessTimestamp

Declaration
public Task SetLastAccessTimestampAsync(DateTime timestamp)
Parameters
Type Name Description
System.DateTime timestamp
Returns
Type Description
System.Threading.Tasks.Task

SetModificationTimestampAsync(DateTime)

Async version of ModificationTimestamp

Declaration
public Task SetModificationTimestampAsync(DateTime timestamp)
Parameters
Type Name Description
System.DateTime timestamp
Returns
Type Description
System.Threading.Tasks.Task

SetReadOnlyAsync(Boolean)

Async version of ReadOnly

Declaration
public Task SetReadOnlyAsync(bool readOnly)
Parameters
Type Name Description
System.Boolean readOnly
Returns
Type Description
System.Threading.Tasks.Task

ToString()

Declaration
public override string ToString()
Returns
Type Description
System.String
Overrides
System.Object.ToString()

Implements

System.IDisposable
INamed

Extension Methods

MiscUtils.NonNull<T>(T, Func<Exception>, String)
ObjectValueConversion.AsString(Object, String, ConvertErrorHandling)
ObjectValueConversion.AsNonNullOrEmptyString(Object)
ObjectValueConversion.AsLaconicConfig(Object, ConfigSectionNode, String, ConvertErrorHandling)
ObjectValueConversion.AsJSONConfig(Object, ConfigSectionNode, String, ConvertErrorHandling)
ObjectValueConversion.AsXMLConfig(Object, ConfigSectionNode, ConvertErrorHandling)
ObjectValueConversion.AsChar(Object, Char, ConvertErrorHandling)
ObjectValueConversion.AsNullableChar(Object, Nullable<Char>, ConvertErrorHandling)
ObjectValueConversion.AsByte(Object, Byte, ConvertErrorHandling)
ObjectValueConversion.AsNullableByte(Object, Nullable<Byte>, ConvertErrorHandling)
ObjectValueConversion.AsSByte(Object, SByte, ConvertErrorHandling)
ObjectValueConversion.AsNullableSByte(Object, Nullable<SByte>, ConvertErrorHandling)
ObjectValueConversion.AsShort(Object, Int16, ConvertErrorHandling)
ObjectValueConversion.AsNullableShort(Object, Nullable<Int16>, ConvertErrorHandling)
ObjectValueConversion.AsUShort(Object, UInt16, ConvertErrorHandling)
ObjectValueConversion.AsNullableUShort(Object, Nullable<UInt16>, ConvertErrorHandling)
ObjectValueConversion.AsInt(Object, Int32, ConvertErrorHandling)
ObjectValueConversion.AsNullableInt(Object, Nullable<Int32>, ConvertErrorHandling)
ObjectValueConversion.AsUInt(Object, UInt32, ConvertErrorHandling)
ObjectValueConversion.AsNullableUInt(Object, Nullable<UInt32>, ConvertErrorHandling)
ObjectValueConversion.AsLong(Object, Int64, ConvertErrorHandling)
ObjectValueConversion.AsNullableLong(Object, Nullable<Int64>, ConvertErrorHandling)
ObjectValueConversion.AsULong(Object, UInt64, ConvertErrorHandling)
ObjectValueConversion.AsNullableULong(Object, Nullable<UInt64>, ConvertErrorHandling)
ObjectValueConversion.AsDouble(Object, Double, ConvertErrorHandling)
ObjectValueConversion.AsNullableDouble(Object, Nullable<Double>, ConvertErrorHandling)
ObjectValueConversion.AsFloat(Object, Single, ConvertErrorHandling)
ObjectValueConversion.AsNullableFloat(Object, Nullable<Single>, ConvertErrorHandling)
ObjectValueConversion.AsDecimal(Object, Decimal, ConvertErrorHandling)
ObjectValueConversion.AsNullableDecimal(Object, Nullable<Decimal>, ConvertErrorHandling)
ObjectValueConversion.AsBool(Object, Boolean, ConvertErrorHandling)
ObjectValueConversion.AsNullableBool(Object, Nullable<Boolean>, ConvertErrorHandling)
ObjectValueConversion.AsGUID(Object, Guid, ConvertErrorHandling)
ObjectValueConversion.AsNullableGUID(Object, Nullable<Guid>, ConvertErrorHandling)
ObjectValueConversion.AsDateTime(Object)
ObjectValueConversion.AsDateTime(Object, DateTime, ConvertErrorHandling)
ObjectValueConversion.AsNullableDateTime(Object, Nullable<DateTime>, ConvertErrorHandling)
ObjectValueConversion.AsGDID(Object)
ObjectValueConversion.AsGDID(Object, GDID, ConvertErrorHandling)
ObjectValueConversion.AsNullableGDID(Object, Nullable<GDID>, ConvertErrorHandling)
ObjectValueConversion.AsGDIDSymbol(Object)
ObjectValueConversion.AsGDIDSymbol(Object, GDIDSymbol, ConvertErrorHandling)
ObjectValueConversion.AsNullableGDIDSymbol(Object, Nullable<GDIDSymbol>, ConvertErrorHandling)
ObjectValueConversion.AsTimeSpan(Object)
ObjectValueConversion.AsTimeSpan(Object, TimeSpan, ConvertErrorHandling)
ObjectValueConversion.AsNullableTimeSpan(Object, Nullable<TimeSpan>, ConvertErrorHandling)
ObjectValueConversion.AsEnum<TEnum>(Object, TEnum, ConvertErrorHandling)
ObjectValueConversion.AsNullableEnum<TEnum>(Object, Nullable<TEnum>, ConvertErrorHandling)
ObjectValueConversion.AsUri(Object, Uri, ConvertErrorHandling)
JSONExtensions.ToJSON(Object, JSONWritingOptions)
JSONExtensions.ToJSON(Object, TextWriter, JSONWritingOptions)
JSONExtensions.ToJSON(Object, Stream, JSONWritingOptions, Encoding)
ErlObject.ToErlObject(Object)
ErlObject.ToErlObject(Object, ErlTypeOrder, Boolean)
Back to top Copyright © 2006-2018 Agnicore Inc
Generated by DocFX