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: 9.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
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 propertyStoreEmptyValuesInHashtables
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 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 methodBulkInsertInfos(IEnumerableTInfo)
Bulk inserts the given list of info objects
Public methodBulkInsertInfos(IEnumerableBaseInfo)
Bulk inserts the given list of info objects
(Overrides BaseAbstractInfoProviderBulkInsertInfos(IEnumerableBaseInfo).)
Protected methodClearHashtables
Clear hashtables.
(Overrides AbstractProviderClearHashtables(Boolean).)
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(ActionTQuery)
Deletes the data in the database based on the given where condition.
Protected methodDeleteData(String)
Deletes the data in the database based on the given where condition.
Protected methodDeleteData(IWhereCondition)
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 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
Returns the data according to the set of input parameters.
Protected methodGetDataByIntColumn
Returns the data according to the set of input parameters.
Protected methodGetDataByStringColumn
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 the cache dependency keys for the given object.
Protected methodGetEmptyDataSet
Gets the empty data set to be filled by the data
Public methodStatic memberGetExistingIDs
Filters out all object IDs that do not exist in the database.
Protected methodGetExistingIDsInternal
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
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)
Gets an instance of info object based on the given code name.
Protected methodGetInfoByCodeName(String, Boolean)
Gets an instance of info object based on the given code name.
Protected methodGetInfoByCodeName(String, Int32)
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, Int32)
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 methodGetInfoByCodeNameFromDB
Gets an instance of info object based on the given code name from database
Protected methodGetInfoByFullName(String)
Gets an instance of info object based on the given full name.
Protected methodGetInfoByFullName(String, Boolean)
Gets an instance of info object based on the given full name.
Protected methodGetInfoByFullNameInternal
Gets the info by its full name from the database
Protected methodGetInfoByGuid(Guid)
Gets an instance of info object based on the GUID.
Protected methodGetInfoByGuid(Guid, Boolean)
Gets an instance of info object based on the given code name.
Protected methodGetInfoByGuid(Guid, Int32)
Gets an instance of info object based on the GUID.
Protected methodGetInfoByGuid(Guid, Int32, Boolean)
Gets an instance of info object based on the GUID.
Protected methodGetInfoByGuidColumn
Gets an instance of info object based on the string column value.
Protected methodGetInfoByGuidFromDB
Gets an instance of info object based on the given GUID from database
Protected methodGetInfoById(Int32)
Gets an instance of info object based on ID.
Protected methodGetInfoById(Int32, Boolean)
Gets an instance of info object based on ID.
Protected methodGetInfoByIntColumn
Gets an instance of info object based on the integer column value.
Protected methodGetInfoByStringColumn
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(Int32)
Gets the where condition to limit the objects to specific site.
Public methodGetSiteWhereCondition(Int32, Boolean)
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 variables.
(Inherited from BaseAbstractInfoProvider.)
Protected methodInitHashtables
Initializes the hashtable settings
Protected methodInvalidate
Sets this provider as invalid
(Inherited from AbstractProvider.)
Protected methodLoadAllInfos
Loads all infos to the hashtable
Protected methodLoadGeneration
Loads the specified generation of the objects.
Protected methodLoadInfos
Loads all objects from the database to memory.
Protected methodLoadObjectsToHashtables
Loads the objects from a DataSet to the hashtables
Protected methodStatic memberNewInfo
Returns new info object.
Public methodNewTransaction
Creates a new transaction over this provider
Public methodProcessWebFarmTask
Runs the processing of specific web farm task for current provider
(Inherited from BaseAbstractInfoProvider.)
Protected methodRecalculateData
Recalculates the value in the given column using the coefficient.
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
Protected methodReplaceData Obsolete.
Replaces the data in the given columns.
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. Updates is different than register, because it logs task about changing object.
Public methodUseSource(TInfo)
Sets the provider to use given data as data source
Public methodUseSource(DataQuerySource)
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