Click or drag to resize

IFile Interface

IT Hit WebDAV Classes Reference
Represents a file on a WebDAV server.

Namespace:  ITHit.WebDAV.Client
Assembly:  ITHit.WebDAV.Client (in ITHit.WebDAV.Client.dll) Version: 6.0.4052-Beta
Syntax
public interface IFile : IItemContent, IHierarchyItem

The IFile type exposes the following members.

Properties
  NameDescription
Public propertyCode exampleActiveLocks
Array of item's lock descriptions.
(Inherited from IHierarchyItem.)
Public propertyCode exampleCheckedOut
Provides information whether item is in checked-in or checked-out state.
Public propertyCode exampleContentLength
Length of the file content.
(Inherited from IItemContent.)
Public propertyContentType
Content type of the file.
(Inherited from IItemContent.)
Public propertyCreationDate
The date item was created.
(Inherited from IHierarchyItem.)
Public propertyDisplayName
User friendly item name.
(Inherited from IHierarchyItem.)
Public propertyEtag
Gets entity tag - string that identifies current state of file's content.
(Inherited from IItemContent.)
Public propertyHref
This item path on the server.
(Inherited from IHierarchyItem.)
Public propertyItemType
Type of the item (File, Folder, Version or VersionHistory)
(Inherited from IHierarchyItem.)
Public propertyLastModified
Most recent modification date.
(Inherited from IHierarchyItem.)
Public propertyCode exampleProperties
Custom properties retrieved by [!:IFolder.GetChildrenAsync(bool, PropertyName[])] call.
(Inherited from IHierarchyItem.)
Public propertyResumableUpload
Returns instance of IResumableUpload to manage partially failed uploads.
(Inherited from IItemContent.)
Public propertySupportedLock
Lock types supported by the item.
(Inherited from IHierarchyItem.)
Public propertyCode exampleVersionControlled
Provides information whether item is under version control.
Top
Methods
  NameDescription
