Click or drag to resize
AbstractInfoProviderTInfo, TProvider, TQuery Class
Abstract info class provider.
Inheritance Hierarchy
SystemObject
  CMS.DataEngineAbstractProvider
    CMS.DataEngineBaseAbstractInfoProvider
      CMS.DataEngineAbstractInfoProviderTProvider
        CMS.DataEngineAbstractInfoProviderTInfo, TProvider, TQuery
          CMS.DataEngineAbstractInfoProviderTInfo, TProvider

Namespace: CMS.DataEngine
Assembly: CMS.DataEngine (in CMS.DataEngine.dll) Version: 10.0.0
Syntax
C#
public abstract class AbstractInfoProvider<TInfo, TProvider, TQuery> : AbstractInfoProvider<TProvider>
where TInfo : new(), AbstractInfoBase<TInfo>
where TProvider : new(), AbstractInfoProvider<TInfo, TProvider, TQuery>
where TQuery : new(), ObjectQueryBase<TQuery, TInfo>

Type Parameters

TInfo
TProvider
TQuery

The AbstractInfoProviderTInfo, TProvider, TQuery type exposes the following members.

Constructors
Fields
  NameDescription
Protected fieldhashtableLock
Table lock for loading hashtables
(Inherited from BaseAbstractInfoProvider.)
Protected fieldinfos
Info tables.
(Inherited from BaseAbstractInfoProvider.)
Top
Properties
  NameDescription
Protected propertyDataSource
Data source for the provider
(Inherited from BaseAbstractInfoProvider.)
Public propertyHashtableSettings
Gets hashtable settings
(Inherited from BaseAbstractInfoProvider.)
Protected propertyInfoObject
Info object instance the provider is working with.
Public propertyInfoType
Returns the type of the info object for this provider
(Overrides BaseAbstractInfoProviderInfoType.)
Public propertyIsDataAvailable
Returns true if the data is available for this provider
(Inherited from BaseAbstractInfoProvider.)
Public propertyIsValid
Indicates if the provider instance is up-to-date and can be used to manage object instances.
(Inherited from AbstractProvider.)
Protected propertyProviderName
Provider name
(Inherited from BaseAbstractInfoProvider.)
Public propertyStatic memberStoreEmptyValuesInHashtables
If true, provider hashtables store empty values for not found objects to reduce database calls
Public propertyTypeInfo
Object type information.
(Inherited from BaseAbstractInfoProvider.)
Top
Methods
  NameDescription
