<?xml version="1.0"?>
<doc>
    <assembly>
        <name>ApacKernel.Repositories</name>
    </assembly>
    <members>
        <member name="T:ApacKernel.Repositories.NamespaceDoc">
            <summary>
            The <see cref="N:ApacKernel.Repositories"/> namespace contains global repositories definition.
            </summary>
        </member>
        <member name="T:ApacKernel.Repositories.Delta`1">
            <summary>
            Delta operation entity
            </summary>
            <typeparam name="T">Type of base entity class</typeparam>
        </member>
        <member name="F:ApacKernel.Repositories.Delta`1._propertyCache">
            <summary>
            Base entity class properties cache
            </summary>
        </member>
        <member name="M:ApacKernel.Repositories.Delta`1.#ctor">
            <summary>
            Default constructor
            </summary>
        </member>
        <member name="M:ApacKernel.Repositories.Delta`1.GetData">
            <summary>
            Get property/value dictionary
            </summary>
            <returns>Return property/value dictionary</returns>
        </member>
        <member name="M:ApacKernel.Repositories.Delta`1.GetValue(System.String)">
            <summary>
            Get dynamic value
            </summary>
            <param name="name">Member name</param>
            <returns>Member value</returns>
        </member>
        <member name="M:ApacKernel.Repositories.Delta`1.SetValue(System.String,System.Object)">
            <summary>
            Set dynamic member value
            </summary>
            <param name="name">Member name</param>
            <param name="value">Member value</param>
            <returns>Stored member value</returns>
        </member>
        <member name="M:ApacKernel.Repositories.Delta`1.InitializePropertiesThatExist">
            <summary>
            Initialize and return base entity properties collection
            </summary>
            <remarks>
            Method remove all base methods properties which marked by <see cref="T:ApacKernel.Repositories.NotPatchableAttribute"/>.
            </remarks>
            <returns>Return name/<see cref="T:System.Reflection.PropertyInfo"/> dictionary</returns>
        </member>
        <member name="P:ApacKernel.Repositories.Delta`1.EntityType">
            <summary>
            Base entity type
            </summary>
        </member>
        <member name="T:ApacKernel.Repositories.Criteria`1">
            <summary>
            Criteria options container
            </summary>
            <typeparam name="T"></typeparam>
        </member>
        <member name="M:ApacKernel.Repositories.Criteria`1.InitializePropertiesThatExist">
            <summary>
            Initialize and return base entity properties collection
            </summary>
            <returns>Return name/<see cref="T:System.Reflection.PropertyInfo"/> dictionary</returns>
        </member>
        <member name="T:ApacKernel.Repositories.EntityBase">
            <summary>
            Base entity class
            </summary>
        </member>
        <member name="T:ApacKernel.Repositories.IEntity">
            <summary>
            Base entity interface
            </summary>
        </member>
        <member name="P:ApacKernel.Repositories.IEntity.ID">
            <summary>
            Entity ID
            </summary>
        </member>
        <member name="P:ApacKernel.Repositories.IEntity.CreatedDate">
            <summary>
            Entity created date
            </summary>
        </member>
        <member name="P:ApacKernel.Repositories.IEntity.CreatedBy">
            <summary>
            Entity created unique user ID
            </summary>
        </member>
        <member name="P:ApacKernel.Repositories.IEntity.LastSavedDate">
            <summary>
            Entity last changed date
            </summary>
        </member>
        <member name="P:ApacKernel.Repositories.IEntity.LastSavedBy">
            <summary>
            Entity last changed unique user ID
            </summary>
        </member>
        <member name="M:ApacKernel.Repositories.EntityBase.#ctor">
            <summary>
            Default entity constructor
            </summary>
        </member>
        <member name="P:ApacKernel.Repositories.EntityBase.ID">
            <summary>
            Entity ID
            </summary>
        </member>
        <member name="P:ApacKernel.Repositories.EntityBase.CreatedDate">
            <summary>
            Entity created date
            </summary>
        </member>
        <member name="P:ApacKernel.Repositories.EntityBase.CreatedBy">
            <summary>
            Entity created unique user ID
            </summary>
        </member>
        <member name="P:ApacKernel.Repositories.EntityBase.LastSavedDate">
            <summary>
            Entity last changed date
            </summary>
        </member>
        <member name="P:ApacKernel.Repositories.EntityBase.LastSavedBy">
            <summary>
            Entity last changed unique user ID
            </summary>
        </member>
        <member name="T:ApacKernel.Repositories.EntityRepositoryBase`1">
            <summary>
            Base repository class
            </summary>
            <typeparam name="T">Entity type inherited form <see cref="T:ApacKernel.Repositories.EntityBase"/></typeparam>
        </member>
        <member name="T:ApacKernel.Repositories.IEntityRepository`1">
            <summary>
            Base entity repository interface
            </summary>
            <typeparam name="T">Entity type inherited from <see cref="T:ApacKernel.Repositories.IEntity"/></typeparam>
        </member>
        <member name="T:ApacKernel.Repositories.IRepository">
            <summary>
            Base repository interface
            </summary>
        </member>
        <member name="M:ApacKernel.Repositories.IEntityRepository`1.Create(`0,System.Guid)">
            <summary>
            Create entity
            </summary>
            <param name="entity">Entity</param>
            <param name="userID">Unique user ID who creating entity</param>
        </member>
        <member name="M:ApacKernel.Repositories.IEntityRepository`1.Update(`0,System.Guid)">
            <summary>
            Update entity
            </summary>
            <param name="entity">Entity</param>
            <param name="userID">Unique user ID who updating entity</param>
        </member>
        <member name="M:ApacKernel.Repositories.IEntityRepository`1.DeleteByID(System.Guid,System.Guid)">
            <summary>
            Delete entity by <paramref name="id"/>
            </summary>
            <param name="id">Unique entity ID</param>
            <param name="userID">Unique user ID who deleting entity</param>
        </member>
        <member name="M:ApacKernel.Repositories.IEntityRepository`1.Patch(System.Guid,ApacKernel.Repositories.Delta{`0},System.Guid)">
            <summary>
            Patch entity by <paramref name="id"/>
            </summary>
            <param name="id">Unique entity ID</param>
            <param name="deltaEntity">Patching entity Delta</param>
            <param name="userID">Unique user ID who patching entity</param>
        </member>
        <member name="M:ApacKernel.Repositories.IEntityRepository`1.GetByID(System.Guid)">
            <summary>
            Get entity by <paramref name="id"/>
            </summary>
            <param name="id">Unique entity ID</param>
            <returns>Stored entity</returns>
        </member>
        <member name="M:ApacKernel.Repositories.IEntityRepository`1.GetAll">
            <summary>
            Get all entities
            </summary>
            <returns>List of stored entities</returns>
        </member>
        <member name="M:ApacKernel.Repositories.IEntityRepository`1.GetByCriteria(ApacKernel.Repositories.Criteria{`0})">
            <summary>
            Get entities by <paramref name="criteria"/>
            </summary>
            <param name="criteria">Get criteria</param>
            <returns>List of stored entities</returns>
        </member>
        <member name="M:ApacKernel.Repositories.EntityRepositoryBase`1.Create(`0,System.Guid)">
            <summary>
            Create entity
            </summary>
            <param name="entity">Entity</param>
            <param name="userID">Unique user ID who creating entity</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="entity"/> is null</exception>
        </member>
        <member name="M:ApacKernel.Repositories.EntityRepositoryBase`1.Update(`0,System.Guid)">
            <summary>
            Update entity
            </summary>
            <param name="entity">Entity</param>
            <param name="userID">Unique user ID who updating entity</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="entity"/> is null</exception>
        </member>
        <member name="M:ApacKernel.Repositories.EntityRepositoryBase`1.Patch(System.Guid,ApacKernel.Repositories.Delta{`0},System.Guid)">
            <summary>
            Patch entity by <paramref name="id"/>
            </summary>
            <param name="id">Unique entity ID</param>
            <param name="deltaEntity">Patching entity Delta</param>
            <param name="userID">Unique user ID who patching entity</param>
        </member>
        <member name="M:ApacKernel.Repositories.EntityRepositoryBase`1.DeleteByID(System.Guid,System.Guid)">
            <summary>
            Delete entity by <paramref name="id"/>
            </summary>
            <param name="id">Unique entity ID</param>
            <param name="userID">Unique user ID who deleting entity</param>
        </member>
        <member name="M:ApacKernel.Repositories.EntityRepositoryBase`1.GetByID(System.Guid)">
            <summary>
            Get entity by <paramref name="id"/>
            </summary>
            <param name="id">Unique entity ID</param>
            <returns>Stored entity</returns>
        </member>
        <member name="M:ApacKernel.Repositories.EntityRepositoryBase`1.GetAll">
            <summary>
            Get all entities
            </summary>
            <returns>List of stored entities</returns>
        </member>
        <member name="M:ApacKernel.Repositories.EntityRepositoryBase`1.GetByCriteria(ApacKernel.Repositories.Criteria{`0})">
            <summary>
            Get entities by <paramref name="criteria"/>
            </summary>
            <param name="criteria">Get criteria</param>
            <returns>List of stored entities</returns>
        </member>
        <member name="T:ApacKernel.Repositories.NotDatabaseFieldAttribute">
            <summary>
            Mark class properties as not used for database queries
            </summary>
        </member>
        <member name="T:ApacKernel.Repositories.NotPatchableAttribute">
            <summary>
            Mark class properties as not used for <see cref="T:ApacKernel.Repositories.Delta`1"/> operations
            </summary>
        </member>
        <member name="T:ApacKernel.Repositories.QueryType">
            <summary>
            Base query types used for storing in <see cref="T:ApacKernel.Cache.QueryCache"/>
            </summary>
        </member>
        <member name="F:ApacKernel.Repositories.QueryType.Create">
            <summary>
            Create
            </summary>
        </member>
        <member name="F:ApacKernel.Repositories.QueryType.Update">
            <summary>
            Update
            </summary>
        </member>
        <member name="F:ApacKernel.Repositories.QueryType.GetByID">
            <summary>
            GetByID
            </summary>
        </member>
        <member name="F:ApacKernel.Repositories.QueryType.GetAll">
            <summary>
            GetAll
            </summary>
        </member>
        <member name="T:ApacKernel.Repositories.Queues.NamespaceDoc">
            <summary>
            The <see cref="N:ApacKernel.Repositories.Queues"/> namespace contains global queues definition.
            </summary>
        </member>
        <member name="T:ApacKernel.Repositories.Queues.IQueueObjectRepository`1">
            <summary>
            Base storage queue repository interface
            </summary>
            <typeparam name="T">Queued repository entity type</typeparam>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.IQueueObjectRepository`1.Create(`0)">
            <summary>
            Create new entity in a queue
            </summary>
            <param name="entity">Queued repository entity</param>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.IQueueObjectRepository`1.Get">
            <summary>
            Get entity from the queue
            </summary>
            <returns>Serialized entity</returns>
        </member>
        <member name="T:ApacKernel.Repositories.Queues.IQueueRepository`1">
            <summary>
            Base queue repository interface
            </summary>
            <typeparam name="T">Queued entity type</typeparam>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.IQueueRepository`1.Push(`0)">
            <summary>
            Push entity to a queue
            </summary>
            <param name="entity">Entity</param>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.IQueueRepository`1.Pop">
            <summary>
            Pop entity from a queue
            </summary>
            <returns>Entity</returns>
        </member>
        <member name="T:ApacKernel.Repositories.Queues.IPendingQueueRepository`1">
            <summary>
            Base pending queue repository interface
            </summary>
            <typeparam name="T">Queued entity type</typeparam>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.IPendingQueueRepository`1.Push(`0,System.DateTime)">
            <summary>
            Push entity to a queue
            </summary>
            <param name="entity">Entity</param>
            <param name="dueTime">Release time</param>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.IPendingQueueRepository`1.Pop">
            <summary>
            Pop entity from a queue
            </summary>
            <returns>Entity</returns>
        </member>
        <member name="T:ApacKernel.Repositories.Queues.QueueObjectBase">
            <summary>
            Base object for <see cref="T:ApacKernel.Repositories.Queues.IQueueObjectRepository`1"/>
            </summary>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.QueueObjectBase.#ctor">
            <summary>
            Default constructor
            </summary>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.QueueObjectBase.#ctor(System.Object)">
            <summary>
            Default constructor with source data
            </summary>
            <param name="data">Source data entity</param>
        </member>
        <member name="P:ApacKernel.Repositories.Queues.QueueObjectBase.Data">
            <summary>
            Serialized source entity data
            </summary>
        </member>
        <member name="T:ApacKernel.Repositories.Queues.BasicQueueObject">
            <summary>
            Basic queue object for most of queue types except pending queues
            </summary>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.BasicQueueObject.#ctor">
            <summary>
            Default constructor
            </summary>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.BasicQueueObject.#ctor(System.Object)">
            <summary>
            Default constructor with source data
            </summary>
            <param name="data">Source data entity</param>
        </member>
        <member name="T:ApacKernel.Repositories.Queues.PendingQueueObject">
            <summary>
            Basic queue object for pending queues
            </summary>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.PendingQueueObject.#ctor">
            <summary>
            Default constructor
            </summary>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.PendingQueueObject.#ctor(System.Object,System.DateTime)">
            <summary>
            Default constructor with source data and release time
            </summary>
            <param name="data">Source data entity</param>
            <param name="dueTime">Release time</param>
        </member>
        <member name="P:ApacKernel.Repositories.Queues.PendingQueueObject.DueTime">
            <summary>
            Release entity time
            </summary>
        </member>
        <member name="T:ApacKernel.Repositories.Queues.QueueObjectRepositoryBase`1">
            <summary>
            Base storage queue repository class
            </summary>
            <typeparam name="T">Queued repository entity type</typeparam>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.QueueObjectRepositoryBase`1.Get">
            <summary>
            Get entity from the queue
            </summary>
            <returns>Serialized entity</returns>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.QueueObjectRepositoryBase`1.Create(`0)">
            <summary>
            Create new entity in a queue
            </summary>
            <param name="entity">Queued repository entity</param>
        </member>
        <member name="T:ApacKernel.Repositories.Queues.QueueRepositoryBase`1">
            <summary>
            Base queue repository
            </summary>
            <typeparam name="T">Entity type</typeparam>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.QueueRepositoryBase`1.Push(`0)">
            <summary>
            Push entity to a queue
            </summary>
            <param name="entity">Entity</param>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.QueueRepositoryBase`1.Pop">
            <summary>
            Pop entity from a queue
            </summary>
            <returns>Entity</returns>
        </member>
        <member name="P:ApacKernel.Repositories.Queues.QueueRepositoryBase`1.QueueObjectRepository">
            <summary>
            Queue storage repository
            </summary>
        </member>
        <member name="T:ApacKernel.Repositories.Queues.PendingQueueRepositoryBase`1">
            <summary>
             Base pending queue repository
            </summary>
            <typeparam name="T">Entity type</typeparam>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.PendingQueueRepositoryBase`1.Push(`0,System.DateTime)">
            <summary>
            Push entity to a queue
            </summary>
            <param name="entity">Entity</param>
            <param name="dueTime">Release time</param>
        </member>
        <member name="M:ApacKernel.Repositories.Queues.PendingQueueRepositoryBase`1.Pop">
            <summary>
            Pop entity from a queue
            </summary>
            <returns>Entity</returns>
        </member>
        <member name="P:ApacKernel.Repositories.Queues.PendingQueueRepositoryBase`1.QueueObjectRepository">
            <summary>
            Queue storage repository
            </summary>
        </member>
        <member name="T:ApacKernel.Repositories.RepositoryBase">
            <summary>
            Repository base class
            </summary>
        </member>
    </members>
</doc>
