Show / Hide Table of Contents

Class InMemoryPropertyStore

The in-memory implementation of a property store

Inheritance
Object
PropertyStoreBase
InMemoryPropertyStore
Inherited Members
PropertyStoreBase.DeadPropertyFactory
PropertyStoreBase.GetAsync(IEntry, XName, CancellationToken)
PropertyStoreBase.SetAsync(IEntry, XElement, CancellationToken)
PropertyStoreBase.RemoveAsync(IEntry, XName, CancellationToken)
PropertyStoreBase.Create(IEntry, XName)
PropertyStoreBase.LoadAsync(IEntry, XName, CancellationToken)
PropertyStoreBase.LoadAsync(IEntry, CancellationToken)
PropertyStoreBase.GetETagAsync(IEntry, CancellationToken)
PropertyStoreBase.UpdateETagAsync(IEntry, CancellationToken)
Object.Equals(Object)
Object.Equals(Object, Object)
Object.GetHashCode()
Object.GetType()
Object.MemberwiseClone()
Object.ReferenceEquals(Object, Object)
Object.ToString()
Namespace:FubarDev.WebDavServer.Props.Store.InMemory
Assembly:FubarDev.WebDavServer.Props.Store.InMemory.dll
Syntax
public class InMemoryPropertyStore : PropertyStoreBase, IPropertyStore

Constructors

| Improve this Doc View Source

InMemoryPropertyStore(IDeadPropertyFactory, ILogger<InMemoryPropertyStore>)

Initializes a new instance of the InMemoryPropertyStore class.

Declaration
public InMemoryPropertyStore(IDeadPropertyFactory deadPropertyFactory, ILogger<InMemoryPropertyStore> logger)
Parameters
Type Name Description
IDeadPropertyFactory deadPropertyFactory

The factory to create dead properties

Microsoft.Extensions.Logging.ILogger<InMemoryPropertyStore> logger

The logger

Properties

| Improve this Doc View Source

Cost

Gets the cost to query the properties of a property store

Declaration
public override int Cost { get; }
Property Value
Type Description
Int32
Overrides
PropertyStoreBase.Cost

Methods

| Improve this Doc View Source

GetAsync(IEntry, CancellationToken)

Gets all dead properties for a given entry

Declaration
public override Task<IReadOnlyCollection<XElement>> GetAsync(IEntry entry, CancellationToken cancellationToken)
Parameters
Type Name Description
IEntry entry

The entry to get all the dead properties for

CancellationToken cancellationToken

The cancellation token

Returns
Type Description
Task<IReadOnlyCollection<XElement>>

The collection of all dead properties

Overrides
PropertyStoreBase.GetAsync(IEntry, CancellationToken)
Remarks

A GetETagProperty will not be returned by this function.

| Improve this Doc View Source

GetDeadETagAsync(IEntry, CancellationToken)

Gets a GetETagProperty from the property store

Declaration
protected override Task<EntityTag> GetDeadETagAsync(IEntry entry, CancellationToken cancellationToken)
Parameters
Type Name Description
IEntry entry

The entry to get the getetag property from

CancellationToken cancellationToken

The cancellation token

Returns
Type Description
Task<EntityTag>

The entity tag for the entry

Overrides
PropertyStoreBase.GetDeadETagAsync(IEntry, CancellationToken)
| Improve this Doc View Source

RemoveAsync(IEntry, IEnumerable<XName>, CancellationToken)

Remove multiple dead properties by its name at once from the given entry

Declaration
public override Task<IReadOnlyCollection<bool>> RemoveAsync(IEntry entry, IEnumerable<XName> keys, CancellationToken cancellationToken)
Parameters
Type Name Description
IEntry entry

The entry to remove the given property names from

IEnumerable<XName> keys
CancellationToken cancellationToken

The cancellation token

Returns
Type Description
Task<IReadOnlyCollection<Boolean>>

A collection of booleans where a true value indicates that there was a dead property for a given name that could be removed from the entry. A GetETagProperty cannot be removed by this function.

Overrides
PropertyStoreBase.RemoveAsync(IEntry, IEnumerable<XName>, CancellationToken)
| Improve this Doc View Source

RemoveAsync(IEntry, CancellationToken)

Remove all dead propertied (including a probably exting GetETagProperty) from a given entry

Declaration
public override Task RemoveAsync(IEntry entry, CancellationToken cancellationToken)
Parameters
Type Name Description
IEntry entry

The entry to remove all the dead properties from

CancellationToken cancellationToken

The cancellation token

Returns
Type Description
Task

The async task

Overrides
PropertyStoreBase.RemoveAsync(IEntry, CancellationToken)
| Improve this Doc View Source

SetAsync(IEntry, IEnumerable<XElement>, CancellationToken)

Sets all given dead properties for the given entry

Declaration
public override Task SetAsync(IEntry entry, IEnumerable<XElement> elements, CancellationToken cancellationToken)
Parameters
Type Name Description
IEntry entry

The entry to set all the dead properties for

IEnumerable<XElement> elements
CancellationToken cancellationToken

The cancellation token

Returns
Type Description
Task

The async task

Overrides
PropertyStoreBase.SetAsync(IEntry, IEnumerable<XElement>, CancellationToken)
Remarks

A GetETagProperty cannot be updated using this method

| Improve this Doc View Source

UpdateDeadETagAsync(IEntry, CancellationToken)

Updates a GetETagProperty in the property store

Declaration
protected override Task<EntityTag> UpdateDeadETagAsync(IEntry entry, CancellationToken cancellationToken)
Parameters
Type Name Description
IEntry entry

The entry to update the getetag property for

CancellationToken cancellationToken

The cancellation token

Returns
Type Description
Task<EntityTag>

The updated entity tag for the entry

Overrides
PropertyStoreBase.UpdateDeadETagAsync(IEntry, CancellationToken)
  • Improve this Doc
  • View Source
Back to top Copyright © 2016-2017 Fubar Development Junker
Generated by DocFX