Public methodAddSiteWhereCondition(String, Int32, String, Boolean)
Creates site where condition from the specified parameters and adds it to the original where condition.
Public methodAddSiteWhereCondition(String, Int32, String, Boolean, String)
Creates site where condition from the specified parameters and adds it to the original where condition.
Protected methodApplySourceTQuery
If the provider has a data source specified, applies this source to the given query. Returns the modified query.
(Inherited from BaseAbstractInfoProvider.)
Protected methodBeginTransaction
Creates a new transaction over this provider.
Protected methodBoundGetInfoByFullName
Gets the info object by its full name.
(Overrides BaseAbstractInfoProviderBoundGetInfoByFullName(String).)
Protected methodBoundGetInfoByGuid(Guid)
Gets the info object by its GUID.
(Overrides BaseAbstractInfoProviderBoundGetInfoByGuid(Guid).)
Protected methodBoundGetInfoByGuid(Guid, Int32)
Gets the info object by its GUID and site ID.
(Overrides BaseAbstractInfoProviderBoundGetInfoByGuid(Guid, Int32).)
Protected methodBoundGetInfoById
Gets the info by ID.
(Overrides BaseAbstractInfoProviderBoundGetInfoById(Int32).)
Protected methodBoundGetInfoByName(String)
Gets the info object by its code name.
(Overrides BaseAbstractInfoProviderBoundGetInfoByName(String).)
Protected methodBoundGetInfoByName(String, Int32)
Gets the info object by its code name and site Id.
(Overrides BaseAbstractInfoProviderBoundGetInfoByName(String, Int32).)
Protected methodBoundGetInfosByIds
Gets the list of info objects by their IDs.
(Overrides BaseAbstractInfoProviderBoundGetInfosByIds(IEnumerableInt32).)
Public methodBulkDelete
Bulk deletes info objects based on the given condition.
Public methodBulkInsertInfos(IEnumerableBaseInfo)
Bulk inserts the given list of info objects
(Overrides BaseAbstractInfoProviderBulkInsertInfos(IEnumerableBaseInfo).)
Public methodBulkInsertInfos(IEnumerableTInfo, BulkInsertSettings)
Bulk inserts the given list of info objects.
Protected methodStatic memberClearHashtableIfRequired Obsolete.
Clears hashtables when provider is already instantiated.
Protected methodClearHashtables
Clear hashtables.
(Overrides AbstractProviderClearHashtables(Boolean).)
Protected methodCreateDefaultBulkInsertSettings
Creates bulk insert settings. By default CheckConstraints and TableLock flags are set.
Protected methodCreateHashtables
Creates the provider hashtables
(Overrides BaseAbstractInfoProviderCreateHashtables.)
Protected methodCreateInfo(Int32)
Creates an instance of info object.
Protected methodCreateInfo(DataRow, Boolean)
Creates a new info object.
Public methodCreateWebFarmTask(String, String)
Creates web farm task specific for current object and action name
(Inherited from AbstractProvider.)
Public methodCreateWebFarmTask(String, String, Byte, String)
Creates web farm task specific for current object and action name
(Inherited from AbstractProvider.)
Protected methodDeleteData(String) Obsolete.
Deletes the data in the database based on the given where condition.
Protected methodDeleteData(IWhereCondition) Obsolete.
Deletes the data in the database based on the given where condition.
Protected methodDeleteInfo
Deletes the object to the database.
Protected methodDeleteObjectFromHashtables
Deletes the object instance from the hashtables.
Protected methodStatic memberExecuteQuery(String, QueryDataParameters, String, String, Int32, String)
Executes query and returns result as a dataset.
Public methodStatic memberExecuteQuery(String, QueryDataParameters, String, String, Int32, String, Int32, Int32, Int32)
Executes query and returns result as a dataset.
Public methodGetBindingWhereCondition(String, Int32)
Gets the where condition to limit the objects to specific binding dependency. Use this method only for 2-keys bindings.
Public methodGetBindingWhereCondition(String, Object)
Gets the where condition to limit the objects to specific binding dependencies. Use this method for 3 and more-keys bindings.
Protected methodGetCacheDependency(DataSet, String, String)
Gets the cache dependency for the given object.
Protected methodGetCacheDependency(BaseInfo, String, String)
Gets the cache dependency for the given object.
Public methodStatic memberGetCount
Gets the number of items matching the given condition. Does not check the license when retrieving data.
Protected methodGetCountInternal
Gets the number of items matching the given parameters. Does not check the license when retrieving data.
Protected methodGetCurrentProvider
Gets the current provider instance
(Inherited from AbstractInfoProviderTProvider.)
Protected methodGetData(QueryDataParameters, String, String, Int32, String, Boolean, Int32)
Returns the data according to the set of input parameters.
Protected methodGetData(QueryDataParameters, String, String, Int32, String, Boolean, Int32, Int32, Int32, Int32)
Returns the data according to the set of input parameters.
Protected methodGetDataByColumnT
Returns the data according to the set of input parameters.
Protected methodGetDataByGuidColumn Obsolete.
Returns the data according to the set of input parameters.
Protected methodGetDataByIntColumn Obsolete.
Returns the data according to the set of input parameters.
Protected methodGetDataByStringColumn Obsolete.
Returns the data according to the set of input parameters.
Protected methodGetDeleteQuery
Gets the object query that deletes all items matching the query parameters
Protected methodGetDependencyCacheKeys(DataSet, String, String)
Gets the cache dependency keys for the given DataSet.
Protected methodGetDependencyCacheKeys(GeneralizedInfo, String, String)
Gets collection of dependency keys to be touched when modifying the current object.
Protected methodGetEmptyDataSet
Gets the empty data set to be filled by the data
Public methodStatic memberGetExistingIDs Obsolete.
Filters out all object IDs that do not exist in the database.
Protected methodGetExistingIDsInternal Obsolete.
Filters out all object IDs that do not exist in the database.
Protected methodGetFullNameDictionary
Creates new dictionary for caching the objects by full name
Protected methodGetFullNameWhereCondition
Gets the where condition that searches the object based on the given full name.
(Inherited from BaseAbstractInfoProvider.)
Protected methodGetGeneralObjectQuery
Gets an object query from the provider
(Overrides BaseAbstractInfoProviderGetGeneralObjectQuery(Boolean).)
Protected methodGetInfo(ActionTQuery)
Gets an instance of the first info object matching the specified condition.
Protected methodGetInfo(IWhereCondition)
Gets an instance of the first info object matching the specified condition.
Protected methodGetInfo(String, String)
Gets an instance of the first info object matching the specified condition.
Protected methodGetInfoByCodeName(String, Boolean)
Gets an instance of info object based on the given code name.
Protected methodGetInfoByCodeName(String, Int32, Boolean)
Gets an instance of info object based on the given code name.
Protected methodGetInfoByCodeName(String, Int32, Boolean, Boolean)
Gets an instance of info object based on the given code name.
Protected methodGetInfoByCodeName(String, Int32, Int32, Boolean)
Gets an instance of info object based on the given code name.
Protected methodGetInfoByColumnT
Gets an instance of info object based on the column value.
Protected methodGetInfoByFullName
Gets an instance of info object based on the given full name.
Protected methodGetInfoByGuid(Guid, Boolean)
Gets an instance of info object based on the given GUID.
Protected methodGetInfoByGuid(Guid, Int32, Boolean)
Gets an instance of info object based on the GUID.
Protected methodGetInfoById
Gets an instance of info object based on ID.
Protected methodGetInfoByIntColumn Obsolete.
Gets an instance of info object based on the integer column value.
Protected methodGetInfoByStringColumn Obsolete.
Gets an instance of info object based on the string column value.
Protected methodGetInfosByIds
Gets the list of info objects by their IDs.
Protected methodGetObjectQuery
Gets the object query for the provider
Protected methodGetObjectQueryInternal
Gets the object query for the provider
Public methodGetParentWhereCondition
Gets the where condition to limit the objects to specific parent.
Protected methodGetSingleObject
Gets the object query for the provider
Public methodGetSiteWhereCondition
Gets the where condition to limit the objects to specific site.
Protected methodGetTypeInfo
Gets the type info for this provider
(Inherited from BaseAbstractInfoProvider.)
Protected methodStatic memberCheckObject
Checks if the given info object is not null. Throws an exception if it is.
Public methodCheckUniqueCodeName
Checks if the object has unique code name. Returns true if the object has unique code name.
Public methodCheckUniqueValues
Checks if a record with the same column values already exists in the database. Returns true if the set of values is unique.
Protected methodInit
Initializes the provider with the given type info and hashtable settings
Protected methodInitHashtables Obsolete.
Initializes the hashtable settings
Protected methodInitHashtableSettings
Initializes the HashtableSettings based on typeInfo and using settings as default values.
(Inherited from BaseAbstractInfoProvider.)
Protected methodInitTypeInfoAndRegister
Initializes the provider variables.
(Inherited from BaseAbstractInfoProvider.)
Protected methodInvalidate
Sets this provider as invalid
(Inherited from AbstractProvider.)
Protected methodLoadAllInfos
Loads all infos to the hashtable
Protected methodLoadInfos
Loads all objects from the database to memory.
Protected methodStatic memberNewInfo
Returns new info object.
Public methodNewTransaction Obsolete.
Creates a new transaction over this provider.
Public methodProcessWebFarmTask
Runs the processing of specific web farm task for current provider
(Inherited from BaseAbstractInfoProvider.)
Public methodRefreshObjectsCounts
Updates all counts for all sub-objects.
(Inherited from BaseAbstractInfoProvider.)
Protected methodRegister
Registers current provider in providers collection
(Inherited from AbstractProvider.)
Protected methodRegisterObjectInHashtables
Registers the object instance within the hashtables.
Protected methodRemoveOriginalCodeNameFromHashtable
Removes the original object code name from the hashtable
Public methodResetToDefault
Resets the provider to default implementation
(Inherited from AbstractInfoProviderTProvider.)
Public methodSetAsDefaultProvider
Sets this provider instance as the default provider
(Inherited from AbstractInfoProviderTProvider.)
Protected methodSetInfo
Inserts or Updates the object to the database.
Public methodSortAlphabetically
Sorts the object alphabetically.
Protected methodTouchCacheDependencies
Touches the cache dependencies of the given object.
Protected methodUpdateData(String, QueryDataParameters, String)
Updates the data in the database based on the given where condition.
Protected methodUpdateData(IWhereCondition, IEnumerableKeyValuePairString, Object, Boolean)
Updates the data in the database based on the given where condition.
Protected methodUpdateObjectInHashtables
Updates the object instance in the hashtables. Update is different than RegisterObjectInHashtables(TInfo), because it logs task about changing object.
Public methodUseSource(TInfo) Obsolete.
Sets the provider to use given data as data source
Public methodUseSource(DataQuerySource) Obsolete.
Sets the provider to use given data as data source
(Inherited from BaseAbstractInfoProvider.)
Public methodValidateCodeName
Validates the object code name. Returns true if the code name is valid.
Top
See Also