Public methodCode exampleCheckInAsync
Creates new version.
Public methodCode exampleCheckOutAsync
Allow modifications to the content and custom properties of this version-controlled file.
Public methodCode exampleCopyToAsync
Copies this item to destination folder.
(Inherited from IHierarchyItem.)
Public methodCode exampleDeleteAsync(IDictionaryString, String, CancellationToken)
Deletes this item.
(Inherited from IHierarchyItem.)
Public methodDeleteAsync(String, IDictionaryString, String, CancellationToken)
Deletes this item.
(Inherited from IHierarchyItem.)
Public methodCode exampleDeleteAsync(LockUriTokenPair, IDictionaryString, String, CancellationToken)
Deletes this item.
(Inherited from IHierarchyItem.)
Public methodCode exampleDownloadAsync
Downloads content of the file to a file specified by filename.
(Inherited from IItemContent.)
Public methodCode exampleGetActiveLocksAsync Obsolete.
Retrieves lock information about this item.
(Inherited from IHierarchyItem.)
Public methodCode exampleGetAllPropertiesAsync
Retrieves all custom properties exposed by the item.
(Inherited from IHierarchyItem.)
Public methodGetAutoVersionAsync
Determines how checked-in item responds to WebDAV client attempts to modify its content or properties.
Public methodGetCommentAsync
Brief comment about an item that is suitable for presentation to a user.
(Inherited from IHierarchyItem.)
Public methodGetCreatorDisplayNameAsync
Contains a description of the creator of the item that is suitable for presentation to a user.
(Inherited from IHierarchyItem.)
Public methodGetCurrentVersionAsync
Current item version. Null, if item is not under version control.
Public methodCode exampleGetParentAsync
Retrieves parent hierarchy item of this item.
(Inherited from IHierarchyItem.)
Public methodCode exampleGetPropertyNamesAsync
Returns names of all custom properties exposed by this item.
(Inherited from IHierarchyItem.)
Public methodCode exampleGetPropertyValuesAsync
Retrieves values of specific properties.
(Inherited from IHierarchyItem.)
Public methodCode exampleGetReadStreamAsync
Loads content of the file from WebDAV server.
(Inherited from IItemContent.)
Public methodCode exampleGetReadStreamAsync(Int64, Int64, DateTime)
Loads part of the content of the file from WebDAV server using lastModifiedUtc to ensure the content is up-to-date.
(Inherited from IItemContent.)
Public methodGetReadStreamAsync(Int64, Int64, IDictionaryString, String, CancellationToken)
Loads part of the content of the file from WebDAV server.
(Inherited from IItemContent.)
Public methodCode exampleGetReadStreamAsync(Int64, Int64, String, IDictionaryString, String, CancellationToken)
Loads part of the content of the file from WebDAV server using eTag to ensure the content is up-to-date.
(Inherited from IItemContent.)
Public methodGetSourceAsync
Retrieves media type independent links.
(Inherited from IHierarchyItem.)
Public methodGetSupportedLockAsync Obsolete.
Retrieves information about supported locks.
(Inherited from IHierarchyItem.)
Public methodCode exampleGetVersionsAsync
Retrieves list of all versions for this file.
Public methodCode exampleIsCheckedOutAsync Obsolete.
Determines whether item is in checked-in or checked-out state.
Public methodCode exampleIsVersionControlledAsync Obsolete.
Determines whether item is under version control.
Public methodCode exampleLockAsync
Locks the item.
(Inherited from IHierarchyItem.)
Public methodCode exampleMoveToAsync(IFolder, String, Boolean)
Moves this item to another location.
(Inherited from IHierarchyItem.)
Public methodCode exampleMoveToAsync(IFolder, String, Boolean, LockUriTokenPair)
Moves this item to another location.
(Inherited from IHierarchyItem.)
Public methodPutUnderVersionControlAsync
Enables / disables version control for this file.
Public methodCode exampleRefreshAsync
Rereads item properties from server.
(Inherited from IHierarchyItem.)
Public methodCode exampleRefreshLockAsync
Prolongs the lock.
(Inherited from IHierarchyItem.)
Public methodSetAutoVersionAsync(AutoVersion)
Sets how checked-in item responds to WebDAV client attempts to modify its content or properties.
Public methodSetAutoVersionAsync(AutoVersion, String)
Sets how checked-in item responds to WebDAV client attempts to modify its content or properties.
Public methodCode exampleSetCommentAndAuthorAsync(String, String)
Updates comment and author information.
(Inherited from IHierarchyItem.)
Public methodSetCommentAndAuthorAsync(String, String, String)
Updates comment and author information.
(Inherited from IHierarchyItem.)
Public methodCode exampleSupportedFeaturesAsync
Gets the information about functionality supported by server (Class 1, Class 2 and so on).
(Inherited from IHierarchyItem.)
Public methodCode exampleUnCheckOutAsync
Cancels the CHECKOUT and restore the pre-CHECKOUT state of the version-controlled resource.
Public methodCode exampleUnlockAsync(String, IDictionaryString, String, CancellationToken)
Remove the locks.
(Inherited from IHierarchyItem.)
Public methodUnlockAsync(LockUriTokenPair, IDictionaryString, String, CancellationToken) (Inherited from IHierarchyItem.)
Public methodCode exampleUpdatePropertiesAsync(Property, PropertyName)
Updates values of properties exposed by this item.
(Inherited from IHierarchyItem.)
Public methodCode exampleUpdatePropertiesAsync(Property, PropertyName, String)
Updates values of properties exposed by this item.
(Inherited from IHierarchyItem.)
Public methodCode exampleUpdateToVersionAsync(IVersion)
Updates content and dead properties of item to those identified by version.
Public methodCode exampleUpdateToVersionAsync(IVersion, String)
Updates content and dead properties of item to those identified by version.
Public methodCode exampleUploadAsync(String, LockUriTokenPair, IDictionaryString, String, CancellationToken)
Uploads content of a file specified by filename to the server.
(Inherited from IItemContent.)
Public methodCode exampleUploadAsync(FuncStream, Task, Int64, LockUriTokenPair, IDictionaryString, String, CancellationToken)
Uploads content of a file specified by function onStreamAvailable to the server.
(Inherited from IItemContent.)
Top
Examples
In the following example a file is downloaded from a WebDAV server.
string license = "<?xml version='1.0' encoding='utf...
WebDavSessionAsync session = new WebDavSessionAsync(license);
session.Credentials = new NetworkCredential("User1", "pwd");

IFile davFile = await session.GetFileAsync("https://server:8080/Products/image.gif");
using (Stream webStream = await davFile.GetReadStreamAsync())
{
    int bufSize = 1048576; // 1Mb
    byte[] buffer = new byte[bufSize];
    int bytesRead = 0;
    using (FileStream fileStream = File.OpenWrite(davFile.DisplayName))
    {
        while ((bytesRead = await webStream.ReadAsync(buffer, 0, bufSize)) > 0)
            await fileStream.WriteAsync(buffer, 0, bytesRead);
    }
}
See Also