diff --git a/Users/bin/Debug/Common.dll b/Users/bin/Debug/Common.dll deleted file mode 100644 index b25361b65..000000000 Binary files a/Users/bin/Debug/Common.dll and /dev/null differ diff --git a/Users/bin/Debug/Common.pdb b/Users/bin/Debug/Common.pdb deleted file mode 100644 index ebfb4ad74..000000000 Binary files a/Users/bin/Debug/Common.pdb and /dev/null differ diff --git a/Users/bin/Debug/FluentNHibernate.dll b/Users/bin/Debug/FluentNHibernate.dll deleted file mode 100644 index c8f03b91c..000000000 Binary files a/Users/bin/Debug/FluentNHibernate.dll and /dev/null differ diff --git a/Users/bin/Debug/FluentNHibernate.pdb b/Users/bin/Debug/FluentNHibernate.pdb deleted file mode 100644 index f8fc3e94f..000000000 Binary files a/Users/bin/Debug/FluentNHibernate.pdb and /dev/null differ diff --git a/Users/bin/Debug/FluentNHibernate.xml b/Users/bin/Debug/FluentNHibernate.xml deleted file mode 100644 index 8bfeb2dd8..000000000 --- a/Users/bin/Debug/FluentNHibernate.xml +++ /dev/null @@ -1,5850 +0,0 @@ - - - - FluentNHibernate - - - - - Built-in alteration for altering an AutoPersistenceModel with instance of IAutoMappingOverride<T>. - - - - - Provides a mechanism for altering an AutoPersistenceModel prior to - the generation of mappings. - - - - - Alter the model - - AutoPersistenceModel instance to alter - - - - Constructor for AutoMappingOverrideAlteration. - - Assembly to load overrides from. - - - - Alter the model - - - Finds all types in the assembly (passed in the constructor) that implement IAutoMappingOverride<T>, then - creates an AutoMapping<T> and applies the override to it. - - AutoPersistenceModel instance to alter - - - - A mapping override for an auto mapped entity. - - Entity who's auto-mapping you're overriding - - - - Alter the automapping for this type - - Automapping - - - - Facade over an assembly for retrieving type instances. - - - - - A source for Type instances, acts as a facade for an Assembly or as an alternative Type provider. - - - - - Called when a member is mapped by a builder method. - - Member being mapped. - - - - Create a property mapping. - - Property to map - - Map(x => x.Name); - - - - - Create a property mapping. - - Property to map - Property column name - - Map(x => x.Name, "person_name"); - - - - - Create a reference to another entity. In database terms, this is a many-to-one - relationship. - - Other entity - Property on the current entity - - References(x => x.Company); - - - - - Create a reference to another entity. In database terms, this is a many-to-one - relationship. - - Other entity - Property on the current entity - Column name - - References(x => x.Company, "company_id"); - - - - - Create a reference to another entity. In database terms, this is a many-to-one - relationship. - - Other entity - Property on the current entity - - References(x => x.Company, "company_id"); - - - - - Create a reference to another entity. In database terms, this is a many-to-one - relationship. - - Other entity - Property on the current entity - Column name - - References(x => x.Company, "company_id"); - - - - - Create a reference to any other entity. This is an "any" polymorphic relationship. - - Other entity to reference - Property - - - - Create a reference to another entity based exclusively on the primary-key values. - This is sometimes called a one-to-one relationship, in database terms. Generally - you should use - whenever possible. - - Other entity - Property - - HasOne(x => x.ExtendedInfo); - - - - - Create a reference to another entity based exclusively on the primary-key values. - This is sometimes called a one-to-one relationship, in database terms. Generally - you should use - whenever possible. - - Other entity - Property - - HasOne(x => x.ExtendedInfo); - - - - - Create a dynamic component mapping. This is a dictionary that represents - a limited number of columns in the database. - - Property containing component - Component setup action - - DynamicComponent(x => x.Data, comp => - { - comp.Map(x => (int)x["age"]); - }); - - - - - Creates a component reference. This is a place-holder for a component that is defined externally with a - ; the mapping defined in said will be merged - with any options you specify from this call. - - Component type - Property exposing the component - Component reference builder - - - - Maps a component - - Type of component - Component property - Component mapping - - Component(x => x.Address, comp => - { - comp.Map(x => x.Street); - comp.Map(x => x.City); - }); - - - - - Maps a component - - Type of component - Component property - Component mapping - - Component(x => x.Address, comp => - { - comp.Map(x => x.Street); - comp.Map(x => x.City); - }); - - - - - Allows the user to add a custom component mapping to the class mapping. - Note: not a fluent method. - - - In some cases, our users need a way to add an instance of their own implementation of IComponentMappingProvider. - For an example of where this might be necessary, see: http://codebetter.com/blogs/jeremy.miller/archive/2010/02/16/our-extension-properties-story.aspx - - - - - Maps a collection of entities as a one-to-many - - Child entity type - Collection property - - HasMany(x => x.Locations); - - - - - Maps a collection of entities as a one-to-many - - Child entity type - Collection property - - HasMany(x => x.Locations); - - - - - Maps a collection of entities as a many-to-many - - Child entity type - Collection property - - HasManyToMany(x => x.Locations); - - - - - Maps a collection of entities as a many-to-many - - Child entity type - Collection property - - HasManyToMany(x => x.Locations); - - - - - Specify an insert stored procedure - - Stored procedure call - - - - Specify an update stored procedure - - Stored procedure call - - - - Specify an delete stored procedure - - Stored procedure call - - - - Specify an delete all stored procedure - - Stored procedure call - - - - Specifies an entity-name. - - See http://nhforge.org/blogs/nhibernate/archive/2008/10/21/entity-name-in-action-a-strongly-typed-entity.aspx - - - - Inverts the next boolean - - - - - Maps to the Join element in NH 2.0 - - - - - - Specify the key column name - - Column name - - - - Specify the key column name - - Column names - - - - Specify the schema - - Schema name - - - - Inverse the ownership of this relationship - - - - - Specify this relationship as optional - - - - - Specify the catalog - - Catalog - - - - Specify a subselect for fetching this join - - Query - - - - Specify the table name - - Table name - - - - Specify the fetching strategy - - - - - Invert the next boolean operation - - - - - Starting point for automapping your entities. - - - - - Automatically map classes in the assembly that contains . - - Class in the assembly you want to map - - - - Automatically map classes in the assembly that contains . - - Class in the assembly you want to map - Automapping configuration - - - - Automatically map the classes in . - - Assembly containing the classes to map - - - - Automatically map the classes in . - - Assembly containing the classes to map - Automapping configuration - - - - Automatically map the classes in each assembly supplied. - - Assemblies containing classes to map - - - - Automatically map the classes in each assembly supplied. - - Automapping configuration - Assemblies containing classes to map - - - - Automatically map the classes in each assembly supplied. - - Automapping configuration - Assemblies containing classes to map - - - - Automatically map the classes exposed through the supplied . - - containing classes to map - - - - Automatically map the classes exposed through the supplied . - - containing classes to map - Automapping configuration - - - - Automatically map the classes exposed through the supplied . - - containing classes to map - Criteria for selecting a subset of the types in the assembly for mapping - - - - Automatically map the classes in . - - Assembly containing the classes to map - Criteria for selecting a subset of the types in the assembly for mapping - - - - Automatically map classes in the assembly that contains . - - Class in the assembly you want to map - Criteria for selecting a subset of the types in the assembly for mapping - - - - Defines a mapping for an entity. Derive from this class to create a mapping, - and use the constructor to control how your entity is persisted. - - - public class PersonMap : ClassMap<Person> - { - public PersonMap() - { - Id(x => x.PersonId); - Map(x => x.Name); - Map(x => x.Age); - } - } - - Entity type to map - - - - Specify the identifier for this entity. - - Identity property - - Id(x => x.PersonId); - - - - - Specify the identifier for this entity. - - Identity property - Column name - - Id(x => x.PersonId, "id"); - - - - - Create an Id that doesn't have a corresponding property in - the domain object, or a column in the database. This is mainly - for use with read-only access and/or views. Defaults to an int - identity with an "increment" generator. - - - - - Create an Id that doesn't have a corresponding property in - the domain object, or a column in the database. This is mainly - for use with read-only access and/or views. - - Type of the id - - - - Create an Id that doesn't have a corresponding property in - the domain object. - - Type of the id - Name and column name of the id - - - - Create a natural identity. This is a secondary identifier - that has "business meaning" moreso than the primary key. - - - NaturalId() - .Property(x => x.Name); - - - - - Create a composite identity. This is an identity composed of multiple - columns. - Note: Prefer using a surrogate key over a composite key whenever possible. - - - CompositeId() - .KeyProperty(x => x.FirstName) - .KeyProperty(x => x.LastName); - - - - - Create a composite identity represented by an identity class. This is an - identity composed of multiple columns. - Note: Prefer using a surrogate key over a composite key whenever possible. - - Composite id property - - CompositeId(x => x.Id) - .KeyProperty(x => x.FirstName) - .KeyProperty(x => x.LastName); - - - - - Specifies that this class should be versioned/timestamped using the - given property. - - Version/timestamp property - - Version(x => x.Timestamp); - - - - - Specify that this entity should use a discriminator with it's subclasses. - This is a mapping strategy called table-per-inheritance-hierarchy; where all - subclasses are stored in the same table, differenciated by a discriminator - column value. - - Type of the discriminator column - Discriminator column name - Default discriminator value - - - - Specify that this entity should use a discriminator with it's subclasses. - This is a mapping strategy called table-per-inheritance-hierarchy; where all - subclasses are stored in the same table, differenciated by a discriminator - column value. - - Type of the discriminator column - Discriminator column name - - - - Specify that this entity should use a discriminator with it's subclasses. - This is a mapping strategy called table-per-inheritance-hierarchy; where all - subclasses are stored in the same table, differenciated by a discriminator - column value. - - Discriminator column name - - - - Specifies that any subclasses of this entity should be treated as union-subclass - mappings. Don't use this in combination with a discriminator, as they are mutually - exclusive. - - - - - Sets the schema for this class. - - Schema name - - - - Sets the table for the class. - - Table name - - - - Sets this entity to be lazy-loaded (overrides the default lazy load configuration). - - - - - Links this entity to another table, to create a composite entity from two or - more tables. - - Joined table name - Joined table mapping - - Join("another_table", join => - { - join.Map(x => x.Name); - join.Map(x => x.Age); - }); - - - - - Imports an existing type for use in the mapping. - - Type to import. - - - - Set the mutability of this class, sets the mutable attribute. - - - - - Sets this entity to be dynamic update - - - - - Sets this entity to be dynamic insert - - - - - Sets the query batch size for this entity. - - Batch size - - - - Specifies a check constraint - - Constraint name - - - - Specifies a persister to be used with this entity - - Persister type - - - - Specifies a persister to be used with this entity - - Persister type - - - - Specifies a persister to be used with this entity - - Persister type - - - - Specifies a proxy class for this entity. - - Proxy type - - - - Specifies a proxy class for this entity. - - Proxy type - - - - Specifies a proxy class for this entity. - - Proxy type - - - - Specifies that a select should be performed before updating - this entity - - - - - Defines a SQL 'where' clause used when retrieving objects of this type. - - - - - Sets the SQL statement used in subselect fetching. - - Subselect SQL Query - - - - Specifies an entity-name. - - See http://nhforge.org/blogs/nhibernate/archive/2008/10/21/entity-name-in-action-a-strongly-typed-entity.aspx - - - - Applies a filter to this entity given its name. - - The filter's name - The condition to apply - - - - Applies a filter to this entity given its name. - - The filter's name - - - - Applies a named filter to this entity. - - The condition to apply - - The type of a implementation - defining the filter to apply. - - - - - Applies a named filter to this entity. - - - The type of a implementation - defining the filter to apply. - - - - - Configures the tuplizer for this entity. The tuplizer defines how to transform - a Property-Value to its persistent representation, and viceversa a Column-Value - to its in-memory representation, and the EntityMode defines which tuplizer is in use. - - Tuplizer entity-mode - Tuplizer type - - - - Specify the caching for this entity. - - - Cache.ReadWrite(); - - - - - Specify settings for the container/hibernate-mapping for this class. - Note: Avoid using this, if possible prefer using conventions. - - - HibernateMapping.Schema("dto"); - - - - - Inverts the next boolean option - - - - - Sets the optimistic locking strategy - - - - - Sets the polymorphism behaviour - - - - - Sets the schema action behaviour - - - - - Flags a type as already mapped, stop it from being auto-mapped. - - - - - Creates an instance of an IAutoMappingAlteration from a type instance, then adds it to the alterations collection. - - Type of an IAutoMappingAlteration - - - - Creates an instance of an IAutoMappingAlteration from a generic type parameter, then adds it to the alterations collection. - - Type of an IAutoMappingAlteration - Container - - - - Adds an alteration - - Alteration to add - Container - - - - Adds all alterations from an assembly - - Assembly to search - Container - - - - Adds all alterations from an assembly that contains T. - - Type who's assembly to search - Container - - - - Apply alterations to an AutoPersisteceModel - - AutoPersistenceModel instance to apply alterations to - - - - Determines whether a member is to be automapped. - - - - - Determines whether a member is the identity of an entity. - - - - - Determines whether an abstract class is a layer supertype or part of a mapped inheritance hierarchy. - - - - - Specifies the value column used in a table of simple types. - - - - - Implement this interface to control how the automapper behaves. - Typically you're better off deriving from the - class, which is pre-configured with the default settings; you can then - just override specific methods that you'd like to alter. - - - - - Determines whether a type should be auto-mapped. - Override to restrict which types are mapped in your domain. - - - You normally want to override this method and restrict via something known, like - Namespace. - - - return type.Namespace.EndsWith("Domain"); - - Type to map - Should map type - - - - Determines whether a member of a type should be auto-mapped. - Override to restrict which members are considered in automapping. - - - You normally want to override this method to restrict which members will be - used for mapping. This method will be called for every property, field, and method - on your types. - - - // all writable public properties: - return member.IsProperty && member.IsPublic && member.CanWrite; - - Member to map - Should map member - - - - Determines whether a member is the id of an entity. - - - This method is called for each member that ShouldMap(Type) returns true for. - - Member - Member is id - - - - Gets the access strategy to be used for a read-only property. This method is - called for every setterless property and private-setter autoproperty in your - domain that has been accepted through . - - Member to get access strategy for - Access strategy - - - - Controls which side of a many-to-many relationship is considered the "parent". - - Left side of the relationship - Right side of the relationship - left or right - - - - Determines whether a type is a concrete, or instantiatable, base class. This - affects how the inheritance mappings are built, specifically that any types - this method returns true for will not be mapped as a subclass. - - Type - Base type is concrete? - - - - Specifies that a particular type should be mapped as a component rather than - an entity. - - Type - Type is a component? - - - - Gets the column prefix for a component. - - Member defining the component - Component column prefix - - - - Specifies whether a particular type is mapped with a discriminator. - This method will be called for every type that has already been - approved by . - - Type to check - Whether the type is to be discriminated - - - - Gets the column name of the discriminator. - - Type - Discriminator column name - - - - Specifies whether an abstract type is considered a Layer Supertype - (http://martinfowler.com/eaaCatalog/layerSupertype.html). Defaults to - true for all abstract classes. Override this method if you have an - abstract class that you want mapping as a regular entity. - - Abstract class type - Whether the type is a Layer Supertype - - - - Gets the value column for a collection of simple types. - - - This is the name of the <element> column. - - Collection property - Value column name - - - - Specifies whether the current member is a version property - - Candidate member - Is member a version - - - - Gets the steps that are executed to map a type. - - Collection of mapping steps - - - - Gets or sets whether validation of mappings is performed. - - - - - Specify alterations to be used with this AutoPersisteceModel - - Lambda to declare alterations - AutoPersistenceModel - - - - Use auto mapping overrides defined in the assembly of T. - - Type to get assembly from - AutoPersistenceModel - - - - Use auto mapping overrides defined in the assembly of T. - - Assembly to scan - AutoPersistenceModel - - - - Alter some of the configuration options that control how the automapper works. - Depreciated in favour of supplying your own IAutomappingConfiguration instance to AutoMap: . - Cannot be used in combination with a user-defined configuration. - - - - - Supply a criteria for which types will be mapped. - Cannot be used in combination with a user-defined configuration. - - Where clause - - - - Adds all entities from a specific assembly. - - Assembly to load from - - - - Adds all entities from the . - - to load from - - - - Override the mapping of a specific entity. - - This may affect subclasses, depending on the alterations you do. - Entity who's mapping to override - Lambda performing alterations - - - - Adds an IAutoMappingOverride reflectively - - Override type, expected to be an IAutoMappingOverride - - - - Override all mappings. - - Currently only supports ignoring properties on all entities. - Lambda performing alterations - - - - Ignore a base type. This removes it from any mapped inheritance hierarchies, good for non-abstract layer - supertypes. - - Type to ignore - - - - Ignore a base type. This removes it from any mapped inheritance hierarchies, good for non-abstract layer - supertypes. - - Type to ignore - - - - Explicitly includes a type to be used as part of a mapped inheritance hierarchy. - - - Abstract classes are probably what you'll be using this method with. Fluent NHibernate considers abstract - classes to be layer supertypes, so doesn't automatically map them as part of an inheritance hierarchy. You - can use this method to override that behavior for a specific type; otherwise you should consider using the - setting. - - Type to include - - - - Explicitly includes a type to be used as part of a mapped inheritance hierarchy. - - - Abstract classes are probably what you'll be using this method with. Fluent NHibernate considers abstract - classes to be layer supertypes, so doesn't automatically map them as part of an inheritance hierarchy. You - can use this method to override that behavior for a specific type; otherwise you should consider using the - setting. - - Type to include - - - - Alter convention discovery - - - - - Sets whether this subclass is lazy loaded - - - - - - Specifies an entity-name. - - See http://nhforge.org/blogs/nhibernate/archive/2008/10/21/entity-name-in-action-a-strongly-typed-entity.aspx - - - - Inverts the next boolean - - - - - Sets the database dialect. This shouldn't be necessary - if you've used one of the provided database configurations. - - Configuration builder - - - - Sets the database dialect. This shouldn't be necessary - if you've used one of the provided database configurations. - - Configuration builder - - - - Sets the default database schema - - Default schema name - Configuration builder - - - - Enables the outer-join option. - - Configuration builder - - - - Sets the max fetch depth. - - Max fetch depth - Configuration builder - - - - Enables the reflection optimizer. - - Configuration builder - - - - Sets any query stubstitutions that NHibernate should - perform. - - Substitutions - Configuration builder - - - - Enables the show SQL option. - - Configuration builder - - - - Enables the format SQL option. - - Configuration builder - - - - Sets the database provider. This shouldn't be necessary - if you're using one of the provided database configurations. - - Provider type - Configuration builder - - - - Sets the database provider. This shouldn't be necessary - if you're using one of the provided database configurations. - - Provider type - Configuration builder - - - - Specify the database driver. This isn't necessary - if you're using one of the provided database configurations. - - Driver type - Configuration builder - - - - Specify the database driver. This isn't necessary - if you're using one of the provided database configurations. - - Driver type - Configuration builder - - - - Configure the connection string - - - ConnectionString(x => - { - x.Server("db_server"); - x.Database("Products"); - }); - - Closure for building the connection string - Configuration builder - - - - Set the connection string. - - Connection string to use - Configuration builder - - - - Sets a raw property on the NHibernate configuration. Use this method - if there isn't a specific option available in the API. - - Setting key - Setting value - Configuration builder - - - - Sets the adonet.batch_size property. - - Batch size - Configuration - - - - Sets the connection isolation level. NHibernate setting: connection.isolation - - Isolation level - Configuration builder - - - - Sets the connection isolation level. NHibernate setting: connection.isolation - - Isolation level - Configuration builder - - - - Negates the next boolean option. - - - - - Initializes a new instance of the class using the - Oracle Data Provider (Oracle.DataAccess) library specifying the Oracle 9i dialect. - The Oracle.DataAccess library must be available to the calling application/library. - - - - - Initializes a new instance of the class using the - Oracle Data Provider (Oracle.DataAccess) library specifying the Oracle 10g dialect. - The Oracle.DataAccess library must be available to the calling application/library. - - - - - Provides types for mapping from multiple assemblies - - - - - Basic convention interface. Don't use directly. - - Inspector instance for use in retrieving values and setting expectations - Apply instance - - - - Ignore - this is used for generic restrictions only - - - - - Apply changes to the target - - - - - Whether this convention will be applied to the target. - - Instace that could be supplied - Apply on this target? - - - - Represents a string identifier for the model instance, used in conventions for a lazy - shortcut. - - e.g. for a ColumnMapping the StringIdentifierForModel would be the Name attribute, - this allows the user to find any columns with the matching name. - - - - - Diagnostic logging configuration - - - - - Conditionally enable logging - - Enable logging - - - - Enable logging - - - - - Disable logging - - - - - Register a logging listener - - Listener - - - - Register a default Console.Write listener - - - - - - Register a Console.Write listener with a custom result formatter - - Result formatter - - - - Register a default file output listener - - Output path - - - - Register a file output listener with a custom result formatter - - Result formatter - Output path - - - - DB2 Data Server/Client supports Informix 11.50+ with Informix syntax - - - - - Base class for attribute based conventions. Create a subclass of this to supply your own - attribute based conventions. - - Attribute identifier - - - - Apply changes to a property with an attribute matching T. - - Instance of attribute found on property. - Property with attribute - - - - Convention for identities, implement this interface to apply changes to - identity mappings. - - - - - Version convention, implement this interface to apply changes to version mappings. - - - - - Property convention, implement this interface to apply changes to - property mappings. - - - - - Convention for a component mapping. Implement this interface to - apply changes to components. - - - - - Convention for dynamic components. Implement this member to apply changes - to dynamic components. - - - - - Reference convention, implement this interface to apply changes to Reference/many-to-one - relationships. - - - - - HasOne convention, used for applying changes to one-to-one relationships. - - - - - Convention for the hibernate-mapping container for a class, this can be used to - set some class-wide settings such as lazy-load and access strategies. - - - - - Joined subclass convention, implement this interface to alter joined-subclass mappings. - - - - - Join convention, implement this interface to alter join mappings. - - - - - Convention for a single class mapping. Implement this interface to apply - changes to class mappings. - - - - - Subclass convention, implement this interface to alter subclass mappings. - - - - - Apply changes to the target - - - - - Apply changes to the target - - - - - Apply changes to the target - - - - - Apply changes to the target - - - - - Apply changes to the target - - - - - Represents a string identifier for the model instance, used in conventions for a lazy - shortcut. - - e.g. for a ColumnMapping the StringIdentifierForModel would be the Name attribute, - this allows the user to find any columns with the matching name. - - - - - Gets the requested value off the first column, as all columns are (currently) created equal - - - - - - - Applies to the joining table for this many-to-many. - - - - - Applies to the joining table for this many-to-many. - - - - - generates identifiers of any integral type that are unique only when no other - process is inserting data into the same table. Do not use in a cluster. - - - - - - generates identifiers of any integral type that are unique only when no other - process is inserting data into the same table. Do not use in a cluster. - - Params configuration - - - - supports identity columns in DB2, MySQL, MS SQL Server and Sybase. - The identifier returned by the database is converted to the property type using - Convert.ChangeType. Any integral property type is thus supported. - - - - - - supports identity columns in DB2, MySQL, MS SQL Server and Sybase. - The identifier returned by the database is converted to the property type using - Convert.ChangeType. Any integral property type is thus supported. - - Params configuration - - - - uses a sequence in DB2, PostgreSQL, Oracle or a generator in Firebird. - The identifier returned by the database is converted to the property type - using Convert.ChangeType. Any integral property type is thus supported. - - - - - - - uses a sequence in DB2, PostgreSQL, Oracle or a generator in Firebird. - The identifier returned by the database is converted to the property type - using Convert.ChangeType. Any integral property type is thus supported. - - - Params configuration - - - - uses a hi/lo algorithm to efficiently generate identifiers of any integral type, - given a table and column (by default hibernate_unique_key and next_hi respectively) - as a source of hi values. The hi/lo algorithm generates identifiers that are unique - only for a particular database. Do not use this generator with a user-supplied connection. - requires a "special" database table to hold the next available "hi" value - - The table. - The column. - The max lo. - The where. - - - - uses a hi/lo algorithm to efficiently generate identifiers of any integral type, - given a table and column (by default hibernate_unique_key and next_hi respectively) - as a source of hi values. The hi/lo algorithm generates identifiers that are unique - only for a particular database. Do not use this generator with a user-supplied connection. - requires a "special" database table to hold the next available "hi" value - - - - - - - - - uses a hi/lo algorithm to efficiently generate identifiers of any integral type, - given a table and column (by default hibernate_unique_key and next_hi respectively) - as a source of hi values. The hi/lo algorithm generates identifiers that are unique - only for a particular database. Do not use this generator with a user-supplied connection. - requires a "special" database table to hold the next available "hi" value - - - - - Params configuration - - - - uses a hi/lo algorithm to efficiently generate identifiers of any integral type, - given a table and column (by default hibernate_unique_key and next_hi respectively) - as a source of hi values. The hi/lo algorithm generates identifiers that are unique - only for a particular database. Do not use this generator with a user-supplied connection. - requires a "special" database table to hold the next available "hi" value - - - - - - - uses a hi/lo algorithm to efficiently generate identifiers of any integral type, - given a table and column (by default hibernate_unique_key and next_hi respectively) - as a source of hi values. The hi/lo algorithm generates identifiers that are unique - only for a particular database. Do not use this generator with a user-supplied connection. - requires a "special" database table to hold the next available "hi" value - - - Params configuration - - - - uses an Oracle-style sequence (where supported) - - - - - - - - uses an Oracle-style sequence (where supported) - - - - Params configuration - - - - uses System.Guid and its ToString(string format) method to generate identifiers - of type string. The length of the string returned depends on the configured format. - - http://msdn.microsoft.com/en-us/library/97af8hh4.aspx - - - - - uses System.Guid and its ToString(string format) method to generate identifiers - of type string. The length of the string returned depends on the configured format. - - http://msdn.microsoft.com/en-us/library/97af8hh4.aspx - Params configuration - - - - uses a new System.Guid to create a byte[] that is converted to a string. - - - - - - uses a new System.Guid to create a byte[] that is converted to a string. - - Params configuration - - - - uses a new System.Guid as the identifier. - - - - - - uses a new System.Guid as the identifier. - - Params configuration - - - - Recommended for Guid identifiers! - uses the algorithm to generate a new System.Guid described by Jimmy Nilsson - in the article http://www.informit.com/articles/article.asp?p=25862. - - - - - - Recommended for Guid identifiers! - uses the algorithm to generate a new System.Guid described by Jimmy Nilsson - in the article http://www.informit.com/articles/article.asp?p=25862. - - Params configuration - - - - Generator that uses the RDBMS native function to generate a GUID. - The behavior is similar to the “sequence” generator. When a new - object is saved NH run two queries: the first to retrieve the GUID - value and the second to insert the entity using the Guid retrieved - from the RDBMS. Your entity Id must be System.Guid and the SQLType - will depend on the dialect (RAW(16) in Oracle, UniqueIdentifier in - MsSQL for example). - - - - - Generator that uses the RDBMS native function to generate a GUID. - The behavior is similar to the “sequence” generator. When a new - object is saved NH run two queries: the first to retrieve the GUID - value and the second to insert the entity using the Guid retrieved - from the RDBMS. Your entity Id must be System.Guid and the SQLType - will depend on the dialect (RAW(16) in Oracle, UniqueIdentifier in - MsSQL for example). - - - GuidNative(x => - { - x.AddParam("key", "value"); - }); - - Parameter builder closure - - - - A deviation of the trigger-identity. This generator works - together with the feature. - The difference with trigger-identity is that the POID value - is retrieved by a SELECT using the natural-id fields as filter. - - - - - A deviation of the trigger-identity. This generator works - together with the feature. - The difference with trigger-identity is that the POID value - is retrieved by a SELECT using the natural-id fields as filter. - - - Select(x => - { - x.AddParam("key", "value"); - }); - - Parameter builder closure - - - - Based on sequence but works like an identity. The POID - value is retrieved with an INSERT query. Your entity Id must - be an integral type. - "hibernate_sequence" is the default name for the sequence, unless - another is provided. - - - - - Based on sequence but works like an identity. The POID - value is retrieved with an INSERT query. Your entity Id must - be an integral type. - "hibernate_sequence" is the default name for the sequence, unless - another is provided. - - Custom sequence name - - - - Based on sequence but works like an identity. The POID - value is retrieved with an INSERT query. Your entity Id must - be an integral type. - "hibernate_sequence" is the default name for the sequence, unless - another is provided. - - Parameter builder closure - - - - Based on sequence but works like an identity. The POID - value is retrieved with an INSERT query. Your entity Id must - be an integral type. - "hibernate_sequence" is the default name for the sequence, unless - another is provided. - - Custom sequence name - Parameter builder closure - - - - trigger-identity is a NHibernate specific feature where the POID - is generated by the RDBMS with an INSERT query through a - BEFORE INSERT trigger. In this case you can use any supported type, - including a custom type, with the limitation of a single column usage. - - - - - trigger-identity is a NHibernate specific feature where the POID - is generated by the RDBMS with an INSERT query through a - BEFORE INSERT trigger. In this case you can use any supported type, - including a custom type, with the limitation of a single column usage. - - Parameter builder closure - - - - lets the application to assign an identifier to the object before Save() is called. - - - - - - lets the application to assign an identifier to the object before Save() is called. - - Params configuration - - - - picks identity, sequence or hilo depending upon the capabilities of the underlying database. - - - - - - picks identity, sequence or hilo depending upon the capabilities of the underlying database. - - Params configuration - - - - picks identity, sequence or hilo depending upon the capabilities of the underlying database. - - - - - picks identity, sequence or hilo depending upon the capabilities of the underlying database. - - - - - uses the identifier of another associated object. Usually used in conjunction with a one-to-one primary key association. - - - - - - - uses the identifier of another associated object. Usually used in conjunction with a one-to-one primary key association. - - - Params configuration - - - - Applies to the joining table for this many-to-many. - - - - - Applies to the joining table for this many-to-many. - - - - - Applies a filter to this relationship given its name. - - The filter's name - The condition to apply - - - - Applies a filter to this relationship given its name. - - The filter's name - - - - Applies a named filter to this relationship. - - The condition to apply - - The type of a implementation - defining the filter to apply. - - - - - Applies a named filter to this relationship. - - - The type of a implementation - defining the filter to apply. - - - - - Applies a filter to this entity given its name. - - The filter's name - The condition to apply - - - - Applies a filter to this entity given its name. - - The filter's name - - - - Applies a named filter to this entity. - - The condition to apply - - The type of a implementation - defining the filter to apply. - - - - - Applies a named filter to this entity. - - - The type of a implementation - defining the filter to apply. - - - - - Specify the lazy behaviour of this relationship. - - - Defaults to Proxy lazy-loading. Use the modifier to disable - lazy-loading, and use the - overload to specify alternative lazy strategies. - - - LazyLoad(); - Not.LazyLoad(); - - - - - Specify the lazy behaviour of this relationship. Cannot be used - with the modifier. - - Laziness strategy - - LazyLoad(Laziness.NoProxy); - - - - - Adds a column to the index if columns have not yet been specified - - The column name to add - - - - Adds a column to the index if columns have not yet been specified - - The column name to add - - - - Specify the lazy behaviour of this relationship. - - - Defaults to Proxy lazy-loading. Use the modifier to disable - lazy-loading, and use the - overload to specify alternative lazy strategies. - - - LazyLoad(); - Not.LazyLoad(); - - - - - Specify the lazy behaviour of this relationship. Cannot be used - with the modifier. - - Laziness strategy - - LazyLoad(Laziness.NoProxy); - - - - - Applies a filter to this relationship given its name. - - The filter's name - The condition to apply - - - - Applies a filter to this relationship given its name. - - The filter's name - - - - Applies a named filter to this relationship. - - The condition to apply - - The type of a implementation - defining the filter to apply. - - - - - Applies a named filter to this relationship. - - - The type of a implementation - defining the filter to apply. - - - - - (optional) Specifies the entity from which this subclass descends/extends. - - Type of the entity to extend - - - - (optional) Specifies the entity from which this subclass descends/extends. - - Type of the entity to extend - - - - Checks whether a collection contains an inspector identified by the string value. - - - - - - - - - Checks whether a collection contains an inspector identified by a predicate. - - - - - - - - - (optional) Specifies the entity from which this subclass descends/extends. - - Type of the entity to extend - - - - (optional) Specifies the entity from which this subclass descends/extends. - - Type of the entity to extend - - - - Base convention for specifying your own many-to-many table naming style. Implement - the abstract members defined by this class to control how your join tables are named - for uni and bi-directional many-to-many's. - - - - - Gets the name used for bi-directional many-to-many tables. Implement this member to control how - your join table is named for bi-directional relationships. - - - This method will be called once per bi-directional relationship; once one side of the relationship - has been saved, then the other side will assume that name aswell. - - Main collection - Inverse collection - Many-to-many table name - - - - Gets the name used for uni-directional many-to-many tables. Implement this member to control how - your join table is named for uni-directional relationships. - - Main collection - Many-to-many table name - - - - A component that is declared external to a class mapping. - - - - - Determines the lazy-loading strategy for a collection mapping. - - - - - Collection will be eager loaded (lazy=false). - - - - - Collection will lazy loaded (lazy=true). - - - - - collection will be extra lazy loaded (lazy=extra). - - - "Extra" lazy collections are mostly similar to lazy=true, except certain operations on the collection will not load the whol collection - but issue a smarter SQL statement. For example, invoking Count on an extra-lazy collection will issue a "SELECT COUNT(*)..." rather than selecting - and loading the whole collection of entities. - - - - - This bad boy is the entry point to the visitor - - - - - - offset added to index in column - - mutual exclusive with Type() - offset - - - - Specifies the column name for the index or key of the dictionary. - - Column name - - - - Specifies the type of the index/key column - - mutual exclusive with offset - Index type - - - - Specifies the type of the index/key column - - mutual exclusive with offset - Type - - - - Specifies the type of the index/key column - - mutual exclusive with offset - Type - - - - Laziness strategy for relationships - - - - - No lazy loading - - - - - Proxy-based lazy-loading - - - - - No proxy lazy loading - - - - - Defines a property to be used for this natural-id. - - A member access lambda expression for the property - The natural id part fluent interface - - - - Defines a property to be used for this natural-id with an explicit column name. - - A member access lambda expression for the property - The column name in the database to use for this natural id, or null to use the property name - The natural id part fluent interface - - - - Defines a reference to be used as a many-to-one key for this natural-id with an explicit column name. - - A member access lambda expression for the property - The natural ID part fluent interface - - - - Defines a reference to be used as a many-to-one key for this natural-id with an explicit column name. - - A member access lambda expression for the property - The column name in the database to use for this key, or null to use the property name - The natural id part fluent interface - - - - Specifies that this id is read-only - - This is the same as setting the mutable attribute to false - - - - Inverts the next boolean operation - - - - - This collection optimizes search for already mapped types in subclasses providers. Matters in models with huge inheritance trees. - - - - - Sets the tuplizer type. - - Type - - - - Sets the tuplizer type. - - Type - - - - Sets the tuplizer type. - - Type - - - - Sets the tuplizer mode - - Mode - - - - Specifies an entity-name. - - See http://nhforge.org/blogs/nhibernate/archive/2008/10/21/entity-name-in-action-a-strongly-typed-entity.aspx - - - Computes the Levenshtein Edit Distance between two enumerables. - The type of the items in the enumerables. - The first enumerable. - The second enumerable. - The edit distance. - - - - A reference to a component which is declared externally. Contains properties - that can't be declared externally (property name, for example) - - - - - Specify the column name - - Column name - - - - Specify the column length - - Column length - - - - Specify the nullability of the column - - - - - Specify the uniquness of the column - - - - - Specify the unique key constraint name - - Constraint name - - - - Specify the SQL type for the column - - SQL type - - - - Specify the index name - - Index name - - - - Inverts the next boolean - - - - - Defines a mapping for a component. Derive from this class to create a mapping, - and use the constructor to control how your component is persisted. - - - public class AddressMap : ComponentMap<Address> - { - public AddressMap() - { - Map(x => x.Street); - Map(x => x.City); - } - } - - Component type to map - - - - Specify a parent reference for this component - - Parent property - - ParentReference(x => x.Parent); - - - - - Specifies that this component is read-only - - - This is the same as calling both Not.Insert() and Not.Update() - - - - - Specifies that this component is insertable. - - - - - Specifies that this component is updatable - - - - - Specifies the uniqueness of this component - - - - - Specify that this component should be optimistically locked on access - - - - - Set the access and naming strategy for this component. - - - - - Invert the next boolean operation - - - - - Creates a component reference. This is a place-holder for a component that is defined externally with a - ; the mapping defined in said will be merged - with any options you specify from this call. - - Component type - Property exposing the component - Component reference builder - - - - The fluent-interface part for a external component reference. These are - components which have their bulk/body declared external to a class mapping - and are reusable. - - Component type - - - - Sets the prefix for any columns defined within the component. To refer to the property - that exposes this component use {property}. - - - // Entity using Address component - public class Person - { - public Address PostalAddress { get; set; } - } - - ColumnPrefix("{property}_") will result in any columns of Person.Address being prefixed with "PostalAddress_". - - Prefix for column names - - - - Maps to the Filter element in NH 2.0 - - - - - Specifies an entity-name. - - See http://nhforge.org/blogs/nhibernate/archive/2008/10/21/entity-name-in-action-a-strongly-typed-entity.aspx - - - - Inverts the next boolean - - - - - Defines how NHibernate will access the object for persisting/hydrating (Defaults to Property) - - - - - Implicit polymorphism - - - - - Explicit polymorphism - - - - - Takes a type that represents the level in the class/subclass-hiearchy that we're starting from, the parent, - this can be a class or subclass; also takes a list of subclass providers. The providers are then iterated - and added to a dictionary key'd by the types "distance" from the parentType; distance being the number of levels - between parentType and the subclass-type. - - By default if the Parent type is an interface the level will always be zero. At this time there is no check for - hierarchical interface inheritance. - - Starting point, parent type. - List of subclasses - Dictionary key'd by the distance from the parentType. - - - - The evalType starts out as the original subclass. The class hiearchy is only - walked if the subclass inherits from a class that is included in the subclassProviders. - - - - - - - - - The evalType is always one class higher in the hiearchy starting from the original subclass. The class - hiearchy is walked until the IsTopLevel (base class is Object) is met. The level is only incremented if - the subclass inherits from a class that is also in the subclassProviders. - - - - - - - - - Defines a mapping for an entity subclass. Derive from this class to create a mapping, - and use the constructor to control how your entity is persisted. - - - public class EmployeeMap : SubclassMap<Employee> - { - public EmployeeMap() - { - Map(x => x.Name); - Map(x => x.Age); - } - } - - Entity type to map - - - - (optional) Specifies that this subclass is abstract - - - - - Sets the dynamic insert behaviour - - - - - Sets the dynamic update behaviour - - - - - Specifies that this entity should be lazy loaded - - - - - Specify a proxy type for this entity - - Proxy type - - - - Specify a proxy type for this entity - - Proxy type - - - - Specify that a select should be performed before an update of this entity - - - - - Set the discriminator value, if this entity is in a table-per-class-hierarchy - mapping strategy. - - Discriminator value - - - - Sets the table name - - Table name - - - - Sets the schema - - Schema - - - - Specifies a check constraint - - Constraint name - - - - Adds a column to the key for this subclass, if used - in a table-per-subclass strategy. - - Column name - - - - Subselect query - - Subselect query - - - - Specifies a persister for this entity - - Persister type - - - - Specifies a persister for this entity - - Persister type - - - - Specifies a persister for this entity - - Persister type - - - - Set the query batch size - - Batch size - - - - Specifies an entity-name. - - See http://nhforge.org/blogs/nhibernate/archive/2008/10/21/entity-name-in-action-a-strongly-typed-entity.aspx - - - - Links this entity to another table, to create a composite entity from two or - more tables. This only works if you're in a table-per-inheritance-hierarchy - strategy. - - Joined table name - Joined table mapping - - Join("another_table", join => - { - join.Map(x => x.Name); - join.Map(x => x.Age); - }); - - - - - (optional) Specifies the entity from which this subclass descends/extends. - - Type of the entity to extend - - - - (optional) Specifies the entity from which this subclass descends/extends. - - Type of the entity to extend - - - - Inverts the next boolean setting - - - - - Container for automatic mappings - - - - - Add automatic mappings - - Lambda returning an auto mapping setup - Auto mappings configuration - - - - Add automatic mappings - - Auto mapping setup - Auto mappings configuration - - - - Sets the export location for generated mappings - - Path to folder for mappings - Auto mappings configuration - - - - Sets the text writer to write the generated mappings to. - - Fluent mappings configuration - - - - Applies any added mappings to the NHibernate Configuration - - NHibernate Configuration instance - - - - - Gets whether any mappings were added - - - - - Initializes a new instance of the class using the - MS Oracle Client (System.Data.OracleClient) library specifying the Oracle 9i dialect. - - - - - Initializes a new instance of the class using the - MS Oracle Client (System.Data.OracleClient) library specifying the Oracle 10g dialect. - This allows for ANSI join syntax. - - - - - Initializes a new instance of the class using the - Oracle Data Provider (Oracle.DataAccess) library specifying the Oracle 8i dialect. - The Oracle.DataAccess library must be available to the calling application/library. - - - - - Initializes a new instance of the class using the - Oracle Data Provider (Oracle.DataAccess) library specifying the Oracle 9i dialect. - The Oracle.DataAccess library must be available to the calling application/library. - - - - - Initializes a new instance of the class using the - Oracle Data Provider (Oracle.DataAccess) library specifying the Oracle 10g dialect. - The Oracle.DataAccess library must be available to the calling application/library. - This allows for ANSI join syntax. - - - - - Specifies the server to connect. This can be either the DNS name of the - server or the IP (as a string). - - The server. - - - - - Specifies the instance (database name) to use. This can be the short name or the - fully qualified name (Oracle service name). - - The instance. - - - - - Specifies the name of the user account accessing the database. - - The username. - - - - - Specifies the password of the user account accessing the database. - - The password. - - - - - Optional. Ports the specified port the oracle database is running on. This defaults to 1521. - - The port. - - - - - Enable or disable pooling connections for this data configuration. - - if set to true enable pooling. - - - - - Specifies the SQL statement cache size to use for this connection. - - Size of the cache. - - - - - Specifies, as a string, other Oracle options to pass to the connection. - - The other options. - - - - - Initializes a new instance of the class using the - Oracle Data Provider (Oracle.DataAccess) library specifying the Oracle 9i dialect. - The Oracle.DataAccess library must be available to the calling application/library. - - - - - Initializes a new instance of the class using the - Oracle Data Provider (Oracle.DataAccess) library specifying the Oracle 10g dialect. - The Oracle.DataAccess library must be available to the calling application/library. - - - - - The type of authentication to be used. Acceptable values: - - - SERVER - - - SERVER_ENCRYPT - - - DATA_ENCRYPT - - - KERBEROS - - - GSSPLUGIN - - - - - IfxDRDAConnectionStringBuilder object - - - - The name of the database within the server instance. - - - IfxSQLIConnectionStringBuilder object - - - - - - true - - host variable (:param) support enabled. - - - false (default) - - host variable support disabled. - - - - - IfxSQLIConnectionStringBuilder object - - - - Isolation level for the connection. Possible values: - - - ReadCommitted - - - ReadUncommitted - - - RepeatableRead - - - Serializable - - - Transaction - - - This keyword is only supported for applications participating in a - distributed transaction. - - - IfxDRDAConnectionStringBuilder object - - - - The maximum number of connections allowed in the pool. - - - IfxDRDAConnectionStringBuilder object - - - - The minimum number of connections allowed in the pool. Default value 0. - - - IfxDRDAConnectionStringBuilder object - - - - The password associated with the User ID. - - - IfxDRDAConnectionStringBuilder object - - - - When set to true, the IfxConnection object is drawn from - the appropriate pool, or if necessary, it is created and added - to the appropriate pool. Default value 'true'. - - - IfxDRDAConnectionStringBuilder object - - - - Server name with optional port number for direct connection using either - IPv4 notation ([:]]]>) or IPv6 notation. - - - IfxDRDAConnectionStringBuilder object - - - - The login account. - - - IfxDRDAConnectionStringBuilder object - - - - Other options: Connection Lifetime, Connection Reset, Connection Timeout, CurrentSchema, Enlist, - Interrupt, Persist Security Info, ResultArrayAsReturnValue, Security, TrustedContextSystemUserID, - TrustedContextSystemPassword - - - IfxDRDAConnectionStringBuilder object - - - - Client locale, default value is en_us.CP1252 (Windows) - - - IfxSQLIConnectionStringBuilder object - - - - The name of the database within the server instance. - - - IfxSQLIConnectionStringBuilder object - - - - The language locale of the database. Default value is en_US.8859-1 - - - IfxSQLIConnectionStringBuilder object - - - - When set to true or y for yes, any string within double - quotes (") is treated as an identifier, and any string within - single quotes (') is treated as a string literal. Default value 'y'. - - - IfxSQLIConnectionStringBuilder object - - - - The name or IP address of the machine on which the - Informix server is running. Required. - - - IfxSQLIConnectionStringBuilder object - - - - The maximum number of connections allowed in the pool. Default value 100. - - - IfxSQLIConnectionStringBuilder object - - - - The minimum number of connections allowed in the pool. Default value 0. - - - IfxSQLIConnectionStringBuilder object - - - - The password associated with the User ID. Required if the - client machine or user account is not trusted by the host. - Prohibited if a User ID is not given. - - - IfxSQLIConnectionStringBuilder object - - - - When set to true, the IfxConnection object is drawn from - the appropriate pool, or if necessary, it is created and added - to the appropriate pool. Default value 'true'. - - - IfxSQLIConnectionStringBuilder object - - - - The name or alias of the instance of the Informix server to - which to connect. Required. - - - IfxSQLIConnectionStringBuilder object - - - - The service name or port number through which the server - is listening for connection requests. - - - IfxSQLIConnectionStringBuilder object - - - - The login account. Required, unless the client machine is - trusted by the host machine. - - - IfxSQLIConnectionStringBuilder object - - - - Other options like: Connection Lifetime, Enlist, Exclusive, Optimize OpenFetchClose, - Fetch Buffer Size, Persist Security Info, Protocol, Single Threaded, Skip Parsing - - - IfxSQLIConnectionStringBuilder object - - - - Fluent configuration API for NHibernate - - - - - Configure diagnostic logging - - Diagnostic configuration - - - - Apply database settings - - Lambda returning database configuration - Fluent configuration - - - - Apply database settings - - Database configuration instance - Fluent configuration - - - - Configure caching. - - - Cache(x => - { - x.UseQueryCache(); - x.UseMinimalPuts(); - }); - - Closure for configuring caching - Configuration builder - - - - Sets the collectiontype.factory_class property. - NOTE: NHibernate 2.1 only - - factory class - Configuration - - - - Sets the collectiontype.factory_class property. - NOTE: NHibernate 2.1 only - - factory class - Configuration - - - - Sets the collectiontype.factory_class property. - NOTE: NHibernate 2.1 only - - factory class - Configuration - - - - Sets the proxyfactory.factory_class property. - NOTE: NHibernate 2.1 only - - factory class - Configuration - - - - Sets the proxyfactory.factory_class property. - NOTE: NHibernate 2.1 only - - factory class - Configuration - - - - Sets the proxyfactory.factory_class property. - NOTE: NHibernate 2.1 only - - factory class - Configuration - - - - Sets the current_session_context_class property. - - current session context class - Configuration - - - - Sets the current_session_context_class property. - - Implementation of ICurrentSessionContext to use - Configuration - - - - Apply mappings to NHibernate - - Lambda used to apply mappings - Fluent configuration - - - - Allows altering of the raw NHibernate Configuration object before creation - - Lambda used to alter Configuration - Fluent configuration - - - - Verify's the configuration and instructs NHibernate to build a SessionFactory. - - ISessionFactory from supplied settings. - - - - Verifies the configuration and populates the NHibernate Configuration instance. - - NHibernate Configuration instance - - - - Creates an exception based on the current state of the configuration. - - Inner exception - FluentConfigurationException with state - - - - Fluently configure NHibernate - - - - - Begin fluently configuring NHibernate - - Fluent Configuration - - - - Begin fluently configuring NHibernate - - Fluent Configuration - - - - Begin fluently configuring NHibernate - - Instance of an NHibernate Configuration - Fluent Configuration - - - - Begin fluently configuring NHibernate - - Instance of an NHibernate Configuration - Fluent Configuration - - - - Container for fluent mappings - - - - - Add all fluent mappings in the assembly that contains T. - - Type from the assembly - Fluent mappings configuration - - - - Add all fluent mappings in the assembly - - Assembly to add mappings from - Fluent mappings configuration - - - - Adds a single represented by the specified type. - - Fluent mappings configuration - - - - Adds a single represented by the specified type. - - The type. - Fluent mappings configuration - - - - Sets the export location for generated mappings - - Path to folder for mappings - Fluent mappings configuration - - - - Sets the text writer to write the generated mappings to. - - Fluent mappings configuration - - - - Applies any added mappings to the NHibernate Configuration - - PersistenceModel to alter - - - - Alter convention discovery - - - - - Gets whether any mappings were added - - - - - Container for Hbm mappings - - - - - Add explicit classes with Hbm mappings - - List of types to map - Hbm mappings configuration - - - - Add all Hbm mappings in the assembly that contains T. - - Type from the assembly - Hbm mappings configuration - - - - Add all Hbm mappings in the assembly - - Assembly to add mappings from - Hbm mappings configuration - - - - Applies any added mappings to the NHibernate Configuration - - NHibernate Configuration instance - - - - Gets whether any mappings were added - - - - - Fluent mapping configuration - - - - - Applies any mappings to the NHibernate Configuration - - NHibernate Configuration instance - - - - Fluent mappings - - - - - Automatic mapping configurations - - - - - Hbm mappings - - - - - Get whether any mappings of any kind were added - - - - - Convention finder - used to search through assemblies for types that implement a specific convention interface. - - - - - Add a source to be queried. - - Source to query - - - - Add an assembly to be queried. - - - All convention types must have a parameterless constructor, or a single parameter of . - - Assembly instance to query - - - - Adds all conventions found in the assembly that contains . - - - All convention types must have a parameterless constructor, or a single parameter of . - - - - - Add a single convention by type. - - - Type must have a parameterless constructor, or a single parameter of . - - Convention type - - - - Add a single convention by type. - - - Types must have a parameterless constructor, or a single parameter of . - - Type of convention - - - - Add an instance of a convention. - - - Useful for supplying conventions that require extra constructor parameters. - - Convention type - Instance of convention - - - - Find any conventions implementing T. - - Convention interface type - IEnumerable of T - - - - Default convention finder - doesn't do anything special. - - - - - Find any conventions implementing T. - - Convention interface type - IEnumerable of T - - - - Add an assembly to be queried. - - - All convention types must have a parameterless constructor, or a single parameter of IConventionFinder. - - Assembly instance to query - - - - Adds all conventions found in the assembly that contains T. - - - All convention types must have a parameterless constructor, or a single parameter of IConventionFinder. - - - - - Add a single convention by type. - - - Type must have a parameterless constructor, or a single parameter of IConventionFinder. - - Convention type - - - - Add a single convention by type. - - - Types must have a parameterless constructor, or a single parameter of . - - Type of convention - - - - Add an instance of a convention. - - - Useful for supplying conventions that require extra constructor parameters. - - Convention type - Instance of convention - - - - Indicates whether the current is equal to another . - - - true if the current object is equal to the parameter; otherwise, false. - - An Entity to compare with this object. - - - - Determines whether the specified is equal to the current . - - - true if the specified is equal to the current ; otherwise, false. - - The to compare with the current . - The parameter is null.2 - - - - Serves as a hash function for a Entity. - - - A hash code for the current . - - 2 - - - - Set which type this subclass extends. - Note: This doesn't actually get output into the XML, it's - instead used as a marker for the - to pair things up. - - - - - Represents the "Any" mapping in NHibernate. It is impossible to specify a foreign key constraint for this kind of association. For more information - please reference chapter 5.2.4 in the NHibernate online documentation - - - - - Sets the meta-type value for this any mapping. - - Meta type - - - - Sets the meta-type value for this any mapping. - - Meta type - - - - Sets the meta-type value for this any mapping. - - Meta type - - - - Defines how NHibernate will access the object for persisting/hydrating (Defaults to Property) - - - - - Cascade style (Defaults to none) - - - - - Access strategy mapping builder. - - - - - Access strategy mapping builder. - - - - - Sets the access-strategy to property. - - - - - Sets the access-strategy to field. - - - - - Sets the access-strategy to use the backing-field of an auto-property. - - - - - Sets the access-strategy to readonly. - - - - - Sets the access-strategy to field and the naming-strategy to camelcase (field.camelcase). - - - - - Sets the access-strategy to field and the naming-strategy to camelcase, with the specified prefix. - - Naming-strategy prefix - - - - Sets the access-strategy to field and the naming-strategy to lowercase. - - - - - Sets the access-strategy to field and the naming-strategy to lowercase, with the specified prefix. - - Naming-strategy prefix - - - - Sets the access-strategy to field and the naming-strategy to pascalcase, with the specified prefix. - - Naming-strategy prefix - - - - Sets the access-strategy to read-only property (nosetter) and the naming-strategy to camelcase. - - - - - Sets the access-strategy to read-only property (nosetter) and the naming-strategy to camelcase, with the specified prefix. - - Naming-strategy prefix - - - - Sets the access-strategy to read-only property (nosetter) and the naming-strategy to lowercase. - - - - - Sets the access-strategy to read-only property (nosetter) and the naming-strategy to lowercase. - - Naming-strategy prefix - - - - Sets the access-strategy to read-only property (nosetter) and the naming-strategy to pascalcase, with the specified prefix. - - Naming-strategy prefix - - - - Sets the access-strategy to use the type referenced. - - Assembly qualified name of the type to use as the access-strategy - - - - Sets the access-strategy to use the type referenced. - - Type to use as the access-strategy - - - - Sets the access-strategy to use the type referenced. - - Type to use as the access-strategy - - - - Force NHibernate to always select using the discriminator value, even when selecting all subclasses. This - can be useful when your table contains more discriminator values than you have classes (legacy). - - Sets the "force" attribute. - - - - Set this discriminator as read-only. Call this if your discriminator column is also part of a mapped composite identifier. - - Sets the "insert" attribute. - - - - An arbitrary SQL expression that is executed when a type has to be evaluated. Allows content-based discrimination. - - SQL expression - - - - Sets the precision for decimals - - Decimal precision - - - - Specifies the scale for decimals - - Decimal scale - - - - Specify the column length - - Column length - - - - Specify the nullability of this column - - - - - Specifies the uniqueness of this column - - - - - Specifies the unique key constraint name - - Constraint columns - - - - Specifies the index name - - Index name - - - - Specifies a check constraint name - - Constraint name - - - - Specifies the default value for the discriminator - - Default value - - - - Specifies a custom type for the discriminator - - - This is often used with - - Custom type - - - - Specifies a custom type for the discriminator - - - This is often used with - - Custom type - - - - Specifies a custom type for the discriminator - - - This is often used with - - Custom type - - - - Specifies a custom SQL type for the discriminator. - - Custom SQL type. - - - - Invert the next boolean operation - - - - - Pre-defined discriminator values - - - - - Null discriminator value - - - - - Non-null discriminator value - - - - - Specify the element column name - - Column name - - - - Specify the element type - - Element type - - - - Specify the element column length - - Column length - - - - Specify the element column formula - - Formula - - - - Specify the nullability of the column - - - - - Modify the columns for this element - - - - - Inverts the next boolean operation - - - - - Sets caching to read-write - - - - - Sets caching to non-strict read-write - - - - - Sets caching to read-only - - - - - Sets caching to transactional - - - - - Specifies a custom cache behaviour - - Custom behaviour - - - - Specifies the cache region - - - - - - Include all properties for caching - - - - - - Include only non-lazy properties for caching - - - - - Specify a custom property inclusion strategy - - Inclusion strategy - - - - Base class for user type conventions. Create a subclass of this to automatically - map all properties that the user type can be used against. Override Accept or - Apply to alter the behavior. - - IUserType implementation - - - - Base class for attribute based conventions. Create a subclass of this to supply your own - attribute based conventions. - - Attribute identifier - - - - Apply changes to a property with an attribute matching T. - - Instance of attribute found on property. - Property with attribute - - - - Cascade all actions - - - - - Cascade no actions - - - - - Cascade saves and updates - - - - - Cascade deletes - - - - - Cascade merges - - - - - Cascade on replication - - - - - Cascade refreshes - - - - - Cascade deletes orphans - - - - - Cascade evicts - - - - - Cascade locks - - - - - Cascade persists - - - - - Cascade all actions, deleting any orphaned records - - - - - Cascade deletes, deleting any orphaned records - - - - - Map a property - - Dictionary key - - Map("Age"); - - - - - Map a property - - Dictionary key - Property type - - Map<int>("Age"); - - - - - Join fetching - - - - - Select fetching - - - - - Subselect/subquery fetching - - - - - Specifies an entity-name. - - See http://nhforge.org/blogs/nhibernate/archive/2008/10/21/entity-name-in-action-a-strongly-typed-entity.aspx - - - - Thrown when a prefix is specified for an access-strategy that isn't supported. - - - - - Naming strategy prefix. - - - - - Property is never database generated - - - - - Property is only generated on insert - - - - - Property is always database generated - - - - - Checks a list of components for validity. - - Entity type - Type of list element - Persistence specification - Property - Value to save - Equality comparer - - - - Converts an expression to a best guess SQL string - - - - - Converts a Func expression to a best guess SQL string - - - - - Converts a boolean Func expression to a best guess SQL string - - - - - Gets the value of a method call. - - Method call expression - - - - Specify an alternative name for the type - - Alternative name - - - - Used to set the Not-Found attribute to ignore. This tells NHibernate to - return a null object rather then throw an exception when the join fails - - - - - Used to set the Not-Found attribute to exception (Nhibernate default). This - tells NHibernate to throw an exception when the join fails - - - - - Specifies the child class - - Child - - - - Specifies the child class - - Child - - - - Specifies that this relationship should be created with a default-named - foreign-key - - - - - Specify the foreign-key constraint name - - Foreign-key constraint - - - - Sets the property reference - - Property - - - - Sets the property reference - - Property - - - - Specifies that this relationship is constrained - - - - - Specify the lazy behaviour of this relationship. - - - Defaults to Proxy lazy-loading. Use the modifier to disable - lazy-loading, and use the - overload to specify alternative lazy strategies. - - - LazyLoad(); - Not.LazyLoad(); - - - - - Specify the lazy behaviour of this relationship. Cannot be used - with the modifier. - - Laziness strategy - - LazyLoad(Laziness.NoProxy); - - - - - Specifies an entity-name. - - See http://nhforge.org/blogs/nhibernate/archive/2008/10/21/entity-name-in-action-a-strongly-typed-entity.aspx - - - - Sets the fetch behaviour for this relationship - - - Fetch.Select(); - - - - - Sets the cascade behaviour for this relationship - - - Cascade.All(); - - - - - Specifies the access strategy for this relationship - - - Access.Field(); - - - - - Inverts the next boolean operation - - - - - No optimistic locking - - - - - Version locking - - - - - Dirty locking - - - - - Lock on everything - - - - - Use no locking strategy - - - - - Use version locking - - - - - Use dirty locking - - - - - Use all locking - - - - - This method is used to set a different key column in this table to be used for joins. - The output is set as the property-ref attribute in the "key" subelement of the collection - - The name of the column in this table which is linked to the foreign key - OneToManyPart - - - - Specify the lazy-load behaviour - - - - - Specify extra lazy loading - - - - - Inverse the ownership of this entity. Make the other side of the relationship - responsible for saving. - - - - - Use a set collection - - - - - Use a set collection - - Sorting - - - - Use a set collection - - Item comparer - - - - Use a bag collection - - - - - Use a list collection - - - - - Use a list collection with an index - - Index mapping - - - - Use a map collection - - Index type - Index property - - - - Use a map collection - - Index type - Index property - Sorting - - - - Use a map collection - - Index column name - - - - Use a map collection - - Index column name - Sorting - - - - Use a map collection - - Index type - Index column name - - - - Use a map collection - - Index type - Index column name - Sorting - - - - Use a map collection - - Index type - Comparer - Index column name - - - - Use a map collection - - Index type - Index property - Index mapping - - - - Use a map collection - - Index type - Index property - Index mapping - Sorting - - - - Use a map collection - - Index type - Index mapping - Element mapping - - - - Use an array - - Index type - Index property - - - - Use an array - - Index type - Index property - Index mapping - - - - Make this collection indexed - - Index type - Index property - Index mapping - - - - Make this collection index - - Index type - Index column - Index mapping - - - - Map an element/value type - - Column name - - - - Map an element/value type - - Column name - Custom mapping - - - - Maps this collection as a collection of components. - - Component mapping - - - - Sets the table name for this one-to-many. - - Table name - - - - Specify that the deletes should be cascaded - - - - - Specifies whether this collection should be optimistically locked. - - - - - Specify a custom persister - - Persister - - - - Specify a check constraint - - Constraint name - - - - Specify that this collection is generic (optional) - - - - - Sets the where clause for this one-to-many relationship. - - - - - Specify the select batch size - - Batch size - - - - Sets a custom collection type - - - - - Sets a custom collection type - - - - - Sets a custom collection type - - - - - Sets a custom collection type - - - - - Specify the table schema - - Schema name - - - - Specifies an entity-name. - - See http://nhforge.org/blogs/nhibernate/archive/2008/10/21/entity-name-in-action-a-strongly-typed-entity.aspx - - - - Applies a filter to this entity given it's name. - - - Applies a filter to this entity given it's name. - - The filter's name - The condition to apply - - - - Applies a filter to this entity given it's name. - - - Applies a filter to this entity given it's name. - - The filter's name - - - - Applies a named filter to this one-to-many. - - - Applies a named filter to this one-to-many. - - The condition to apply - - The type of a implementation - defining the filter to apply. - - - - - Applies a named filter to this one-to-many. - - - The type of a implementation - defining the filter to apply. - - - - - Return the type of the owning entity - - Type - - - - Specify caching for this entity. - - - - - Specify the cascade behaviour - - - - - Specify the fetching behaviour - - - - - Set the access and naming strategy for this one-to-many. - - - - - Inverts the next boolean operation - - - - - Access strategy mapping builder. - - Mapping part to be applied to - - - - Access strategy mapping builder. - - Instance of the parent mapping part. - Setter for altering the model - - - - Sets the access-strategy to property. - - - - - Sets the access-strategy to field. - - - - - Sets the access-strategy to use the backing-field of an auto-property. - - - - - Sets the access-strategy to readonly. - - - - - - Sets the access-strategy to field and the naming-strategy to camelcase (field.camelcase). - - - - - Sets the access-strategy to field and the naming-strategy to camelcase, with the specified prefix. - - Naming-strategy prefix - - - - Sets the access-strategy to field and the naming-strategy to lowercase. - - - - - Sets the access-strategy to field and the naming-strategy to lowercase, with the specified prefix. - - Naming-strategy prefix - - - - Sets the access-strategy to field and the naming-strategy to pascalcase, with the specified prefix. - - Naming-strategy prefix - - - - Sets the access-strategy to read-only property (nosetter) and the naming-strategy to camelcase. - - - - - Sets the access-strategy to read-only property (nosetter) and the naming-strategy to camelcase, with the specified prefix. - - Naming-strategy prefix - - - - Sets the access-strategy to read-only property (nosetter) and the naming-strategy to lowercase. - - - - - Sets the access-strategy to read-only property (nosetter) and the naming-strategy to lowercase. - - Naming-strategy prefix - - - - Sets the access-strategy to read-only property (nosetter) and the naming-strategy to pascalcase, with the specified prefix. - - Naming-strategy prefix - - - - Sets the access-strategy to use the type referenced. - - Assembly qualified name of the type to use as the access-strategy - - - - Sets the access-strategy to use the type referenced. - - Type to use as the access-strategy - - - - Sets the access-strategy to use the type referenced. - - Type to use as the access-strategy - - - - Sets the prefix for every column defined within the component. To refer to the name of a member that exposes - the component use {property} - - - - - - Specify the lazy-load behaviour - - - - - Component-element for component HasMany's. - - Component type - - - - Map a property - - Property - - Map(x => x.Age); - - - - - Map a property - - Property - Column name - - Map(x => x.Age, "person_age"); - - - - - Create a reference to another entity. In database terms, this is a many-to-one - relationship. - - Other entity - Property on the current entity - - References(x => x.Company); - - - - - Create a reference to another entity. In database terms, this is a many-to-one - relationship. - - Other entity - Property on the current entity - Column name - - References(x => x.Company, "person_company_id"); - - - - - Maps a property of the component class as a reference back to the containing entity - - Parent reference property - Component being mapped - - - - Create a nested component mapping. - - Component property - Action for creating the component - - HasMany(x => x.Locations) - .Component(c => - { - c.Map(x => x.Name); - c.Component(x => x.Address, addr => - { - addr.Map(x => x.Street); - addr.Map(x => x.PostCode); - }); - }); - - - - - Defines a property to be used as a key for this composite-id. - - A member access lambda expression for the property - The composite identity part fluent interface - - - - Defines a property to be used as a key for this composite-id with an explicit column name. - - A member access lambda expression for the property - The column name in the database to use for this key, or null to use the property name - The composite identity part fluent interface - - - - Defines a property to be used as a key for this composite-id with an explicit column name. - - A member access lambda expression for the property - Additional settings for the key property - The composite identity part fluent interface - - - - Defines a reference to be used as a many-to-one key for this composite-id with an explicit column name. - - A member access lambda expression for the property - The composite identity part fluent interface - - - - Defines a reference to be used as a many-to-one key for this composite-id with an explicit column name. - - A member access lambda expression for the property - A list of column names used for this key - The composite identity part fluent interface - - - - Defines a reference to be used as a many-to-one key for this composite-id with an explicit column name. - - A member access lambda expression for the property - A lambda expression specifying additional settings for the key reference - A list of column names used for this key - The composite identity part fluent interface - - - - Specifies that this composite id is "mapped"; aka, a composite id where - the properties exist in the identity class as well as in the entity itself - - - - - Specifies the unsaved value for the identity - - Unsaved value - - - - You may use a component as an identifier of an entity class. Your component class must - satisfy certain requirements: - - * It must be Serializable. - * It must re-implement Equals() and GetHashCode(), consistently with the database's - notion of composite key equality. - - You can't use an IIdentifierGenerator to generate composite keys. Instead the application - must assign its own identifiers. Since a composite identifier must be assigned to the object - before saving it, we can't use unsaved-value of the identifier to distinguish between newly - instantiated instances and instances saved in a previous session. You may instead implement - IInterceptor.IsUnsaved() if you wish to use SaveOrUpdate() or cascading save / update. As an - alternative, you may also set the unsaved-value attribute on a version or timestamp to specify - a value that indicates a new transient instance. In this case, the version of the entity is - used instead of the (assigned) identifier and you don't have to implement - IInterceptor.IsUnsaved() yourself. - - The property of component type that holds the composite identifier. - - Your persistent class must override Equals() and GetHashCode() to implement composite identifier - equality. It must also be Serializable. - - - - - Set the access and naming strategy for this identity. - - - - - Invert the next boolean operation - - - - - generates identifiers of any integral type that are unique only when no other - process is inserting data into the same table. Do not use in a cluster. - - - - - - generates identifiers of any integral type that are unique only when no other - process is inserting data into the same table. Do not use in a cluster. - - Params configuration - - - - supports identity columns in DB2, MySQL, MS SQL Server and Sybase. - The identifier returned by the database is converted to the property type using - Convert.ChangeType. Any integral property type is thus supported. - - - - - - supports identity columns in DB2, MySQL, MS SQL Server and Sybase. - The identifier returned by the database is converted to the property type using - Convert.ChangeType. Any integral property type is thus supported. - - Params configuration - - - - uses a sequence in DB2, PostgreSQL, Oracle or a generator in Firebird. - The identifier returned by the database is converted to the property type - using Convert.ChangeType. Any integral property type is thus supported. - - - - - - - uses a sequence in DB2, PostgreSQL, Oracle or a generator in Firebird. - The identifier returned by the database is converted to the property type - using Convert.ChangeType. Any integral property type is thus supported. - - - Params configuration - - - - uses a hi/lo algorithm to efficiently generate identifiers of any integral type, - given a table and column (by default hibernate_unique_key and next_hi respectively) - as a source of hi values. The hi/lo algorithm generates identifiers that are unique - only for a particular database. Do not use this generator with a user-supplied connection. - requires a "special" database table to hold the next available "hi" value - - The table. - The column. - The max lo. - The where. - - - - - uses a hi/lo algorithm to efficiently generate identifiers of any integral type, - given a table and column (by default hibernate_unique_key and next_hi respectively) - as a source of hi values. The hi/lo algorithm generates identifiers that are unique - only for a particular database. Do not use this generator with a user-supplied connection. - requires a "special" database table to hold the next available "hi" value - - - - - - - - - uses a hi/lo algorithm to efficiently generate identifiers of any integral type, - given a table and column (by default hibernate_unique_key and next_hi respectively) - as a source of hi values. The hi/lo algorithm generates identifiers that are unique - only for a particular database. Do not use this generator with a user-supplied connection. - requires a "special" database table to hold the next available "hi" value - - - - - Params configuration - - - - uses a hi/lo algorithm to efficiently generate identifiers of any integral type, - given a table and column (by default hibernate_unique_key and next_hi respectively) - as a source of hi values. The hi/lo algorithm generates identifiers that are unique - only for a particular database. Do not use this generator with a user-supplied connection. - requires a "special" database table to hold the next available "hi" value - - - - - - - uses a hi/lo algorithm to efficiently generate identifiers of any integral type, - given a table and column (by default hibernate_unique_key and next_hi respectively) - as a source of hi values. The hi/lo algorithm generates identifiers that are unique - only for a particular database. Do not use this generator with a user-supplied connection. - requires a "special" database table to hold the next available "hi" value - - - Params configuration - - - - uses an Oracle-style sequence (where supported) - - - - - - - - uses an Oracle-style sequence (where supported) - - - - Params configuration - - - - uses System.Guid and its ToString(string format) method to generate identifiers - of type string. The length of the string returned depends on the configured format. - - http://msdn.microsoft.com/en-us/library/97af8hh4.aspx - - - - - uses System.Guid and its ToString(string format) method to generate identifiers - of type string. The length of the string returned depends on the configured format. - - http://msdn.microsoft.com/en-us/library/97af8hh4.aspx - Params configuration - - - - uses a new System.Guid to create a byte[] that is converted to a string. - - - - - - uses a new System.Guid to create a byte[] that is converted to a string. - - Params configuration - - - - uses a new System.Guid as the identifier. - - - - - - uses a new System.Guid as the identifier. - - Params configuration - - - - Recommended for Guid identifiers! - uses the algorithm to generate a new System.Guid described by Jimmy Nilsson - in the article http://www.informit.com/articles/article.asp?p=25862. - - - - - - Recommended for Guid identifiers! - uses the algorithm to generate a new System.Guid described by Jimmy Nilsson - in the article http://www.informit.com/articles/article.asp?p=25862. - - Params configuration - - - - lets the application to assign an identifier to the object before Save() is called. - - - - - - lets the application to assign an identifier to the object before Save() is called. - - Params configuration - - - - picks identity, sequence or hilo depending upon the capabilities of the underlying database. - - - - - - picks identity, sequence or hilo depending upon the capabilities of the underlying database. - - Params configuration - - - - picks identity, sequence or hilo depending upon the capabilities of the underlying database. - - - - - picks identity, sequence or hilo depending upon the capabilities of the underlying database. - - - - - uses the identifier of another associated object. Usually used in conjunction with a one-to-one primary key association. - - - - - - - uses the identifier of another associated object. Usually used in conjunction with a one-to-one primary key association. - - - Params configuration - - - - Generator that uses the RDBMS native function to generate a GUID. - The behavior is similar to the “sequence” generator. When a new - object is saved NH run two queries: the first to retrieve the GUID - value and the second to insert the entity using the Guid retrieved - from the RDBMS. Your entity Id must be System.Guid and the SQLType - will depend on the dialect (RAW(16) in Oracle, UniqueIdentifier in - MsSQL for example). - - - - - Generator that uses the RDBMS native function to generate a GUID. - The behavior is similar to the “sequence” generator. When a new - object is saved NH run two queries: the first to retrieve the GUID - value and the second to insert the entity using the Guid retrieved - from the RDBMS. Your entity Id must be System.Guid and the SQLType - will depend on the dialect (RAW(16) in Oracle, UniqueIdentifier in - MsSQL for example). - - - GuidNative(x => - { - x.AddParam("key", "value"); - }); - - Parameter builder closure - - - - A deviation of the trigger-identity. This generator works - together with the feature. - The difference with trigger-identity is that the POID value - is retrieved by a SELECT using the natural-id fields as filter. - - - - - A deviation of the trigger-identity. This generator works - together with the feature. - The difference with trigger-identity is that the POID value - is retrieved by a SELECT using the natural-id fields as filter. - - - Select(x => - { - x.AddParam("key", "value"); - }); - - Parameter builder closure - - - - Based on sequence but works like an identity. The POID - value is retrieved with an INSERT query. Your entity Id must - be an integral type. - "hibernate_sequence" is the default name for the sequence, unless - another is provided. - - - - - Based on sequence but works like an identity. The POID - value is retrieved with an INSERT query. Your entity Id must - be an integral type. - "hibernate_sequence" is the default name for the sequence, unless - another is provided. - - Custom sequence name - - - - Based on sequence but works like an identity. The POID - value is retrieved with an INSERT query. Your entity Id must - be an integral type. - "hibernate_sequence" is the default name for the sequence, unless - another is provided. - - Parameter builder closure - - - - Based on sequence but works like an identity. The POID - value is retrieved with an INSERT query. Your entity Id must - be an integral type. - "hibernate_sequence" is the default name for the sequence, unless - another is provided. - - Custom sequence name - Parameter builder closure - - - - trigger-identity is a NHibernate specific feature where the POID - is generated by the RDBMS with an INSERT query through a - BEFORE INSERT trigger. In this case you can use any supported type, - including a custom type, with the limitation of a single column usage. - - - - - trigger-identity is a NHibernate specific feature where the POID - is generated by the RDBMS with an INSERT query through a - BEFORE INSERT trigger. In this case you can use any supported type, - including a custom type, with the limitation of a single column usage. - - Parameter builder closure - - - - Sets the unsaved-value of the identity. - - Value that represents an unsaved value. - - - - Sets the column name for the identity field. - - Column name - - - - Specify the identity column length - - Column length - - - - Specify the decimal precision - - Decimal precision - - - - Specify the decimal scale - - Decimal scale - - - - Specify the nullability of the identity column - - - - - Specify the uniqueness of the identity column - - - - - Specify a unique key constraint - - Constraint columns - - - - Specify a custom SQL type - - SQL type - - - - Specify an index name - - Index name - - - - Specify a check constraint - - Constraint name - - - - Specify a default value - - Default value - - - - Specify a custom type - - - This is usually used with an - - Custom type - - - - Specify a custom type - - - This is usually used with an - - Custom type - - - - Specify a custom type - - - This is usually used with an - - Custom type - - - - Specify the generator - - - Id("PersonId") - .GeneratedBy.Assigned(); - - - - - Set the access and naming strategy for this identity. - - - - - Invert the next boolean operation - - - - - Sets a single child key column. If there are multiple columns, use ChildKeyColumns.Add - - - - - Sets a single parent key column. If there are multiple columns, use ParentKeyColumns.Add - - - - - Sets the order-by clause on the collection element. - - - - - Sets the order-by clause on the many-to-many element. - - - - - Applies a filter to the child element of this entity given it's name. - - - Applies a filter to the child element of this entity given it's name. - - The filter's name - The condition to apply - - - - Applies a filter to the child element of this entity given it's name. - - - Applies a filter to the child element of this entity given it's name. - - The filter's name - - - - Applies a named filter to the child element of this many-to-many. - - - Applies a named filter to the child element of this many-to-many. - - The condition to apply - - The type of a implementation - defining the filter to apply. - - - - - Applies a named filter to the child element of this many-to-many. - - - The type of a implementation - defining the filter to apply. - - - - - Sets the where clause for this relationship, on the many-to-many element. - - - - - Sets the where clause for this relationship, on the many-to-many element. - Note: This only supports simple cases, use the string overload for more complex clauses. - - - - - Sets whether this relationship is unique - - - Unique(); - Not.Unique(); - - - - - Specifies the name of a multi-column unique constraint. - - Name of constraint - - - - Specifies the index name - - Index name - - - - Specifies the child class of this relationship - - Child - - - - Specifies the child class of this relationship - - Child - - - - Sets this relationship to read-only - - - This is the same as calling both Not.Insert() and Not.Update() - - - ReadOnly(); - Not.ReadOnly(); - - - - - Specify the lazy behaviour of this relationship. - - - Defaults to Proxy lazy-loading. Use the modifier to disable - lazy-loading, and use the - overload to specify alternative lazy strategies. - - - LazyLoad(); - Not.LazyLoad(); - - - - - Specify the lazy behaviour of this relationship. Cannot be used - with the modifier. - - Laziness strategy - - LazyLoad(Laziness.NoProxy); - - - - - Specifies this relationship should be created with a default-named - foreign key. - - - - - Specifies the foreign-key constraint name - - Constraint name - - - - Specifies that this relationship is insertable - - - - - Specifies that this relationship is updatable - - - - - Sets the single column used in this relationship. Use - if you need to specify more than one column. - - Column name - - - - Specifies the columns used in this relationship - - Columns - - - - Specifies the columns used in this relationship - - Columns - - - - Specifies the sql formula used for this relationship - - Formula - - - - Specifies the property reference - - Property - - - - Specifies the property reference - - Property - - - - Sets this relationship to nullable - - - Nullable(); - Not.Nullable(); - - - - - Specifies an entity-name. - - See http://nhforge.org/blogs/nhibernate/archive/2008/10/21/entity-name-in-action-a-strongly-typed-entity.aspx - - - - Set the fetching strategy - - - Fetch.Select(); - - - - - Set the behaviour for when this relationship is null in the database - - - NotFound.Exception(); - - - - - Specifies the cascade behaviour for this relationship - - - Cascade.All(); - - - - - Specifies the access strategy for this relationship - - - Access.Field(); - - - - - Inverts the next boolean - - - - - Specify that this is a ternary association - - - - - Specify that this is a ternary association - - Index column - - - - Specify this as an entity map - - - - - Specify this as an entity map - - Index column - - - - Specify the key column name - - Column name - - - - Specify a foreign key constraint - - Constraint name - - - - Sets the order-by clause for this one-to-many relationship. - - - - - Specify that this collection is read-only - - - - - Specify a sub-select query for fetching this collection - - Query - - - - Specify that the key is updatable - - - - - Specify that the key is nullable - - - - - Sets the where clause for this one-to-many relationship. - Note: This only supports simple cases, use the string overload for more complex clauses. - - - - - Specifies the behaviour for if this collection is not found - - - - - Specify the cascade behaviour - - - - - Modify the key columns collection - - - - - Specify the property column name - - Column name - - - - Specify that this property is insertable - - - - - Specify that this property is updatable - - - - - Specify the column length - - Column length - - - - Specify the nullability of this property - - - - - Specify that this property is read-only - - - - - Specify the property formula - - Formula - - - - Specify the lazy-loading behaviour - - - - - Specify an index name - - Index name - - - - Specifies that a custom type (an implementation of ) should be used for this property for mapping it to/from one or more database columns whose format or type doesn't match this .NET property. - - A type which implements . - This property mapping to continue the method chain - - - - Specifies that a custom type (an implementation of ) should be used for this property for mapping it to/from one or more database columns whose format or type doesn't match this .NET property. - - A type which implements . - This property mapping to continue the method chain - - - - Specifies that a custom type (an implementation of ) should be used for this property for mapping it to/from one or more database columns whose format or type doesn't match this .NET property. - - A type which implements . - This property mapping to continue the method chain - - - - Specifies that a custom type (an implementation of ) should be used for this property for mapping it to/from one or more database columns whose format or type doesn't match this .NET property. - - A function which returns a type which implements . The argument of the function is the mapped property type - This property mapping to continue the method chain - - - - Specify a custom SQL type - - SQL type - - - - Specify that this property has a unique constraint - - - - - Specify decimal precision - - Decimal precision - - - - Specify decimal scale - - Decimal scale - - - - Specify a default value - - Default value - - - - Specifies the name of a multi-column unique constraint. - - Name of constraint - - - - Specify that this property is optimistically locked - - - - - Specify a check constraint - - Constraint name - - - - Specify if this property is database generated - - - Generated.Insert(); - - - - - Modify the columns collection - - - - - Set the access and naming strategy for this property. - - - - - Inverts the next boolean - - - - - Specify the column name - - Column name - - - - Specify the unsaved value - - Unsaved value - - - - Specify the column length - - Column length - - - - Specify decimal precision - - Decimal precision - - - - Specify decimal scale - - Decimal scale - - - - Specify the nullability of the column - - - - - Specify the uniqueness of the column - - - - - Specify a unique key constraint - - Constraint columns - - - - Specify an index name - - Index name - - - - Specify a check constraint - - Constraint name - - - - Specify a default value - - Default value - - - - Specify a custom type - - Usually used with an - Custom type - - - - Specify a custom type - - Usually used with an - Custom type - - - - Specify a custom type - - Usually used with an - Custom type - - - - Specify a custom SQL type - - SQL type - - - - Specify if this version is database generated - - - - - Specify the access strategy - - - - - Invert the next boolean operation - - - - - Reveals a hidden property or field for use instead of expressions. - - Entity type - Name of property or field - Expression for the hidden property or field - - - - Reveals a hidden property or field with a specific return type for use instead of expressions. - - Entity type - Property or field return type - Name of property or field - Expression for the hidden property or field - - - - Visitor that performs validation against the mapping model. - - - - - Gets or sets whether validation is performed. - - - - diff --git a/Users/bin/Debug/GemCard.dll b/Users/bin/Debug/GemCard.dll deleted file mode 100644 index 1c08f4057..000000000 Binary files a/Users/bin/Debug/GemCard.dll and /dev/null differ diff --git a/Users/bin/Debug/GemCard.pdb b/Users/bin/Debug/GemCard.pdb deleted file mode 100644 index 09137e53f..000000000 Binary files a/Users/bin/Debug/GemCard.pdb and /dev/null differ diff --git a/Users/bin/Debug/Iesi.Collections.dll b/Users/bin/Debug/Iesi.Collections.dll deleted file mode 100644 index a4199b72d..000000000 Binary files a/Users/bin/Debug/Iesi.Collections.dll and /dev/null differ diff --git a/Users/bin/Debug/Iesi.Collections.xml b/Users/bin/Debug/Iesi.Collections.xml deleted file mode 100644 index d189350cd..000000000 --- a/Users/bin/Debug/Iesi.Collections.xml +++ /dev/null @@ -1,541 +0,0 @@ - - - - Iesi.Collections - - - - - Implementation of ISet that also maintains a linked list over all elements. - Enumeration of this set is guaranteed to return the elements in the order - they were added. - - - - - Returns an enumerator that iterates through the collection. - - - A that can be used to iterate through the collection. - - 1 - - - - Returns an enumerator that iterates through a collection. - - - An object that can be used to iterate through the collection. - - 2 - - - - Adds an item to the . - - The object to add to the .The is read-only. - - - - Removes all items from the . - - The is read-only. - - - - Determines whether the contains a specific value. - - - true if is found in the ; otherwise, false. - - The object to locate in the . - - - - Copies the elements of the to an , starting at a particular index. - - The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing.The zero-based index in at which copying begins. is null. is less than 0. is multidimensional.-or-The number of elements in the source is greater than the available space from to the end of the destination .-or-Type cannot be cast automatically to the type of the destination . - - - - Removes the first occurrence of a specific object from the . - - - true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . - - The object to remove from the .The is read-only. - - - - Modifies the current set so that it contains all elements that are present in either the current set or the specified collection. - - The collection to compare to the current set. is null. - - - - Modifies the current set so that it contains only elements that are also in a specified collection. - - The collection to compare to the current set. is null. - - - - Removes all elements in the specified collection from the current set. - - The collection of items to remove from the set. is null. - - - - Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. - - The collection to compare to the current set. is null. - - - - Determines whether a set is a subset of a specified collection. - - - true if the current set is a subset of ; otherwise, false. - - The collection to compare to the current set. is null. - - - - Determines whether the current set is a superset of a specified collection. - - - true if the current set is a superset of ; otherwise, false. - - The collection to compare to the current set. is null. - - - - Determines whether the current set is a correct superset of a specified collection. - - - true if the object is a correct superset of ; otherwise, false. - - The collection to compare to the current set. is null. - - - - Determines whether the current set is a proper (strict) subset of a specified collection. - - - true if the current set is a correct subset of ; otherwise, false. - - The collection to compare to the current set. is null. - - - - Determines whether the current set overlaps with the specified collection. - - - true if the current set and share at least one common element; otherwise, false. - - The collection to compare to the current set. is null. - - - - Determines whether the current set and the specified collection contain the same elements. - - - true if the current set is equal to ; otherwise, false. - - The collection to compare to the current set. is null. - - - - Adds an element to the current set and returns a value to indicate if the element was successfully added. - - - true if the element is added to the set; false if the element is already in the set. - - The element to add to the set. - - - - Count the elements in the given collection and determine both the total - count and how many of the elements that are present in the current set. - - - - - Cast the given collection to an ISet<T> if possible. If not, - return a new set containing the items. - - - - - Unlink a node from the linked list by updating the node pointers in - its preceeding and subsequent node. Also update the _first and _last - pointers if necessary. - - - - - Gets the number of elements contained in the . - - - The number of elements contained in the . - - - - - Gets a value indicating whether the is read-only. - - - true if the is read-only; otherwise, false. - - - - -

Implements a read-only Set wrapper.

-

Although this is advertised as immutable, it really isn't. Anyone with access to the - wrapped set can still change the set.

-
-
- - - Constructs an immutable (read-only) Set wrapper. - - The Set that is wrapped. - - - - Returns an enumerator that iterates through a collection. - - - An object that can be used to iterate through the collection. - - 2 - - - - Returns an enumerator that iterates through the collection. - - - A that can be used to iterate through the collection. - - 1 - - - - Adds an item to the . - - The object to add to the . - is always thrown - - - - Removes all items from the . - - is always thrown - - - - Determines whether the contains a specific value. - - - true if is found in the ; otherwise, false. - - The object to locate in the . - - - - Copies the elements of the to an , starting at a particular index. - - The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing.The zero-based index in at which copying begins. is null. is less than 0. is multidimensional.-or-The number of elements in the source is greater than the available space from to the end of the destination .-or-Type cannot be cast automatically to the type of the destination . - - - - Removes the first occurrence of a specific object from the . - - - true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . - - The object to remove from the . - is always thrown - - - - Adds an element to the current set and returns a value to indicate if the element was successfully added. - - - true if the element is added to the set; false if the element is already in the set. - - The element to add to the set. - is always thrown - - - - Modifies the current set so that it contains all elements that are present in both the current set and in the specified collection. - - The collection to compare to the current set. is null. - is always thrown - - - - Modifies the current set so that it contains only elements that are also in a specified collection. - - The collection to compare to the current set. is null. - is always thrown - - - - Removes all elements in the specified collection from the current set. - - The collection of items to remove from the set. is null. - is always thrown - - - - Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. - - The collection to compare to the current set. is null. - is always thrown - - - - Determines whether a set is a subset of a specified collection. - - - true if the current set is a subset of ; otherwise, false. - - The collection to compare to the current set. is null. - - - - Determines whether the current set is a superset of a specified collection. - - - true if the current set is a superset of ; otherwise, false. - - The collection to compare to the current set. is null. - - - - Determines whether the current set is a correct superset of a specified collection. - - - true if the object is a correct superset of ; otherwise, false. - - The collection to compare to the current set. is null. - - - - Determines whether the current set is a property (strict) subset of a specified collection. - - - true if the current set is a correct subset of ; otherwise, false. - - The collection to compare to the current set. is null. - - - - Determines whether the current set overlaps with the specified collection. - - - true if the current set and share at least one common element; otherwise, false. - - The collection to compare to the current set. is null. - - - - Determines whether the current set and the specified collection contain the same elements. - - - true if the current set is equal to ; otherwise, false. - - The collection to compare to the current set. is null. - - - - Gets the number of elements contained in the . - - - The number of elements contained in the . - - - - - Gets a value indicating whether the is read-only. - - - True. - - - - -

Implements a thread-safe Set wrapper. The implementation is extremely conservative, - serializing critical sections to prevent possible deadlocks, and locking on everything. - The one exception is for enumeration, which is inherently not thread-safe. For this, you - have to lock the SyncRoot object for the duration of the enumeration.

-
-
- - - Constructs a thread-safe ISet wrapper. - - The Set object that this object will wrap. - - - - Adds an item to the . - - The object to add to the .The is read-only. - - - - Removes all items from the . - - The is read-only. - - - - Determines whether the contains a specific value. - - - true if is found in the ; otherwise, false. - - The object to locate in the . - - - - Copies the elements of the to an , starting at a particular index. - - The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing.The zero-based index in at which copying begins. is null. is less than 0. is multidimensional.-or-The number of elements in the source is greater than the available space from to the end of the destination .-or-Type cannot be cast automatically to the type of the destination . - - - - Removes the first occurrence of a specific object from the . - - - true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . - - The object to remove from the .The is read-only. - - - - Modifies the current set so that it contains all elements that are present in either the current set or in the specified collection. - - The collection to compare to the current set. is null. - - - - Modifies the current set so that it contains only elements that are also in a specified collection. - - The collection to compare to the current set. is null. - - - - Removes all elements in the specified collection from the current set. - - The collection of items to remove from the set. is null. - - - - Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. - - The collection to compare to the current set. is null. - - - - Determines whether a set is a subset of a specified collection. - - - true if the current set is a subset of ; otherwise, false. - - The collection to compare to the current set. is null. - - - - Determines whether the current set is a superset of a specified collection. - - - true if the current set is a superset of ; otherwise, false. - - The collection to compare to the current set. is null. - - - - Determines whether the current set is a correct superset of a specified collection. - - - true if the object is a correct superset of ; otherwise, false. - - The collection to compare to the current set. is null. - - - - Determines whether the current set is a property (strict) subset of a specified collection. - - - true if the current set is a correct subset of ; otherwise, false. - - The collection to compare to the current set. is null. - - - - Determines whether the current set overlaps with the specified collection. - - - true if the current set and share at least one common element; otherwise, false. - - The collection to compare to the current set. is null. - - - - Determines whether the current set and the specified collection contain the same elements. - - - true if the current set is equal to ; otherwise, false. - - The collection to compare to the current set. is null. - - - - Adds an element to the current set and returns a value to indicate if the element was successfully added. - - - true if the element is added to the set; false if the element is already in the set. - - The element to add to the set. - - - - Returns an enumerator that iterates through a collection. Enumeration is inherently not - thread-safe. Use a lock on the SyncRoot to synchronize the entire enumeration process. - - - An object that can be used to iterate through the collection. - - 2 - - - - Returns an enumerator that iterates through the collection. Enumeration is inherently not - thread-safe. Use a lock on the SyncRoot to synchronize the entire enumeration process. - - - A that can be used to iterate through the collection. - - 1 - - - - Gets the number of elements contained in the . - - - The number of elements contained in the . - - - - - Gets a value indicating whether the is read-only. - - - true if the is read-only; otherwise, false. - - -
-
diff --git a/Users/bin/Debug/MySql.Data.dll b/Users/bin/Debug/MySql.Data.dll deleted file mode 100644 index fd3c20ab7..000000000 Binary files a/Users/bin/Debug/MySql.Data.dll and /dev/null differ diff --git a/Users/bin/Debug/NHibernate.dll b/Users/bin/Debug/NHibernate.dll deleted file mode 100644 index cc274c49b..000000000 Binary files a/Users/bin/Debug/NHibernate.dll and /dev/null differ diff --git a/Users/bin/Debug/NHibernate.xml b/Users/bin/Debug/NHibernate.xml deleted file mode 100644 index 2d01e1980..000000000 --- a/Users/bin/Debug/NHibernate.xml +++ /dev/null @@ -1,43816 +0,0 @@ - - - - NHibernate - - - - - Implementation of BulkOperationCleanupAction. - - - - - An operation which may be scheduled for later execution. - Usually, the operation is a database insert/update/delete, - together with required second-level cache management. - - - - Called before executing any actions - - - Execute this action - - - - What spaces (tables) are affected by this action? - - - - - Get the before-transaction-completion process, if any, for this action. - - - - - Get the after-transaction-completion process, if any, for this action. - - - - - Create an action that will evict collection and entity regions based on queryspaces (table names). - - - - - Any action relating to insert/update/delete of a collection - - - - - Initializes a new instance of . - - The that is responsible for the persisting the Collection. - The Persistent collection. - The identifier of the Collection. - The that the Action is occurring in. - - - Called before executing any actions - - - Execute this action - - - - Compares the current object with another object of the same type. - - - A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings: Value Meaning Less than zero This object is less than the other parameter.Zero This object is equal to other. Greater than zero This object is greater than other. - - An object to compare with this object. - - - - What spaces (tables) are affected by this action? - - - - Execute this action - - This method is called when a new non-null collection is persisted - or when an existing (non-null) collection is moved to a new owner - - - - - Removes a persistent collection from its loaded owner. - - The collection to to remove; must be non-null - The collection's persister - The collection key - Indicates if the snapshot is empty - The session - Use this constructor when the collection is non-null. - - - - Removes a persistent collection from a specified owner. - - The collection's owner; must be non-null - The collection's persister - The collection key - Indicates if the snapshot is empty - The session - Use this constructor when the collection to be removed has not been loaded. - - - - Acts as a stand-in for an entity identifier which is supposed to be - generated on insert (like an IDENTITY column) where the insert needed to - be delayed because we were outside a transaction when the persist - occurred (save currently still performs the insert). - - The stand-in is only used within the see cref="NHibernate.Engine.PersistenceContext" - in order to distinguish one instance from another; it is never injected into - the entity instance or returned to the client... - - - - - Base class for actions relating to insert/update/delete of an entity - instance. - - - - - Instantiate an action. - - The session from which this action is coming. - The id of the entity - The entity instance - The entity persister - - - - Entity name accessor - - - - - Entity Id accessor - - - - - Entity Instance - - - - - Session from which this action originated - - - - - The entity persister. - - - - - Delegate representing some process that needs to occur before transaction completion. - - - NH specific: C# does not support dynamic interface proxies so a delegate is used in - place of the Hibernate interface (see Action/BeforeTransactionCompletionProcess). The - delegate omits the parameter as it is not used. - - - - - Delegate representing some process that needs to occur after transaction completion. - - Did the transaction complete successfully? True means it did. - - NH specific: C# does not support dynamic interface proxies so a delegate is used in - place of the Hibernate interface (see Action/AfterTransactionCompletionProcess). The - delegate omits the parameter as it is not used. - - - - Format an SQL statement using simple rules: - a) Insert newline after each comma; - b) Indent three spaces after each inserted newline; - If the statement contains single/double quotes return unchanged, - it is too complex and could be broken by simple formatting. - - - - Represents the the understood types or styles of formatting. - - - Centralize logging handling for SQL statements. - - - Constructs a new SqlStatementLogger instance. - - - Constructs a new SqlStatementLogger instance. - Should we log to STDOUT in addition to our internal logger. - Should we format SQL ('prettify') prior to logging. - - - Log a IDbCommand. - Title - The SQL statement. - The requested formatting style. - - - Log a IDbCommand. - The SQL statement. - The requested formatting style. - - - - Manages prepared statements and batching. Class exists to enforce separation of concerns - - - - - Manages s and s - for an . - - -

- Abstracts ADO.NET batching to maintain the illusion that a single logical batch - exists for the whole session, even when batching is disabled. - Provides transparent IDbCommand caching. -

-

- This will be useful once ADO.NET gets support for batching. Until that point - no code exists that will do batching, but this will provide a good point to do - error checking and making sure the correct number of rows were affected. -

-
-
- - - Get an for using in loading / querying. - - The to convert to an . - The of the command. - The SqlTypes of parameters - in . - - An that is ready to be executed. - - - - If not explicitly released by , it will be - released when the session is closed or disconnected. - - - This does NOT add anything to the batch - it only creates the IDbCommand and - does NOT cause the batch to execute... - - - - - - Get a non-batchable an to use for inserting / deleting / updating. - Must be explicitly released by CloseCommand() - - The to convert to an . - The of the command. - The SqlTypes of parameters - in . - - An that is ready to have the parameter values set - and then executed. - - - - - Close a opened using PrepareCommand() - - The to ensure is closed. - The to ensure is closed. - - - - Close a opened using - - The to ensure is closed. - - - - Get a batchable to use for inserting / deleting / updating - (might be called many times before a single call to ExecuteBatch() - - - After setting parameters, call AddToBatch() - do not execute the statement - explicitly. - - The to convert to an . - The of the command. - The SqlTypes of parameters - in . - - - - - Add an insert / delete / update to the current batch (might be called multiple times - for a single PrepareBatchStatement()) - - Determines whether the number of rows affected by query is correct. - - - - Execute the batch - - - - - Close any query statements that were left lying around - - - Use this method instead of Dispose if the - can be used again. - - - - - Gets an by calling ExecuteReader on the . - - The to execute to get the . - The from the . - - The Batcher is responsible for ensuring that all of the Drivers rules for how many open - s it can have are followed. - - - - - Executes the . - - The to execute. - The number of rows affected. - - The Batcher is responsible for ensuring that all of the Drivers rules for how many open - s it can have are followed. - - - - - Must be called when an exception occurs. - - - - - - Cancel the current query statement - - - - - Gets the value indicating whether there are any open resources - managed by this batcher (IDbCommands or IDataReaders). - - - - - Gets or sets the size of the batch, this can change dynamically by - calling the session's SetBatchSize. - - The size of the batch. - - - - Initializes a new instance of the class. - - The owning this batcher. - - - - - Prepares the for execution in the database. - - - This takes care of hooking the up to an - and if one exists. It will call Prepare if the Driver - supports preparing commands. - - - - - Ensures that the Driver's rules for Multiple Open DataReaders are being followed. - - - - - Adds the expected row count into the batch. - - The number of rows expected to be affected by the query. - - If Batching is not supported, then this is when the Command should be executed. If Batching - is supported then it should hold of on executing the batch until explicitly told to. - - - - - A flag to indicate if Dispose() has been called. - - - - - Finalizer that ensures the object is correctly disposed of. - - - - - Takes care of freeing the managed and unmanaged resources that - this class is responsible for. - - - - - Takes care of freeing the managed and unmanaged resources that - this class is responsible for. - - Indicates if this BatcherImpl is being Disposed of or Finalized. - - If this BatcherImpl is being Finalized (isDisposing==false) then make sure not - to call any methods that could potentially bring this BatcherImpl back to life. - - - - - Gets the current that is contained for this Batch - - The current . - - - - Gets or sets the size of the batch, this can change dynamically by - calling the session's SetBatchSize. - - The size of the batch. - - - - Gets the the Batcher was - created in. - - - The the Batcher was - created in. - - - - - Gets the for this batcher. - - - - Implementation of ColumnNameCache. Thread safe. - - - - Manages the database connection and transaction for an . - - - This class corresponds to ConnectionManager and JDBCContext in Hibernate, - combined. - - - - The batcher managed by this ConnectionManager. - - - - Expected row count. Valid only for batchable expectations. - - - - Factory for instances. - - - - Provide the class of according to the configuration - and the capabilities of the driver. - - - By default, .Net doesn't have any batching capabilities, drivers that does have - batching support. - The BatcherFactory trough session-factory configuration section. - This interface was added in NHibernate for backdraw compatibility to have the ability - to specify a default for a specific . - - - - - An implementation of the - interface that does no batching. - - - - - Initializes a new instance of the class. - - The for this batcher. - - - - - Executes the current and compares the row Count - to the expectedRowCount. - - - The expected number of rows affected by the query. A value of less than 0 - indicates that the number of rows to expect is unknown or should not be a factor. - - - Thrown when there is an expected number of rows to be affected and the - actual number of rows is different. - - - - - This Batcher implementation does not support batching so this is a no-op call. The - actual execution of the is run in the AddToBatch - method. - - - - - - A BatcherFactory implementation which constructs Batcher instances - that do not perform batch operations. - - - - - Summary description for OracleDataClientBatchingBatcher. - By Tomer Avissar - - - - - A ResultSet delegate, responsible for locally caching the columnName-to-columnIndex - resolution that has been found to be inefficient in a few vendor's drivers (i.e., Oracle - and Postgres). - - - - - - Expose the batch functionality in ADO.Net 2.0 - Microsoft in its wisdom decided to make my life hard and mark it internal. - Through the use of Reflection and some delegates magic, I opened up the functionality. - - Observable performance benefits are 50%+ when used, so it is really worth it. - - - - - Append a command to the batch - - - - - - This is required because SqlClient.SqlCommandSet will throw if - the command has no parameters. - - - - - - Executes the batch - - - This seems to be returning the total number of affected rows in all queries - - - - - Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. - - 2 - - - - Return the batch command to be executed - - - - - The number of commands batched in this instance - - - - - Any exception that occurs in the O-R persistence layer. - - - Exceptions that occur in the database layer are left as native exceptions. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - The message that describes the error. - - - - Initializes a new instance of the class. - - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class. - - The message that describes the error. - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - CodeDOM-based bytecode provider. - - - - - Retrieve the delegate for this provider - capable of generating reflection optimization components. - - The class to be reflected upon. - All property getters to be accessed via reflection. - All property setters to be accessed via reflection. - The reflection optimization delegate. - - - - The specific factory for this provider capable of - generating run-time proxies for lazy-loading purposes. - - - - - NHibernate's object instaciator. - - - For entities and its implementations. - - - - - Instanciator of NHibernate's collections default types. - - - - - ctor - - The target class - Array of setters - Array of getters - - - - Set up the compiler options - - - - - Add an assembly to the list of ReferencedAssemblies - required to build the class - - - - - - Build the generated code - - Generated code - An instance of the generated class - - - - Check if the property is public - - - If IsPublic==true I can directly set the property - If IsPublic==false I need to use the setter/getter - - - - - - - Generate the required code - - C# code - - - - Represents optimized entity property access. - - - - - Factory that generate object based on IReflectionOptimizer needed to replace the use - of reflection. - - - Used in and - - - - - - Generate the IReflectionOptimizer object - - The target class - Array of setters - Array of getters - if the generation fails - - - - Represents reflection optimization for a particular class. - - - - - Represents optimized entity instantiation. - - - - - Perform instantiation of an instance of the underlying class. - - The new instance. - - - - Class constructor. - - - - - Generates a dynamic method which creates a new instance of - when invoked. - - - - - Generates a dynamic method on the given type. - - - - - Generates a dynamic method on the given type. - - - - - - Interface for instanciate all NHibernate objects. - - - - - Creates an instance of the specified type. - - The type of object to create. - A reference to the created object. - - - - Creates an instance of the specified type. - - The type of object to create. - true if a public or nonpublic default constructor can match; false if only a public default constructor can match. - A reference to the created object. - - - - Creates an instance of the specified type using the constructor - that best matches the specified parameters. - - The type of object to create. - An array of constructor arguments. - A reference to the created object. - - - - An interface for factories of proxy factory instances. - - - Used to abstract from the tupizer. - - - - - Build a proxy factory specifically for handling runtime - lazy loading. - - The lazy-load proxy factory. - - - - Emits an ldc.i4 opcode using the fastest available opcode choice. - - - - - Emits IL to unbox a value type and if null, create a new instance of the value type. - - - This does not work if the value type doesn't have a default constructor - we delegate - that to the ISetter. - - - - - Defines a new delegate type. - - - - - Type factory for collections types. - - - - - Creates a new for an . - - The role the collection is in. - The name of the property in the - owner object containing the collection ID, or if it is - the primary key. - The to use to create the array. - Is embedded in XML (not supported yet) - - An for the specified role. - - - - - Creates a new for an - with bag semantics. - - The type of elements in the list. - The role the collection is in. - - The name of the property in the owner object containing the collection ID, - or if it is the primary key. - - Is embedded in XML (not supported yet) - - A for the specified role. - - - - - Creates a new for an - with list - semantics. - - The type of elements in the list. - The role the collection is in. - - The name of the property in the - owner object containing the collection ID, or if it is - the primary key. - - Is embedded in XML (not supported yet) - - A for the specified role. - - - - - Creates a new for an - with identifier - bag semantics. - - The type of elements in the list. - The role the collection is in. - The name of the property in the - owner object containing the collection ID, or if it is - the primary key. - - Is embedded in XML (not supported yet) - - A for the specified role. - - - - - Creates a new for an . - - The type of elements in the collection. - The role the collection is in. - The name of the property in the - owner object containing the collection ID, or if it is - the primary key. - Is embedded in XML (not supported yet) - A for the specified role. - - - - Creates a new for a sorted . - - The type of elements in the collection. - The role the collection is in. - The name of the property in the - owner object containing the collection ID, or if it is - the primary key. - Is embedded in XML (not supported yet) - The to use for the set. - A for the specified role. - - - - Creates a new for an ordered . - - The type of elements in the collection. - The role the collection is in. - - The name of the property in the owner object containing the collection ID, - or if it is the primary key. - - Is embedded in XML (not supported yet) - A for the specified role. - - - - Creates a new for an - . - - The type of keys in the dictionary. - The type of values in the dictionary. - The role the collection is in. - The name of the property in the - owner object containing the collection ID, or if it is - the primary key. - - Is embedded in XML (not supported yet) - - A for the specified role. - - - - - A implementation that returns - , disabling reflection optimization. - - - - - Marker interface, denoting a client-visible "soft lock" on a cached item. - - - - - A cached instance of a persistent class - - - - - An item of cached data, timestamped with the time it was cached, when it was locked, - when it was unlocked - - - - - Caches data that is sometimes updated while maintaining the semantics of - "read committed" isolation level. If the database is set to "repeatable - read", this concurrency strategy almost maintains the semantics. - Repeatable read isolation is compromised in the case of concurrent writes. - This is an "asynchronous" concurrency strategy. - - - If this strategy is used in a cluster, the underlying cache implementation - must support distributed hard locks (which are held only momentarily). This - strategy also assumes that the underlying cache implementation does not do - asynchronous replication and that state has been fully replicated as soon - as the lock is released. - for a faster algorithm - - - - - - Implementors manage transactional access to cached data. - - - - Transactions pass in a timestamp indicating transaction start time. - - - When used to cache entities and collections the key is the identifier of the - entity/collection and the value should be set to the - for an entity and the results of - for a collection. - - - - - - Attempt to retrieve an object from the Cache - - The key (id) of the object to get out of the Cache. - A timestamp prior to the transaction start time - The cached object or - - - - - Attempt to cache an object, after loading from the database - - The key (id) of the object to put in the Cache. - The value - A timestamp prior to the transaction start time - the version number of the object we are putting - a Comparer to be used to compare version numbers - indicates that the cache should avoid a put if the item is already cached - if the object was successfully cached - - - - - We are going to attempt to update/delete the keyed object - - The key - - - This method is used by "asynchronous" concurrency strategies. - - - - Called after an item has become stale (before the transaction completes). - - - - This method is used by "synchronous" concurrency strategies. - - - - Called after an item has been updated (before the transaction completes), - instead of calling Evict(). - - - - - - This method is used by "synchronous" concurrency strategies. - - - - Called after an item has been inserted (before the transaction completes), instead of calling Evict(). - - - - - This method is used by "synchronous" concurrency strategies. - - - - Called when we have finished the attempted update/delete (which may or - may not have been successful), after transaction completion. - - The key - The soft lock - - This method is used by "asynchronous" concurrency strategies. - - - - Called after an item has been updated (after the transaction completes), - instead of calling Release(). - - - - - - This method is used by "asynchronous" concurrency strategies. - - - - Called after an item has been inserted (after the transaction completes), instead of calling release(). - - - - - This method is used by "asynchronous" concurrency strategies. - - - - Evict an item from the cache immediately (without regard for transaction isolation). - - - - - - - Evict all items from the cache immediately. - - - - - - Clean up all resources. - - - - - - Gets the cache region name. - - - - - Gets or sets the for this strategy to use. - - The for this strategy to use. - - - - Generate an id for a new lock. Uniqueness per cache instance is very - desirable but not absolutely critical. Must be called from one of the - synchronized methods of this class. - - - - - - Do not return an item whose timestamp is later than the current - transaction timestamp. (Otherwise we might compromise repeatable - read unnecessarily.) Do not return an item which is soft-locked. - Always go straight to the database instead. - - - Note that since reading an item from that cache does not actually - go to the database, it is possible to see a kind of phantom read - due to the underlying row being updated after we have read it - from the cache. This would not be possible in a lock-based - implementation of repeatable read isolation. It is also possible - to overwrite changes made and committed by another transaction - after the current transaction read the item from the cache. This - problem would be caught by the update-time version-checking, if - the data is versioned or timestamped. - - - - - Stop any other transactions reading or writing this item to/from - the cache. Send them straight to the database instead. (The lock - does time out eventually.) This implementation tracks concurrent - locks by transactions which simultaneously attempt to write to an - item. - - - - - Do not add an item to the cache unless the current transaction - timestamp is later than the timestamp at which the item was - invalidated. (Otherwise, a stale item might be re-added if the - database is operating in repeatable read isolation mode.) - - Whether the item was actually put into the cache - - - - decrement a lock and put it back in the cache - - - - - Re-cache the updated state, if and only if there there are - no other concurrent soft locks. Release our lock. - - - - - Is the client's lock commensurate with the item in the cache? - If it is not, we know that the cache expired the original - lock. - - - - - Gets the cache region name. - - - - - Lock the item - - - - - Is this item visible to the timestamped transaction? - - - - - - - Don't overwrite already cached items - - - - - - - - - The timestamp on the cached data - - - - - The actual cached data - - - - - Not a lock! - - - - - Represents any exception from an . - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - The message that describes the error. - - - - Initializes a new instance of the class. - - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class. - - The message that describes the error. - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Factory class for creating an . - - - - - No providers implement transactional caching currently, - it was ported from Hibernate just for the sake of completeness. - - - - - Creates an from the parameters. - - The name of the strategy that should use for the class. - The name of the class the strategy is being created for. - if the object being stored in the cache is mutable. - Used to retrieve the global cache region prefix. - Properties the cache provider can use to configure the cache. - An to use for this object in the . - - - - Allows multiple entity classes / collection roles to be - stored in the same cache region. Also allows for composite - keys which do not properly implement equals()/hashCode(). - - - - - Construct a new key for a collection or entity instance. - Note that an entity name should always be the root entity - name, not a subclass entity name. - - The identifier associated with the cached data - The Hibernate type mapping - The entity or collection-role name. - The entiyt mode of the originating session - The session factory for which we are caching - - - - A soft lock which supports concurrent locking, - timestamped with the time it was released - - - This class was named Lock in H2.1 - - - - - Increment the lock, setting the - new lock timeout - - - - - Decrement the lock, setting the unlock - timestamp if now unlocked - - - - - - Can the timestamped transaction re-cache this - locked item now? - - - - - locks are not returned to the client! - - - - - Was this lock held concurrently by multiple - transactions? - - - - - Yes, this is a lock - - - - - Used by - - - - - Implementors define a caching algorithm. - - - - - All implementations must be threadsafe. - - - The key is the identifier of the object that is being cached and the - value is a . - - - - - - Get the object from the Cache - - - - - - - - - - - - - - Remove an item from the Cache. - - The Key of the Item in the Cache to remove. - - - - - Clear the Cache - - - - - - Clean up. - - - - - - If this is a clustered cache, lock the item - - The Key of the Item in the Cache to lock. - - - - - If this is a clustered cache, unlock the item - - The Key of the Item in the Cache to unlock. - - - - - Generate a timestamp - - - - - - Get a reasonable "lock timeout" - - - - - Gets the name of the cache region - - - - - A simple -based cache - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Cache Provider plugin for NHibernate that is configured by using - cache.provider_class="NHibernate.Cache.HashtableCacheProvider" - - - - - Support for pluggable caches - - - - - Configure the cache - - the name of the cache region - configuration settings - - - - - generate a timestamp - - - - - - Callback to perform any necessary initialization of the underlying cache implementation - during ISessionFactory construction. - - current configuration settings - - - - Callback to perform any necessary cleanup of the underlying cache implementation - during . - - - - - Contract for sources of optimistically lockable data sent to the second level cache. - - - Note currently EntityPersisters are - the only viable source. - - - - - Does this source represent versioned (i.e., and thus optimistically lockable) data? - - True if this source represents versioned data; false otherwise. - - - Get the comparator used to compare two different version values together. - An appropriate comparator. - - - - Defines the contract for caches capable of storing query results. These - caches should only concern themselves with storing the matching result ids. - The transactional semantics are necessarily less strict than the semantics - of an item cache. - - - - - Defines a factory for query cache instances. These factories are responsible for - creating individual QueryCache instances. - - - - - A cache provider placeholder used when caching is disabled. - - - - - Configure the cache - - the name of the cache region - configuration settings - - - - - Generate a timestamp - - - - - Callback to perform any necessary initialization of the underlying cache implementation during SessionFactory - construction. - - current configuration settings. - - - - Callback to perform any necessary cleanup of the underlying cache implementation during SessionFactory.close(). - - - - - Caches data that is sometimes updated without ever locking the cache. - If concurrent access to an item is possible, this concurrency strategy - makes no guarantee that the item returned from the cache is the latest - version available in the database. Configure your cache timeout accordingly! - This is an "asynchronous" concurrency strategy. - for a much stricter algorithm - - - - - Get the most recent version, if available. - - - - - Add an item to the cache - - - - - Do nothing - - - - - Invalidate the item - - - - - Invalidate the item - - - - - Do nothing - - - - - Invalidate the item (again, for safety). - - - - - Invalidate the item (again, for safety). - - - - - Do nothing - - - - - Gets the cache region name. - - - - - Initializes a new instance of the class. - - the session factory for this query key, required to get the identifiers of entities that are used as values. - The query string. - The query parameters. - The filters. - The result transformer; should be null if data is not transformed before being cached. - - - - Caches data that is never updated - - - - - Unsupported! - - - - - Unsupported! - - - - - Unsupported! - - - - - Do nothing. - - - - - Do nothing. - - - - - Do nothing. - - - - - Unsupported! - - - - - Gets the cache region name. - - - - - The standard implementation of the Hibernate - interface. This implementation is very good at recognizing stale query - results and re-running queries when it detects this condition, recaching - the new results. - - - - - Standard Hibernate implementation of the IQueryCacheFactory interface. Returns - instances of . - - - - - Generates increasing identifiers (in a single application domain only). - - - Not valid across multiple application domains. Identifiers are not necessarily - strictly increasing, but usually are. - - - - - - - - - - - - - - Tracks the timestamps of the most recent updates to particular tables. It is - important that the cache timeout of the underlying cache implementation be set - to a higher value than the timeouts of any of the query caches. In fact, we - recommend that the the underlying cache not be configured for expiry at all. - Note, in particular, that an LRU cache expiry policy is never appropriate. - - - - - - - - Helper to parse hibernate-configuration XmlNode. - - - - - The XML node name for hibernate configuration section in the App.config/Web.config and - for the hibernate.cfg.xml . - - - - The XML Namespace for the nhibernate-configuration - - - XPath expression for bytecode-provider property. - - - XPath expression for reflection-optimizer property. - - - XPath expression for session-factory whole node. - - - XPath expression for session-factory.property nodes - - - XPath expression for session-factory.mapping nodes - - - XPath expression for session-factory.class-cache nodes - - - XPath expression for session-factory.collection-cache nodes - - - XPath expression for session-factory.event nodes - - - XPath expression for session-factory.listener nodes - - - - Convert a string to . - - The string that represent . - - The converted to . - - If the values is invalid. - - See for allowed values. - - - - - Convert a string to . - - The string that represent . - - The converted to . - - If the values is invalid. - - See for allowed values. - - - - - Values for class-cache include. - - Not implemented in Cache. - - - Xml value: all - - - Xml value: non-lazy - - - - Configuration parsed values for a class-cache XML node. - - - - - Initializes a new instance of the class. - - The class full name. - Cache strategy. - When is null or empty. - - - - Initializes a new instance of the class. - - The class full name. - Cache strategy. - Values for class-cache include. - When is null or empty. - - - - Initializes a new instance of the class. - - The class full name. - Cache strategy. - The cache region. - When is null or empty. - - - - Initializes a new instance of the class. - - The class full name. - Cache strategy. - Values for class-cache include. - The cache region. - When is null or empty. - - - - The class full name. - - - - - The cache region. - - If null or empty the is used during configuration. - - - - Cache strategy. - - - - - class-cache include. - - - Not implemented in Cache. - Default value . - - - - - Configuration parsed values for a collection-cache XML node. - - - - - Initializes a new instance of the class. - - The cache role. - Cache strategy. - When is null or empty. - - - - Initializes a new instance of the class. - - The cache role. - Cache strategy. - The cache region. - When is null or empty. - - - - The role. - - - - - The cache region. - - If null or empty the is used during configuration. - - - - Cache strategy. - - - - - Configuration parsed values for a event XML node. - - - - - Initializes a new instance of the class. - - The listener. - The type. - - - - The default type of listeners. - - - - - Listeners for this event. - - - - - Values for bytecode-provider system property. - - - - Xml value: codedom - - - Xml value: lcg - - - Xml value: null - - - - Configuration parsed values for hibernate-configuration section. - - - - - Initializes a new instance of the class. - - The XML reader to parse. - - The nhibernate-configuration.xsd is applied to the XML. - - When nhibernate-configuration.xsd can't be applied. - - - - Value for bytecode-provider system property. - - Default value . - - - - Value for reflection-optimizer system property. - - Default value true. - - - - The if the session-factory exists in hibernate-configuration; - Otherwise null. - - - - - Configuration parsed values for a listener XML node - - - - - Initializes a new instance of the class. - - The class full name. - When is null or empty. - - - - Initializes a new instance of the class. - - The class full name. - The listener type. - When is null or empty. - - - - The class full name. - - - - - The listener type. - - Default value mean that the value is ignored. - - - - Configuration parsed values for a mapping XML node - - - There are 3 possible combinations of mapping attributes - 1 - resource and assembly: NHibernate will read the mapping resource from the specified assembly - 2 - file only: NHibernate will read the mapping from the file. - 3 - assembly only: NHibernate will find all the resources ending in hbm.xml from the assembly. - - - - - Initializes a new instance of the class. - - Mapped file. - When is null or empty. - - - - Initializes a new instance of the class. - - The assembly name. - The mapped embedded resource. - When is null or empty. - - - - Configuration parsed values for a session-factory XML node. - - - - - The session factory name. - - - - - Session factory propeties bag. - - - - - Session factory mapping configuration. - - - - - Session factory class-cache configurations. - - - - - Session factory collection-cache configurations. - - - - - Session factory event configurations. - - - - - Session factory listener configurations. - - - - - The session factory name. - - - - - Session factory propeties bag. - - - - - Session factory mapping configuration. - - - - - Session factory class-cache configurations. - - - - - Session factory collection-cache configurations. - - - - - Session factory event configurations. - - - - - Session factory listener configurations. - - - - - Initializes a new instance of the class. - - The session factory name. Null or empty string are allowed. - - - - Define and configure the dialect to use. - - The dialect implementation inherited from . - The fluent configuration itself. - - - - Maximum depth of outer join fetching - - - 0 (zero) disable the usage of OuterJoinFetching - - - - - Set the SessionFactory mnemonic name. - - The mnemonic name. - The fluent configuration itself. - - The SessionFactory mnemonic name can be used as a surrogate key in a multi-DB application. - - - - - DataBase integration configuration. - - - - - Cache configuration. - - - - - Properties of TypeDef configuration. - - - - - - The key to use the type-definition inside not strongly typed mappings (XML mapping). - - - - - An which public properties are used as - type-definition pareneters or null where type-definition does not need parameters or you want use default values. - - - - As an anonimous object can be used: - - configure.TypeDefinition<TableHiLoGenerator>(c=> - { - c.Alias = "HighLow"; - c.Properties = new {max_lo = 99}; - }); - - - - - - - Responsible for checking that a resource name matches the default pattern of "*.hbm.xml". This is the - default filter for . - - - - - Responsible for determining whether an embedded resource should be parsed for HBM XML data while - iterating through an . - - - - - - - - Implemented by any mapping elemes supports simple and/or multicolumn mapping. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A base class for HBM schema classes that provides helper methods. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - The relation of the element of the collection. - - - Can be one of: HbmCompositeElement, HbmElement, HbmManyToAny, HbmManyToMany, HbmOneToMany... - according to the type of the collection. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Columns and Formulas, in declared order - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Responsible for converting a of HBM XML into an instance of - . - - - - - Responsible for building a list of objects from a range of acceptable - sources. - - - - - Calls the greedy constructor, passing it new instances of and - . - - - - Adds any embedded resource streams which pass the . - An assembly containing embedded mapping documents. - A custom filter. - - - Adds any embedded resource streams which pass the default filter. - An assembly containing embedded mapping documents. - - - - Responsible for converting a of HBM XML into an instance of - . - - Uses an to deserialize HBM. - - - - Converts a partial class name into a fully qualified one - - - - - - - - Converts a partial class name into a fully one - - - - The class FullName (without the assembly) - - The FullName is equivalent to the default entity-name - - - - - Attempts to find a type by its full name. Throws a - using the provided in case of failure. - - name of the class to find - Error message to use for - the in case of failure. Should contain - the {0} formatting placeholder. - A instance. - - Thrown when there is an error loading the class. - - - - - Similar to , but handles short class names - by calling . - - - - - - - - - Called for all collections. parameter - was added in NH to allow for reflection related to generic types. - - - - - Called for arrays and primitive arrays - - - - - Called for Maps - - - - - Called for all collections - - - - - Bind columns and formulas in the order in which they were mapped. - - - - - - - - Extracts the names of classes mapped in a given file, - and the names of the classes they extend. - - - - - Returns a collection of containing - information about all classes in this stream. - - A validated representing - a mapping file. - - - - Holds information about mapped classes found in the hbm.xml files. - - - - - Allows the application to specify properties and mapping documents to be used when creating - a . - - - - Usually an application will create a single , build a single instance - of , and then instantiate objects in threads - servicing client requests. - - - The is meant only as an initialization-time object. - is immutable and does not retain any association back to the - - - - - Default name for hibernate configuration file. - - - - Clear the internal state of the object. - - - - - Create a new Configuration object. - - - - - Get the mapping for a particular class - - - - Get the mapping for a particular entity - An entity name. - the entity mapping information - - - - Get the mapping for a particular collection role - - a collection role - - - - - Read mappings from a particular XML file. This method is equivalent - to . - - - - - - - Read mappings from a particular XML file. - - a path to a file - This configuration object. - - - - Read mappings from a . This method is equivalent to - . - - an XML string - The name to use in error reporting. May be . - This configuration object. - - - - Read mappings from a . - - an XML string - This configuration object. - - - - Read mappings from a URL. - - a URL - This configuration object. - - - - Read mappings from a URL. - - a to read the mappings from. - This configuration object. - - - - Read mappings from an . - - A loaded that contains the mappings. - The name of the document, for error reporting purposes. - This configuration object. - - - - Takes the validated XmlDocument and has the Binder do its work of - creating Mapping objects from the Mapping Xml. - - The NamedXmlDocument that contains the validated mapping XML file. - - - - Add mapping data using deserialized class. - - Mapping metadata. - XML file's name where available; otherwise null. - - - - Create a new to add classes and collection - mappings to. - - - - - Read mappings from a . - - The stream containing XML - This Configuration object. - - The passed in through the parameter - is not guaranteed to be cleaned up by this method. It is the caller's responsiblity to - ensure that is properly handled when this method - completes. - - - - - Read mappings from a . - - The stream containing XML - The name of the stream to use in error reporting. May be . - This Configuration object. - - The passed in through the parameter - is not guaranteed to be cleaned up by this method. It is the caller's responsiblity to - ensure that is properly handled when this method - completes. - - - - - Adds the mappings in the resource of the assembly. - - The path to the resource file in the assembly. - The assembly that contains the resource file. - This configuration object. - - - - Adds the mappings from embedded resources of the assembly. - - Paths to the resource files in the assembly. - The assembly that contains the resource files. - This configuration object. - - - - Read a mapping from an embedded resource, using a convention. - - The type to map. - This configuration object. - - The convention is for class Foo.Bar.Foo to be mapped by - the resource named Foo.Bar.Foo.hbm.xml, embedded in - the class' assembly. If the mappings and classes are defined - in different assemblies or don't follow the naming convention, - this method cannot be used. - - - - - Adds all of the assembly's embedded resources whose names end with .hbm.xml. - - The name of the assembly to load. - This configuration object. - - The assembly must be loadable using . If this - condition is not satisfied, load the assembly manually and call - instead. - - - - - Adds all of the assembly's embedded resources whose names end with .hbm.xml. - - The assembly. - This configuration object. - - - - Read all mapping documents from a directory tree. Assume that any - file named *.hbm.xml is a mapping document. - - a directory - - - - Generate DDL for dropping tables - - - - - - Generate DDL for creating tables - - - - - - Call this to ensure the mappings are fully compiled/built. Usefull to ensure getting - access to all information in the metamodel when calling e.g. getClassMappings(). - - - - - This method may be called many times!! - - - - - Instantiate a new , using the properties and mappings in this - configuration. The will be immutable, so changes made to the - configuration after building the will not affect it. - - An instance. - - - - Returns the set of properties computed from the default properties in the dialect combined with the other properties in the configuration. - - - - - - Set the default assembly to use for the mappings added to the configuration - afterwards. - - The default assembly name. - This configuration instance. - - This setting can be overridden for a mapping file by setting default-assembly - attribute of <hibernate-mapping> element. - - - - - Set the default namespace to use for the mappings added to the configuration - afterwards. - - The default namespace. - This configuration instance. - - This setting can be overridden for a mapping file by setting default-namespace - attribute of <hibernate-mapping> element. - - - - - Sets the default interceptor for use by all sessions. - - The default interceptor. - This configuration instance. - - - - Specify a completely new set of properties - - - - - Adds an of configuration properties. The - Key is the name of the Property and the Value is the - value of the Property. - - An of configuration properties. - - This object. - - - - - Sets the value of the configuration property. - - The name of the property. - The value of the property. - - This configuration object. - - - - - Gets the value of the configuration property. - - The name of the property. - The configured value of the property, or if the property was not specified. - - - - Configure NHibernate using the <hibernate-configuration> section - from the application config file, if found, or the file hibernate.cfg.xml if the - <hibernate-configuration> section not include the session-factory configuration. - - A configuration object initialized with the file. - - To configure NHibernate explicitly using hibernate.cfg.xml, appling merge/override - of the application configuration file, use this code: - - configuration.Configure("path/to/hibernate.cfg.xml"); - - - - - - Configure NHibernate using the file specified. - - The location of the XML file to use to configure NHibernate. - A Configuration object initialized with the file. - - Calling Configure(string) will override/merge the values set in app.config or web.config - - - - - Configure NHibernate using a resource contained in an Assembly. - - The that contains the resource. - The name of the manifest resource being requested. - A Configuration object initialized from the manifest resource. - - Calling Configure(Assembly, string) will overwrite the values set in app.config or web.config - - - - - Configure NHibernate using the specified XmlReader. - - The that contains the Xml to configure NHibernate. - A Configuration object initialized with the file. - - Calling Configure(XmlReader) will overwrite the values set in app.config or web.config - - - - - Set up a cache for an entity class - - - - - Set up a cache for a collection role - - - - - Create an object-oriented view of the configuration properties - - A object initialized from the settings properties. - - - - Set a custom naming strategy - - the NamingStrategy to set - - - - - Load and validate the mappings in the against - the nhibernate-mapping-2.2 schema, without adding them to the configuration. - - - This method is made public to be usable from the unit tests. It is not intended - to be called by end users. - - The XmlReader that contains the mapping. - The name of the document, for error reporting purposes. - NamedXmlDocument containing the validated XmlDocument built from the XmlReader. - - - - Adds the Mappings in the after validating it - against the nhibernate-mapping-2.2 schema. - - The XmlReader that contains the mapping. - This Configuration object. - - - - Adds the Mappings in the after validating it - against the nhibernate-mapping-2.2 schema. - - The XmlReader that contains the mapping. - The name of the document to use for error reporting. May be . - This Configuration object. - - - - Set or clear listener for a given . - - The . - The array of AssemblyQualifiedName of each listener for . - - must implements the interface related with . - All listeners of the given will be cleared if the - is null or empty. - - - when an element of have an invalid value or cant be instantiated. - - - - - Set or clear listener for a given . - - The . - The listener for or null to clear. - must implements the interface related with . - - - - - Set or clear listeners for a given . - - The . - The listener for or null to clear. - Listeners of must implements one of the interface of event listenesr. - - - - - Append the listeners to the end of the currently configured - listeners - - - - - Generate DDL for altering tables - - - - - - The class mappings - - - - - The collection mappings - - - - - The table mappings - - - - - The named queries - - - - - Retrieve the user-supplied delegate to handle non-existent entity scenarios. - - - Specify a user-supplied delegate to be used to handle scenarios where an entity could not be - located by specified id. This is mainly intended for EJB3 implementations to be able to - control how proxy initialization errors should be handled... - - - - - Gets or sets the to use. - - The to use. - - - - Gets or sets the that contains the configuration - properties and their values. - - - The that contains the configuration - properties and their values. - - - - - Get the query language imports (entityName/className -> AssemblyQualifiedName) - - - - - The named SQL queries - - - - - Naming strategy for tables and columns - - - - - Defines operations common to "compiled" mappings (ie. SessionFactory) and - "uncompiled" mappings (ie Configuration that are used by implementors of IType - - - - - Add a type-definition for mappings. - - The peristent type. - The where add the type-definition. - The custom configuration action. - The . - - - - - Depending on where you will use the type-definition in the mapping the - can be : - - - - - - - - - - - - - - - - - - - - - Summary description for ConfigurationSectionHandler. - - - - - The default - - See for a better alternative - - - - A set of rules for determining the physical column and table names given the information in the mapping - document. May be used to implement project-scoped naming standards for database objects. - - - - - Return a table name for an entity class - - the fully-qualified class name - a table name - - - - Return a column name for a property path expression - - a property path - a column name - - - - Alter the table name given in the mapping document - - a table name - a table name - - - - Alter the column name given in the mapping document - - a column name - a column name - - - - Return a table name for a collection - - the fully-qualified name of the owning entity class - a property path - a table name - - - - Return the logical column name used to refer to a column in the metadata - (like index, unique constraints etc) - A full bijection is required between logicalNames and physical ones - logicalName have to be case insersitively unique for a given table - - given column name if any - property name of this column - - - - The singleton instance - - - - - Return the unqualified class name - - - - - - - Return the unqualified property name - - - - - - - Return the argument - - - - - - - Return the argument - - - - - - - Return the unqualified property name - - - - - - - - Values for class-cache and collection-cache strategy. - - - - Xml value: read-only - - - Xml value: read-write - - - Xml value: nonstrict-read-write - - - Xml value: transactional - - - - Helper to parse to and from XML string value. - - - - - Convert a in its xml expected value. - - The to convert. - The . - - - - Convert a string to . - - The string that represent . - - The converted to . - - If the values is invalid. - - See for allowed values. - - - - - Provides access to configuration information. - - - NHibernate has two property scopes: - - - Factory-level properties may be passed to the when it is - instantiated. Each instance might have different property values. If no properties are - specified, the factory gets them from Environment - - - System-level properties are shared by all factory instances and are always determined - by the properties - - - In NHibernate, <hibernate-configuration> section in the application configuration file - corresponds to Java system-level properties; <session-factory> - section is the session-factory-level configuration. - - It is possible to use the application configuration file (App.config) together with the NHibernate - configuration file (hibernate.cfg.xml) at the same time. - Properties in hibernate.cfg.xml override/merge properties in application configuration file where same - property is found. For others configuration a merge is applied. - - - - - Used to find the .Net 2.0 named connection string - - - - A default database schema (owner) name to use for unqualified tablenames - - - A default database catalog name to use for unqualified tablenames - - - The EntityMode in which set the Session opened from the SessionFactory. - - - - When using an enhanced id generator and pooled optimizers (), - prefer interpreting the database value as the lower (lo) boundary. The default is to interpret it as the high boundary. - - - - Enable formatting of SQL logged to the console - - - Should named queries be checked during startup (the default is enabled). - Mainly intended for test environments. - - - Enable statistics collection - - - Enable ordering of insert statements for the purpose of more effecient batching. - - - - If this setting is set to false, exceptions in IInterceptor.BeforeTransactionCompletion bubble to the caller of ITransaction.Commit and abort the commit. - If this setting is set to true, exceptions in IInterceptor.BeforeTransactionCompletion are ignored and the commit is performed. - The default setting is false. - - - - - Issue warnings to user when any obsolete property names are used. - - - - - - - NHibernate version (informational). - - - - - Gets a copy of the configuration found in <hibernate-configuration> section - of app.config/web.config. - - - This is the replacement for hibernate.properties - - - - - The bytecode provider to use. - - - This property is read from the <nhibernate> section - of the application configuration file by default. Since it is not - always convenient to configure NHibernate through the application - configuration file, it is also possible to set the property value - manually. This should only be done before a configuration object - is created, otherwise the change may not take effect. - - - - - Whether to enable the use of reflection optimizer - - - This property is read from the <nhibernate> section - of the application configuration file by default. Since it is not - always convenient to configure NHibernate through the application - configuration file, it is also possible to set the property value - manually. This should only be done before a configuration object - is created, otherwise the change may not take effect. - - - - - Represents a mapping queued for delayed processing to await - processing of an extends entity upon which it depends. - - - - - An exception that occurs at configuration time, rather than runtime, as a result of - something screwy in the hibernate.cfg.xml. - - - - - An exception that usually occurs at configuration time, rather than runtime, as a result of - something screwy in the O-R mappings - - - - - Initializes a new instance of the class. - - The message that describes the error. - - - - Initializes a new instance of the class. - - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class. - - The message that describes the error. - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Initializes a new instance of the class. - - Default message is used. - - - - Initializes a new instance of the class. - - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class. - - The message that describes the error. - - - - Initializes a new instance of the class. - - The message that describes the error. - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Summary description for ImprovedNamingStrategy. - - - - - The singleton instance - - - - - Return the unqualified class name, mixed case converted to underscores - - - - - - - Return the full property path with underscore separators, mixed case converted to underscores - - - - - - - Convert mixed case to underscores - - - - - - - Convert mixed case to underscores - - - - - - - Return the full property path prefixed by the unqualified class name, with underscore separators, mixed case converted to underscores - - - - - - - - A collection of mappings from classes and collections to relational database tables. - - Represents a single <hibernate-mapping> element. - - - - Binding table between the logical column name and the name out of the naming strategy - for each table. - According that when the column name is not set, the property name is considered as such - This means that while theoretically possible through the naming strategy contract, it is - forbidden to have 2 real columns having the same logical name - - - - - Binding between logical table name and physical one (ie after the naming strategy has been applied) - - - - - - - - - - - - - - - - - Adds an import to allow for the full class name Namespace.Entity (AssemblyQualifiedName) - to be referenced as Entity or some other name in HQL. - - The name of the type that is being renamed. - The new name to use in HQL for the type. - Thrown when the rename already identifies another type. - - - - - - - - - The default namespace for persistent classes - - - - - The default assembly for persistent classes - - - - - - - - - - - Gets or sets a boolean indicating if the Fully Qualified Type name should - automatically have an import added as the class name. - - if the class name should be used as an import. - - Auto-import is used to shorten the string used to refer to types to just their - unqualified name. So if the type MyAssembly.MyNamespace.MyClass, MyAssembly has - auto-import="false" then all use of it in HQL would need to be the fully qualified - version MyAssembly.MyNamespace.MyClass. If auto-import="true", the type could - be referred to in HQL as just MyClass. - - - - - Queues mapping files according to their dependency order. - - - - - Adds the specified document to the queue. - - - - - Gets a that can now be processed (i.e. - that doesn't depend on classes not yet processed). - - - - - - Checks that no unprocessed documents remain in the queue. - - - - - Holds information about mapped classes found in an embedded resource - - - - - Gets the names of all entities outside this resource - needed by the classes in this resource. - - - - - Gets the names of all entities in this resource - - - - - Settings that affect the behavior of NHibernate at runtime. - - - - - Get the registry to provide Hql-Generators for known properties/methods. - - - - - Reads configuration properties and configures a instance. - - - - - Provides callbacks from the to the persistent object. Persistent classes may - implement this interface but they are not required to. - - - - , , and are intended to be used - to cascade saves and deletions of dependent objects. This is an alternative to declaring cascaded - operations in the mapping file. - - - may be used to initialize transient properties of the object from its persistent - state. It may not be used to load dependent objects since the interface - may not be invoked from inside this method. - - - A further intended usage of , , and - is to store a reference to the for later use. - - - If , , or return - , the operation is silently vetoed. If a - is thrown, the operation is vetoed and the exception is passed back to the application. - - - Note that is called after an identifier is assigned to the object, except when - identity key generation is used. - - - - - - Called when an entity is saved - - The session - If we should veto the save - - - - Called when an entity is passed to . - - The session - A value indicating whether the operation - should be vetoed or allowed to proceed. - - This method is not called every time the object's state is - persisted during a flush. - - - - - Called when an entity is deleted - - The session - A value indicating whether the operation - should be vetoed or allowed to proceed. - - - - Called after an entity is loaded. - - - It is illegal to access the from inside this method.. - However, the object may keep a reference to the session for later use - - The session - The identifier - - - - Veto the action - - - - - Accept the action - - - - - Implemented by persistent classes with invariants that must be checked before inserting - into or updating the database - - - - - Validate the state of the object before persisting it. If a violation occurs, - throw a . This method must not change the state of the object - by side-effect. - - - - - Thrown from when an invariant was violated. Some applications - might subclass this exception in order to provide more information about the violation - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - The message that describes the error. - - - - Initializes a new instance of the class. - - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class. - - The message that describes the error. - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - An unordered, unkeyed collection that can contain the same element - multiple times. The .NET collections API, has no Bag. - Most developers seem to use to represent bag semantics, - so NHibernate follows this practice. - - The type of the element the bag should hold. - The underlying collection used is an - - - - Base class for implementing . - - - - - - Persistent collections are treated as value objects by NHibernate. - ie. they have no independent existence beyond the object holding - a reference to them. Unlike instances of entity classes, they are - automatically deleted when unreferenced and automatically become - persistent when held by a persistent object. Collections can be - passed between different objects (change "roles") and this might - cause their elements to move from one database table to another. - - - NHibernate "wraps" a collection in an instance of - . This mechanism is designed - to support tracking of changes to the collection's persistent - state and lazy instantiation of collection elements. The downside - is that only certain abstract collection types are supported and - any extra semantics are lost. - - - Applications should never use classes in this namespace - directly, unless extending the "framework" here. - - - Changes to structure of the collection are recorded by the - collection calling back to the session. Changes to mutable - elements (ie. composite elements) are discovered by cloning their - state when the collection is initialized and comparing at flush - time. - - - - - - Return the user-visible collection (or array) instance - - - By default, the NHibernate wrapper is an acceptable collection for - the end user code to work with because it is interface compatible. - An NHibernate PersistentList is an IList, an NHibernate PersistentMap is an IDictionary - and those are the types user code is expecting. - - - - After flushing, re-init snapshot state. - - - - Clears out any Queued Additions. - - - After a Flush() the database is in synch with the in-memory - contents of the Collection. Since everything is in synch remove - any Queued Additions. - - - - - Called just before reading any rows from the - - - - - Called after reading all rows from the - - - This should be overridden by sub collections that use temporary collections - to store values read from the db. - - - true if NOT has Queued operations - - - - - Called after initializing from cache - - - true if NOT has Queued operations - - - - - Disassociate this collection from the given session. - - - true if this was currently associated with the given session - - - - Associate the collection with the given session. - - - false if the collection was already associated with the session - - - - Read the state of the collection from a disassembled cached value. - - - - - - - - Iterate all collection entries, during update of the database - - - An that gives access to all entries - in the collection. - - - - - Reads the row from the . - - - This method should be prepared to handle duplicate elements caused by fetching multiple collections. - - The IDataReader that contains the value of the Identifier - The persister for this Collection. - The descriptor providing result set column names - The owner of this Collection. - The object that was contained in the row. - - - - Get the identifier of the given collection entry - - - - - Get the index of the given collection entry - - - - - Get the value of the given collection entry - - - - - Get the snapshot value of the given collection entry - - - - - Called before any elements are read into the collection, - allowing appropriate initializations to occur. - - The for this persistent collection. - The anticipated size of the collection after initilization is complete. - - - - Does the current state exactly match the snapshot? - - The to compare the elements of the Collection. - - if the wrapped collection is different than the snapshot - of the collection or if one of the elements in the collection is - dirty. - - - - Is the snapshot empty? - - - - Disassemble the collection, ready for the cache - - The for this Collection. - The contents of the persistent collection in a cacheable form. - - - - Gets a indicating if the rows for this collection - need to be recreated in the table. - - The for this Collection. - - by default since most collections can determine which rows need to be - individually updated/inserted/deleted. Currently only 's for many-to-many - need to be recreated. - - - - - Return a new snapshot of the current state of the collection - - - - - To be called internally by the session, forcing - immediate initalization. - - - This method is similar to , except that different exceptions are thrown. - - - - - Does an element exist at this entry in the collection? - - - - - Do we need to insert this element? - - - - - Do we need to update this element? - - - - - Get all the elements that need deleting - - - - - Is this the wrapper for the given underlying collection instance? - - The collection to see if this IPersistentCollection is wrapping. - - if the IPersistentCollection is wrappping the collection instance, - otherwise. - - - - Get the "queued" orphans - - - - Clear the dirty flag, after flushing changes - to the database. - - - - - Mark the collection as dirty - - - - - Called before inserting rows, to ensure that any surrogate keys are fully generated - - - - - - Called after inserting a row, to fetch the natively generated id - - - - - Get all "orphaned" elements - - The snapshot of the collection. - The persistent class whose objects - the collection is expected to contain. - - An that contains all of the elements - that have been orphaned. - - - - - The owning entity. - - - Note that the owner is only set during the flush - cycle, and when a new collection wrapper is created - while loading an entity. - - - - Get the current collection key value - - - Get the current role name - - - Is the collection unreferenced? - - - - Is the collection dirty? Note that this is only - reliable during the flush cycle, after the - collection elements are dirty checked against - the snapshot. - - - - Get the snapshot cached by the collection instance - - - - Is the initialized collection empty? - - - - - Gets a indicating if the underlying collection is directly - accessible through code. - - - if we are not guaranteed that the NHibernate collection wrapper - is being used. - - - This is typically whenever a transient object that contains a collection is being - associated with an through or . - NHibernate can't guarantee that it will know about all operations that would cause NHibernate's collections - to call or . - - - - - - - - - - - - - - Not called by Hibernate, but used by non-NET serialization, eg. SOAP libraries. - - - - - Return the user-visible collection (or array) instance - - - By default, the NHibernate wrapper is an acceptable collection for - the end user code to work with because it is interface compatible. - An NHibernate PersistentList is an IList, an NHibernate PersistentMap is an IDictionary - and those are the types user code is expecting. - - - - - Called by any read-only method of the collection interface - - - - Called by the Count property - - - - Called by any writer method of the collection interface - - - - - Queue an addition, delete etc. if the persistent collection supports it - - - - - After reading all existing elements from the database, - add the queued elements to the underlying collection. - - - - - Clears out any Queued operation. - - - After flushing, clear any "queued" additions, since the - database state is now synchronized with the memory state. - - - - - Called just before reading any rows from the - - - - - Called after reading all rows from the - - - This should be overridden by sub collections that use temporary collections - to store values read from the db. - - - - - Initialize the collection, if possible, wrapping any exceptions - in a runtime exception - - currently obsolete - if we cannot initialize - - - - Mark the collection as initialized. - - - - - Disassociate this collection from the given session. - - - true if this was currently associated with the given session - - - - Associate the collection with the given session. - - - false if the collection was already associated with the session - - - - Gets a indicating if the rows for this collection - need to be recreated in the table. - - The for this Collection. - - by default since most collections can determine which rows need to be - individually updated/inserted/deleted. Currently only 's for many-to-many - need to be recreated. - - - - - To be called internally by the session, forcing - immediate initalization. - - - This method is similar to , except that different exceptions are thrown. - - - - - Gets the Snapshot from the current session the collection is in. - - - - - Called before inserting rows, to ensure that any surrogate keys are fully generated - - - - - - Called after inserting a row, to fetch the natively generated id - - - - - Get all "orphaned" elements - - - - - Given a collection of entity instances that used to - belong to the collection, and a collection of instances - that currently belong, return a collection of orphans - - - - - Disassemble the collection, ready for the cache - - - - - - - Is this the wrapper for the given underlying collection instance? - - - - - - - Does an element exist at this entry in the collection? - - - - - - - - Get all the elements that need deleting - - - - - Read the state of the collection from a disassembled cached value. - - - - - - - - Do we need to update this element? - - - - - - - - - Reads the row from the . - - The IDataReader that contains the value of the Identifier - The persister for this Collection. - The descriptor providing result set column names - The owner of this Collection. - The object that was contained in the row. - - - - Do we need to insert this element? - - - - - - - - - Get the index of the given collection entry - - - - - Called before any elements are read into the collection, - allowing appropriate initializations to occur. - - The underlying collection persister. - The anticipated size of the collection after initilization is complete. - - - - Is the collection currently connected to an open session? - - - - - Is this collection in a state that would allow us to "queue" additions? - - - - Is this collection in a state that would allow us to - "queue" puts? This is a special case, because of orphan - delete. - - - - Is this collection in a state that would allow us to - "queue" clear? This is a special case, because of orphan - delete. - - - - Is this the "inverse" end of a bidirectional association? - - - - Is this the "inverse" end of a bidirectional association with - no orphan delete enabled? - - - - - Is this the "inverse" end of a bidirectional one-to-many, or - of a collection with no orphan delete? - - - - - - - - Is the initialized collection empty? - - - - - Gets a indicating if the underlying collection is directly - accessible through code. - - - if we are not guaranteed that the NHibernate collection wrapper - is being used. - - - This is typically whenever a transient object that contains a collection is being - associated with an through or . - NHibernate can't guarantee that it will know about all operations that would cause NHibernate's collections - to call or . - - - - Is this instance initialized? - - - Does this instance have any "queued" additions? - - - - - - - - Initializes this PersistentBag from the cached values. - - The CollectionPersister to use to reassemble the PersistentBag. - The disassembled PersistentBag. - The owner object. - - - - Gets a indicating if this PersistentBag needs to be recreated - in the database. - - - - if this is a one-to-many Bag, if this is not - a one-to-many Bag. Since a Bag is an unordered, unindexed collection - that permits duplicates it is not possible to determine what has changed in a - many-to-many so it is just recreated. - - - - - Counts the number of times that the occurs - in the . - - The element to find in the list. - The to search. - The that can determine equality. - The entity mode. - - The number of occurrences of the element in the list. - - - - - Implements "bag" semantics more efficiently than by adding - a synthetic identifier column to the table. - - - - The identifier is unique for all rows in the table, allowing very efficient - updates and deletes. The value of the identifier is never exposed to the - application. - - - Identifier bags may not be used for a many-to-one association. Furthermore, - there is no reason to use inverse="true". - - - - - - Initializes this Bag from the cached values. - - The CollectionPersister to use to reassemble the PersistentIdentifierBag. - The disassembled PersistentIdentifierBag. - The owner object. - - - - A persistent wrapper for an - - The type of the element the list should hold. - The underlying collection used is a - - - - Initializes an instance of the - in the . - - The the list is in. - - - - Initializes an instance of the - that wraps an existing in the . - - The the list is in. - The to wrap. - - - - Initializes this PersistentGenericList from the cached values. - - The CollectionPersister to use to reassemble the PersistentGenericList. - The disassembled PersistentList. - The owner object. - - - - A persistent wrapper for a . Underlying - collection is a - - The type of the keys in the IDictionary. - The type of the elements in the IDictionary. - - - - Construct an uninitialized PersistentGenericMap. - - The ISession the PersistentGenericMap should be a part of. - - - - Construct an initialized PersistentGenericMap based off the values from the existing IDictionary. - - The ISession the PersistentGenericMap should be a part of. - The IDictionary that contains the initial values. - - - - Initializes this PersistentGenericMap from the cached values. - - The CollectionPersister to use to reassemble the PersistentGenericMap. - The disassembled PersistentGenericMap. - The owner object. - - - - A persistent wrapper for an . - - - - - The that NHibernate is wrapping. - - - - - A temporary list that holds the objects while the PersistentSet is being - populated from the database. - - - This is necessary to ensure that the object being added to the PersistentSet doesn't - have its' GetHashCode() and Equals() methods called during the load - process. - - - - - Constructor matching super. - Instantiates a lazy set (the underlying set is un-initialized). - - The session to which this set will belong. - - - - Instantiates a non-lazy set (the underlying set is constructed - from the incoming set reference). - - The session to which this set will belong. - The underlying set data. - - - - Initializes this PersistentSet from the cached values. - - The CollectionPersister to use to reassemble the PersistentSet. - The disassembled PersistentSet. - The owner object. - - - - Set up the temporary List that will be used in the EndRead() - to fully create the set. - - - - - Takes the contents stored in the temporary list created during BeginRead() - that was populated during ReadFrom() and write it to the underlying - PersistentSet. - - - - - A persistent wrapper for an array. lazy initialization is NOT supported - - Use of Hibernate arrays is not really recommended. - - - - A temporary list that holds the objects while the PersistentArrayHolder is being - populated from the database. - - - - - Returns the user-visible portion of the NHibernate PersistentArrayHolder. - - - The array that contains the data, not the NHibernate wrapper. - - - - - Before is called the PersistentArrayHolder needs to setup - a temporary list to hold the objects. - - - - - Takes the contents stored in the temporary list created during - that was populated during and write it to the underlying - array. - - - - - Initializes this array holder from the cached values. - - The CollectionPersister to use to reassemble the Array. - The disassembled Array. - The owner object. - - - - Gets or sets the array. - - The array. - - - - The base class for the ConnectionProvider. - - - - - A strategy for obtaining ADO.NET . - - - The IConnectionProvider interface is not intended to be exposed to the application. - Instead it is used internally by NHibernate to obtain . - Implementors should provide a public default constructor. - - - - - Initialize the connection provider from the given properties. - - The connection provider settings - - - - Dispose of a used - - The to clean up. - - - - Get an open . - - An open . - - - - Gets the this ConnectionProvider should use to - communicate with the .NET Data Provider - - - The to communicate with the .NET Data Provider. - - - - - Closes the . - - The to clean up. - - - - Configures the ConnectionProvider with the Driver and the ConnectionString. - - An that contains the settings for this ConnectionProvider. - - Thrown when a could not be found - in the settings parameter or the Driver Class could not be loaded. - - - - - Get the .NET 2.0 named connection string - - - Thrown when a was found - in the settings parameter but could not be found in the app.config - - - - - Configures the driver for the ConnectionProvider. - - An that contains the settings for the Driver. - - Thrown when the could not be - found in the settings parameter or there is a problem with creating - the . - - - - - Get an open . - - An open . - - - - A flag to indicate if Disose() has been called. - - - - - Finalizer that ensures the object is correctly disposed of. - - - - - Takes care of freeing the managed and unmanaged resources that - this class is responsible for. - - - - - Takes care of freeing the managed and unmanaged resources that - this class is responsible for. - - Indicates if this ConnectionProvider is being Disposed of or Finalized. - -

- If this ConnectionProvider is being Finalized (isDisposing==false) then make - sure not to call any methods that could potentially bring this - ConnectionProvider back to life. -

-

- If any subclasses manage resources that also need to be disposed of this method - should be overridden, but don't forget to call it in the override. -

-
-
- - - Gets the for the - to connect to the database. - - - The for the - to connect to the database. - - - - - Gets the that can create the object. - - - The that can create the . - - - - - Instanciates a connection provider given configuration properties. - - - - - A ConnectionProvider that uses an IDriver to create connections. - - - - - Closes and Disposes of the . - - The to clean up. - - - - Gets a new open through - the . - - - An Open . - - - If there is any problem creating or opening the . - - - - - An implementation of the IConnectionProvider that simply throws an exception when - a connection is requested. - - - This implementation indicates that the user is expected to supply an ADO.NET connection - - - - - Throws an if this method is called - because the user is responsible for closing s. - - The to clean up. - - Thrown when this method is called. User is responsible for closing - s. - - - - - Throws an if this method is called - because the user is responsible for creating s. - - - No value is returned because an is thrown. - - - Thrown when this method is called. User is responsible for creating - s. - - - - - Configures the ConnectionProvider with only the Driver class. - - - - All other settings of the Connection are the responsibility of the User since they configured - NHibernate to use a Connection supplied by the User. - - - - - Provides a current session - for each . - Not recommended for .NET 2.0 web applications. - - - - - Extends the contract defined by - by providing methods to bind and unbind sessions to the current context. - - - The notion of a contextual session is managed by some external entity - (generally some form of interceptor like the HttpModule). - This external manager is responsible for scoping these contextual sessions - appropriately binding/unbinding them here for exposure to the application - through calls. - - - - - Defines the contract for implementations which know how to - scope the notion of a current session. - - - - Implementations should adhere to the following: - - contain a constructor accepting a single argument of type - - should be thread safe - should be fully serializable - - - - Implementors should be aware that they are also fully responsible for - cleanup of any generated current-sessions. - - - Note that there will be exactly one instance of the configured - ICurrentSessionContext implementation per . - - - It is recommended to inherit from the class - whenever possible as it simplifies the implementation and provides - single entry point with session binding support. - - - - - - Retrieve the current session according to the scoping defined - by this implementation. - - The current session. - Typically indicates an issue - locating or creating the current session. - - - - Retrieve the current session according to the scoping defined - by this implementation. - - The current session. - Indicates an issue - locating the current session. - - - - Binds the specified session to the current context. - - - - - Returns whether there is a session bound to the current context. - - - - - Unbinds and returns the current session. - - - - Gets or sets the currently bound session. - - - - Get the dicitonary mapping session factory to its current session. - - - - - Set the map mapping session factory to its current session. - - - - - Gets or sets the currently bound session. - - - - - The key is the session factory and the value is the bound session. - - - - - The key is the session factory and the value is the bound session. - - - - - This class allows access to the HttpContext without referring to HttpContext at compile time. - The accessors are cached as delegates for performance. - - - - - A impl which scopes the notion of current - session by the current thread of execution. Threads do not give us a - nice hook to perform any type of cleanup making - it questionable for this impl to actually generate Session instances. In - the interest of usability, it was decided to have this default impl - actually generate a session upon first request and then clean it up - after the associated with that session - is committed/rolled-back. In order for ensuring that happens, the sessions - generated here are unusable until after {@link Session#beginTransaction()} - has been called. If Close() is called on a session managed by - this class, it will be automatically unbound. -

- Additionally, the static and methods are - provided to allow application code to explicitly control opening and - closing of these sessions. This, with some from of interception, - is the preferred approach. It also allows easy framework integration - and one possible approach for implementing long-sessions. -

-

-
- - - Unassociate a previously bound session from the current thread of execution. - - - - - - - Provides a current session - for each thread using the []. - To avoid if there are two session factories in the same thread. - - - - Gets or sets the currently bound session. - - - - Provides a current session - for the current OperationContext in WCF. Works only during the lifetime of a WCF operation. - - - - - Provides a current session - for each System.Web.HttpContext. Works only with web applications. - - - - - Constructed with property name - - - - - Apply a "between" constraint to the named property - - - - - Apply an "in" constraint to the named property - - - - - Apply an "in" constraint to the named property - - - - - Apply an "in" constraint to the named property - - - - - A case-insensitive "like", similar to Postgres "ilike" operator - - - - - A case-insensitive "like", similar to Postgres "ilike" operator - - - - - Apply a "like" constraint to the named property - - - - - Apply a "like" constraint to the named property - - - - - Apply a "like" constraint to the named property - - - - - Apply an "is empty" constraint to the named property - - - - - Apply a "not is empty" constraint to the named property - - - - - Apply an "is null" constraint to the named property - - - - - Apply an "not is null" constraint to the named property - - - - - Constructed with property name - - - - - Add a property equal subquery criterion - - detached subquery - - - - Add a property equal all subquery criterion - - detached subquery - - - - Create a property greater than or equal subquery criterion - - detached subquery - - - - Create a property greater than or equal all subquery criterion - - detached subquery - - - - Create a property greater than or equal some subquery criterion - - detached subquery - - - - Create a property greater than subquery criterion - - detached subquery - - - - Create a property greater than all subquery criterion - - detached subquery - - - - Create a property greater than some subquery criterion - - detached subquery - - - - Create a property in subquery criterion - - detached subquery - - - - Create a property less than or equal subquery criterion - - detached subquery - - - - Create a property less than or equal all subquery criterion - - detached subquery - - - - Create a property less than or equal some subquery criterion - - detached subquery - - - - Create a property less than subquery criterion - - detached subquery - - - - Create a property less than all subquery criterion - - detached subquery - - - - Create a property less than some subquery criterion - - detached subquery - - - - Create a property not equal subquery criterion - - detached subquery - - - - Create a property not in subquery criterion - - detached subquery - - - - Create an alias for the previous projection - - - - - Select an arbitrary projection - - - - - A property average value - - - - - A property average value - - - - - A property value count - - - - - A property value count - - - - - A distinct property value count - - - - - A distinct property value count - - - - - A grouping property value - - - - - A grouping property value - - - - - A property maximum value - - - - - A property maximum value - - - - - A property minimum value - - - - - A property minimum value - - - - - A projected property value - - - - - A projected property value - - - - - A property value sum - - - - - A property value sum - - - - - Constructed with property name - - - - - Apply a "between" constraint to the named property - - - - - Apply an "in" constraint to the named property - - - - - Apply an "in" constraint to the named property - - - - - Apply an "in" constraint to the named property - - - - - A case-insensitive "like", similar to Postgres "ilike" operator - - - - - A case-insensitive "like", similar to Postgres "ilike" operator - - - - - Apply a "like" constraint to the named property - - - - - Apply a "like" constraint to the named property - - - - - Apply a "like" constraint to the named property - - - - - Apply an "is empty" constraint to the named property - - - - - Apply a "not is empty" constraint to the named property - - - - - Apply an "is null" constraint to the named property - - - - - Apply an "not is null" constraint to the named property - - - - - Add an Exists subquery criterion - - - - - Add a NotExists subquery criterion - - - - - Subquery expression in the format - .Where(t => t.Property [==, !=, >, etc.] detachedQueryOver.As<propertyType>()) - - - - - Subquery expression in the format - .Where(() => alias.Property [==, !=, >, etc.] detachedQueryOver.As<propertyType>()) - - - - - Subquery expression in the format - .WhereAll(t => t.Property [==, !=, >, etc.] detachedQueryOver.As<propertyType>()) - - - - - Subquery expression in the format - .WhereAll(() => alias.Property [==, !=, >, etc.] detachedQueryOver.As<propertyType>()) - - - - - Subquery expression in the format - .WhereSome(t => t.Property [==, !=, >, etc.] detachedQueryOver.As<propertyType>()) - - - - - Subquery expression in the format - .WhereSome(() => alias.Property [==, !=, >, etc.] detachedQueryOver.As<propertyType>()) - - - - - Add a property equal subquery criterion - - detached subquery - - - - Add a property equal all subquery criterion - - detached subquery - - - - Create a property greater than or equal subquery criterion - - detached subquery - - - - Create a property greater than or equal all subquery criterion - - detached subquery - - - - Create a property greater than or equal some subquery criterion - - detached subquery - - - - Create a property greater than subquery criterion - - detached subquery - - - - Create a property greater than all subquery criterion - - detached subquery - - - - Create a property greater than some subquery criterion - - detached subquery - - - - Create a property in subquery criterion - - detached subquery - - - - Create a property less than or equal subquery criterion - - detached subquery - - - - Create a property less than or equal all subquery criterion - - detached subquery - - - - Create a property less than or equal some subquery criterion - - detached subquery - - - - Create a property less than subquery criterion - - detached subquery - - - - Create a property less than all subquery criterion - - detached subquery - - - - Create a property less than some subquery criterion - - detached subquery - - - - Create a property not equal subquery criterion - - detached subquery - - - - Create a property not in subquery criterion - - detached subquery - - - - Base class for implementations. - - - - - An object-oriented representation of a query criterion that may be used as a constraint - in a query. - - - Built-in criterion types are provided by the Expression factory class. - This interface might be implemented by application classes but, more commonly, application - criterion types would extend AbstractCriterion. - - - - - Render a SqlString fragment for the expression. - - A SqlString that contains a valid Sql fragment. - - - - Return typed values for all parameters in the rendered SQL fragment - - An array of TypedValues for the Expression. - - - - Return all projections used in this criterion - - An array of IProjection used by the Expression. - - - - Gets a string representation of the . - - - A String that shows the contents of the . - - - This is not a well formed Sql fragment. It is useful for logging what the - looks like. - - - - - Render a SqlString for the expression. - - A SqlString that contains a valid Sql fragment. - - - - Return typed values for all parameters in the rendered SQL fragment - - An array of TypedValues for the Expression. - - - - Return all projections used in this criterion - - An array of IProjection used by the Expression. - - - - See here for details: - http://steve.emxsoftware.com/NET/Overloading+the++and++operators - - - - - See here for details: - http://steve.emxsoftware.com/NET/Overloading+the++and++operators - - - - - An Aggregation - - - - - A single-column projection that may be aliased - - - - - Render the SQL Fragment. - - The criteria. - The position. - The criteria query. - The enabled filters. - - - - - Render the SQL Fragment to be used in the Group By Clause. - - The criteria. - The criteria query. - The enabled filters. - - - - - Return types for a particular user-visible alias - - - - - - - - - - - - - - - - - Gets the typed values for parameters in this projection - - The criteria. - The criteria query. - - - - - Get the SQL column aliases used by this projection for the columns it writes for inclusion into the - SELECT clause . NHibernate always uses column aliases - to extract data from the , so it is important that these be implemented - correctly in order for NHibernate to be able to extract these values correctly. - - Just as in , represents the number of columns rendered prior to this projection. - The local criteria to which this project is attached (for resolution). - The overall criteria query instance. - The columns aliases. - - - - Get the SQL column aliases used by this projection for the columns it writes for inclusion into the - SELECT clause () for a particular criteria-level alias. - - The criteria-level alias. - Just as in , represents the number of columns rendered prior to this projection. - The local criteria to which this project is attached (for resolution). - The overall criteria query instance. - The columns aliases. - - - - Get the user-visible aliases for this projection (ie. the ones that will be passed to the ResultTransformer) - - - - - Does this projection specify grouping attributes? - - - - - Does this projection specify aggregate attributes? - - - - - Gets the typed values for parameters in this projection - - The criteria. - The criteria query. - - - - - Gets the typed values for parameters in this projection - - The criteria. - The criteria query. - - - - - An that combines two s - with an and between them. - - - - - An that combines two s - with a operator (either "and" or "or") between them. - - - - - Initialize a new instance of the class that - combines two other s. - - The to use in the Left Hand Side. - The to use in the Right Hand Side. - - - - Combines the for the Left Hand Side and the - Right Hand Side of the Expression into one array. - - An array of s. - - - - Converts the LogicalExpression to a . - - A well formed SqlString for the Where clause. - The SqlString will be enclosed by ( and ). - - - - Gets a string representation of the LogicalExpression. - - - The String contains the LeftHandSide.ToString() and the RightHandSide.ToString() - joined by the Op. - - - This is not a well formed Sql fragment. It is useful for logging what Expressions - are being combined. - - - - - Gets the that will be on the Left Hand Side of the Op. - - - - - Gets the that will be on the Right Hand Side of the Op. - - - - - Get the Sql operator to put between the two s. - - - - - Initializes a new instance of the class - that combines two . - - The to use as the left hand side. - The to use as the right hand side. - - - - Get the Sql operator to put between the two s. - - The string "and" - - - - An that represents a "between" constraint. - - - - - Initializes a new instance of the class. - - The _projection. - The _lo. - The _hi. - - - - Initialize a new instance of the class for - the named Property. - - The name of the Property of the Class. - The low value for the BetweenExpression. - The high value for the BetweenExpression. - - - - Casting a value from one type to another, at the database - level - - - - - An that Junctions together multiple - s with an and - - - - - A sequence of logical s combined by some associative - logical operator. - - - - - Adds an to the list of s - to junction together. - - The to add. - - This instance. - - - - - Adds an to the list of s - to junction together. - - - - - Adds an to the list of s - to junction together. - - - - - Get the Sql operator to put between multiple s. - - - - - The corresponding to an instance with no added - subcriteria. - - - - - Get the Sql operator to put between multiple s. - - The string " and " - - - - This is useful if we want to send a value to the database - - - - - A Count - - - - The alias that refers to the "root" entity of the criteria query. - - - Each row of results is a from alias to entity instance - - - Each row of results is an instance of the root entity - - - Each row of results is a distinct instance of the root entity - - - This result transformer is selected implicitly by calling - - - Specifies joining to an entity based on an inner join. - - - Specifies joining to an entity based on a full join. - - - Specifies joining to an entity based on a left outer join. - - - - Some applications need to create criteria queries in "detached - mode", where the Hibernate session is not available. This class - may be instantiated anywhere, and then a ICriteria - may be obtained by passing a session to - GetExecutableCriteria(). All methods have the - same semantics and behavior as the corresponding methods of the - ICriteria interface. - - - - - Get an executable instance of Criteria, - to actually run the query. - - - - Get an executable instance of Criteria, - to actually run the query. - - - - Gets the root entity type if available, throws otherwise - - - This is an NHibernate specific method, used by several dependent - frameworks for advance integration with NHibernate. - - - - - Clear all orders from criteria. - - - - - An that Junctions together multiple - s with an or - - - - - Get the Sql operator to put between multiple s. - - The string " or " - - - - Gets the typed values for parameters in this projection - - The criteria. - The criteria query. - - - - - An that represents an "equal" constraint - between two properties. - - - - - Superclass for an that represents a - constraint between two properties (with SQL binary operators). - - - - - Initializes a new instance of the class. - - The projection. - Name of the RHS property. - - - - Initializes a new instance of the class. - - The LHS projection. - The RHS projection. - - - - Initializes a new instance of the class. - - Name of the LHS property. - Name of the RHS property. - - - - Initializes a new instance of the class. - - Name of the LHS property. - The RHS projection. - - - - - - - Get the Sql operator to use for the property expression. - - - - - Initializes a new instance of the class. - - Name of the LHS property. - The RHS projection. - - - - Initializes a new instance of the class. - - The LHS projection. - The RHS projection. - - - - Initializes a new instance of the class. - - The projection. - Name of the RHS property. - - - - Initializes a new instance of the class - that compares two mapped properties using an "equal" constraint. - - The name of the Property to use as the left hand side. - The name of the Property to use as the right hand side. - - - - Get the Sql operator to use for the . - - The string " = " - - - - Support for Query By Example. - - - - List results = session.CreateCriteria(typeof(Parent)) - .Add( Example.Create(parent).IgnoreCase() ) - .CreateCriteria("child") - .Add( Example.Create( parent.Child ) ) - .List(); - - - - "Examples" may be mixed and matched with "Expressions" in the same - - - - - Set escape character for "like" clause - - - - Set the for this . - - The to determine which properties to include. - This instance. - - This should be used when a custom has - been implemented. Otherwise use the methods - or to set the - to the s built into NHibernate. - - - - - Set the for this - to exclude zero-valued properties. - - - - - Set the for this - to exclude no properties. - - - - - Use the "like" operator for all string-valued properties with - the specified . - - - The to convert the string to the pattern - for the like comparison. - - - - - Use the "like" operator for all string-valued properties. - - - The default is MatchMode.Exact. - - - - - Exclude a particular named property - - The name of the property to exclude. - - - - Create a new instance, which includes all non-null properties - by default - - - A new instance of . - - - - Initialize a new instance of the class for a particular - entity. - - The that the Example is being built from. - The the Example should use. - - - - Determines if the property should be included in the Query. - - The value of the property. - The name of the property. - The of the property. - - if the Property should be included, if - the Property should not be a part of the Query. - - - - - Adds a based on the value - and type parameters to the in the - list parameter. - - The value of the Property. - The of the Property. - The to add the to. - - This method will add objects to the list parameter. - - - - - A strategy for choosing property values for inclusion in the query criteria - - - - - Determine if the Property should be included. - - The value of the property that is being checked for inclusion. - The name of the property that is being checked for inclusion. - The of the property. - - if the Property should be included in the Query, - otherwise. - - - - - Implementation of that includes all - properties regardless of value. - - - - - Implementation of that includes the - properties that are not and do not have an - returned by propertyValue.ToString(). - - - This selector is not present in H2.1. It may be useful if nullable types - are used for some properties. - - - - - This class is semi-deprecated. Use . - - - - - - The namespace may be used by applications as a framework for building - new kinds of . - However, it is intended that most applications will - simply use the built-in criterion types via the static factory methods of this class. - - - - - - - Apply an "equal" constraint to the identifier property - - - ICriterion - - - - Apply an "equal" constraint from the projection to the identifier property - - The projection. - ICriterion - - - - Apply an "equal" constraint to the named property - - The name of the Property in the class. - The value for the Property. - - - - Apply an "equal" constraint to the projection - - The projection. - The value for the Property. - - - - Apply a "like" constraint to the named property - - The name of the Property in the class. - The value for the Property. - A . - - - - Apply a "like" constraint to the project - - The projection. - The value for the Property. - A . - - - - Apply a "like" constraint to the project - - The projection. - The value for the Property. - The match mode. - A . - - - - A case-insensitive "like", similar to Postgres "ilike" operator - - The name of the Property in the class. - The value for the Property. - An . - - - - A case-insensitive "like", similar to Postgres "ilike" operator - - The projection. - The value for the Property. - - An . - - - - - Apply a "greater than" constraint to the named property - - The name of the Property in the class. - The value for the Property. - - - - Apply a "greater than" constraint to the projection - - The projection. - The value for the Property. - - - - Apply a "less than" constraint to the named property - - The name of the Property in the class. - The value for the Property. - - - - Apply a "less than" constraint to the projection - - The projection. - The value for the Property. - - - - Apply a "less than or equal" constraint to the named property - - The name of the Property in the class. - The value for the Property. - - - - Apply a "less than or equal" constraint to the projection - - The projection. - The value for the Property. - - - - Apply a "greater than or equal" constraint to the named property - - The name of the Property in the class. - The value for the Property. - - - - Apply a "greater than or equal" constraint to the projection - - The projection. - The value for the Property. - - - - Apply a "between" constraint to the named property - - The name of the Property in the class. - The low value for the Property. - The high value for the Property. - A . - - - - Apply a "between" constraint to the projection - - The projection. - The low value for the Property. - The high value for the Property. - A . - - - - Apply an "in" constraint to the named property - - The name of the Property in the class. - An array of values. - An . - - - - Apply an "in" constraint to the projection - - The projection. - An array of values. - An . - - - - Apply an "in" constraint to the projection - - The projection. - An ICollection of values. - An . - - - - Apply an "in" constraint to the named property - - The name of the Property in the class. - An ICollection of values. - An . - - - - Apply an "in" constraint to the named property. This is the generic equivalent - of , renamed to avoid ambiguity. - - The name of the Property in the class. - An - of values. - An . - - - - Apply an "in" constraint to the projection. This is the generic equivalent - of , renamed to avoid ambiguity. - - - The projection. - An - of values. - An . - - - - Apply an "is null" constraint to the named property - - The name of the Property in the class. - A . - - - - Apply an "is null" constraint to the projection - - The projection. - A . - - - - Apply an "equal" constraint to two properties - - The lhs Property Name - The rhs Property Name - A . - - - - Apply an "equal" constraint to projection and property - - The projection. - The rhs Property Name - A . - - - - Apply an "equal" constraint to lshProjection and rshProjection - - The LHS projection. - The RSH projection. - A . - - - - Apply an "equal" constraint to the property and rshProjection - - Name of the property. - The RSH projection. - A . - - - - Apply an "not equal" constraint to two properties - - The lhs Property Name - The rhs Property Name - A . - - - - Apply an "not equal" constraint to projection and property - - The projection. - The rhs Property Name - A . - - - - Apply an "not equal" constraint to the projections - - The LHS projection. - The RHS projection. - A . - - - - Apply an "not equal" constraint to the projections - - Name of the property. - The RHS projection. - A . - - - - Apply a "greater than" constraint to two properties - - The lhs Property Name - The rhs Property Name - A . - - - - Apply a "greater than" constraint to two properties - - The projection. - The rhs Property Name - A . - - - - Apply a "greater than" constraint to two properties - - Name of the property. - The projection. - A . - - - - Apply a "greater than" constraint to two properties - - The LHS projection. - The RHS projection. - A . - - - - Apply a "greater than or equal" constraint to two properties - - The lhs Property Name - The rhs Property Name - A . - - - - Apply a "greater than or equal" constraint to two properties - - The LHS projection. - The RHS projection. - A . - - - - Apply a "greater than or equal" constraint to two properties - - The projection. - The rhs Property Name - A . - - - - Apply a "greater than or equal" constraint to two properties - - The lhs Property Name - The projection. - A . - - - - Apply a "less than" constraint to two properties - - The lhs Property Name - The rhs Property Name - A . - - - - Apply a "less than" constraint to two properties - - The projection. - The rhs Property Name - A . - - - - Apply a "less than" constraint to two properties - - The lhs Property Name - The projection. - A . - - - - Apply a "less than" constraint to two properties - - The LHS projection. - The RHS projection. - A . - - - - Apply a "less than or equal" constraint to two properties - - The lhs Property Name - The rhs Property Name - A . - - - - Apply a "less than or equal" constraint to two properties - - The projection. - The rhs Property Name - A . - - - - Apply a "less than or equal" constraint to two properties - - The lhs Property Name - The projection. - A . - - - - Apply a "less than or equal" constraint to two properties - - The LHS projection. - The RHS projection. - A . - - - - Apply an "is not null" constraint to the named property - - The name of the Property in the class. - A . - - - - Apply an "is not null" constraint to the named property - - The projection. - A . - - - - Apply an "is not empty" constraint to the named property - - The name of the Property in the class. - A . - - - - Apply an "is not empty" constraint to the named property - - The name of the Property in the class. - A . - - - - Return the conjunction of two expressions - - The Expression to use as the Left Hand Side. - The Expression to use as the Right Hand Side. - An . - - - - Return the disjuction of two expressions - - The Expression to use as the Left Hand Side. - The Expression to use as the Right Hand Side. - An . - - - - Return the negation of an expression - - The Expression to negate. - A . - - - - Group expressions together in a single conjunction (A and B and C...) - - - - - Group expressions together in a single disjunction (A or B or C...) - - - - - Apply an "equals" constraint to each property in the key set of a IDictionary - - a dictionary from property names to values - - - - - Create an ICriterion for the supplied LambdaExpression - - generic type - lambda expression - return NHibernate.Criterion.ICriterion - - - - Create an ICriterion for the supplied LambdaExpression - - lambda expression - return NHibernate.Criterion.ICriterion - - - - Create an ICriterion for the negation of the supplied LambdaExpression - - generic type - lambda expression - return NHibernate.Criterion.ICriterion - - - - Create an ICriterion for the negation of the supplied LambdaExpression - - lambda expression - return NHibernate.Criterion.ICriterion - - - - Build an ICriterion for the given property - - lambda expression identifying property - returns LambdaRestrictionBuilder - - - - Build an ICriterion for the given property - - lambda expression identifying property - returns LambdaRestrictionBuilder - - - - Apply a constraint expressed in SQL, with the given SQL parameters - - - - - - - - - Apply a constraint expressed in SQL, with the given SQL parameter - - - - - - - - - Apply a constraint expressed in SQL, with the given SQL parameter - - - - - Apply a constraint expressed in SQL - - - - - - - Apply a constraint expressed in SQL - - - - - - - An that represents an "greater than or equal" constraint - between two properties. - - - - - Initializes a new instance of the class. - - Name of the LHS property. - The RHS projection. - - - - Initializes a new instance of the class. - - The LHS projection. - The RHS projection. - - - - Initializes a new instance of the class. - - The projection. - Name of the RHS property. - - - - Initializes a new instance of the class - that compares two mapped properties using an "greater than or equal" constraint. - - The name of the Property to use as the left hand side. - The name of the Property to use as the right hand side. - - - - Get the Sql operator to use for the . - - The string " < " - - - - Gets the typed values for parameters in this projection - - The criteria. - The criteria query. - - - - - An that represents an "greater than" constraint - between two properties. - - - - - Initializes a new instance of the class. - - Name of the LHS property. - The RHS projection. - - - - Initializes a new instance of the class. - - The LHS projection. - The RHS projection. - - - - Initializes a new instance of the class. - - The projection. - Name of the RHS property. - - - - Initializes a new instance of the class - that compares two mapped properties using an "greater than" constraint. - - The name of the Property to use as the left hand side. - The name of the Property to use as the right hand side. - - - - Get the Sql operator to use for the . - - The string " < " - - - - An instance of is passed to criterion, - order and projection instances when actually compiling and - executing the query. This interface is not used by application - code. - - - - Get the name of the column mapped by a property path, ignoring projection alias - - - Get the names of the columns mapped by a property path, ignoring projection aliases - - - Get the type of a property path, ignoring projection aliases - - - Get the names of the columns mapped by a property path - - - Get the type of a property path - - - Get the a typed value for the given property value. - - - Get the entity name of an entity - - - - Get the entity name of an entity, taking into account - the qualifier of the property path - - - - Get the root table alias of an entity - - - - Get the root table alias of an entity, taking into account - the qualifier of the property path - - - - Get the property name, given a possibly qualified property name - - - Get the identifier column names of this entity - - - Get the identifier type of this entity - - - - Create a new query parameter to use in a - - The value and the of the parameter. - A new instance of a query parameter to be added to a . - - - - An identifier constraint - - - - - An that constrains the property - to a specified list of values. - - - InExpression - should only be used with a Single Value column - no multicolumn properties... - - - - - Initializes a new instance of the class. - - The projection. - The _values. - - - - Determine the type of the elements in the IN clause. - - - - - An that represents an "like" constraint - that is not case sensitive. - - - - - Initializes a new instance of the class. - - The projection. - The value. - The match mode. - - - - Initializes a new instance of the class. - - The projection. - The value. - - - - Initialize a new instance of the - class for a named Property and its value. - - The name of the Property in the class. - The value for the Property. - - - - An that represents empty association constraint. - - - - - An that represents non-empty association constraint. - - - - - An that represents an "less than or equal" constraint - between two properties. - - - - - Initializes a new instance of the class. - - Name of the LHS property. - The RHS projection. - - - - Initializes a new instance of the class. - - The LHS projection. - The RHS projection. - - - - Initializes a new instance of the class. - - The projection. - Name of the RHS property. - - - - Initializes a new instance of the class - that compares two mapped properties using an "less than or equal" constraint. - - The name of the Property to use as the left hand side. - The name of the Property to use as the right hand side. - - - - Get the Sql operator to use for the . - - The string " <= " - - - - An that represents an "like" constraint. - - - The case sensitivity depends on the database settings for string - comparisons. Use if the - string comparison should not be case sensitive. - - - - - An that represents an "less than" constraint - between two properties. - - - - - Initializes a new instance of the class. - - Name of the LHS property. - The RHS projection. - - - - Initializes a new instance of the class. - - The LHS projection. - The RHS projection. - - - - Initializes a new instance of the class. - - The projection. - Name of the RHS property. - - - - Initializes a new instance of the class - that compares two mapped properties using an "less than" constraint. - - The name of the Property to use as the left hand side. - The name of the Property to use as the right hand side. - - - - Get the Sql operator to use for the . - - The string " < " - - - - Represents an strategy for matching strings using "like". - - - - - Initialize a new instance of the class. - - The code that identifies the match mode. - The friendly name of the match mode. - - The parameter intCode is used as the key of - to store instances and to ensure only instance of a particular - is created. - - - - - The string representation of the . - - The friendly name used to describe the . - - - - Convert the pattern, by appending/prepending "%" - - The string to convert to the appropriate match pattern. - - A that contains a "%" in the appropriate place - for the Match Strategy. - - - - - Match the entire string to the pattern - - - - - Match the start of the string to the pattern - - - - - Match the end of the string to the pattern - - - - - Match the pattern anywhere in the string - - - - - The that matches the entire string to the pattern. - - - - - Initialize a new instance of the class. - - - - - Converts the string to the Exact MatchMode. - - The string to convert to the appropriate match pattern. - The pattern exactly the same as it was passed in. - - - - The that matches the start of the string to the pattern. - - - - - Initialize a new instance of the class. - - - - - Converts the string to the Start MatchMode. - - The string to convert to the appropriate match pattern. - The pattern with a "%" appended at the end. - - - - The that matches the end of the string to the pattern. - - - - - Initialize a new instance of the class. - - - - - Converts the string to the End MatchMode. - - The string to convert to the appropriate match pattern. - The pattern with a "%" appended at the beginning. - - - - The that exactly matches the string - by appending "%" to the beginning and end. - - - - - Initialize a new instance of the class. - - - - - Converts the string to the Exact MatchMode. - - The string to convert to the appropriate match pattern. - The pattern with a "%" appended at the beginning and the end. - - - - An that negates another . - - - - - Initialize a new instance of the class for an - - - The to negate. - - - - An that represents "not null" constraint. - - - - - Initializes a new instance of the class. - - The projection. - - - - Initialize a new instance of the class for a named - Property that should not be null. - - The name of the Property in the class. - - - - An that represents "null" constraint. - - - - - Initializes a new instance of the class. - - The projection. - - - - Initialize a new instance of the class for a named - Property that should be null. - - The name of the Property in the class. - - - - - - - Represents an order imposed upon a - result set. - - - Should Order implement ICriteriaQuery? - - - - - Render the SQL fragment - - - - - Ascending order - - - - - - - Ascending order - - - - - - - Descending order - - - - - - - Descending order - - - - - - - An that combines two s with an - "or" between them. - - - - - Initialize a new instance of the class for - two s. - - The to use as the left hand side. - The to use as the right hand side. - - - - Get the Sql operator to put between the two s. - - Returns "or" - - - - Gets the typed values for parameters in this projection - - The criteria. - The criteria query. - - - - - The criterion package may be used by applications as a framework for building - new kinds of Projection. However, it is intended that most applications will - simply use the built-in projection types via the static factory methods of this class.
-
- The factory methods that take an alias allow the projected value to be referred to by - criterion and order instances. -
-
- - - Create a distinct projection from a projection - - - - - - - Create a new projection list - - - - - - The query row count, ie. count(*) - - The RowCount projection mapped to an . - - - - The query row count, ie. count(*) - - The RowCount projection mapped to an . - - - - A property value count - - - - - - - A property value count - - - - - - - A distinct property value count - - - - - - - A property maximum value - - - - - - - A projection maximum value - - - - - - - A property minimum value - - - - - - - A projection minimum value - - - - - - - A property average value - - - - - - - A property average value - - - - - - - A property value sum - - - - - - - A property value sum - - - - - - - A SQL projection, a typed select clause fragment - - - - - - - - - A grouping SQL projection, specifying both select clause and group by clause fragments - - - - - - - - - - A grouping property value - - - - - - - A grouping projection value - - - - - - - A projected property value - - - - - - - A projected identifier value - - - - - - Assign an alias to a projection, by wrapping it - - - - - - - - Casts the projection result to the specified type. - - The type. - The projection. - - - - - Return a constant value - - The obj. - - - - - Return a constant value - - The obj. - - - - - - Calls the named - - Name of the function. - The type. - The projections. - - - - - Calls the specified - - the function. - The type. - The projections. - - - - - Conditionally return the true or false part, dependention on the criterion - - The criterion. - The when true. - The when false. - - - - - A property average value - - - - - A property average value - - - - - A property value count - - - - - A property value count - - - - - A distinct property value count - - - - - A distinct property value count - - - - - A grouping property value - - - - - A grouping property value - - - - - A property maximum value - - - - - A property maximum value - - - - - A property minimum value - - - - - A property minimum value - - - - - A projected property value - - - - - A projected property value - - - - - A property value sum - - - - - A property value sum - - - - - Project SQL function concat() - Note: throws an exception outside of a QueryOver expression - - - - - Create an alias for a projection - - the projection instance - LambdaExpression returning an alias - return NHibernate.Criterion.IProjection - - - - Project SQL function year() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function day() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function month() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function hour() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function minute() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function second() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function date() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function sqrt() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function sqrt() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function sqrt() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function sqrt() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function sqrt() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function lower() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function upper() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function abs() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function abs() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function abs() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function trim() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function length() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function bit_length() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function substring() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function locate() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function coalesce() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function coalesce() - Note: throws an exception outside of a QueryOver expression - - - - - Project SQL function mod() - Note: throws an exception outside of a QueryOver expression - - - - - A factory for property-specific AbstractCriterion and projection instances - - - - - A property value, or grouped property value - - - - - Get a component attribute of this property - - - - - A comparison between a property value in the outer query and the - result of a subquery - - - - - QueryOver<TRoot> is an API for retrieving entities by composing - objects expressed using Lambda expression syntax. - - - - IList<Cat> cats = session.QueryOver<Cat>() - .Where( c => c.Name == "Tigger" ) - .And( c => c.Weight > minWeight ) ) - .List(); - - - - - - Access the underlying ICriteria - - - - - Access the root underlying ICriteria - - - - - Get the results of the root type and fill the - - The list filled with the results. - - - - Get the results of the root type and fill the - - The list filled with the results. - - - - Clones the QueryOver, removes orders and paging, and projects the row-count - for the query - - - - - Clones the QueryOver, removes orders and paging, and projects the row-count (Int64) - for the query - - - - - Short for ToRowCountQuery().SingleOrDefault<int>() - - - - - Short for ToRowCountInt64Query().SingleOrDefault<long>() - - - - - Convenience method to return a single instance that matches - the query, or null if the query returns no results. - - the single result or - - If there is more than one matching result - - - - - Override type of . - - - - - Get a enumerable that when enumerated will execute - a batch of queries in a single database roundtrip - - - - - Get a enumerable that when enumerated will execute - a batch of queries in a single database roundtrip - - - - - Get an IFutureValue instance, whose value can be retrieved through - its Value property. The query is not executed until the Value property - is retrieved, which will execute other Future queries as well in a - single roundtrip - - - - - Get an IFutureValue instance, whose value can be retrieved through - its Value property. The query is not executed until the Value property - is retrieved, which will execute other Future queries as well in a - single roundtrip - - - - - Creates an exact clone of the IQueryOver - - - - - Clear all orders from the query. - - - - - Set the first result to be retrieved - - - - - - Set a limit upon the number of objects to be retrieved - - - - - - Enable caching of this query result set - - - - Override the cache mode for this particular query. - The cache mode to use. - this (for method chaining) - - - - Set the name of the cache region. - - the name of a query cache region, or - for the default query cache - - - - Set the read-only mode for entities (and proxies) loaded by this QueryOver. - (see ). - - - - - Get an executable instance of IQueryOver<TRoot>, - to actually run the query. - - - - Get an executable instance of IQueryOver<TRoot>, - to actually run the query. - - - - Clones the QueryOver, clears the orders and paging, and projects the RowCount - - - - - - Clones the QueryOver, clears the orders and paging, and projects the RowCount (Int64) - - - - - - Creates an exact clone of the QueryOver - - - - - Method to allow comparison of detached query in Lambda expression - e.g., p => p.Name == myQuery.As<string> - - type returned (projected) by query - throws an exception if evaluated directly at runtime. - - - - Implementation of the interface - - - - - QueryOver<TRoot,TSubType> is an API for retrieving entities by composing - objects expressed using Lambda expression syntax. - - - - IList<Cat> cats = session.QueryOver<Cat>() - .Where( c => c.Name == "Tigger" ) - .And( c => c.Weight > minWeight ) ) - .List(); - - - - - - Add criterion expressed as a lambda expression - - Lambda expression - criteria instance - - - - Add criterion expressed as a lambda expression - - Lambda expression - criteria instance - - - - Add arbitrary ICriterion (e.g., to allow protected member access) - - - - - Add negation of criterion expressed as a lambda expression - - Lambda expression - criteria instance - - - - Add negation of criterion expressed as a lambda expression - - Lambda expression - criteria instance - - - - Add restriction to a property - - Lambda expression containing path to property - criteria instance - - - - Add restriction to a property - - Lambda expression containing path to property - criteria instance - - - - Identical semantics to And() to allow more readable queries - - Lambda expression - criteria instance - - - - Identical semantics to And() to allow more readable queries - - Lambda expression - criteria instance - - - - Add arbitrary ICriterion (e.g., to allow protected member access) - - - - - Identical semantics to AndNot() to allow more readable queries - - Lambda expression - criteria instance - - - - Identical semantics to AndNot() to allow more readable queries - - Lambda expression - criteria instance - - - - Identical semantics to AndRestrictionOn() to allow more readable queries - - Lambda expression - criteria instance - - - - Identical semantics to AndRestrictionOn() to allow more readable queries - - Lambda expression - criteria instance - - - - Add projection expressed as a lambda expression - - Lambda expressions - criteria instance - - - - Add arbitrary IProjections to query - - - - - Create a list of projections using a projection builder - - - - - Add order expressed as a lambda expression - - Lambda expression - criteria instance - - - - Add order expressed as a lambda expression - - Lambda expression - criteria instance - - - - Order by arbitrary IProjection (e.g., to allow protected member access) - - - - - Add order for an aliased projection expressed as a lambda expression - - Lambda expression - criteria instance - - - - Add order expressed as a lambda expression - - Lambda expression - criteria instance - - - - Add order expressed as a lambda expression - - Lambda expression - criteria instance - - - - Order by arbitrary IProjection (e.g., to allow protected member access) - - - - - Add order for an aliased projection expressed as a lambda expression - - Lambda expression - criteria instance - - - - Transform the results using the supplied IResultTransformer - - - - - Specify an association fetching strategy. Currently, only - one-to-many and one-to-one associations are supported. - - A lambda expression path (e.g., ChildList[0].Granchildren[0].Pets). - - - - - Set the lock mode of the current entity - - - - - Set the lock mode of the aliased entity - - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - - Type of sub-criteria - Lambda expression returning association path - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - - Type of sub-criteria - Lambda expression returning association path - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - - Type of sub-criteria - Lambda expression returning association path - Lambda expression returning alias reference - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - - Type of sub-criteria - Lambda expression returning association path - Lambda expression returning alias reference - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - - Type of sub-criteria - Lambda expression returning association path - Type of join - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - - Type of sub-criteria - Lambda expression returning association path - Type of join - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - - Type of sub-criteria - Lambda expression returning association path - Lambda expression returning alias reference - Type of join - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - - Type of sub-criteria - Lambda expression returning association path - Lambda expression returning alias reference - Type of join - Additional criterion for the SQL on clause - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - - Type of sub-criteria - Lambda expression returning association path - Lambda expression returning alias reference - Type of join - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - - Type of sub-criteria - Lambda expression returning association path - Lambda expression returning alias reference - Type of join - Additional criterion for the SQL on clause - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - specifying a collection for the join. - - Type of sub-criteria (type of the collection) - Lambda expression returning association path - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - specifying a collection for the join. - - Type of sub-criteria (type of the collection) - Lambda expression returning association path - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - specifying a collection for the join. - - Type of sub-criteria (type of the collection) - Lambda expression returning association path - Lambda expression returning alias reference - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - specifying a collection for the join. - - Type of sub-criteria (type of the collection) - Lambda expression returning association path - Lambda expression returning alias reference - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - specifying a collection for the join. - - Type of sub-criteria (type of the collection) - Lambda expression returning association path - Type of join - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - specifying a collection for the join. - - Type of sub-criteria (type of the collection) - Lambda expression returning association path - Type of join - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - specifying a collection for the join. - - Type of sub-criteria (type of the collection) - Lambda expression returning association path - Lambda expression returning alias reference - Type of join - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - specifying a collection for the join. - - Type of sub-criteria (type of the collection) - Lambda expression returning association path - Lambda expression returning alias reference - Type of join - Additional criterion for the SQL on clause - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - specifying a collection for the join. - - Type of sub-criteria (type of the collection) - Lambda expression returning association path - Lambda expression returning alias reference - Type of join - The created "sub criteria" - - - - Creates a new NHibernate.IQueryOver<TRoot, U>, "rooted" at the associated entity - specifying a collection for the join. - - Type of sub-criteria (type of the collection) - Lambda expression returning association path - Lambda expression returning alias reference - Type of join - Additional criterion for the SQL on clause - The created "sub criteria" - - - - Join an association, assigning an alias to the joined entity - - Lambda expression returning association path - Lambda expression returning alias reference - criteria instance - - - - Join an association, assigning an alias to the joined entity - - Lambda expression returning association path - Lambda expression returning alias reference - criteria instance - - - - Join an association, assigning an alias to the joined entity - - Lambda expression returning association path - Lambda expression returning alias reference - Type of join - criteria instance - - - - Join an association, assigning an alias to the joined entity - - Lambda expression returning association path - Lambda expression returning alias reference - Type of join - Additional criterion for the SQL on clause - criteria instance - - - - Join an association, assigning an alias to the joined entity - - Type of sub-criteria (type of the collection) - Lambda expression returning association path - Lambda expression returning alias reference - Type of join - Additional criterion for the SQL on clause - criteria instance - - - - Join an association, assigning an alias to the joined entity - - Lambda expression returning association path - Lambda expression returning alias reference - Type of join - criteria instance - - - - Join an association, assigning an alias to the joined entity - - Lambda expression returning association path - Lambda expression returning alias reference - Type of join - Additional criterion for the SQL on clause - criteria instance - - - - Join an association, assigning an alias to the joined entity - - Type of sub-criteria (type of the collection) - Lambda expression returning association path - Lambda expression returning alias reference - Type of join - Additional criterion for the SQL on clause - criteria instance - - - - Add a subquery expression - - - - - Apply a "like" restriction in a QueryOver expression - Note: throws an exception outside of a QueryOver expression - - - - - Apply a "like" restriction in a QueryOver expression - Note: throws an exception outside of a QueryOver expression - - - - - Apply a "like" restriction in a QueryOver expression - Note: throws an exception outside of a QueryOver expression - - - - - Apply a "like" restriction in a QueryOver expression - Note: throws an exception outside of a QueryOver expression - - - - - Apply a "like" restriction in a QueryOver expression - Note: throws an exception outside of a QueryOver expression - - - - - Apply an "in" constraint to the named property - Note: throws an exception outside of a QueryOver expression - - - - - Apply an "in" constraint to the named property - Note: throws an exception outside of a QueryOver expression - - - - - Apply a "between" constraint to the named property - Note: throws an exception outside of a QueryOver expression - - - - - A comparison between a property value in the outer query and the - result of a subquery - - - - - The base class for an that compares a single Property - to a value. - - - - - Initialize a new instance of the class for a named - Property and its value. - - The name of the Property in the class. - The value for the Property. - The SQL operation. - - - - Converts the SimpleExpression to a . - - A SqlString that contains a valid Sql fragment. - - - - Gets the named Property for the Expression. - - A string that is the name of the Property. - - - - Gets the Value for the Expression. - - An object that is the value for the Expression. - - - - Get the Sql operator to use for the specific - subclass of . - - - - - A comparison between a constant value and the the result of a subquery - - - - - An that creates a SQLExpression. - The string {alias} will be replaced by the alias of the root entity. - - - This allows for database specific Expressions at the cost of needing to - write a correct . - - - - - A SQL fragment. The string {alias} will be replaced by the alias of the root entity. - - - - - Gets the typed values for parameters in this projection - - The criteria. - The criteria query. - - - - - Factory class for AbstractCriterion instances that represent - involving subqueries. - Expression - Projection - AbstractCriterion - - - - - Create a ICriterion for the specified property subquery expression - - generic type - lambda expression - returns LambdaSubqueryBuilder - - - - Create a ICriterion for the specified property subquery expression - - lambda expression - returns LambdaSubqueryBuilder - - - - Create a ICriterion for the specified value subquery expression - - value - returns LambdaSubqueryBuilder - - - - Create ICriterion for subquery expression using lambda syntax - - type of property - lambda expression - NHibernate.ICriterion.AbstractCriterion - - - - Create ICriterion for (exact) subquery expression using lambda syntax - - lambda expression - NHibernate.ICriterion.AbstractCriterion - - - - Create ICriterion for (all) subquery expression using lambda syntax - - type of property - lambda expression - NHibernate.ICriterion.AbstractCriterion - - - - Create ICriterion for (all) subquery expression using lambda syntax - - lambda expression - NHibernate.ICriterion.AbstractCriterion - - - - Create ICriterion for (some) subquery expression using lambda syntax - - type of property - lambda expression - NHibernate.ICriterion.AbstractCriterion - - - - Create ICriterion for (some) subquery expression using lambda syntax - - lambda expression - NHibernate.ICriterion.AbstractCriterion - - - - Add an Exists subquery criterion - - - - - Add a NotExists subquery criterion - - - - - A property value, or grouped property value - - - - - Used to show a better debug display for dictionaries - - - - - - - - ::= - EXTRACT FROM - - ::= - | - - - - Represents HQL functions that can have different representations in different SQL dialects. - E.g. in HQL we can define function concat(?1, ?2) to concatenate two strings - p1 and p2. Target SQL function will be dialect-specific, e.g. (?1 || ?2) for - Oracle, concat(?1, ?2) for MySql, (?1 + ?2) for MS SQL. - Each dialect will define a template as a string (exactly like above) marking function - parameters with '?' followed by parameter's index (first index is 1). - - - - - Provides support routines for the HQL functions as used - in the various SQL Dialects - - Provides an interface for supporting various HQL functions that are - translated to SQL. The Dialect and its sub-classes use this interface to - provide details required for processing of the function. - - - - - The function return type - - The type of the first argument - - - - - - Render the function call as SQL. - - List of arguments - - SQL fragment for the fuction. - - - - Does this function have any arguments? - - - - - If there are no arguments, are parens required? - - - - - Applies the template to passed in arguments. - - args function arguments - generated SQL function call - - - - - ANSI-SQL substring - Documented in: - ANSI X3.135-1992 - American National Standard for Information Systems - Database Language - SQL - - - Syntax: - ::= - SUBSTRING FROM < start position> - [ FOR ] - ]]> - - - - - A SQLFunction implementation that emulates the ANSI SQL trim function - on dialects which do not support the full definition. However, this function - definition does assume the availability of ltrim, rtrim, and replace functions - which it uses in various combinations to emulate the desired ANSI trim() - functionality. - - - - - - - - - - - according to both the ANSI-SQL and EJB3 specs, trim can either take - exactly one parameter or a variable number of parameters between 1 and 4. - from the SQL spec: - ::= - TRIM - - ::= - [ [ ] [ ] FROM ] - - ::= - LEADING - | TRAILING - | BOTH - ]]> - If only trim specification is omitted, BOTH is assumed; - if trim character is omitted, space is assumed - - - - - Initializes a new instance of the StandardSQLFunction class. - - SQL function name. - Whether the function accepts an asterisk (*) in place of arguments - - - - Initializes a new instance of the StandardSQLFunction class. - - SQL function name. - True if accept asterisk like argument - Return type for the fuction. - - - - ANSI-SQL style cast(foo as type) where the type is a NHibernate type - - - - - Emulation of locate() on Sybase - - - - - Classic AVG sqlfunction that return types as it was done in Hibernate 3.1 - - - - - Classic COUNT sqlfunction that return types as it was done in Hibernate 3.1 - - - - - Classic SUM sqlfunction that return types as it was done in Hibernate 3.1 - - - - - Provides a substring implementation of the form substring(expr, start, length) - for SQL dialects where the length argument is mandatory. If this is called - from HQL with only two arguments, this implementation will generate the length - parameter as (len(expr) + 1 - start). - - - - - Provides a standard implementation that supports the majority of the HQL - functions that are translated to SQL. - - - The Dialect and its sub-classes use this class to provide details required - for processing of the associated function. - - - - - Initializes a new instance of the StandardSQLFunction class. - - SQL function name. - - - - Initializes a new instance of the StandardSQLFunction class. - - SQL function name. - Return type for the fuction. - - - - Initializes a new instance of the EmulatedLengthSubstringFunction class. - - - - - Summary description for NoArgSQLFunction. - - - - - Emulation of coalesce() on Oracle, using multiple nvl() calls - - - - - Emulation of locate() on PostgreSQL - - - - - Provides a standard implementation that supports the majority of the HQL - functions that are translated to SQL. - - - The Dialect and its sub-classes use this class to provide details required - for processing of the associated function. - - - - - Initializes a new instance of the StandardSafeSQLFunction class. - - SQL function name. - Exact number of arguments expected. - - - - Initializes a new instance of the StandardSafeSQLFunction class. - - SQL function name. - Return type for the fuction. - Exact number of arguments expected. - - - - Support for slightly more general templating than StandardSQLFunction, - with an unlimited number of arguments. - - - - - A strategy abstraction for how locks are obtained in the underlying database. - - - All locking provided implemenations assume the underlying database supports - (and that the connection is in) at least read-committed transaction isolation. - The most glaring exclusion to this is HSQLDB which only offers support for - READ_UNCOMMITTED isolation. - - - - - - Acquire an appropriate type of lock on the underlying data that will - endure until the end of the current transaction. - - The id of the row to be locked - The current version (or null if not versioned) - The object logically being locked (currently not used) - The session from which the lock request originated - - - - A locking strategy where the locks are obtained through select statements. - - - - - For non-read locks, this is achieved through the Dialect's specific - SELECT ... FOR UPDATE syntax. - - - - - A locking strategy where the locks are obtained through update statements. - - This strategy is not valid for read style locks. - - - - Construct a locking strategy based on SQL UPDATE statements. - - The metadata for the entity to be locked. - Indictates the type of lock to be acquired. - - read-locks are not valid for this strategy. - - - - - Common implementation of schema reader. - - - This implementation of is based on the new of - .NET 2.0. - - - - - - This class is specific of NHibernate and supply DatabaseMetaData of Java. - In the .NET Framework, there is no direct equivalent. - - - Implementation is provide by a dialect. - - - - - Gets a description of the tables available for the catalog - - A catalog, retrieves those without a catalog - Schema pattern, retrieves those without the schema - A table name pattern - a list of table types to include - Each row - - - - Get the Table MetaData. - - The resultSet of . - Include FKs and indexes - - - - - Gets a description of the table columns available - - A catalog, retrieves those without a catalog - Schema pattern, retrieves those without the schema - A table name pattern - a columng name patterm - A description of the table columns available - - - - Get a description of the given table's indices and statistics. - - A catalog, retrieves those without a catalog - Schema pattern, retrieves those without the schema - A table name pattern - A description of the table's indices available - The result is relative to the schema collections "Indexes". - - - - Get a description of the given table's indices and statistics. - - A catalog, retrieves those without a catalog - Schema pattern, retrieves those without the schema - A table name pattern - The name of the index - A description of the table's indices available - The result is relative to the schema collections "IndexColumns". - - - - Gets a description of the foreign keys available - - A catalog, retrieves those without a catalog - Schema name, retrieves those without the schema - A table name - A description of the foreign keys available - - - - Get all reserved words - - A set of reserved words - - - - In the Java language, this field indicates that the database treats mixed-case, - quoted SQL identifiers as case-insensitive and stores them in mixed case. - - - - - In the Java language, this field indicates that the database treats mixed-case, - quoted SQL identifiers as case-insensitive and stores them in upper case. - - - - - In the Java language, this field indicates that the database treats mixed-case, - unquoted SQL identifiers as case-insensitive and stores them in upper case. - - - - - In the Java language, this field indicates that the database treats mixed-case, - quoted SQL identifiers as case-insensitive and stores them in lower case. - - - - - In the Java language, this field indicates that the database treats mixed-case, - unquoted SQL identifiers as case-insensitive and stores them in lower case, - - - - - The name of the column that represent the TABLE_NAME in the - returned by . - - - - - Get a value from the DataRow. Multiple alternative column names can be given. - The names are tried in order, and the value from the first present column - is returned. - - - - - Get a string value from the DataRow. Multiple alternative column names can be given. - The names are tried in order, and the value from the first present column - is returned. - - - - - An SQL dialect for DB2 on iSeries OS/400. - - - The DB2400Dialect defaults the following configuration properties: - - - Property - Default Value - - - connection.driver_class - - - - - - - - An SQL dialect for DB2. - - - The DB2Dialect defaults the following configuration properties: - - - Property - Default Value - - - connection.driver_class - - - - - - - - Represents a dialect of SQL implemented by a particular RDBMS. Subclasses - implement NHibernate compatibility with different systems. - - - Subclasses should provide a public default constructor that Register() - a set of type mappings and default Hibernate properties. - - - - Characters used for quoting sql identifiers - - - Characters used for closing quoted sql identifiers - - - - The base constructor for Dialect. - - - Every subclass should override this and call Register() with every except - , , , , - , . - - - The Default properties for this Dialect should also be set - such as whether or not to use outer-joins - and what the batch size should be. - - - - - Get an instance of the dialect specified by the current properties. - The specified Dialect - - - - Get from a property bag (prop name ) - - The property bag. - An instance of . - When is null. - When the property bag don't contains de property . - - - - Get the name of the database type associated with the given - , - - The SqlType - The database type name used by ddl. - - - - Get the name of the database type associated with the given - . - - The SqlType - The datatype length - The datatype precision - The datatype scale - The database type name used by ddl. - - - - Gets the name of the longest registered type for a particular DbType. - - - - - - - Get the name of the database type appropriate for casting operations - (via the CAST() SQL function) for the given typecode. - - The typecode - The database type name - - - - Subclasses register a typename for the given type code and maximum - column length. $l in the type name will be replaced by the column - length (if appropriate) - - The typecode - Maximum length of database type - The database type name - - - - Subclasses register a typename for the given type code. $l in the - typename will be replaced by the column length (if appropriate). - - The typecode - The database type name - - - - The syntax used to add a foreign key constraint to a table. If SupportsForeignKeyConstraintInAlterTable is false, the returned string will be added to the create table statement instead. In this case, extra strings, like "add", that apply when using alter table should be omitted. - - The FK constraint name. - The names of the columns comprising the FK - The table referenced by the FK - The explicit columns in the referencedTable referenced by this FK. - - if false, constraint should be explicit about which column names the constraint refers to - - the "add FK" fragment - - - - The syntax used to add a primary key constraint to a table - - - - - - Get a strategy instance which knows how to acquire a database-level lock - of the specified mode for this dialect. - - The persister for the entity to be locked. - The type of lock to be acquired. - The appropriate locking strategy. - - - - Given a lock mode, determine the appropriate for update fragment to use. - - The lock mode to apply. - The appropriate for update fragment. - - - - Get the FOR UPDATE OF column_list fragment appropriate for this - dialect given the aliases of the columns to be write locked. - - The columns to be write locked. - The appropriate FOR UPDATE OF column_list clause string. - - - - Get the FOR UPDATE OF column_list NOWAIT fragment appropriate - for this dialect given the aliases of the columns to be write locked. - - The columns to be write locked. - The appropriate FOR UPDATE colunm_list NOWAIT clause string. - - - - Modifies the given SQL by applying the appropriate updates for the specified - lock modes and key columns. - - the SQL string to modify - a map of lock modes indexed by aliased table names. - a map of key columns indexed by aliased table names. - the modified SQL string. - - The behavior here is that of an ANSI SQL SELECT FOR UPDATE. This - method is really intended to allow dialects which do not support - SELECT FOR UPDATE to achieve this in their own fashion. - - - - - Some dialects support an alternative means to SELECT FOR UPDATE, - whereby a "lock hint" is appends to the table name in the from clause. - - The lock mode to apply - The name of the table to which to apply the lock hint. - The table with any required lock hints. - - - - Return SQL needed to drop the named table. May (and should) use - some form of "if exists" clause, and cascade constraints. - - - - - - Generate a temporary table name given the bas table. - The table name from which to base the temp table name. - The generated temp table name. - - - - Does the dialect require that temporary table DDL statements occur in - isolation from other statements? This would be the case if the creation - would cause any current transaction to get committed implicitly. - - see the result matrix above. - - JDBC defines a standard way to query for this information via the - {@link java.sql.DatabaseMetaData#dataDefinitionCausesTransactionCommit()} - method. However, that does not distinguish between temporary table - DDL and other forms of DDL; MySQL, for example, reports DDL causing a - transaction commit via its driver, even though that is not the case for - temporary table DDL. -

- Possible return values and their meanings:

    -
  • {@link Boolean#TRUE} - Unequivocally, perform the temporary table DDL in isolation.
  • -
  • {@link Boolean#FALSE} - Unequivocally, do not perform the temporary table DDL in isolation.
  • -
  • null - defer to the JDBC driver response in regards to {@link java.sql.DatabaseMetaData#dataDefinitionCausesTransactionCommit()}
  • -
-
-
- - Do we need to drop the temporary table after use? - - - - Registers an OUT parameter which will be returing a - . How this is accomplished varies greatly - from DB to DB, hence its inclusion (along with {@link #getResultSet}) here. - - The callable statement. - The bind position at which to register the OUT param. - The number of (contiguous) bind positions used. - - - - Given a callable statement previously processed by , - extract the from the OUT parameter. - - The callable statement. - The extracted result set. - SQLException Indicates problems extracting the result set. - - - - The syntax used to drop a foreign key constraint from a table. - - The name of the foreign key constraint to drop. - - The SQL string to drop the foreign key constraint. - - - - - The syntax that is used to check if a constraint does not exists before creating it - - The table. - The name. - - - - - The syntax that is used to close the if for a constraint exists check, used - for dialects that requires begin/end for ifs - - The table. - The name. - - - - - The syntax that is used to check if a constraint exists before dropping it - - The table. - The name. - - - - - The syntax that is used to close the if for a constraint exists check, used - for dialects that requires begin/end for ifs - - The table. - The name. - - - - - The syntax used to drop a primary key constraint from a table. - - The name of the primary key constraint to drop. - - The SQL string to drop the primary key constraint. - - - - - The syntax used to drop an index constraint from a table. - - The name of the index constraint to drop. - - The SQL string to drop the primary key constraint. - - - - - Provided we , then attch the - "select identity" clause to the insert statement. - - The insert command - - The insert command with any necessary identity select clause attached. - Note, if == false then - the insert-string should be returned without modification. - - - - - Get the select command to use to retrieve the last generated IDENTITY - value for a particular table - - The table into which the insert was done - The PK column. - The type code. - The appropriate select command - - - - The syntax used during DDL to define a column as being an IDENTITY of - a particular type. - - The type code. - The appropriate DDL fragment. - - - - Generate the appropriate select statement to to retreive the next value - of a sequence. - - the name of the sequence - String The "nextval" select string. - This should be a "stand alone" select statement. - - - - Typically dialects which support sequences can drop a sequence - with a single command. - - The name of the sequence - The sequence drop commands - - This is convenience form of - to help facilitate that. - - Dialects which support sequences and can drop a sequence in a - single command need *only* override this method. Dialects - which support sequences but require multiple commands to drop - a sequence should instead override . - - - - - The multiline script used to drop a sequence. - - The name of the sequence - The sequence drop commands - - - - Generate the select expression fragment that will retrieve the next - value of a sequence as part of another (typically DML) statement. - - the name of the sequence - The "nextval" fragment. - - This differs from in that this - should return an expression usable within another statement. - - - - - Typically dialects which support sequences can create a sequence - with a single command. - - The name of the sequence - The sequence creation command - - This is convenience form of to help facilitate that. - Dialects which support sequences and can create a sequence in a - single command need *only* override this method. Dialects - which support sequences but require multiple commands to create - a sequence should instead override . - - - - - An optional multi-line form for databases which . - - The name of the sequence - The initial value to apply to 'create sequence' statement - The increment value to apply to 'create sequence' statement - The sequence creation commands - - - - Overloaded form of , additionally - taking the initial value and increment size to be applied to the sequence - definition. - - The name of the sequence - The initial value to apply to 'create sequence' statement - The increment value to apply to 'create sequence' statement - The sequence creation command - - The default definition is to suffix - with the string: " start with {initialValue} increment by {incrementSize}" where - {initialValue} and {incrementSize} are replacement placeholders. Generally - dialects should only need to override this method if different key phrases - are used to apply the allocation information. - - - - - Create a strategy responsible - for handling this dialect's variations in how joins are handled. - - This dialect's strategy. - - - - Create a strategy responsible - for handling this dialect's variations in how CASE statements are - handled. - - This dialect's strategy. - - - The SQL literal value to which this database maps boolean values. - The boolean value - The appropriate SQL literal. - - - - Attempts to add a LIMIT clause to the given SQL SELECT. - Expects any database-specific offset and limit adjustments to have already been performed (ex. UseMaxForLimit, OffsetStartsAtOne). - - The to base the limit query off. - Offset of the first row to be returned by the query. This may be represented as a parameter, a string literal, or a null value if no limit is requested. This should have already been adjusted to account for OffsetStartsAtOne. - Maximum number of rows to be returned by the query. This may be represented as a parameter, a string literal, or a null value if no offset is requested. This should have already been adjusted to account for UseMaxForLimit. - A new that contains the LIMIT clause. Returns null - if represents a SQL statement to which a limit clause cannot be added, - for example when the query string is custom SQL invoking a stored procedure. - - - - Attempts to generate a string to limit the result set to a number of maximum results with a specified offset into the results. - Expects any database-specific offset and limit adjustments to have already been performed (ex. UseMaxForLimit, OffsetStartsAtOne). - Performs error checking based on the various dialect limit support options. If both parameters and fixed valeus are - specified, this will use the parameter option if possible. Otherwise, it will fall back to a fixed string. - - - - - - - - - - - Some databases require that a limit statement contain the maximum row number - instead of the number of rows to retrieve. This method adjusts source - limit and offset values to account for this. - - - - - - - - Some databases use limit row offsets that start at one instead of zero. - This method adjusts a desired offset using the OffsetStartsAtOne flag. - - - - - - - Checks to see if the name has been quoted. - - The name to check if it is quoted - true if name is already quoted. - - The default implementation is to compare the first character - to Dialect.OpenQuote and the last char to Dialect.CloseQuote - - - - - Quotes a name. - - The string that needs to be Quoted. - A QuotedName - -

- This method assumes that the name is not already Quoted. So if the name passed - in is "name then it will return """name". It escapes the first char - - the " with "" and encloses the escaped string with OpenQuote and CloseQuote. -

-
-
- - - Quotes a name for being used as a aliasname - - Original implementation calls - Name of the alias - A Quoted name in the format of OpenQuote + aliasName + CloseQuote - -

- If the aliasName is already enclosed in the OpenQuote and CloseQuote then this - method will return the aliasName that was passed in without going through any - Quoting process. So if aliasName is passed in already Quoted make sure that - you have escaped all of the chars according to your DataBase's specifications. -

-
-
- - - Quotes a name for being used as a columnname - - Original implementation calls - Name of the column - A Quoted name in the format of OpenQuote + columnName + CloseQuote - -

- If the columnName is already enclosed in the OpenQuote and CloseQuote then this - method will return the columnName that was passed in without going through any - Quoting process. So if columnName is passed in already Quoted make sure that - you have escaped all of the chars according to your DataBase's specifications. -

-
-
- - - Quotes a name for being used as a tablename - - Name of the table - A Quoted name in the format of OpenQuote + tableName + CloseQuote - -

- If the tableName is already enclosed in the OpenQuote and CloseQuote then this - method will return the tableName that was passed in without going through any - Quoting process. So if tableName is passed in already Quoted make sure that - you have escaped all of the chars according to your DataBase's specifications. -

-
-
- - - Quotes a name for being used as a schemaname - - Name of the schema - A Quoted name in the format of OpenQuote + schemaName + CloseQuote - -

- If the schemaName is already enclosed in the OpenQuote and CloseQuote then this - method will return the schemaName that was passed in without going through any - Quoting process. So if schemaName is passed in already Quoted make sure that - you have escaped all of the chars according to your DataBase's specifications. -

-
-
- - - Unquotes and unescapes an already quoted name - - Quoted string - Unquoted string - -

- This method checks the string quoted to see if it is - quoted. If the string quoted is already enclosed in the OpenQuote - and CloseQuote then those chars are removed. -

-

- After the OpenQuote and CloseQuote have been cleaned from the string quoted - then any chars in the string quoted that have been escaped by doubling them - up are changed back to a single version. -

-

- The following quoted values return these results - "quoted" = quoted - "quote""d" = quote"d - quote""d = quote"d -

-

- If this implementation is not sufficient for your Dialect then it needs to be overridden. - MsSql2000Dialect is an example of where UnQuoting rules are different. -

-
-
- - - Unquotes an array of Quoted Names. - - strings to Unquote - an array of unquoted strings. - - This use UnQuote(string) for each string in the quoted array so - it should not need to be overridden - only UnQuote(string) needs - to be overridden unless this implementation is not sufficient. - - - - - Given a type code, determine an appropriate - null value to use in a select clause. - - The type code. - The appropriate select clause value fragment. - - One thing to consider here is that certain databases might - require proper casting for the nulls here since the select here - will be part of a UNION/UNION ALL. - - - - - Registers a NHibernate name for the given type code. - - The typecode - The NHibernate name - - - - Build an instance of the preferred by this dialect for - converting into NHibernate's ADOException hierarchy. - - The Dialect's preferred . - - The default Dialect implementation simply returns a converter based on X/Open SQLState codes. - - It is strongly recommended that specific Dialect implementations override this - method, since interpretation of a SQL error is much more accurate when based on - the ErrorCode rather than the SQLState. Unfortunately, the ErrorCode is a vendor-specific approach. - - - - - Do we need to drop constraints before dropping tables in the dialect? - - - - - Do we need to qualify index names with the schema name? - - - - - Does this dialect support the UNIQUE column syntax? - - - - Does this dialect support adding Unique constraints via create and alter table ? - - - - Does this dialect support adding foreign key constraints via alter table? If not, it's assumed they can only be added through create table. - - - - - Does the dialect support the syntax 'drop table if exists NAME' - - - - - Does the dialect support the syntax 'drop table NAME if exists' - - - - Does this dialect support column-level check constraints? - True if column-level CHECK constraints are supported; false otherwise. - - - Does this dialect support table-level check constraints? - True if table-level CHECK constraints are supported; false otherwise. - - - - Get the string to append to SELECT statements to acquire locks - for this dialect. - - The appropriate FOR UPDATE clause string. - - - Is FOR UPDATE OF syntax supported? - True if the database supports FOR UPDATE OF syntax; false otherwise. - - - - Does this dialect support FOR UPDATE in conjunction with outer joined rows? - - True if outer joined rows can be locked via FOR UPDATE. - - - - Retrieves the FOR UPDATE NOWAIT syntax specific to this dialect - - The appropriate FOR UPDATE NOWAIT clause string. - - - Does this dialect support temporary tables? - - - Does this dialect support a way to retrieve the database's current timestamp value? - - - - Gives the best resolution that the database can use for storing - date/time values, in ticks. - - - - For example, if the database can store values with 100-nanosecond - precision, this property is equal to 1L. If the database can only - store values with 1-millisecond precision, this property is equal - to 10000L (number of ticks in a millisecond). - - - Used in TimestampType. - - - - - - Completely optional cascading drop clause - - - - Only needed if the Dialect does not have SupportsForeignKeyConstraintInAlterTable. - - - Only needed if the Dialect does not have SupportsForeignKeyConstraintInAlterTable. - - - - Does this dialect support identity column key generation? - - - - - Does the dialect support some form of inserting and selecting - the generated IDENTITY value all in the same statement. - - - - - Whether this dialect has an identity clause added to the data type or a - completely separate identity data type. - - - - - Get the select command to use to retrieve the last generated IDENTITY value. - - The appropriate select command - - - - The keyword used to specify an identity column, if native key generation is supported - - - - - Set this to false if no table-level primary key constraint should be generated when an identity column has been specified for the table. - This is used as a work-around for SQLite so it doesn't tell us we have "more than one primary key". - - - - - The keyword used to insert a generated value into an identity column (or null). - Need if the dialect does not support inserts that specify no column values. - - - - - Does this dialect support sequences? - - - - - Does this dialect support "pooled" sequences? - - True if such "pooled" sequences are supported; false otherwise. - - A pooled sequence is one that has a configurable initial size and increment - size. It enables NHibernate to be allocated a pool/block/range of IDs, - which can reduce the frequency of round trips to the database during ID - generation. - - - - - - Get the select command used retrieve the names of all sequences. - The select command; or null if sequences are not supported. - - - - The class (which implements ) - which acts as this dialects identity-style generation strategy. - - The native generator class. - - Comes into play whenever the user specifies the "identity" generator. - - - - - The class (which implements ) - which acts as this dialects native generation strategy. - - The native generator class. - - Comes into play whenever the user specifies the native generator. - - - - - Does this Dialect have some kind of LIMIT syntax? - - False, unless overridden. - - - - Does this Dialect support an offset? - - - - - Can parameters be used for a statement containing a LIMIT? - - - - - Does the LIMIT clause take a "maximum" row number instead - of a total number of returned rows? - - True if limit is relative from offset; false otherwise. - - This is easiest understood via an example. Consider you have a table - with 20 rows, but you only want to retrieve rows number 11 through 20. - Generally, a limit with offset would say that the offset = 11 and the - limit = 10 (we only want 10 rows at a time); this is specifying the - total number of returned rows. Some dialects require that we instead - specify offset = 11 and limit = 20, where 20 is the "last" row we want - relative to offset (i.e. total number of rows = 20 - 11 = 9) - So essentially, is limit relative from offset? Or is limit absolute? - - - - - For limit clauses, indicates whether to use 0 or 1 as the offset that returns the first row. Should be true if the first row is at offset 1. - - - - - The opening quote for a quoted identifier. - - - - - The closing quote for a quoted identifier. - - - - - Does this dialect support UNION ALL, which is generally a faster variant of UNION? - True if UNION ALL is supported; false otherwise. - - - - - Does this dialect support empty IN lists? - For example, is [where XYZ in ()] a supported construct? - - True if empty in lists are supported; false otherwise. - - - - Are string comparisons implicitly case insensitive. - In other words, does [where 'XYZ' = 'xyz'] resolve to true? - - True if comparisons are case insensitive. - - - - Is this dialect known to support what ANSI-SQL terms "row value - constructor" syntax; sometimes called tuple syntax. -

- Basically, does it support syntax like - "... where (FIRST_NAME, LAST_NAME) = ('Steve', 'Ebersole') ...". -

- - True if this SQL dialect is known to support "row value - constructor" syntax; false otherwise. - -
- - - If the dialect supports {@link #supportsRowValueConstructorSyntax() row values}, - does it offer such support in IN lists as well? -

- For example, "... where (FIRST_NAME, LAST_NAME) IN ( (?, ?), (?, ?) ) ..." -

- - True if this SQL dialect is known to support "row value - constructor" syntax in the IN list; false otherwise. - -
- - - Should LOBs (both BLOB and CLOB) be bound using stream operations (i.e. - {@link java.sql.PreparedStatement#setBinaryStream}). - - True if BLOBs and CLOBs should be bound using stream operations. - - - - Does this dialect support parameters within the select clause of - INSERT ... SELECT ... statements? - - True if this is supported; false otherwise. - - - - Does this dialect support asking the result set its positioning - information on forward only cursors. Specifically, in the case of - scrolling fetches, Hibernate needs to use - {@link java.sql.ResultSet#isAfterLast} and - {@link java.sql.ResultSet#isBeforeFirst}. Certain drivers do not - allow access to these methods for forward only cursors. -

- NOTE : this is highly driver dependent! -

- - True if methods like {@link java.sql.ResultSet#isAfterLast} and - {@link java.sql.ResultSet#isBeforeFirst} are supported for forward - only cursors; false otherwise. - -
- - - Does this dialect support definition of cascade delete constraints - which can cause circular chains? - - True if circular cascade delete constraints are supported; false otherwise. - - - - Are subselects supported as the left-hand-side (LHS) of - IN-predicates. - - In other words, is syntax like "... {subquery} IN (1, 2, 3) ..." supported? - - True if subselects can appear as the LHS of an in-predicate;false otherwise. - - - - Expected LOB usage pattern is such that I can perform an insert - via prepared statement with a parameter binding for a LOB value - without crazy casting to JDBC driver implementation-specific classes... -

- Part of the trickiness here is the fact that this is largely - driver dependent. For example, Oracle (which is notoriously bad with - LOB support in their drivers historically) actually does a pretty good - job with LOB support as of the 10.2.x versions of their drivers... -

- - True if normal LOB usage patterns can be used with this driver; - false if driver-specific hookiness needs to be applied. - -
- - Does the dialect support propagating changes to LOB - values back to the database? Talking about mutating the - internal value of the locator as opposed to supplying a new - locator instance... -

- For BLOBs, the internal value might be changed by: - {@link java.sql.Blob#setBinaryStream}, - {@link java.sql.Blob#setBytes(long, byte[])}, - {@link java.sql.Blob#setBytes(long, byte[], int, int)}, - or {@link java.sql.Blob#truncate(long)}. -

- For CLOBs, the internal value might be changed by: - {@link java.sql.Clob#setAsciiStream(long)}, - {@link java.sql.Clob#setCharacterStream(long)}, - {@link java.sql.Clob#setString(long, String)}, - {@link java.sql.Clob#setString(long, String, int, int)}, - or {@link java.sql.Clob#truncate(long)}. -

- NOTE : I do not know the correct answer currently for - databases which (1) are not part of the cruise control process - or (2) do not {@link #supportsExpectedLobUsagePattern}. -

- True if the changes are propagated back to the database; false otherwise. -
- - - Is it supported to materialize a LOB locator outside the transaction in - which it was created? -

- Again, part of the trickiness here is the fact that this is largely - driver dependent. -

- NOTE: all database I have tested which {@link #supportsExpectedLobUsagePattern()} - also support the ability to materialize a LOB outside the owning transaction... -

- True if unbounded materialization is supported; false otherwise. -
- - - Does this dialect support referencing the table being mutated in - a subquery. The "table being mutated" is the table referenced in - an UPDATE or a DELETE query. And so can that table then be - referenced in a subquery of said UPDATE/DELETE query. -

- For example, would the following two syntaxes be supported:

    -
  • delete from TABLE_A where ID not in ( select ID from TABLE_A )
  • -
  • update TABLE_A set NON_ID = 'something' where ID in ( select ID from TABLE_A)
  • -
-
- True if this dialect allows references the mutating table from a subquery. -
- - Does the dialect support an exists statement in the select clause? - True if exists checks are allowed in the select clause; false otherwise. - - - - For the underlying database, is READ_COMMITTED isolation implemented by - forcing readers to wait for write locks to be released? - - True if writers block readers to achieve READ_COMMITTED; false otherwise. - - - - For the underlying database, is REPEATABLE_READ isolation implemented by - forcing writers to wait for read locks to be released? - - True if readers block writers to achieve REPEATABLE_READ; false otherwise. - - - - Does this dialect support using a JDBC bind parameter as an argument - to a function or procedure call? - - True if the database supports accepting bind params as args; false otherwise. - - - - Does this dialect support subselects? - - - - - Retrieve a set of default Hibernate properties for this database. - - - - - Aggregate SQL functions as defined in general. This is - a case-insensitive hashtable! - - - The results of this method should be integrated with the - specialization's data. - - - - - Get the command used to select a GUID from the underlying database. - (Optional operation.) - - The appropriate command. - - - Command used to create a table. - - - - Slight variation on . - The command used to create a multiset table. - - - Here, we have the command used to create a table when there is no primary key and - duplicate rows are expected. -

- Most databases do not care about the distinction; originally added for - Teradata support which does care. - - - -

Command used to create a temporary table. -
- - - Get any fragments needing to be postfixed to the command for - temporary table creation. - - - - - Should the value returned by - be treated as callable. Typically this indicates that JDBC escape - sytnax is being used... - - - - - Retrieve the command used to retrieve the current timestammp from the database. - - - - - The name of the database-specific SQL function for retrieving the - current timestamp. - - - - - The keyword used to insert a row without specifying any column values - - - - - The name of the SQL function that transforms a string to lowercase - - - - - The syntax used to add a column to a table. Note this is deprecated - - - - - The keyword used to specify a nullable column - - - - - The keyword used to create a primary key constraint - - - - - Supports splitting batches using GO T-SQL command - - - Batches http://msdn.microsoft.com/en-us/library/ms175502.aspx - - - - - This specialized string tokenizier will break a string to tokens, taking - into account single quotes, parenthesis and commas and [ ] - Notice that we aren't differenciating between [ ) and ( ] on purpose, it would complicate - the code and it is not legal at any rate. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Summary description for FirebirdDialect. - - - The FirebirdDialect defaults the following configuration properties: - - - Property - Default Value - - - connection.driver_class - - - - - - - - A generic SQL dialect which may or may not work on any actual databases - - - - - - - - - - - Summary description for InformixDialect. - This dialect is intended to work with IDS version 7.31 - However I can test only version 10.00 as I have only this version at work - - - The InformixDialect defaults the following configuration properties: - - - ConnectionDriver - NHibernate.Driver.OdbcDriver - PrepareSql - true - - - connection.driver_class - - - - - - - - - - - Get the FOR UPDATE OF column_list fragment appropriate for this - dialect given the aliases of the columns to be write locked. - - The columns to be write locked. - The appropriate FOR UPDATE OF column_list clause string. - - - - Does the dialect require that temporary table DDL statements occur in - isolation from other statements? This would be the case if the creation - would cause any current transaction to get committed implicitly. - - see the result matrix above. - - JDBC defines a standard way to query for this information via the - {@link java.sql.DatabaseMetaData#dataDefinitionCausesTransactionCommit()} - method. However, that does not distinguish between temporary table - DDL and other forms of DDL; MySQL, for example, reports DDL causing a - transaction commit via its driver, even though that is not the case for - temporary table DDL. -

- Possible return values and their meanings:

    -
  • {@link Boolean#TRUE} - Unequivocally, perform the temporary table DDL in isolation.
  • -
  • {@link Boolean#FALSE} - Unequivocally, do not perform the temporary table DDL in isolation.
  • -
  • null - defer to the JDBC driver response in regards to {@link java.sql.DatabaseMetaData#dataDefinitionCausesTransactionCommit()}
  • -
-
-
- - - Get the select command to use to retrieve the last generated IDENTITY - value for a particular table - - The table into which the insert was done - The PK column. - The type code. - The appropriate select command - - - - The syntax used during DDL to define a column as being an IDENTITY of - a particular type. - - The type code. - The appropriate DDL fragment. - - - - Create a strategy responsible - for handling this dialect's variations in how joins are handled. - - This dialect's strategy. - - - The SQL literal value to which this database maps boolean values. - The boolean value - The appropriate SQL literal. - - - - The keyword used to insert a generated value into an identity column (or null). - Need if the dialect does not support inserts that specify no column values. - - - - Command used to create a temporary table. - - - - Get any fragments needing to be postfixed to the command for - temporary table creation. - - - - - Should the value returned by - be treated as callable. Typically this indicates that JDBC escape - sytnax is being used... - - - - - Retrieve the command used to retrieve the current timestammp from the database. - - - - - The name of the database-specific SQL function for retrieving the - current timestamp. - - - - - - - Is FOR UPDATE OF syntax supported? - True if the database supports FOR UPDATE OF syntax; false otherwise. - - - - Does this dialect support FOR UPDATE in conjunction with outer joined rows? - - True if outer joined rows can be locked via FOR UPDATE. - - - Does this dialect support temporary tables? - - - Does this dialect support a way to retrieve the database's current timestamp value? - - - - Whether this dialect have an Identity clause added to the data type or a - completely separate identity data type - - - - - The syntax that returns the identity value of the last insert, if native - key generation is supported - - - - - The keyword used to specify an identity column, if native key generation is supported - - - - - Does this dialect support sequences? - - - - - Does this Dialect have some kind of LIMIT syntax? - - False, unless overridden. - - - - Does this Dialect support an offset? - - - - - Can parameters be used for a statement containing a LIMIT? - - - - - Does this dialect support UNION ALL, which is generally a faster variant of UNION? - True if UNION ALL is supported; false otherwise. - - - - - Knows how to extract a violated constraint name from an error message based on the - fact that the constraint name is templated within the message. - - - - - Defines a contract for implementations that can extract the name of a violated - constraint from a SQLException that is the result of that constraint violation. - - - - - Extract the name of the violated constraint from the given SQLException. - - The exception that was the result of the constraint violation. - The extracted constraint name. - - - - Extracts the constraint name based on a template (i.e., templateStartconstraintNametemplateEnd). - - The pattern denoting the start of the constraint name within the message. - The pattern denoting the end of the constraint name within the message. - The templated error message containing the constraint name. - The found constraint name, or null. - - - - Extract the name of the violated constraint from the given SQLException. - - The exception that was the result of the constraint violation. - The extracted constraint name. - - - - Extract the name of the violated constraint from the given DbException. - - The exception that was the result of the constraint violation. - The extracted constraint name. - - - - Summary description for InformixDialect. - This dialect is intended to work with IDS version 9.40 - - - The InformixDialect defaults the following configuration properties: - - - ConnectionDriver - NHibernate.Driver.OdbcDriver - PrepareSql - true - - - connection.driver_class - - - - - - - - - - - Generate the appropriate select statement to to retreive the next value - of a sequence. - - the name of the sequence - String The "nextval" select string. - This should be a "stand alone" select statement. - - - - Generate the select expression fragment that will retrieve the next - value of a sequence as part of another (typically DML) statement. - - the name of the sequence - The "nextval" fragment. - - This differs from in that this - should return an expression usable within another statement. - - - - - Create a strategy responsible - for handling this dialect's variations in how joins are handled. - - This dialect's strategy. - - - Get the select command used retrieve the names of all sequences. - The select command; or null if sequences are not supported. - - - - Does this dialect support sequences? - - - - - Does this dialect support "pooled" sequences. Not aware of a better - name for this. Essentially can we specify the initial and increment values? - - True if such "pooled" sequences are supported; false otherwise. - - - - Does this Dialect have some kind of LIMIT syntax? - - False, unless overridden. - - - - Does this Dialect support an offset? - - - - - Summary description for InformixDialect. - This dialect is intended to work with IDS version 10.00 - - - The InformixDialect defaults the following configuration properties: - - - ConnectionDriver - NHibernate.Driver.OdbcDriver - PrepareSql - true - - - connection.driver_class - - - - - - - - - - - Does this Dialect have some kind of LIMIT syntax? - - False, unless overridden. - - - - Does this Dialect support an offset? - - - - - An SQL dialect for IngresSQL. - - - The IngresDialect defaults the following configuration properties: - - - Property - Default Value - - - connection.driver_class - - - - - - - - Attempts to add a LIMIT clause to the given SQL SELECT. - Expects any database-specific offset and limit adjustments to have already been performed (ex. UseMaxForLimit, OffsetStartsAtOne). - - The to base the limit query off. - Offset of the first row to be returned by the query. This may be represented as a parameter, a string literal, or a null value if no limit is requested. This should have already been adjusted to account for OffsetStartsAtOne. - Maximum number of rows to be returned by the query. This may be represented as a parameter, a string literal, or a null value if no offset is requested. This should have already been adjusted to account for UseMaxForLimit. - - A new that contains the LIMIT clause. Returns null - if represents a SQL statement to which a limit clause cannot be added, - for example when the query string is custom SQL invoking a stored procedure. - - - - - Does this Dialect have some kind of LIMIT syntax? - - - False, unless overridden. - - - - - Can parameters be used for a statement containing a LIMIT? - - - - - Does this Dialect support an offset? - - - - - Use a parameter with ParameterDirection.Output - - - - - Use a parameter with ParameterDirection.ReturnValue - - - - - An SQL dialect compatible with Microsoft SQL Server 2000. - - - The MsSql2000Dialect defaults the following configuration properties: - - - Property - Default Value - - - connection.driver_class - - - - adonet.batch_size - 10 - - - query.substitutions - true 1, false 0, yes 'Y', no 'N' - - - - - - - Generates the string to drop the table using SQL Server syntax. - - The name of the table to drop. - The SQL with the inserted. - - - - - - - MsSql does not require the OpenQuote to be escaped as long as the first char - is an OpenQuote. - - - - - Does this Dialect have some kind of LIMIT syntax? - - True, we'll use the SELECT TOP nn syntax. - - - - Does this Dialect support an offset? - - - - - Can parameters be used for a statement containing a LIMIT? - - - - - Does the LIMIT clause take a "maximum" row number - instead of a total number of returned rows? - - false, unless overridden - - - - Sql Server 2005 supports a query statement that provides LIMIT - functionality. - - true - - - - Sql Server 2005 supports a query statement that provides LIMIT - functionality with an offset. - - true - - - - Sql Server 2005 supports a query statement that provides LIMIT - functionality with an offset. - - false - - - - Transforms a T-SQL SELECT statement into a statement that will - when executed - return a 'page' of results. The page is defined - by a page size ('limit'), and/or a starting page number ('offset'). - - - - - Returns a TSQL SELECT statement that will - when executed - return a 'page' of results. - - - - - - - - An SQL dialect compatible with Microsoft SQL Server 7. - - - There have been no test run with this because the NHibernate team does not - have a machine with Sql 7 installed on it. But there have been users using - Ms Sql 7 with NHibernate. As issues with Ms Sql 7 and NHibernate become known - this Dialect will be updated. - - - - - Uses @@identity to get the Id value. - - - There is a well known problem with @@identity and triggers that insert into - rows into other tables that also use an identity column. The only way I know - of to get around this problem is to upgrade your database server to Ms Sql 2000. - - - - - A dialect for SQL Server Everywhere (SQL Server CE). - - - - - A SQL dialect for MySQL - - - The MySQLDialect defaults the following configuration properties: - - - Property - Default Value - - - connection.driver_class - - - - - - - - Create the SQL string to drop a foreign key constraint. - - The name of the foreign key to drop. - The SQL string to drop the foreign key constraint. - - - - Create the SQL string to drop a primary key constraint. - - The name of the primary key to drop. - The SQL string to drop the primary key constraint. - - - - Create the SQL string to drop an index. - - The name of the index to drop. - The SQL string to drop the index constraint. - - - - Subclasses register a typename for the given type code, to be used in CAST() - statements. - - The typecode - The database type name - - - - Subclasses register a typename for the given type code, to be used in CAST() - statements. - - The typecode - - The database type name - - - - Get the name of the database type appropriate for casting operations - (via the CAST() SQL function) for the given typecode. - - The typecode - The database type name - - - - - - - - - - - - - - - - - - - - - - - - - - - - A dialect specifically for use with Oracle 10g. - - - The main difference between this dialect and - is the use of "ANSI join syntax" here... - - - - - A dialect for Oracle 8i. - - - - - Support for the oracle proprietary join syntax... - - The orqacle join fragment - - - - Map case support to the Oracle DECODE function. Oracle did not - add support for CASE until 9i. - - The oracle CASE -> DECODE fragment - - - - Allows access to the basic - implementation... - - The mapping type - The appropriate select cluse fragment - - - - It's a immature version, it just work. - An SQL dialect for Oracle Lite - - - The OracleLiteDialect defaults the following configuration properties: - - - Property - Default Value - - - connection.driver_class - - - - - - - - - - - - - - An SQL dialect for PostgreSQL 8.1 and above. - - - - PostgreSQL 8.1 supports FOR UPDATE ... NOWAIT syntax. - - - PostgreSQL supports Identity column using the "SERIAL" type. - Serial type is a "virtual" type that will automatically: - - - Create a sequence named tablename_colname_seq. - Set the default value of this column to the next value of the - sequence. (using function nextval('tablename_colname_seq')) - Add a "NOT NULL" constraint to this column. - Set the sequence as "owned by" the table. - - - To insert the next value of the sequence into the serial column, - exclude the column from the list of columns - in the INSERT statement or use the DEFAULT key word. - - - If the table or the column is dropped, the sequence is dropped too. - - - - - - - An SQL dialect for PostgreSQL. - - - The PostgreSQLDialect defaults the following configuration properties: - - - Property - Default Value - - - connection.driver_class - - - - - - - PostgreSQL requires to cast NULL values to correctly handle UNION/UNION ALL - - See - PostgreSQL BUG #1847: Error in some kind of UNION query. - - The type code. - null casted as : "null::sqltypename" - - - - Supported with SQL 2003 syntax since 7.4, released 2003-11-17. For older versions - we need to override GetCreateSequenceString(string, int, int) and provide alternative - syntax, but I don't think we need to bother for such ancient releases (considered EOL). - - - - PostgreSQL supports UNION ALL clause - - Reference: - PostgreSQL 8.0 UNION Clause documentation - - - - - - PostgreSQL supports serial and serial4 type for 4 bytes integer auto increment column. - bigserial or serial8 can be used for 8 bytes integer auto increment column. - - bigserial if equal Int64, - serial otherwise - - - - PostgreSQL supports Identity column using the "SERIAL" type. - - - - - PostgreSQL doesn't have type in identity column. - - - To create an identity column it uses the SQL syntax - CREATE TABLE tablename (colname SERIAL); or - CREATE TABLE tablename (colname BIGSERIAL); - - - - - The sql syntax to insert a row without specifying any column in PostgreSQL is - INSERT INTO table DEFAULT VALUES; - - - - - PostgreSQL 8.1 and above defined the fuction lastval() that returns the - value of the last sequence that nextval() was used on in the current session. - Call lastval() if nextval() has not yet been called in the current - session throw an exception. - - - - - An SQL dialect for PostgreSQL 8.2 and above. - - - PostgreSQL 8.2 supports DROP TABLE IF EXISTS tablename - and DROP SEQUENCE IF EXISTS sequencename syntax. - See for more information. - - - - - A SQL dialect for SQLite. - - -

- Author: Ioan Bizau -

-
-
- - - - - - - - SQLite does not currently support dropping foreign key constraints by alter statements. - This means that tables cannot be dropped if there are any rows that depend on those. - If there are cycles between tables, it would even be excessively difficult to delete - the data in the right order first. Because of this, we just turn off the foreign - constraints before we drop the schema and hope that we're not going to break anything. :( - We could theoretically check for data consistency afterwards, but we don't currently. - - - - - An SQL dialect for Sybase Adaptive Server Anywhere 9.0 - - -

- This dialect probably will not work with schema-export. If anyone out there - can fill in the ctor with DbTypes to Strings that would be helpful. -

- The dialect defaults the following configuration properties: - - - Property - Default Value - - - connection.driver_class - - - - prepare_sql - - - -
-
- - - ASA does not require to drop constraint before dropping tables, and DROP statement - syntax used by Hibernate to drop constraint is not compatible with ASA, so disable it. - Comments matchs SybaseAnywhereDialect from Hibernate-3.1 src - - - - - An SQL dialect targeting Sybase Adaptive Server Enterprise (ASE) 15 and higher. - - - The dialect defaults the following configuration properties: - - - Property - Default Value - - - connection.driver_class - - - - - - - - Sybase ASE 15 temporary tables are not supported - - - By default, temporary tables in Sybase ASE 15 can only be created outside a transaction. - This is not supported by NHibernate. Temporary tables (and other DDL) statements can only - be run in a transaction if the 'ddl in tran' database option on tempdb is set to 'true'. - However, Sybase does not recommend this setting due to the performance impact arising from - locking and contention on tempdb system tables. - - - - - This is false only by default. The database can be configured to be - case-insensitive. - - - - - SQL Dialect for SQL Anywhere 10 - for the NHibernate 3.0.0 distribution - Copyright (C) 2010 Glenn Paulley - Contact: http://iablog.sybase.com/paulley - - This NHibernate dialect should be considered BETA software. - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - - The dialect defaults the following configuration properties: - - - Property - Default Value - - - connection.driver_class - - - - prepare_sql - - - - - - - - SQL Anywhere 10 supports READ, WRITE, and INTENT row - locks. INTENT locks are sufficient to ensure that other - concurrent connections cannot modify a row (though other - connections can still read that row). SQL Anywhere also - supports 3 modes of snapshot isolation (multi-version - concurrency control (MVCC). - - SQL Anywhere's FOR UPDATE clause supports - FOR UPDATE BY [ LOCK | VALUES ] - FOR UPDATE OF ( COLUMN LIST ) - - though they cannot be specified at the same time. BY LOCK is - the syntax that acquires INTENT locks. FOR UPDATE BY VALUES - forces the use of the KEYSET cursor, which returns a warning to - the application when a row in the cursor has been subsequently - modified by another connection, and an error if the row has - been deleted. - - SQL Anywhere does not support the FOR UPDATE NOWAIT syntax of - Oracle on a statement-by-statement basis. However, the - identical functionality is provided by setting the connection - option BLOCKING to "OFF", or setting an appropriate timeout - period through the connection option BLOCKING_TIMEOUT. - - - - - SQL Anywhere 10 does not perform a COMMIT upon creation of - a temporary table. However, it does perform an implicit - COMMIT when creating an index over a temporary table, or - upon ALTERing the definition of temporary table. - - - - - SQL Anywhere does support OUT parameters with callable stored procedures. - - - - - SQL Anywhere uses DEFAULT AUTOINCREMENT to identify an IDENTITY - column in a CREATE TABLE statement. - - - - - SQL Anywhere does support FOR UPDATE OF syntax. However, - in SQL Anywhere one cannot specify both FOR UPDATE OF syntax - and FOR UPDATE BY LOCK in the same statement. To achieve INTENT - locking when using FOR UPDATE OF syntax one must use a table hint - in the query's FROM clause, ie. - - SELECT * FROM FOO WITH( UPDLOCK ) FOR UPDATE OF ( column-list ). - - In this dialect, we avoid this issue by supporting only - FOR UPDATE BY LOCK. - - - - - SQL Anywhere supports FOR UPDATE over cursors containing - outer joins. - - - - - Lock rows in the cursor explicitly using INTENT row locks. - - - - - Enforce the condition that this query is read-only. This ensure that certain - query rewrite optimizations, such as join elimination, can be used. - - - - - Lock rows in the cursor explicitly using INTENT row locks. - - - - - SQL Anywhere does not support FOR UPDATE NOWAIT. However, the intent - is to acquire pessimistic locks on the underlying rows; with NHibernate - one can accomplish this through setting the BLOCKING connection option. - Hence, with this API we lock rows in the cursor explicitly using INTENT row locks. - - - - - We assume that applications using this dialect are NOT using - SQL Anywhere's snapshot isolation modes. - - - - - We assume that applications using this dialect are NOT using - SQL Anywhere's snapshot isolation modes. - - - - - SQL Anywhere supports both double quotes or '[' (Microsoft syntax) for - quoted identifiers. - - Note that quoted identifiers are controlled through - the QUOTED_IDENTIFIER connection option. - - - - - SQL Anywhere supports both double quotes or '[' (Microsoft syntax) for - quoted identifiers. - - - - - SQL Anywhere's implementation of KEYSET-DRIVEN cursors does not - permit absolute postioning. With jConnect as the driver, this support - will succeed because jConnect FETCHes the entire result set to the client - first; it will fail with the iAnywhere JDBC driver. Because the server - may decide to use a KEYSET cursor even if the cursor is declared as - FORWARD ONLY, this support is disabled. - - - - - By default, the SQL Anywhere dbinit utility creates a - case-insensitive database for the CHAR collation. This can - be changed through the use of the -c command line switch on - dbinit, and the setting may differ for the NCHAR collation - for national character sets. Whether or not a database - supports case-sensitive comparisons can be determined via - the DB_Extended_property() function, for example - - SELECT DB_EXTENDED_PROPERTY( 'Collation', 'CaseSensitivity'); - - - - - SQL Anywhere supports COMMENT ON statements for a wide variety of - database objects. When the COMMENT statement is executed an implicit - COMMIT is performed. However, COMMENT syntax for CREATE TABLE, as - expected by NHibernate (see Table.cs), is not supported. - - - - - SQL Anywhere currently supports only "VALUES (DEFAULT)", not - the ANSI standard "DEFAULT VALUES". This latter syntax will be - supported in the SQL Anywhere 11.0.1 release. For the moment, - "VALUES (DEFAULT)" works only for a single-column table. - - - - - SQL Anywhere does not require dropping a constraint before - dropping a table, and the DROP statement syntax used by Hibernate - to drop a constraint is not compatible with SQL Anywhere, so disable it. - - - - - In SQL Anywhere, the syntax, DECLARE LOCAL TEMPORARY TABLE ..., - can also be used, which creates a temporary table with procedure scope, - which may be important for stored procedures. - - - - - Assume that temporary table rows should be preserved across COMMITs. - - - - - SQL Dialect for SQL Anywhere 11 - for the NHibernate 3.0.0 distribution - Copyright (C) 2010 Glenn Paulley - Contact: http://iablog.sybase.com/paulley - - This NHibernate dialect should be considered BETA software. - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - - The dialect defaults the following configuration properties: - - - Property - Default Value - - - connection.driver_class - - - - prepare_sql - - - - - - - - SQL Dialect for SQL Anywhere 12 - for the NHibernate 3.2.0 distribution - Copyright (C) 2011 Glenn Paulley - Contact: http://iablog.sybase.com/paulley - - This NHibernate dialect for SQL Anywhere 12 is a contribution to the NHibernate - open-source project. It is intended to be included in the NHibernate - distribution and is licensed under LGPL. - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - - The SybaseSQLAnywhere12Dialect uses the SybaseSQLAnywhere11Dialect as its - base class. SybaseSQLAnywhere12Dialect includes support for ISO SQL standard - sequences, which are defined in the catalog table SYSSEQUENCE. - The dialect uses the SybaseSQLAnywhe11MetaData class for metadata API - calls, which correctly supports reserved words defined by SQL Anywhere. - - The dialect defaults the following configuration properties: - - - Property - Default Value - - - connection.driver_class - - - - prepare_sql - - - - - - - - SQL Anywhere supports SEQUENCES using a primarily SQL Standard - syntax. Sequence values can be queried using the .CURRVAL identifier, and the next - value in a sequence can be retrieved using the .NEXTVAL identifier. Sequences - are retained in the SYS.SYSSEQUENCE catalog table. - - - - - Pooled sequences does not refer to the CACHE parameter of the CREATE SEQUENCE - statement, but merely if the DBMS supports sequences that can be incremented or decremented - by values greater than 1. - - - - Get the SELECT command used to retrieve the names of all sequences. - The SELECT command; or NULL if sequences are not supported. - - - - This class maps a DbType to names. - - - Associations may be marked with a capacity. Calling the Get() - method with a type and actual size n will return the associated - name with smallest capacity >= n, if available and an unmarked - default type otherwise. - Eg, setting - - Names.Put(DbType, "TEXT" ); - Names.Put(DbType, 255, "VARCHAR($l)" ); - Names.Put(DbType, 65534, "LONGVARCHAR($l)" ); - - will give you back the following: - - Names.Get(DbType) // --> "TEXT" (default) - Names.Get(DbType,100) // --> "VARCHAR(100)" (100 is in [0:255]) - Names.Get(DbType,1000) // --> "LONGVARCHAR(1000)" (100 is in [256:65534]) - Names.Get(DbType,100000) // --> "TEXT" (default) - - On the other hand, simply putting - - Names.Put(DbType, "VARCHAR($l)" ); - - would result in - - Names.Get(DbType) // --> "VARCHAR($l)" (will cause trouble) - Names.Get(DbType,100) // --> "VARCHAR(100)" - Names.Get(DbType,1000) // --> "VARCHAR(1000)" - Names.Get(DbType,10000) // --> "VARCHAR(10000)" - - - - - - Get default type name for specified type - - the type key - the default type name associated with the specified key - - - - Get the type name specified type and size - - the type key - the SQL length - the SQL scale - the SQL precision - - The associated name with smallest capacity >= size if available and the - default type name otherwise - - - - - For types with a simple length, this method returns the definition - for the longest registered type. - - - - - - - Set a type name for specified type key and capacity - - the type key - the (maximum) type size/length - The associated name - - - - - - - - - - - Execute the given for each command of the resultset. - - The action to perform where the first parameter is the and the second parameter is the parameters offset of the . - - - - Datareader wrapper with the same life cycle of its command (through the batcher) - - - - - NHibernate driver for the Community CsharpSqlite data provider. -

- Author: Nikolaos Tountas -

-
- -

- In order to use this Driver you must have the Community.CsharpSqlite.dll and Community.CsharpSqlite.SQLiteClient assemblies referenced. -

-

- Please check http://code.google.com/p/csharp-sqlite/ for more information regarding csharp-sqlite. -

-
-
- - - Base class for the implementation of IDriver - - - - - A strategy for describing how NHibernate should interact with the different .NET Data - Providers. - - - - The IDriver interface is not intended to be exposed to the application. - Instead it is used internally by NHibernate to obtain connection objects, command objects, and - to generate and prepare IDbCommands. Implementors should provide a - public default constructor. - - - This is the interface to implement, or you can inherit from - if you have an ADO.NET data provider that NHibernate does not have built in support for. - To use the driver, NHibernate property connection.driver_class should be - set to the assembly-qualified name of the driver class. - - - key="connection.driver_class" - value="FullyQualifiedClassName, AssemblyName" - - - - - - Configure the driver using . - - - - - Creates an uninitialized IDbConnection object for the specific Driver - - - - - Generates an IDbCommand from the SqlString according to the requirements of the DataProvider. - - The of the command to generate. - The SqlString that contains the SQL. - The types of the parameters to generate for the command. - An IDbCommand with the CommandText and Parameters fully set. - - - - Prepare the by calling . - May be a no-op if the driver does not support preparing commands, or for any other reason. - - The command. - - - - Generates an IDbDataParameter for the IDbCommand. It does not add the IDbDataParameter to the IDbCommand's - Parameter collection. - - The IDbCommand to use to create the IDbDataParameter. - The name to set for IDbDataParameter.Name - The SqlType to set for IDbDataParameter. - An IDbDataParameter ready to be added to an IDbCommand. - - - - Remove 'extra' parameters from the IDbCommand - - - We sometimes create more parameters than necessary (see NH-2792 & also comments in SqlStringFormatter.ISqlStringVisitor.Parameter) - - - - - Expand the parameters of the cmd to have a single parameter for each parameter in the - sql string - - - This is for databases that do not support named parameters. So, instead of a single parameter - for 'select ... from MyTable t where t.Col1 = @p0 and t.Col2 = @p0' we can issue - 'select ... from MyTable t where t.Col1 = ? and t.Col2 = ?' - - - - - Make any adjustments to each IDbCommand object before it is added to the batcher. - - The command. - - This method should be executed before add each single command to the batcher. - If you have to adjust parameters values/type (when the command is full filled) this is a good place where do it. - - - - - Does this Driver support having more than 1 open IDataReader with - the same IDbConnection. - - - - A value of indicates that an exception would be thrown if NHibernate - attempted to have 2 IDataReaders open using the same IDbConnection. NHibernate - (since this version is a close to straight port of Hibernate) relies on the - ability to recursively open 2 IDataReaders. If the Driver does not support it - then NHibernate will read the values from the IDataReader into an . - - - A value of will result in greater performance because an IDataReader can be used - instead of the . So if the Driver supports it then make sure - it is set to . - - - - - - Change the parameterName into the correct format IDbCommand.CommandText - for the ConnectionProvider - - The unformatted name of the parameter - A parameter formatted for an IDbCommand.CommandText - - - - Changes the parameterName into the correct format for an IDbParameter - for the Driver. - - - For SqlServerConnectionProvider it will change id to @id - - The unformatted name of the parameter - A parameter formatted for an IDbParameter. - - - - Generates an IDbDataParameter for the IDbCommand. It does not add the IDbDataParameter to the IDbCommand's - Parameter collection. - - The IDbCommand to use to create the IDbDataParameter. - The name to set for IDbDataParameter.Name - The SqlType to set for IDbDataParameter. - An IDbDataParameter ready to be added to an IDbCommand. - - - - Override to make any adjustments to the IDbCommand object. (e.g., Oracle custom OUT parameter) - Parameters have been bound by this point, so their order can be adjusted too. - This is analagous to the RegisterResultSetOutParameter() function in Hibernate. - - - - - Override to make any adjustments to each IDbCommand object before it added to the batcher. - - The command. - - This method is similar to the but, instead be called just before execute the command (that can be a batch) - is executed before add each single command to the batcher and before . - If you have to adjust parameters values/type (when the command is full filled) this is a good place where do it. - - - - - Does this Driver require the use of a Named Prefix in the SQL statement. - - - For example, SqlClient requires select * from simple where simple_id = @simple_id - If this is false, like with the OleDb provider, then it is assumed that - the ? can be a placeholder for the parameter in the SQL statement. - - - - - Does this Driver require the use of the Named Prefix when trying - to reference the Parameter in the Command's Parameter collection. - - - This is really only useful when the UseNamedPrefixInSql == true. When this is true the - code will look like: - IDbParameter param = cmd.Parameters["@paramName"] - if this is false the code will be - IDbParameter param = cmd.Parameters["paramName"]. - - - - - The Named Prefix for parameters. - - - Sql Server uses "@" and Oracle uses ":". - - - - - Does this Driver support IDbCommand.Prepare(). - - - - A value of indicates that an exception would be thrown or the - company that produces the Driver we are wrapping does not recommend using - IDbCommand.Prepare(). - - - A value of indicates that calling IDbCommand.Prepare() will function - fine on this Driver. - - - - - - Initializes a new instance of with - type names that are loaded from the specified assembly. - - Assembly to load the types from. - Connection type name. - Command type name. - - - - Initializes a new instance of with - type names that are loaded from the specified assembly. - - The Invariant name of a provider. - Assembly to load the types from. - Connection type name. - Command type name. - - - - - Initializes a new instance of . - - - Thrown when the Community.CsharpSqlite.dll assembly can not be loaded. - - - - - A NHibernate Driver for using the IBM.Data.DB2.iSeries DataProvider. - - - - - Initializes a new instance of the class. - - - Thrown when the IBM.Data.DB2.iSeries assembly can not be loaded. - - - - - A NHibernate Driver for using the IBM.Data.DB2 DataProvider. - - - - - Initializes a new instance of the class. - - - Thrown when the IBM.Data.DB2 assembly can not be loaded. - - - - - Provides a database driver for dotConnect for MySQL by DevArt. - - - - In order to use this driver you must have the assembly Devart.Data.MySql.dll available for - NHibernate to load, including its dependencies (Devart.Data.dll). - - - Please check the product's website - for any updates and/or documentation regarding dotConnect for MySQL. - - - - - - Initializes a new instance of the class. - - - Thrown when the Devart.Data.MySql assembly can not be loaded. - - - - - Devart.Data.MySql uses named parameters in the sql. - - - MySql uses @ in the sql. - - - - - - - Devart.Data.MySql use the @ to locate parameters in sql. - - @ is used to locate parameters in sql. - - - - A NHibernate Driver for using the Firebird data provider located in - FirebirdSql.Data.FirebirdClient assembly. - - - - - Initializes a new instance of the class. - - - Thrown when the FirebirdSql.Data.Firebird assembly can not be loaded. - - - - - A NHibernate Driver for using the Informix DataProvider - - - - - Initializes a new instance of the class. - - - Thrown when the IBM.Data.Informix assembly can not be loaded. - - - - - A NHibernate Driver for using the Ingres DataProvider - - - - - - - Provides a database driver for MySQL. - - - - In order to use this driver you must have the assembly MySql.Data.dll available for - NHibernate to load, including its dependencies (ICSharpCode.SharpZipLib.dll is required by - the assembly MySql.Data.dll as of the time of this writing). - - - Please check the product's website - for any updates and/or documentation regarding MySQL. - - - - - - Initializes a new instance of the class. - - - Thrown when the MySql.Data assembly can not be loaded. - - - - - MySql.Data uses named parameters in the sql. - - - MySql uses ? in the sql. - - - - - - - MySql.Data use the ? to locate parameters in sql. - - ? is used to locate parameters in sql. - - - - The MySql.Data driver does NOT support more than 1 open IDataReader - with only 1 IDbConnection. - - - it is not supported. - - - - MySql.Data does not support preparing of commands. - - - it is not supported. - - With the Gamma MySql.Data provider it is throwing an exception with the - message "Expected End of data packet" when a select command is prepared. - - - - - Some Data Providers (ie - SqlClient) do not support Multiple Active Result Sets (MARS). - NHibernate relies on being able to create MARS to read Components and entities inside - of Collections. - - - This is a completely off-line DataReader - the underlying IDataReader that was used to create - this has been closed and no connections to the Db exists. - - - - - Creates a NDataReader from a - - The to get the records from the Database. - if we are loading the in the middle of reading it. - - NHibernate attempts to not have to read the contents of an into memory until it absolutely - has to. What that means is that it might have processed some records from the and will - pick up the midstream so that the underlying can be closed - so a new one can be opened. - - - - - Sets the values that can be cached back to null and sets the - index of the cached column to -1 - - - - - - - - - - - - - - - - - Takes care of freeing the managed and unmanaged resources that - this class is responsible for. - - - There are not any unmanaged resources or any disposable managed - resources that this class is holding onto. It is in here - to comply with the interface. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Stores a Result from a DataReader in memory. - - - - - Initializes a new instance of the NResult class. - - The IDataReader to populate the Result with. - - if the is already positioned on the record - to start reading from. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - An implementation of that will work with either an - returned by Execute or with an - whose contents have been read into a . - - - - This allows NHibernate to use the underlying for as long as - possible without the need to read everything into the . - - - The consumer of the returned from does - not need to know the underlying reader and can use it the same even if it switches from an - to in the middle of its use. - - - - - - Initializes a new instance of the class. - - The underlying IDataReader to use. - - - - Initializes a new instance of the NHybridDataReader class. - - The underlying IDataReader to use. - if the contents of the IDataReader should be read into memory right away. - - - - Reads all of the contents into memory because another - needs to be opened. - - - This will result in a no op if the reader is closed or is already in memory. - - - - - - - - - - - - - - - - - A flag to indicate if Disose() has been called. - - - - - Finalizer that ensures the object is correctly disposed of. - - - - - Takes care of freeing the managed and unmanaged resources that - this class is responsible for. - - - - - Takes care of freeing the managed and unmanaged resources that - this class is responsible for. - - Indicates if this NHybridDataReader is being Disposed of or Finalized. - - If this NHybridDataReader is being Finalized (isDisposing==false) then make sure not - to call any methods that could potentially bring this NHybridDataReader back to life. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Gets if the object is in the middle of reading a Result. - - if NextResult and Read have been called on the . - - - - - - - - - - - - - - - - - - - - - - The PostgreSQL data provider provides a database driver for PostgreSQL. -

- Author: Oliver Weichhold -

-
- -

- In order to use this Driver you must have the Npgsql.dll Assembly available for - NHibernate to load it. -

-

- Please check the products website - http://www.postgresql.org/ - for any updates and or documentation. -

-

- The homepage for the .NET DataProvider is: - http://pgfoundry.org/projects/npgsql. -

-
-
- - - Initializes a new instance of the class. - - - Thrown when the Npgsql assembly can not be loaded. - - - - - A NHibernate Driver for using the Odbc DataProvider - - - Always look for a native .NET DataProvider before using the Odbc DataProvider. - - - - - A NHibernate Driver for using the OleDb DataProvider - - - Always look for a native .NET DataProvider before using the OleDb DataProvider. - - - - - OLE DB provider does not support multiple open data readers - - - - - A NHibernate Driver for using the Oracle DataProvider. - - - - - A NHibernate Driver for using the Oracle.DataAccess DataProvider - - - Code was contributed by James Mills - on the NHibernate forums in this - post. - - - - - Initializes a new instance of . - - - Thrown when the Oracle.DataAccess assembly can not be loaded. - - - - - This adds logic to ensure that a DbType.Boolean parameter is not created since - ODP.NET doesn't support it. - - - - - - - - - - - - - - A NHibernate Driver for using the Oracle.DataAccess.Lite DataProvider - - - - - Initializes a new instance of . - - - Thrown when the Oracle.DataAccess.Lite_w32 assembly can not be loaded. - - - - - This adds logic to ensure that a DbType.Boolean parameter is not created since - ODP.NET doesn't support it. - - - - - A NHibernate Driver for using the Oracle.ManagedDataAccess DataProvider - - - - - Initializes a new instance of . - - - Thrown when the Oracle.ManagedDataAccess assembly can not be loaded. - - - - - This adds logic to ensure that a DbType.Boolean parameter is not created since - ODP.NET doesn't support it. - - - - - - - - - - - - - - A NHibernate Driver for using the SqlClient DataProvider - - - - - Creates an uninitialized object for - the SqlClientDriver. - - An unitialized object. - - - - Creates an uninitialized object for - the SqlClientDriver. - - An unitialized object. - - - - Interprets if a parameter is a Clob (for the purposes of setting its default size) - - The parameter - The of the parameter - True, if the parameter should be interpreted as a Clob, otherwise False - - - - Interprets if a parameter is a Blob (for the purposes of setting its default size) - - The parameter - The of the parameter - True, if the parameter should be interpreted as a Blob, otherwise False - - - - MsSql requires the use of a Named Prefix in the SQL statement. - - - because MsSql uses "@". - - - - - MsSql requires the use of a Named Prefix in the Parameter. - - - because MsSql uses "@". - - - - - The Named Prefix for parameters. - - - Sql Server uses "@". - - - - - The SqlClient driver does NOT support more than 1 open IDataReader - with only 1 IDbConnection. - - - it is not supported. - - MS SQL Server 2000 (and 7) throws an exception when multiple IDataReaders are - attempted to be opened. When SQL Server 2005 comes out a new driver will be - created for it because SQL Server 2005 is supposed to support it. - - - - - NHibernate driver for the System.Data.SQLite data provider for .NET 2.0. - - -

- In order to use this driver you must have the System.Data.SQLite.dll assembly available - for NHibernate to load. This assembly includes the SQLite.dll or SQLite3.dll libraries. -

-

- You can get the System.Data.SQLite.dll assembly from http://sourceforge.net/projects/sqlite-dotnet2. -

-

- Please check http://www.sqlite.org/ for more information regarding SQLite. -

-
-
- - - Initializes a new instance of . - - - Thrown when the SQLite.NET assembly can not be loaded. - - - - - A NHibernate driver for Microsoft SQL Server CE data provider - - - - - Initializes a new instance of the class. - - - - - MsSql requires the use of a Named Prefix in the SQL statement. - - - because MsSql uses "@". - - - - - MsSql requires the use of a Named Prefix in the Parameter. - - - because MsSql uses "@". - - - - - The Named Prefix for parameters. - - - Sql Server uses "@". - - - - - The SqlClient driver does NOT support more than 1 open IDataReader - with only 1 IDbConnection. - - - it is not supported. - - Ms Sql 2000 (and 7) throws an Exception when multiple DataReaders are - attempted to be Opened. When Yukon comes out a new Driver will be - created for Yukon because it is supposed to support it. - - - - - The SybaseAsaClientDriver driver provides a database driver for Adaptive Server Anywhere 9.0. - - - - - Initializes a new instance of the class. - - - Thrown when the iAnywhere.Data.AsaClient assembly is not and can not be loaded. - - - - - This provides a driver for Sybase ASE 15 using the ADO.NET driver. - - - You will need the following libraries available to your application: -
    -
  • Sybase.AdoNet2.AseClient.dll
  • -
  • sybdrvado20.dll
  • -
-
-
- - - SQL Dialect for SQL Anywhere 12 - for the NHibernate 3.2.0 distribution - Copyright (C) 2011 Glenn Paulley - Contact: http://iablog.sybase.com/paulley - - This NHibernate dialect for SQL Anywhere 12 is a contribution to the NHibernate - open-source project. It is intended to be included in the NHibernate - distribution and is licensed under LGPL. - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - - The SybaseSQLAnywhereDotNet4Driver provides a .NET 4 database driver for - Sybase SQL Anywhere 12 using the versioned ADO.NET driver - iAnywhere.Data.SQLAnywhere.v4.0. - - - - - Initializes a new instance of the class. - - - Thrown when the iAnywhere.Data.SQLAnywhere.v4.0 assembly is not and can not be loaded. - - - - - The SybaseSQLAnywhereDriver Driver provides a database driver for Sybase SQL Anywhere 10 and above - - - - - Initializes a new instance of the class. - - - Thrown when the iAnywhere.Data.SQLAnywhere assembly is not and can not be loaded. - - - - - Represents state associated with the processing of a given - in regards to loading collections. - - - Another implementation option to consider is to not expose ResultSets - directly (in the JDBC redesign) but to always "wrap" them and apply a [series of] context[s] to that wrapper. - - - - - Creates a collection load context for the given result set. - - Callback to other collection load contexts. - The result set this is "wrapping". - - - - Retrieve the collection that is being loaded as part of processing this result set. - - The persister for the collection being requested. - The key of the collection being requested. - The loading collection (see discussion above). - - Basically, there are two valid return values from this method:
    -
  • an instance of {@link PersistentCollection} which indicates to - continue loading the result set row data into that returned collection - instance; this may be either an instance already associated and in the - midst of being loaded, or a newly instantiated instance as a matching - associated collection was not found.
  • -
  • null indicates to ignore the corresponding result set row - data relating to the requested collection; this indicates that either - the collection was found to already be associated with the persistence - context in a fully loaded state, or it was found in a loading state - associated with another result set processing context.
  • -
-
-
- - - Finish the process of collection-loading for this bound result set. Mainly this - involves cleaning up resources and notifying the collections that loading is - complete. - - The persister for which to complete loading. - - - Add the collection to the second-level cache - The entry representing the collection to add - The persister - - - - Maps to specific contextual data - related to processing that . - - - Implementation note: internally an is used to maintain - the mappings; was chosen because I'd rather not be - dependent upon potentially bad and - implementations. - Considering the JDBC-redesign work, would further like this contextual info - not mapped separately, but available based on the result set being processed. - This would also allow maintaining a single mapping as we could reliably get - notification of the result-set closing... - - - - Creates and binds this to the given persistence context. - The persistence context to which this will be bound. - - - - Release internal state associated with the given result set. - - The result set for which it is ok to release associated resources. - - This should be called when we are done with processing said result set, - ideally as the result set is being closed. - - - - Release internal state associated with *all* result sets. - - This is intended as a "failsafe" process to make sure we get everything - cleaned up and released. - - - - - Get the {@link CollectionLoadContext} associated with the given - {@link ResultSet}, creating one if needed. - - The result set for which to retrieve the context. - The processing context. - - - - Attempt to locate the loading collection given the owner's key. The lookup here - occurs against all result-set contexts... - - The collection persister - The owner key - The loading collection, or null if not found. - - - - Register a loading collection xref. - - The xref collection key - The corresponding loading collection entry - - This xref map is used because sometimes a collection is in process of - being loaded from one result set, but needs to be accessed from the - context of another "nested" result set processing. - Implementation note: package protected, as this is meant solely for use - by {@link CollectionLoadContext} to be able to locate collections - being loaded by other {@link CollectionLoadContext}s/{@link ResultSet}s. - - - - - The inverse of {@link #registerLoadingCollectionXRef}. Here, we are done - processing the said collection entry, so we remove it from the - load context. - - The key of the collection we are done processing. - - The idea here is that other loading collections can now reference said - collection directly from the {@link PersistenceContext} because it - has completed its load cycle. - Implementation note: package protected, as this is meant solely for use - by {@link CollectionLoadContext} to be able to locate collections - being loaded by other {@link CollectionLoadContext}s/{@link ResultSet}s. - - - - - Locate the LoadingCollectionEntry within *any* of the tracked - s. - - The collection key. - The located entry; or null. - - Implementation note: package protected, as this is meant solely for use - by to be able to locate collections - being loaded by other s/ResultSets. - - - - - Retrieves the persistence context to which this is bound. - - - - - Do we currently have any internal entries corresponding to loading - collections? - - True if we currently hold state pertaining to loading collections; false otherwise. - - - - Do we currently have any registered internal entries corresponding to loading - collections? - True if we currently hold state pertaining to a registered loading collections; false otherwise. - - - - - Represents a collection currently being loaded. - - - - Describes a return in a native SQL query. - - - - Represents a return defined as part of a native sql query which - names a collection role in the form {classname}.{collectionrole}; it - is used in defining a custom sql query for loading an entity's - collection in non-fetching scenarios (i.e., loading the collection - itself as the "root" of the result). - - - - - Represents the base information for a non-scalar return defined as part of - a native sql query. - - - - Constructs some form of non-scalar return descriptor - The result alias - Any user-supplied column->property mappings - The lock mode to apply to the return. - - - Retrieve the defined result alias - - - Retrieve the lock-mode to apply to this return - - - Retrieve the user-supplied column->property mappings. - - - Construct a native-sql return representing a collection initializer - The result alias - - The entity-name of the entity owning the collection to be initialized. - - - The property name (on the owner) which represents - the collection to be initialized. - - Any user-supplied column->property mappings - The lock mode to apply to the collection. - - - - The class owning the collection. - - - - - The name of the property representing the collection from the . - - - - - Represents a return defined as part of a native sql query which - names a fetched role. - - - - Construct a return descriptor representing some form of fetch. - The result alias - The owner's result alias - The owner's property representing the thing to be fetched - Any user-supplied column->property mappings - The lock mode to apply - - - The alias of the owner of this fetched association. - - - - Retrieve the property name (relative to the owner) which maps to - the association to be fetched. - - - - - Represents a return defined as part of a native sql query which - names a "root" entity. A root entity means it is explicitly a - "column" in the result, as opposed to a fetched relationship or role. - - - - - Construct a return representing an entity returned at the root - of the result. - - The result alias - The entity name. - The lock mode to apply - - - - Construct a return representing an entity returned at the root - of the result. - - The result alias - The entity name. - Any user-supplied column->property mappings - The lock mode to apply - - - The name of the entity to be returned. - - - Describes a scalar return in a native SQL query. - - - - Extends an HQLQueryPlan to maintain a reference to the collection-role name - being filtered. - - - - Defines a query execution plan for an HQL query (or filter). - - - Descriptor regarding a named parameter. - - - - Not supported yet (AST parse needed) - - - - Defines a query execution plan for a native-SQL query. - - - Encapsulates metadata about parameters encountered within a query. - - - - The single available method - is responsible for parsing a query string and recognizing tokens in - relation to parameters (either named, ejb3-style, or ordinal) and - providing callbacks about such recognitions. - - - - - Performs the actual parsing and tokenizing of the query string making appropriate - callbacks to the given recognizer upon recognition of the various tokens. - - - Note that currently, this only knows how to deal with a single output - parameter (for callable statements). If we later add support for - multiple output params, this, obviously, needs to change. - - The string to be parsed/tokenized. - The thing which handles recognition events. - - - - - Implements a parameter parser recognizer specifically for the purpose - of journaling parameter locations. - - - - - Convenience method for creating a param location recognizer and - initiating the parse. - - The query to be parsed for parameter locations. - The generated recognizer, with journaled location info. - - - - The dictionary of named parameter locations. - The dictionary is keyed by parameter name. - - - - - The list of ordinal parameter locations. - - - The list elements are integers, representing the location for that given ordinal. - Thus OrdinalParameterLocationList[n] represents the location for the nth parameter. - - - - Acts as a cache for compiled query plans, as well as query-parameter metadata. - - - - Represents work that needs to be performed in a manner - which isolates it from any current application unit of - work transaction. - - - - - Perform the actual work to be done. - - The ADP connection to use. - The active transaction of the connection. - - - - Class which provides the isolation semantics required by - an . - - - - - Processing comes in two flavors: - - - - makes sure the work to be done is performed in a separate, distinct transaction - - - - makes sure the work to be done is performed outside the scope of any transaction - - - - - - - Ensures that all processing actually performed by the given work will - occur on a separate transaction. - - The work to be performed. - The session from which this request is originating. - - - - Ensures that all processing actually performed by the given work will - occur outside of a transaction. - - The work to be performed. - The session from which this request is originating. - - - - Responsible for maintaining the queue of actions related to events. - - The ActionQueue holds the DML operations queued as part of a session's - transactional-write-behind semantics. DML operations are queued here - until a flush forces them to be executed against the database. - - - - - - Perform all currently queued entity-insertion actions. - - - - - Perform all currently queued actions. - - - - - Prepares the internal action queues for execution. - - - - - Execute any registered - - - - - Performs cleanup of any held cache softlocks. - - Was the transaction successful. - - - - Check whether the given tables/query-spaces are to be executed against - given the currently queued actions. - - The table/query-spaces to check. - True if we contain pending actions against any of the given tables; false otherwise. - - - - Check whether any insertion or deletion actions are currently queued. - - True if insertions or deletions are currently queued; false otherwise. - - - - Identifies a named association belonging to a particular - entity instance. Used to record the fact that an association - is null during loading. - - - - - Defines a sequence of elements that are currently - eligible for batch fetching. - - - Even though this is a map, we only use the keys. A map was chosen in - order to utilize a to maintain sequencing - as well as uniqueness. - - - - - A map of subselect-fetch descriptors - keyed by the against which the descriptor is - registered. - - - - - The owning persistence context. - - - - - Constructs a queue for the given context. - - The owning persistence context. - - - - Clears all entries from this fetch queue. - - - - - Retrieve the fetch descriptor associated with the given entity key. - - The entity key for which to locate any defined subselect fetch. - The fetch descriptor; may return null if no subselect fetch queued for - this entity key. - - - - Adds a subselect fetch decriptor for the given entity key. - - The entity for which to register the subselect fetch. - The fetch descriptor. - - - - After evicting or deleting an entity, we don't need to - know the query that was used to load it anymore (don't - call this after loading the entity, since we might still - need to load its collections) - - - - - Clears all pending subselect fetches from the queue. - - - Called after flushing. - - - - - If an EntityKey represents a batch loadable entity, add - it to the queue. - - - Note that the contract here is such that any key passed in should - previously have been been checked for existence within the - ; failure to do so may cause the - referenced entity to be included in a batch even though it is - already associated with the . - - - - - After evicting or deleting or loading an entity, we don't - need to batch fetch it anymore, remove it from the queue - if necessary - - - - - Get a batch of uninitialized collection keys for a given role - - The persister for the collection role. - A key that must be included in the batch fetch - the maximum number of keys to return - The entity mode. - an array of collection keys, of length batchSize (padded with nulls) - - - - Get a batch of unloaded identifiers for this class, using a slightly - complex algorithm that tries to grab keys registered immediately after - the given key. - - The persister for the entities being loaded. - The identifier of the entity currently demanding load. - The maximum number of keys to return - an array of identifiers, of length batchSize (possibly padded with nulls) - - - - The types of children to cascade to - - - - - A cascade point that occurs just after the insertion of the parent - entity and just before deletion - - - - - A cascade point that occurs just before the insertion of the parent entity - and just after deletion - - - - - A cascade point that occurs just after the insertion of the parent entity - and just before deletion, inside a collection - - - - - A cascade point that occurs just after the update of the parent entity - - - - A cascade point that occurs just before the session is flushed - - - - A cascade point that occurs just after eviction of the parent entity from the - session cache - - - - - A cascade point that occurs just after locking a transient parent entity into the - session cache - - - - - A cascade point that occurs just after locking a transient parent entity into the session cache - - - - - A cascade point that occurs just before merging from a transient parent entity into - the object in the session cache - - - - - Delegate responsible, in conjunction with the various - , for implementing cascade processing. - - - - Cascade an action from the parent entity instance to all its children. - The parent's entity persister - The parent reference. - - - - Cascade an action from the parent entity instance to all its children. This - form is typicaly called from within cascade actions. - - The parent's entity persister - The parent reference. - - Typically some form of cascade-local cache - which is specific to each CascadingAction type - - - - Cascade an action to the child or children - - - Cascade an action to a collection - - - Cascade an action to a to-one association or any type - - - Cascade to the collection elements - - - Delete any entities that were removed from the collection - - - A contract for defining the aspects of cascading various persistence actions. - - - - package-protected constructor - - - For this style, should the given action be cascaded? - The action to be checked for cascade-ability. - True if the action should be cascaded under this style; false otherwise. - - - - Probably more aptly named something like doCascadeToCollectionElements(); - it is however used from both the collection and to-one logic branches... - - The action to be checked for cascade-ability. - True if the action should be really cascaded under this style; false otherwise. - - For this style, should the given action really be cascaded? The default - implementation is simply to return {@link #doCascade}; for certain - styles (currently only delete-orphan), however, we need to be able to - control this separately. - - - - Factory method for obtaining named cascade styles - The named cascade style name. - The appropriate CascadeStyle - - - save / delete / update / evict / lock / replicate / merge / persist + delete orphans - - - save / delete / update / evict / lock / replicate / merge / persist - - - save / update - - - lock - - - refresh - - - evict - - - replicate - - - merge - - - create - - - delete - - - delete + delete orphans - - - no cascades - - - Do we need to delete orphaned collection elements? - True if this style need to account for orphan delete operations; false otherwise. - - - - A session action that may be cascaded from parent entity to its children - - - - Cascade the action to the child object. - The session within which the cascade is occurring. - The child to which cascading should be performed. - The child's entity name - Typically some form of cascade-local cache which is specific to each CascadingAction type - Are cascading deletes enabled. - - - - Given a collection, get an iterator of the children upon which the - current cascading action should be visited. - - The session within which the cascade is occurring. - The mapping type of the collection. - The collection instance. - The children iterator. - - - - Called (in the case of returning true) to validate - that no cascade on the given property is considered a valid semantic. - - The session within which the cascade is occurring. - The property value - The property value owner - The entity persister for the owner - The index of the property within the owner. - - - - Given a collection, get an iterator of all its children, loading them - from the database if necessary. - - The session within which the cascade is occurring. - The mapping type of the collection. - The collection instance. - The children iterator. - - - - Iterate just the elements of the collection that are already there. Don't load - any new elements from the database. - - - - - - - - - - - - - - - - - - - - - - - - - Execute persist during flush time - - - - - - - Does this action potentially extrapolate to orphan deletes? - True if this action can lead to deletions of orphans. - - - Does the specified cascading action require verification of no cascade validity? - True if this action requires no-cascade verification; false otherwise. - - - Should this action be performed (or noCascade consulted) in the case of lazy properties. - - - - We need an entry to tell us all about the current state - of a collection with respect to its persistent state - - - - session-start/post-flush persistent state - - - allow the snapshot to be serialized - - - - The when the Collection was loaded. - - - This can be if the Collection was not loaded by NHibernate and - was passed in along with a transient object. - - - - - The identifier of the Entity that is the owner of this Collection - during the load or post flush. - - - - - Indicates that the Collection can still be reached by an Entity - that exist in the . - - - It is also used to ensure that the Collection is not shared between - two Entities. - - - - - Indicates that the Collection has been processed and is ready - to have its state synchronized with the database. - - - - - Indicates that a Collection needs to be updated. - - - A Collection needs to be updated whenever the contents of the Collection - have been changed. - - - - - Indicates that a Collection has old elements that need to be removed. - - - A Collection needs to have removals performed whenever its role changes or - the key changes and it has a loadedPersister - ie - it was loaded by NHibernate. - - - - - Indicates that a Collection needs to be recreated. - - - A Collection needs to be recreated whenever its role changes - or the owner changes. - - - - - If we instantiate a collection during the - process, we must ignore it for the rest of the flush. - - - - - The that is currently responsible - for the Collection. - - - This is set when NHibernate is updating a reachable or an - unreachable collection. - - - - - Initializes a new instance of . - - - For newly wrapped collections, or dereferenced collection wrappers - - - - For collections just loaded from the database - - - - Initializes a new instance of for initialized detached collections. - - - For initialized detached collections - - - - - Determine if the collection is "really" dirty, by checking dirtiness - of the collection elements, if necessary - - - - - Prepares this CollectionEntry for the Flush process. - - The that this CollectionEntry will be responsible for flushing. - - - - Updates the CollectionEntry to reflect that the - has been initialized. - - The initialized that this Entry is for. - - - - Updates the CollectionEntry to reflect that it is has been successfully flushed to the database. - - The that was flushed. - - Called after a successful flush. - - - - - Sets the information in this CollectionEntry that is specific to the - . - - - The that is - responsible for the Collection. - - - - - - - - - - - - - - Uniquely identifies a collection instance in a particular session. - - - - - Record the fact that this collection was dereferenced - - The collection to be updated by unreachability. - The session. - - - - Initialize the role of the collection. - - The collection to be updated by reachibility. - The type of the collection. - The owner of the collection. - The session. - - - - We need an entry to tell us all about the current state - of an object with respect to its persistent state - - - - - Initializes a new instance of EntityEntry. - - The current of the Entity. - The snapshot of the Entity's state when it was loaded. - - The identifier of the Entity in the database. - The version of the Entity. - The for the Entity. - A boolean indicating if the Entity exists in the database. - The that is responsible for this Entity. - - - - - - - After actually inserting a row, record the fact that the instance exists on the - database (needed for identity-column key generation) - - - - - After actually updating the database, update the snapshot information, - and escalate the lock mode. - - - - - After actually deleting a row, record the fact that the instance no longer - exists in the database - - - - - Can the entity be modified? - The entity is modifiable if all of the following are true: - - the entity class is mutable - - the entity is not read-only - - if the current status is Status.Deleted, then the entity was not read-only when it was deleted - - true, if the entity is modifiable; false, otherwise - - - - Gets or sets the current of the Entity. - - The of the Entity. - - - - Gets or sets the of this Entity with respect to its - persistence in the database. - - The of this Entity. - - - - Gets or sets the identifier of the Entity in the database. - - The identifier of the Entity in the database if one has been assigned. - This might be when the is - and the database generates the id. - - - - Gets or sets the snapshot of the Entity when it was loaded from the database. - - The snapshot of the Entity. - - There will only be a value when the Entity was loaded in the current Session. - - - - - Gets or sets the snapshot of the Entity when it was marked as being ready for deletion. - - The snapshot of the Entity. - This will be if the Entity is not being deleted. - - - - Gets or sets a indicating if this Entity exists in the database. - - if it is already in the database. - - It can also be if it does not exists in the database yet and the - is . - - - - - Gets or sets the version of the Entity. - - The version of the Entity. - - - - Gets or sets the that is responsible for this Entity. - - The that is responsible for this Entity. - - - - Gets the Fully Qualified Name of the class this Entity is an instance of. - - The Fully Qualified Name of the class this Entity is an instance of. - - - - Get the EntityKey based on this EntityEntry. - - - - - A globally unique identifier of an instance, consisting of the user-visible identifier - and the identifier space (eg. tablename) - - - - Construct a unique identifier for an entity class instance - - - Used to reconstruct an EntityKey during deserialization. - The identifier value - The root entity name - The specific entity name - The type of the identifier value - Whether represented entity is eligible for batch loading - The session factory - The entity's entity mode - - - - To use in deserialization callback - - - - - - Used to uniquely key an entity instance in relation to a particular session - by some unique property reference, as opposed to identifier. - Uniqueing information consists of the entity-name, the referenced - property name, and the referenced property value. - - - - - - A FilterDefinition defines the global attributes of a dynamic filter. This - information includes its name as well as its defined parameters (name and type). - - - - - Set the named parameter's value list for this filter. - - The name of the filter for which this configuration is in effect. - The default filter condition. - A dictionary storing the NHibernate type - of each parameter under its name. - if set to true used in many to one rel - - - - Retreive the type of the named parameter defined for this filter. - - The name of the filter parameter for which to return the type. - The type of the named parameter. - - - - Gets a value indicating whether to use this filter-def in manytoone refs. - - true if [use in many to one]; otherwise, false. - - - - Get the name of the filter this configuration defines. - - The filter name for this configuration. - - - - Get a set of the parameters defined by this configuration. - - The parameters named by this configuration. - - - Algorithms related to foreign key constraint transparency - - - - Is this instance persistent or detached? - - - If is non-null, don't hit the database to make the - determination, instead assume that value; the client code must be - prepared to "recover" in the case that this assumed result is incorrect. - - - - - Is this instance, which we know is not persistent, actually transient? - If assumed is non-null, don't hit the database to make the - determination, instead assume that value; the client code must be - prepared to "recover" in the case that this assumed result is incorrect. - - - If is non-null, don't hit the database to make the - determination, instead assume that value; the client code must be - prepared to "recover" in the case that this assumed result is incorrect. - - - - - Return the identifier of the persistent or transient object, or throw - an exception if the instance is "unsaved" - - - Used by OneToOneType and ManyToOneType to determine what id value should - be used for an object that may or may not be associated with the session. - This does a "best guess" using any/all info available to use (not just the - EntityEntry). - - - - - Nullify all references to entities that have not yet - been inserted in the database, where the foreign key - points toward that entity - - - - - Return null if the argument is an "unsaved" entity (ie. - one with no existing database row), or the input argument - otherwise. This is how Hibernate avoids foreign key constraint - violations. - - - - - Determine if the object already exists in the database, using a "best guess" - - - - - A strategy for determining if an identifier value is an identifier of a new - transient instance or a previously persistent transient instance. The strategy - is determined by the Unsaved-Value attribute in the mapping file. - - - - - - - - Assume the transient instance is newly instantiated if its identifier is null or - equal to Value - - - - - - Does the given identifier belong to a new instance - - - - - Always assume the transient instance is newly instantiated - - - - - Never assume that transient instance is newly instantiated - - - - - Assume the transient instance is newly instantiated if the identifier - is null. - - - - Assume nothing. - - - - Holds the state of the persistence context, including the - first-level cache, entries, snapshots, proxies, etc. - - - - Add a collection which has no owner loaded - - - - Get and remove a collection whose owner is not yet loaded, - when its owner is being loaded - - - - Clear the state of the persistence context - - - Set the status of an entry - - - Called after transactions end - - - - Get the current state of the entity as known to the underlying - database, or null if there is no corresponding row - - - - - Retrieve the cached database snapshot for the requested entity key. - - The entity key for which to retrieve the cached snapshot - The cached snapshot - - - This differs from is two important respects: - no snapshot is obtained from the database if not already cached - an entry of NO_ROW here is interpreted as an exception - - - - - - Get the values of the natural id fields as known to the underlying - database, or null if the entity has no natural id or there is no - corresponding row. - - - - Add a canonical mapping from entity key to entity instance - - - - Get the entity instance associated with the given EntityKey - - - - Is there an entity with the given key in the persistence context - - - - Remove an entity from the session cache, also clear - up other state associated with the entity, all except - for the EntityEntry - - - - Get an entity cached by unique key - - - Add an entity to the cache by unique key - - - - Retrieve the EntityEntry representation of the given entity. - - The entity for which to locate the EntityEntry. - The EntityEntry for the given entity. - - - Remove an entity entry from the session cache - - - Is there an EntityEntry for this instance? - - - Get the collection entry for a persistent collection - - - Adds an entity to the internal caches. - - - - Generates an appropriate EntityEntry instance and adds it - to the event source's internal caches. - - - - Is the given collection associated with this persistence context? - - - Is the given proxy associated with this persistence context? - - - - Takes the given object and, if it represents a proxy, reassociates it with this event source. - - The possible proxy to be reassociated. - Whether the passed value represented an actual proxy which got initialized. - - - - If a deleted entity instance is re-saved, and it has a proxy, we need to - reset the identifier of the proxy - - - - - Get the entity instance underlying the given proxy, throwing - an exception if the proxy is uninitialized. If the given object - is not a proxy, simply return the argument. - - - - - Possibly unproxy the given reference and reassociate it with the current session. - - The reference to be unproxied if it currently represents a proxy. - The unproxied instance. - - - - Attempts to check whether the given key represents an entity already loaded within the - current session. - - The entity reference against which to perform the uniqueness check. - The entity key. - - - - If the existing proxy is insufficiently "narrow" (derived), instantiate a new proxy - and overwrite the registration of the old one. This breaks == and occurs only for - "class" proxies rather than "interface" proxies. Also init the proxy to point to - the given target implementation if necessary. - - The proxy instance to be narrowed. - The persister for the proxied entity. - The internal cache key for the proxied entity. - (optional) the actual proxied entity instance. - An appropriately narrowed instance. - - - - Return the existing proxy associated with the given EntityKey, or the - third argument (the entity associated with the key) if no proxy exists. Init - the proxy to the target implementation, if necessary. - - - - - Return the existing proxy associated with the given EntityKey, or the - argument (the entity associated with the key) if no proxy exists. - (slower than the form above) - - - - Get the entity that owns this persistent collection - - - Get the entity that owned this persistent collection when it was loaded - The persistent collection - - The owner if its entity ID is available from the collection's loaded key - and the owner entity is in the persistence context; otherwise, returns null - - - - Get the ID for the entity that owned this persistent collection when it was loaded - The persistent collection - the owner ID if available from the collection's loaded key; otherwise, returns null - - - add a collection we just loaded up (still needs initializing) - - - add a detached uninitialized collection - - - - Add a new collection (ie. a newly created one, just instantiated by the - application, with no database state or snapshot) - - The collection to be associated with the persistence context - - - - - add an (initialized) collection that was created by another session and passed - into update() (ie. one with a snapshot and existing state on the database) - - - - add a collection we just pulled out of the cache (does not need initializing) - - - Get the collection instance associated with the CollectionKey - - - - Register a collection for non-lazy loading at the end of the two-phase load - - - - - Force initialization of all non-lazy collections encountered during - the current two-phase load (actually, this is a no-op, unless this - is the "outermost" load) - - - - Get the PersistentCollection object for an array - - - Register a PersistentCollection object for an array. - Associates a holder with an array - MUST be called after loading - array, since the array instance is not created until endLoad(). - - - - - Remove the mapping of collection to holder during eviction of the owning entity - - - - Get the snapshot of the pre-flush collection state - - - - Get the collection entry for a collection passed to filter, - which might be a collection wrapper, an array, or an unwrapped - collection. Return null if there is no entry. - - - - Get an existing proxy by key - - - Add a proxy to the session cache - - - Remove a proxy from the session cache - - - Called before cascading - - - Called after cascading - - - Call this before beginning a two-phase load - - - Call this after finishing a two-phase load - - - - Search the persistence context for an owner for the child object, - given a collection role - - - - - Search the persistence context for an index of the child object, given a collection role - - - - - Record the fact that the association belonging to the keyed entity is null. - - - - Is the association property belonging to the keyed entity null? - - - - Change the read-only status of an entity (or proxy). - - - - Read-only entities can be modified, but changes are not persisted. They are not dirty-checked - and snapshots of persistent state are not maintained. - - - Immutable entities cannot be made read-only. - - - To set the default read-only setting for entities and proxies that are loaded - into the persistence context, see . - - - An entity (or ). - If true, the entity or proxy is made read-only; if false, it is made modifiable. - - - - - - Is the specified entity (or proxy) read-only? - - An entity (or ) - - true if the entity or proxy is read-only, otherwise false. - - - - - - - Add child/parent relation to cache for cascading operations - - The child. - The parent. - - - - Remove child/parent relation from cache - - The child. - - - - Get the session to which this persistence context is bound. - - - - - Retrieve this persistence context's managed load context. - - - - - Get the BatchFetchQueue, instantiating one if necessary. - - - - Retrieve the set of EntityKeys representing nullifiable references - - - Get the mapping from key value to entity instance - - - Get the mapping from entity instance to entity entry - - - Get the mapping from collection instance to collection entry - - - Get the mapping from collection key to collection instance - - - How deep are we cascaded? - - - Is a flush cycle currently in process? - Called before and after the flushcycle - - - - The read-only status for entities (and proxies) loaded into this persistence context. - - - - When a proxy is initialized, the loaded entity will have the same read-only - setting as the uninitialized proxy has, regardless of the persistence context's - current setting. - - - To change the read-only setting for a particular entity or proxy that is already - in the current persistence context, use . - - - - - - - False if we know for certain that all the entities are read-only - - - Is in a two-phase load? - - - - Defines the internal contract between the ISessionFactory and other parts of NHibernate - such as implementors of IType. - - - - - Creates ISessions. - - - - Usually an application has a single SessionFactory. Threads servicing client requests - obtain ISessions from the factory. Implementors must be threadsafe. - - - ISessionFactorys are immutable. The behaviour of a SessionFactory - is controlled by properties supplied at configuration time. - These properties are defined on Environment - - - - - - Open a ISession on the given connection - - A connection provided by the application - A session - - Note that the second-level cache will be disabled if you - supply a ADO.NET connection. NHibernate will not be able to track - any statements you might have executed in the same transaction. - Consider implementing your own . - - - - - Create database connection and open a ISession on it, specifying an interceptor - - A session-scoped interceptor - A session - - - - Open a ISession on the given connection, specifying an interceptor - - A connection provided by the application - A session-scoped interceptor - A session - - Note that the second-level cache will be disabled if you - supply a ADO.NET connection. NHibernate will not be able to track - any statements you might have executed in the same transaction. - Consider implementing your own . - - - - - Create a database connection and open a ISession on it - - - - - - Get the associated with the given entity class - - the given entity type. - The class metadata or if not found. - - - - Get the associated with the given entity name - the given entity name. - The class metadata or if not found. - - - - - Get the CollectionMetadata associated with the named collection role - - - - - - - Get all as a from entityname - to metadata object - - A dictionary from an entity name to - - - - Get all CollectionMetadata as a IDictionary from role name - to metadata object - - - - - - Destroy this SessionFactory and release all resources - connection pools, etc). It is the responsibility of the application - to ensure that there are no open Sessions before calling - close(). - - - - - Evict all entries from the process-level cache. This method occurs outside - of any transaction; it performs an immediate "hard" remove, so does not respect - any transaction isolation semantics of the usage strategy. Use with care. - - - - - - Evict an entry from the process-level cache. This method occurs outside - of any transaction; it performs an immediate "hard" remove, so does not respect - any transaction isolation semantics of the usage strategy. Use with care. - - - - - - - Evict all entries from the second-level cache. This method occurs outside - of any transaction; it performs an immediate "hard" remove, so does not respect - any transaction isolation semantics of the usage strategy. Use with care. - - - - - Evict an entry from the second-level cache. This method occurs outside - of any transaction; it performs an immediate "hard" remove, so does not respect - any transaction isolation semantics of the usage strategy. Use with care. - - - - - Evict all entries from the process-level cache. This method occurs outside - of any transaction; it performs an immediate "hard" remove, so does not respect - any transaction isolation semantics of the usage strategy. Use with care. - - - - - - Evict an entry from the process-level cache. This method occurs outside - of any transaction; it performs an immediate "hard" remove, so does not respect - any transaction isolation semantics of the usage strategy. Use with care. - - - - - - - Evict any query result sets cached in the default query cache region. - - - - - Evict any query result sets cached in the named query cache region. - - - - - Get a new stateless session. - - - Get a new stateless session for the given ADO.NET connection. - - - - Obtain the definition of a filter by name. - - The name of the filter for which to obtain the definition. - The filter definition. - - - - Obtains the current session. - - - - The definition of what exactly "current" means is controlled by the - implementation configured for use. - - - The current session. - Indicates an issue locating a suitable current session. - - - Get the statistics for this session factory - - - Was this already closed? - - - - Obtain a set of the names of all filters defined on this SessionFactory. - - The set of filter names. - - - - Get the persister for the named entity - - The name of the entity that is persisted. - The for the entity. - If no can be found. - - - - Get the persister object for a collection role - - - - - - - Get the return types of a query - - - - - - Get the return aliases of a query - - - - Get the names of all persistent classes that implement/extend the given interface/class - - The entity-name, the class name or full name, the imported class name. - All implementors class names. - - - - Get a class name, using query language imports - - - - - - - Get a particular named query cache, or the default cache - - the name of the cache region, or null for the default - query cache - the existing cache, or a newly created cache if none by that - region name - - - - Gets the hql query identified by the name. - - The name of that identifies the query. - - A hql query or if the named - query does not exist. - - - - - Get the identifier generator for the hierarchy - - - - Get a named second-level cache region - - - - Open a session conforming to the given parameters. Used mainly - for current session processing. - - The external ado.net connection to use, if one (i.e., optional). - - Should the session be auto-flushed - prior to transaction completion? - - - Should the session be auto-closed after - transaction completion? - - The release mode for managed jdbc connections. - An appropriate session. - - - - Retrieves a set of all the collection roles in which the given entity - is a participant, as either an index or an element. - - The entity name for which to get the collection roles. - - Set of all the collection roles in which the given entityName participates. - - - - - Get the persister for the named entity - - The name of the entity that is persisted. - - The for the entity or is the name was not found. - - - - - Get the entity-name for a given mapped class. - - the mapped class - the enntity name where available or null - - - - Get the SQL . - - - - - Get the used. - - - - The cache of table update timestamps - - - Statistics SPI - - - Retrieves the SQLExceptionConverter in effect for this SessionFactory. - The SQLExceptionConverter for this SessionFactory. - - - - Get the default query cache - - - - - Gets the ICurrentSessionContext instance attached to this session factory. - - - - - Defines the internal contract between the Session and other parts of NHibernate - such as implementors of Type or ClassPersister - - - - - Initialize the session after its construction was complete - - - - - Initialize the collection (if not already initialized) - - - - - - - Load an instance without checking if it was deleted. If it does not exist and isn't nullable, throw an exception. - This method may create a new proxy or return an existing proxy. - - The entityName (or class full name) to load. - The identifier of the object in the database. - Allow null instance - When enabled, the object is eagerly fetched. - - A proxy of the object or an instance of the object if the persistentClass does not have a proxy. - - No object could be found with that id. - - - - Load an instance immediately. Do not return a proxy. - - - - - - - - Execute a List() query - - - - - - - - Execute a List() expression query - - - - - - - - Create a new instance of Query for the given query expression - A hibernate query expression - The query - - - - - Strongly-typed version of - - - - - Strongly-typed version of - - - - - Strongly-typed version of - - - - - Execute an Iterate() query - - - - - - - - Execute an Iterate() query - - - - - - - - Strongly-typed version of - - - - - Strongly-typed version of - - - - - Execute a filter - - - - - Execute a filter (strongly-typed version). - - - - - Collection from a filter - - - - - Strongly-typed version of - - - - Get the for any instance - optional entity name - the entity instance - - - - Notify the session that an NHibernate transaction has begun. - - - - - Notify the session that the transaction is about to complete - - - - - Notify the session that the transaction completed, so we no longer own the old locks. - (Also we should release cache softlocks). May be called multiple times during the transaction - completion process. - - - - - Return the identifier of the persistent object, or null if transient - - - - - Instantiate the entity class, initializing with the given identifier - - - - - Execute an SQL Query - - - - - Strongly-typed version of - - - - Execute an SQL Query - - - - Retrieve the currently set value for a filter parameter. - - The filter parameter name in the format - {FILTER_NAME.PARAMETER_NAME}. - The filter parameter value. - - - - Retrieve the type for a given filter parameter. - - The filter parameter name in the format - {FILTER_NAME.PARAMETER_NAME}. - The filter parameter type. - - - - Get the entity instance associated with the given Key, - calling the Interceptor if necessary - - - - The best guess entity name for an entity not in an association - - - The guessed entity name for an entity not in an association - - - Execute a native SQL update or delete query - - - Execute a HQL update or delete query - - - Execute a HQL update or delete query - - - - System time before the start of the transaction - - - - - - Get the creating SessionFactoryImplementor - - - - - - Get the prepared statement Batcher for this session - - - - - Return the currently enabled filters. The filter map is keyed by filter - name, with values corresponding to the - instance. - - The currently enabled filters. - - - Retrieves the configured event listeners from this event source. - - - Get the persistence context for this session - - - - Is the ISession still open? - - - - - Is the ISession currently connected? - - - - Determine whether the session is closed. Provided separately from - {@link #isOpen()} as this method does not attempt any JTA synch - registration, where as {@link #isOpen()} does; which makes this one - nicer to use for most internal purposes. - - True if the session is closed; false otherwise. - - - - - Does this Session have an active Hibernate transaction - or is there a JTA transaction in progress? - - - - Retrieve the entity mode in effect for this session. - - - - Get the columns of the associated table which are to - be used in the join - - - - - Get the aliased columns of the owning entity which are to - be used in the join - - - - - Get the columns of the owning entity which are to - be used in the join - - - - - Implements the algorithm for validating property values - for illegal null values - - - - - Check nullability of the class persister properties - - entity properties - class persister - wether it is intended to be updated or saved - - - - Check sub elements-nullability. Returns property path that break - nullability or null if none - - type to check - value to check - property path - - - - Check component nullability. Returns property path that break - nullability or null if none - - component properties - component not-nullable type - property path - - - - Return a well formed property path. - Basicaly, it will return parent.child - - parent in path - child in path - parent-child path - - - - Container for data that is used during the NHibernate query/load process. - - - - - Ensure the Types and Values are the same length. - - - If the Lengths of and - are not equal. - - - - - Gets or sets an array of objects that is stored at the index - of the Parameter. - - - - - Gets or sets an array of objects that is stored at the index - of the Parameter. - - - - - Gets or sets the for the Query. - - - - - Gets or sets an that contains the alias name of the - object from hql as the key and the as the value. - - An of lock modes. - - - - Information to determine how to run an IDbCommand and what - records to return from the IDataReader. - - - - - Indicates that the no value has been set on the Property. - - - - - Gets or Sets the Index of the First Row to Select - - The Index of the First Rows to Select - Defaults to 0 unless specifically set. - - - - Gets or Sets the Maximum Number of Rows to Select - - The Maximum Number of Rows to Select - Defaults to NoValue unless specifically set. - - - - Gets or Sets the Timeout of the Query - - The Query Timeout - Defaults to NoValue unless specifically set. - - - - A represents the state of persistent "stuff" which - NHibernate is tracking. This includes persistent entities, collections, - as well as proxies generated. - - - There is meant to be a one-to-one correspondence between a SessionImpl and - a PersistentContext. The SessionImpl uses the PersistentContext to track - the current state of its context. Event-listeners then use the - PersistentContext to drive their processing. - - - - Constructs a PersistentContext, bound to the given session. - The session "owning" this context. - - - Add a collection which has no owner loaded - - - - Get and remove a collection whose owner is not yet loaded, - when its owner is being loaded - - - - Clear the state of the persistence context - - - Set the status of an entry - - - Called after transactions end - - - - Get the current state of the entity as known to the underlying - database, or null if there is no corresponding row - - - - - Retrieve the cached database snapshot for the requested entity key. - - The entity key for which to retrieve the cached snapshot - The cached snapshot - - - This differs from is two important respects: - no snapshot is obtained from the database if not already cached - an entry of NO_ROW here is interpreted as an exception - - - - - - Get the values of the natural id fields as known to the underlying - database, or null if the entity has no natural id or there is no - corresponding row. - - - - Add a canonical mapping from entity key to entity instance - - - - Get the entity instance associated with the given EntityKey - - - - Is there an entity with the given key in the persistence context - - - - Remove an entity from the session cache, also clear - up other state associated with the entity, all except - for the EntityEntry - - - - Get an entity cached by unique key - - - Add an entity to the cache by unique key - - - - Retrieve the EntityEntry representation of the given entity. - - The entity for which to locate the EntityEntry. - The EntityEntry for the given entity. - - - Remove an entity entry from the session cache - - - Is there an EntityEntry for this instance? - - - Get the collection entry for a persistent collection - - - Adds an entity to the internal caches. - - - - Generates an appropriate EntityEntry instance and adds it - to the event source's internal caches. - - - - Is the given collection associated with this persistence context? - - - Is the given proxy associated with this persistence context? - - - - Takes the given object and, if it represents a proxy, reassociates it with this event source. - - The possible proxy to be reassociated. - Whether the passed value represented an actual proxy which got initialized. - - - - If a deleted entity instance is re-saved, and it has a proxy, we need to - reset the identifier of the proxy - - - - - Associate a proxy that was instantiated by another session with this session - - The proxy initializer. - The proxy to reassociate. - - - - Get the entity instance underlying the given proxy, throwing - an exception if the proxy is uninitialized. If the given object - is not a proxy, simply return the argument. - - - - - Possibly unproxy the given reference and reassociate it with the current session. - - The reference to be unproxied if it currently represents a proxy. - The unproxied instance. - - - - Attempts to check whether the given key represents an entity already loaded within the - current session. - - The entity reference against which to perform the uniqueness check. - The entity key. - - - - If the existing proxy is insufficiently "narrow" (derived), instantiate a new proxy - and overwrite the registration of the old one. This breaks == and occurs only for - "class" proxies rather than "interface" proxies. Also init the proxy to point to - the given target implementation if necessary. - - The proxy instance to be narrowed. - The persister for the proxied entity. - The internal cache key for the proxied entity. - (optional) the actual proxied entity instance. - An appropriately narrowed instance. - - - - Return the existing proxy associated with the given EntityKey, or the - third argument (the entity associated with the key) if no proxy exists. Init - the proxy to the target implementation, if necessary. - - - - - Return the existing proxy associated with the given EntityKey, or the - argument (the entity associated with the key) if no proxy exists. - (slower than the form above) - - - - Get the entity that owns this persistent collection - - - Get the entity that owned this persistent collection when it was loaded - The persistent collection - - The owner, if its entity ID is available from the collection's loaded key - and the owner entity is in the persistence context; otherwise, returns null - - - - Get the ID for the entity that owned this persistent collection when it was loaded - The persistent collection - the owner ID if available from the collection's loaded key; otherwise, returns null - - - Get the ID for the entity that owned this persistent collection when it was loaded - The collection entry - the owner ID if available from the collection's loaded key; otherwise, returns null - - - add a collection we just loaded up (still needs initializing) - - - add a detached uninitialized collection - - - - Add a new collection (ie. a newly created one, just instantiated by the - application, with no database state or snapshot) - - The collection to be associated with the persistence context - - - - Add an collection to the cache, with a given collection entry. - The collection for which we are adding an entry. - The entry representing the collection. - The key of the collection's entry. - - - Add a collection to the cache, creating a new collection entry for it - The collection for which we are adding an entry. - The collection persister - - - - add an (initialized) collection that was created by another session and passed - into update() (ie. one with a snapshot and existing state on the database) - - - - add a collection we just pulled out of the cache (does not need initializing) - - - Get the collection instance associated with the CollectionKey - - - - Register a collection for non-lazy loading at the end of the two-phase load - - - - - Force initialization of all non-lazy collections encountered during - the current two-phase load (actually, this is a no-op, unless this - is the "outermost" load) - - - - Get the PersistentCollection object for an array - - - Register a PersistentCollection object for an array. - Associates a holder with an array - MUST be called after loading - array, since the array instance is not created until endLoad(). - - - - - Remove the mapping of collection to holder during eviction of the owning entity - - - - Get the snapshot of the pre-flush collection state - - - - Get the collection entry for a collection passed to filter, - which might be a collection wrapper, an array, or an unwrapped - collection. Return null if there is no entry. - - - - Get an existing proxy by key - - - Add a proxy to the session cache - - - Remove a proxy from the session cache - - - Called before cascading - - - Called after cascading - - - Call this before begining a two-phase load - - - Call this after finishing a two-phase load - - - - Search the persistence context for an owner for the child object, - given a collection role - - - - - Search the persistence context for an index of the child object, given a collection role - - - - - Record the fact that the association belonging to the keyed entity is null. - - - - Is the association property belonging to the keyed entity null? - - - - - - - - - - Get the session to which this persistence context is bound. - - - - - Retrieve this persistence context's managed load context. - - - - - Get the BatchFetchQueue, instantiating one if necessary. - - - - Retrieve the set of EntityKeys representing nullifiable references - - - Get the mapping from key value to entity instance - - - Get the mapping from entity instance to entity entry - - - Get the mapping from collection instance to collection entry - - - Get the mapping from collection key to collection instance - - - How deep are we cascaded? - - - Is a flush cycle currently in process? - Called before and after the flushcycle - - - False if we know for certain that all the entities are read-only - - - - - - - Represents the status of an entity with respect to - this session. These statuses are for internal - book-keeping only and are not intended to represent - any notion that is visible to the application. - - - - - The Entity is snapshotted in the Session with the same state as the database - (called Managed in H3). - - - - - The Entity is in the Session and has been marked for deletion but not - deleted from the database yet. - - - - - The Entity has been deleted from database. - - - - - The Entity is in the process of being loaded. - - - - - The Entity is in the process of being saved. - - - - - The entity is read-only. - - - - - Allows work to be done outside the current transaction, by suspending it, - and performing work in a new transaction - - - - The work to be done - - - Suspend the current transaction and perform work in a new transaction - - - - Functionality relating to Hibernate's two-phase loading process, - that may be reused by persisters that do not use the Loader - framework - - - - - Register the "hydrated" state of an entity instance, after the first step of 2-phase loading. - - Add the "hydrated state" (an array) of an uninitialized entity to the session. We don't try - to resolve any associations yet, because there might be other entities waiting to be - read from the JDBC result set we are currently processing - - - - - Perform the second step of 2-phase load. Fully initialize the entity instance. - After processing a JDBC result set, we "resolve" all the associations - between the entities which were instantiated and had their state - "hydrated" into an array - - - - - Add an uninitialized instance of an entity class, as a placeholder to ensure object - identity. Must be called before postHydrate(). - Create a "temporary" entry for a newly instantiated entity. The entity is uninitialized, - but we need the mapping from id to instance in order to guarantee uniqueness. - - - - An ordered pair of a value and its Hibernate type. - - - - Return an IdentifierValue for the specified unsaved-value. If none is specified, - guess the unsaved value by instantiating a test instance of the class and - reading it's id property, or if that is not possible, using the java default - value for the type - - - - - An enum of the different ways a value might be "included". - - - This is really an expanded true/false notion with Partial being the - expansion. Partial deals with components in the cases where - parts of the referenced component might define inclusion, but the - component overall does not. - - - - - Utility methods for managing versions and timestamps - - - - - Increment the given version number - - The value of the current version. - The of the versioned property. - The current . - Returns the next value for the version. - - - - Create an initial version number - - The of the versioned property. - The current . - A seed value to initialize the versioned property with. - - - - Seed the given instance state snapshot with an initial version number - - An array of objects that contains a snapshot of a persistent object. - The index of the version property in the fields parameter. - The of the versioned property. - Force the version to initialize - The current session, if any. - if the version property needs to be seeded with an initial value. - - - - Set the version number of the given instance state snapshot - - An array of objects that contains a snapshot of a persistent object. - The value the version should be set to in the fields parameter. - The that is responsible for persisting the values of the fields parameter. - - - - Get the version number of the given instance state snapshot - - An array of objects that contains a snapshot of a persistent object. - The that is responsible for persisting the values of the fields parameter. - - The value of the version contained in the fields parameter or null if the - Entity is not versioned. - - - - Do we need to increment the version number, given the dirty properties? - The array of property indexes which were deemed dirty - Were any collections found to be dirty (structurally changed) - An array indicating versionability of each property. - True if a version increment is required; false otherwise. - - - - A strategy for determining if a version value is an version of - a new transient instance or a previously persistent transient instance. - The strategy is determined by the Unsaved-Value attribute in the mapping file. - - - - - - - - Assume the transient instance is newly instantiated if its version is null or - equal to Value - - - - - - Does the given identifier belong to a new instance - - - - - Assume the transient instance is newly instantiated if the version - is null, otherwise assume it is a detached instance. - - - - - Assume the transient instance is newly instantiated if the version - is null, otherwise defer to the identifier unsaved-value. - - - - - Assume the transient instance is newly instantiated if the identifier - is null. - - - - - A convenience base class for listeners whose functionality results in flushing. - - - - - Coordinates the processing necessary to get things ready for executions - as db calls by preparing the session caches and moving the appropriate - entities and collections to their respective execution queues. - - The flush event. - - - - Execute all SQL and second-level cache updates, in a - special order so that foreign-key constraints cannot - be violated: - - Inserts, in the order they were performed - Updates - Deletion of collection elements - Insertion of collection elements - Deletes, in the order they were performed - - - The session being flushed - - - - 1. Recreate the collection key -> collection map - 2. rebuild the collection entries - 3. call Interceptor.postFlush() - - - - - A convenience base class for listeners that respond to requests to perform a - pessimistic lock upgrade on an entity. - - - - - A convenience base class for listeners that respond to requests to reassociate an entity - to a session ( such as through lock() or update() ). - - - - - Associates a given entity (either transient or associated with another session) to the given session. - - The event triggering the re-association - The entity to be associated - The id of the entity. - The entity's persister instance. - An EntityEntry representing the entity within this session. - - - - Performs a pessimistic lock upgrade on a given entity, if needed. - - The entity for which to upgrade the lock. - The entity's EntityEntry instance. - The lock mode being requested for locking. - The session which is the source of the event being processed. - - - - A convenience bas class for listeners responding to save events. - - - - - Prepares the save call using the given requested id. - - The entity to be saved. - The id to which to associate the entity. - The name of the entity being saved. - Generally cascade-specific information. - The session which is the source of this save event. - The id used to save the entity. - - - - Prepares the save call using a newly generated id. - - The entity to be saved - The entity-name for the entity to be saved - Generally cascade-specific information. - The session which is the source of this save event. - - does the event context require - access to the identifier immediately after execution of this method (if - not, post-insert style id generators may be postponed if we are outside - a transaction). - - - The id used to save the entity; may be null depending on the - type of id generator used and the requiresImmediateIdAccess value - - - - - Prepares the save call by checking the session caches for a pre-existing - entity and performing any lifecycle callbacks. - - The entity to be saved. - The id by which to save the entity. - The entity's persister instance. - Is an identity column being used? - Generally cascade-specific information. - The session from which the event originated. - - does the event context require - access to the identifier immediately after execution of this method (if - not, post-insert style id generators may be postponed if we are outside - a transaction). - - - The id used to save the entity; may be null depending on the - type of id generator used and the requiresImmediateIdAccess value - - - - - Performs all the actual work needed to save an entity (well to get the save moved to - the execution queue). - - The entity to be saved - The id to be used for saving the entity (or null, in the case of identity columns) - The entity's persister instance. - Should an identity column be used for id generation? - Generally cascade-specific information. - The session which is the source of the current event. - - Is access to the identifier required immediately - after the completion of the save? persist(), for example, does not require this... - - - The id used to save the entity; may be null depending on the - type of id generator used and the requiresImmediateIdAccess value - - - - - Perform any property value substitution that is necessary - (interceptor callback, version initialization...) - - The entity - The entity identifier - The snapshot entity state - The entity persister - The originating session - - True if the snapshot state changed such that - reinjection of the values into the entity is required. - - - - Handles the calls needed to perform pre-save cascades for the given entity. - The session from which the save event originated. - The entity's persister instance. - The entity to be saved. - Generally cascade-specific data - - - Handles to calls needed to perform post-save cascades. - The session from which the event originated. - The entity's persister instance. - The entity being saved. - Generally cascade-specific data - - - - Determine whether the entity is persistent, detached, or transient - - The entity to check - The name of the entity - The entity's entry in the persistence context - The originating session. - The state. - - - - After the save, will te version number be incremented - if the instance is modified? - - True if the version will be incremented on an entity change after save; false otherwise. - - - - Abstract superclass of algorithms that walk a tree of property values of an entity, and - perform specific functionality for collections, components and associated entities. - - - - Dispatch each property value to ProcessValue(). - - - - - - Visit a property value. Dispatch to the correct handler for the property type. - - - - - - - Visit a component. Dispatch each property to - - - - - - - - Visit a many-to-one or one-to-one associated entity. Default superclass implementation is a no-op. - - - - - - - - Visit a collection. Default superclass implementation is a no-op. - - - - - - - - Walk the tree starting from the given entity. - - - - - - - Defines the default flush event listeners used by hibernate for - flushing session state in response to generated auto-flush events. - - - - Defines the contract for handling of session auto-flush events. - - - - Handle the given auto-flush event. - - The auto-flush event to be handled. - - - - Handle the given auto-flush event. - - The auto-flush event to be handled. - - - - Defines the default delete event listener used by hibernate for deleting entities - from the datastore in response to generated delete events. - - - - Defines the contract for handling of deletion events generated from a session. - - - Handle the given delete event. - The delete event to be handled. - - - Handle the given delete event. - The delete event to be handled. - - - Called when we have recognized an attempt to delete a detached entity. - The event. - - This is perfectly valid in Hibernate usage; JPA, however, forbids this. - Thus, this is a hook for HEM to affect this behavior. - - - - - We encountered a delete request on a transient instance. -

- This is a deviation from historical Hibernate (pre-3.2) behavior to - align with the JPA spec, which states that transient entities can be - passed to remove operation in which case cascades still need to be - performed. -

- The session which is the source of the event - The entity being delete processed - Is cascading of deletes enabled - The entity persister - - A cache of already visited transient entities (to avoid infinite recursion). - -
- - - Perform the entity deletion. Well, as with most operations, does not - really perform it; just schedules an action/execution with the - for execution during flush. - - The originating session - The entity to delete - The entity's entry in the - Is delete cascading enabled? - The entity persister. - A cache of already deleted entities. - - - - Defines the default dirty-check event listener used by hibernate for - checking the session for dirtiness in response to generated dirty-check events. - - - - Defines the contract for handling of session dirty-check events. - - - Handle the given dirty-check event. - The dirty-check event to be handled. - - - - Defines the default evict event listener used by hibernate for evicting entities - in response to generated flush events. In particular, this implementation will - remove any hard references to the entity that are held by the infrastructure - (references held by application or other persistent instances are okay) - - - - Defines the contract for handling of evict events generated from a session. - - - Handle the given evict event. - The evict event to be handled. - - - - An event that occurs for each entity instance at flush time - - - - - Flushes a single entity's state to the database, by scheduling an update action, if necessary - - - - - make sure user didn't mangle the id - - The obj. - The persister. - The id. - The entity mode. - - - - Performs all necessary checking to determine if an entity needs an SQL update - to synchronize its state to the database. Modifies the event by side-effect! - Note: this method is quite slow, avoid calling if possible! - - - - Perform a dirty check, and attach the results to the event - - - - Defines the default flush event listeners used by hibernate for - flushing session state in response to generated flush events. - - - - Defines the contract for handling of session flush events. - - - Handle the given flush event. - The flush event to be handled. - - - - Defines the contract for handling of collection initialization events - generated by a session. - - - - called by a collection that wants to initialize itself - - - Try to initialize a collection from the cache - - - - Defines the default load event listeners used by NHibernate for loading entities - in response to generated load events. - - - - - Defines the contract for handling of load events generated from a session. - - - - - Handle the given load event. - - The load event to be handled. - - The result (i.e., the loaded entity). - - - Perfoms the load of an entity. - The loaded entity. - - - - Based on configured options, will either return a pre-existing proxy, - generate a new proxy, or perform an actual load. - - The result of the proxy/load operation. - - - - Given that there is a pre-existing proxy. - Initialize it if necessary; narrow if necessary. - - - - - Given that there is no pre-existing proxy. - Check if the entity is already loaded. If it is, return the entity, - otherwise create and return a proxy. - - - - - If the class to be loaded has been configured with a cache, then lock - given id in that cache and then perform the load. - - The loaded entity - - - - Coordinates the efforts to load a given entity. First, an attempt is - made to load the entity from the session-level cache. If not found there, - an attempt is made to locate it in second-level cache. Lastly, an - attempt is made to load it directly from the datasource. - - The load event - The persister for the entity being requested for load - The EntityKey representing the entity to be loaded. - The load options. - The loaded entity, or null. - - - - Performs the process of loading an entity from the configured underlying datasource. - - The load event - The persister for the entity being requested for load - The EntityKey representing the entity to be loaded. - The load options. - The object loaded from the datasource, or null if not found. - - - - Attempts to locate the entity in the session-level cache. - - The load event - The EntityKey representing the entity to be loaded. - The load options. - The entity from the session-level cache, or null. - - If allowed to return nulls, then if the entity happens to be found in - the session cache, we check the entity type for proper handling - of entity hierarchies. - If checkDeleted was set to true, then if the entity is found in the - session-level cache, it's current status within the session cache - is checked to see if it has previously been scheduled for deletion. - - - - Attempts to load the entity from the second-level cache. - The load event - The persister for the entity being requested for load - The load options. - The entity from the second-level cache, or null. - - - - Defines the default lock event listeners used by hibernate to lock entities - in response to generated lock events. - - - - - Defines the contract for handling of lock events generated from a session. - - - - Handle the given lock event. - The lock event to be handled. - - - Handle the given lock event. - The lock event to be handled. - - - - Defines the default event listener for handling of merge events generated from a session. - - - - - Defines the contract for handling of merge events generated from a session. - - - - Handle the given merge event. - The merge event to be handled. - - - Handle the given merge event. - The merge event to be handled. - - - - - Perform any cascades needed as part of this copy event. - - The merge event being processed. - The persister of the entity being copied. - The entity being copied. - A cache of already copied instance. - - - - Determine which merged entities in the copyCache are transient. - - - - - Should this method be on the EventCache class? - - - - Retry merging transient entities - - - - - - - Cascade behavior is redefined by this subclass, disable superclass behavior - - - Cascade behavior is redefined by this subclass, disable superclass behavior - - - - Defines the default create event listener used by hibernate for creating - transient entities in response to generated create events. - - - - - Defines the contract for handling of create events generated from a session. - - - - Handle the given create event. - The create event to be handled. - - - Handle the given create event. - The create event to be handled. - - - - Handle the given create event. - The save event to be handled. - - - - When persist is used as the cascade action, persistOnFlush should be used - - - Call interface if necessary - - - - Occurs after an an entity instance is fully loaded. - - - - - - - - - - - Called before injecting property values into a newly - loaded entity instance. - - - - - Called before injecting property values into a newly loaded entity instance. - - - - - - - - - - - Defines the default refresh event listener used by hibernate for refreshing entities - in response to generated refresh events. - - - - - Defines the contract for handling of refresh events generated from a session. - - - - Handle the given refresh event. - The refresh event to be handled. - - - - - - - - - - - Defines the default replicate event listener used by Hibernate to replicate - entities in response to generated replicate events. - - - - - Defines the contract for handling of replicate events generated from a session. - - - - Handle the given replicate event. - The replicate event to be handled. - - - An event handler for save() events - - - - Defines the default listener used by Hibernate for handling save-update events. - - - - - Defines the contract for handling of update events generated from a session. - - - - Handle the given update event. - The update event to be handled. - - - - The given save-update event named a transient entity. - Here, we will perform the save processing. - - The save event to be handled. - The entity's identifier after saving. - - - - Save the transient instance, assigning the right identifier - - The initiating event. - The entity's identifier value after saving. - - - - The given save-update event named a detached entity. - Here, we will perform the update processing. - - The update event to be handled. - - - Determine the id to use for updating. - The entity. - The entity persister - The requested identifier - The entity mode. - The id. - - - - Handles the calls needed to perform cascades as part of an update request - for the given entity. - - The event currently being processed. - The defined persister for the entity being updated. - The entity being updated. - - - An event handler for update() events - - - - If the user specified an id, assign it to the instance and use that, - otherwise use the id already assigned to the instance - - - - - A Visitor that determines if a dirty collection was found. - - - - - Reason for dirty collection - - - - If it is a new application-instantiated collection, return true (does not occur anymore!) - - - - - If it is a component, recurse. - - - - - If it is a wrapped collection, ask the collection entry. - - - - - - - - Gets a indicating if a dirty collection was found. - - if a dirty collection was found. - - - - Associates the specified entity with the specified copy in this EventCache; - - - - indicates if the operation is performed on the entity - - - - Returns copy-entity mappings - - - - - - Returns true if the listener is performing the operation on the specified entity. - - Must be non-null and this EventCache must contain a mapping for this entity - - - - - Set flag to indicate if the listener is performing the operation on the specified entity. - - - - - - - Returns the number of entity-copy mappings in this EventCache - - - - - Evict any collections referenced by the object from the session cache. - This will NOT pick up any collections that were dereferenced, so they - will be deleted (suboptimal but not exactly incorrect). - - - - - Process collections reachable from an entity. - This visitor assumes that wrap was already performed for the entity. - - - - - When a transient entity is passed to lock(), we must inspect all its collections and - 1. associate any uninitialized PersistentCollections with this session - 2. associate any initialized PersistentCollections with this session, using the existing snapshot - 3. throw an exception for each "new" collection - - - - - Abstract superclass of visitors that reattach collections - - - - - Reassociates uninitialized proxies with the session - - - - - Visit a many-to-one or one-to-one associated entity. Default superclass implementation is a no-op. - - - - - - - - Has the owner of the collection changed since the collection was snapshotted and detached? - - - - - Reattach a detached (disassociated) initialized or uninitialized - collection wrapper, using a snapshot carried with the collection wrapper - - - - - Schedules a collection for deletion. - - The persister representing the collection to be removed. - The collection key (differs from owner-id in the case of property-refs). - The session from which the request originated. - - - - This version is slightly different in that here we need to assume that - the owner is not yet associated with the session, and thus we cannot - rely on the owner's EntityEntry snapshot... - - The persister for the collection role being processed. - - - - - When an entity is passed to replicate(), and there is an existing row, we must - inspect all its collections and - 1. associate any uninitialized PersistentCollections with this session - 2. associate any initialized PersistentCollections with this session, using the existing snapshot - 3. execute a collection removal (SQL DELETE) for each null collection property or "new" collection - - - - - When an entity is passed to update(), we must inspect all its collections and - 1. associate any uninitialized PersistentCollections with this session - 2. associate any initialized PersistentCollections with this session, using the existing snapshot - 3. execute a collection removal (SQL DELETE) for each null collection property or "new" collection - - - - - Wrap collections in a Hibernate collection wrapper. - - - - Defines a base class for events involving collections. - - - - Defines a base class for Session generated events. - - - - - Returns the session event source for this event. - This is the underlying session from which this event was generated. - - - - - Constructs an event from the given event session. - - The session event source. - - - - Returns the session event source for this event. - This is the underlying session from which this event was generated. - - - - Constructs an AbstractCollectionEvent object. - The collection persister. - The collection - The Session source - The owner that is affected by this event; can be null if unavailable - - The ID for the owner that is affected by this event; can be null if unavailable - that is affected by this event; can be null if unavailable - - - - Get the entity name for the collection owner entity that is affected by this event. - - The entity name; if the owner is not in the PersistenceContext, the - returned value may be a superclass name, instead of the actual class name - - - - The collection owner entity that is affected by this event. - - Returns null if the entity is not in the persistence context - (e.g., because the collection from a detached entity was moved to a new owner) - - - - Get the ID for the collection owner entity that is affected by this event. - - Returns null if the ID cannot be obtained - from the collection's loaded key (e.g., a property-ref is used for the - collection and does not include the entity's ID) - - - - - Represents an operation we performed against the database. - - - - - Represents an operation we performed against the database. - - - - The entity involved in the database operation. - - - The id to be used in the database operation. - - - - The persister for the . - - - - Constructs an event containing the pertinent information. - The session from which the event originated. - The entity to be invloved in the database operation. - The entity id to be invloved in the database operation. - The entity's persister. - - - The entity involved in the database operation. - - - The id to be used in the database operation. - - - - The persister for the . - - - - - Represents an operation we are about to perform against the database. - - - - The entity involved in the database operation. - - - The id to be used in the database operation. - - - - The persister for the . - - - - Constructs an event containing the pertinent information. - The session from which the event originated. - The entity to be invloved in the database operation. - The entity id to be invloved in the database operation. - The entity's persister. - - - The entity involved in the database operation. - - - The id to be used in the database operation. - - - - The persister for the . - - - - Defines an event class for the auto-flushing of a session. - - - Defines an event class for the flushing of a session. - - - Defines an event class for the deletion of an entity. - - - Constructs a new DeleteEvent instance. - The entity to be deleted. - The session from which the delete event was generated. - - - - - Returns the encapsulated entity to be deleed. - - - - Defines an event class for the dirty-checking of a session. - - - - A convience holder for all defined session event listeners. - - - - - Call on any listeners that implement - . - - - - - Defines an event class for the evicting of an entity. - - - - Contract for listeners which require notification of SessionFactory closing, - presumably to destroy internal state. - - - - - Notification of shutdown. - - - - - The main runtime interface between a .NET application and NHibernate. This is the central - API class abstracting the notion of a persistence service. - - - - The lifecycle of a ISession is bounded by the beginning and end of a logical - transaction. (Long transactions might span several database transactions.) - - - The main function of the ISession is to offer create, find, update, and delete operations - for instances of mapped entity classes. Instances may exist in one of two states: - - transient: not associated with any ISession - persistent: associated with a ISession - - - - Transient instances may be made persistent by calling Save(), Insert(), - or Update(). Persistent instances may be made transient by calling Delete(). - Any instance returned by a List(), Enumerable(), Load(), or Create() - method is persistent. - - - Save() results in an SQL INSERT, Delete() - in an SQL DELETE and Update() in an SQL UPDATE. Changes to - persistent instances are detected at flush time and also result in an SQL - UPDATE. - - - It is not intended that implementors be threadsafe. Instead each thread/transaction should obtain - its own instance from an ISessionFactory. - - - A ISession instance is serializable if its persistent classes are serializable - - - A typical transaction should use the following idiom: - - using (ISession session = factory.OpenSession()) - using (ITransaction tx = session.BeginTransaction()) - { - try - { - // do some work - ... - tx.Commit(); - } - catch (Exception e) - { - if (tx != null) tx.Rollback(); - throw; - } - } - - - - If the ISession throws an exception, the transaction must be rolled back and the session - discarded. The internal state of the ISession might not be consistent with the database - after the exception occurs. - - - - - - - Force the ISession to flush. - - - Must be called at the end of a unit of work, before commiting the transaction and closing - the session (Transaction.Commit() calls this method). Flushing is the process - of synchronising the underlying persistent store with persistable state held in memory. - - - - - Disconnect the ISession from the current ADO.NET connection. - - - If the connection was obtained by Hibernate, close it or return it to the connection - pool. Otherwise return it to the application. This is used by applications which require - long transactions. - - The connection provided by the application or - - - - Obtain a new ADO.NET connection. - - - This is used by applications which require long transactions - - - - - Reconnect to the given ADO.NET connection. - - This is used by applications which require long transactions - An ADO.NET connection - - - - End the ISession by disconnecting from the ADO.NET connection and cleaning up. - - - It is not strictly necessary to Close() the ISession but you must - at least Disconnect() it. - - The connection provided by the application or - - - - Cancel execution of the current query. - - - May be called from one thread to stop execution of a query in another thread. - Use with care! - - - - - Does this ISession contain any changes which must be - synchronized with the database? Would any SQL be executed if - we flushed this session? - - - - - Is the specified entity (or proxy) read-only? - - - Facade for . - - An entity (or ) - - true if the entity (or proxy) is read-only, otherwise false. - - - - - - - Change the read-only status of an entity (or proxy). - - - - Read-only entities can be modified, but changes are not persisted. They are not dirty-checked - and snapshots of persistent state are not maintained. - - - Immutable entities cannot be made read-only. - - - To set the default read-only setting for entities and proxies that are loaded - into the session, see . - - - This method a facade for . - - - An entity (or ). - If true, the entity or proxy is made read-only; if false, it is made modifiable. - - - - - - Return the identifier of an entity instance cached by the ISession - - - Throws an exception if the instance is transient or associated with a different - ISession - - a persistent instance - the identifier - - - - Is this instance associated with this Session? - - an instance of a persistent class - true if the given instance is associated with this Session - - - - Remove this instance from the session cache. - - - Changes to the instance will not be synchronized with the database. - This operation cascades to associated instances if the association is mapped - with cascade="all" or cascade="all-delete-orphan". - - a persistent instance - - - - Return the persistent instance of the given entity class with the given identifier, - obtaining the specified lock mode. - - A persistent class - A valid identifier of an existing persistent instance of the class - The lock level - the persistent instance - - - - Return the persistent instance of the given entity class with the given identifier, - obtaining the specified lock mode, assuming the instance exists. - - The entity-name of a persistent class - a valid identifier of an existing persistent instance of the class - the lock level - the persistent instance or proxy - - - - Return the persistent instance of the given entity class with the given identifier, - assuming that the instance exists. - - - You should not use this method to determine if an instance exists (use a query or - instead). Use this only to retrieve an instance - that you assume exists, where non-existence would be an actual error. - - A persistent class - A valid identifier of an existing persistent instance of the class - The persistent instance or proxy - - - - Return the persistent instance of the given entity class with the given identifier, - obtaining the specified lock mode. - - A persistent class - A valid identifier of an existing persistent instance of the class - The lock level - the persistent instance - - - - Return the persistent instance of the given entity class with the given identifier, - assuming that the instance exists. - - - You should not use this method to determine if an instance exists (use a query or - instead). Use this only to retrieve an instance that you - assume exists, where non-existence would be an actual error. - - A persistent class - A valid identifier of an existing persistent instance of the class - The persistent instance or proxy - - - - Return the persistent instance of the given with the given identifier, - assuming that the instance exists. - - The entity-name of a persistent class - a valid identifier of an existing persistent instance of the class - The persistent instance or proxy - - You should not use this method to determine if an instance exists (use - instead). Use this only to retrieve an instance that you assume exists, where non-existence - would be an actual error. - - - - - Read the persistent state associated with the given identifier into the given transient - instance. - - An "empty" instance of the persistent class - A valid identifier of an existing persistent instance of the class - - - - Persist all reachable transient objects, reusing the current identifier - values. Note that this will not trigger the Interceptor of the Session. - - a detached instance of a persistent class - - - - - Persist the state of the given detached instance, reusing the current - identifier value. This operation cascades to associated instances if - the association is mapped with cascade="replicate". - - - a detached instance of a persistent class - - - - - Persist the given transient instance, first assigning a generated identifier. - - - Save will use the current value of the identifier property if the Assigned - generator is used. - - A transient instance of a persistent class - The generated identifier - - - - Persist the given transient instance, using the given identifier. - - A transient instance of a persistent class - An unused valid identifier - - - - Persist the given transient instance, first assigning a generated identifier. (Or - using the current value of the identifier property if the assigned - generator is used.) - - The Entity name. - a transient instance of a persistent class - the generated identifier - - This operation cascades to associated instances if the - association is mapped with cascade="save-update". - - - - - Persist the given transient instance, using the given identifier. - - The Entity name. - a transient instance of a persistent class - An unused valid identifier - - This operation cascades to associated instances if the - association is mapped with cascade="save-update". - - - - - Either Save() or Update() the given instance, depending upon the value of - its identifier property. - - - By default the instance is always saved. This behaviour may be adjusted by specifying - an unsaved-value attribute of the identifier property mapping - - A transient instance containing new or updated state - - - - Either or - the given instance, depending upon resolution of the unsaved-value checks - (see the manual for discussion of unsaved-value checking). - - The name of the entity - a transient or detached instance containing new or updated state - - - - This operation cascades to associated instances if the association is mapped - with cascade="save-update". - - - - - Either Save() or Update() the given instance, depending upon the value of - its identifier property. - - - By default the instance is always saved. This behaviour may be adjusted by specifying - an unsaved-value attribute of the identifier property mapping - - The name of the entity - A transient instance containing new or updated state - Identifier of persistent instance - - - - Update the persistent instance with the identifier of the given transient instance. - - - If there is a persistent instance with the same identifier, an exception is thrown. If - the given transient instance has a identifier, an exception will be thrown. - - A transient instance containing updated state - - - - Update the persistent state associated with the given identifier. - - - An exception is thrown if there is a persistent instance with the same identifier - in the current session. - - A transient instance containing updated state - Identifier of persistent instance - - - - Update the persistent instance with the identifier of the given detached - instance. - - The Entity name. - a detached instance containing updated state - - If there is a persistent instance with the same identifier, - an exception is thrown. This operation cascades to associated instances - if the association is mapped with cascade="save-update". - - - - - Update the persistent instance associated with the given identifier. - - The Entity name. - a detached instance containing updated state - Identifier of persistent instance - - If there is a persistent instance with the same identifier, - an exception is thrown. This operation cascades to associated instances - if the association is mapped with cascade="save-update". - - - - - Copy the state of the given object onto the persistent object with the same - identifier. If there is no persistent instance currently associated with - the session, it will be loaded. Return the persistent instance. If the - given instance is unsaved, save a copy of and return it as a newly persistent - instance. The given instance does not become associated with the session. - This operation cascades to associated instances if the association is mapped - with cascade="merge".
- The semantics of this method are defined by JSR-220. -
- a detached instance with state to be copied - an updated persistent instance -
- - - Copy the state of the given object onto the persistent object with the same - identifier. If there is no persistent instance currently associated with - the session, it will be loaded. Return the persistent instance. If the - given instance is unsaved, save a copy of and return it as a newly persistent - instance. The given instance does not become associated with the session. - This operation cascades to associated instances if the association is mapped - with cascade="merge".
- The semantics of this method are defined by JSR-220. - Name of the entity. - a detached instance with state to be copied - an updated persistent instance -
- -
- - - Copy the state of the given object onto the persistent object with the same - identifier. If there is no persistent instance currently associated with - the session, it will be loaded. Return the persistent instance. If the - given instance is unsaved, save a copy of and return it as a newly persistent - instance. The given instance does not become associated with the session. - This operation cascades to associated instances if the association is mapped - with cascade="merge".
- The semantics of this method are defined by JSR-220. -
- a detached instance with state to be copied - an updated persistent instance -
- - - Copy the state of the given object onto the persistent object with the same - identifier. If there is no persistent instance currently associated with - the session, it will be loaded. Return the persistent instance. If the - given instance is unsaved, save a copy of and return it as a newly persistent - instance. The given instance does not become associated with the session. - This operation cascades to associated instances if the association is mapped - with cascade="merge".
- The semantics of this method are defined by JSR-220. - Name of the entity. - a detached instance with state to be copied - an updated persistent instance -
- -
- - - Make a transient instance persistent. This operation cascades to associated - instances if the association is mapped with cascade="persist".
- The semantics of this method are defined by JSR-220. -
- a transient instance to be made persistent -
- - - Make a transient instance persistent. This operation cascades to associated - instances if the association is mapped with cascade="persist".
- The semantics of this method are defined by JSR-220. -
- Name of the entity. - a transient instance to be made persistent -
- - - Remove a persistent instance from the datastore. - - - The argument may be an instance associated with the receiving ISession or a - transient instance with an identifier associated with existing persistent state. - - The instance to be removed - - - - Remove a persistent instance from the datastore. The object argument may be - an instance associated with the receiving or a transient - instance with an identifier associated with existing persistent state. - This operation cascades to associated instances if the association is mapped - with cascade="delete". - - The entity name for the instance to be removed. - the instance to be removed - - - - Delete all objects returned by the query. - - The query string - Returns the number of objects deleted. - - - - Delete all objects returned by the query. - - The query string - A value to be written to a "?" placeholer in the query - The hibernate type of value. - The number of instances deleted - - - - Delete all objects returned by the query. - - The query string - A list of values to be written to "?" placeholders in the query - A list of Hibernate types of the values - The number of instances deleted - - - - Obtain the specified lock level upon the given object. - - A persistent instance - The lock level - - - - Obtain the specified lock level upon the given object. - - The Entity name. - a persistent or transient instance - the lock level - - This may be used to perform a version check (), to upgrade to a pessimistic - lock (), or to simply reassociate a transient instance - with a session (). This operation cascades to associated - instances if the association is mapped with cascade="lock". - - - - - Re-read the state of the given instance from the underlying database. - - - - It is inadvisable to use this to implement long-running sessions that span many - business tasks. This method is, however, useful in certain special circumstances. - - - For example, - - Where a database trigger alters the object state upon insert or update - After executing direct SQL (eg. a mass update) in the same session - After inserting a Blob or Clob - - - - A persistent instance - - - - Re-read the state of the given instance from the underlying database, with - the given LockMode. - - - It is inadvisable to use this to implement long-running sessions that span many - business tasks. This method is, however, useful in certain special circumstances. - - a persistent or transient instance - the lock mode to use - - - - Determine the current lock mode of the given object - - A persistent instance - The current lock mode - - - - Begin a unit of work and return the associated ITransaction object. - - - If a new underlying transaction is required, begin the transaction. Otherwise - continue the new work in the context of the existing underlying transaction. - The class of the returned object is determined by - the property transaction_factory - - A transaction instance - - - - Begin a transaction with the specified isolationLevel - - Isolation level for the new transaction - A transaction instance having the specified isolation level - - - - Creates a new Criteria for the entity class. - - The entity class - An ICriteria object - - - - Creates a new Criteria for the entity class with a specific alias - - The entity class - The alias of the entity - An ICriteria object - - - - Creates a new Criteria for the entity class. - - The class to Query - An ICriteria object - - - - Creates a new Criteria for the entity class with a specific alias - - The class to Query - The alias of the entity - An ICriteria object - - - - Create a new Criteria instance, for the given entity name. - - The name of the entity to Query - An ICriteria object - - - - Create a new Criteria instance, for the given entity name, - with the given alias. - - The name of the entity to Query - The alias of the entity - An ICriteria object - - - - Creates a new IQueryOver<T> for the entity class. - - The entity class - An IQueryOver<T> object - - - - Creates a new IQueryOver<T> for the entity class. - - The entity class - The alias of the entity - An IQueryOver<T> object - - - - Creates a new IQueryOver{T}; for the entity class. - - The entity class - The name of the entity to Query - An IQueryOver{T} object - - - - Creates a new IQueryOver{T} for the entity class. - - The entity class - The name of the entity to Query - The alias of the entity - An IQueryOver{T} object - - - - Create a new instance of Query for the given query string - - A hibernate query string - The query - - - - Create a new instance of Query for the given collection and filter string - - A persistent collection - A hibernate query - A query - - - - Obtain an instance of for a named query string defined in the - mapping file. - - The name of a query defined externally. - An from a named query string. - - The query can be either in HQL or SQL format. - - - - - Create a new instance of for the given SQL query string. - - a query expressed in SQL - An from the SQL string - - - - Completely clear the session. Evict all loaded instances and cancel all pending - saves, updates and deletions. Do not close open enumerables or instances of - ScrollableResults. - - - - - Return the persistent instance of the given entity class with the given identifier, or null - if there is no such persistent instance. (If the instance, or a proxy for the instance, is - already associated with the session, return that instance or proxy.) - - a persistent class - an identifier - a persistent instance or null - - - - Return the persistent instance of the given entity class with the given identifier, or null - if there is no such persistent instance. Obtain the specified lock mode if the instance - exists. - - a persistent class - an identifier - the lock mode - a persistent instance or null - - - - Return the persistent instance of the given named entity with the given identifier, - or null if there is no such persistent instance. (If the instance, or a proxy for the - instance, is already associated with the session, return that instance or proxy.) - - the entity name - an identifier - a persistent instance or null - - - - Strongly-typed version of - - - - - Strongly-typed version of - - - - - Return the entity name for a persistent entity - - a persistent entity - the entity name - - - - Enable the named filter for this current session. - - The name of the filter to be enabled. - The Filter instance representing the enabled filter. - - - - Retrieve a currently enabled filter by name. - - The name of the filter to be retrieved. - The Filter instance representing the enabled filter. - - - - Disable the named filter for the current session. - - The name of the filter to be disabled. - - - - Create a multi query, a query that can send several - queries to the server, and return all their results in a single - call. - - - An that can return - a list of all the results of all the queries. - Note that each query result is itself usually a list. - - - - - Sets the batch size of the session - - - - - - - Gets the session implementation. - - - This method is provided in order to get the NHibernate implementation of the session from wrapper implementions. - Implementors of the interface should return the NHibernate implementation of this method. - - - An NHibernate implementation of the interface - - - - - An that can return a list of all the results - of all the criterias. - - - - - - Starts a new Session with the given entity mode in effect. This secondary - Session inherits the connection, transaction, and other context - information from the primary Session. It doesn't need to be flushed - or closed by the developer. - - The entity mode to use for the new session. - The new session - - - The entity mode in effect for this session. - - - - Determines at which points Hibernate automatically flushes the session. - - - For a readonly session, it is reasonable to set the flush mode to FlushMode.Never - at the start of the session (in order to achieve some extra performance). - - - - The current cache mode. - - Cache mode determines the manner in which this session can interact with - the second level cache. - - - - - Get the that created this instance. - - - - - Gets the ADO.NET connection. - - - Applications are responsible for calling commit/rollback upon the connection before - closing the ISession. - - - - - Is the ISession still open? - - - - - Is the ISession currently connected? - - - - - The read-only status for entities (and proxies) loaded into this Session. - - - - When a proxy is initialized, the loaded entity will have the same read-only setting - as the uninitialized proxy, regardless of the session's current setting. - - - To change the read-only setting for a particular entity or proxy that is already in - this session, see . - - - To override this session's read-only setting for entities and proxies loaded by a query, - see . - - - This method is a facade for . - - - - - - - - Get the current Unit of Work and return the associated ITransaction object. - - - - Get the statistics for this session. - - - - Instantiate an entity instance, using either an interceptor, - or the given persister - - - - Force an immediate flush - - - Cascade merge an entity instance - - - Cascade persist an entity instance - - - Cascade persist an entity instance during the flush process - - - Cascade refresh an entity instance - - - Cascade delete an entity instance - - - Get the ActionQueue for this session - - - - An event listener that requires access to mappings to - initialize state at initialization time. - - - - - An event that occurs when a collection wants to be initialized - - - - Called after recreating a collection - - - Called after removing a collection - - - Called after updating a collection - - - Called after deleting an item from the datastore - - - - - - - - - Called after inserting an item in the datastore - - - - - - - - - - Called after updating the datastore - - - - - - - - - - Called before recreating a collection - - - Called before removing a collection - - - Called before updating a collection - - - - Called before deleting an item from the datastore - - - - Return true if the operation should be vetoed - - - - - Called before inserting an item in the datastore - - - - Return true if the operation should be vetoed - - - - - Called before updating the datastore - - - - Return true if the operation should be vetoed - - - - - Values for listener type property. - - - - Not allowed in Xml. It represents the default value when an explicit type is assigned. - - - Xml value: auto-flush - - - Xml value: merge - - - Xml value: create - - - Xml value: create-onflush - - - Xml value: delete - - - Xml value: dirty-check - - - Xml value: evict - - - Xml value: flush - - - Xml value: flush-entity - - - Xml value: load - - - Xml value: load-collection - - - Xml value: lock - - - Xml value: refresh - - - Xml value: replicate - - - Xml value: save-update - - - Xml value: save - - - Xml value: pre-update - - - Xml value: update - - - Xml value: pre-load - - - Xml value: pre-delete - - - Xml value: pre-insert - - - Xml value: pre-collection-recreate - - - Xml value: pre-collection-remove - - - Xml value: pre-collection-update - - - Xml value: post-load - - - Xml value: post-insert - - - Xml value: post-update - - - Xml value: post-delete - - - Xml value: post-commit-update - - - Xml value: post-commit-insert - - - Xml value: post-commit-delete - - - Xml value: post-collection-recreate - - - Xml value: post-collection-remove - - - Xml value: post-collection-update - - - Defines an event class for the loading of an entity. - - - - Defines an event class for the locking of an entity. - - - - - An event class for merge() and saveOrUpdateCopy() - - - - An event class for persist() - - - An event that occurs after a collection is recreated - - - An event that occurs after a collection is removed - - - An event that occurs after a collection is updated - - - - Occurs after deleting an item from the datastore - - - - - Occurs after inserting an item in the datastore - - - - - Occurs after an an entity instance is fully loaded. - - - - - Occurs after the datastore is updated - - - - An event that occurs before a collection is recreated - - - An event that occurs before a collection is removed - - - An event that occurs before a collection is updated - - - - Represents a pre-delete event, which occurs just prior to - performing the deletion of an entity from the database. - - - - - Constructs an event containing the pertinent information. - - The entity to be deleted. - The id to use in the deletion. - The entity's state at deletion time. - The entity's persister. - The session from which the event originated. - - - - This is the entity state at the - time of deletion (useful for optomistic locking and such). - - - - - Represents a pre-insert event, which occurs just prior to - performing the insert of an entity into the database. - - - - - These are the values to be inserted. - - - - - Called before injecting property values into a newly loaded entity instance. - - - - - Represents a pre-update event, which occurs just prior to - performing the update of an entity in the database. - - - - - Retrieves the state to be used in the update. - - - - - The old state of the entity at the time it was last loaded from the - database; can be null in the case of detached entities. - - - - - Defines an event class for the refreshing of an object. - - - - - Defines an event class for the replication of an entity. - - - - - An event class for saveOrUpdate() - - - - - Implementation of ADOException indicating problems with communicating with the - database (can also include incorrect ADO setup). - - - - - Wraps exceptions that occur during ADO.NET calls. - - - Exceptions thrown by various ADO.NET providers are not derived from - a common base class (SQLException in Java), so - is used instead in NHibernate. - - - - - Initializes a new instance of the class. - - The message that describes the error. - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Collect data of an to be converted. - - - - - The to be converted. - - - - - An optional error message. - - - - - The SQL that generate the exception - - - - - Optional EntityName where available in the original exception context. - - - - - Optional EntityId where available in the original exception context. - - - - - Converts the given SQLException into Exception hierarchy, as well as performing - appropriate logging. - - The converter to use. - The exception to convert. - An optional error message. - The SQL executed. - The converted . - - - - Converts the given SQLException into Exception hierarchy, as well as performing - appropriate logging. - - The converter to use. - The exception to convert. - An optional error message. - The converted . - - - For the given , locates the . - The exception from which to extract the - The , or null. - - - - Implementation of ADOException indicating that the requested DML operation - resulted in a violation of a defined integrity constraint. - - - - - Returns the name of the violated constraint, if known. - - The name of the violated constraint, or null if not known. - - - - Implementation of ADOException indicating that evaluation of the - valid SQL statement against the given data resulted in some - illegal operation, mismatched types or incorrect cardinality. - - - - - The Configurable interface defines the contract for impls that - want to be configured prior to usage given the currently defined Hibernate properties. - - - - Configure the component, using the given settings and properties. - All defined startup properties. - - - - Defines a contract for implementations that know how to convert a - into NHibernate's hierarchy. - - - Inspired by Spring's SQLExceptionTranslator. - - Implementations must have a constructor which takes a - parameter. - - Implementations may implement if they need to perform - configuration steps prior to first use. - - - - - - Convert the given into custom Exception. - - Available information during exception throw. - The resulting Exception to throw. - - - - Implementation of ADOException indicating a problem acquiring lock - on the database. - - - - A factory for building SQLExceptionConverter instances. - - - Build a SQLExceptionConverter instance. - The defined dialect. - The configuration properties. - An appropriate instance. - - First, looks for a property to see - if the configuration specified the class of a specific converter to use. If this - property is set, attempt to construct an instance of that class. If not set, or - if construction fails, the converter specific to the dialect will be used. - - - - - Builds a minimal converter. The instance returned here just always converts to . - - The minimal converter. - - - - Implementation of ADOException indicating that the SQL sent to the database - server was invalid (syntax error, invalid object references, etc). - - - - - A SQLExceptionConverter implementation which performs no conversion of - the underlying . - Interpretation of a SQL error based on - is not possible as using the ErrorCode (which is, however, vendor- - specific). Use of a ErrorCode-based converter should be preferred approach - for converting/interpreting SQLExceptions. - - - - Handle an exception not converted to a specific type based on the SQLState. - The exception to be handled. - An optional message - Optionally, the sql being performed when the exception occurred. - The converted exception; should never be null. - - - - Encapsulates the strategy required to execute various types of update, delete, - and insert statements issued through HQL. - - - - - Execute the sql managed by this executor using the given parameters. - - Essentially bind information for this processing. - The session originating the request. - The number of entities updated/deleted. - - - - True if this is a filter query (allow no FROM clause). * - - - - Returns to the previous 'FROM' context. - - - - - - Implementations will report or handle errors invoked by an ANTLR base parser. - Author: josh - Ported by: Steve Strong - - - - all append invocations on the buf should go through this Output instance variable. - The value of this variable may be temporarily substitued by sql function processing code - to catch generated arguments. - This is because sql function templates need arguments as separate string chunks - that will be assembled into the target dialect-specific function call. - - - - Handles parser errors. - - - - - Add a space if the previous token was not a space or a parenthesis. - - - - - The default SQL writer. - - - - - Writes SQL fragments. - - - - todo remove this hack - The parameter is either ", " or " , ". This is needed to pass sql generating tests as the old - sql generator uses " , " in the WHERE and ", " in SELECT. - - @param comma either " , " or ", " - - - - The default SQL writer. - - - - - Base class for nodes dealing 'is null' and 'is not null' operators. - todo : a good deal of this is copied from BinaryLogicOperatorNode; look at consolidating these code fragments - - Author: Steve Ebersole - Ported by: Steve Strong - - - - - Represents a unary operator node. - - Author: Steve Ebersole - Ported by: Steve Strong - - - - - A semantic analysis node, that points back to the main analyzer. - Authoer: josh - Ported by: Steve Strong - - - - - A base AST node for the intermediate tree. - - - - The original text for the node, mostly for debugging. - - - The data type of this node. Null for 'no type'. - - - - Retrieve the text to be used for rendering this particular node. - - The session factory - The text to use for rendering - - - - An interface for initializeable AST nodes. - - - - - Initializes the node with the parameter. - - the initialization parameter. - - - A pointer back to the phase 2 processor. - - - - Contract for nodes representing unary operators. - - Author: Steve Ebersole - Ported by: Steve Strong - - - - - Contract for nodes representing operators (logic or arithmetic). - Author: Steve Ebersole - Ported by: Steve Strong - - - - - Called by the tree walker during hql-sql semantic analysis - after the operator sub-tree is completely built. - - - - - Retrieves the data type for the overall operator expression. - - The expression's data type. - - - - Retrieves the node representing the operator's single operand. - - - - - When (if) we need to expand a row value constructor, what is the type of connector to use between the - expansion fragments. - - The expansion connector type. - - - - When (if) we need to expand a row value constructor, what is the text of connector to use between the - expansion fragments. - - The expansion connector text. - - - - Convenience implementation of Statement to centralize common functionality. - Author: Steve Ebersole - Ported by: Steve Strong - - - - - Implementors will return additional display text, which will be used - by the ASTPrinter to display information (besides the node type and node - text). - - - - - Returns additional display text for the AST node. - - The additional display text. - - - - Common interface modeling the different HQL statements (i.e., INSERT, UPDATE, DELETE, SELECT). - Author: Steve Ebersole - Ported by: Steve Strong - - - - - The "phase 2" walker which generated this statement tree. - - - - - The main token type representing the type of this statement. - - - - - Does this statement require the StatementExecutor? - Essentially, at the JDBC level, does this require an executeUpdate()? - - - - - Returns additional display text for the AST node. - - The additional display text. - - - - Type definition for Statements which are restrictable via a where-clause (and - thus also having a from-clause). - Author: Steve Ebersole - Ported by: Steve Strong - - - - - Retreives the from-clause in effect for this statement; could be null if the from-clause - has not yet been parsed/generated. - - - - - Does this statement tree currently contain a where clause? - Returns True if a where-clause is found in the statement tree and - that where clause actually defines restrictions; false otherwise. - - - - - Retreives the where-clause defining the restriction(s) in effect for - this statement. - Note that this will generate a where-clause if one was not found, so caution - needs to taken prior to calling this that restrictions will actually exist - in the resulting statement tree (otherwise "unexpected end of subtree" errors - might occur during rendering). - - - - - Represents an element of a projection list, i.e. a select expression. - Author: josh - Ported by: Steve Strong - - - - - Appends AST nodes that represent the columns after the current AST node. - (e.g. 'as col0_O_') - - The index of the select expression in the projection list. - - - - Returns the data type of the select expression. - - - - - Returns the FROM element that this expression refers to. - - - - - Returns true if the element is a constructor (e.g. new Foo). - - - - - Returns true if this select expression represents an entity that can be returned. - - - - - Sets the text of the node. - - - - - Represents an aggregate function i.e. min, max, sum, avg. - - Author: Joshua Davis - Ported by: Steve Strong - - - - - Encapsulates the information relating to an individual assignment within the - set clause of an HQL update statement. This information is used during execution - of the update statements when the updates occur against "multi-table" stuff. - - - - - Contract for nodes representing logcial BETWEEN (ternary) operators. - - - - - Nodes which represent binary arithmetic operators. - - - - - Contract for nodes representing binary operators. - Author: Steve Ebersole - Ported by: Steve Strong - - - - - The left-hand operand of the operator. - - - - - The right-hand operand of the operator. - - - - Retrieves the left-hand operand of the operator. - - @return The left-hand operand - - - Retrieves the right-hand operand of the operator. - - @return The right-hand operand - - - - Contract for nodes representing binary operators. - Author: Steve Ebersole - Ported by: Steve Strong - - - - - Currently this is needed in order to deal with {@link FromElement FromElements} which - contain "hidden" JDBC parameters from applying filters. - Would love for this to go away, but that would require that Hibernate's - internal {@link org.hibernate.engine.JoinSequence join handling} be able to either:
    -
  • render the same AST structures
  • -
  • render structures capable of being converted to these AST structures
  • -
- In the interim, this allows us to at least treat these "hidden" parameters properly which is - the most pressing need. - Author: Steve Ebersole - Ported by: Steve Strong -
-
- - - Adds a parameter specification for a parameter encountered within this node. We use the term 'embedded' here - because of the fact that the parameter was simply encountered as part of the node's text; it does not exist - as part of a subtree as it might in a true AST. - - The generated specification. - - - - Retrieve all embedded parameter specifications. - - All embedded parameter specifications; may return null. - - - - Set the renderable text of this node. - - - - - Determine whether this node contans embedded parameters. The implication is that - {@link #getEmbeddedParameters()} is allowed to return null if this method returns false. - - - - - Performs the operator node initialization by seeking out any parameter - nodes and setting their expected type, if possible. - - - - Mutate the subtree relating to a row-value-constructor to instead use - a series of ANDed predicates. This allows multi-column type comparisons - and explicit row-value-constructor syntax even on databases which do - not support row-value-constructor. -

- For example, here we'd mutate "... where (col1, col2) = ('val1', 'val2) ..." to - "... where col1 = 'val1' and col2 = 'val2' ..." - - @param valueElements The number of elements in the row value constructor list. - - -

- Represents a boolean literal within a query. - -
- - - Represents a literal. - - Author: josh - Ported by: Steve Strong - - - - - Interface for nodes which wish to be made aware of any determined "expected - type" based on the context within they appear in the query. - Author: Steve Ebersole - Ported by: Steve Strong - - - - Expected-types really only pertinent here for boolean literals... - - @param expectedType - - - - Represents a case ... when .. then ... else ... end expression in a select. - - - - - Represents a case ... when .. then ... else ... end expression in a select. - - Author: Gavin King - Ported by: Steve Strong - - - - - Represents 'elements()' or 'indices()'. - Author: josh - Ported by: Steve strong - - - - - Represents a method call - Author: josh - Ported by: Steve Strong - - - - - Constructor form used to initialize . - - The FROM clause to which this element belongs. - The origin (LHS) of this element. - The alias applied to this element. - - - - Returns the identifier select SQL fragment. - - The total number of returned types. - The sequence of the current returned type. - the identifier select SQL fragment. - - - - Returns the property select SQL fragment. - - The total number of returned types. - The sequence of the current returned type. - the property select SQL fragment. - - - - Render the identifier select, but in a 'scalar' context (i.e. generate the column alias). - - the sequence of the returned type - the identifier select with the column alias. - - - - Returns true if this FromElement was implied by a path, or false if this FROM element is explicitly declared in - the FROM clause. - - - - - Delegate that handles the type and join sequence information for a FromElement. - Author: josh - Ported by: Steve Strong - - - - - Returns the identifier select SQL fragment. - - The total number of returned types. - The sequence of the current returned type. - the identifier select SQL fragment. - - - - Render the identifier select, but in a 'scalar' context (i.e. generate the column alias). - - the sequence of the returned type - the identifier select with the column alias. - - - - Returns the property select SQL fragment. - - The total number of returned types. - The sequence of the current returned type. - - the property select SQL fragment. - - - - Returns the type of a property, given it's name (the last part) and the full path. - - The last part of the full path to the property. - The full property path. - The type - - - - This accounts for a quirk in Queryable, where it sometimes generates ', ' in front of the - SQL fragment. :-P - - A SQL fragment. - The fragment, without the leading comma and spaces. - - - - Returns the Hibernate queryable implementation for the HQL class. - - - - - Abstraction of all mappings that define properties: entities, collection elements. - - - - - Given a component path expression, get the type of the property - - - - - - - Given a component path expression, get the type of the property. - - - - true if a type was found, false if not - - - - Given a query alias and a property path, return the qualified column name - - - - - - - Given a property path, return the corresponding column name(s). - - - - Get the type of the thing containing the properties - - - - - Common behavior - a node that contains a list of select expressions. - Author: josh - Ported by: Steve Strong - - - - - Returns an array of SelectExpressions gathered from the children of the given parent AST node. - - - - - Returns an array of SelectExpressions gathered from the children of the given parent AST node. - - - - - Returns the first select expression node that should be considered when building the array of select - expressions. - - - - - Represents a COUNT expression in a select. - Author: josh - Ported by: Steve Strong - - - - - Defines a top-level AST node representing an HQL delete statement. - - - - - Represents a reference to a property or alias expression. This should duplicate the relevant behaviors in - PathExpressionParser. - Author: Joshua Davis - Ported by: Steve Strong - - - - - The contract for expression sub-trees that can resolve themselves. - Author: josh - Ported by: Steve Strong - - - - - Does the work of resolving an identifier or a dot - - - - - Does the work of resolving an identifier or a dot, but without a parent node - - - - - Does the work of resolving an identifier or a dot, but without a parent node or alias - - - - - Does the work of resolving inside of the scope of a function call - - - - - Does the work of resolving an an index []. - - - - - An AST node with a path property. This path property will be the fully qualified name. - Author: josh - Ported by: Steve Strong - - - - - Returns the full path name represented by the node. - - the full path name represented by the node. - - - - Sub-classes can override this method if they produce implied joins (e.g. DotNode). - - an implied join created by this from reference. - - - - The full path, to the root alias of this dot node. - - - - - The type of dereference that hapened (DEREF_xxx). - - - - - The identifier that is the name of the property. - - - - - The unresolved property path relative to this dot node. - - - - - The column names that this resolves to. - - - - - Fetch join or not. - - - - - The type of join to create. Default is an inner join. - - - - - Is the given property name a reference to the primary key of the associated - entity construed by the given entity type? - For example, consider a fragment like order.customer.id - (where order is a from-element alias). Here, we'd have: - propertyName = "id" AND - owningType = ManyToOneType(Customer) - and are being asked to determine whether "customer.id" is a reference - to customer's PK... - - The name of the property to check. - The type represeting the entity "owning" the property - True if propertyName references the entity's (owningType->associatedEntity) primary key; false otherwise. - - - - Sets the join type for this '.' node structure. - - - - - Returns the full path of the node. - - - - - Represents the 'FROM' part of a query or subquery, containing all mapped class references. - Author: josh - Ported by: Steve Strong - - - - - Counts the from elements as they are added. - - - - - All of the implicit FROM xxx JOIN yyy elements that are the destination of a collection. These are created from - index operators on collection property references. - - - - - Pointer to the parent FROM clause, if there is one. - - - - - Collection of FROM clauses of which this is the parent. - - - - - Convenience method to check whether a given token represents a from-element alias. - - The potential from-element alias to check. - True if the possibleAlias is an alias to a from-element visible from this point in the query graph. - - - - Returns true if the from node contains the class alias name. - - The HQL class alias name. - true if the from node contains the class alias name. - - - - Returns true if the from node contains the table alias name. - - The SQL table alias name. - true if the from node contains the table alias name. - - - - Adds a new from element to the from node. - - The reference to the class. - The alias AST. - The new FROM element. - - - - Retreives the from-element represented by the given alias. - - The alias by which to locate the from-element. - The from-element assigned the given alias, or null if none. - - - - Returns the list of from elements in order. - - The list of from elements (instances of FromElement). - - - - Returns the list of from elements that will be part of the result set. - - the list of from elements that will be part of the result set. - - - - Look for an existing implicit or explicit join by the given path. - - - - - Creates entity from elements. - - - - - - - - Creates collection from elements. - - - - - - - - - - - Insert a new node into both the Tree and the Node Array. Add DOWN and UP nodes if needed. - - The parent node - The child node - - - - Count the number of child nodes (including DOWNs and UPs) of a parent node - - The index of the parent in the node array - The number of child nodes - - - - Represents the [] operator and provides it's semantics. - Author: josh - Ported by: Steve Strong - - - - - Author: Steve Ebersole - Ported by: Steve Strong - - - - - Defines a top-level AST node representing an HQL "insert select" statement. - - - - Performs detailed semantic validation on this insert statement tree. - Indicates validation failure. - - - Retreive this insert statement's into-clause. - The into-clause - - - Retreive this insert statement's select-clause. - The select-clause. - - - - Represents an entity referenced in the INTO clause of an HQL - INSERT statement. - - Author: Steve Ebersole - Ported by: Steve Strong - - - - - Returns additional display text for the AST node. - - The additional display text. - - - - Determine whether the two types are "assignment compatible". - - The type defined in the into-clause. - The type defined in the select clause. - True if they are assignment compatible. - - - - Interface for nodes which require access to the SessionFactory - - Author: Steve Ebersole - Ported by: Steve Strong - - - - - IsNotNullLogicOperatorNode implementation - - Author: Steve Ebersole - Ported by: Steve Strong - - - - - Represents a 'is null' check. - - - - - A node representing a static Java constant. - - Author: Steve Ebersole - Ported by: Steve Strong - - - - - Implementation of OrderByClause. - Author: Steve Ebersole - Ported by: Steve Strong - - - - - Implementation of ParameterNode. - Author: Steve Ebersole - Ported by: Steve Strong - - - - - Locate the select clause that is part of this select statement. - Note, that this might return null as derived select clauses (i.e., no - select clause at the HQL-level) get generated much later than when we - get created; thus it depends upon lifecycle. - - Our select clause, or null. - - - - Represents the list of expressions in a SELECT clause. - Author: josh - Ported by: Steve Strong - - - - - Prepares a derived (i.e., not explicitly defined in the query) select clause. - - The from clause to which this select clause is linked. - - - - Prepares an explicitly defined select clause. - - The from clause linked to this select clause. - - - - - FromElements which need to be accounted for in the load phase (either for return or for fetch). - - - - - The column alias names being used in the generated SQL. - - - - - The constructor to use for dynamic instantiation queries. - - - - - The HQL aliases, or generated aliases - - - - - The types actually being returned from this query at the "object level". - - - - - A select expression that was generated by a FROM element. - Author: josh - Ported by: Steve Strong - - - - - Represents an SQL fragment in the AST. - Author: josh - Ported by: Steve Strong - - - - - Defines a top-level AST node representing an HQL update statement. - - - - - Generates class/table/column aliases during semantic analysis and SQL rendering. - Its essential purpose is to keep an internal counter to ensure that the - generated aliases are unique. - - - - - Appends child nodes to a parent efficiently. - - - - - Depth first iteration of an ANTLR AST. - Author: josh - Ported by: Steve Strong - - - - - Returns the 'list' representation with some brackets around it for debugging. - - The tree. - The list representation of the tree. - - - - Determine if a given node (test) is contained anywhere in the subtree - of another given node (fixture). - - The node against which to be checked for children. - The node to be tested as being a subtree child of the parent. - True if child is contained in the parent's collection of children. - - - - Finds the first node of the specified type in the chain of children. - - The parent - The type to find. - The first node of the specified type, or null if not found. - - - - Filters nodes in/out of a tree. - - The node to check. - true to keep the node, false if the node should be filtered out. - - - - Generates the scalar column AST nodes for a given array of SQL columns - - - - - Performs the post-processing of the join information gathered during semantic analysis. - The join generating classes are complex, this encapsulates some of the JoinSequence-related - code. - Author: Joshua Davis - Ported by: Steve Strong - - - - - Constructs a new JoinProcessor. - - The walker to which we are bound, giving us access to needed resources. - - - - Translates an AST join type (i.e., the token type) into a JoinFragment.XXX join type. - - The AST join type (from HqlSqlWalker) - a JoinType.XXX join type. - - - - Indicates that Float and Double literal values should - be treated using the SQL "exact" format (i.e., '.001') - - - - - Indicates that Float and Double literal values should - be treated using the SQL "approximate" format (i.e., '1E-3') - - - - - In what format should Float and Double literal values be sent - to the database? - See #EXACT, #APPROXIMATE - - - - - Traverse the AST tree depth first. Note that the AST passed in is not visited itself. Visitation starts - with its children. - - ast - - - - Turns a path into an AST. - - The path. - The AST factory to use. - An HQL AST representing the path. - - - - Creates synthetic and nodes based on the where fragment part of a JoinSequence. - Author: josh - Ported by: Steve Strong - - - - - Generates translators which uses the Antlr-based parser to perform - the translation. - - Author: Gavin King - Ported by: Steve Strong - - - - - Facade for generation of - and instances. - - - - - Construct a instance - capable of translating an HQL query string. - - The query string to be translated - - - Currently enabled filters - The session factory - An appropriate translator. - - - - Construct a instance - capable of translating a Linq expression. - - The query expression to be translated - - - Currently enabled filters - The session factory - An appropriate translator. - - - - Look ahead for tokenizing is all lowercase, whereas the original case of an input stream is preserved. - Copied from http://www.antlr.org/wiki/pages/viewpage.action?pageId=1782 - - - - - Provides a map of collection function names to the corresponding property names. - Authoer: josh - Ported by: Steve Strong - - - - - A problem occurred translating a Hibernate query to SQL due to invalid query syntax, etc. - - - - - Initializes a new instance of the class. - - The message that describes the error. - - - - Initializes a new instance of the class. - - The message that describes the error. - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class. - - The message that describes the error. - The query that contains the error. - - - - Initializes a new instance of the class. - - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Sets the serialization info for after - getting the info from the base Exception. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Gets or sets the of HQL that caused the Exception. - - - - - Gets a message that describes the current . - - The error message that explains the reason for this exception including the HQL. - - - - An error handler that counts parsing errors and warnings. - - - - - Defines the behavior of an error handler for the HQL parsers. - Author: josh - Ported by: Steve Strong - - - - - A custom token class for the HQL grammar. - - - - - The previous token type. - - - - - Public constructor - - - - - Public constructor - - - - - Returns a string representation of the object. - - The debug string - - - - Indicates if the token could be an identifier. - - - - - Returns the previous token type. - - - - - Exception thrown when an invalid path is found in a query. - Author: josh - Ported by: Steve Strong - - - - - Specialized interface for filters. - - - - - Defines the constract of an HQL->SQL translator. - - - - - Compile a "normal" query. This method may be called multiple times. Subsequent invocations are no-ops. - - Defined query substitutions. - Does this represent a shallow (scalar or entity-id) select? - There was a problem parsing the query string. - There was a problem querying defined mappings. - - - - Perform a list operation given the underlying query definition. - - The session owning this query. - The query bind parameters. - The query list results. - - - - - Perform a bulk update/delete operation given the underlying query defintion. - - The query bind parameters. - The session owning this query. - The number of entities updated or deleted. - - - - - Returns the column names in the generated SQL. - - the column names in the generated SQL. - - - - The set of query spaces (table names) that the query referrs to. - - - - - The SQL string generated by the translator. - - - - - The HQL string processed by the translator. - - - - - Returns the filters enabled for this query translator. - - Filters enabled for this query execution. - - - - Returns an array of Types represented in the query result. - - Query return types. - - - - Returns an array of HQL aliases - - Returns an array of HQL aliases - - - - Does the translated query contain collection fetches? - - True if the query does contain collection fetched; false otherwise. - - - - Compile a filter. This method may be called multiple - times. Subsequent invocations are no-ops. - - the role name of the collection used as the basis for the filter. - Defined query substitutions. - Does this represent a shallow (scalar or entity-id) select? - - - - Creates a new AST-based query translator. - - The query-identifier (used in stats collection) - The hql query to translate - Currently enabled filters - The session factory constructing this translator instance. - - - - Compile a "normal" query. This method may be called multiple - times. Subsequent invocations are no-ops. - - Defined query substitutions. - Does this represent a shallow (scalar or entity-id) select? - - - - Compile a filter. This method may be called multiple - times. Subsequent invocations are no-ops. - - the role name of the collection used as the basis for the filter. - Defined query substitutions. - Does this represent a shallow (scalar or entity-id) select? - - - - Performs both filter and non-filter compiling. - - Defined query substitutions. - Does this represent a shallow (scalar or entity-id) select? - the role name of the collection used as the basis for the filter, NULL if this is not a filter. - - - - Construct a new SessionFactoryHelperExtensions instance. - - The SessionFactory impl to be encapsulated. - - - - Locate a registered sql function by name. - - The name of the function to locate - The sql function, or null if not found. - - - - Locate a registered sql function by name. - - The name of the function to locate - The sql function, or throws QueryException if no matching sql functions could be found. - - - - Find the function return type given the function name and the first argument expression node. - - The function name. - The first argument expression. - the function return type given the function name and the first argument expression node. - - - - Given a (potentially unqualified) class name, locate its imported qualified name. - - The potentially unqualified class name - The qualified class name. - - - - Does the given persister define a physical discriminator column - for the purpose of inheritence discrimination? - - The persister to be checked. - True if the persister does define an actual discriminator column. - - - - Locate the collection persister by the collection role. - - The collection role name. - The defined CollectionPersister for this collection role, or null. - - - - Determine the name of the property for the entity encapsulated by the - given type which represents the id or unique-key. - - The type representing the entity. - The corresponding property name - - - - Retrieves the column names corresponding to the collection elements for the given - collection role. - - The collection role - The sql column-qualification alias (i.e., the table alias) - the collection element columns - - - - Essentially the same as GetElementType, but requiring that the - element type be an association type. - - The collection type to be checked. - The AssociationType of the elements of the collection. - - - - Locate the collection persister by the collection role, requiring that - such a persister exist. - - The collection role name. - The defined CollectionPersister for this collection role. - - - - Locate the persister by class or entity name, requiring that such a persister - exist. - - The class or entity name - The defined persister for this entity - - - - Given a (potentially unqualified) class name, locate its persister. - - The (potentially unqualified) class name. - The defined persister for this class, or null if none found. - - - - Given a (potentially unqualified) class name, locate its persister. - - The session factory implementor. - The (potentially unqualified) class name. - The defined persister for this class, or null if none found. - - - - Locate the persister by class or entity name. - - The class or entity name - The defined persister for this entity, or null if none found. - - - - Create a join sequence rooted at the given collection. - - The persister for the collection at which the join should be rooted. - The alias to use for qualifying column references. - The generated join sequence. - - - - Generate an empty join sequence instance. - - The generated join sequence. - - - - Generate a join sequence representing the given association type. - - Should implicit joins (theta-style) or explicit joins (ANSI-style) be rendered - The type representing the thing to be joined into. - The table alias to use in qualifing the join conditions - The type of join to render (inner, outer, etc) - The columns making up the condition of the join. - The generated join sequence. - - - - Retreive a PropertyMapping describing the given collection role. - - The collection role for whcih to retrieve the property mapping. - The property mapping. - - - - Given a collection type, determine the Type representing elements - within instances of that collection. - - The collection type to be checked. - The Type of the elements of the collection. - - - - Wraps SessionFactoryImpl, adding more lookup behaviors and encapsulating some of the error handling. - - - - - Locate the collection persister by the collection role. - - The collection role name. - The defined CollectionPersister for this collection role, or null. - - - - Locate the persister by class or entity name, requiring that such a persister - exists - - The class or entity name - The defined persister for this entity - - - - Locate the persister by class or entity name. - - The class or entity name - The defined persister for this entity, or null if none found. - - - - Retreive a PropertyMapping describing the given collection role. - - The collection role for whcih to retrieve the property mapping. - The property mapping. - - - - Provides utility methods for generating HQL / SQL names. - Shared by both the 'classic' and 'new' query translators. - - - - - Handle Hibernate "implicit" polymorphism, by translating the query string into - several "concrete" queries against mapped classes. - - - - - - - - - Contract for providing callback access to an , - typically from the . - - - - - Retrieve the next value from the underlying source. - - - - - Encapsulates definition of the underlying data structure backing a sequence-style generator. - - - - - A callback to be able to get the next value from the underlying - structure as needed. - - The session. - The next value. - - - - Prepare this structure for use. Called sometime after instantiation, - but before first use. - - The optimizer being applied to the generator. - - - Commands needed to create the underlying structures. - The database dialect being used. - The creation commands. - - - Commands needed to drop the underlying structures. - The database dialect being used. - The drop commands. - - - The name of the database structure (table or sequence). - - - How many times has this structure been accessed through this reference? - - - The configured increment size - - - - Performs optimization on an optimizable identifier generator. Typically - this optimization takes the form of trying to ensure we do not have to - hit the database on each and every request to get an identifier value. - - - - Optimizers work on constructor injection. They should provide - a constructor with the following arguments. - - - The return type for the generated values. - - int The increment size. - - - - - Generate an identifier value accounting for this specific optimization. - - Callback to access the underlying value source. - The generated identifier value. - - - - A common means to access the last value obtained from the underlying - source. This is intended for testing purposes, since accessing the - unerlying database source directly is much more difficult. - - - The last value we obtained from the underlying source; -1 indicates we have not yet consulted with the source. - - - - - Defined increment size. - - The increment size. - - - - Are increments to be applied to the values stored in the underlying - value source? - - - True if the values in the source are to be incremented - according to the defined increment size; false otherwise, in which - case the increment is totally an in memory construct. - - - - - Marker interface for an optimizer that wishes to know the user-specified initial value. -

- Used instead of constructor injection since that is already a public understanding and - because not all optimizers care. -

-
- - - Reports the user-specified initial value to the optimizer. -

- -1 is used to indicate that the user did not specify. - The initial value specified by the user, or -1 to indicate that the - user did not specify. -

-
- - - Common support for optimizer implementations. - - - - - Construct an optimizer - - The expected id class. - The increment size. - - - - Exposure intended for testing purposes. - - - - - Exposure intended for testing purposes. - - - - - Optimizer which uses a pool of values, storing the next low value of the range in the database. - - Note that this optimizer works essentially the same as the HiLoOptimizer, except that here the - bucket ranges are actually encoded into the database structures. - - - Note that if you prefer that the database value be interpreted as the bottom end of our current - range, then use the PooledLoOptimizer strategy. - - - - - - Exposure intended for testing purposes. - - - - - Exposure intended for testing purposes. - - - - - Describes a sequence. - - - - - Generates identifier values based on an sequence-style database structure. - Variations range from actually using a sequence to using a table to mimic - a sequence. These variations are encapsulated by the - interface internally. - - - General configuration parameters: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NAMEDEFAULTDESCRIPTION
The name of the sequence/table to use to store/retrieve values
The initial value to be stored for the given segment; the effect in terms of storage varies based on and
The increment size for the underlying segment; the effect in terms of storage varies based on and
depends on defined increment sizeAllows explicit definition of which optimization strategy to use
falseAllows explicit definition of which optimization strategy to use
-

- Configuration parameters used specifically when the underlying structure is a table: - - - - - - - - - - - -
NAMEDEFAULTDESCRIPTION
The name of column which holds the sequence value for the given segment
- - - -

- An that requires creation of database objects - All s that also implement - An have access to a special mapping parameter: schema - -
- - - The general contract between a class that generates unique - identifiers and the . - - - - It is not intended that this interface ever be exposed to the - application. It is intended that users implement this interface - to provide custom identifier generation strategies. - - - Implementors should provide a public default constructor. - - - Implementations that accept configuration parameters should also - implement . - - - Implementors must be threadsafe. - - - - - - Generate a new identifier - - The this id is being generated in. - The entity for which the id is being generated. - The new identifier - - - - The SQL required to create the underlying database objects - - The to help with creating the sql. - - An array of objects that contain the sql to create the - necessary database objects. - - - - - The SQL required to remove the underlying database objects - - The to help with creating the sql. - - A that will drop the database objects. - - - - - Return a key unique to the underlying database objects. - - - A key unique to the underlying database objects. - - - Prevents us from trying to create/remove them multiple times - - - - - An IdentiferGenerator that supports "configuration". - - - - - Configure this instance, given the values of parameters - specified by the user as <param> elements. - This method is called just once, followed by instantiation. - - The the identifier should be. - An of Param values that are keyed by parameter name. - The to help with Configuration. - - - - Determine the name of the sequence (or table if this resolves to a physical table) to use. - Called during configuration. - - - - - - - - Determine the name of the column used to store the generator value in - the db. Called during configuration, if a physical table is being used. - - - - - Determine the initial sequence value to use. This value is used when - initializing the database structure (i.e. sequence/table). Called - during configuration. - - - - - Determine the increment size to be applied. The exact implications of - this value depends on the optimizer being used. Called during configuration. - - - - - Determine the optimizer to use. Called during configuration. - - - - - In certain cases we need to adjust the increment size based on the - selected optimizer. This is the hook to achieve that. - - The determined optimizer strategy. - The determined, unadjusted, increment size. - - - - Do we require a sequence with the ability to set initialValue and incrementSize - larger than 1? - - - - - An enhanced version of table-based id generation. - - - Unlike the simplistic legacy one (which, btw, was only ever intended for subclassing - support) we "segment" the table into multiple values. Thus a single table can - actually serve as the persistent storage for multiple independent generators. One - approach would be to segment the values by the name of the entity for which we are - performing generation, which would mean that we would have a row in the generator - table for each entity name. Or any configuration really; the setup is very flexible. - - In this respect it is very similar to the legacy - MultipleHiLoPerTableGenerator (not available in NHibernate) in terms of the - underlying storage structure (namely a single table capable of holding - multiple generator values). The differentiator is, as with - as well, the externalized notion - of an optimizer. - - - NOTE that by default we use a single row for all generators (based - on ). The configuration parameter - can be used to change that to - instead default to using a row for each entity name. - - Configuration parameters: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NAMEDEFAULTDESCRIPTION
The name of the table to use to store/retrieve values
The name of column which holds the sequence value for the given segment
The name of the column which holds the segment key
The value indicating which segment is used by this generator; refers to values in the column
The data length of the column; used for schema creation
The initial value to be stored for the given segment
The increment size for the underlying segment; see the discussion on for more details.
depends on defined increment sizeAllows explicit definition of which optimization strategy to use
-
-
- - - Determine the table name to use for the generator values. Called during configuration. - - The parameters supplied in the generator config (plus some standard useful extras). - - - - Determine the name of the column used to indicate the segment for each - row. This column acts as the primary key. - Called during configuration. - - The parameters supplied in the generator config (plus some standard useful extras). - - - - Determine the name of the column in which we will store the generator persistent value. - Called during configuration. - - - - - Determine the segment value corresponding to this generator instance. Called during configuration. - - - - - Used in the cases where is unable to - determine the value to use. - - - - - Determine the size of the segment column. - Called during configuration. - - - - - Type mapping for the identifier. - - - - - The name of the table in which we store this generator's persistent state. - - - - - The name of the column in which we store the segment to which each row - belongs. The value here acts as primary key. - - - - - The value in the column identified by which - corresponds to this generator instance. In other words, this value - indicates the row in which this generator instance will store values. - - - - - The size of the column identified by - in the underlying table. - - - Should really have been called 'segmentColumnLength' or even better 'segmentColumnSize'. - - - - - The name of the column in which we store our persistent generator value. - - - - - The initial value to use when we find no previous state in the - generator table corresponding to this instance. - - - - - The amount of increment to use. The exact implications of this - depends on the optimizer being used, see . - - - - - The optimizer being used by this generator. This mechanism - allows avoiding calling the database each time a new identifier - is needed. - - - - - The table access count. Only really useful for unit test assertions. - - - - - Describes a table used to mimic sequence behavior - - - - - Abstract InsertGeneratedIdentifierDelegate implementation where the - underlying strategy causes the generated identitifer to be returned as an - effect of performing the insert statement. Thus, there is no need for an - additional sql statement to determine the generated identitifer. - - - - - Responsible for handling delegation relating to variants in how - insert-generated-identifier generator strategies dictate processing: -
    -
  • building the sql insert statement
  • -
  • determination of the generated identifier value
  • -
-
-
- - - Build a specific to the delegate's mode - of handling generated key values. - - The insert object. - - - - Perform the indicated insert SQL statement and determine the identifier value generated. - - - - - The generated identifier value. - - - - Abstract InsertGeneratedIdentifierDelegate implementation where the - underlying strategy requires an subsequent select after the insert - to determine the generated identifier. - - - - Extract the generated key value from the given result set. - The session - The result set containing the generated primay key values. - The entity being saved. - The generated identifier - - - Bind any required parameter values into the SQL command . - The session - The prepared command - The entity being saved. - - - Get the SQL statement to be used to retrieve generated key values. - The SQL command string - - - - Types of any required parameter values into the SQL command . - - - - - Nothing more than a distinguishing subclass of Insert used to indicate - intent. - Some subclasses of this also provided some additional - functionality or semantic to the genernated SQL statement string. - - - - - A class that builds an INSERT sql statement. - - - - - - - - Builds a SqlString from the internal data. - - A valid SqlString that can be converted into an IDbCommand - - - - Adds the Property's columns to the INSERT sql - - The column name for the Property - The IType of the property. - The SqlInsertBuilder. - The column will be associated with a parameter. - - - - Add a column with a specific value to the INSERT sql - - The name of the Column to add. - The value to set for the column. - The NHibernateType to use to convert the value to a sql string. - The SqlInsertBuilder. - - - - Add a column with a specific value to the INSERT sql - - The name of the Column to add. - A valid sql string to set as the value of the column. - The SqlInsertBuilder. - - - - Specialized IdentifierGeneratingInsert which appends the database - specific clause which signifies to return generated IDENTITY values - to the end of the insert statement. - - - - - Disable comments on insert. - - - - - implementation where the - underlying strategy causes the generated identitifer to be returned, as an - effect of performing the insert statement, in a Output parameter. - Thus, there is no need for an additional sql statement to determine the generated identitifer. - - - - - Specialized IdentifierGeneratingInsert which appends the database - specific clause which signifies to return generated identifier values - to the end of the insert statement. - - - - - - - The IdentityGenerator for autoincrement/identity key generation. - - The this id is being generated in. - The entity the id is being generated for. - - IdentityColumnIndicator Indicates to the Session that identity (i.e. identity/autoincrement column) - key generation should be used. - - - - - An that returns the current identifier - assigned to an instance. - - -

- This id generation strategy is specified in the mapping file as - <generator class="assigned" /> -

-
-
- - - Generates a new identifier by getting the value of the identifier - for the obj parameter. - - The this id is being generated in. - The entity for which the id is being generated. - The value that was assigned to the mapped id's property. - - Thrown when a is passed in as the obj or - if the identifier of obj is null. - - - - - An that returns a Int64 constructed from the system - time and a counter value. Not safe for use in a clustser! - - - - - An that uses the value of - the id property of an associated object - - - - This id generation strategy is specified in the mapping file as - - <generator class="foreign"> - <param name="property">AssociatedObject</param> - </generator> - - - The mapping parameter property is required. - - - - - Generates an identifer from the value of a Property. - - The this id is being generated in. - The entity for which the id is being generated. - - The identifier value from the associated object or - if the session - already contains obj. - - - - - Configures the ForeignGenerator by reading the value of property - from the parms parameter. - - The the identifier should be. - An of Param values that are keyed by parameter name. - The to help with Configuration. - - Thrown if the key property is not found in the parms parameter. - - - - - An that generates values - using a strategy suggested Jimmy Nilsson's - article - on informit.com. - - -

- This id generation strategy is specified in the mapping file as - <generator class="guid.comb" /> -

-

- The comb algorithm is designed to make the use of GUIDs as Primary Keys, Foreign Keys, - and Indexes nearly as efficient as ints. -

-

- This code was contributed by Donald Mull. -

-
-
- - - Generate a new using the comb algorithm. - - The this id is being generated in. - The entity for which the id is being generated. - The new identifier as a . - - - - Generate a new using the comb algorithm. - - - - - An that generates values - using Guid.NewGuid(). - - -

- This id generation strategy is specified in the mapping file as - <generator class="guid" /> -

-
-
- - - Generate a new for the identifier. - - The this id is being generated in. - The entity for which the id is being generated. - The new identifier as a . - - - - Thrown by implementation class when ID generation fails - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - The message that describes the error. - - - - Initializes a new instance of the class. - - The message that describes the error. - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Factory methods for IdentifierGenerator framework. - - -

The built in strategies for identifier generation in NHibernate are:

- - - strategy - Implementation of strategy - - - assigned - - - - counter - - - - foreign - - - - guid - - - - guid.comb - - - - guid.native - - - - hilo - - - - identity - - - - native - - Chooses between , - , and based on the - 's capabilities. - - - - seqhilo - - - - sequence - - - - enhanced-sequence - - - - uuid.hex - - - - uuid.string - - - -
-
- - Get the generated identifier when using identity columns - The to read the identifier value from. - The the value should be converted to. - The the value is retrieved in. - The value for the identifier. - - - - Gets the value of the identifier from the and - ensures it is the correct . - - The to read the identifier value from. - The the value should be converted to. - The the value is retrieved in. - - The value for the identifier. - - - Thrown if there is any problem getting the value from the - or with converting it to the . - - - - - An where the key is the strategy and - the value is the for the strategy. - - - - - When this is returned by Generate() it indicates that the object - has already been saved. - - - String.Empty - - - - - When this is return - - - - - Initializes the static fields in . - - - - - Creates an from the named strategy. - - - The name of the generator to create. This can be one of the NHibernate abbreviations (ie - native, - sequence, guid.comb, etc...), a full class name if the Type is in the NHibernate assembly, or - a full type name if the strategy is in an external assembly. - - The that the retured identifier should be. - An of <param> values from the mapping. - The to help with Configuration. - - An instantiated and configured . - - - Thrown if there are any exceptions while creating the . - - - - - Create the correct boxed for the identifier. - - The value of the new identifier. - The the identifier should be. - - The identifier value converted to the . - - - The type parameter must be an , , - or . - - - - - An that indicates to the that identity - (ie. identity/autoincrement column) key generation should be used. - - -

- This id generation strategy is specified in the mapping file as - <generator class="identity" /> - or if the database natively supports identity columns - <generator class="native" /> -

-

- This indicates to NHibernate that the database generates the id when - the entity is inserted. -

-
-
- - - Delegate for dealing with IDENTITY columns where the dialect supports returning - the generated IDENTITY value directly from the insert statement. - - - - - Delegate for dealing with IDENTITY columns where the dialect requires an - additional command execution to retrieve the generated IDENTITY value - - - - The configuration parameter holding the entity name - - - - An IIdentifierGenerator that returns a Int64, constructed by - counting from the maximum primary key value at startup. Not safe for use in a - cluster! - - - - java author Gavin King, .NET port Mark Holden - - - Mapping parameters supported, but not usually needed: table, column. - - - - - - - - - - - - - - - - - - - - - The configuration parameter holding the schema name - - - - The configuration parameter holding the table name for the - generated id - - - - - The configuration parameter holding the table names for all - tables for which the id must be unique - - - - - The configuration parameter holding the primary key column - name of the generated id - - - - The configuration parameter holding the catalog name - - - - A persister that may have an identity assigned by execution of a SQL INSERT. - - - - - Get a SQL select string that performs a select based on a unique - key determined by the given property name). - - - The name of the property which maps to the - column(s) to use in the select statement restriction. - - The SQL select string - - - - Get the database-specific SQL command to retrieve the last - generated IDENTITY value. - - - - The names of the primary key columns in the root table. - The primary key column names. - - - - Get the identifier type - - - - - Generates Guid values using the server side Guid function. - - - - - A generator that selects the just inserted row to determine the identifier - value assigned by the database. The correct row is located using a unique key. - - One mapping parameter is required: key (unless a natural-id is defined in the mapping). - - - The delegate for the select generation strategy. - - - - An that generates Int64 values using an - oracle-style sequence. A higher performance algorithm is - . - - -

- This id generation strategy is specified in the mapping file as - - <generator class="sequence"> - <param name="sequence">uid_sequence</param> - <param name="schema">db_schema</param> - </generator> - -

-

- The sequence parameter is required while the schema is optional. -

-
-
- - - The name of the sequence parameter. - - - - - The parameters parameter, appended to the create sequence DDL. - For example (Oracle): INCREMENT BY 1 START WITH 1 MAXVALUE 100 NOCACHE. - - - - - Configures the SequenceGenerator by reading the value of sequence and - schema from the parms parameter. - - The the identifier should be. - An of Param values that are keyed by parameter name. - The to help with Configuration. - - - - Generate an , , or - for the identifier by using a database sequence. - - The this id is being generated in. - The entity for which the id is being generated. - The new identifier as a , , or . - - - - The SQL required to create the database objects for a SequenceGenerator. - - The to help with creating the sql. - - An array of objects that contain the Dialect specific sql to - create the necessary database objects for the SequenceGenerator. - - - - - The SQL required to remove the underlying database objects for a SequenceGenerator. - - The to help with creating the sql. - - A that will drop the database objects for the SequenceGenerator. - - - - - Return a key unique to the underlying database objects for a SequenceGenerator. - - - The configured sequence name. - - - - - An that combines a hi/lo algorithm with an underlying - oracle-style sequence that generates hi values. - - -

- This id generation strategy is specified in the mapping file as - - <generator class="seqhilo"> - <param name="sequence">uid_sequence</param> - <param name="max_lo">max_lo_value</param> - <param name="schema">db_schema</param> - </generator> - -

-

- The sequence parameter is required, the max_lo and schema are optional. -

-

- The user may specify a max_lo value to determine how often new hi values are - fetched. If sequences are not avaliable, TableHiLoGenerator might be an - alternative. -

-
-
- - - The name of the maximum low value parameter. - - - - - Configures the SequenceHiLoGenerator by reading the value of sequence, max_lo, - and schema from the parms parameter. - - The the identifier should be. - An of Param values that are keyed by parameter name. - The to help with Configuration. - - - - Generate an , , or - for the identifier by using a database sequence. - - The this id is being generated in. - The entity for which the id is being generated. - The new identifier as a , , or . - - - - A generator which combines sequence generation with immediate retrieval - by attaching a output parameter to the SQL command - In this respect it works much like ANSI-SQL IDENTITY generation. - - - - - An that uses a database table to store the last - generated value. - - -

- It is not intended that applications use this strategy directly. However, - it may be used to build other (efficient) strategies. The return type is - System.Int32 -

-

- The hi value MUST be fetched in a separate transaction to the ISession - transaction so the generator must be able to obtain a new connection and commit it. - Hence this implementation may not be used when the user is supplying connections. -

-

- The mapping parameters table and column are required. -

-
-
- - - An additional where clause that is added to - the queries against the table. - - - - - The name of the column parameter. - - - - - The name of the table parameter. - - - - Default column name - - - Default table name - - - - Configures the TableGenerator by reading the value of table, - column, and schema from the parms parameter. - - The the identifier should be. - An of Param values that are keyed by parameter name. - The to help with Configuration. - - - - Generate a , , or - for the identifier by selecting and updating a value in a table. - - The this id is being generated in. - The entity for which the id is being generated. - The new identifier as a , , or . - - - - The SQL required to create the database objects for a TableGenerator. - - The to help with creating the sql. - - An array of objects that contain the Dialect specific sql to - create the necessary database objects and to create the first value as 1 - for the TableGenerator. - - - - - The SQL required to remove the underlying database objects for a TableGenerator. - - The to help with creating the sql. - - A that will drop the database objects for the TableGenerator. - - - - - Return a key unique to the underlying database objects for a TableGenerator. - - - The configured table name. - - - - - An that returns an Int64, constructed using - a hi/lo algorithm. - - -

- This id generation strategy is specified in the mapping file as - - <generator class="hilo"> - <param name="table">table</param> - <param name="column">id_column</param> - <param name="max_lo">max_lo_value</param> - <param name="schema">db_schema</param> - </generator> - -

-

- The table and column parameters are required, the max_lo and - schema are optional. -

-

- The hi value MUST be fecthed in a separate transaction to the ISession - transaction so the generator must be able to obtain a new connection and - commit it. Hence this implementation may not be used when the user is supplying - connections. In that case a would be a - better choice (where supported). -

-
-
- - - The name of the max lo parameter. - - - - - Configures the TableHiLoGenerator by reading the value of table, - column, max_lo, and schema from the parms parameter. - - The the identifier should be. - An of Param values that are keyed by parameter name. - The to help with Configuration. - - - - Generate a for the identifier by selecting and updating a value in a table. - - The this id is being generated in. - The entity for which the id is being generated. - The new identifier as a . - - - - An that returns a string of length - 32, 36, or 38 depending on the configuration. - - -

- This id generation strategy is specified in the mapping file as - - <generator class="uuid.hex"> - <param name="format">format_string</param> - <param name="seperator">seperator_string</param> - </generator> - -

-

- The format and seperator parameters are optional. -

-

- The identifier string will consist of only hex digits. Optionally, the identifier string - may be generated with enclosing characters and seperators between each component - of the UUID. If there are seperators then the string length will be 36. If a format - that has enclosing brackets is used, then the string length will be 38. -

-

- format is either - "N" (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx), - "D" (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx), - "B" ({xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}), - or "P" ((xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)). These formats are described in - the Guid.ToString(String) method. - If no format is specified the default is "N". -

-

- seperator is the char that will replace the "-" if specified. If no value is - configured then the default seperator for the format will be used. If the format "D", "B", or - "P" is specified, then the seperator will replace the "-". If the format is "N" then this - parameter will be ignored. -

-

- This class is based on -

-
-
- - - Generate a new for the identifier using the "uuid.hex" algorithm. - - The this id is being generated in. - The entity for which the id is being generated. - The new identifier as a . - - - - Configures the UUIDHexGenerator by reading the value of format and - seperator from the parms parameter. - - The the identifier should be. - An of Param values that are keyed by parameter name. - The to help with Configuration. - - - - Generate a Guid into a string using the format. - - A new Guid string - - - - An that returns a string of length - 16. - - -

- This id generation strategy is specified in the mapping file as - <generator class="uuid.string" /> -

- - The identifier string will NOT consist of only alphanumeric characters. Use - this only if you don't mind unreadable identifiers. - - - This impelementation was known to be incompatible with Postgres. - -
-
- - - Generate a new for the identifier using the "uuid.string" algorithm. - - The this id is being generated in. - The entity for which the id is being generated. - The new identifier as a . - - - - Base class to create queries in "detached mode" where the NHibernate session is not available. - - - - - The behaviour of each method is basically the same of methods. - The main difference is on : - If you mix with named parameters setter, if same param name are found, - the value of the parameter setter override the value read from the POCO. - - - - - Interface to create queries in "detached mode" where the NHibernate session is not available. - All methods have the same semantics as the corresponding methods of the interface. - - - - - Get an executable instance of , - to actually run the query. - - - - Set the maximum number of rows to retrieve. - - The maximum number of rows to retreive. - - - - Sets the first row to retrieve. - - The first row to retreive. - - - - Enable caching of this query result set. - - Should the query results be cacheable? - - - Set the name of the cache region. - The name of a query cache region, or - for the default query cache - - - - Entities retrieved by this query will be loaded in - a read-only mode where Hibernate will never dirty-check - them or make changes persistent. - - Enable/Disable read -only mode - - - - The timeout for the underlying ADO query - - - - - Set a fetch size for the underlying ADO query. - the fetch size - - - - Set the lockmode for the objects idententified by the - given alias that appears in the FROM clause. - - alias a query alias, or this for a collection filter - - - - Add a comment to the generated SQL. - a human-readable string - - - - Bind a value to an indexed parameter. - - Position of the parameter in the query, numbered from 0 - The possibly null parameter value - The Hibernate type - - - - Bind a value to a named query parameter - - The name of the parameter - The possibly null parameter value - The NHibernate . - - - - Bind a value to an indexed parameter, guessing the Hibernate type from - the class of the given object. - - The position of the parameter in the query, numbered from 0 - The non-null parameter value - - - - Bind a value to a named query parameter, guessing the NHibernate - from the class of the given object. - - The name of the parameter - The non-null parameter value - - - - Bind multiple values to a named query parameter. This is useful for binding a list - of values to an expression such as foo.bar in (:value_list) - - The name of the parameter - A collection of values to list - The Hibernate type of the values - - - - Bind multiple values to a named query parameter, guessing the Hibernate - type from the class of the first object in the collection. This is useful for binding a list - of values to an expression such as foo.bar in (:value_list) - - The name of the parameter - A collection of values to list - - - - Bind the property values of the given object to named parameters of the query, - matching property names with parameter names and mapping property types to - Hibernate types using heuristics. - - Any POCO - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a array to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a array. - - - - Bind an instance of a array to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a array. - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - A non-null instance of a . - The name of the parameter - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a mapped persistent class to an indexed parameter. - - Position of the parameter in the query string, numbered from 0 - A non-null instance of a persistent class - - - - Bind an instance of a mapped persistent class to a named parameter. - - The name of the parameter - A non-null instance of a persistent class - - - - Bind an instance of a persistent enumeration class to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a persistent enumeration - - - - Bind an instance of a persistent enumeration class to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a persistent enumeration - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - An instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - An instance of a . - - - - Override the current session flush mode, just for this query. - - - - - Set a strategy for handling the query results. This can be used to change - "shape" of the query result. - - - - - Set the value to ignore unknown parameters names. - - True to ignore unknown parameters names. - - - Override the current session cache mode, just for this query. - The cache mode to use. - this (for method chaining) - - - - Interface for DetachedQuery implementors. - - - When you are working with queries in "detached mode" you may need some additional services like clone, - copy of parameters from another query and so on. - - - - - Copy all properties to a given . - - The given . - - Usually the implementation use to set properties to the . - This mean that existing properties are merged/overriden. - - - - - Set only parameters to a given . - - The given . - - Existing parameters are merged/overriden. - - - - - Override all properties reading new values from a given . - - The given origin. - - - - Override all parameters reading new values from a given . - - The given origin. - - - Override the current session cache mode, just for this query. - The cache mode to use. - this (for method chaining) - - - - Fill all properties. - - The . - - Query properties are overriden/merged. - - - - - Copy all properties to a given . - - The given . - - The method use to set properties of . - - - - - Set only parameters to a given . - - The given . - - The method use to set properties of . - Existing parameters in are merged/overriden. - - - - - Clear all existing parameters and copy new parameters from a given origin. - - The origin of parameters. - The current instance - If is null. - - - - Abstract implementation of the IQuery interface. - - - - - An object-oriented representation of a NHibernate query. - - - An IQuery instance is obtained by calling . - Key features of this interface include: - - - Paging: A particular page of the result set may be selected by calling - , . The generated SQL - depends on the capabilities of the . Some - Dialects are for databases that have built in paging (LIMIT) and those capabilities - will be used to limit the number of records returned by the SQL statement. - If the database does not support LIMITs then all of the records will be returned, - but the objects created will be limited to the specific results requested. - - - Named parameters - - - Ability to return 'read-only' entities - - - - Named query parameters are tokens of the form :name in the query string. For example, a - value is bound to the Int32 parameter :foo by calling: - - SetParameter("foo", foo, NHibernateUtil.Int32); - - A name may appear multiple times in the query string. - - - Unnamed parameters ? are also supported. To bind a value to an unnamed - parameter use a Set method that accepts an Int32 positional argument - numbered from - zero. - - - You may not mix and match unnamed parameters and named parameters in the same query. - - - Queries are executed by calling or . A query - may be re-executed by subsequent invocations. Its lifespan is, however, bounded by the lifespan - of the ISession that created it. - - - Implementors are not intended to be threadsafe. - - - - - - Return the query results as an . If the query contains multiple results - per row, the results are returned in an instance of object[]. - - -

- Entities returned as results are initialized on demand. The first SQL query returns - identifiers only. -

-

- This is a good strategy to use if you expect a high number of the objects - returned to be already loaded in the or in the 2nd level cache. -

-
-
- - - Strongly-typed version of . - - - - - - - Return the query results as an . If the query contains multiple results per row, - the results are returned in an instance of object[]. - - The filled with the results. - - This is a good strategy to use if you expect few of the objects being returned are already loaded - or if you want to fill the 2nd level cache. - - - - - Return the query results an place them into the . - - The to place the results in. - - - - Strongly-typed version of . - - - - - Convenience method to return a single instance that matches - the query, or null if the query returns no results. - - the single result or - - Thrown when there is more than one matching result. - - - - - Strongly-typed version of . - - - - - Execute the update or delete statement. - - The number of entities updated or deleted. - - - - Set the maximum number of rows to retrieve. - - The maximum number of rows to retreive. - - - - Sets the first row to retrieve. - - The first row to retreive. - - - - Set the read-only mode for entities (and proxies) loaded by this query. This setting - overrides the default setting for the session (see ). - - - - Read-only entities can be modified, but changes are not persisted. They are not - dirty-checked and snapshots of persistent state are not maintained. - - - When a proxy is initialized, the loaded entity will have the same read-only setting - as the uninitialized proxy, regardless of the session's current setting. - - - The read-only setting has no impact on entities or proxies returned by the criteria - that existed in the session before the criteria was executed. - - - - If true, entities (and proxies) loaded by the query will be read-only. - - this (for method chaining) - - - - - Enable caching of this query result set. - - Should the query results be cacheable? - - - Set the name of the cache region. - The name of a query cache region, or - for the default query cache - - - - The timeout for the underlying ADO query - - - - - Set a fetch size for the underlying ADO query. - the fetch size - - - - Set the lockmode for the objects idententified by the - given alias that appears in the FROM clause. - - alias a query alias, or this for a collection filter - - - - Add a comment to the generated SQL. - a human-readable string - - - - Override the current session flush mode, just for this query. - - - - Override the current session cache mode, just for this query. - The cache mode to use. - this (for method chaining) - - - - Bind a value to an indexed parameter. - - Position of the parameter in the query, numbered from 0 - The possibly null parameter value - The NHibernate type - - - - Bind a value to a named query parameter - - The name of the parameter - The possibly null parameter value - The NHibernate . - - - - Bind a value to an indexed parameter. - - Position of the parameter in the query, numbered from 0 - The possibly null parameter value - The parameter's - - - - Bind a value to a named query parameter - - The name of the parameter - The possibly null parameter value - The parameter's - - - - Bind a value to an indexed parameter, guessing the NHibernate type from - the class of the given object. - - The position of the parameter in the query, numbered from 0 - The non-null parameter value - - - - Bind a value to a named query parameter, guessing the NHibernate - from the class of the given object. - - The name of the parameter - The non-null parameter value - - - - Bind multiple values to a named query parameter. This is useful for binding a list - of values to an expression such as foo.bar in (:value_list) - - The name of the parameter - A collection of values to list - The NHibernate type of the values - - - - Bind multiple values to a named query parameter, guessing the NHibernate - type from the class of the first object in the collection. This is useful for binding a list - of values to an expression such as foo.bar in (:value_list) - - The name of the parameter - A collection of values to list - - - - Bind the property values of the given object to named parameters of the query, - matching property names with parameter names and mapping property types to - NHibernate types using heuristics. - - Any PONO - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a array to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a array. - - - - Bind an instance of a array to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a array. - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - A non-null instance of a . - The name of the parameter - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a persistent enumeration class to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a persistent enumeration - - - - Bind an instance of a persistent enumeration class to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a persistent enumeration - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to an indexed parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The position of the parameter in the query string, numbered from 0 - An instance of a . - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - An instance of a . - - - - Bind an instance of a mapped persistent class to an indexed parameter. - - Position of the parameter in the query string, numbered from 0 - A non-null instance of a persistent class - - - - Bind an instance of a mapped persistent class to a named parameter. - - The name of the parameter - A non-null instance of a persistent class - - - - Set a strategy for handling the query results. This can be used to change - "shape" of the query result. - - - - - Get a enumerable that when enumerated will execute - a batch of queries in a single database roundtrip - - - - - - - Get an IFutureValue instance, whose value can be retrieved through - its Value property. The query is not executed until the Value property - is retrieved, which will execute other Future queries as well in a - single roundtrip - - - - - - - The query string - - - - - The NHibernate types of the query result set. - - - - Return the HQL select clause aliases (if any) - An array of aliases as strings - - - - The names of all named parameters of the query - - The parameter names, in no particular order - - - - Will entities (and proxies) returned by the query be loaded in read-only mode? - - - - If the query's read-only setting is not initialized (with ), - the value of the session's property is - returned instead. - - - The value of this property has no effect on entities or proxies returned by the - query that existed in the session before the query was executed. - - - - true if entities and proxies loaded by the query will be put in read-only mode, otherwise false. - - - - - - Perform parameter validation. Used prior to executing the encapsulated query. - - - if true, the first ? will not be verified since - its needed for e.g. callable statements returning a out parameter - - - - - Guesses the from the param's value. - - The object to guess the of. - An for the object. - - Thrown when the param is null because the - can't be guess from a null value. - - - - - Guesses the from the . - - The to guess the of. - An for the . - - Thrown when the clazz is null because the - can't be guess from a null type. - - - - - Warning: adds new parameters to the argument by side-effect, as well as mutating the query string! - - - - - Warning: adds new parameters to the argument by side-effect, as well as mutating the query string! - - - - - - - Override the current session cache mode, just for this query. - - The cache mode to use. - this (for method chaining) - - - - - - - Warning: adds new parameters to the argument by side-effect, as well as mutating the query expression tree! - - - - Functionality common to stateless and stateful sessions - - - - Implementation of the interface for collection filters. - - - - - Default implementation of the , - for "ordinary" HQL queries (not collection filters) - - - - - - Implementation of the interface - - - - - Criteria is a simplified API for retrieving entities by composing - objects. - - - - Using criteria is a very convenient approach for functionality like "search" screens - where there is a variable number of conditions to be placed upon the result set. - - - The Session is a factory for ICriteria. Expression instances are usually obtained via - the factory methods on . eg: - - - IList cats = session.CreateCriteria(typeof(Cat)) - .Add(Expression.Like("name", "Iz%")) - .Add(Expression.Gt("weight", minWeight)) - .AddOrder(Order.Asc("age")) - .List(); - - You may navigate associations using - or . eg: - - IList<Cat> cats = session.CreateCriteria<Cat> - .CreateCriteria("kittens") - .Add(Expression.like("name", "Iz%")) - .List<Cat>(); - - - You may specify projection and aggregation using Projection instances obtained - via the factory methods on Projections. eg: - - IList<Cat> cats = session.CreateCriteria<Cat> - .SetProjection( - Projections.ProjectionList() - .Add(Projections.RowCount()) - .Add(Projections.Avg("weight")) - .Add(Projections.Max("weight")) - .Add(Projections.Min("weight")) - .Add(Projections.GroupProperty("color"))) - .AddOrder(Order.Asc("color")) - .List<Cat>(); - - - - - - - Used to specify that the query results will be a projection (scalar in - nature). Implicitly specifies the projection result transformer. - - The projection representing the overall "shape" of the - query results. - This instance (for method chaining) - - - The individual components contained within the given - determines the overall "shape" of the query result. - - - - - - Add an Expression to constrain the results to be retrieved. - - - - - - - An an Order to the result set - - - - - - Specify an association fetching strategy. Currently, only - one-to-many and one-to-one associations are supported. - - A dot separated property path. - The Fetch mode. - - - - - Set the lock mode of the current entity - - the lock mode - - - - - Set the lock mode of the aliased entity - - an alias - the lock mode - - - - - Join an association, assigning an alias to the joined entity - - - - - - - - Join an association using the specified join-type, assigning an alias to the joined - association - - - - The type of join to use. - this (for method chaining) - - - - Join an association using the specified join-type, assigning an alias to the joined - association - - - - The type of join to use. - The criteria to be added to the join condition (ON clause) - this (for method chaining) - - - - Create a new , "rooted" at the associated entity - - - - - - - Create a new , "rooted" at the associated entity, - using the specified join type. - - A dot-separated property path - The type of join to use - The created "sub criteria" - - - - Create a new , "rooted" at the associated entity, - assigning the given alias - - - - - - - - Create a new , "rooted" at the associated entity, - assigning the given alias and using the specified join type. - - A dot-separated property path - The alias to assign to the joined association (for later reference). - The type of join to use. - The created "sub criteria" - - - - Create a new , "rooted" at the associated entity, - assigning the given alias and using the specified join type. - - A dot-separated property path - The alias to assign to the joined association (for later reference). - The type of join to use. - The criteria to be added to the join condition (ON clause) - The created "sub criteria" - - - - Set a strategy for handling the query results. This determines the - "shape" of the query result set. - - - - - - - - - - Set a limit upon the number of objects to be retrieved - - - - - - Set the first result to be retrieved - - - - - Set a fetch size for the underlying ADO query. - the fetch size - this (for method chaining) - - - - Set a timeout for the underlying ADO.NET query - - - - - - - Enable caching of this query result set - - - - - - - Set the name of the cache region. - - the name of a query cache region, or - for the default query cache - - - - Add a comment to the generated SQL. - a human-readable string - this (for method chaining) - - - Override the flush mode for this particular query. - The flush mode to use. - this (for method chaining) - - - Override the cache mode for this particular query. - The cache mode to use. - this (for method chaining) - - - - Get the results - - - - - - Convenience method to return a single instance that matches - the query, or null if the query returns no results. - - the single result or - - If there is more than one matching result - - - - - Get a enumerable that when enumerated will execute - a batch of queries in a single database roundtrip - - - - - - - Get an IFutureValue instance, whose value can be retrieved through - its Value property. The query is not executed until the Value property - is retrieved, which will execute other Future queries as well in a - single roundtrip - - - - - - - Set the read-only mode for entities (and proxies) loaded by this Criteria. This - setting overrides the default for the session (see ). - - - - To set the default read-only setting for entities and proxies that are loaded - into the session, see . - - - Read-only entities can be modified, but changes are not persisted. They are not - dirty-checked and snapshots of persistent state are not maintained. - - - When a proxy is initialized, the loaded entity will have the same read-only setting - as the uninitialized proxy has, regardless of the session's current setting. - - - The read-only setting has no impact on entities or proxies returned by the criteria - that existed in the session before the criteria was executed. - - - - If true, entities (and proxies) loaded by the criteria will be read-only. - - this (for method chaining) - - - - - - Get the results and fill the - - The list to fill with the results. - - - - Strongly-typed version of . - - - - - Strongly-typed version of . - - - - - Clear all orders from criteria. - - - - - Allows to get a sub criteria by path. - Will return null if the criteria does not exists. - - The path. - - - - Alows to get a sub criteria by alias. - Will return null if the criteria does not exists - - The alias. - - - - - Gets the root entity type if available, throws otherwise - - - This is an NHibernate specific method, used by several dependent - frameworks for advance integration with NHibernate. - - - - - Get the alias of the entity encapsulated by this criteria instance. - - The alias for the encapsulated entity. - - - - Was the read-only mode explicitly initialized? - - true if the read-only mode was explicitly initialized, otherwise false. - - /// - - - - Will entities (and proxies) loaded by this Criteria be put in read-only mode? - - - - If the read-only setting was not initialized, then the value of the session's - property is returned instead. - - - The read-only setting has no impact on entities or proxies returned by the - Criteria that existed in the session before the Criteria was executed. - - - - true if entities and proxies loaded by the criteria will be put in read-only mode, - otherwise false. - - - - - - - - - Override the cache mode for this particular query. - The cache mode to use. - this (for method chaining) - - - - - - - - - Override the cache mode for this particular query. - The cache mode to use. - this (for method chaining) - - - - The Clone is supported only by a root criteria. - - The clone of the root criteria. - - - - Named query in "detached mode" where the NHibernate session is not available. - - - - - - - - - Create a new instance of for a named query string defined in the mapping file. - - The name of a query defined externally. - - The query can be either in HQL or SQL format. - - - - - Get an executable instance of , to actually run the query. - - - - - Creates a new DetachedNamedQuery that is a deep copy of the current instance. - - The clone. - - - - Get the query name. - - - - - Query in "detached mode" where the NHibernate session is not available. - - - - - - - - Create a new instance of for the given query string. - - A hibernate query string - - - - Get an executable instance of , to actually run the query. - - - - - Creates a new DetachedQuery that is a deep copy of the current instance. - - The clone. - - - - Get the HQL string. - - - - - Provides an wrapper over the results of an . - - - This is the IteratorImpl in H2.0.3 - - - - - Create an wrapper over an . - - The to enumerate over. - The used to create the . - The to use to load objects. - - The s contained in the . - The names of the columns in the . - The that should be applied to the . - Instantiator of the result holder (used for "select new SomeClass(...)" queries). - - The should already be positioned on the first record in . - - - - - Returns an enumerator that can iterate through the query results. - - - An that can be used to iterate through the query results. - - - - - Advances the enumerator to the next element of the query results. - - - if the enumerator was successfully advanced to the next query results - ; if the enumerator has passed the end of the query results. - - - - - A flag to indicate if Dispose() has been called. - - - - - Finalizer that ensures the object is correctly disposed of. - - - - - Takes care of freeing the managed and unmanaged resources that - this class is responsible for. - - - - - Takes care of freeing the managed and unmanaged resources that - this class is responsible for. - - Indicates if this EnumerableImpl is being Disposed of or Finalized. - - The command is closed and the reader is disposed. This allows other ADO.NET - related actions to occur without needing to move all the way through the - EnumerableImpl. - - - - - Gets the current element in the query results. - - - The current element in the query results which is either an object or - an object array. - - - If the only returns one type of Entity then an object will - be returned. If this is a multi-column resultset then an object array will be - returned. - - - - - Subquery type enumeration - - - - exact - - - all - - - some - - - - Converts lambda expressions to NHibernate criterion/order - - - - - Invoke the expression to extract its runtime value - - - - - Retrieves the projection for the expression - - - - - Retrieves the name of the property from a member expression - - An expression tree that can contain either a member, or a conversion from a member. - If the member is referenced from a null valued object, then the container is treated as an alias. - The name of the member property - - - - Retrieves the name of the property from a member expression (without leading member access) - - - - - Retrieves a detached criteria from an appropriate lambda expression - - Expresson for detached criteria using .As<>() extension"/> - Evaluated detached criteria - - - - Convert a lambda expression to NHibernate ICriterion - - The type of the lambda expression - The lambda expression to convert - NHibernate ICriterion - - - - Convert a lambda expression to NHibernate ICriterion - - The lambda expression to convert - NHibernate ICriterion - - - - Convert a lambda expression to NHibernate Order - - The type of the lambda expression - The lambda expression to convert - The appropriate order delegate (order direction) - NHibernate Order - - - - Convert a lambda expression to NHibernate Order - - The lambda expression to convert - The appropriate order delegate (order direction) - NHibernate Order - - - - Convert a lambda expression to NHibernate Order - - The lambda expression to convert - The appropriate order delegate (order direction) - NHibernate Order - - - - Convert a lambda expression to NHibernate Order - - The lambda expression to convert - The appropriate order delegate (order direction) - The appropriate order delegate (order direction) - NHibernate Order - - - - Convert a lambda expression to NHibernate subquery AbstractCriterion - - type of member expression - type of subquery - lambda expression to convert - NHibernate.ICriterion.AbstractCriterion - - - - Convert a lambda expression to NHibernate subquery AbstractCriterion - - type of subquery - lambda expression to convert - NHibernate.ICriterion.AbstractCriterion - - - - Register a custom method for use in a QueryOver expression - - Lambda expression demonstrating call of custom method - function to convert MethodCallExpression to ICriterion - - - - Register a custom projection for use in a QueryOver expression - - Lambda expression demonstrating call of custom method - function to convert MethodCallExpression to IProjection - - - - Register a custom projection for use in a QueryOver expression - - Lambda expression demonstrating call of custom method - function to convert MethodCallExpression to IProjection - - - - Retreive the property name from a supplied PropertyProjection - Note: throws is the supplied IProjection is not a PropertyProjection - - - - - Warning: adds new parameters to the argument by side-effect, as well as mutating the query expression tree! - - - - - - - - - Type definition of Filter. Filter defines the user's view into enabled dynamic filters, - allowing them to set filter parameter values. - - - - - Set the named parameter's value list for this filter. - - The parameter's name. - The values to be applied. - This FilterImpl instance (for method chaining). - - - - Set the named parameter's value list for this filter. Used - in conjunction with IN-style filter criteria. - - The parameter's name. - The values to be expanded into an SQL IN list. - This FilterImpl instance (for method chaining). - - - - Set the named parameter's value list for this filter. Used - in conjunction with IN-style filter criteria. - - The parameter's name. - The values to be expanded into an SQL IN list. - This FilterImpl instance (for method chaining). - - - - Perform validation of the filter state. This is used to verify the - state of the filter after its enablement and before its use. - - - - - - Get the name of this filter. - - This filter's name. - - - - Get the filter definition containing additional information about the - filter (such as default-condition and expected parameter names/types). - - The filter definition - - - - Set the named parameter's value for this filter. - - The parameter's name. - The value to be applied. - This FilterImpl instance (for method chaining). - - - - Set the named parameter's value list for this filter. Used - in conjunction with IN-style filter criteria. - - The parameter's name. - The values to be expanded into an SQL IN list. - This FilterImpl instance (for method chaining). - - - - Set the named parameter's value list for this filter. Used - in conjunction with IN-style filter criteria. - - The parameter's name. - The values to be expanded into an SQL IN list. - This FilterImpl instance (for method chaining). - - - - Perform validation of the filter state. This is used to verify the - state of the filter after its enablement and before its use. - - - - - Get the name of this filter. - - - - - Helper methods for rendering log messages and exception messages - - - - - Generate small message that can be used in traces and exception messages. - - The to create the string from. - The identifier of the object. - A descriptive in the format of [classname#id] - - - - Generate small message that can be used in traces and exception messages. - - The for the class in question. - The identifier of the object. - The . - A descriptive in the format of [classname#id] - - - - Generate small message that can be used in traces and exception messages. - - The for the class in question. - The identifier of the object. - The . - The NHibernate type of the identifier. - A descriptive in the format of [classname#id] - - - - Generate small message that can be used in traces and exception messages. - - The for the class in question - The id - A descriptive in the form [FooBar#id] - - - - Generate small message that can be used in traces and exception messages. - - The for the class in question - A descriptive in the form [FooBar] - - - - Generate small message that can be used in traces and exception messages. - - The for the class in question - The id - A descriptive in the form [collectionrole#id] - - - - Generate small message that can be used in traces and exception messages. - - The for the class in question - The id - A descriptive in the form [collectionrole#id] - - - - Generate an info message string relating to a given property value - for an entity. - - The entity name - The name of the property - The property value. - An info string, in the form [Foo.bars#1] - - - - Generate an info message string relating to a particular managed - collection. Attempts to intelligently handle property-refs issues - where the collection key is not the same as the owner key. - - The persister for the collection - The collection itself - The collection key - The session - An info string, in the form [Foo.bars#1] - - - - Generate an info message string relating to a particular managed - collection. - - The persister for the collection - The id value of the owner - The session factory - An info string, in the form [Foo.bars#1] - - - - Generate an info message string relating to a particular managed collection. - - The persister for the collection - The id value of the owner - The session factory - An info string, in the form [Foo.bars#1] - - - - Generate an info message string relating to a particular entity, - based on the given entityName and id. - - The defined entity name. - The entity id value. - An info string, in the form [FooBar#1]. - - - - Combines several queries into a single DB call - - - - - Get all the results - - - - - Adds the specified criteria to the query. The result will be contained in a - - Return results in a - The criteria. - - - - - Adds the specified criteria to the query. The result will be contained in a - - The criteria. - - - - - Adds the specified criteria to the query, and associates it with the given key. The result will be contained in a - - The key - The criteria - - - - - Adds the specified detached criteria. The result will be contained in a - - The detached criteria. - - - - - Adds the specified detached criteria, and associates it with the given key. The result will be contained in a - - The key - The detached criteria - - - - - Adds the specified criteria to the query - - The criteria. - - - - - Adds the specified criteria to the query, and associates it with the given key - - The key - The criteria - - - - - Adds the specified detached criteria. - - The detached criteria. - - - - - Adds the specified detached criteria, and associates it with the given key - - The key - The detached criteria - - - - - Adds the specified IQueryOver to the query. The result will be contained in a - - Return results in a - The IQueryOver. - - - - - Adds the specified IQueryOver to the query. The result will be contained in a - - The IQueryOver. - - - - - Adds the specified IQueryOver to the query. The result will be contained in a - - The IQueryOver. - - - - - Adds the specified IQueryOver to the query, and associates it with the given key. The result will be contained in a - - The key - The IQueryOver - - - - - Adds the specified IQueryOver to the query, and associates it with the given key. The result will be contained in a - - The key - The IQueryOver - - - - - Sets whatevert this criteria is cacheable. - - if set to true [cachable]. - - - - Set the cache region for thie criteria - - The region - - - - - Force a cache refresh - - - - - - - Sets the result transformer for all the results in this mutli criteria instance - - The result transformer. - - - - - Returns the result of one of the Criteria based on the key - - The key - - - - - Initializes a new instance of the class. - - The session. - The factory. - - - Return a cacheable "disassembled" representation of the object. - the value to cache - the session - optional parent entity object (needed for collections) - the disassembled, deep cloned state - - - Reconstruct the object from its cached "disassembled" state. - the disassembled state from the cache - the session - the parent entity object - the the object - - - - Called before assembling a query result set from the query cache, to allow batch fetching - of entities missing from the second-level cache. - - - - - Combines sevaral queries into a single database call - - - - - Get all the results - - - The result is a IList of IList. - - - - - Adds the specified query to the query. The result will be contained in a - - Return results in a - The query. - The instance for method chain. - - - - Add the specified HQL query to the multi query. The result will be contained in a - - The query - - - - Add the specified HQL query to the multi query, and associate it with the given key. The result will be contained in a - - The key to get results of the specific query. - The query - The instance for method chain. - - - - - Add the specified HQL Query to the multi query, and associate it with the given key. The result will be contained in a - - The key to get results of the specific query. - The query - The instance for method chain. - - - - - Add the specified HQL query to the multi query. The result will be contained in a - - The query - The instance for method chain. - - - - Add a named query to the multi query. The result will be contained in a - - The query - The instance for method chain. - - - - Add a named query to the multi query, and associate it with the given key. The result will be contained in a - - The key to get results of the specific query. - The query - The instance for method chain. - - - - - Add the specified HQL query to the multi query, and associate it with the given key - - The key to get results of the specific query. - The query - The instance for method chain. - - - - - Add the specified HQL query to the multi query - - The query - The instance for method chain. - - - - Add the specified HQL Query to the multi query, and associate it with the given key - - The key to get results of the specific query. - The query - The instance for method chain. - - - - - Add the specified HQL query to the multi query - - The instance for method chain. - - - - Add a named query to the multi query - - The query - The instance for method chain. - - - - Add a named query to the multi query, and associate it with the given key - - The key to get results of the specific query. - The query - The instance for method chain. - - - - - Enable caching of this query result set. - - Should the query results be cacheable? - The instance for method chain. - - - Set the name of the cache region. - The name of a query cache region, or - for the default query cache - The instance for method chain. - - - Should the query force a refresh of the specified query cache region? - This is particularly useful in cases where underlying data may have been - updated via a separate process (i.e., not modified through Hibernate) and - allows the application to selectively refresh the query cache regions - based on its knowledge of those events. - Should the query result in a forcible refresh of - the query cache? - The instance for method chain. - - - - The timeout for the underlying ADO query - - - The instance for method chain. - - - - Bind a value to a named query parameter - - The name of the parameter - The possibly null parameter value - The NHibernate . - The instance for method chain. - - - - Bind a value to a named query parameter, guessing the NHibernate - from the class of the given object. - - The name of the parameter - The non-null parameter value - The instance for method chain. - - - - Bind multiple values to a named query parameter. This is useful for binding a list - of values to an expression such as foo.bar in (:value_list) - - The name of the parameter - A collection of values to list - The Hibernate type of the values - The instance for method chain. - - - - Bind multiple values to a named query parameter, guessing the Hibernate - type from the class of the first object in the collection. This is useful for binding a list - of values to an expression such as foo.bar in (:value_list) - - The name of the parameter - A collection of values to list - The instance for method chain. - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - The instance for method chain. - - - - Bind an instance of a array to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a array. - The instance for method chain. - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - The instance for method chain. - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - The instance for method chain. - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - The instance for method chain. - - - - Bind an instance of a to a named parameter - using an NHibernate . - - A non-null instance of a . - The name of the parameter - The instance for method chain. - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - The instance for method chain. - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - The instance for method chain. - - - - Bind an instance of a mapped persistent class to a named parameter. - - The name of the parameter - A non-null instance of a persistent class - The instance for method chain. - - - - Bind an instance of a persistent enumeration class to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a persistent enumeration - The instance for method chain. - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - The instance for method chain. - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - The instance for method chain. - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - The instance for method chain. - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - The instance for method chain. - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - The instance for method chain. - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - An instance of a . - The instance for method chain. - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - The instance for method chain. - - - - Bind an instance of a to a named parameter - using an NHibernate . - - The name of the parameter - A non-null instance of a . - The instance for method chain. - - - - Override the current session flush mode, just for this query. - - The instance for method chain. - - - - Set a strategy for handling the query results. This can be used to change - "shape" of the query result. - - - The will be applied after the transformer of each single query. - - The instance for method chain. - - - - Returns the result of one of the query based on the key - - The key - The instance for method chain. - - - - Return the query results of all the queries - - - - - - - an actual entity object, not a proxy! - - - - - - Concrete implementation of a SessionFactory. - - - Has the following responsibilities: - - - Caches configuration settings (immutably) - - Caches "compiled" mappings - ie. - and - - - Caches "compiled" queries (memory sensitive cache) - - - Manages PreparedStatements/IDbCommands - how true in NH? - - - Delegates IDbConnection management to the - - - Factory for instances of - - - - This class must appear immutable to clients, even if it does all kinds of caching - and pooling under the covers. It is crucial that the class is not only thread safe - , but also highly concurrent. Synchronization must be used extremely sparingly. - - - - - - - - - - - NH specific : to avoid the use of entityName for generic implementation - - this is a shortcut. - - - - Gets the hql query identified by the name. - - The name of that identifies the query. - - A hql query or if the named - query does not exist. - - - - Get the return aliases of a query - - - - Return the names of all persistent (mapped) classes that extend or implement the - given class or interface, accounting for implicit/explicit polymorphism settings - and excluding mapped subclasses/joined-subclasses of other classes in the result. - - - - - - - - - - - Closes the session factory, releasing all held resources. - - cleans up used cache regions and "stops" the cache provider. - close the ADO.NET connection - - - - - Get a new stateless session. - - - Get a new stateless session for the given ADO.NET connection. - - - - - - - - - Statistics SPI - - - Get the statistics for this session factory - - - - Gets the ICurrentSessionContext instance attached to this session factory. - - - - - Delegate to handle the scenario of an entity not found by a specified id. - - - - - Delegate method to handle the scenario of an entity not found. - - The entityName (may be the class fullname) - The requested id not founded. - - - - Resolves lookups and deserialization. - - - - This is used heavily be Deserialization. Currently a SessionFactory is not really serialized. - All that is serialized is it's name and uid. During Deserializaiton the serialized SessionFactory - is converted to the one contained in this object. So if you are serializing across AppDomains - you should make sure that "name" is specified for the SessionFactory in the hbm.xml file and that the - other AppDomain has a configured SessionFactory with the same name. If - you are serializing in the same AppDomain then there will be no problem because the uid will - be in this object. - - - - - - - - - Adds an Instance of the SessionFactory to the local "cache". - - The identifier of the ISessionFactory. - The name of the ISessionFactory. - The ISessionFactory. - The configured properties for the ISessionFactory. - - - - Removes the Instance of the SessionFactory from the local "cache". - - The identifier of the ISessionFactory. - The name of the ISessionFactory. - The configured properties for the ISessionFactory. - - - - Returns a Named Instance of the SessionFactory from the local "cache" identified by name. - - The name of the ISessionFactory. - An instantiated ISessionFactory. - - - - Returns an Instance of the SessionFactory from the local "cache" identified by UUID. - - The identifier of the ISessionFactory. - An instantiated ISessionFactory. - - - - We always set the result to use a thread static variable, on the face of it, - it looks like it is not a valid choice, since ASP.Net and WCF may decide to switch - threads on us. But, since SessionIdLoggingContext is only used inside NH calls, and since - NH calls are never async, this isn't an issue for us. - In addition to that, attempting to match to the current context has proven to be performance hit. - - - - - Concrete implementation of an , also the central, organizing component - of NHibernate's internal implementation. - - - Exposes two interfaces: itself, to the application and - to other components of NHibernate. This is where the - hard stuff is... This class is NOT THREADSAFE. - - - - - Constructor used to recreate the Session during the deserialization. - - - - - This is needed because we have to do some checking before the serialization process - begins. I don't know how to add logic in ISerializable.GetObjectData and have .net - write all of the serializable fields out. - - - - - Verify the ISession can be serialized and write the fields to the Serializer. - - - - - The fields are marked with [NonSerializable] as just a point of reference. This method - has complete control and what is serialized and those attributes are ignored. However, - this method should be in synch with the attributes for easy readability. - - - - - Once the entire object graph has been deserialized then we can hook the - collections, proxies, and entities back up to the ISession. - - - - - - Constructor used for OpenSession(...) processing, as well as construction - of sessions for GetCurrentSession(). - - The user-supplied connection to use for this session. - The factory from which this session was obtained - NOT USED - The timestamp for this session - The interceptor to be applied to this session - The entity-mode for this session - Should we auto flush before completion of transaction - Should we auto close after completion of transaction - Should we ignore exceptions in IInterceptor.BeforeTransactionCompletion - The mode by which we should release JDBC connections. - - - - Constructor used in building "child sessions". - - The parent Session - The entity mode - - - - Close the session and release all resources - - Do not call this method inside a transaction scope, use Dispose instead, since - Close() is not aware of distributed transactions - - - - - - Ensure that the locks are downgraded to - and that all of the softlocks in the have - been released. - - - - - Save a transient object. An id is generated, assigned to the object and returned - - - - - - - Save a transient object with a manually assigned ID - - - - - - - Delete a persistent object - - - - - Delete a persistent object (by explicit entity name) - - - - - - - - - - - - Give the interceptor an opportunity to override the default instantiation - - - - - - - Force an immediate flush - - - Cascade merge an entity instance - - - Cascade persist an entity instance - - - Cascade persist an entity instance during the flush process - - - Cascade refresh an entity instance - - - Cascade delete an entity instance - - - - detect in-memory changes, determine if the changes are to tables - named in the query and, if so, complete execution the flush - - - - - - - Load the data for the object with the specified id into a newly created object - using "for update", if supported. A new key will be assigned to the object. - This should return an existing proxy where appropriate. - - If the object does not exist in the database, an exception is thrown. - - - - - - - Thrown when the object with the specified id does not exist in the database. - - - - - Load the data for the object with the specified id into a newly created object - using "for update", if supported. A new key will be assigned to the object. - This should return an existing proxy where appropriate. - - If the object does not exist in the database, null is returned. - - - - - - - - - Load the data for the object with the specified id into a newly created object. - This is only called when lazily initializing a proxy. - Do NOT return a proxy. - - - - - Return the object with the specified id or throw exception if no row with that id exists. Defer the load, - return a new proxy or return an existing proxy if possible. Do not check if the object was deleted. - - - - - - - - This can be called from commit() or at the start of a List() method. - - Perform all the necessary SQL statements in a sensible order, to allow - users to repect foreign key constraints: - - Inserts, in the order they were performed - Updates - Deletion of collection elements - Insertion of collection elements - Deletes, in the order they were performed - - - - Go through all the persistent objects and look for collections they might be - holding. If they had a nonpersistable collection, substitute a persistable one - - - - - - Not for internal use - - - - - - - Get the id value for an object that is actually associated with the session. - This is a bit stricter than GetEntityIdentifierIfNotUnsaved(). - - - - - - - called by a collection that wants to initialize itself - - - - - - - - - - Finalizer that ensures the object is correctly disposed of. - - - - - Perform a soft (distributed transaction aware) close of the session - - - - - Takes care of freeing the managed and unmanaged resources that - this class is responsible for. - - Indicates if this Session is being Disposed of or Finalized. - - If this Session is being Finalized (isDisposing==false) then make sure not - to call any methods that could potentially bring this Session back to life. - - - - - remove any hard references to the entity that are held by the infrastructure - (references held by application or other persistant instances are okay) - - - - - - - - - - - - - - - - - - - - Get the ActionQueue for this session - - - - - - - Gets if the ISession is connected. - - - if the ISession is connected. - - - An ISession is considered connected if there is an (regardless - of its state) or if it the field connect is true. Meaning that it will connect - at the next operation that requires a connection. - - - - Get the statistics for this session. - - - Retrieves the configured event listeners from this event source. - - - - - - - Implements SQL query passthrough - - - An example mapping is: - - <sql-query-name name="mySqlQuery"> - <return alias="person" class="eg.Person" /> - SELECT {person}.NAME AS {person.name}, {person}.AGE AS {person.age}, {person}.SEX AS {person.sex} - FROM PERSON {person} WHERE {person}.NAME LIKE 'Hiber%' - </sql-query-name> - - - - - - Declare a "root" entity, without specifying an alias - - - - - Declare a "root" entity - - - - - Declare a "root" entity, specifying a lock mode - - - - - Declare a "root" entity, without specifying an alias - - - - - Declare a "root" entity - - - - - Declare a "root" entity, specifying a lock mode - - - - - Declare a "joined" entity - - - - - Declare a "joined" entity, specifying a lock mode - - - - - Declare a scalar query result - - - - - Use a predefined named ResultSetMapping - - - - Constructs a SQLQueryImpl given a sql query defined in the mappings. - The representation of the defined sql-query. - The session to which this SQLQueryImpl belongs. - Metadata about parameters found in the query. - - - - A command-oriented API for performing bulk operations against a database. - - - A stateless session does not implement a first-level cache nor - interact with any second-level cache, nor does it implement - transactional write-behind or automatic dirty checking, nor do - operations cascade to associated instances. Collections are - ignored by a stateless session. Operations performed via a - stateless session bypass NHibernate's event model and - interceptors. Stateless sessions are vulnerable to data - aliasing effects, due to the lack of a first-level cache. - - For certain kinds of transactions, a stateless session may - perform slightly faster than a stateful session. - - - - - Gets the stateless session implementation. - - - This method is provided in order to get the NHibernate implementation of the session from wrapper implementations. - Implementors of the interface should return the NHibernate implementation of this method. - - - An NHibernate implementation of the interface - - - - Close the stateless session and release the ADO.NET connection. - - - Insert an entity. - A new transient instance - The identifier of the instance - - - Insert a row. - The name of the entity to be inserted - A new transient instance - The identifier of the instance - - - Update an entity. - A detached entity instance - - - Update an entity. - The name of the entity to be updated - A detached entity instance - - - Delete an entity. - A detached entity instance - - - Delete an entity. - The name of the entity to be deleted - A detached entity instance - - - Retrieve a entity. - A detached entity instance - - - - Retrieve an entity. - - A detached entity instance - - - - Retrieve an entity, obtaining the specified lock mode. - - A detached entity instance - - - - Retrieve an entity, obtaining the specified lock mode. - - A detached entity instance - - - - Refresh the entity instance state from the database. - - The entity to be refreshed. - - - - Refresh the entity instance state from the database. - - The name of the entity to be refreshed. - The entity to be refreshed. - - - - Refresh the entity instance state from the database. - - The entity to be refreshed. - The LockMode to be applied. - - - - Refresh the entity instance state from the database. - - The name of the entity to be refreshed. - The entity to be refreshed. - The LockMode to be applied. - - - - Create a new instance of Query for the given HQL query string. - - Entities returned by the query are detached. - - - - Obtain an instance of for a named query string defined in - the mapping file. - - - The query can be either in HQL or SQL format. - Entities returned by the query are detached. - - - - - Create a new instance, for the given entity class, - or a superclass of an entity class. - - A class, which is persistent, or has persistent subclasses - The . - Entities returned by the query are detached. - - - - Create a new instance, for the given entity class, - or a superclass of an entity class, with the given alias. - - A class, which is persistent, or has persistent subclasses - The alias of the entity - The . - Entities returned by the query are detached. - - - - Create a new instance, for the given entity class, - or a superclass of an entity class. - - A class, which is persistent, or has persistent subclasses - The . - Entities returned by the query are detached. - - - - Create a new instance, for the given entity class, - or a superclass of an entity class, with the given alias. - - A class, which is persistent, or has persistent subclasses - The alias of the entity - The . - Entities returned by the query are detached. - - - - Create a new instance, for the given entity name. - - The entity name. - The . - Entities returned by the query are detached. - - - - Create a new instance, for the given entity name, - with the given alias. - - The entity name. - The alias of the entity - The . - Entities returned by the query are detached. - - - - Creates a new IQueryOver<T> for the entity class. - - The entity class - An ICriteria<T> object - - - - Creates a new IQueryOver<T> for the entity class. - - The entity class - An ICriteria<T> object - - - - Create a new instance of for the given SQL query string. - Entities returned by the query are detached. - - A SQL query - The - - - - Begin a NHibernate transaction - - A NHibernate transaction - - - - Begin a NHibernate transaction with the specified isolation level - - The isolation level - A NHibernate transaction - - - - Sets the batch size of the session - - The batch size. - The same instance of the session for methods chain. - - - - Returns the current ADO.NET connection associated with this instance. - - - If the session is using aggressive connection release (as in a - CMT environment), it is the application's responsibility to - close the connection returned by this call. Otherwise, the - application should not close the connection. - - - - Get the current NHibernate transaction. - - - - Is the IStatelessSession still open? - - - - - Is the IStatelessSession currently connected? - - - - - Gets the stateless session implementation. - - - This method is provided in order to get the NHibernate implementation of the session from wrapper implementations. - Implementors of the interface should return the NHibernate implementation of this method. - - - An NHibernate implementation of the interface - - - - Close the stateless session and release the ADO.NET connection. - - - Insert a entity. - A new transient instance - the identifier of the instance - - - Insert a row. - The entityName for the entity to be inserted - a new transient instance - the identifier of the instance - - - Update a entity. - a detached entity instance - - - Update a entity. - The entityName for the entity to be updated - a detached entity instance - - - Delete a entity. - a detached entity instance - - - Delete a entity. - The entityName for the entity to be deleted - a detached entity instance - - - Retrieve a entity. - a detached entity instance - - - Retrieve a entity. - - - a detached entity instance - - - - - Retrieve a entity, obtaining the specified lock mode. - - a detached entity instance - - - - Retrieve a entity, obtaining the specified lock mode. - - a detached entity instance - - - - Refresh the entity instance state from the database. - - The entity to be refreshed. - - - - Refresh the entity instance state from the database. - - The entityName for the entity to be refreshed. - The entity to be refreshed. - - - - Refresh the entity instance state from the database. - - The entity to be refreshed. - The LockMode to be applied. - - - - Refresh the entity instance state from the database. - - The entityName for the entity to be refreshed. - The entity to be refreshed. - The LockMode to be applied. - - - - Create a new instance, for the given entity class, - or a superclass of an entity class. - - A class, which is persistent, or has persistent subclasses - The . - Entities returned by the query are detached. - - - - Create a new instance, for the given entity class, - or a superclass of an entity class, with the given alias. - - A class, which is persistent, or has persistent subclasses - The alias of the entity - The . - Entities returned by the query are detached. - - - - Create a new instance, for the given entity name. - - The entity name. - The . - Entities returned by the query are detached. - - - - Create a new instance, for the given entity name, - with the given alias. - - The entity name. - The alias of the entity - The . - Entities returned by the query are detached. - - - - Begin a NHibernate transaction - - A NHibernate transaction - - - - Begin a NHibernate transaction with the specified isolation level - - The isolation level - A NHibernate transaction - - - - Finalizer that ensures the object is correctly disposed of. - - - - - Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. - - 2 - - - Get the current Hibernate transaction. - - - Contract for field interception handlers. - - - The the given field initialized for the entity to which we are bound? - The name of the field to check - True if the given field is initialized; otherwise false. - - - Forcefully mark the entity as being dirty. - - - Clear the internal dirty flag. - - - Intercept field set/get - - - Is the entity considered dirty? - True if the entity is dirty; otherwise false. - - - Use to associate the entity to which we are bound to the given session. - - - Is the entity to which we are bound completely initialized? - - - Get the entity-name of the field DeclaringType. - - - Get the MappedClass (field container). - - - Helper class for dealing with enhanced entity classes. - - - Marker value for uninitialized properties - - - Contract for controlling how lazy properties get initialized. - - - Initialize the property, and return its new value - - - - All joins are created as outer joins. An optimization in finds - joins that may be inner joined and calls on them. - 's will - then emit the correct HQL join. - - - - - Remove unwanted char-to-int conversions in binary expressions - - - The LINQ expression tree may contain unwanted type conversions that were not in the original expression written by the user. For example, - list.Where(someChar => someChar == 'A') becomes the equivalent of list.Where(someChar => (int)someChar == 55) in the expression - tree. Converting this directly to a HQL/SQL statement would yield CAST(x AS INT) which does not work in MSSQLSERVER, and possibly - other databases. - - - - - Remove redundant casts to the same type or to superclass (upcast) in , - and s - - - - - Applications of the string.Compare(a,b) and a.CompareTo(b) (for various types) - that are then immediately compared to 0 can be simplified by removing the - Compare/CompareTo method call. The comparison operator is then applied - directly to the arguments for the Compare/CompareTo call. - - - - - An AggregatingGroupBy is a query such as: - - from p in db.Products - group p by p.Category.CategoryId - into g - select new - { - g.Key, - MaxPrice = g.Max(p => p.UnitPrice) - }; - - - Where the grouping operation is being fully aggregated and hence does not create any form of hierarchy. - This class takes such queries, flattens out the re-linq sub-query and re-writes the outer select - - - - - - Detects if an expression tree contains naked QuerySourceReferenceExpression - - - - - An AggregatingGroupJoin is a query such as: - - from c in db.Customers - join o in db.Orders on c.CustomerId equals o.Customer.CustomerId into ords - join e in db.Employees on c.Address.City equals e.Address.City into emps - select new { c.ContactName, ords = ords.Count(), emps = emps.Count() }; - - where the results of the joins are being fully aggregated and hence do not create any form of hierarchy. - This class takes such expressions and turns them into this form: - - from c in db.Customers - select new - { - c.ContactName, - ords = (from o2 in db.Orders where o2.Customer.CustomerId == c.CustomerId select o2).Count(), - emps = (from e2 in db.Employees where e2.Address.City == c.Address.City select e2).Count() - }; - - - - - - Removes various result operators from a query so that they can be processed at the same - tree level as the query itself. - - - - - Rewrites expressions so that they sit in the outermost portion of the query. - - - - - Gets an of that were rewritten. - - - - - Gets the representing the type of data that the operator works upon. - - - - - Result of . - - - - - Gets an of implementations that were - rewritten. - - - - - Gets the representing the type of data that the operator works upon. - - - - - Builds HQL Equality nodes and used in joins - - - - - Performs the equivalent of a ToString() on an expression. Swaps out constants for - parameters so that, for example: - from c in Customers where c.City = "London" - generate the same key as - from c in Customers where c.City = "Madrid" - - - - - Locates constants in the expression tree and generates parameters for each one - - - - - If the querySource is a subquery, return the SelectClause's selector if it's - NewExpression. Otherwise, return null. - - - - - Represents a possible set of values for a computation. For example, an expression may - be null, it may be a non-null value, or we may even have a constant value that is known - precisely. This class contains operators that know how to combine these values with - each other. This class is intended to be used to provide static analysis of expressions - before we hit the database. As an example for future improvement, we could handle - ranges of numeric values. We can also improve this by handling operators such as the - comparison operators and arithmetic operators. They are currently handled by naive - null checks. - - - - - Verify that ExpressionType of both this and the other set is bool or nullable bool, - and return the negotiated type (nullable bool if either side is nullable). - - - - - Verify that ExpressionType is bool or nullable bool. - - - - - Identifies and names - using - all QueryModel query sources - - - It may seem expensive to do this as a separate visitation of the query model, but unfortunately - trying to identify query sources on the fly (i.e. while parsing the query model to generate - the HQL expression tree) means a query source may be referenced by a QuerySourceReference - before it has been identified - and named. - - - - - Analyze the select clause to determine what parts can be translated - fully to HQL, and some other properties of the clause. - - - - - The expression parts that can be converted to pure HQL. - - - - - If true after an expression have been analyzed, the - expression as a whole contain at least one method call which - cannot be converted to a registered function, i.e. it must - be executed client side. - - - - - Some conditional expressions can be redured to just their IfTrue or IfFalse part. - - - - - - Possible values of expression if there's set of values for the requested member expression. - For example, if we have an expression "3" and we request the state for "a.B.C", we'll - use "3" from Values since it won't exist in MemberExpressionValuesIfEmptyOuterJoined. - - - - - Stores the possible values of an expression that would result if the given member expression - string was emptily outer joined. For example a.B.C would result in "null" if we try to - outer join to B and there are no rows. Even if an expression tree does contain a particular - member experssion, it may not appear in this list. In that case, the emptily outer joined - value set for that member expression will be whatever's in Values instead. - - - - - Extract the from a given expression. - - The declaring-type of the method. - The method. - The of the no-generic method or the generic-definition for a generic-method. - - - - - Extract the from a given expression. - - The declaring-type of the method. - The method. - The of the method. - - - - Extract the from a given expression. - - The method. - The of the no-generic method or the generic-definition for a generic-method. - - - - - Extract the from a given expression. - - The method. - The of the method. - - - - Gets the field or property to be accessed. - - The declaring-type of the property. - The type of the property. - The expression representing the property getter. - The of the property. - - - - If debug logging is enabled, log a string such as "msg: expression.ToString()". - - - - - Replace all occurances of ConstantExpression where the value is an NHibernate - proxy with a ParameterExpression. The name of the parameter will be a string - representing the proxied entity, without initializing it. - - - - - Provides the main entry point to a LINQ query. - - - - - Associate unique names to query sources. The HQL AST parser will rename them anyway, but we need to - ensure uniqueness that is not provided by IQuerySource.ItemName. - - - - - Implementors define a strategy for transforming criteria query - results into the actual application-visible query result list. - - - - - - - - - - - - - - - - - - - - - Use the SqlMethods.Like() method in a Linq2NHibernate expression to generate - an SQL LIKE expression. (If you want to avoid depending on the NHibernate.Linq namespace, - you can define your own replica of this method. Any 2-argument method named Like in a class named SqlMethods - will be translated.) This method can only be used in Linq2NHibernate expression, and will throw - if called directly. - - - - - Walker for collections of values and many-to-many associations - - - - - Superclass of walkers for collection initializers - - - - - - - - Add on association (one-to-one, many-to-one, or a collection) to a list - of associations to be fetched by outerjoin (if necessary) - - - - - Add on association (one-to-one, many-to-one, or a collection) to a list - of associations to be fetched by outerjoin - - - - - Adds an association and extracts the aliases the association's 'with clause' is dependent on - - - - - For an entity class, return a list of associations to be fetched by outerjoin - - - - - For a collection role, return a list of associations to be fetched by outerjoin - - - - - For a collection role, return a list of associations to be fetched by outerjoin - - - - - For an entity class, add to a list of associations to be fetched - by outerjoin - - - - - For a component, add to a list of associations to be fetched by outerjoin - - - - - For a composite element, add to a list of associations to be fetched by outerjoin - - - - - Extend the path by the given property name - - - - - Get the join type (inner, outer, etc) or -1 if the - association should not be joined. Override on - subclasses. - - - - - Use an inner join if it is a non-null association and this - is the "first" join in a series - - - - - Does the mapping, and Hibernate default semantics, specify that - this association should be fetched by outer joining - - - - - Override on subclasses to enable or suppress joining - of certain association types - - - - - Used to detect circularities in the joined graph, note that - this method is side-effecty - - - - - Used to detect circularities in the joined graph, note that - this method is side-effecty - - - - - Should we join this association? - - - - - Generate a sequence of LEFT OUTER JOIN clauses for the given associations. - - - - - Count the number of instances of IJoinable which are actually - also instances of ILoadable, or are one-to-many associations - - - - - Count the number of instances of which - are actually also instances of - which are being fetched by outer join - - - - - Get the order by string required for collection fetching - - - - - Render the where condition for a (batch) load by identifier / collection key - - - - - Generate a select list of columns containing all properties of the entity classes - - - - - Uniquely identifier a foreign key, so that we don't - join it more than once, and create circularities - - - - - Loads a collection of values or a many-to-many association. - - - The collection persister must implement . For - other collections, create a customized subclass of - - - - - - Superclass for loaders that initialize collections - - - - - - - Implements logic for walking a tree of associated classes. - - - Generates an SQL select string containing all properties of those classes. - Tablse are joined using an ANSI-style left outer join. - - - - - Abstract superclass of object loading (and querying) strategies. - - -

- This class implements useful common functionality that concrete loaders would delegate to. - It is not intended that this functionality would be directly accessed by client code (Hence, - all methods of this class are declared protected or private.) This class relies heavily upon the - interface, which is the contract between this class and - s that may be loaded by it. -

-

- The present implementation is able to load any number of columns of entities and at most - one collection role per query. -

-
- -
- - - Indicates whether the dialect is able to add limit and/or offset clauses to . - Even if a dialect generally supports the addition of limit and/or offset clauses to SQL statements, - there may (custom) SQL statements where this is not possible, for example in case of SQL Server - stored procedure invocations. - - - - - What lock mode does this load entities with? - - A Collection of lock modes specified dynamically via the Query Interface - - - - - Append FOR UPDATE OF clause, if necessary. This - empty superclass implementation merely returns its first - argument. - - - - - Does this query return objects that might be already cached by - the session, whose lock mode may need upgrading. - - - - - - Modify the SQL, adding lock hints and comments, if necessary - - - - - Execute an SQL query and attempt to instantiate instances of the class mapped by the given - persister from each row of the DataReader. If an object is supplied, will attempt to - initialize that object. If a collection is supplied, attempt to initialize that collection. - - - - - Loads a single row from the result set. This is the processing used from the - ScrollableResults where no collection fetches were encountered. - - The result set from which to do the load. - The session from which the request originated. - The query parameters specified by the user. - Should proxies be generated - The loaded "row". - - - - - Read any collection elements contained in a single row of the result set - - - - - Determine the actual ResultTransformer that will be used to transform query results. - - The specified result transformer. - The actual result transformer. - - - - Are rows transformed immediately after being read from the ResultSet? - - The specified result transformer. - True, if getResultColumnOrRow() transforms the results; false, otherwise - - - - Get the actual object that is returned in the user-visible result list. - - - This empty implementation merely returns its first argument. This is - overridden by some subclasses. - - - - - For missing objects associated by one-to-one with another object in the - result set, register the fact that the the object is missing with the - session. - - - - - Read one collection element from the current row of the ADO.NET result set - - - - - If this is a collection initializer, we need to tell the session that a collection - is being initilized, to account for the possibility of the collection having - no elements (hence no rows in the result set). - - - - - Read a row of EntityKeys from the IDataReader into the given array. - - - Warning: this method is side-effecty. If an id is given, don't bother going - to the IDataReader - - - - - Check the version of the object in the IDataReader against - the object version in the session cache, throwing an exception - if the version numbers are different. - - - - - - Resolve any ids for currently loaded objects, duplications within the IDataReader, - etc. Instanciate empty objects to be initialized from the IDataReader. Return an - array of objects (a row of results) and an array of booleans (by side-effect) that determine - wheter the corresponding object should be initialized - - - - - The entity instance is already in the session cache - - - - - The entity instance is not in the session cache - - - - - Hydrate the state of an object from the SQL IDataReader, into - an array of "hydrated" values (do not resolve associations yet), - and pass the hydrated state to the session. - - - - - Determine the concrete class of an instance for the IDataReader - - - - - Advance the cursor to the first required row of the IDataReader - - - - - Should we pre-process the SQL string, adding a dialect-specific - LIMIT clause. - - - - - - - - Performs dialect-specific manipulations on the offset value before returning it. - This method is applicable for use in limit statements only. - - - - - Performs dialect-specific manipulations on the limit value before returning it. - This method is applicable for use in limit statements only. - - - - - Obtain an IDbCommand with all parameters pre-bound. Bind positional parameters, - named parameters, and limit parameters. - - - Creates an IDbCommand object and populates it with the values necessary to execute it against the - database to Load an Entity. - - The to use for the IDbCommand. - TODO: find out where this is used... - The SessionImpl this Command is being prepared in. - A CommandWrapper wrapping an IDbCommand that is ready to be executed. - - - - Some dialect-specific LIMIT clauses require the maximium last row number - (aka, first_row_number + total_row_count), while others require the maximum - returned row count (the total maximum number of rows to return). - - The selection criteria - The dialect - The appropriate value to bind into the limit clause. - - - - Fetch a IDbCommand, call SetMaxRows and then execute it, - advance to the first result and return an SQL IDataReader - - The to execute. - The to apply to the and . - true if result types need to be auto-discovered by the loader; false otherwise. - The to load in. - - An IDataReader advanced to the first record in RowSelection. - - - - Called by subclasses that load entities - - - - - Called by subclasses that batch load entities - - - - - Called by subclasses that load collections - - - - - Called by wrappers that batch initialize collections - - - - - Called by subclasses that batch initialize collections - - - - - Return the query results, using the query cache, called - by subclasses that implement cacheable queries - - - - - - - - - - Actually execute a query, ignoring the query cache - - - - - - - - Calculate and cache select-clause suffixes. Must be - called by subclasses after instantiation. - - - - - An array indicating whether the entities have eager property fetching - enabled. - - Eager property fetching indicators. - - - - An array of indexes of the entity that owns a one-to-one association - to the entity at the given index (-1 if there is no "owner") - - - The indexes contained here are relative to the result of . - - - - - An array of the owner types corresponding to the - returns. Indices indicating no owner would be null here. - - - - - Get the index of the entity that owns the collection, or -1 - if there is no owner in the query results (i.e. in the case of a - collection initializer) or no collection. - - - - - Return false is this loader is a batch entity loader - - - - - Get the result set descriptor - - - - - The SqlString to be called; implemented by all subclasses - - - - - An array of persisters of entity classes contained in each row of results; - implemented by all subclasses - - - The setter was added so that classes inheriting from Loader could write a - value using the Property instead of directly to the field. - - - - - An (optional) persister for a collection to be initialized; only collection loaders - return a non-null value - - - - - Get the SQL table aliases of entities whose - associations are subselect-loadable, returning - null if this loader does not support subselect - loading - - - - - Returns the aliases that correspond to a result row. - - Returns the aliases that correspond to a result row. - - - - Identifies the query for statistics reporting, if null, - no statistics will be reported - - - - - Utility method that generates 0_, 1_ suffixes. Subclasses don't - necessarily need to use this algorithm, but it is intended that - they will in most cases. - - - - - An interface for collection loaders - - - - - - - Initialize the given collection - - - - - "Batch" loads collections, using multiple foreign key values in the SQL Where clause - - - - - - - Walker for one-to-many associations - - - - - - Loads one-to-many associations - - - The collection persister must implement . - For other collections, create a customized subclass of . - - - - - Implements subselect fetching for a collection - - - - Implements subselect fetching for a one to many association - - - - - A for queries. - - - - - - The superclass deliberately excludes collections - - - - - Don't bother with the discriminator, unless overridden by subclass - - - - - Use the discriminator, to narrow the select to instances - of the queried subclass, also applying any filters. - - - - - A Loader for queries. - - - Note that criteria - queries are more like multi-object Load()s than like HQL queries. - - - - - Get the names of the columns constrained by this criterion. - - - - - Get the a typed value for the given property value. - - - - - Get the aliases of the columns constrained - by this criterion (for use in ORDER BY clause). - - - - Implements Hibernate's built-in support for native SQL queries. - This support is built on top of the notion of "custom queries"... - - - - Extension point allowing any SQL query with named and positional parameters - to be executed by Hibernate, returning managed entities, collections and - simple scalar values. - - - - The SQL query string to be performed. - - - - Any query spaces to apply to the query execution. Query spaces are - used in Hibernate's auto-flushing mechanism to determine which - entities need to be checked for pending changes. - - - - - A collection of descriptors describing the - ADO result set to be expected and how to map this result set. - - - - - Substitues ADO parameter placeholders (?) for all encountered - parameter specifications. It also tracks the positions of these - parameter specifications within the query string. This accounts for - ordinal-params, named-params, and ejb3-positional-params. - - The query string. - The SQL query with parameter substitution complete. - - - Spefically a fetch return that refers to a collection association. - - - Represents a return which names a fetched association. - - - Represents some non-scalar (entity/collection) return within the query result. - - - Represents a return in a custom query. - - - Retrieves the return descriptor for the owner of this fetch. - - - The name of the property on the owner which represents this association. - - - - Represents a return which names a collection role; it - is used in defining a custom query for loading an entity's - collection in non-fetching scenarios (i.e., loading the collection - itself as the "root" of the result). - - - - Returns the class owning the collection. - - - Returns the name of the property representing the collection from the . - - - - that uses columnnames instead of generated aliases. - Aliases can still be overwritten via <return-property> - - - - - Type definition of CollectionAliases. - - - - - Returns the suffixed result-set column-aliases for columns making - up the key for this collection (i.e., its FK to its owner). - - The key result-set column aliases. - - - - Returns the suffixed result-set column-aliases for the columns - making up the collection's index (map or list). - - The index result-set column aliases. - - - - Returns the suffixed result-set column-aliases for the columns - making up the collection's elements. - - The element result-set column aliases. - - - - Returns the suffixed result-set column-aliases for the column - defining the collection's identifier (if any). - - The identifier result-set column aliases. - - - - Returns the suffix used to unique the column aliases for this - particular alias set. - - The uniqued column alias suffix. - - - - Returns the suffixed result-set column-aliases for columns making up the key for this collection (i.e., its FK to - its owner). - - The key result-set column aliases. - - - - Returns the suffixed result-set column-aliases for the columns making up the collection's index (map or list). - - The index result-set column aliases. - - - - Returns the suffixed result-set column-aliases for the columns making up the collection's elements. - - The element result-set column aliases. - - - - Returns the suffixed result-set column-aliases for the column defining the collection's identifier (if any). - - The identifier result-set column aliases. - - - - Returns the suffix used to unique the column aliases for this particular alias set. - - The uniqued column alias suffix. - - - - that chooses the column names over the alias names. - - - - - EntityAliases which handles the logic of selecting user provided aliases (via return-property), - before using the default aliases. - - - - - Metadata describing the SQL result set column aliases - for a particular entity - - - - - The result set column aliases for the property columns of a subclass - - - - - The result set column aliases for the primary key columns - - - - - The result set column aliases for the discriminator columns - - - - - The result set column aliases for the version columns - - - - - The result set column alias for the Oracle row id - - - - - The result set column aliases for the property columns - - - - - Calculate and cache select-clause suffixes. - - - - - Extension point for loaders which use a SQL result set with "unexpected" column aliases. - - - - Build a logical result row. - - Entity data defined as "root returns" and already handled by the normal Loader mechanism. - - The ADO result set (positioned at the row currently being processed). - Does this query have an associated . - The session from which the query request originated. - The logical result row - - At this point, Loader has already processed all non-scalar result data. We - just need to account for scalar result data here... - - - - - Encapsulates the metadata available from the database result set. - - - - - Initializes a new instance of the class. - - The result set. - - - - Gets the column count in the result set. - - The column count. - - - - Gets the (zero-based) position of the column with the specified name. - - Name of the column. - The column position. - - - - Gets the name of the column at the specified position. - - The (zero-based) position. - The column name. - - - - Gets the Hibernate type of the specified column. - - The column position. - The Hibernate type. - - - Specifically a fetch return that refers to an entity association. - - - - Represents a return which names a "root" entity. - - - A root entity means it is explicitly a "column" in the result, as opposed to - a fetched association. - - - - Represent a scalar (AKA simple value) return within a query result. - - - - Abstract superclass for entity loaders that use outer joins - - - - - Loads entities for a - - - - - Load an entity instance. If OptionalObject is supplied, load the entity - state into the given (uninitialized) object - - - - - "Batch" loads entities, using multiple primary key values in the - SQL where clause. - - - - - - A walker for loaders that fetch entities - - - - - - Override to use the persister to change the table-alias for columns in join-tables - - - - - Disable outer join fetching if this loader obtains an - upgrade lock mode - - - - - Load an entity using outerjoin fetching to fetch associated entities. - - - The must implement . For other entities, - create a customized subclass of . - - - - - - - a collection of lock modes specified dynamically via the Query interface - - - - - CollectionAliases which handles the logic of selecting user provided aliases (via return-property), - before using the default aliases. - - - - - Returns the suffixed result-set column-aliases for columns making up the key for this collection (i.e., its FK to - its owner). - - - - - Returns the suffixed result-set column-aliases for the columns making up the collection's index (map or list). - - - - - Returns the suffixed result-set column-aliases for the columns making up the collection's elements. - - - - - Returns the suffixed result-set column-aliases for the column defining the collection's identifier (if any). - - - - - Returns the suffix used to unique the column aliases for this particular alias set. - - - - - Get the position of the join with the given alias in the - list of joins - - - - - Add or modify a value-class pair. - - The value of the DB-field dor a given association instance (should override ) - The class associated to the specific . - - - - Add or modify a value-class pair. - - The value of the DB-field dor a given association instance (should override ) - The class associated to the specific . - - - - - - - Not supported in NH3. - - - - Using the Join, it is possible to split properties of one class to several tables, when there's a 1-to-1 relationship between the table - - The split-group identifier. By default it is assigned to the join-table-name - The lambda to map the join. - - - - Force the component to a different type than the one of the property. - - Mapped component type. - - Useful when the property is an interface and you need the mapping to a concrete class mapped as component. - - - - - Get all candidate persistent properties, or fields, to be used as Persistent-Object-ID, for a given root-entity class or interface. - - The root-entity class or interface. - All candidate properties or fields to be used as Persistent-Object-ID. - - - - Get all candidate persistent properties or fields for a given root-entity class or interface. - - The root-entity class or interface. - All candidate properties or fields. - - - - Get all candidate persistent properties or fields for a given entity subclass or interface. - - The entity subclass or interface. - The superclass (it may be different from ) - All candidate properties or fields. - - In NHibernate, for a subclass, the method should return only those members not included in - its super-classes. - - - - - Get all candidate persistent properties or fields for a given entity subclass or interface. - - The class of the component or an interface. - All candidate properties or fields. - - - - Force the many-to-one to a different type than the one of the property. - - Mapped entity type. - - Useful when the property is an interface and you need the mapping to a concrete class mapped as entity. - - - - - Set the Foreign-Key name - - The name of the Foreign-Key - - Where the is "none" or or all white-spaces the FK won't be created. - Use null to reset the default NHibernate's behavior. - - - - - Manage the mapping of a HbmKeyProperty but implementing - instead a more limitated KeyProperty. - - - - - Defines behavior of soft-cascade actions. - - - To check the content or to include/exclude values, from cascade, is strongly recommanded the usage of extensions methods defined in - - - - - - - - Occurs before apply pattern-appliers on a root class. - - - - - Occurs before apply pattern-appliers on a subclass. - - - - - Occurs before apply pattern-appliers on a joined-subclass. - - - - - Occurs before apply pattern-appliers on a union-subclass. - - - - - Occurs after apply the last customizer on a root class. - - - - - Occurs after apply the last customizer on a subclass. - - - - - Occurs after apply the last customizer on a joined-subclass.. - - - - - Occurs after apply the last customizer on a union-subclass.. - - - - - Util extensions to use in your test or where you need to see the XML mappings - - - - - Immutable value class. By-value equality. - - - - - Provide the list of progressive-paths - - - - Given a path as : Pl1.Pl2.Pl3.Pl4.Pl5 returns paths-sequence as: - Pl5 - Pl4.Pl5 - Pl3.Pl4.Pl5 - Pl2.Pl3.Pl4.Pl5 - Pl1.Pl2.Pl3.Pl4.Pl5 - - - - - Dictionary containing the embedded strategies to find a field giving a property name. - The key is the "partial-name" of the strategy used in XML mapping. - The value is an instance of the strategy. - - - - - A which allows customization of conditions with explicitly declared members. - - - - - Decode a member access expression of a specific ReflectedType - - Type to reflect - The expression of the property getter - The os the ReflectedType. - - - - Decode a member access expression of a specific ReflectedType - - Type to reflect - Type of property - The expression of the property getter - The os the ReflectedType. - - - - Given a property or a field try to get the member from a given possible inherited type. - - The member to find. - The type where find the member. - The member from the reflected-type or the original where the is not accessible from . - - - - Try to find a property or field from a given type. - - The type - The property or field name. - - A or a where the member is found; null otherwise. - - - Where found the member is returned always from the declaring type. - - - - - Convenience base class for AuxiliaryDatabaseObjects. - - - This implementation performs dialect scoping checks strictly based on - dialect name comparisons. Custom implementations might want to do - instanceof-type checks. - - - - - Auxiliary database objects (i.e., triggers, stored procedures, etc) defined - in the mappings. Allows Hibernate to manage their lifecycle as part of - creating/dropping the schema. - - - - - Operations to create/drop the mapping element in the database. - - - - - When implemented by a class, generates the SQL string to create - the mapping element in the database. - - The to use for SQL rules. - - - - - A string that contains the SQL to create an object. - - - - - When implemented by a class, generates the SQL string to drop - the mapping element from the database. - - The to use for SQL rules. - - - - A string that contains the SQL to drop an object. - - - - - Add the given dialect name to the scope of dialects to which - this database object applies. - - The name of a dialect. - - - - Does this database object apply to the given dialect? - - The dialect to check against. - True if this database object does apply to the given dialect. - - - - Gets called by NHibernate to pass the configured type parameters to the implementation. - - - - - A NHibernate any type. - - - Polymorphic association to one of several tables. - - - - - Any value that maps to columns. - - - - - Represents an identifying key of a table: the value for primary key - of an entity, or a foreign key of a collection or join table or - joined subclass table. - - - - - A value is anything that is persisted by value, instead of - by reference. It is essentially a Hibernate IType, together - with zero or more columns. Values are wrapped by things with - higher level semantics, for example properties, collections, - classes. - - - - - - - - - - Determines if the Value is part of a valid mapping. - - The to validate. - - if the Value is part of a valid mapping, - otherwise. - - - - Mainly used to make sure that Value maps to the correct number - of columns. - - - - - Gets the number of columns that this value spans in the table. - - - - - Gets an of objects - that this value is stored in. - - - - - Gets the to read/write the Values. - - - - - Gets the this Value is stored in. - - - - - Gets a indicating if this Value is unique. - - - - - Gets a indicating if this Value can have - null values. - - - - - Gets a indicating if this is a SimpleValue - that does not involve foreign keys. - - - - - Get or set the identifier type name - - - - - Get or set the metatype - - - - - Represent the relation between a meta-value and the related entityName - - - - - An array has a primary key consisting of the key columns + index column - - - - - A list has a primary key consisting of the key columns + index column - - - - - Indexed collections include IList, IDictionary, Arrays - and primitive Arrays. - - - - - Base class that stores the mapping information for <array>, <bag>, - <id-bag>, <list>, <map>, and <set> - collections. - - - Subclasses are responsible for the specialization required for the particular - collection style. - - - - - Any mapping with an outer-join attribute - - - - - Defines mapping elements to which filters may be applied. - - - - - Gets or sets a indicating if this is a - mapping for a generic collection. - - - if a collection from the System.Collections.Generic namespace - should be used, if a collection from the System.Collections - namespace should be used. - - - This has no affect on any versions of the .net framework before .net-2.0. - - - - - Gets or sets an array of that contains the arguments - needed to construct an instance of a closed type. - - - - - Initializes a new instance of the class. - - The that contains this list mapping. - - - - Gets the appropriate that is - specialized for this list mapping. - - - - - Mapping for a property of a .NET class (entity - or component). - - - - Common interface for things that can handle meta attributes. - - - - Retrieve the - - The attribute name - The if exists; null otherwise - - - - Meta-Attribute collection. - - - - - Gets the number of columns this property uses in the db. - - - - - Gets an of s. - - - - - Gets or Sets the name of the Property in the class. - - - - - - - - A bag permits duplicates, so it has no primary key - - - - - A bag permits duplicates, so it has no primary key. - - The that contains this bag mapping. - - - - Gets the appropriate that is - specialized for this bag mapping. - - - - - Represents the mapping to a column in a database. - - - - - Initializes a new instance of . - - - - - Initializes a new instance of . - - The name of the column. - - - - Gets the name of this Column in quoted form if it is necessary. - - - The that knows how to quote - the column name. - - - The column name in a form that is safe to use inside of a SQL statement. - Quoted if it needs to be, not quoted if it does not need to be. - - - - For any column name, generate an alias that is unique - to that column name, and also 10 characters or less - in length. - - - - Gets the name of the data type for the column. - - The to use to get the valid data types. - - - The name of the data type for the column. - - - If the mapping file contains a value of the attribute sql-type this will - return the string contained in that attribute. Otherwise it will use the - typename from the of the object. - - - - - Determines if this instance of and a specified object, - which must be a Column can be considered the same. - - An that should be a . - - if the name of this Column and the other Column are the same, - otherwise . - - - - - Determines if this instance of and the specified Column - can be considered the same. - - A to compare to this Column. - - if the name of this Column and the other Column are the same, - otherwise . - - - - - Returns the hash code for this instance. - - - - returns quoted name as it would be in the mapping file. - - - Shallow copy, the value is not copied - - - - Gets or sets the length of the datatype in the database. - - The length of the datatype in the database. - - - - Gets or sets the name of the column in the database. - - - The name of the column in the database. The get does - not return a Quoted column name. - - -

- If a value is passed in that is wrapped by ` then - NHibernate will Quote the column whenever SQL is generated - for it. How the column is quoted depends on the Dialect. -

-

- The value returned by the getter is not Quoted. To get the - column name in quoted form use . -

-
-
- - - Gets or sets if the column can have null values in it. - - if the column can have a null value in it. - - - - Gets or sets the index of the column in the . - - - The index of the column in the . - - - - - Gets or sets if the column contains unique values. - - if the column contains unique values. - - - - Gets or sets the sql data type name of the column. - - - The sql data type name of the column. - - - This is usually read from the sql-type attribute. - - - - - Gets or sets if the column needs to be quoted in SQL statements. - - if the column is quoted. - - - - Gets or sets whether the column is unique. - - - - - Gets or sets a check constraint on the column - - - - - Do we have a check constraint? - - - - - The underlying columns SqlType. - - - If null, it is because the sqltype code is unknown. - - Use to retreive the sqltypecode used - for the columns associated Value/Type. - - - - - The mapping for a component, composite element, composite identifier, - etc. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Base class for relational constraints in the database. - - - - - Adds the to the of - Columns that are part of the constraint. - - The to include in the Constraint. - - - - Generates the SQL string to drop this Constraint in the database. - - The to use for SQL rules. - - - - A string that contains the SQL to drop this Constraint. - - - - - Generates the SQL string to create this Constraint in the database. - - The to use for SQL rules. - - - - - A string that contains the SQL to create this Constraint. - - - - - When implemented by a class, generates the SQL string to create the named - Constraint in the database. - - The to use for SQL rules. - The name to use as the identifier of the constraint in the database. - - - - A string that contains the SQL to create the named Constraint. - - - - - Gets or sets the Name used to identify the constraint in the database. - - The Name used to identify the constraint in the database. - - - - Gets an of objects that are part of the constraint. - - - An of objects that are part of the constraint. - - - - - Gets the number of columns that this Constraint contains. - - - The number of columns that this Constraint contains. - - - - - Gets or sets the this Constraint is in. - - - The this Constraint is in. - - - - - Represents a Table in a database that an object gets mapped against. - - - - - Initializes a new instance of . - - - - - Generates the SQL string to create this Table in the database. - - The to use for SQL rules. - - - - - A string that contains the SQL to create this Table, Primary Key Constraints - , and Unique Key Constraints. - - - - - Generates the SQL string to drop this Table in the database. - - The to use for SQL rules. - - - - A string that contains the SQL to drop this Table and to cascade the drop to - the constraints if the database supports it. - - - - - Gets the schema qualified name of the Table. - - The that knows how to Quote the Table name. - The name of the table qualified with the schema if one is specified. - - - - Gets the schema qualified name of the Table using the specified qualifier - - The that knows how to Quote the Table name. - The catalog name. - The schema name. - A String representing the Qualified name. - If this were used with MSSQL it would return a dbo.table_name. - - - returns quoted name as it would be in the mapping file. - - - - Gets the name of this Table in quoted form if it is necessary. - - - The that knows how to quote the Table name. - - - The Table name in a form that is safe to use inside of a SQL statement. - Quoted if it needs to be, not quoted if it does not need to be. - - - - returns quoted name as it is in the mapping file. - - - - Gets the schema for this table in quoted form if it is necessary. - - - The that knows how to quote the table name. - - - The schema name for this table in a form that is safe to use inside - of a SQL statement. Quoted if it needs to be, not quoted if it does not need to be. - - - - - Gets the at the specified index. - - The index of the Column to get. - - The at the specified index. - - - - - Adds the to the of - Columns that are part of the Table. - - The to include in the Table. - - - - Gets the identified by the name. - - The name of the to get. - - The identified by the name. If the - identified by the name does not exist then it is created. - - - - - Gets the identified by the name. - - The name of the to get. - - The identified by the name. If the - identified by the name does not exist then it is created. - - - - - Create a for the columns in the Table. - - - An of objects. - - - - A for the columns in the Table. - - - This does not necessarily create a , if - one already exists for the columns then it will return an - existing . - - - - - Generates a unique string for an of - objects. - - An of objects. - - An unique string for the objects. - - - - - Sets the Identifier of the Table. - - The that represents the Identifier. - - - - - - - - - Return the column which is identified by column provided as argument. - column with atleast a name. - - The underlying column or null if not inside this table. - Note: the instance *can* be different than the input parameter, but the name will be the same. - - - - - Gets or sets the name of the Table in the database. - - - The name of the Table in the database. The get does - not return a Quoted Table name. - - -

- If a value is passed in that is wrapped by ` then - NHibernate will Quote the Table whenever SQL is generated - for it. How the Table is quoted depends on the Dialect. -

-

- The value returned by the getter is not Quoted. To get the - column name in quoted form use . -

-
-
- - - Gets the number of columns that this Table contains. - - - The number of columns that this Table contains. - - - - - Gets an of objects that - are part of the Table. - - - An of objects that are - part of the Table. - - - - - Gets an of objects that - are part of the Table. - - - An of objects that are - part of the Table. - - - - - Gets an of objects that - are part of the Table. - - - An of objects that are - part of the Table. - - - - - Gets an of objects that - are part of the Table. - - - An of objects that are - part of the Table. - - - - - Gets or sets the of the Table. - - The of the Table. - - - - Gets or sets the schema the table is in. - - - The schema the table is in or if no schema is specified. - - - - - Gets the unique number of the Table. - - The unique number of the Table. - - - - Gets or sets if the column needs to be quoted in SQL statements. - - if the column is quoted. - - - - A value which is "typed" by reference to some other value - (for example, a foreign key is typed by the referenced primary key). - - - - - A Foreign Key constraint in the database. - - - - - Generates the SQL string to create the named Foreign Key Constraint in the database. - - The to use for SQL rules. - The name to use as the identifier of the constraint in the database. - - - - A string that contains the SQL to create the named Foreign Key Constraint. - - - - - Get the SQL string to drop this Constraint in the database. - - The to use for SQL rules. - - - - A string that contains the SQL to drop this Constraint. - - - - - Validates that columnspan of the foreignkey and the primarykey is the same. - Furthermore it aligns the length of the underlying tables columns. - - - - - Gets or sets the that the Foreign Key is referencing. - - The the Foreign Key is referencing. - - Thrown when the number of columns in this Foreign Key is not the same - amount of columns as the Primary Key in the ReferencedTable. - - - - Does this foreignkey reference the primary key of the reference table - - - - A formula is a derived column value. - - - - - - - - - - - - - - - - - - - An PersistentIdentifierBag has a primary key consistenting of just - the identifier column. - - - - - A collection with a synthetic "identifier" column. - - - - - - - - - - - - - - - - - - - - - - - - - - An Index in the database. - - - - - Generates the SQL string to create this Index in the database. - - The to use for SQL rules. - - - - - A string that contains the SQL to create this Index. - - - - - Generates the SQL string to drop this Index in the database. - - The to use for SQL rules. - - - - A string that contains the SQL to drop this Index. - - - - - Adds the to the of - Columns that are part of the Index. - - The to include in the Index. - - - - Gets or sets the this Index is in. - - - The this Index is in. - - - - - Gets an of objects that are - part of the Index. - - - An of objects that are - part of the Index. - - - - - Gets or sets the Name used to identify the Index in the database. - - The Name used to identify the Index in the database. - - - - Declaration of a System.Type mapped with the <subclass> or - <joined-subclass> element. - - - - - Base class for the mapped by <class> and a - that is mapped by <subclass> or - <joined-subclass>. - - - - - - - - - - - Adds a to the class hierarchy. - - The to add to the hierarchy. - - - - Change the property definition or add a new property definition - - The to add. - - - - Adds a that is implemented by a subclass. - - The implemented by a subclass. - - - - Adds a that a subclass is stored in. - - The the subclass is stored in. - - - - Creates the for the - this type is persisted in. - - The that is used to Alias columns. - - - - Given a property path, locate the appropriate referenceable property reference. - - - A referenceable property is a property which can be a target of a foreign-key - mapping (an identifier or explicitly named in a property-ref). - - The property path to resolve into a property reference. - The property reference (never null). - If the property could not be found. - - - - - - - - - - Gets the that is being mapped. - - The that is being mapped. - - The value of this is set by the name attribute on the <class> - element. - - - - - Gets or sets the to use as a Proxy. - - The to use as a Proxy. - - The value of this is set by the proxy attribute. - - - - - Gets or Sets if the Insert Sql is built dynamically. - - if the Sql is built at runtime. - - The value of this is set by the dynamic-insert attribute. - - - - - Gets or Sets if the Update Sql is built dynamically. - - if the Sql is built at runtime. - - The value of this is set by the dynamic-update attribute. - - - - - Gets or Sets the value to use as the discriminator for the Class. - - - A value that distinguishes this subclass in the database. - - - The value of this is set by the discriminator-value attribute. Each <subclass> - in a hierarchy must define a unique discriminator-value. The default value - is the class name if no value is supplied. - - - - - Gets the number of subclasses that inherit either directly or indirectly. - - The number of subclasses that inherit from this PersistentClass. - - - - Iterate over subclasses in a special 'order', most derived subclasses first. - - - It will recursively go through Subclasses so that if a SubclassType has Subclasses - it will pick those up also. - - - - - Gets an of objects - that directly inherit from this PersistentClass. - - - An of objects - that directly inherit from this PersistentClass. - - - - - When implemented by a class, gets a boolean indicating if this - mapped class is inherited from another. - - - if this class is a subclass or joined-subclass - that inherited from another class. - - - - - When implemented by a class, gets a boolean indicating if the mapped class - has a version property. - - if there is a <version> property. - - - - When implemented by a class, gets an - of objects that this mapped class contains. - - - An of objects that - this mapped class contains. - - - This is all of the properties of this mapped class and each mapped class that - it is inheriting from. - - - - - When implemented by a class, gets an - of objects that this mapped class reads from - and writes to. - - - An of objects that - this mapped class reads from and writes to. - - - This is all of the tables of this mapped class and each mapped class that - it is inheriting from. - - - - - Gets an of objects that - this mapped class contains and that all of its subclasses contain. - - - An of objects that - this mapped class contains and that all of its subclasses contain. - - - - - Gets an of all of the objects that the - subclass finds its information in. - - An of objects. - It adds the TableClosureIterator and the subclassTables into the IEnumerable. - - - - When implemented by a class, gets or sets the of the Persister. - - - - - When implemented by a class, gets the of the class - that is mapped in the class element. - - - The of the class that is mapped in the class element. - - - - - - - - - - - - - - - Build a collection of properties which are "referenceable". - - - See for a discussion of "referenceable". - - - - - - - - - - - - - - - Build an iterator over the properties defined on this class. The returned - iterator only accounts for "normal" properties (i.e. non-identifier - properties). - - - An of objects. - - - Differs from in that the iterator - we return here will include properties defined as part of a join. - - - - - Build an enumerable over the properties defined on this class which - are not defined as part of a join. - As with the returned iterator only accounts - for non-identifier properties. - - An enumerable over the non-joined "normal" properties. - - - - - - - - - Gets a boolean indicating if this PersistentClass has any subclasses. - - if this PeristentClass has any subclasses. - - - - Gets or Sets the that this class is stored in. - - The this class is stored in. - - The value of this is set by the table attribute. - - - - - When implemented by a class, gets or set a boolean indicating - if the mapped class has properties that can be changed. - - if the object is mutable. - - The value of this is set by the mutable attribute. - - - - - When implemented by a class, gets a boolean indicating - if the mapped class has a Property for the id. - - if there is a Property for the id. - - - - When implemented by a class, gets or sets the - that is used as the id. - - - The that is used as the id. - - - - - When implemented by a class, gets or sets the - that contains information about the identifier. - - The that contains information about the identifier. - - - - When implemented by a class, gets or sets the - that is used as the version. - - The that is used as the version. - - - - When implemented by a class, gets or sets the - that contains information about the discriminator. - - The that contains information about the discriminator. - - - - When implemented by a class, gets or sets if the mapped class has subclasses or is - a subclass. - - - if the mapped class has subclasses or is a subclass. - - - - - When implemented by a class, gets or sets the CacheConcurrencyStrategy - to use to read/write instances of the persistent class to the Cache. - - The CacheConcurrencyStrategy used with the Cache. - - - - When implemented by a class, gets or sets the - that this mapped class is extending. - - - The that this mapped class is extending. - - - - - When implemented by a class, gets or sets a boolean indicating if - explicit polymorphism should be used in Queries. - - - if only classes queried on should be returned, - if any class in the heirarchy should implicitly be returned. - - The value of this is set by the polymorphism attribute. - - - - - - - - - - When implemented by a class, gets or sets a boolean indicating if the identifier is - embedded in the class. - - if the class identifies itself. - - An embedded identifier is true when using a composite-id specifying - properties of the class as the key-property instead of using a class - as the composite-id. - - - - - When implemented by a class, gets the of the class - that is mapped in the class element. - - - The of the class that is mapped in the class element. - - - - - When implemented by a class, gets or sets the - that contains information about the Key. - - The that contains information about the Key. - - - - When implemented by a class, gets or sets the sql string that should - be a part of the where clause. - - - The sql string that should be a part of the where clause. - - - The value of this is set by the where attribute. - - - - - Gets or sets a boolean indicating if only values in the discriminator column that - are mapped will be included in the sql. - - if the mapped discriminator values should be forced. - - The value of this is set by the force attribute on the discriminator element. - - - - - Initializes a new instance of the class. - - The that is the superclass. - - - - Add the to this PersistentClass. - - The to add. - - This also adds the to the Superclass' collection - of SubclassType Properties. - - - - - Adds a that is implemented by a subclass. - - The implemented by a subclass. - - This also adds the to the Superclass' collection - of SubclassType Properties. - - - - - Adds a that a subclass is stored in. - - The the subclass is stored in. - - This also adds the to the Superclass' collection - of SubclassType Tables. - - - - - - - - - - Gets a boolean indicating if this mapped class is inherited from another. - - - because this is a SubclassType. - - - - - Gets an of objects that this mapped class contains. - - - An of objects that - this mapped class contains. - - - This is all of the properties of this mapped class and each mapped class that - it is inheriting from. - - - - - Gets an of objects that this - mapped class reads from and writes to. - - - An of objects that - this mapped class reads from and writes to. - - - This is all of the tables of this mapped class and each mapped class that - it is inheriting from. - - - - - Gets a boolean indicating if the mapped class has a version property. - - if for the Superclass there is a Property for a version. - - - - - - - - - Gets the of the class - that is mapped in the class element. - - - The of the Superclass that is mapped in the class element. - - - - - - - - - - Gets or sets the CacheConcurrencyStrategy - to use to read/write instances of the persistent class to the Cache. - - The CacheConcurrencyStrategy used with the Cache. - - - - Gets the of the class that is mapped in the class element. - - - The of the Superclass that is mapped in the class element. - - - - - Gets or sets the that this mapped class is extending. - - - The that this mapped class is extending. - - - - - Gets or sets the that is used as the id. - - - The from the Superclass that is used as the id. - - - - - Gets or sets the that contains information about the identifier. - - The from the Superclass that contains information about the identifier. - - - - Gets a boolean indicating if the mapped class has a Property for the id. - - if in the Superclass there is a Property for the id. - - - - Gets or sets the that contains information about the discriminator. - - The from the Superclass that contains information about the discriminator. - - - - Gets or set a boolean indicating if the mapped class has properties that can be changed. - - if the Superclass is mutable. - - - - Gets or sets if the mapped class is a subclass. - - - since this mapped class is a subclass. - - - The setter should not be used to set the value to anything but . - - - - - Gets or sets the that is used as the version. - - The from the Superclass that is used as the version. - - - - Gets or sets a boolean indicating if the identifier is - embedded in the class. - - if the Superclass has an embedded identifier. - - An embedded identifier is true when using a composite-id specifying - properties of the class as the key-property instead of using a class - as the composite-id. - - - - - Gets or sets the that contains information about the Key. - - The that contains information about the Key. - - - - Gets or sets a boolean indicating if explicit polymorphism should be used in Queries. - - - The value of the Superclasses IsExplicitPolymorphism property. - - - - - Gets the sql string that should be a part of the where clause. - - - The sql string that should be a part of the where clause. - - - Thrown when the setter is called. The where clause can not be set on the - SubclassType, only the RootClass. - - - - - Gets or Sets the that this class is stored in. - - The this class is stored in. - - This also adds the to the Superclass' collection - of SubclassType Tables. - - - - - - - - - A many-to-one association mapping - - - - A simple-point association (ie. a reference to another entity). - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A map has a primary key consisting of the key columns - + index columns. - - - - - Initializes a new instance of the class. - - The that contains this map mapping. - - - - Gets the appropriate that is - specialized for this list mapping. - - - - - A meta attribute is a named value or values. - - - - - A mapping for a one-to-many association. - - - - - - - - - - No foreign key element for a one-to-many - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A mapping for a one-to-one association. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A Primary Key constraint in the database. - - - - - Generates the SQL string to create the Primary Key Constraint in the database. - - The to use for SQL rules. - - - A string that contains the SQL to create the Primary Key Constraint. - - - - - Generates the SQL string to create the named Primary Key Constraint in the database. - - The to use for SQL rules. - The name to use as the identifier of the constraint in the database. - - - - A string that contains the SQL to create the named Primary Key Constraint. - - - - - Get the SQL string to drop this Constraint in the database. - - The to use for SQL rules. - - - - A string that contains the SQL to drop this Constraint. - - - - - A primitive array has a primary key consisting - of the key columns + index column. - - - - - Indicates whether given properties are generated by the database and, if - so, at what time(s) they are generated. - - - - - Values for this property are never generated by the database. - - - - - Values for this property are generated by the database on insert. - - - - - Values for this property are generated by the database on both insert and update. - - - - - Declaration of a System.Type mapped with the <class> element that - is the root class of a table-per-subclass, or table-per-concrete-class - inheritance heirarchy. - - - - - The default name of the column for the Identifier - - id is the default column name for the Identifier. - - - - The default name of the column for the Discriminator - - class is the default column name for the Discriminator. - - - - Adds a to the class hierarchy. - - The to add to the hierarchy. - - When a is added this mapped class has the property - set to . - - - - - - - - - - - Gets a boolean indicating if this mapped class is inherited from another. - - - because this is the root mapped class. - - - - - Gets an of objects that this mapped class contains. - - - An of objects that - this mapped class contains. - - - - - Gets an of objects that this - mapped class reads from and writes to. - - - An of objects that - this mapped class reads from and writes to. - - - There is only one in the since - this is the root class. - - - - - Gets a boolean indicating if the mapped class has a version property. - - if there is a Property for a version. - - - - Gets the of the class - that is mapped in the class element. - - - The of the class this mapped class. - - - - - Gets or sets a boolean indicating if the identifier is - embedded in the class. - - if the class identifies itself. - - An embedded identifier is true when using a composite-id specifying - properties of the class as the key-property instead of using a class - as the composite-id. - - - - - Gets or sets the cache region name. - - The region name used with the Cache. - - - - - - - - - Gets or sets the that is used as the id. - - - The that is used as the id. - - - - - Gets or sets the that contains information about the identifier. - - The that contains information about the identifier. - - - - Gets a boolean indicating if the mapped class has a Property for the id. - - if there is a Property for the id. - - - - Gets or sets the that contains information about the discriminator. - - The that contains information about the discriminator. - - - - Gets or sets if the mapped class has subclasses. - - - if the mapped class has subclasses. - - - - - Gets the of the class that is mapped in the class element. - - - this since this is the root mapped class. - - - - - Gets or sets a boolean indicating if explicit polymorphism should be used in Queries. - - - if only classes queried on should be returned, - if any class in the hierarchy should implicitly be returned. - - - - - Gets or sets the that is used as the version. - - The that is used as the version. - - - - Gets or set a boolean indicating if the mapped class has properties that can be changed. - - if the object is mutable. - - - - Gets or sets the that this mapped class is extending. - - - since this is the root class. - - - Thrown when the setter is called. The Superclass can not be set on the - RootClass, only the SubclassType can have a Superclass set. - - - - - Gets or sets the that contains information about the Key. - - The that contains information about the Key. - - - - - - - - - Gets or sets a boolean indicating if only values in the discriminator column that - are mapped will be included in the sql. - - if the mapped discriminator values should be forced. - - - - Gets or sets the sql string that should be a part of the where clause. - - - The sql string that should be a part of the where clause. - - - - - Gets or sets the CacheConcurrencyStrategy - to use to read/write instances of the persistent class to the Cache. - - The CacheConcurrencyStrategy used with the Cache. - - - - A Set with no nullable element columns will have a primary - key consisting of all table columns (ie - key columns + - element columns). - - - - - A simple implementation of AbstractAuxiliaryDatabaseObject in which the CREATE and DROP strings are - provided up front. - - - Contains simple facilities for templating the catalog and schema - names into the provided strings. - This is the form created when the mapping documents use <create/> and <drop/>. - - - - Placeholder for typedef information - - - - An Unique Key constraint in the database. - - - - - Generates the SQL string to create the Unique Key Constraint in the database. - - The to use for SQL rules. - A string that contains the SQL to create the Unique Key Constraint. - - - - Generates the SQL string to create the Unique Key Constraint in the database. - - The to use for SQL rules. - - - - - A string that contains the SQL to create the Unique Key Constraint. - - - - - Get the SQL string to drop this Constraint in the database. - - The to use for SQL rules. - - - - A string that contains the SQL to drop this Constraint. - - - - - Exposes entity class metadata to the application - - - - - Get the type of a particular (named) property - - - Return the values of the mapped properties of the object - - - - The persistent class - - - - - Create a class instance initialized with the given identifier - - - - - Get the value of a particular (named) property - - - - Extract the property values from the given entity. - The entity from which to extract the property values. - The entity-mode of the given entity - The property values. - - - - Set the value of a particular (named) property - - - - - Set the given values to the mapped properties of the given object - - - - - Get the identifier of an instance (throw an exception if no identifier property) - - - - - Set the identifier of an instance (or do nothing if no identifier property) - - - - Does the class implement the interface? - - - Does the class implement the interface? - - - - Get the version number (or timestamp) from the object's version property - (or return null if not versioned) - - - - - The name of the entity - - - - - The name of the identifier property (or return null) - - - - - The names of the class' persistent properties - - - - - The identifier Hibernate type - - - - - The Hibernate types of the classes properties - - - - - Are instances of this class mutable? - - - - - Are instances of this class versioned by a timestamp or version number column? - - - - - Gets the index of the version property - - - - - Get the nullability of the class' persistent properties - - - - Get the "laziness" of the properties of this class - - - Which properties hold the natural id? - - - Does this entity extend a mapped superclass? - - - Does the class support dynamic proxies? - - - Does the class have an identifier property? - - - Does this entity declare a natural id? - - - Does this entity have mapped subclasses? - - - - Exposes collection metadata to the application - - - - - The collection key type - - - - - The collection element type - - - - - The collection index type (or null if the collection has no index) - - - - - Is the collection indexed? - - - - - The name of this collection role - - - - - Is the collection an array? - - - - - Is the collection a primitive array? - - - - - Is the collection lazily initialized? - - - - - Additional information for potential paging parameters in HQL/LINQ - - - - - An additional contract for parameters which originate from parameters explicitly encountered in the source statement - (HQL or native-SQL). - Author: Steve Ebersole - Ported by: Steve Strong - - - - - Maintains information relating to parameters which need to get bound into a . - - - - - Bind the appropriate value into the given command. - - The command into which the value should be bound. - The list of Sql query parameter in the exact sequence they are present in the query. - The defined values for the current query execution. - The session against which the current execution is occuring. - - - - Bind the appropriate value into the given command. - - The command into which the value should be bound. - The parameter-list of the whole query of the command. - The offset from where start the list of in the given for the query where this was used. - The list of Sql query parameter in the exact sequence they are present in the query where this was used. - The defined values for the query where this was used. - The session against which the current execution is occuring. - - Suppose the is composed by two queries. The for the first query is zero. - If the first query in has 12 parameters (size of its SqlType array) the offset to bind all s of the second query in the - is 12 (for the first query we are using from 0 to 11). - - - - - Render this parameter into displayable info (for logging, etc). - - The displayable info - - - - An string array to unique identify this parameter-span inside an . - - The session-factory (used only because required by IType). - - The each id-for-backtrack is supposed to be unique in the context of a query. - - The number of elements returned depend on the column-span of the . - - - - - - Get or set the type which we are expeting for a bind into this parameter based - on translated contextual information. - - - - - Explicit parameters may have no set the during query parse. - - The defined values for the current query execution. - - This method should be removed when the parameter type is inferred during the parse. - - - - - Retrieves the line number on which this parameter occurs in the source query. - - - - - Retrieves the column number (within the {@link #getSourceLine()}) where this parameter occurs. - - - - - Notifies the parameter that it is a 'skip' parameter, and should calculate its value using the dialect settings - - - - - Notifies the parameter that it is a 'take' parameter, and should calculate its value using the dialect settings - and the value of the supplied skipParameter. - - The associated skip parameter (null if there is none). - - - - Retrieve the skip/offset value for the query - - The parameters for the query - The paging skip/offset value - - - - Constructs an AbstractExplicitParameterSpecification. - - sourceLine - sourceColumn - - - - Creates a specialized collection-filter collection-key parameter spec. - - The collection role being filtered. - The mapped collection-key type. - The position within QueryParameters where we can find the appropriate param value to bind. - - - - Constructs a parameter specification for a particular filter parameter. - - The name of the filter - The name of the parameter - The paremeter type specified on the filter metadata - - - - - Defines a mapping from a .NET to a SQL datatype. - This interface is intended to be implemented by applications that need custom types. - - Implementors should usually be immutable and MUST definately be threadsafe. - - - - - When implemented by a class, returns the SqlTypes for the columns mapped by this IType. - The that uses this IType.An array of s. - - - - When implemented by a class, returns how many columns are used to persist this type. - The that uses this IType.The number of columns this IType spans.MappingException - - - - When implemented by a class, should the parent be considered dirty, - given both the old and current field or element value? - The old valueThe current valueThe true if the field is dirty - - - - When implemented by a class, gets an instance of the object mapped by - this IType from the . - The that contains the values - The names of the columns in the that contain the - value to populate the IType with. - The object mapped by this IType. - Implementors should handle possibility of null values. - - - - - When implemented by a class, gets an instance of the object - mapped by this IType from the . - The that contains the valuesThe name of the column in the that contains the - value to populate the IType with.The object mapped by this IType. - Implementations should handle possibility of null values. - This method might be called if the IType is known to be a single-column type. - - - - - When implemented by a class, puts the value/values from the mapped - class into the . - The to put the values into.The object that contains the values.The index of the to start writing the values to.Indicates which columns are to be set. - Implementors should handle possibility of null values. - A multi-column type should be written to parameters starting from . - - - - - When implemented by a class, puts the value/values from the mapped - class into the . - - The to put the values into. - The object that contains the values. - The index of the to start writing the values to. - - Implementors should handle possibility of null values. - A multi-column type should be written to parameters starting from . - - - - - When implemented by a class, a representation of the value to be - embedded in an XML element - The object that contains the values.An Xml formatted string. - - - - When implemented by a class, returns a deep copy of the persistent - state, stopping at entities and at collections. - A Collection element or Entity fieldThe entityMode.The session factory.A deep copy of the object. - - - - When implemented by a class, retrieves an instance of the mapped class, - or the identifier of an entity or collection from a . - The that contains the values. - The names of the columns in the that contain the - value to populate the IType with. - the sessionThe parent EntityAn identifier or actual object mapped by this IType. - - This is useful for 2-phase property initialization - the second phase is a call to - ResolveIdentifier() - - - Most implementors of this method will just pass the call to NullSafeGet(). - - - - - - When implemented by a class, maps identifiers to Entities or Collections. - An identifier or value returned by Hydrate()The sessionThe parent EntityThe Entity or Collection referenced by this Identifier. - This is the second phase of 2-phase property initialization. - - - - - Given a hydrated, but unresolved value, return a value that may be used to - reconstruct property-ref associations. - - - - - - - - During merge, replace the existing (target) value in the entity we are merging to - with a new (original) value from the detached entity we are merging. For immutable - objects, or null values, it is safe to simply return the first parameter. For - mutable objects, it is safe to return a copy of the first parameter. For objects - with component values, it might make sense to recursively replace component values. - - the value from the detached entity being merged - the value in the managed entity - - - - - the value to be merged - - - - Compare two instances of the class mapped by this type for persistence - "equality" - equality of persistent state - taking a shortcut for - entity references. - - - - - boolean - - - - Compare two instances of the class mapped by this type for persistence - "equality" - equality of persistent state. - - - - - boolean - - - - Compare two instances of the class mapped by this type for persistence - "equality" - equality of persistent state. - - - - - - boolean - - - Get a hashcode, consistent with persistence "equality" - - - - - Get a hashcode, consistent with persistence "equality" - - - - - - compare two instances of the type - - - - - - Get the type of a semi-resolved value. - - - A representation of the value to be embedded in an XML element. - - - - - - Parse the XML representation of an instance. - - - an instance of the type - - - - Given an instance of the type, return an array of boolean, indicating - which mapped columns would be null. - - an instance of the type - - - - - When implemented by a class, gets the abbreviated name of the type. - The NHibernate type name. - - - - When implemented by a class, gets the returned - by the NullSafeGet() methods. - - The from the .NET framework. - - This is used to establish the class of an array of this Itype - - - - - When implemented by a class, gets the value indicating if the objects - of this IType are mutable. - true if the objects mapped by this IType are mutable. - With respect to the referencing object... - Entities and Collections are considered immutable because they manage their own internal state. - - - - - When implemented by a class, gets a value indicating if the implementor is castable to an an - true if this is an AssociationThis does not necessarily imply that the type actually represents an association. - - - - When implemented by a class, gets a value indicating if the implementor is a collection type - true if this is a . - - - - When implemented by a class, gets a value indicating if the implementor - is an . - true if this is an - If true, the implementation must be castable to . - A component type may own collections or associations and hence must provide certain extra functionality. - - - - - When implemented by a class, gets a value indicating if the implementor - extends - true if this is an - - - - - - - Parameter bind specification for an explicit named parameter. - - - - - Constructs a named parameter bind specification. - - sourceLine - sourceColumn - The named parameter name. - - - - The user parameter name. - - - - - Parameter bind specification for an explicit positional (or ordinal) parameter. - - - - - Constructs a position/ordinal parameter bind specification. - - sourceLine - sourceColumn - The position in the source query, relative to the other source positional parameters. - - - - Getter for property 'hqlPosition'. - - - - - Autogenerated parameter for . - - - - - Autogenerated parameter for . - - - - - Summary description for AbstractCollectionPersister. - - - - - A collection role that may be queried or loaded by outer join. - - - - - Anything that can be loaded by outer join - namely persisters for classes or collections. - - - - - All columns to select, when loading. - - - - - Get the where clause part of any joins (optional operation) - - - - - - - - - Get the from clause part of any joins (optional operation) - - - - - - - - - Get the where clause filter, given a query alias and considering enabled session filters - - - - - Very, very, very ugly... - - Does this persister "consume" entity column aliases in the result - set? - - - - Very, very, very ugly... - - Does this persister "consume" collection column aliases in the result - set? - - - - An identifying name; a class name or collection role name. - - - - - The columns to join on. - - - - - Is this instance actually a ICollectionPersister? - - - - - The table to join to. - - - - - A strategy for persisting a collection role. - - - Defines a contract between the persistence strategy and the actual persistent collection framework - and session. Does not define operations that are required for querying collections, or loading by outer join. - - Implements persistence of a collection instance while the instance is - referenced in a particular role. - - This class is highly coupled to the - hierarchy, since double dispatch is used to load and update collection - elements. - - May be considered an immutable view of the mapping object - - - - - Initialize the given collection with the given key - - - - - - - Read the key from a row of the - - - - - Read the element from a row of the - - - - - Read the index from a row of the - - - - - Read the identifier from a row of the - - - - - Completely remove the persistent state of the collection - - - - - - - (Re)create the collection's persistent state - - - - - - - - Delete the persistent state of any elements that were removed from the collection - - - - - - - - Update the persistent state of any elements that were modified - - - - - - - - Insert the persistent state of any new collection elements - - - - - - - - Generates the collection's key column aliases, based on the given - suffix. - - The suffix to use in the key column alias generation. - The key column aliases. - - - - Generates the collection's index column aliases, based on the given - suffix. - - The suffix to use in the index column alias generation. - The index column aliases, or null if not indexed. - - - - Generates the collection's element column aliases, based on the given - suffix. - - The suffix to use in the element column alias generation. - The element column aliases. - - - - Generates the collection's identifier column aliases, based on the given - suffix. - - The suffix to use in the identifier column alias generation. - The identifier column aliases. - - - - Try to find an element by a given index. - - The key of the collection (collection-owner identifier) - The given index. - The active . - The owner of the collection. - The value of the element where available; otherwise . - - - - Get the cache - - - - Get the cache structure - - - - Get the associated IType - - - - - Get the "key" type (the type of the foreign key) - - - - - Get the "index" type for a list or map (optional operation) - - - - - Get the "element" type - - - - - Return the element class of an array, or null otherwise - - - - - Is this an array or primitive values? - - - - - Is this an array? - - - - Is this a one-to-many association? - - - - Is this a many-to-many association? Note that this is mainly - a convenience feature as the single persister does not - contain all the information needed to handle a many-to-many - itself, as internally it is looked at as two many-to-ones. - - - - - Is this collection lazily initialized? - - - - - Is this collection "inverse", so state changes are not propogated to the database. - - - - - Get the name of this collection role (the fully qualified class name, extended by a "property path") - - - - Get the persister of the entity that "owns" this collection - - - - Get the surrogate key generation strategy (optional operation) - - - - - Get the type of the surrogate key - - - - Get the "space" that holds the persistent state - - - - Is cascade delete handled by the database-level - foreign key constraint definition? - - - - - Does this collection cause version increment of the owning entity? - - - - Can the elements of this collection change? - - - - Is this collection role cacheable - - - - - Is this an "indexed" collection? (list or map) - - - - - Does this collection implement "orphan delete"? - - - - - Is this an ordered collection? (An ordered collection is - ordered by the initialization operation, not by sorting - that happens in memory, as in the case of a sorted collection.) - - - - - A place-holder to inform that the data-reader was empty. - - - - - Generate a list of collection index and element columns - - - - - Get the names of the collection index columns if - this is an indexed collection (optional operation), - aliased by the given table alias - - - - - Get the names of the collection element columns (or the primary - key columns in the case of a one-to-many association), - aliased by the given table alias - - - - - Get the extra where clause filter SQL - - - - - - - Get the order by SQL - - - - - - - Get the order-by to be applied at the target table of a many to many - - The alias for the many-to-many target table - Appropriate order-by fragment or empty string. - - - - Get the index formulas if this is an indexed collection - (optional operation) - - - - - Get the persister of the element class, if this is a - collection of entities (optional operation). Note that - for a one-to-many association, the returned persister - must be OuterJoinLoadable. - - - - - Should we load this collection role by outer joining? - - - - - Get the names of the collection index columns if this is an indexed collection (optional operation) - - - - - Get the names of the collection element columns (or the primary key columns in the case of a one-to-many association) - - - - - Does this collection role have a where clause filter? - - - - - Reads the Element from the IDataReader. The IDataReader will probably only contain - the id of the Element. - - See ReadElementIdentifier for an explanation of why this method will be depreciated. - - - - Perform an SQL INSERT, and then retrieve a generated identifier. - - the id of the collection entry - - This form is used for PostInsertIdentifierGenerator-style ids (IDENTITY, select, etc). - - - - - Return the element class of an array, or null otherwise - - - - - Get the name of this collection role (the fully qualified class name, - extended by a "property path") - - - - - Collection persister for collections of values and many-to-many associations. - - - - - Generate the SQL DELETE that deletes all rows - - - - - - Generate the SQL INSERT that creates a new row - - - - - - Generate the SQL UPDATE that updates a row - - - - - - Generate the SQL DELETE that deletes a particular row - - - - - - Create the - - - - - Summary description for CollectionPropertyMapping. - - - - - The names of all the collection properties. - - - - - Summary description for CompositeElementPropertyMapping. - - - - - Base implementation of a PropertyMapping. - - - - - Summary description for ElementPropertyMapping. - - - - - Generate the SQL UPDATE that updates all the foreign keys to null - - - - - - Generate the SQL UPDATE that updates a foreign key to a value - - - - - - Not needed for one-to-many association - - - - - - Generate the SQL UPDATE that updates a particular row's foreign - key to null - - - - - - Create the - - - - - Superclass for built-in mapping strategies. Implements functionalty common to both mapping - strategies - - - May be considered an immutable view of the mapping object - - - - - A ClassPersister that may be loaded by outer join using - the OuterJoinLoader hierarchy and may be an element - of a one-to-many association. - - - - - Implemented by ClassPersister that uses Loader. There are several optional - operations used only by loaders that inherit OuterJoinLoader - - - - - Concrete IEntityPersisters implement mapping and persistence logic for a particular class. - - - Implementors must be threadsafe (preferably immutable) and must provide a constructor of type - matching the signature of: (PersistentClass, SessionFactoryImplementor) - - - - - Finish the initialization of this object, once all ClassPersisters have been - instantiated. Called only once, before any other method. - - - - - Determine whether the given name represents a subclass entity - (or this entity itself) of the entity mapped by this persister. - - The entity name to be checked. - - True if the given entity name represents either the entity mapped by this persister or one of its subclass entities; - false otherwise. - - - - - Get the type of a particular property - - - - - - Locate the property-indices of all properties considered to be dirty. - The current state of the entity (the state to be checked). - The previous state of the entity (the state to be checked against). - The entity for which we are checking state dirtiness. - The session in which the check is ccurring. - or the indices of the dirty properties - - - Locate the property-indices of all properties considered to be dirty. - The old state of the entity. - The current state of the entity. - The entity for which we are checking state modification. - The session in which the check is ccurring. - return or the indicies of the modified properties - - - - Retrieve the current state of the natural-id properties from the database. - - - The identifier of the entity for which to retrieve the naturak-id values. - - - The session from which the request originated. - - The natural-id snapshot. - - - - Load an instance of the persistent class. - - - - - Do a version check (optional operation) - - - - - Persist an instance - - - - - Persist an instance, using a natively generated identifier (optional operation) - - - - - Delete a persistent instance - - - - - Update a persistent instance - - The id. - The fields. - The dirty fields. - if set to [has dirty collection]. - The old fields. - The old version. - The obj. - The rowId - The session. - - - - Get the current database state of the object, in a "hydrated" form, without resolving identifiers - - - - if select-before-update is not enabled or not supported - - - - Get the current version of the object, or return null if there is no row for - the given identifier. In the case of unversioned data, return any object - if the row exists. - - - - - - - Try to discover the entity mode from the entity instance - - - Has the class actually been bytecode instrumented? - - - Called just after the entities properties have been initialized - - - Called just after the entity has been reassociated with the session - - - - Create a new proxy instance - - - - - - - Is this a new transient instance? - - - Return the values of the insertable properties of the object (including backrefs) - - - - Perform a select to retrieve the values of any generated properties - back from the database, injecting these generated values into the - given entity as well as writing this state to the persistence context. - - - Note, that because we update the persistence context here, callers - need to take care that they have already written the initial snapshot - to the persistence context before calling this method. - - The entity's id value. - The entity for which to get the state. - The entity state (at the time of Save). - The session. - - - - Perform a select to retrieve the values of any generated properties - back from the database, injecting these generated values into the - given entity as well as writing this state to the persistence context. - - - Note, that because we update the persistence context here, callers - need to take care that they have already written the initial snapshot - to the persistence context before calling this method. - - The entity's id value. - The entity for which to get the state. - The entity state (at the time of Save). - The session. - - - - The persistent class, or null - - - - - Does the class implement the ILifecycle inteface? - - - - - Does the class implement the IValidatable interface? - - - - - Get the proxy interface that instances of this concrete class will be cast to - - - - - Set the given values to the mapped properties of the given object - - - - - Set the value of a particular property - - - - - Return the values of the mapped properties of the object - - - - - Get the value of a particular property - - - - - Get the value of a particular property - - - - - Get the identifier of an instance ( throw an exception if no identifier property) - - - - - Set the identifier of an instance (or do nothing if no identifier property) - - The object to set the Id property on. - The value to set the Id property to. - The EntityMode - - - - Get the version number (or timestamp) from the object's version property (or return null if not versioned) - - - - - Create a class instance initialized with the given identifier - - - - - Determines whether the specified entity is an instance of the class - managed by this persister. - - The entity. - The EntityMode - - if the specified entity is an instance; otherwise, . - - - - Does the given instance have any uninitialized lazy properties? - - - - Set the identifier and version of the given instance back - to its "unsaved" value, returning the id - - - - Get the persister for an instance of this class or a subclass - - - - Check the version value trough . - - The snapshot entity state - The result of . - NHibernate-specific feature, not present in H3.2 - - - - The ISessionFactory to which this persister "belongs". - - - - - Returns an object that identifies the space in which identifiers of - this entity hierarchy are unique. - - - - - The entity name which this persister maps. - - - - - Retrieve the underlying entity metamodel instance... - - The metamodel - - - - Returns an array of objects that identify spaces in which properties of - this entity are persisted, for instances of this class only. - - The property spaces. - - For most implementations, this returns the complete set of table names - to which instances of the mapped entity are persisted (not accounting - for superclass entity mappings). - - - - - Returns an array of objects that identify spaces in which properties of - this entity are persisted, for instances of this class and its subclasses. - - - Much like , except that here we include subclass - entity spaces. - - The query spaces. - - - - Are instances of this class mutable? - - - - - Determine whether the entity is inherited one or more other entities. - In other words, is this entity a subclass of other entities. - - True if other entities extend this entity; false otherwise. - - - - Is the identifier assigned before the insert by an IDGenerator or is it returned - by the Insert() method? - - - This determines which form of Insert() will be called. - - - - - Are instances of this class versioned by a timestamp or version number column? - - - - - Get the type of versioning (optional operation) - - - - - Which property holds the version number? (optional operation) - - - - - If the entity defines a natural id (), which - properties make up the natural id. - - - The indices of the properties making of the natural id; or - null, if no natural id is defined. - - - - - Return the IIdentifierGenerator for the class - - - - - Get the Hibernate types of the class properties - - - - - Get the names of the class properties - doesn't have to be the names of the actual - .NET properties (used for XML generation only) - - - - - Gets if the Property is insertable. - - if the Property's value can be inserted. - - This is for formula columns and if the user sets the insert attribute on the <property> element. - - - - Which of the properties of this class are database generated values on insert? - - - Which of the properties of this class are database generated values on update? - - - - Properties that may be dirty (and thus should be dirty-checked). These - include all updatable properties and some associations. - - - - - Get the nullability of the properties of this class - - - - - Get the "versionability" of the properties of this class (is the property optimistic-locked) - - if the property is optimistic-locked; otherwise, . - - - - Get the cascade styles of the properties (optional operation) - - - - - Get the identifier type - - - - - Get the name of the indentifier property (or return null) - need not return the - name of an actual .NET property - - - - - Should we always invalidate the cache instead of recaching updated state - - - - - Should lazy properties of this entity be cached? - - - - - Get the cache (optional operation) - - - - Get the cache structure - - - - Get the user-visible metadata for the class (optional operation) - - - - - Is batch loading enabled? - - - - Is select snapshot before update enabled? - - - - Does this entity contain a version property that is defined - to be database generated? - - - - - Does this class support dynamic proxies? - - - - - Do instances of this class contain collections? - - - - - Determine whether any properties of this entity are considered mutable. - - - True if any properties of the entity are mutable; false otherwise (meaning none are). - - - - - Determine whether this entity contains references to persistent collections - which are fetchable by subselect? - - - True if the entity contains collections fetchable by subselect; false otherwise. - - - - - Does this class declare any cascading save/update/deletes? - - - - - Does the class have a property holding the identifier value? - - - - - Determine whether detahced instances of this entity carry their own - identifier value. - - - True if either (1) or - (2) the identifier is an embedded composite identifier; false otherwise. - - - The other option is the deprecated feature where users could supply - the id during session calls. - - - - - Determine whether this entity defines a natural identifier. - - True if the entity defines a natural id; false otherwise. - - - - Determine whether this entity defines any lazy properties (ala - bytecode instrumentation). - - - True if the entity has properties mapped as lazy; false otherwise. - - - - - Gets if the Property is updatable - - if the Property's value can be updated. - - This is for formula columns and if the user sets the update attribute on the <property> element. - - - - - Does this class have a cache? - - - - - Does this entity define any properties as being database-generated on insert? - - - - - Does this entity define any properties as being database-generated on update? - - - - - Get the concrete subclass corresponding to the given discriminator value - - - - - Get the result set aliases used for the identifier columns, given a suffix - - - - - Get the result set aliases used for the property columns, given a suffix (properties of this class, only). - - - - - Get the result set column names mapped for this property (properties of this class, only). - - - - - Get the alias used for the discriminator column, given a suffix - - - - - Retrieve property values from one row of a result set - - - - - The discriminator type - - - - - Get the names of columns used to persist the identifier - - - - - Get the name of the column used as a discriminator - - - - - Does the persistent class have subclasses? - - - - Does the result set contain rowids? - - - - Generate a list of collection index and element columns - - - - - - - - How many properties are there, for this class and all subclasses? (optional operation) - - - - - - May this property be fetched using an SQL outerjoin? - - - - - - - Get the cascade style of this (subclass closure) property - - - - - Is this property defined on a subclass of the mapped class? - - - - - - - Get an array of the types of all properties of all subclasses (optional operation) - - - - - - - Get the name of the numbered property of the class or a subclass - (optional operation) - - - - - - - Is the numbered property of the class of subclass nullable? - - - - - Return the column names used to persist all properties of all sublasses of the persistent class - (optional operation) - - - - - Return the table name used to persist the numbered property of - the class or a subclass - (optional operation) - - - - - Given the number of a property of a subclass, and a table alias, return the aliased column names - (optional operation) - - - - - - - - Get the main from table fragment, given a query alias (optional operation) - - - - - - - Get the column names for the given property path - - - - - Get the table name for the given property path - - - - - Return the alised identifier column names - - - - - Get the table alias used for the supplied column - - - - - Extends the generic ILoadable contract to add operations required by HQL - - - - - Given a query alias and an identifying suffix, render the identifier select fragment. - - - - - - - - Given a query alias and an identifying suffix, render the property select fragment. - - - - - Given a property name, determine the number of the table which contains the column - to which this property is mapped. - - The name of the property. - The number of the table to which the property is mapped. - - Note that this is not relative to the results from {@link #getConstraintOrderedTableNameClosure()}. - It is relative to the subclass table name closure maintained internal to the persister (yick!). - It is also relative to the indexing used to resolve {@link #getSubclassTableName}... - - - - Determine whether the given property is declared by our - mapped class, our super class, or one of our subclasses... -

- Note: the method is called 'subclass property...' simply - for consistency sake (e.g. {@link #getSubclassPropertyTableNumber} -

- The property name. - The property declarer -
- - - Get the name of the table with the given index from the internal array. - - The index into the internal array. - - - - - The alias used for any filter conditions (mapped where-fragments or - enabled-filters). - - The root alias - The alias used for "filter conditions" within the where clause. - - This may or may not be different from the root alias depending upon the - inheritance mapping strategy. - - - - - Is this class explicit polymorphism only? - - - - - The class that this class is mapped as a subclass of - not necessarily the direct superclass - - - - - The discriminator value for this particular concrete subclass, as a string that may be - embedded in a select statement - - - - - The discriminator value for this particular concrete subclass - - The DiscriminatorValue is specific of NH since we are using strongly typed parameters for SQL query. - - - - Is the inheritance hierarchy described by this persister contained across - multiple tables? - - True if the inheritance hierarchy is spread across multiple tables; false otherwise. - - - - Get the names of all tables used in the hierarchy (up and down) ordered such - that deletes in the given order would not cause constraint violations. - - The ordered array of table names. - - - - For each table specified in , get - the columns that define the key between the various hierarchy classes. - - - The first dimension here corresponds to the table indexes returned in - . - - The second dimension should have the same length across all the elements in - the first dimension. If not, that'd be a problem ;) - - - - - Get the name of the temporary table to be used to (potentially) store id values - when performing bulk update/deletes. - - The appropriate temporary table name. - - - - Get the appropriate DDL command for generating the temporary table to - be used to (potentially) store id values when performing bulk update/deletes. - - The appropriate temporary table creation command. - - - Is the version property included in insert statements? - - - - Describes a class that may be loaded via a unique key. - - - - - Load an instance of the persistent class, by a unique key other than the primary key. - - - - - Get the property number of the unique key property - - - - - A class persister that supports queries expressed in the platform native SQL dialect. - - - - - Returns the column alias names used to persist/query the numbered property of the class or a subclass (optional operation). - - - - - Return the column names used to persist/query the named property of the class or a subclass (optional operation). - - - - - All columns to select, when loading. - - - - - Get the type - - - - - Contract for things that can be locked via a . - - - Currently only the root table gets locked, except for the case of HQL and Criteria queries - against dialects which do not support either (1) FOR UPDATE OF or (2) support hint locking - (in which case *all* queried tables would be locked). - - - - - Get the SQL alias this persister would use for the root table - given the passed driving alias. - - - The driving alias; or the alias for the table mapped by this persister in the hierarchy. - - The root table alias. - - - - Locks are always applied to the "root table". - - - - - Get the names of columns on the root table used to persist the identifier. - - - - - For versioned entities, get the name of the column (again, expected on the - root table) used to store the version values. - - - - - To build the SQL command in pessimistic lock - - - - - Decide which tables need to be updated - - The indices of all the entity properties considered dirty. - Whether any collections owned by the entity which were considered dirty. - Array of booleans indicating which table require updating. - - The return here is an array of boolean values with each index corresponding - to a given table in the scope of this persister. - - - - - Generate the SQL that selects the version number by id - - - - - Retrieve the version number - - - - - Warning: - When there are duplicated property names in the subclasses - of the class, this method may return the wrong table - number for the duplicated subclass property (note that - SingleTableEntityPersister defines an overloaded form - which takes the entity name. - - - - - Get the column names for the numbered property of this class - - - - - Must be called by subclasses, at the end of their constructors - - - - Generate the SQL that updates a row by id (and version) - - - Generate the SQL that inserts a row - - - Marshall the fields of a persistent instance to a prepared statement - - - - Unmarshall the fields of a persistent instance from a result set, - without resolving associations or collections - - - - - Perform an SQL INSERT, and then retrieve a generated identifier. - - - This form is used for PostInsertIdentifierGenerator-style ids (IDENTITY, select, etc). - - - - - Perform an SQL INSERT. - - - This for is used for all non-root tables as well as the root table - in cases where the identifier value is known before the insert occurs. - - - - Perform an SQL UPDATE or SQL INSERT - - - - Perform an SQL DELETE - - - - - Load an instance using the appropriate loader (as determined by - - - - - Transform the array of property indexes to an array of booleans, true when the property is dirty - - - - Which properties appear in the SQL update? (Initialized, updateable ones!) - - - - Determines whether the specified entity is an instance of the class - managed by this persister. - - The entity. - The entity mode. - - if the specified entity is an instance; otherwise, . - - - - - The queries that delete rows by id (and version) - - - - - The queries that insert rows with a given id - - - - - The queries that update rows by id (and version) - - - - - The query that inserts a row, letting the database generate an id - - The IDENTITY-based insertion query. - - - - We can't immediately add to the cache if we have formulas - which must be evaluated, or if we have the possibility of - two concurrent updates to the same item being merged on - the database. This can happen if (a) the item is not - versioned and either (b) we have dynamic update enabled - or (c) we have multiple tables holding the state of the - item. - - - - The property name of the "special" identifier property in HQL - - - - A IEntityPersister implementing the normalized "table-per-subclass" mapping strategy - - - - - Constructs the NormalizedEntityPerister for the PersistentClass. - - The PersistentClass to create the EntityPersister for. - The configured . - The SessionFactory that this EntityPersister will be stored in. - The mapping used to retrieve type information. - - - - Find the Index of the table name from a list of table names. - - The name of the table to find. - The array of table names - The Index of the table in the array. - Thrown when the tableName specified can't be found - - - - Not really a Loader, just a wrapper around a named query. - - - - - Default implementation of the ClassPersister interface. Implements the - "table-per-class hierarchy" mapping strategy for an entity class. - - - - - Factory for IEntityPersister and ICollectionPersister instances. - - - - - Creates a built in Entity Persister or a custom Persister. - - - - - Creates a specific Persister - could be a built in or custom persister. - - - - - A Strategy for converting a mapped property name to a Field name. - - - - - When implemented by a class, converts the Property's name into a Field name - - The name of the mapped property. - The name of the Field. - - - Represents a "back-reference" to the id of a collection owner. - - - - Abstracts the notion of a "property". Defines a strategy for accessing the - value of a mapped property. - - - - - When implemented by a class, create a "getter" for the mapped property. - - The to find the Property in. - The name of the mapped Property to get. - - The to use to get the value of the Property from an - instance of the . - - Thrown when a Property specified by the propertyName could not - be found in the . - - - - - When implemented by a class, create a "setter" for the mapped property. - - The to find the Property in. - The name of the mapped Property to set. - - The to use to set the value of the Property on an - instance of the . - - - Thrown when a Property specified by the propertyName could not - be found in the . - - - - - Allow embedded and custom accessors to define if the ReflectionOptimizer can be used. - - - - The Setter implementation for id backrefs. - - - - Sets values of a particular mapped property. - - - - - When implemented by a class, sets the value of the Property/Field on the object. - - The object to set the Property value in. - The value to set the Property to. - - Thrown when there is a problem setting the value in the target. - - - - - When implemented by a class, gets the name of the Property. - - The name of the Property or . - - This is an optional operation - if it is not implemented then - is an acceptable value to return. - - - - - When implemented by a class, gets the for the set - accessor of the property. - - - This is an optional operation - if the is not - for a property set then is an acceptable value to return. - It is used by the proxies to determine which setter to intercept for the - identifier property. - - - - The Getter implementation for id backrefs. - - - - Gets values of a particular mapped property. - - - - - When implemented by a class, gets the value of the Property/Field from the object. - - The object to get the Property/Field value from. - - The value of the Property for the target. - - - Thrown when there is a problem getting the value from the target. - - - - Get the property value from the given owner instance. - The instance containing the value to be retrieved. - a map of merged persistent instances to detached instances - The session from which this request originated. - The extracted value. - - - - When implemented by a class, gets the that the Property/Field returns. - - The that the Property returns. - - - - When implemented by a class, gets the name of the Property. - - The name of the Property or . - - This is an optional operation - if the is not - for a Property get then is an acceptable value to return. - - - - - When implemented by a class, gets the for the get - accessor of the property. - - - This is an optional operation - if the is not - for a property get then is an acceptable value to return. - It is used by the proxies to determine which getter to intercept for the - identifier property. - - - - - Accesses mapped property values via a get/set pair, which may be nonpublic. - The default (and recommended strategy). - - - - - Create a for the mapped property. - - The to find the Property in. - The name of the mapped Property to get. - - The to use to get the value of the Property from an - instance of the . - - Thrown when a Property specified by the propertyName could not - be found in the . - - - - - Create a for the mapped property. - - The to find the Property in. - The name of the mapped Property to get. - - The to use to set the value of the Property on an - instance of the . - - - Thrown when a Property specified by the propertyName could not - be found in the . - - - - - Helper method to find the Property get. - - The to find the Property in. - The name of the mapped Property to get. - - The for the Property get or - if the Property could not be found. - - - - - Helper method to find the Property set. - - The to find the Property in. - The name of the mapped Property to set. - - The for the Property set or - if the Property could not be found. - - - - - An for a Property get. - - - - - An that can emit IL to get the property value. - - - - - Emit IL to get the property value from the object on top of the stack. - - - - - Initializes a new instance of . - - The that contains the Property get. - The for reflection. - The name of the Property. - - - - Gets the value of the Property from the object. - - The object to get the Property value from. - - The value of the Property for the target. - - - - - Gets the that the Property returns. - - The that the Property returns. - - - - Gets the name of the Property. - - The name of the Property. - - - - Gets the for the Property. - - - The for the Property. - - - - - An for a Property set. - - - - - An that can emit IL to set the property value. - - - - - Emit IL to set the property of an object to the value. The object - is loaded onto the stack first, then the value, then this method - is called. - - - - - Initializes a new instance of . - - The that contains the Property set. - The for reflection. - The name of the mapped Property. - - - - Sets the value of the Property on the object. - - The object to set the Property value in. - The value to set the Property to. - - Thrown when there is a problem setting the value in the target. - - - - - Gets the name of the mapped Property. - - The name of the mapped Property or . - - - - Gets the for the mapped Property. - - The for the mapped Property. - - - - Implementation of for fields that are prefixed with - an m_ and the PropertyName is changed to camelCase. - - - - - Converts the Property's name into a Field name by making the first character - of the propertyName lowercase and prefixing it with the letter 'm' - and an underscore. - - The name of the mapped property. - The name of the Field in CamelCase format prefixed with an 'm' and an underscore. - - - - Implementation of for fields that are the - camelCase version of the PropertyName - - - - - Converts the Property's name into a Field name by making the first character - lower case. - - The name of the mapped property. - The name of the Field in CamelCase format. - - - - Implementation of for fields that are prefixed with - an underscore and the PropertyName is changed to camelCase. - - - - - Converts the Property's name into a Field name by making the first character - of the propertyName lowercase and prefixing it with an underscore. - - The name of the mapped property. - The name of the Field in CamelCase format prefixed with an underscore. - - - - Access the mapped property by using a Field to get and set the value. - - - The is useful when you expose getter and setters - for a Property, but they have extra code in them that shouldn't be executed when NHibernate - is setting or getting the values for loads or saves. - - - - - Initializes a new instance of . - - - - - Initializes a new instance of . - - The to use. - - - - Create a to get the value of the mapped Property - through a Field. - - The to find the Property in. - The name of the mapped Property to get. - - The to use to get the value of the Property from an - instance of the . - - Thrown when a Field specified by the propertyName could not - be found in the . - - - - - Create a to set the value of the mapped Property - through a Field. - - The to find the mapped Property in. - The name of the mapped Property to set. - - The to use to set the value of the Property on an - instance of the . - - - Thrown when a Field for the Property specified by the propertyName using the - could not be found in the . - - - - - Helper method to find the Field. - - The to find the Field in. - The name of the Field to find. - - The for the field. - - - Thrown when a field could not be found. - - - - - Converts the mapped property's name into a Field using - the if one exists. - - The name of the Property. - The name of the Field. - - - - Gets the used to convert the name of the - mapped Property in the hbm.xml file to the name of the field in the class. - - The or . - - - - An that uses a Field instead of the Property get. - - - - - Initializes a new instance of . - - The that contains the field to use for the Property get. - The for reflection. - The name of the Field. - - - - Gets the value of the Field from the object. - - The object to get the Field value from. - - The value of the Field for the target. - - - - - Gets the that the Field returns. - - The that the Field returns. - - - - Gets the name of the Property. - - since this is a Field - not a Property. - - - - Gets the for the Property. - - since this is a Field - not a Property. - - - - An that uses a Field instead of the Property set. - - - - - Initializes a new instance of . - - The that contains the Field to use for the Property set. - The for reflection. - The name of the Field. - - - - Sets the value of the Field on the object. - - The object to set the Field value in. - The value to set the Field to. - - Thrown when there is a problem setting the value in the target. - - - - - Gets the name of the Property. - - since this is a Field - not a Property. - - - - Gets the for the Property. - - since this is a Field - not a Property. - - - Represents a "back-reference" to the index of a collection. - - - Constructs a new instance of IndexPropertyAccessor. - The collection role which this back ref references. - The owner entity name. - - - The Setter implementation for index backrefs. - - - The Getter implementation for index backrefs. - - - - Implementation of for fields that are - the PropertyName in all LowerCase characters. - - - - - Converts the Property's name into a Field name by making the all characters - of the propertyName lowercase. - - The name of the mapped property. - The name of the Field in lowercase. - - - - Implementation of for fields that are prefixed with - an underscore and the PropertyName is changed to lower case. - - - - - Converts the Property's name into a Field name by making the all characters - of the propertyName lowercase and prefixing it with an underscore. - - The name of the mapped property. - The name of the Field in lowercase prefixed with an underscore. - - - Used to declare properties not represented at the pojo level - - - A Getter which will always return null. It should not be called anyway. - - - A Setter which will just do nothing. - - - - Access the mapped property through a Property get to get the value - and go directly to the Field to set the value. - - - This is most useful because Classes can provider a get for the Property - that is the <id> but tell NHibernate there is no setter for the Property - so the value should be written directly to the field. - - - - - Initializes a new instance of . - - The to use. - - - - Creates an to get the value from the Property. - - The to find the Property in. - The name of the mapped Property to get. - - The to use to get the value of the Property from an - instance of the . - - Thrown when a Property specified by the propertyName could not - be found in the . - - - - - Create a to set the value of the mapped Property - through a Field. - - The to find the mapped Property in. - The name of the mapped Property to set. - - The to use to set the value of the Property on an - instance of the . - - - Thrown when a Field for the Property specified by the propertyName using the - could not be found in the . - - - - - Converts the Property's name into a Field name by making the first character - of the propertyName uppercase and prefixing it with the letter 'm'. - - The name of the mapped property. - The name of the Field in PascalCase format prefixed with an 'm'. - - - - Implementation of for fields that are prefixed with - an m_ and the first character in PropertyName capitalized. - - - - - Converts the Property's name into a Field name by making the first character - of the propertyName uppercase and prefixing it with the letter 'm' - and an underscore. - - The name of the mapped property. - The name of the Field in PascalCase format prefixed with an 'm' and an underscore. - - - - Implementation of for fields that are prefixed with - an _ and the first character in PropertyName capitalized. - - - - - Converts the Property's name into a Field name by making the first character - of the propertyName uppercase and prefixing it with an underscore. - - The name of the mapped property. - The name of the Field in PascalCase format prefixed with an underscore. - - - - Factory for creating the various PropertyAccessor strategies. - - - - - Initializes the static members in . - - - - - Gets or creates the specified by the type. - - - The specified by the type. - - - The built in ways of accessing the values of Properties in your domain class are: - - - - Access Method - How NHibernate accesses the Mapped Class. - - - property - - The name attribute is the name of the Property. This is the - default implementation. - - - - field - - The name attribute is the name of the field. If you have any Properties - in the Mapped Class those will be bypassed and NHibernate will go straight to the - field. This is a good option if your setters have business rules attached to them - or if you don't want to expose a field through a Getter & Setter. - - - - nosetter - - The name attribute is the name of the Property. NHibernate will use the - Property's get method to retrieve the value and will use the field - to set the value. This is a good option for <id> Properties because this access method - allows users of the Class to get the value of the Id but not set the value. - - - - readonly - - The name attribute is the name of the Property. NHibernate will use the - Property's get method to retrieve the value but will never set the value back in the domain. - This is used for read-only calculated properties with only a get method. - - - - Assembly Qualified Name - - If NHibernate's built in s are not what is needed for your - situation then you are free to build your own. Provide an Assembly Qualified Name so that - NHibernate can call Activator.CreateInstance(AssemblyQualifiedName) to create it. - - - - - In order for the nosetter to know the name of the field to access NHibernate needs to know - what the naming strategy is. The following naming strategies are built into NHibernate: - - - - Naming Strategy - How NHibernate converts the value of the name attribute to a field name. - - - camelcase - - The name attribute should be changed to CamelCase to find the field. - <property name="FooBar" ... > finds a field fooBar. - - - - camelcase-underscore - - The name attribute should be changed to CamelCase and prefixed with - an underscore to find the field. - <property name="FooBar" ... > finds a field _fooBar. - - - - camelcase-m-underscore - - The name attribute should be changed to CamelCase and prefixed with - an 'm' and underscore to find the field. - <property name="FooBar" ... > finds a field m_fooBar. - - - - pascalcase-underscore - - The name attribute should be prefixed with an underscore - to find the field. - <property name="FooBar" ... > finds a field _FooBar. - - - - pascalcase-m-underscore - - The name attribute should be prefixed with an 'm' and underscore - to find the field. - <property name="FooBar" ... > finds a field m_FooBar. - - - - pascalcase-m - - The name attribute should be prefixed with an 'm'. - <property name="FooBar" ... > finds a field mFooBar. - - - - lowercase - - The name attribute should be changed to lowercase to find the field. - <property name="FooBar" ... > finds a field foobar. - - - - lowercase-underscore - - The name attribute should be changed to lowercase and prefixed with - and underscore to find the field. - <property name="FooBar" ... > finds a field _foobar. - - - - - The naming strategy can also be appended at the end of the field access method. Where - this could be useful is a scenario where you do expose a get and set method in the Domain Class - but NHibernate should only use the fields. - - - With a naming strategy and a get/set for the Property available the user of the Domain Class - could write an Hql statement from Foo as foo where foo.SomeProperty = 'a'. If no naming - strategy was specified the Hql statement would have to be from Foo as foo where foo._someProperty - (assuming CamelCase with an underscore field naming strategy is used). - - - - - Retrieves a PropertyAccessor instance based on the given property definition and entity mode. - The property for which to retrieve an accessor. - The mode for the resulting entity. - An appropriate accessor. - - - - Access the mapped property through a Property get to get the value - and do nothing to set the value. - - - This is useful to allow calculated properties in the domain that will never - be recovered from the DB but can be used for querying. - - - - - Initializes a new instance of . - - - - - Creates an to get the value from the Property. - - The to find the Property in. - The name of the mapped Property to get. - - The to use to get the value of the Property from an - instance of the . - - Thrown when a Property specified by the propertyName could not - be found in the . - - - - - Create a to do nothing when trying to - se the value of the mapped Property - - The to find the mapped Property in. - The name of the mapped Property to set. - - An instance of . - - - - - Responsible for accessing property values represented as a XmlElement - or XmlAttribute. - - - - For nodes like "@bar" - - - Defines the strategy for getting property values out of a dom4j Node. - - - Get the declared type - - - Optional operation (return null) - - - Optional operation (return null) - - - For nodes like "@bar" - - - Optional operation (return null) - - - Optional operation (return null) - - - For nodes like "foo/@bar" - - - For nodes like "foo/@bar" - - - For nodes like "foo" - - - For nodes like "foo" - - - For nodes like "." - - - For nodes like "." - - - Lazy initializer for "dynamic-map" entity representations. - - - - Provides the base functionality to Handle Member calls into a dynamically - generated NHibernate Proxy. - - - This could be an extension point later if the .net framework ever gets a Proxy - class that is similar to the java.lang.reflect.Proxy or if a library similar - to cglib was made in .net. - - - - - Perform an ImmediateLoad of the actual object for the Proxy. - - - Thrown when the Proxy has no Session or the Session is closed or disconnected. - - - - - Return the underlying persistent object, initializing if necessary. - - The persistent object this proxy is proxying. - - - - Return the underlying persistent object in a given , or null. - - The session to get the object from. - The persistent object this proxy is proxying, or . - - - - Initialize the proxy manually by injecting its target. - - The proxy target (the actual entity being proxied). - - - - Associate the proxy with the given session. - - Care should be given to make certain that the proxy is added to the session's persistence context as well - to maintain the symmetry of the association. That must be done separately as this method simply sets an - internal reference. We do also check that if there is already an associated session that the proxy - reference was removed from that previous session's persistence context. - - The session - - - - Unset this initializer's reference to session. It is assumed that the caller is also taking care or - cleaning up the owning proxy's reference in the persistence context. - - Generally speaking this is intended to be called only during and - processing; most other use-cases should call instead. - - - - - The identifier value for the entity our owning proxy represents. - - - - - The entity-name of the entity our owning proxy represents. - - - - - Get the actual class of the entity. Generally, should be used instead. - - - - - Is the proxy uninitialzed? - - - - - Get the session to which this proxy is associated, or null if it is not attached. - - - - - Is the read-only setting available? - - - - - Read-only status - - - - Not available when the proxy is detached or its associated session is closed. - - - To check if the read-only setting is available, use - - - The read-only status of the entity will be made to match the read-only status of the proxy - upon initialization. - - - - - - If this is returned by Invoke then the subclass needs to Invoke the - method call against the object that is being proxied. - - - - - Create a LazyInitializer to handle all of the Methods/Properties that are called - on the Proxy. - - The entityName - The Id of the Object we are Proxying. - The ISession this Proxy is in. - - - - - - - - - - Perform an ImmediateLoad of the actual object for the Proxy. - - - Thrown when the Proxy has no Session or the Session is closed or disconnected. - - - - - Return the Underlying Persistent Object, initializing if necessary. - - The Persistent Object this proxy is Proxying. - - - - Return the Underlying Persistent Object in a given , or null. - - The Session to get the object from. - The Persistent Object this proxy is Proxying, or . - - - - - - - - - Proxy for "dynamic-map" entity representations. - - - - A marker interface so NHibernate can know if it is dealing with - an object that is a Proxy. - - - - This interface should not be implemented by anything other than - the Dynamically generated Proxy. If it is implemented by a class then - NHibernate will think that class is a Proxy and will not work. - - - It has to be public scope because - the Proxies are created in a separate DLL than NHibernate. - - - - - Get the underlying lazy initialization handler. - - - Contract for run-time, proxy-based lazy initialization proxies. - - - Called immediately after instantiation of this factory. - - The name of the entity for which this factory should generate proxies. - - - The entity class for which to generate proxies; not always the same as the entityName. - - - The interfaces to expose in the generated proxy; - is already included in this collection. - - - Reference to the identifier getter method; invocation on this method should not force initialization - - - Reference to the identifier setter method; invocation on this method should not force initialization - - - For composite identifier types, a reference to - the type of the identifier - property; again accessing the id should generally not cause - initialization - but need to bear in mind key-many-to-one - mappings. - - Indicates a problem completing post - - Essentially equivalent to constructor injection, but contracted - here via interface. - - - - - Create a new proxy - - The id value for the proxy to be generated. - The session to which the generated proxy will be associated. - The generated proxy. - Indicates problems generating requested proxy. - - - Lazy initializer for POCOs - - - - Adds all of the information into the SerializationInfo that is needed to - reconstruct the proxy during deserialization or to replace the proxy - with the instantiated target. - - - This will only be called if the Dynamic Proxy generator does not handle serialization - itself or delegates calls to the method GetObjectData to the LazyInitializer. - - - - - Invokes the method if this is something that the LazyInitializer can handle - without the underlying proxied object being instantiated. - - The name of the method/property to Invoke. - The arguments to pass the method/property. - The proxy object that the method is being invoked on. - - The result of the Invoke if the underlying proxied object is not needed. If the - underlying proxied object is needed then it returns the result - which indicates that the Proxy will need to forward to the real implementation. - - - - - Convenient common implementation for ProxyFactory - - - - - Proxeability validator. - - - - - Validates whether can be specified as the base class - (or an interface) for a dynamically-generated proxy. - - The type to validate. - - A collection of errors messages, if any, or if none were found. - - - When the configuration property "use_proxy_validator" is set to true(default), the result of this method - is used to throw a detailed exception about the proxeability of the given . - - - - - Validate if a single method can be intercepted by proxy. - - The given method to check. - if the method can be intercepted by proxy. - otherwise. - - - This method can be used internally by the and is used - by to log errors when - a property accessor can't be intercepted by proxy. - The validation of property accessors is fairly enough if you ecampsulate each property. - - - - - Validates whether can be specified as the base class - (or an interface) for a dynamically-generated proxy. - - The type to validate. - - A collection of errors messages, if any, or if none were found. - - - - - NHibernateProxyHelper provides convenience methods for working with - objects that might be instances of Classes or the Proxied version of - the Class. - - - - - Get the class of an instance or the underlying class of a proxy (without initializing the proxy!). - It is almost always better to use the entity name! - - The object to get the type of. - The Underlying Type for the object regardless of if it is a Proxy. - - - - Get the true, underlying class of a proxied persistent class. This operation - will NOT initialize the proxy and thus may return an incorrect result. - - a persistable object or proxy - guessed class of the instance - - This method is approximate match for Session.bestGuessEntityName in H3.2 - - - - - Represents SQL Server SELECT query parser, primarily intended to support generation of - limit queries by SQL Server dialects. - - - - - Column definitions in SELECT clause - - - - - Column definitions for columns that appear in ORDER BY clause - but do not appear in SELECT clause. - - - - - Sort orders as defined in ORDER BY clause - - - - - A SQL query token as returned by - - - - - Position at which this token occurs in a . - - - - - Number of characters in this token. - - - - - Splits a into s. - - - - - token types. - - - - - Whitespace - - - - - Single line comment (preceeded by --) or multi-line comment (terminated by /* and */) - - - - - Keywords, operators or undelimited identifiers. - - - - - Delimited identifiers or string literals. - - - - - A query parameter. - - - - - List separator, the ',' character. - - - - - Begin of an expression block, consisting of a '(' character. - - - - - End of an expression block, consisting of a ')' character. - - - - - Tokens for begin or end of expression blocks. - - - - - Includes all token types except whitespace or comments - - - - - Includes all token types except whitespace - - - - - Includes all token types - - - - - Aliases tables and fields for Sql Statements. - - - Several methods of this class take an additional - parameter, while their Java counterparts - do not. The dialect is used to correctly quote and unquote identifiers. - Java versions do the quoting and unquoting themselves and fail to - consider dialect-specific rules, such as escaping closing brackets in - identifiers on MS SQL 2000. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - An ANSI SQL CASE expression. - case when ... then ... end as ... - - This class looks StringHelper.SqlParameter safe... - - - Abstract SQL case fragment renderer - - - - An ANSI-style Join. - - - - - Represents a SQL JOIN - - - - - - - - Sets the op - - The op to set - - - - - - - - - - - - - - - - - - - - - - - - - - - - - An Oracle-style DECODE function. - - decode(pkvalue, key1, 1, key2, 2, ..., 0) - - - - - - - - Represents an SQL for update of ... nowait statement - - - - - An Informix-style (theta) Join - - - - - Represents an ... in (...) expression - - - - - Add a value to the value list. Value may be a string, - a , or one of special values - or . - - - - - - - - An Oracle-style (theta) Join - - - - - This method is a bit of a hack, and assumes - that the column on the "right" side of the - join appears on the "left" side of the - operator, which is extremely weird if this - was a normal join condition, but is natural - for a filter. - - - - - A placeholder for an ADO.NET parameter in an . - - - - - We need to know what the position of the parameter was in a query - before we rearranged the query. - This is the ADO parameter position that this SqlString parameter is - bound to. The SqlString can be safely rearranged once this is set. - - - - - Create a parameter with the specified position - - - - - Generates an array of parameters. - - The number of parameters to generate. - An array of objects - - - - Determines whether this instance and the specified object - are of the same type and have the same values. - - An object to compare to this instance. - - if the object equals the current instance. - - - - - Gets a hash code for the parameter. - - - An value for the hash code. - - - - - Used to determine the parameter's name (p0,p1 etc.) - - - - - Unique identifier of a parameter to be tracked back by its generator. - - - We have various query-systems. Each one, at the end, give us a . - At the same time we have various bad-guys playing the game (hql function implementations, the dialect...). - A bad guy can rearrange a and the query-system can easly lost organization/sequence of parameters. - Using the the query-system can easily find where are its parameters. - - - - - Used as a placeholder when parsing HQL or SQL queries. - - - - - Summary description for QueryJoinFragment. - - - - - Summary description for QuerySelect. - - - - - Certain databases don't like spaces around these operators. - - - This needs to contain both a plain string and a - SqlString version of the operator because the portions in - the WHERE clause will come in as SqlStrings since there - might be parameters, other portions of the clause come in - as strings since there are no parameters. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Adds a string containing a valid "order by" sql statement - to this QuerySelect - - The "order by" sql statement. - - - - - - - - - - - - - - - - - Represents part of an SQL SELECT clause - - - - - Equivalent to ToSqlStringFragment. - - - - In H3, it is called ToFragmentString(). It appears to be - functionally equivalent as ToSqlStringFragment() here. - - - - - The base class for all of the SqlBuilders. - - - - - Converts the ColumnNames and ColumnValues to a WhereFragment - - The names of the Columns to Add to the WhereFragment - A SqlString that contains the WhereFragment - This just calls the overloaded ToWhereFragment() with the operator as " = " and the tableAlias null. - - - - Converts the ColumnNames and ColumnValues to a WhereFragment - - The Alias for the Table. - The names of the Columns to Add to the WhereFragment - A SqlString that contains the WhereFragment - This defaults the op to " = " - - - - Converts the ColumnNames and ColumnValues to a WhereFragment - - The names of the Columns to Add to the WhereFragment - The operator to use between the names & values. For example " = " or "!=" - A SqlString that contains the WhereFragment - - - - Converts the ColumnNames and ColumnValues to a WhereFragment - - The Alias for the Table. - The names of the Columns to Add to the WhereFragment - The operator to use between the names & values. For example " = " or "!=" - A SqlString that contains the WhereFragment - - - - re-set the index of each parameter in the final command. - - The offset from where start the list of , in the given command, for the this . - - Suppose the final command is composed by two queries. The for the first query is zero. - If the first query command has 12 parameters (size of its SqlType array) the offset to bind all s, of the second query in the - command, is 12 (for the first query we are using from 0 to 11). - - This method should be called before call . - - - - - - Bind the appropriate value into the given command. - - The command into which the value should be bound. - The parameter-list of the whole query of the command. - The offset from where start the list of , in the given , for the this . - The session against which the current execution is occuring. - - Suppose the is composed by two queries. The for the first query is zero. - If the first query in has 12 parameters (size of its SqlType array) the offset to bind all s, of the second query in the - , is 12 (for the first query we are using from 0 to 11). - - - - - Bind the appropriate value into the given command. - - The command into which the value should be bound. - The session against which the current execution is occuring. - - Use this method when the contains just 'this' instance of . - Use the overload when the contains more instances of . - - - - - Bind the appropriate value into the given command. - - The command into which the value should be bound. - The parameter-list of the whole query of the command. - The offset from where start the list of , in the given , for the this . - The session against which the current execution is occuring. - - - - Bind the appropriate value into the given command. - - The command into which the value should be bound. - The session against which the current execution is occuring. - - Use this method when the contains just 'this' instance of . - Use the overload when the contains more instances of . - - - - - A class that builds an DELETE sql statement. - - - - - Sets the IdentityColumn for the DELETE sql to use. - - An array of the column names for the Property - The IType of the Identity Property. - The SqlDeleteBuilder. - - - - Sets the VersionColumn for the DELETE sql to use. - - An array of the column names for the Property - The IVersionType of the Version Property. - The SqlDeleteBuilder. - - - - Adds the columns for the Type to the WhereFragment - - The names of the columns to add. - The IType of the property. - The operator to put between the column name and value. - The SqlDeleteBuilder - - - - Adds a string to the WhereFragement - - A well formed sql statement with no parameters. - The SqlDeleteBuilder - - - - Builds a SELECT SQL statement. - - - - - Sets the text that should appear after the FROM - - The fromClause to set - The SqlSelectBuilder - - - - Sets the text that should appear after the FROM - - The name of the Table to get the data from - The Alias to use for the table name. - The SqlSelectBuilder - - - - Sets the text that should appear after the FROM - - The fromClause in a SqlString - The SqlSelectBuilder - - - - Sets the text that should appear after the ORDER BY. - - The orderByClause to set - The SqlSelectBuilder - - - - Sets the text that should appear after the GROUP BY. - - The groupByClause to set - The SqlSelectBuilder - - - - Sets the SqlString for the OUTER JOINs. - - - All of the Sql needs to be included in the SELECT. No OUTER JOINS will automatically be - added. - - The outerJoinsAfterFrom to set - The outerJoinsAfterWhere to set - The SqlSelectBuilder - - - - Sets the text for the SELECT - - The selectClause to set - The SqlSelectBuilder - - - - Sets the text for the SELECT - - The selectClause to set - The SqlSelectBuilder - - - - Sets the criteria to use for the WHERE. It joins all of the columnNames together with an AND. - - - The names of the columns - The Hibernate Type - The SqlSelectBuilder - - - - Sets the prebuilt SqlString to the Where clause - - The SqlString that contains the sql and parameters to add to the WHERE - This SqlSelectBuilder - - - - Sets the criteria to use for the WHERE. It joins all of the columnNames together with an AND. - - - The names of the columns - The Hibernate Type - The SqlSelectBuilder - - - - Sets the prebuilt SqlString to the Having clause - - The SqlString that contains the sql and parameters to add to the HAVING - This SqlSelectBuilder - - - - ToSqlString() is named ToStatementString() in H3 - - - - - - - - - Summary description for SqlSimpleSelectBuilder. - - - - - - - - - - - - Adds a columnName to the SELECT fragment. - - The name of the column to add. - The SqlSimpleSelectBuilder - - - - Adds a columnName and its Alias to the SELECT fragment. - - The name of the column to add. - The alias to use for the column - The SqlSimpleSelectBuilder - - - - Adds an array of columnNames to the SELECT fragment. - - The names of the columns to add. - The SqlSimpleSelectBuilder - - - - Adds an array of columnNames with their Aliases to the SELECT fragment. - - The names of the columns to add. - The aliases to use for the columns - The SqlSimpleSelectBuilder - - - - Gets the Alias that should be used for the column - - The name of the column to get the Alias for. - The Alias if one exists, null otherwise - - - - Sets the IdentityColumn for the SELECT sql to use. - - An array of the column names for the Property - The IType of the Identity Property. - The SqlSimpleSelectBuilder. - - - - Sets the VersionColumn for the SELECT sql to use. - - An array of the column names for the Property - The IVersionType of the Version Property. - The SqlSimpleSelectBuilder. - - - - Set the Order By fragment of the Select Command - - The OrderBy fragment. It should include the SQL "ORDER BY" - The SqlSimpleSelectBuilder - - - - Adds the columns for the Type to the WhereFragment - - The names of the columns to add. - The IType of the property. - The operator to put between the column name and value. - The SqlSimpleSelectBuilder - - - - - - - This is a non-modifiable SQL statement that is ready to be prepared - and sent to the Database for execution. - - - A represents a (potentially partial) SQL query string - that may or may not contain query parameter references. A - decomposes the underlying SQL query string into a list of parts. Each part is either - 1) a string part, which represents a fragment of the underlying SQL query string that - does not contain any parameter references, or 2) a parameter part, which represents - a single query parameter reference in the underlying SQL query string. - - The constructors ensure that the number of string parts - in a are kept to an absolute minimum (as compact as possible) - by concatenating any adjoining string parts into a single string part. - - - Substring operations on a (such as , - , ) return a that reuses the parts - list of the instance on which the operation was performed. - Besides a reference to this parts list, the resulting instance - also stores the character offset into the original underlying SQL string at which the - substring starts and the length of the substring. By avoiding the unnecessary rebuilding - of part lists these operations have O(1) behaviour rather than O(n) behaviour. - - - If you need to modify this object pass it to a and - get a new object back from it. - - - - - - Empty instance. - - - - - Immutable list of string and parameter parts that make up this . - This list may be shared by multiple instances that present - different fragments of a common underlying SQL query string. - - - - - List of SQL query parameter references that occur in this . - - - - - Cached index of first part in that contains (part of) - a SQL fragment that falls within the scope of this instance. - - - - - Cached index of last part in that contains (part of) - a SQL fragment that falls within the scope of this instance. - - - - - Index of first character of the underlying SQL query string that is within scope of - this instance. - - - - - Number of characters of the underlying SQL query string that are within scope of - this instance from onwards. - - - - - Creates copy of other . - - - - - - Creates substring of other . - - - - - - - - Creates consisting of single string part. - - A SQL fragment - - - - Creates consisting of single parameter part. - - A query parameter - - - - Creates consisting of multiple parts. - - Arbitrary number of parts, which must be - either , or - values. - The instance is automatically compacted. - - - - Parse SQL in and create a SqlString representing it. - - - Parameter marks in single quotes will be correctly skipped, but otherwise the - lexer is very simple and will not parse double quotes or escape sequences - correctly, for example. - - - - - Appends the SqlString parameter to the end of the current SqlString to create a - new SqlString object. - - The SqlString to append. - A new SqlString object. - - A SqlString object is immutable so this returns a new SqlString. If multiple Appends - are called it is better to use the SqlStringBuilder. - - - - - Appends the string parameter to the end of the current SqlString to create a - new SqlString object. - - The string to append. - A new SqlString object. - - A SqlString object is immutable so this returns a new SqlString. If multiple Appends - are called it is better to use the SqlStringBuilder. - - - - - Compacts the SqlString into the fewest parts possible. - - A new SqlString. - - Combines all SqlParts that are strings and next to each other into - one SqlPart. - - - - - Makes a copy of the SqlString, with new parameter references (Placeholders) - - - - - Determines whether the end of this instance matches the specified String. - - A string to seek at the end. - if the end of this instance matches value; otherwise, - - - - Returns the index of the first occurrence of , case-insensitive. - - Text to look for in the . Must be in lower - case. - - The text must be located entirely in a string part of the . - Searching for "a ? b" in an consisting of - "a ", Parameter, " b" will result in no matches. - - The index of the first occurrence of , or -1 - if not found. - - - - Returns the index of the first occurrence of , case-insensitive. - - Text to look for in the . Must be in lower - The zero-based index of the search starting position. - The number of character positions to examine. - One of the enumeration values that specifies the rules for the search. - - The text must be located entirely in a string part of the . - Searching for "a ? b" in an consisting of - "a ", Parameter, " b" will result in no matches. - - The index of the first occurrence of , or -1 - if not found. - - - - Returns the index of the first occurrence of , case-insensitive. - - Text to look for in the . Must be in lower - case. - - The text must be located entirely in a string part of the . - Searching for "a ? b" in an consisting of - "a ", Parameter, " b" will result in no matches. - - The index of the first occurrence of , or -1 - if not found. - - - - Returns the index of the first occurrence of , case-insensitive. - - Text to look for in the . Must be in lower case. - The zero-based index of the search starting position. - The number of character positions to examine. - One of the enumeration values that specifies the rules for the search. - - The text must be located entirely in a string part of the . - Searching for "a ? b" in an consisting of - "a ", Parameter, " b" will result in no matches. - - The index of the first occurrence of , or -1 - if not found. - - - - Replaces all occurrences of a specified in this instance, - with another specified . - - A String to be replaced. - A String to replace all occurrences of oldValue. - - A new SqlString with oldValue replaced by the newValue. The new SqlString is - in the compacted form. - - - - - Determines whether the beginning of this SqlString matches the specified System.String, - using case-insensitive comparison. - - The System.String to seek - true if the SqlString starts with the value. - - - - Retrieves a substring from this instance. The substring starts at a specified character position. - - The starting character position of a substring in this instance. - - A new SqlString to the substring that begins at startIndex in this instance. - - - If the startIndex is greater than the length of the SqlString then is returned. - - - - - Returns substring of this SqlString starting with the specified - . If the text is not found, returns an - empty, not-null SqlString. - - - The method performs case-insensitive comparison, so the - passed should be in lower case. - - - - - Removes all occurrences of white space characters from the beginning and end of this instance. - - - A new SqlString equivalent to this instance after white space characters - are removed from the beginning and end. - - - - - Locate the part that contains the requested character index, and return the - part's index. Return -1 if the character position isn't found. - - - - - It the pendingContent is non-empty, append it as a new part and reset the pendingContent - to empty. The new part will be given the sqlIndex. After return, the sqlIndex will have - been updated to the next available index. - - - - - - - Returns the SqlString in a string where it looks like - SELECT col1, col2 FROM table WHERE col1 = ? - - - The question mark is used as the indicator of a parameter because at - this point we are not using the specific provider so we don't know - how that provider wants our parameters formatted. - - A provider-neutral version of the CommandText - - - - Gets the number of SqlParts contained in this SqlString. - - The number of SqlParts contained in this SqlString. - - - - The SqlStringBuilder is used to construct a SqlString. - - - - The SqlString is a nonmutable class so it can't have sql parts added - to it. Instead this class should be used to generate a new SqlString. - The SqlStringBuilder is to SqlString what the StringBuilder is to - a String. - - - This is different from the original version of SqlString because this does not - hold the sql string in the form of "column1=@column1" instead it uses an array to - build the sql statement such that - object[0] = "column1=" - object[1] = ref to column1 parameter - - - What this allows us to do is to delay the generating of the parameter for the sql - until the very end - making testing dialect indifferent. Right now all of our test - to make sure the correct sql is getting built are specific to MsSql2000Dialect. - - - - - - Create an empty StringBuilder with the default capacity. - - - - - Create a StringBuilder with a specific capacity. - - The number of parts expected. - - - - Create a StringBuilder to modify the SqlString - - The SqlString to modify. - - - - Adds the preformatted sql to the SqlString that is being built. - - The string to add. - This SqlStringBuilder - - - - Adds the Parameter to the SqlString that is being built. - The correct operator should be added before the Add(Parameter) is called - because there will be no operator ( such as "=" ) placed between the last Add call - and this Add call. - - The Parameter to add. - This SqlStringBuilder - - - - Attempts to discover what type of object this is and calls the appropriate - method. - - The part to add when it is not known if it is a Parameter, String, or SqlString. - This SqlStringBuilder. - Thrown when the part is not a Parameter, String, or SqlString. - - - - Adds an existing SqlString to this SqlStringBuilder. It does NOT add any - prefix, postfix, operator, or wrap around this. It is equivalent to just - adding a string. - - The SqlString to add to this SqlStringBuilder - This SqlStringBuilder - This calls the overloaded Add(sqlString, null, null, null, false) - - - - Adds an existing SqlString to this SqlStringBuilder - - The SqlString to add to this SqlStringBuilder - String to put at the beginning of the combined SqlString. - How these Statements should be junctioned "AND" or "OR" - String to put at the end of the combined SqlString. - This SqlStringBuilder - - This calls the overloaded Add method with an array of SqlStrings and wrapStatment=false - so it will not be wrapped with a "(" and ")" - - - - - Adds existing SqlStrings to this SqlStringBuilder - - The SqlStrings to combine. - String to put at the beginning of the combined SqlString. - How these SqlStrings should be junctioned "AND" or "OR" - String to put at the end of the combined SqlStrings. - This SqlStringBuilder - This calls the overloaded Add method with wrapStatement=true - - - - Adds existing SqlStrings to this SqlStringBuilder - - The SqlStrings to combine. - String to put at the beginning of the combined SqlStrings. - How these SqlStrings should be junctioned "AND" or "OR" - String to put at the end of the combined SqlStrings. - Wrap each SqlStrings with "(" and ")" - This SqlStringBuilder - - - - Insert a string containing sql into the SqlStringBuilder at the specified index. - - The zero-based index at which the sql should be inserted. - The string containing sql to insert. - This SqlStringBuilder - - - - Insert a Parameter into the SqlStringBuilder at the specified index. - - The zero-based index at which the Parameter should be inserted. - The Parameter to insert. - This SqlStringBuilder - - - - Removes the string or Parameter at the specified index. - - The zero-based index of the item to remove. - This SqlStringBuilder - - - - Converts the mutable SqlStringBuilder into the immutable SqlString. - - The SqlString that was built. - - - - Gets the number of SqlParts in this SqlStringBuilder. - - - The number of SqlParts in this SqlStringBuilder. - - - - - Gets or Sets the element at the index - - Returns a string or Parameter. - - - - - Helper methods for SqlString. - - - - - A class that builds an UPDATE sql statement. - - - - - Add a column with a specific value to the UPDATE sql - - The name of the Column to add. - The value to set for the column. - The NHibernateType to use to convert the value to a sql string. - The SqlUpdateBuilder. - - - - Add a column with a specific value to the UPDATE sql - - The name of the Column to add. - A valid sql string to set as the value of the column. - The SqlUpdateBuilder. - - - - Adds columns with a specific value to the UPDATE sql - - The names of the Columns to add. - A valid sql string to set as the value of the column. This value is assigned to each column. - The SqlUpdateBuilder. - - - - Adds the Property's columns to the UPDATE sql - - An array of the column names for the Property - The IType of the property. - The SqlUpdateBuilder. - - - - Adds the Property's updatable columns to the UPDATE sql - - An array of the column names for the Property - An array of updatable column flags. If this array is null, all supplied columns are considered updatable. - The IType of the property. - The SqlUpdateBuilder. - - - - Sets the IdentityColumn for the UPDATE sql to use. - - An array of the column names for the Property - The IType of the Identity Property. - The SqlUpdateBuilder. - - - - Sets the VersionColumn for the UPDATE sql to use. - - An array of the column names for the Property - The IVersionType of the Version Property. - The SqlUpdateBuilder. - - - - Adds the columns for the Type to the WhereFragment - - The names of the columns to add. - The IType of the property. - The operator to put between the column name and value. - The SqlUpdateBuilder - - - - Adds a string to the WhereFragment - - A well formed sql string with no parameters. - The SqlUpdateBuilder - - - - - - - Given an SQL SELECT statement, parse it to extract clauses starting with - FROM, up to and not including ORDER BY (known collectively - as a subselect clause). - - - - - Contains the subselect clause as it is being built. - - - - - Initializes a new instance of the class. - - The to extract the subselect clause from. - - - - Looks for a FROM clause in the - and adds the clause to the result if found. - - A or a . - if the part contained a FROM clause, - otherwise. - - - - Returns the subselect clause of the statement - being processed. - - An containing - the subselect clause of the original SELECT - statement. - - - - Allows us to construct SQL WHERE fragments - - - - - Describes the details of a with the - information required to to generate an . - - - This can store the length of the string that the can hold. - If no value is provided for the length then the Driver is responsible for - setting the properties on the correctly. - - - - - This is the base class that adds information to the - for the and - to use. - - -

- The uses the SqlType to get enough - information to create an . -

-

- The use the SqlType to convert the - to the appropriate sql type for SchemaExport. -

-
-
- - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - The length of the string the should hold. - - - - Describes the details of a with the - information required to generate an . - - - This can store the length of the string that the can hold. - If no value is provided for the length then the Driver is responsible for - setting the properties on the correctly. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - The length of the string the should hold. - - - - Describes the details of a that is stored in - a BLOB column with the information required to generate - an . - - -

- This can store the length of the binary data that the can hold. - If no value is provided for the length then the Driver is responsible for - setting the properties on the correctly. -

-

- This is only needed by DataProviders (SqlClient) that need to specify a Size for the - IDbDataParameter. Most DataProvider(Oralce) don't need to set the Size so a - BinarySqlType would work just fine. -

-
-
- - - Describes the details of a with the - information required to to generate an . - - - This can store the binary data that the can hold. - If no value is provided for the length then the Driver is responsible for - setting the properties on the correctly. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - The length of the binary data the should hold - - - - SqlTypeFactory provides Singleton access to the SqlTypes. - - - - - Describes the details of a that is stored in - a CLOB column with the information required to generate - an . - - -

- This can store the length of the binary data that the can hold. - If no value is provided for the length then the Driver is responsible for - setting the properties on the correctly. -

-

- This is only needed by DataProviders (SqlClient) that need to specify a Size for the - IDbDataParameter. Most DataProvider(Oralce) don't need to set the Size so a - StringSqlType would work just fine. -

-
-
- - - Describes the details of a with the - information required to generate an . - - - This can store the length of the string that the can hold. - If no value is provided for the length then the Driver is responsible for - setting the properties on the correctly. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - The length of the string the should hold. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - The length of the string the should hold. - - - - Describes the details of a with the - information required to to generate an . - - - This can store the length of the string that the can hold. - If no value is provided for the length then the Driver is responsible for - setting the properties on the correctly. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - The length of the string the should hold. - - - - Statistics for a particular "category" (a named entity, - collection role, second level cache region or query). - - - - Collection related statistics - - - Entity related statistics - - - - Information about the first-level (session) cache for a particular session instance - - - - Get the number of entity instances associated with the session - - - Get the number of collection instances associated with the session - - - Get the set of all EntityKeys. - - - Get the set of all CollectionKeys. - - - - Statistics for a particular . - Beware of metrics, they are dependent of the precision: - - - - Reset all statistics - - - Find entity statistics per name - entity name - EntityStatistics object - - - Get collection statistics per role - collection role - CollectionStatistics - - - Second level cache statistics per region - region name - SecondLevelCacheStatistics - - - Query statistics from query string (HQL or SQL) - query string - QueryStatistics - - - log in info level the main statistics - - - Global number of entity deletes - - - Global number of entity inserts - - - Global number of entity loads - - - Global number of entity fetchs - - - Global number of entity updates - - - Global number of executed queries - - - The of the slowest query. - - - The query string for the slowest query. - - - The global number of cached queries successfully retrieved from cache - - - The global number of cached queries *not* found in cache - - - The global number of cacheable queries put in cache - - - Get the global number of flush executed by sessions (either implicit or explicit) - - - - Get the global number of connections asked by the sessions - (the actual number of connections used may be much smaller depending - whether you use a connection pool or not) - - - - Global number of cacheable entities/collections successfully retrieved from the cache - - - Global number of cacheable entities/collections not found in the cache and loaded from the database. - - - Global number of cacheable entities/collections put in the cache - - - Global number of sessions closed - - - Global number of sessions opened - - - Global number of collections loaded - - - Global number of collections fetched - - - Global number of collections updated - - - Global number of collections removed - - - Global number of collections recreated - - - Start time - - - Enable/Disable statistics logs (this is a dynamic parameter) - - - All executed query strings - - - The names of all entities - - - The names of all collection roles - - - Get all second-level cache region names - - - The number of transactions we know to have been successful - - - The number of transactions we know to have completed - - - The number of prepared statements that were acquired - - - The number of prepared statements that were released - - - The number of StaleObjectStateExceptions that occurred - - - - The OperationThreshold to a value greater than to enable logging of long running operations. - - Operations that exceed the level will be logged. - - - Statistics SPI for the NHibernate core - - - Query statistics (HQL and SQL) - Note that for a cached query, the cache miss is equals to the db count - - - Add statistics report of a DB query - rows count returned - time taken - - - Second level cache statistics of a specific region - - - - Not ported yet - - - - - Not ported yet - - - - - Not ported yet - - - - - Not ported yet - - - - - Contract for delegates responsible for managing connection used by the hbm2ddl tools. - - - - - Prepare the helper for use. - - - - - Release any resources held by this helper. - - - - - Get a reference to the connection we are using. - - - - - A implementation based on an internally - built and managed . - - - - - Generates ddl to export table schema for a configured Configuration to the database - - - This Class can be used directly or the command line wrapper NHibernate.Tool.hbm2ddl.exe can be - used when a dll can not be directly used. - - - - - Create a schema exported for a given Configuration - - The NHibernate Configuration to generate the schema from. - - - - Create a schema exporter for the given Configuration, with the given - database connection properties - - The NHibernate Configuration to generate the schema from. - The Properties to use when connecting to the Database. - - - - Set the output filename. The generated script will be written to this file - - The name of the file to output the ddl to. - The SchemaExport object. - - - - Set the end of statement delimiter - - The end of statement delimiter. - The SchemaExport object. - - - - Run the schema creation script - - if the ddl should be outputted in the Console. - if the ddl should be executed against the Database. - - This is a convenience method that calls and sets - the justDrop parameter to false. - - - - - Run the schema creation script - - an action that will be called for each line of the generated ddl. - if the ddl should be executed against the Database. - - This is a convenience method that calls and sets - the justDrop parameter to false. - - - - - Run the schema creation script - - if non-null, the ddl will be written to this TextWriter. - if the ddl should be executed against the Database. - - This is a convenience method that calls and sets - the justDrop parameter to false. - - - - - Run the drop schema script - - if the ddl should be outputted in the Console. - if the ddl should be executed against the Database. - - This is a convenience method that calls and sets - the justDrop parameter to true. - - - - - Run the drop schema script - - if non-null, the ddl will be written to this TextWriter. - if the ddl should be executed against the Database. - - This is a convenience method that calls and sets - the justDrop parameter to true. - - - - - Executes the Export of the Schema in the given connection - - if the ddl should be outputted in the Console. - if the ddl should be executed against the Database. - if only the ddl to drop the Database objects should be executed. - - The connection to use when executing the commands when export is . - Must be an opened connection. The method doesn't close the connection. - - The writer used to output the generated schema - - This method allows for both the drop and create ddl script to be executed. - This overload is provided mainly to enable use of in memory databases. - It does NOT close the given connection! - - - - - Executes the Export of the Schema. - - if the ddl should be outputted in the Console. - if the ddl should be executed against the Database. - if only the ddl to drop the Database objects should be executed. - - This method allows for both the drop and create ddl script to be executed. - - - - - Execute the schema updates - - - - - Execute the schema updates - - The action to write the each schema line. - Commit the script to DB - - - - Returns a List of all Exceptions which occured during the export. - - - - - Perform the validations. - - - - This acts as a template method. Specific Reader instances - override the component methods. - - - - - A implementation based on an explicitly supplied - connection. - - - - - A implementation based on a provided - . Essentially, ensures that the connection - gets cleaned up, but that the provider itself remains usable since it - was externally provided to us. - - - - - An abstract factory for instances. - Concrete implementations are specified by transaction.factory_class - configuration property. - - Implementors must be threadsafe and should declare a public default constructor. - - - - - - Configure from the given properties - - - - - - Create a new transaction and return it without starting it. - - - - - This is used as a marker interface for the different - transaction context required for each session - - - - - Wraps an ADO.NET to implement - the interface. - - - - - Allows the application to define units of work, while maintaining abstraction from the - underlying transaction implementation - - - A transaction is associated with a ISession and is usually instanciated by a call to - ISession.BeginTransaction(). A single session might span multiple transactions since - the notion of a session (a conversation between the application and the datastore) is of - coarser granularity than the notion of a transaction. However, it is intended that there be - at most one uncommitted ITransaction associated with a particular ISession - at a time. Implementors are not intended to be threadsafe. - - - - - Begin the transaction with the default isolation level. - - - - - Begin the transaction with the specified isolation level. - - Isolation level of the transaction - - - - Flush the associated ISession and end the unit of work. - - - This method will commit the underlying transaction if and only if the transaction - was initiated by this object. - - - - - Force the underlying transaction to roll back. - - - - - Enlist the in the current Transaction. - - The to enlist. - - It is okay for this to be a no op implementation. - - - - - Register a user synchronization callback for this transaction. - - The callback to register. - - - - Is the transaction in progress - - - - - Was the transaction rolled back or set to rollback only? - - - - - Was the transaction successfully committed? - - - This method could return even after successful invocation of Commit() - - - - - Initializes a new instance of the class. - - The the Transaction is for. - - - - Enlist the in the current . - - The to enlist in this Transaction. - - - This takes care of making sure the 's Transaction property - contains the correct or if there is no - Transaction for the ISession - ie BeginTransaction() not called. - - - This method may be called even when the transaction is disposed. - - - - - - Begins the on the - used by the . - - - Thrown if there is any problems encountered while trying to create - the . - - - - - Commits the by flushing the - and committing the . - - - Thrown if there is any exception while trying to call Commit() on - the underlying . - - - - - Rolls back the by calling the method Rollback - on the underlying . - - - Thrown if there is any exception while trying to call Rollback() on - the underlying . - - - - - A flag to indicate if Disose() has been called. - - - - - Finalizer that ensures the object is correctly disposed of. - - - - - Takes care of freeing the managed and unmanaged resources that - this class is responsible for. - - - - - Takes care of freeing the managed and unmanaged resources that - this class is responsible for. - - Indicates if this AdoTransaction is being Disposed of or Finalized. - - If this AdoTransaction is being Finalized (isDisposing==false) then make sure not - to call any methods that could potentially bring this AdoTransaction back to life. - - - - - Gets a indicating if the transaction was rolled back. - - - if the had Rollback called - without any exceptions. - - - - - Gets a indicating if the transaction was committed. - - - if the had Commit called - without any exceptions. - - - - - A mimic to the javax.transaction.Synchronization callback to enable - - - - - Create an AfterTransactionCompletes that will execute the given delegate - when the transaction is completed. The action delegate will receive - the value 'true' if the transaction was completed successfully. - - - - - - An implementation of TupleSubsetResultTransformer that ignores a - tuple element if its corresponding alias is null. - - @author Gail Badner - - - - A ResultTransformer that operates on "well-defined" and consistent - subset of a tuple's elements. - - "Well-defined" means that: -
    -
  1. - the indexes of tuple elements accessed by an - ITupleSubsetResultTransformer depends only on the aliases - and the number of elements in the tuple; i.e, it does - not depend on the value of the tuple being transformed; -
  2. -
  3. - any tuple elements included in the transformed value are - unmodified by the transformation; -
  4. -
  5. - transforming equivalent tuples with the same aliases multiple - times results in transformed values that are equivalent; -
  6. -
  7. - the result of transforming the tuple subset (only those - elements accessed by the transformer) using only the - corresponding aliases is equivalent to transforming the - full tuple with the full array of aliases; -
  8. -
  9. - the result of transforming a tuple with non-accessed tuple - elements and corresponding aliases set to null - is equivalent to transforming the full tuple with the - full array of aliases; -
  10. -
-
- - @author Gail Badner -
- - - When a tuple is transformed, is the result a single element of the tuple? - - The aliases that correspond to the tuple. - The number of elements in the tuple. - True, if the transformed value is a single element of the tuple; - false, otherwise. - - - - Returns an array with the i-th element indicating whether the i-th - element of the tuple is included in the transformed value. - - The aliases that correspond to the tuple. - The number of elements in the tuple. - Array with the i-th element indicating whether the i-th - element of the tuple is included in the transformed value. - - - - Result transformer that allows to transform a result to - a user specified class which will be populated via setter - methods or fields matching the alias names. - - - - IList resultWithAliasedBean = s.CreateCriteria(typeof(Enrollment)) - .CreateAlias("Student", "st") - .CreateAlias("Course", "co") - .SetProjection( Projections.ProjectionList() - .Add( Projections.Property("co.Description"), "CourseDescription" ) - ) - .SetResultTransformer( new AliasToBeanResultTransformer(typeof(StudentDTO)) ) - .List(); - - StudentDTO dto = (StudentDTO)resultWithAliasedBean[0]; - - - - - - A ResultTransformer that is used to transform tuples to a value(s) that can be cached. - - @author Gail Badner - - - - Array with the i-th element indicating whether the i-th - expression returned by a query is included in the tuple. - - IMPLEMENTATION NOTE: - "joined" and "fetched" associations may use the same SQL, - but result in different tuple and cached values. This is - because "fetched" associations are excluded from the tuple. - includeInTuple provides a way to distinguish these 2 cases. - - - - Indexes for tuple that are included in the transformation. - Set to null if all elements in the tuple are included. - - - - - Returns a CacheableResultTransformer that is used to transform - tuples to a value(s) that can be cached. - - result transformer that will ultimately be used (after caching results) - the aliases that correspond to the tuple; - if it is non-null, its length must equal the number - of true elements in includeInTuple[] - array with the i-th element indicating - whether the i-th expression returned by a query is - included in the tuple; the number of true values equals - the length of the tuple that will be transformed; - must be non-null - a CacheableResultTransformer that is used to transform - tuples to a value(s) that can be cached. - - - - Returns a CacheableResultTransformer that is used to transform - tuples to a value(s) that can be cached. - - a tuple subset result transformer; - must be non-null; - the aliases that correspond to the tuple; - if it is non-null, its length must equal the number - of true elements in includeInTuple[] - array with the i-th element indicating - whether the i-th expression returned by a query is - included in the tuple; the number of true values equals - the length of the tuple that will be transformed; - must be non-null - a CacheableResultTransformer that is used to transform - tuples to a value(s) that can be cached. - - - - Returns a CacheableResultTransformer that is used to transform - tuples to a value(s) that can be cached. - - array with the i-th element indicating - whether the i-th expression returned by a query is - included in the tuple; the number of true values equals - the length of the tuple that will be transformed; - must be non-null - a CacheableResultTransformer that is used to transform - tuples to a value(s) that can be cached. - - - - Re-transforms, if necessary, a List of values previously - transformed by this (or an equivalent) CacheableResultTransformer. - Each element of the list is re-transformed in place (i.e, List - elements are replaced with re-transformed values) and the original - List is returned. If re-transformation is unnecessary, the original List is returned - unchanged. - - Results that were previously transformed. - The aliases that correspond to the untransformed tuple. - The transformer for the re-transformation. - - transformedResults, with each element re-transformed (if nececessary). - - - - Untransforms, if necessary, a List of values previously - transformed by this (or an equivalent) CacheableResultTransformer. - Each element of the list is untransformed in place (i.e, List - elements are replaced with untransformed values) and the original - List is returned. - - If not unnecessary, the original List is returned - unchanged. - - - - NOTE: If transformed values are a subset of the original - tuple, then, on return, elements corresponding to - excluded tuple elements will be null. - - Results that were previously transformed. - results, with each element untransformed (if nececessary). - - - - Returns the result types for the transformed value. - - - - - "Compact" the given array by picking only the elements identified by - the _includeInTransformIndex array. The picked elements are returned - in a new array. - - - - - Expand the given array by putting each of its elements at the - position identified by the _includeInTransformIndex array. The - elements are placed in a new array - the original array will - not be modified. - - - - - Tranforms each result row from a tuple into a , such that what - you end up with is a of . - - - - - Each row of results is a map () from alias to values/entities - - - - Each row of results is a - - - - Creates a resulttransformer that will inject aliased values into instances - of via property methods or fields. - - - - Support for tuplizers relating to components. - - - - Defines further responsibilities regarding tuplization based on - a mapped components. - - - ComponentTuplizer implementations should have the following constructor signature: - (org.hibernate.mapping.Component) - - - - - A tuplizer defines the contract for things which know how to manage - a particular representation of a piece of data, given that - representation's (the entity-mode - essentially defining which representation). - - - If that given piece of data is thought of as a data structure, then a tuplizer - is the thing which knows how to: - - create such a data structure appropriately - extract values from and inject values into such a data structure - - - For example, a given piece of data might be represented as a POCO class. - Here, it's representation and entity-mode is POCO. Well a tuplizer for POCO - entity-modes would know how to: - - create the data structure by calling the POCO's constructor - extract and inject values through getters/setter, or by direct field access, etc - - - That same piece of data might also be represented as a DOM structure, using - the tuplizer associated with the XML entity-mode, which would generate instances - of as the data structure and know how to access the - values as either nested s or as s. - - - - - - - Extract the current values contained on the given entity. - - The entity from which to extract values. - The current property values. - HibernateException - - - Inject the given values into the given entity. - The entity. - The values to be injected. - - - Extract the value of a particular property from the given entity. - The entity from which to extract the property value. - The index of the property for which to extract the value. - The current value of the given property on the given entity. - - - Generate a new, empty entity. - The new, empty entity instance. - - - - Is the given object considered an instance of the the entity (acconting - for entity-mode) managed by this tuplizer. - - The object to be checked. - True if the object is considered as an instance of this entity within the given mode. - - - - Return the pojo class managed by this tuplizer. - - The persistent class. - - Need to determine how to best handle this for the Tuplizers for EntityModes - other than POCO. - - - - Retrieve the current value of the parent property. - - The component instance from which to extract the parent property value. - - The current value of the parent property. - - - Set the value of the parent property. - The component instance on which to set the parent. - The parent to be set on the component. - The current session factory. - - - Does the component managed by this tuuplizer contain a parent property? - True if the component does contain a parent property; false otherwise. - - - This method does not populate the component parent - - - - Handles mapping s to ComponentTuplizers. -

- Most of the handling is really in the super class; here we just create - the tuplizers and add them to the superclass -

-
- - Centralizes handling of to mappings. - - - Given a supposed instance of an entity/component, guess its entity mode. - The supposed instance of the entity/component. - The guessed entity mode. - - - - Locate the contained tuplizer responsible for the given entity-mode. If - no such tuplizer is defined on this mapping, then return null. - - The entity-mode for which the caller wants a tuplizer. - The tuplizer, or null if not found. - - - Locate the tuplizer contained within this mapping which is responsible - for the given entity-mode. If no such tuplizer is defined on this - mapping, then an exception is thrown. - - - The entity-mode for which the caller wants a tuplizer. - - The tuplizer. - - HibernateException Unable to locate the requested tuplizer. - - - Centralizes metamodel information about a component. - - - - A specific to the dynamic-map entity mode. - - - - - A specific to the POCO entity mode. - - - - Support for tuplizers relating to entities. - - - - Defines further responsibilities regarding tuplization based on a mapped entity. - - - EntityTuplizer implementations should have the following constructor signature: - (, ) - - - - Create an entity instance initialized with the given identifier. - The identifier value for the entity to be instantiated. - The instantiated entity. - - - Extract the identifier value from the given entity. - The entity from which to extract the identifier value. - The identifier value. - - - - Inject the identifier value into the given entity. - - The entity to inject with the identifier value. - The value to be injected as the identifier. - Has no effect if the entity does not define an identifier property - - - - Inject the given identifier and version into the entity, in order to - "roll back" to their original values. - - - The identifier value to inject into the entity. - The version value to inject into the entity. - - - Extract the value of the version property from the given entity. - The entity from which to extract the version value. - The value of the version property, or null if not versioned. - - - Inject the value of a particular property. - The entity into which to inject the value. - The property's index. - The property value to inject. - - - Inject the value of a particular property. - The entity into which to inject the value. - The name of the property. - The property value to inject. - - - Extract the values of the insertable properties of the entity (including backrefs) - The entity from which to extract. - a map of instances being merged to merged instances - The session in which the resuest is being made. - The insertable property values. - - - Extract the value of a particular property from the given entity. - The entity from which to extract the property value. - The name of the property for which to extract the value. - The current value of the given property on the given entity. - - - Called just after the entities properties have been initialized. - The entity being initialized. - Are defined lazy properties currently unfecthed - The session initializing this entity. - - - - Generates an appropriate proxy representation of this entity for this entity-mode. - - The id of the instance for which to generate a proxy. - The session to which the proxy should be bound. - The generate proxies. - - - Does the given entity instance have any currently uninitialized lazy properties? - The entity to be check for uninitialized lazy properties. - True if uninitialized lazy properties were found; false otherwise. - - - - Does the class managed by this tuplizer implement - the interface. - - True if the ILifecycle interface is implemented; false otherwise. - - - - Does the class managed by this tuplizer implement - the interface. - - True if the IValidatable interface is implemented; false otherwise. - - - Returns the java class to which generated proxies will be typed. - The .NET class to which generated proxies will be typed - - - Is it an instrumented POCO? - - - Does this entity, for this mode, present a possibility for proxying? - True if this tuplizer can generate proxies for this entity. - - - Constructs a new AbstractEntityTuplizer instance. - The "interpreted" information relating to the mapped entity. - The parsed "raw" mapping data relating to the given entity. - - - Build an appropriate Getter for the given property. - The property to be accessed via the built Getter. - The entity information regarding the mapped entity owning this property. - An appropriate Getter instance. - - - Build an appropriate Setter for the given property. - The property to be accessed via the built Setter. - The entity information regarding the mapped entity owning this property. - An appropriate Setter instance. - - - Build an appropriate Instantiator for the given mapped entity. - The mapping information regarding the mapped entity. - An appropriate Instantiator instance. - - - Build an appropriate ProxyFactory for the given mapped entity. - The mapping information regarding the mapped entity. - The constructed Getter relating to the entity's id property. - The constructed Setter relating to the entity's id property. - An appropriate ProxyFactory instance. - - - Extract a component property value. - The component property types. - The component instance itself. - The property path for the property to be extracted. - The property value extracted. - - - Return the entity-mode handled by this tuplizer instance. - - - Retrieves the defined entity-name for the tuplized entity. - - - - Retrieves the defined entity-names for any subclasses defined for this entity. - - - - - Handles mapping s to s. - - - Most of the handling is really in the super class; here we just create - the tuplizers and add them to the superclass - - - - - Instantiates a EntityEntityModeToTuplizerMapping based on the given - entity mapping and metamodel definitions. - - The entity mapping definition. - The entity metamodel definition. - - - An specific to the POCO entity mode. - - - Contract for implementors responsible for instantiating entity/component instances. - - - Perform the requested entity instantiation. - The id of the entity to be instantiated. - An appropriately instantiated entity. - This form is never called for component instantiation, only entity instantiation. - - - Perform the requested instantiation. - The instantiated data structure. - - - - Performs check to see if the given object is an instance of the entity - or component which this Instantiator instantiates. - - The object to be checked. - True is the object does represent an instance of the underlying entity/component. - - - - Represents a defined entity identifier property within the Hibernate - runtime-metamodel. - - - Author: Steve Ebersole - - - - - Defines the basic contract of a Property within the runtime metamodel. - - - - - Constructor for Property instances. - - The name by which the property can be referenced within its owner. - The node name to use for XML-based representation of this property. - The Hibernate Type of this property. - - - - Construct a non-virtual identifier property. - - The name of the property representing the identifier within - its owning entity. - The node name to use for XML-based representation of this - property. - The Hibernate Type for the identifier property. - Is this an embedded identifier. - The value which, if found as the value on the identifier - property, represents new (i.e., un-saved) instances of the owning entity. - The generator to use for id value generation. - - - - Construct a virtual IdentifierProperty. - - The Hibernate Type for the identifier property. - Is this an embedded identifier. - The value which, if found as the value on the identifier - property, represents new (i.e., un-saved) instances of the owning entity. - The generator to use for id value generation. - - - - Defines a POCO-based instantiator for use from the tuplizers. - - - - Responsible for generation of runtime metamodel representations. - Makes distinction between identifier, version, and other (standard) properties. - - - Author: Steve Ebersole - - - - - Generates an IdentifierProperty representation of the for a given entity mapping. - - The mapping definition of the entity. - The identifier value generator to use for this identifier. - The appropriate IdentifierProperty definition. - - - - Generates a VersionProperty representation for an entity mapping given its - version mapping Property. - - The version mapping Property. - Is property lazy loading currently available. - The appropriate VersionProperty definition. - - - - Generate a "standard" (i.e., non-identifier and non-version) based on the given - mapped property. - - The mapped property. - Is property lazy loading currently available. - The appropriate StandardProperty definition. - - - - Represents a basic property within the Hibernate runtime-metamodel. - - - Author: Steve Ebersole - - - - - Constructs StandardProperty instances. - - The name by which the property can be referenced within - its owner. - The node name to use for XML-based representation of this - property. - The Hibernate Type of this property. - Should this property be handled lazily? - Is this property an insertable value? - Is this property an updateable value? - Is this property generated in the database on insert? - Is this property generated in the database on update? - Is this property a nullable value? - Is this property a checkable value? - Is this property a versionable value? - The cascade style for this property's value. - Any fetch mode defined for this property - - - - Represents a version property within the Hibernate runtime-metamodel. - - - Author: Steve Ebersole - - - - - Constructs VersionProperty instances. - - The name by which the property can be referenced within - its owner. - The node name to use for XML-based representation of this - property. - The Hibernate Type of this property. - Should this property be handled lazily? - Is this property an insertable value? - Is this property an updateable value? - Is this property generated in the database on insert? - Is this property generated in the database on update? - Is this property a nullable value? - Is this property a checkable value? - Is this property a versionable value? - The cascade style for this property's value. - The value which, if found as the value of - this (i.e., the version) property, represents new (i.e., un-saved) - instances of the owning entity. - - - Logic to bind stream of byte into a VARBINARY - - - - Superclass for mutable nullable types. - - - - - Superclass of single-column nullable types. - - - Maps the Property to a single column that is capable of storing nulls in it. If a .net Struct is - used it will be created with its unitialized value and then on Update the uninitialized value of - the Struct will be written to the column - not . - - - - - The base implementation of the interface. - Mapping of the built in Type hierarchy. - - - - - Disassembles the object into a cacheable representation. - - The value to disassemble. - The is not used by this method. - optional parent entity object (needed for collections) - The disassembled, deep cloned state of the object - - This method calls DeepCopy if the value is not null. - - - - - Reconstructs the object from its cached "disassembled" state. - - The disassembled state from the cache - The is not used by this method. - The parent Entity object is not used by this method - The assembled object. - - This method calls DeepCopy if the value is not null. - - - - - Should the parent be considered dirty, given both the old and current - field or element value? - - The old value - The current value - The is not used by this method. - true if the field is dirty - This method uses IType.Equals(object, object) to determine the value of IsDirty. - - - - Retrives an instance of the mapped class, or the identifier of an entity - or collection from a . - - The that contains the values. - - The names of the columns in the that contain the - value to populate the IType with. - - the session - The parent Entity - An identifier or actual object mapped by this IType. - - This method uses the IType.NullSafeGet(IDataReader, string[], ISessionImplementor, object) method - to Hydrate this . - - - - - Maps identifiers to Entities or Collections. - - An identifier or value returned by Hydrate() - The is not used by this method. - The parent Entity is not used by this method. - The value. - - There is nothing done in this method other than return the value parameter passed in. - - - - - Says whether the value has been modified - - - - - When implemented by a class, returns a deep copy of the persistent - state, stopping at entities and at collections. - A Collection element or Entity fieldThe entityMode.The session factory.A deep copy of the object. - - - - When implemented by a class, returns the SqlTypes for the columns mapped by this IType. - The that uses this IType.An array of s. - - - - When implemented by a class, returns how many columns are used to persist this type. - The that uses this IType.The number of columns this IType spans.MappingException - - - - - - - - - - When implemented by a class, puts the value/values from the mapped - class into the . - The to put the values into.The object that contains the values.The index of the to start writing the values to.Indicates which columns are to be set. - Implementors should handle possibility of null values. - A multi-column type should be written to parameters starting from . - - - - - When implemented by a class, puts the value/values from the mapped - class into the . - - The to put the values into. - The object that contains the values. - The index of the to start writing the values to. - - Implementors should handle possibility of null values. - A multi-column type should be written to parameters starting from . - - - - - When implemented by a class, a representation of the value to be - embedded in an XML element - The object that contains the values.An Xml formatted string. - - - - Gets a value indicating if the is an . - - false - by default an is not an . - - - - Gets a value indicating if the is a . - - false - by default an is not a . - - - - Gets a value indicating if the is an . - - false - by default an is not an . - - - - Gets a value indicating if the is a . - - false - by default an is not a . - - - - Gets a value indicating if the implementation is an "object" type - - false - by default an is not a "object" type. - - - - When implemented by a class, gets the value indicating if the objects - of this IType are mutable. - true if the objects mapped by this IType are mutable. - With respect to the referencing object... - Entities and Collections are considered immutable because they manage their own internal state. - - - - - When implemented by a class, gets the abbreviated name of the type. - The NHibernate type name. - - - - When implemented by a class, gets the returned - by the NullSafeGet() methods. - - The from the .NET framework. - - This is used to establish the class of an array of this Itype - - - - - Initialize a new instance of the NullableType class using a - . - - The underlying . - This is used when the Property is mapped to a single column. - - - - When implemented by a class, put the value from the mapped - Property into to the . - - The to put the value into. - The object that contains the value. - The index of the to start writing the values to. - - Implementors do not need to handle possibility of null values because this will - only be called from after - it has checked for nulls. - - - - - When implemented by a class, gets the object in the - for the Property. - - The that contains the value. - The index of the field to get the value from. - An object with the value from the database. - - - - When implemented by a class, gets the object in the - for the Property. - - The that contains the value. - The name of the field to get the value from. - An object with the value from the database. - - Most implementors just call the - overload of this method. - - - - - A representation of the value to be embedded in an XML element - - The object that contains the values. - - An Xml formatted string. - - - - When implemented by a class, a representation of the value to be - embedded in an XML element - The object that contains the values.An Xml formatted string. - - - This implementation forwards the call to if the parameter - value is not null. - - - It has been "sealed" because the Types inheriting from - do not need and should not override this method. All of their implementation - should be in . - - - - - - Parse the XML representation of an instance - - XML string to parse, guaranteed to be non-empty - - - - - When implemented by a class, puts the value/values from the mapped - class into the . - - The to put the values into. - The object that contains the values. - The index of the to start writing the values to. - - Implementors should handle possibility of null values. - A multi-column type should be written to parameters starting from . - - - - This implementation forwards the call to . - - - It has been "sealed" because the Types inheriting from - do not need to and should not override this method. All of their implementation - should be in . - - - - - - Puts the value from the mapped class into the . - - The to put the values into. - The object that contains the values. - The index of the to write the value to. - - - This method checks to see if value is null, if it is then the value of - is written to the . - - - If the value is not null, then the method - is called and that method is responsible for setting the value. - - - - - - When implemented by a class, gets an instance of the object mapped by - this IType from the . - The that contains the values - The names of the columns in the that contain the - value to populate the IType with. - The object mapped by this IType. - Implementors should handle possibility of null values. - - - This has been sealed because no other class should override it. This - method calls for a single value. - It only takes the first name from the string[] names parameter - that is a - safe thing to do because a Nullable Type only has one field. - - - - - Extracts the values of the fields from the DataReader - - The DataReader positioned on the correct record - An array of field names. - The value off the field from the DataReader - - In this class this just ends up passing the first name to the NullSafeGet method - that takes a string, not a string[]. - - I don't know why this method is in here - it doesn't look like anybody that inherits - from NullableType overrides this... - - TODO: determine if this is needed - - - - - Gets the value of the field from the . - - The positioned on the correct record. - The name of the field to get the value from. - The value of the field. - - - This method checks to see if value is null, if it is then the null is returned - from this method. - - - If the value is not null, then the method - is called and that method is responsible for retrieving the value. - - - - - - When implemented by a class, gets an instance of the object - mapped by this IType from the . - The that contains the valuesThe name of the column in the that contains the - value to populate the IType with.The object mapped by this IType. - Implementations should handle possibility of null values. - This method might be called if the IType is known to be a single-column type. - - - - This implementation forwards the call to . - - - It has been "sealed" because the Types inheriting from - do not need to and should not override this method. All of their implementation - should be in . - - - - - - When implemented by a class, returns the SqlTypes for the columns mapped by this IType. - The that uses this IType.An array of s. - - - This implementation forwards the call to . - - - It has been "sealed" because the Types inheriting from - do not need to and should not override this method because they map to a single - column. All of their implementation should be in . - - - - - - Returns the number of columns spanned by this - - A always returns 1. - - This has the hard coding of 1 in there because, by definition of this class, - a NullableType can only map to one column in a table. - - - - - Determines whether the specified is equal to this - . - - The to compare with this NullableType. - true if the SqlType and Name properties are the same. - - - - Serves as a hash function for the , - suitable for use in hashing algorithms and data structures like a hash table. - - - A hash code that is based on the 's - hash code and the 's hash code. - - - - Gets the underlying for - the column mapped by this . - - The underlying . - - This implementation should be suitable for all subclasses unless they need to - do some special things to get the value. There are no built in s - that override this Property. - - - - - Initialize a new instance of the MutableType class using a - . - - The underlying . - - - - Gets the value indicating if this IType is mutable. - - true - a is mutable. - - This has been "sealed" because any subclasses are expected to be mutable. If - the type is immutable then they should inherit from . - - - - - An that may be used to version data. - - - - - When implemented by a class, increments the version. - - The current version - The current session, if available. - an instance of the that has been incremented. - - - - When implemented by a class, gets an initial version. - - The current session, if available. - An instance of the type. - - - - Are the two version values considered equal? - - One value to check. - The other value to check. - true if the values are equal, false otherwise. - - - - Get a comparator for the version numbers - - - - Convert the byte[] into the expected object type - - - Convert the object into the internal byte[] representation - - - - Common base class for and . - - - - - Superclass of types. - - - - - Superclass of nullable immutable types. - - - - - Initialize a new instance of the ImmutableType class using a - . - - The underlying . - - - - Gets the value indicating if this IType is mutable. - - false - an is not mutable. - - This has been "sealed" because any subclasses are expected to be immutable. If - the type is mutable then they should inherit from . - - - - - An that may appear as an SQL literal - - - - - When implemented by a class, return a representation - of the value, suitable for embedding in an SQL statement - - The object to convert to a string for the SQL statement. - - A string that contains a well formed SQL Statement. - - - - Initialize a new instance of the PrimitiveType class using a . - - The underlying . - - - - When implemented by a class, return a representation - of the value, suitable for embedding in an SQL statement - - The object to convert to a string for the SQL statement. - - A string that containts a well formed SQL Statement. - - - - A representation of the value to be embedded in an XML element - - The object that contains the values. - - An Xml formatted string. - - This just calls so if there is - a possibility of this PrimitiveType having any characters - that need to be encoded then this method should be overridden. - - - - - An IType that may be used for a discriminator column. - - - This interface contains no new methods but does require that an - that will be used in a discriminator column must implement - both the and interfaces. - - - - - An that may be used as an identifier. - - - - - When implemented by a class, converts the xml string from the - mapping file to the .NET object. - - The value of discriminator-value or unsaved-value attribute. - The string converted to the object. - - This method needs to be able to handle any string. It should not just - call System.Type.Parse without verifying that it is a parsable value - for the System.Type. - - - - - Maps a Property to a column that - stores date & time down to the accuracy of a second. - - - This only stores down to a second, so if you are looking for the most accurate - date and time storage your provider can give you use the . - or the - - - - - - - - - - - Base class for enum types. - - - - - Maps a Property - to a DbType.AnsiStringFixedLength column. - - - - - Maps a Property - to a column. - - - - - - - - Handles "any" mappings and the old deprecated "object" type. - - - The identifierType is any NHibernate IType that can be serailized by default. - For example, you can specify the identifierType as an Int32 or a custom identifier - type that you built. The identifierType matches to one or many columns. - - The metaType maps to a single column. By default it stores the name of the Type - that the Identifier identifies. - - For example, we can store a link to any table. It will have the results - class_name id_col1 - ======================================== - Simple, AssemblyName 5 - DiffClass, AssemblyName 5 - Simple, AssemblyName 4 - - You can also provide you own type that might map the name of the class to a table - with a giant switch statemet or a good naming convention for your class->table. The - data stored might look like - class_name id_col1 - ======================================== - simple_table 5 - diff_table 5 - simple_table 4 - - - - - - Enables other Component-like types to hold collections and have cascades, etc. - - - - - Get the values of the component properties of - a component instance - - - - - Optional Operation - - - - - Optional operation - - - - Get the types of the component properties - - - Get the names of the component properties - - - - Optional operation - - nullability of component properties - - - - An that represents some kind of association between entities. - - - - - Get the "persister" for this association - a class or collection persister - - - - - - Get the entity name of the associated entity - - - - Get the "filtering" SQL fragment that is applied in the - SQL on clause, in addition to the usual join condition. - - - - - When implemented by a class, gets the type of foreign key directionality - of this association. - - The of this association. - - - - Is the primary key of the owning entity table - to be used in the join? - - - - - Get the name of the property in the owning entity - that provides the join key (null if the identifier) - - - - - The name of a unique property of the associated entity - that provides the join key (null if the identifier of - an entity, or key of a collection) - - - - - Do we dirty check this association, even when there are - no columns to be updated. - - - - - - - - - - - - - - - Not really relevant to AnyType, since it cannot be "joined" - - - - - An that maps an collection - to the database. - - - - - The base class for an that maps collections - to the database. - - - - - Initializes a new instance of a class for - a specific role. - - The role the persistent collection is in. - - The name of the property in the - owner object containing the collection ID, or if it is - the primary key. - - - - - - Instantiate an uninitialized collection wrapper or holder. Callers MUST add the holder to the - persistence context! - - The session from which the request is originating. - The underlying collection persister (metadata) - The owner key. - The instantiated collection. - - - - Wrap the naked collection instance in a wrapper, or instantiate a - holder. Callers MUST add the holder to the persistence context! - - The session from which the request is originating. - The bare collection to be wrapped. - - A subclass of that wraps the non NHibernate collection. - - - - - Get the key value from the owning entity instance, usually the identifier, but might be some - other unique key, in the case of property-ref - - - - - Get the id value from the owning entity key, usually the same as the key, but might be some - other property, in the case of property-ref - - The collection owner key - The session from which the request is originating. - - The collection owner's id, if it can be obtained from the key; - otherwise, null is returned - - - - - Instantiate an empty instance of the "underlying" collection (not a wrapper), - but with the given anticipated size (i.e. accounting for initial capacity - and perhaps load factor). - - - The anticipated size of the instantiated collection after we are done populating it. - - A newly instantiated collection to be wrapped. - - - - Get an iterator over the element set of the collection, which may not yet be wrapped - - The collection to be iterated - The session from which the request is originating. - The iterator. - - - - Get an iterator over the element set of the collection in POCO mode - - The collection to be iterated - The iterator. - - - - We always need to dirty check the collection because we sometimes - need to increment version number of owner and also because of - how assemble/disassemble is implemented for uks - - - - - Initializes a new instance of a class for - a specific role. - - The role the persistent collection is in. - The name of the property in the - owner object containing the collection ID, or if it is - the primary key. - The of the element contained in the array. - - - This creates a bag that is non-generic. - - - - - - - - - - - - - - Wraps a in a . - - The for the collection to be a part of. - The unwrapped array. - - An that wraps the non NHibernate . - - - - - The for the element. - - - - - - - - Maps a System.Byte[] Property to an column that can store a BLOB. - - - This is only needed by DataProviders (SqlClient) that need to specify a Size for the - IDbDataParameter. Most DataProvider(Oralce) don't need to set the Size so a BinaryType - would work just fine. - - - - - BinaryType. - - - - - - - - Maps a Property - to a column. - - - - - Initialize a new instance of the BooleanType - - This is used when the Property is mapped to a native boolean type. - - - - Initialize a new instance of the BooleanType class using a - . - - The underlying . - - This is used when the Property is mapped to a string column - that stores true or false as a string. - - - - - Maps a property - to a column. - - - - - Maps a Property - to a column. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Maps a Property - to a DbType.StringFixedLength column. - - - - - ClassMetaType is a NH specific type to support "any" with meta-type="class" - - - It work like a MetaType where the key is the entity-name it self - - - - - - - - - - - - - - - - - - - - - This method does not populate the component parent - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Maps a Property - to a column. - - - CultureInfoType stores the culture name (not the Culture ID) of the - in the DB. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Maps a Property - to a column. - - - - - A custom type for mapping user-written classes that implement - . - - - - - - - Adapts IUserType to the generic IType interface. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Maps a Property to a - - - - - - - - Maps a Property to a - - - - - - - - Maps the Year, Month, and Day of a Property to a - column - - - - - Support for parameterizable types. A UserType or CustomUserType may be - made parameterizable by implementing this interface. Parameters for a - type may be set by using a nested type element for the property element - - - - - Gets called by Hibernate to pass the configured type parameters to - the implementation. - - - - - - - - - - An extension of which - maps to the database's current timestamp, rather than the vm's - current timestamp. - - - Note: May/may-not cause issues on dialects which do not properly support - a true notion of timestamp - - - - - This is almost the exact same type as the DateTime except it can be used - in the version column, stores it to the accuracy the database supports, - and will default to the value of DateTime.Now if the value is null. - - -

- The value stored in the database depends on what your data provider is capable - of storing. So there is a possibility that the DateTime you save will not be - the same DateTime you get back when you check DateTime.Equals(DateTime) because - they will have their milliseconds off. -

-

- For example - SQL Server 2000 is only accurate to 3.33 milliseconds. So if - NHibernate writes a value of 01/01/98 23:59:59.995 to the Prepared Command, MsSql - will store it as 1998-01-01 23:59:59.997. -

-

- Please review the documentation of your Database server. -

-
-
- - - Sets the value of this Type in the IDbCommand. - - The IDbCommand to add the Type's value to. - The value of the Type. - The index of the IDataParameter in the IDbCommand. - - No null values will be written to the IDbCommand for this Type. - - - - - Maps a Property - to a column. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A reference to an entity class - - - - Constructs the requested entity type mapping. - The name of the associated entity. - - The property-ref name, or null if we - reference the PK of the associated entity. - - Is eager fetching enabled. - Should values of this mapping be embedded in XML modes? - - Is unwrapping of proxies allowed for this association; unwrapping - says to return the "implementation target" of lazy prooxies; typically only possible - with lazy="no-proxy". - - - - Two entities are considered the same when their instances are the same. - One entity instance - Another entity instance - The entity mode. - True if x == y; false otherwise. - - - - Get the identifier value of an instance or proxy. -

- Intended only for loggin purposes!!! -

- The object from which to extract the identifier. - The entity persister - The entity mode - The extracted identifier. -
- - - Converts the id contained in the to an object. - - The that contains the query results. - A string array of column names that contain the id. - The this is occurring in. - The object that this Entity will be a part of. - - An instance of the object or if the identifer was null. - - - - Retrieves the {@link Joinable} defining the associated entity. - The session factory. - The associated joinable - - - - Determine the type of either (1) the identifier if we reference the - associated entity's PK or (2) the unique key to which we refer (i.e. - the property-ref). - - The mappings... - The appropriate type. - - - - The name of the property on the associated entity to which our FK refers - - The mappings... - The appropriate property name. - - - Convenience method to locate the identifier type of the associated entity. - The mappings... - The identifier type - - - Convenience method to locate the identifier type of the associated entity. - The originating session - The identifier type - - - - Resolves the identifier to the actual object. - - - - - Resolve an identifier or unique key value - - - - - - - - The name of the associated entity. - The session factory, for resolution. - The associated entity name. - - - The name of the associated entity. - The associated entity name. - - - - Load an instance by a unique key that is not the primary key. - - The name of the entity to load - The name of the property defining the uniqie key. - The unique key property value. - The originating session. - The loaded entity - - - Explicitly, an entity type is an entity type - True. - - - - This returns the wrong class for an entity with a proxy, or for a named - entity. Theoretically it should return the proxy class, but it doesn't. -

- The problem here is that we do not necessarily have a ref to the associated - entity persister (nor to the session factory, to look it up) which is really - needed to "do the right thing" here... -

-
- - - When implemented by a class, gets the type of foreign key directionality - of this association. - - The of this association. - - - - Is the foreign key the primary key of the table? - - - - - Converts the given enum instance into a basic type. - - - - - - - Maps a to a - DbType.String. - - - If your database should store the - using the named values in the enum instead of the underlying values - then subclass this . - - - All that needs to be done is to provide a default constructor that - NHibernate can use to create the specific type. For example, if - you had an enum defined as. - - - - public enum MyEnum - { - On, - Off, - Dimmed - } - - - - all that needs to be written for your enum string type is: - - - - public class MyEnumStringType : NHibernate.Type.EnumStringType - { - public MyEnumStringType() - : base( typeof( MyEnum ) ) - { - } - } - - - - The mapping would look like: - - - - ... - <property name="Status" type="MyEnumStringType, AssemblyContaining" /> - ... - - - - The TestFixture that shows the working code can be seen - in NHibernate.Test.TypesTest.EnumStringTypeFixture.cs - , NHibernate.Test.TypesTest.EnumStringClass.cs - , and NHibernate.Test.TypesTest.EnumStringClass.hbm.xml - - - - - - Hardcoding of 255 for the maximum length - of the Enum name that will be saved to the db. - - - 255 because that matches the default length that hbm2ddl will - use to create the column. - - - - - Initializes a new instance of . - - The of the Enum. - - - - Initializes a new instance of . - - The of the Enum. - The length of the string that can be written to the column. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This appends enumstring - to the beginning of the underlying - enums name so that could still be stored - using the underlying value through the - also. - - - - - Represents directionality of the foreign key constraint - - - - - A foreign key from parent to child - - - - - A foreign key from child to parent - - - - - Should we cascade at this cascade point? - - - - - An that maps an collection - to the database using bag semantics. - - - - - Initializes a new instance of a class for - a specific role. - - The role the persistent collection is in. - The name of the property in the - owner object containing the collection ID, or if it is - the primary key. - - - - Instantiates a new for the bag. - - The current for the bag. - The current for the bag. - - - - - Wraps an in a . - - The for the collection to be a part of. - The unwrapped . - - An that wraps the non NHibernate . - - - - - An that maps an collection - using bag semantics with an identifier to the database. - - - - - Initializes a new instance of a class for - a specific role. - - The role the persistent collection is in. - The name of the property in the - owner object containing the collection ID, or if it is - the primary key. - - - - Instantiates a new for the identifier bag. - - The current for the identifier bag. - - - - - - - Wraps an in a . - - The for the collection to be a part of. - The unwrapped . - - An that wraps the non NHibernate . - - - - - Instantiate an empty instance of the "underlying" collection (not a wrapper), - but with the given anticipated size (i.e. accounting for initial capacity - and perhaps load factor). - - - The anticipated size of the instantiated collection after we are done populating it. - - A newly instantiated collection to be wrapped. - - - - - - - An that maps an collection - to the database using list semantics. - - - - - Initializes a new instance of a class for - a specific role. - - The role the persistent collection is in. - The name of the property in the - owner object containing the collection ID, or if it is - the primary key. - - - - Instantiates a new for the list. - - The current for the list. - The current for the list. - - - - - Wraps an in a . - - The for the collection to be a part of. - The unwrapped . - - An that wraps the non NHibernate . - - - - - An that maps an collection - to the database. - - - - - Initializes a new instance of a class for - a specific role. - - The role the persistent collection is in. - The name of the property in the - owner object containing the collection ID, or if it is - the primary key. - - - - Instantiates a new for the map. - - The current for the map. - - Not used. - - - - - Wraps an in a . - - The for the collection to be a part of. - The unwrapped . - - An that wraps the - non NHibernate . - - - - - An that maps a sorted collection - to the database. - - - - - An that maps an collection - to the database. - - - - - Initializes a new instance of a class for - a specific role. - - The role the persistent collection is in. - The name of the property in the - owner object containing the collection ID, or if it is - the primary key. - - - - Instantiates a new for the set. - - The current for the set. - The current for the set. - - - - - Wraps an in a . - - The for the collection to be a part of. - The unwrapped . - - An that wraps the non NHibernate . - - - - - Initializes a new instance of a class for - a specific role. - - The role the persistent collection is in. - The name of the property in the - owner object containing the collection ID, or if it is - the primary key. - - - - An that maps a sorted collection - to the database. - - - - - Initializes a new instance of a class for - a specific role. - - The role the persistent collection is in. - The name of the property in the - owner object containing the collection ID, or if it is - the primary key. - The to use to compare - set elements. - - - - Maps a Property - to a column. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Maps a Property - to a column. - - - - - - - - - - - Maps a Property - to a column. - - - - - - - - - - - Maps a Property - to a column. - - - - - - - - - - - A many-to-one association to an entity - - - - - Hydrates the Identifier from . - - The that contains the query results. - A string array of column names to read from. - The this is occurring in. - The object that this Entity will be a part of. - - An instantiated object that used as the identifier of the type. - - - - - A one-to-one association to an entity - - - - - We don't need to dirty check one-to-one because of how - assemble/disassemble is implemented and because a one-to-one - association is never dirty - - - - - PersistentEnumType - - - - - Gets an instance of the Enum - - The underlying value of an item in the Enum. - - An instance of the Enum set to the code value. - - - - - Gets the correct value for the Enum. - - The value to convert (an enum instance). - A boxed version of the code, converted to the correct type. - - This handles situations where the DataProvider returns the value of the Enum - from the db in the wrong underlying type. It uses to - convert it to the correct type. - - - - - Maps a Property - to a column. - - - - - - - - - - - Maps an instance of a that has the - to a column. - - - - For performance reasons, the SerializableType should be used when you know that Bytes are - not going to be greater than 8,000. Implementing a custom type is recommended for larger - types. - - - The base class is because the data is stored in - a byte[]. The System.Array does not have a nice "equals" method so we must - do a custom implementation. - - - - - - - - - - - - - - - - - - - - - - - Thrown when a property cannot be serialized/deserialized - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - The message that describes the error. - - - - Initializes a new instance of the class. - - The message that describes the error. - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Maps a Property to an - column. - - - Verify through your database's documentation if there is a column type that - matches up with the capabilities of - - - - - - - - - - - A one-to-one association that maps to specific formula(s) - instead of the primary key column of the owning entity. - - - - - Maps a Property to an - column that can store a CLOB. - - - This is only needed by DataProviders (SqlClient) that need to specify a Size for the - IDbDataParameter. Most DataProvider(Oralce) don't need to set the Size so a StringType - would work just fine. - - - - - Maps a to a column. - - - - - - - - - - - - - - - - - Maps a Property to an column - that stores the DateTime using the Ticks property. - - - This is the recommended way to "timestamp" a column. - The System.DateTime.Ticks is accurate to 100-nanosecond intervals. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Maps a Property to an column - This is an extra way to map a . You already have - but mapping against a . - - - - - Maps a Property to an column - - - - - - - - - - - - - - - - - - - - - - - - - Maps a Property to an DateTime column that only stores the - Hours, Minutes, and Seconds of the DateTime as significant. - Also you have for handling, the NHibernate Type , - the which maps to a . - - - - This defaults the Date to "1753-01-01" - that should not matter because - using this Type indicates that you don't care about the Date portion of the DateTime. - - - A more appropriate choice to store the duration/time is the . - The underlying tends to be handled differently by different - DataProviders. - - - - - - Maps a to a 1 char column - that stores a 'T'/'F' to indicate true/false. - - - If you are using schema-export to generate your tables then you need - to set the column attributes: length=1 or sql-type="char(1)". - - This needs to be done because in Java's JDBC there is a type for CHAR and - in ADO.NET there is not one specifically for char, so you need to tell schema - export to create a char(1) column. - - - - - - - - - - - - - - - - - Used internally to obtain instances of IType. - - - Applications should use static methods and constants on NHibernate.NHibernateUtil if the default - IType is good enough. For example, the TypeFactory should only be used when the String needs - to have a length of 300 instead of 255. At this point NHibernateUtil.String does not get you the - correct IType. Instead use TypeFactory.GetString(300) and keep a local variable that holds - a reference to the IType. - - - - - - - - Register other Default .NET type - - - These type will be used, as default, even when the "type" attribute was NOT specified in the mapping - - - - - Register other NO Default .NET type - - - These type will be used only when the "type" attribute was is specified in the mapping. - These are in here because needed to NO override default CLR types and be available in mappings - - - - - Gets the classification of the Type based on the string. - - The name of the Type to get the classification for. - The Type of Classification - - This parses through the string and makes the assumption that no class - name and no assembly name will contain the "(". - - If it finds - the "(" and then finds a "," afterwards then it is a - TypeClassification.PrecisionScale. - - - If it finds the "(" - and doesn't find a "," afterwards, then it is a - TypeClassification.Length. - - - If it doesn't find the "(" then it assumes that it is a - TypeClassification.Plain. - - - - - - Given the name of a Hibernate type such as Decimal, Decimal(19,0) - , Int32, or even NHibernate.Type.DecimalType, NHibernate.Type.DecimalType(19,0), - NHibernate.Type.Int32Type, then return an instance of NHibernate.Type.IType - - The name of the type. - The instance of the IType that the string represents. - - This method will return null if the name is not found in the basicNameMap. - - - - - Uses heuristics to deduce a NHibernate type given a string naming the - type. - - - An instance of NHibernate.Type.IType - - When looking for the NHibernate type it will look in the cache of the Basic types first. - If it doesn't find it in the cache then it uses the typeName to get a reference to the - Class (Type in .NET). Once we get the reference to the .NET class we check to see if it - implements IType, ICompositeUserType, IUserType, ILifecycle (Association), or - IPersistentEnum. If none of those are implemented then we will serialize the Type to the - database using NHibernate.Type.SerializableType(typeName) - - - - - Uses heuristics to deduce a NHibernate type given a string naming the type. - - the type name - parameters for the type - An instance of NHibernate.Type.IType - - - - Uses heuristics to deduce a NHibernate type given a string naming the type. - - the type name - parameters for the type - optionally, the size of the type - - - - - Gets the BinaryType with the specified length. - - The length of the data to store in the database. - A BinaryType - - In addition to returning the BinaryType it will also ensure that it has - been added to the basicNameMap with the keys Byte[](length) and - NHibernate.Type.BinaryType(length). - - - - - Gets the SerializableType for the specified Type - - The Type that will be Serialized to the database. - A SerializableType - - - In addition to returning the SerializableType it will also ensure that it has - been added to the basicNameMap with the keys Type.FullName (the result - of IType.Name and Type.AssemblyQualifiedName. This is different - from the other items put in the basicNameMap because it is uses the AQN and the - FQN as opposed to the short name used in the maps and the FQN. - - - Since this method calls the method - GetSerializableType(System.Type, Int32) - with the default length, those keys will also be added. - - - - - - A one-to-one association type for the given class and cascade style. - - - - - A many-to-one association type for the given class and cascade style. - - - - - - - A many-to-one association type for the given class and cascade style. - - - - - A many-to-one association type for the given class and cascade style. - - - - - Collection of convenience methods relating to operations across arrays of types... - - - - Deep copy a series of values from one array to another - The values to copy (the source) - The value types - An array indicating which values to include in the copy - The array into which to copy the values - The originating session - - - Apply the operation across a series of values. - The values - The value types - The originating session - - - - Apply the operation across a series of values. - - The values - The value types - The originating session - The entity "owning" the values - - - - Apply the operation across a series of values. - The values - The value types - An array indicating which values to include in the disassembled state - The originating session - The entity "owning" the values - The disassembled state - - - - Apply the operation across a series of values. - - The source of the state - The target into which to replace the source values. - The value types - The originating session - The entity "owning" the values - Represent a cache of already replaced state - The replaced state - - - - Apply the - operation across a series of values. - - The source of the state - The target into which to replace the source values. - The value types - The originating session - The entity "owning" the values - A map representing a cache of already replaced state - FK directionality to be applied to the replacement - The replaced state - - - - Apply the - operation across a series of values, as long as the corresponding is an association. - - The source of the state - The target into which to replace the source values. - The value types - The originating session - The entity "owning" the values - A map representing a cache of already replaced state - FK directionality to be applied to the replacement - The replaced state - - If the corresponding type is a component type, then apply - across the component subtypes but do not replace the component value itself. - - - - - Determine if any of the given field values are dirty, returning an array containing - indices of the dirty fields. - If it is determined that no fields are dirty, null is returned. - - The property definitions - The current state of the entity - The baseline state of the entity - Columns to be included in the dirty checking, per property - Does the entity currently hold any uninitialized property values? - The session from which the dirty check request originated. - Array containing indices of the dirty properties, or null if no properties considered dirty. - - - - Determine if any of the given field values are modified, returning an array containing - indices of the modified fields. - If it is determined that no fields are dirty, null is returned. - - The property definitions - The current state of the entity - The baseline state of the entity - Columns to be included in the mod checking, per property - Does the entity currently hold any uninitialized property values? - The session from which the dirty check request originated. - Array containing indices of the modified properties, or null if no properties considered modified. - - - - Maps the Assembly Qualified Name of a to a - column. - - - - - - - - Initialize a new instance of the TypeType class using a - . - - The underlying . - - - - Gets the in the for the Property. - - The that contains the value. - The index of the field to get the value from. - The from the database. - - Thrown when the value in the database can not be loaded as a - - - - - Gets the in the for the Property. - - The that contains the value. - The name of the field to get the value from. - The from the database. - - This just calls gets the index of the name in the IDataReader - and calls the overloaded version - (IDataReader, Int32). - - - Thrown when the value in the database can not be loaded as a - - - - - Puts the Assembly Qualified Name of the - Property into to the . - - The to put the value into. - The that contains the value. - The index of the to start writing the value to. - - This uses the method of the - object to do the work. - - - - - A representation of the value to be embedded in an XML element - - The that contains the values. - - An Xml formatted string that contains the Assembly Qualified Name. - - - - Gets the that will be returned - by the NullSafeGet() methods. - - - A from the .NET framework. - - - - - - - - Maps a Property - to a column. - - - - - - - - - - - Maps a Property - to a column. - - - - - - - - - - - Maps a Property - to a column. - - - - - - - - Maps a to a 1 char column - that stores a 'Y'/'N' to indicate true/false. - - - If you are using schema-export to generate your tables then you need - to set the column attributes: length=1 or sql-type="char(1)". - - This needs to be done because in Java's JDBC there is a type for CHAR and - in ADO.NET there is not one specifically for char, so you need to tell schema - export to create a char(1) column. - - - - - - - - - - - - - - - - - A UserType that may be dereferenced in a query. - This interface allows a custom type to define "properties". - These need not necessarily correspond to physical .NET style properties. - - A ICompositeUserType may be used in almost every way - that a component may be used. It may even contain many-to-one - associations. - - Implementors must be immutable and must declare a public - default constructor. - - Unlike UserType, cacheability does not depend upon - serializability. Instead, Assemble() and - Disassemble() provide conversion to/from a cacheable - representation. - - - - - Get the value of a property - - an instance of class mapped by this "type" - - the property value - - - - Set the value of a property - - an instance of class mapped by this "type" - - the value to set - - - - Compare two instances of the class mapped by this type for persistence - "equality", ie. equality of persistent state. - - - - - - - - Get a hashcode for the instance, consistent with persistence "equality" - - - - - Retrieve an instance of the mapped class from a IDataReader. Implementors - should handle possibility of null values. - - IDataReader - the column names - - the containing entity - - - - - Write an instance of the mapped class to a prepared statement. - Implementors should handle possibility of null values. - A multi-column type should be written to parameters starting from index. - If a property is not settable, skip it and don't increment the index. - - - - - - - - - - Return a deep copy of the persistent state, stopping at entities and at collections. - - generally a collection element or entity field - - - - - Transform the object into its cacheable representation. - At the very least this method should perform a deep copy. - That may not be enough for some implementations, method should perform a deep copy. That may not be enough for some implementations, however; for example, associations must be cached as identifier values. (optional operation) - - the object to be cached - - - - - - Reconstruct an object from the cacheable representation. - At the very least this method should perform a deep copy. (optional operation) - - the object to be cached - - - - - - - During merge, replace the existing (target) value in the entity we are merging to - with a new (original) value from the detached entity we are merging. For immutable - objects, or null values, it is safe to simply return the first parameter. For - mutable objects, it is safe to return a copy of the first parameter. However, since - composite user types often define component values, it might make sense to recursively - replace component values in the target object. - - - - - Get the "property names" that may be used in a query. - - - - - Get the corresponding "property types" - - - - - The class returned by NullSafeGet(). - - - - - Are objects of this type mutable? - - - - - A custom type that may function as an identifier or discriminator - type, or may be marshalled to and from an XML document. - - - - - The interface to be implemented by user-defined types. - - - - The interface abstracts user code from future changes to the interface, - simplifies the implementation of custom types and hides certain "internal interfaces from - user code. - - - Implementers must be immutable and must declare a public default constructor. - - - The actual class mapped by a IUserType may be just about anything. However, if it is to - be cacheble by a persistent cache, it must be serializable. - - - Alternatively, custom types could implement directly or extend one of the - abstract classes in NHibernate.Type. This approach risks future incompatible changes - to classes or interfaces in the package. - - - - - - Compare two instances of the class mapped by this type for persistent "equality" - ie. equality of persistent state - - - - - - - - Get a hashcode for the instance, consistent with persistence "equality" - - - - - Retrieve an instance of the mapped class from a JDBC resultset. - Implementors should handle possibility of null values. - - a IDataReader - column names - the containing entity - - HibernateException - - - - Write an instance of the mapped class to a prepared statement. - Implementors should handle possibility of null values. - A multi-column type should be written to parameters starting from index. - - a IDbCommand - the object to write - command parameter index - HibernateException - - - - Return a deep copy of the persistent state, stopping at entities and at collections. - - generally a collection element or entity field - a copy - - - - During merge, replace the existing () value in the entity - we are merging to with a new () value from the detached - entity we are merging. For immutable objects, or null values, it is safe to simply - return the first parameter. For mutable objects, it is safe to return a copy of the - first parameter. For objects with component values, it might make sense to - recursively replace component values. - - the value from the detached entity being merged - the value in the managed entity - the managed entity - the value to be merged - - - - Reconstruct an object from the cacheable representation. At the very least this - method should perform a deep copy if the type is mutable. (optional operation) - - the object to be cached - the owner of the cached object - a reconstructed object from the cachable representation - - - - Transform the object into its cacheable representation. At the very least this - method should perform a deep copy if the type is mutable. That may not be enough - for some implementations, however; for example, associations must be cached as - identifier values. (optional operation) - - the object to be cached - a cacheable representation of the object - - - - The SQL types for the columns mapped by this type. - - - - - The type returned by NullSafeGet() - - - - - Are objects of this type mutable? - - - - - Parse a string representation of this value, as it appears - in an XML document. - - - - - Return an SQL literal representation of the value - - - - - Return a string representation of this value, as it - should appear in an XML document - - - - - Marker interface for user types which want to perform custom - logging of their corresponding values - - - - Generate a loggable string representation of the collection (value). - The collection to be logged; guaranteed to be non-null and initialized. - The factory. - The loggable string representation. - - - - Instantiate an uninitialized instance of the collection wrapper - - - - - Wrap an instance of a collection - - - - - Return an over the elements of this collection - the passed collection - instance may or may not be a wrapper - - - - - Optional operation. Does the collection contain the entity instance? - - - - - Optional operation. Return the index of the entity in the collection. - - - - - Replace the elements of a collection with the elements of another collection - - - - - Instantiate an empty instance of the "underlying" collection (not a wrapper), - but with the given anticipated size (i.e. accounting for initial size - and perhaps load factor). - - - The anticipated size of the instantiated collection - after we are done populating it. Note, may be negative to indicate that - we not yet know anything about the anticipated size (i.e., when initializing - from a result set row by row). - - - - - A user type that may be used for a version property. - - - - - Generate an initial version. - - The session from which this request originates. May be - null; currently this only happens during startup when trying to determine - the "unsaved value" of entities. - an instance of the type - - - - Increment the version. - - The session from which this request originates. - the current version - an instance of the type - - - - Helper class that contains common array functions and - data structures used through out NHibernate. - - - - - Append all elements in the 'from' list to the 'to' list. - - - - - - - Calculate a hash code based on the length and contents of the array. - The algorithm is such that if ArrayHelper.ArrayEquals(a,b) returns true, - then ArrayGetHashCode(a) == ArrayGetHashCode(b). - - - - - - - - Computes a hash code for . - - The hash code is computed as the sum of hash codes of - individual elements, so that the value is independent of the - collection iteration order. - - - - - Creates a that uses case-insensitive string comparison - associated with invariant culture. - - - This is different from the method in - in that the latter uses the current culture and is thus vulnerable to the "Turkish I" problem. - - - - - Creates a that uses case-insensitive string comparison - associated with invariant culture. - - - This is different from the method in - in that the latter uses the current culture and is thus vulnerable to the "Turkish I" problem. - - - - - Computes a hash code for . - - The hash code is computed as the sum of hash codes of - individual elements, so that the value is independent of the - collection iteration order. - - - - - A read-only dictionary that is always empty and permits lookup by key. - - - - - A read-only dictionary that is always empty and permits lookup by key. - - - - - Utility class implementing ToString for collections. All ToString - overloads call element.ToString(). - - - To print collections of entities or typed values, use - . - - - - - - - - - Get only filters enabled for many-to-one association. - - All enabled filters - A new for filters enabled for many to one. - - - - An where keys are compared by object identity, rather than equals. - - All external users of this class need to have no knowledge of the IdentityKey - it is all - hidden by this class. - - - - Do NOT use a System.Value type as the key for this Hashtable - only classes. See - the google thread - about why using System.Value is a bad thing. - - - If I understand it correctly, the first call to get an object defined by a DateTime("2003-01-01") - would box the DateTime and return the identity key for the box. If you were to get that Key and - unbox it into a DateTime struct, then the next time you passed it in as the Key the IdentityMap - would box it again (into a different box) and it would have a different IdentityKey - so you would - not get the same value for the same DateTime value. - - - - - - Create a new instance of the IdentityMap that has no - iteration order. - - A new IdentityMap based on a Hashtable. - - - - Create a new instance of the IdentityMap that has an - iteration order of the order the objects were added - to the Map. - - A new IdentityMap based on ListDictionary. - - - - Return the Dictionary Entries (as instances of DictionaryEntry in a collection - that is safe from concurrent modification). Ie - we may safely add new instances - to the underlying IDictionary during enumeration of the Values. - - The IDictionary to get the enumeration safe list. - A Collection of DictionaryEntries - - - - Create the IdentityMap class with the correct class for the IDictionary. - Unsorted = Hashtable - Sorted = ListDictionary - - A class that implements the IDictionary for storing the objects. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Verifies that we are not using a System.ValueType as the Key in the Dictionary - - The object that will be the key. - An object that is safe to be a key. - Thrown when the obj is a System.ValueType - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Returns the Keys used in this IdentityMap - - - - - - - - - - - - - - - - Provides a snapshot VIEW in the form of a List of the contents of the IdentityMap. - You can safely iterate over this VIEW and modify the actual IdentityMap because the - VIEW is a copy of the contents, not a reference to the existing Map. - - Contains a copy (not that actual instance stored) of the DictionaryEntries in a List. - - - - - Set implementation that use reference equals instead of Equals() as its comparison mechanism. - - - - - Concatenates multiple objects implementing into one. - - - - - Creates an IEnumerable object from multiple IEnumerables. - - The IEnumerables to join together. - - - - - - - A flag to indicate if Dispose() has been called. - - - - - Finalizer that ensures the object is correctly disposed of. - - - - - Takes care of freeing the managed and unmanaged resources that - this class is responsible for. - - - - - Takes care of freeing the managed and unmanaged resources that - this class is responsible for. - - Indicates if this JoinedEnumerable is being Disposed of or Finalized. - - The command is closed and the reader is disposed. This allows other ADO.NET - related actions to occur without needing to move all the way through the - EnumerableImpl. - - - - - A map of objects whose mapping entries are sequenced based on the order in which they were - added. This data structure has fast O(1) search time, deletion time, and insertion time - - - This class is not thread safe. - This class is not a really replication of JDK LinkedHashMap{K, V}, - this class is an adaptation of SequencedHashMap with generics. - - - - - Initializes a new instance of the class that is empty, - has the default initial capacity, and uses the default equality comparer for the key type. - - - - - Initializes a new instance of the class that is empty, - has the specified initial capacity, and uses the default equality comparer for the key type. - - The initial number of elements that the can contain. - - - - Initializes a new instance of the class that is empty, has the default initial capacity, and uses the specified . - - The implementation to use when comparing keys, or null to use the default EqualityComparer for the type of the key. - - - - Initializes a new instance of the class that is empty, has the specified initial capacity, and uses the specified . - - The initial number of elements that the can contain. - The implementation to use when comparing keys, or null to use the default EqualityComparer for the type of the key. - - - - An implementation of a Map which has a maximum size and uses a Least Recently Used - algorithm to remove items from the Map when the maximum size is reached and new items are added. - - - - - A map of objects whose mapping entries are sequenced based on the order in which they were - added. This data structure has fast O(1) search time, deletion time, and insertion time - - - This class is not thread safe. - - - - - Construct an empty sentinel used to hold the head (sentinel.next) and the tail (sentinal.prev) - of the list. The sentinal has a key and value - - - - - - Sentinel used to hold the head and tail of the list of entries - - - - - Map of keys to entries - - - - - Holds the number of modifications that have occurred to the map, excluding modifications - made through a collection view's iterator. - - - - - Construct a new sequenced hash map with default initial size and load factor - - - - - Construct a new sequenced hash map with the specified initial size and default load factor - - the initial size for the hash table - - - - Construct a new sequenced hash map with the specified initial size and load factor - - the initial size for the hashtable - the load factor for the hash table - - - - Construct a new sequenced hash map with the specified initial size, hash code provider - and comparer - - the initial size for the hashtable - - - - - Creates an empty Hashtable with the default initial capacity and using the default load factor, - the specified hash code provider and the specified comparer - - - - - - Creates an empty Hashtable with the default initial capacity and using the default load factor, - the specified hash code provider and the specified comparer - - the initial size for the hashtable - the load factor for the hash table - - - - - Removes an internal entry from the linked list. THis does not remove it from the underlying - map. - - - - - - Inserts a new internal entry to the tail of the linked list. This does not add the - entry to the underlying map. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Remove the Entry identified by the Key if it exists. - - The Key to remove. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Return only the Key of the DictionaryEntry - - - - - Return only the Value of the DictionaryEntry - - - - - Return the full DictionaryEntry - - - - - Various small helper methods. - - - - - Return an identifying string representation for the object, taking - NHibernate proxies into account. The returned string will be "null", - "classname@hashcode(hash)", or "entityname#identifier". If the object - is an uninitialized NHibernate proxy, take care not to initialize it. - - - - - - - - Helper class for Reflection related code. - - - - - Determine if the specified overrides the - implementation of Equals from - - The to reflect. - if any type in the hierarchy overrides Equals(object). - - - - Determine if the specified overrides the - implementation of GetHashCode from - - The to reflect. - if any type in the hierarchy overrides GetHashCode(). - - - - Finds the for the property in the . - - The to find the property in. - The name of the Property to find. - The name of the property access strategy. - The to get the value of the Property. - - This one takes a propertyAccessor name as we might know the correct strategy by now so we avoid Exceptions which are costly - - - - - Get the NHibernate for the named property of the . - - The to find the Property in. - The name of the property/field to find in the class. - The name of the property accessor for the property. - - The NHibernate for the named property. - - - - - Get the for the named property of a type. - - The to find the property in. - The name of the property/field to find in the class. - The name of the property accessor for the property. - The for the named property. - - - - Get the for the named property of a type. - - The FullName to find the property in. - The name of the property/field to find in the class. - The name of the property accessor for the property. - The for the named property. - - - - Returns a reference to the Type. - - The name of the class or a fully qualified name. - The Type for the Class. - - - - Load a System.Type given is't name. - - The class FullName or AssemblyQualifiedName - The System.Type - - If the don't represent an - the method try to find the System.Type scanning all Assemblies of the . - - If no System.Type was found for . - - - - Load a System.Type given is't name. - - The class FullName or AssemblyQualifiedName - The System.Type or null - - If the don't represent an - the method try to find the System.Type scanning all Assemblies of the . - - - - - Returns a from an already loaded Assembly or an - Assembly that is loaded with a partial name. - - An . - if an exception should be thrown - in case of an error, otherwise. - - A object that represents the specified type, - or if the type cannot be loaded. - - - Attempts to get a reference to the type from an already loaded assembly. If the - type cannot be found then the assembly is loaded using - . - - - - - Returns the value of the static field of . - - The . - The name of the field in the . - The value contained in the field, or if the type or the field does not exist. - - - - Gets the default no arg constructor for the . - - The to find the constructor for. - - The for the no argument constructor, or if the - type is an abstract class. - - - Thrown when there is a problem calling the method GetConstructor on . - - - - - Finds the constructor that takes the parameters. - - The to find the constructor in. - The objects to use to find the appropriate constructor. - - An that can be used to create the type with - the specified parameters. - - - Thrown when no constructor with the correct signature can be found. - - - - - Determines if the is a non creatable class. - - The to check. - if the is an Abstract Class or an Interface. - - - - Unwraps the supplied - and returns the inner exception preserving the stack trace. - - - The to unwrap. - - The unwrapped exception. - - - - Try to find a method in a given type. - - The given type. - The method info. - The found method or null. - - The , in general, become from another . - - - - - Try to find a property, that can be managed by NHibernate, from a given type. - - The given . - The name of the property to find. - true if the property exists; otherwise false. - - When the user defines a field.xxxxx access strategy should be because both the property and the field exists. - NHibernate can work even when the property does not exist but in this case the user should use the appropiate accessor. - - - - - Check if a method is declared in a given . - - The method to check. - The where the method is really declared. - True if the method is an implementation of the method declared in ; false otherwise. - - - - Used to ensure a collection filtering a given IEnumerable by a certain type. - - The type used like filter. - - - - Cache following a "Most Recently Used" (MRU) algorithm for maintaining a - bounded in-memory size; the "Least Recently Used" (LRU) entry is the first - available for removal from the cache. - - - This implementation uses a bounded MRU Map to limit the in-memory size of - the cache. Thus the size of this cache never grows beyond the stated size. - - - - - Cache following a "Most Recently Used" (MRY) algorithm for maintaining a - bounded in-memory size; the "Least Recently Used" (LRU) entry is the first - available for removal from the cache. - - - This implementation uses a "soft limit" to the in-memory size of the cache, - meaning that all cache entries are kept within a completely - {@link java.lang.ref.SoftReference}-based map with the most recently utilized - entries additionally kept in a hard-reference manner to prevent those cache - entries soft references from becoming enqueued by the garbage collector. - Thus the actual size of this cache impl can actually grow beyond the stated - max size bound as long as GC is not actively seeking soft references for - enqueuement. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This allows for both CRLF and lone LF line separators. - - - - - - - - - - - - - - - - - - - - - - Just a faзade for calling string.Split() - We don't use our StringTokenizer because string.Split() is - more efficient (but it only works when we don't want to retrieve the delimiters) - - separators for the tokens of the list - the string that will be broken into tokens - - - - - Splits the String using the StringTokenizer. - - separators for the tokens of the list - the string that will be broken into tokens - true to include the separators in the tokens. - - - This is more powerful than Split because you have the option of including or - not including the separators in the tokens. - - - - - - - - - - - - - - - - - - - - Takes a fully qualified type name and returns the full name of the - Class - includes namespaces. - - - - - - - Takes a fully qualified type name (can include the assembly) and just returns - the name of the Class. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Converts a in the format of "true", "t", "false", or "f" to - a . - - The string to convert. - - The value converted to a . - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Counts the unquoted instances of the character. - - - - - - - - - - - - - - - - Generate a nice alias for the given class name or collection role - name and unique integer. Subclasses do not have to use - aliases of this form. - - an alias of the form foo1_ - - - - Returns the interned string equal to if there is one, or - otherwise. - - A - A - - - - Return the index of the next line separator, starting at startIndex. If will match - the first CRLF or LF line separator. If there is no match, -1 will be returned. When - returning, newLineLength will be set to the number of characters in the matched line - separator (1 if LF was found, 2 if CRLF was found). - - - - - Check if the given index points to a line separator in the string. Both CRLF and LF - line separators are handled. When returning, newLineLength will be set to the number - of characters matched in the line separator. It will be 2 if a CRLF matched, 1 if LF - matched, and 0 if the index doesn't indicate (the start of) a line separator. - - - - - A StringTokenizer java like object - - - - - - - - - - - - - - - - - - - - - - - - - - Returns an unmodifiable view of the specified IDictionary. - This method allows modules to provide users with "read-only" access to internal dictionary. - Query operations on the returned dictionary "read through" to the specified dictionary, - and attempts to modify the returned dictionary, - whether direct or via its collection views, result in an . - - The type of keys in the dictionary. - The type of values in the dictionary. - - - - Initializes a new instance of the UnmodifiableDictionary class that contains elements wrapped - from the specified IDictionary. - - The whose elements are wrapped. - - - - Count of elements in the collection. Unreliable! - - - - - Indicates failure of an assertion: a possible bug in NHibernate - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - The message that describes the error. - - - - Initializes a new instance of the class. - - The message that describes the error. - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Controls how the session interacts with the second-level - cache and query cache. - - - - - The session will never interact with the cache, except to invalidate - cache items when updates occur - - - - - The session will never read items from the cache, but will add items - to the cache as it reads them from the database. - - - - - The session may read items from the cache, but will not add items, - except to invalidate items when updates occur - - - - The session may read items from the cache, and add items to the cache - - - - The session will never read items from the cache, but will add items - to the cache as it reads them from the database. In this mode, the - effect of hibernate.cache.use_minimal_puts is bypassed, in - order to force a cache refresh - - - - - - - - Initializes a new instance of the class. - - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class. - - The message that describes the error. - - - - Initializes a new instance of the class. - - The message that describes the error. - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Transforms Criteria queries - - - - - Returns a clone of the original criteria, which will return the count - of rows that are returned by the original criteria query. - - - - - Returns a clone of the original criteria, which will return the count - of rows that are returned by the original criteria query. - - - - - Creates an exact clone of the criteria - - - - - - Creates an exact clone of the criteria - - - - - - Initializes a new instance of the class. - - The message that describes the error. - The name of the duplicate object - The type of the duplicate object - - - - Initializes a new instance of the class. - - The name of the duplicate object - The type of the duplicate object - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - The type of the duplicated object - - - - - The name of the duplicated object - - - - - Allows user code to inspect and/or change property values before they are written and after they - are read from the database - - - - There might be a single instance of IInterceptor for a SessionFactory, or a new - instance might be specified for each ISession. Whichever approach is used, the interceptor - must be serializable if the ISession is to be serializable. This means that SessionFactory - -scoped interceptors should implement ReadResolve(). - - - The ISession may not be invoked from a callback (nor may a callback cause a collection or - proxy to be lazily initialized). - - - - - - Called just before an object is initialized - - - - - - - - The interceptor may change the state, which will be propagated to the persistent - object. Note that when this method is called, entity will be an empty - uninitialized instance of the class. - if the user modified the state in any way - - - - Called when an object is detected to be dirty, during a flush. - - - - - - - - - The interceptor may modify the detected currentState, which will be propagated to - both the database and the persistent object. Note that all flushes end in an actual - synchronization with the database, in which as the new currentState will be propagated - to the object, but not necessarily (immediately) to the database. It is strongly recommended - that the interceptor not modify the previousState. - - if the user modified the currentState in any way - - - - Called before an object is saved - - - - - - - - The interceptor may modify the state, which will be used for the SQL INSERT - and propagated to the persistent object - - if the user modified the state in any way - - - - Called before an object is deleted - - - - - - - - It is not recommended that the interceptor modify the state. - - - - Called before a collection is (re)created. - - - Called before a collection is deleted. - - - Called before a collection is updated. - - - - Called before a flush - - The entities - - - - Called after a flush that actually ends in execution of the SQL statements required to - synchronize in-memory state with the database. - - The entitites - - - - Called when a transient entity is passed to SaveOrUpdate. - - - The return value determines if the object is saved - - - the entity is passed to Save(), resulting in an INSERT - - the entity is passed to Update(), resulting in an UPDATE - - Hibernate uses the unsaved-value mapping to determine if the object is unsaved - - - A transient entity - Boolean or to choose default behaviour - - - - Called from Flush(). The return value determines whether the entity is updated - - - - an array of property indicies - the entity is dirty - an empty array - the entity is not dirty - - use Hibernate's default dirty-checking algorithm - - - A persistent entity - - - - - - An array of dirty property indicies or to choose default behavior - - - - Instantiate the entity class. Return to indicate that Hibernate should use the default - constructor of the class - - the name of the entity - The type of entity instance to be returned. - the identifier of the new instance - An instance of the class, or to choose default behaviour - - The identifier property of the returned instance - should be initialized with the given identifier. - - - - Get the entity name for a persistent or transient instance - an entity instance - the name of the entity - - - Get a fully loaded entity instance that is cached externally - the name of the entity - the instance identifier - a fully initialized entity - - - - Called when a NHibernate transaction is begun via the NHibernate - API. Will not be called if transactions are being controlled via some other mechanism. - - - - - Called before a transaction is committed (but not before rollback). - - - - - Called after a transaction is committed or rolled back. - - - - Called when sql string is being prepared. - sql to be prepared - original or modified sql - - - - Called when a session-scoped (and only session scoped) interceptor is attached - to a session - - - session-scoped-interceptor is an instance of the interceptor used only for one session. - The use of singleton-interceptor may cause problems in multi-thread scenario. - - - - - - Defines the representation modes available for entities. - - - - Represents a fetching strategy. - - - This is used together with the API to specify - runtime fetching strategies. - - For Hql queries, use the FETCH keyword instead. - - - - - - Default to the setting configured in the mapping file. - - - - - Fetch eagerly, using a separate select. Equivalent to - fetch="select" (and outer-join="false") - - - - - Fetch using an outer join. Equivalent to - fetch="join" (and outer-join="true") - - - - - Indicates that an expected getter or setter method could not be found on a class - - - - - Initializes a new instance of the class. - - The message that describes the error. - - - - Initializes a new instance of the class. - - The message that describes the error. - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Represents a flushing strategy. - - - The flush process synchronizes database state with session state by detecting state - changes and executing SQL statements - - - - - Special value for unspecified flush mode (like in Java). - - - - - The ISession is never flushed unless Flush() is explicitly - called by the application. This mode is very efficient for read only - transactions - - - - - The ISession is flushed when Transaction.Commit() is called - - - - - The ISession is sometimes flushed before query execution in order to - ensure that queries never return stale state. This is the default flush mode. - - - - - The is flushed before every query. This is - almost always unnecessary and inefficient. - - - - - Provides XML marshalling for classes registered with a SessionFactory - - - - Hibernate defines a generic XML format that may be used to represent any class - (hibernate-generic.dtd). The user configures an XSLT stylesheet for marshalling - data from this generic format to an application and/or user readable format. By default, - Hibernate will use hibernate-default.xslt which maps data to a useful human- - readable format. - - - The property xml.output_stylesheet specifies a user-written stylesheet. - Hibernate will attempt to load the stylesheet from the classpath first and if not found, - will attempt to load it as a file - - - It is not intended that implementors be threadsafe - - - - - - Add an object to the output document. - - A transient or persistent instance - Databinder - - - - Add a collection of objects to the output document - - A collection of transient or persistent instance - Databinder - - - - Output the generic XML representation of the bound objects - - Generic Xml representation - - - - Output the generic XML Representation of the bound objects - to a XmlDocument - - A generic Xml tree - - - - Output the custom XML representation of the bound objects - - Custom Xml representation - - - - Output the custom XML representation of the bound objects as - an XmlDocument - - A custom Xml Tree - - - - Controls whether bound objects (and their associated objects) that are lazily instanciated - are explicityl initialized or left as they are - - True to explicitly initilize lazy objects, false to leave them in the state they are in - - - - Performs a null safe comparison using "==" instead of Object.Equals() - - First object to compare. - Second object to compare. - - true if x is the same instance as y or if both are null references; otherwise, false. - - - This is Lazy collection safe since it uses , - unlike Object.Equals() which currently causes NHibernate to load up the collection. - This behaivior of Collections is likely to change because Java's collections override Equals() and - .net's collections don't. So in .net there is no need to override Equals() and - GetHashCode() on the NHibernate Collection implementations. - - - - - Thrown if Hibernate can't instantiate an entity or component class at runtime. - - - - - Initializes a new instance of the class. - - The message that describes the error. - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - The that NHibernate was trying to instantiate. - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Sets the serialization info for after - getting the info from the base Exception. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Gets the that NHibernate was trying to instantiate. - - - - - Gets a message that describes the current . - - - The error message that explains the reason for this exception and the Type that - was trying to be instantiated. - - - - - Thrown when an invalid type is specified as a proxy for a class. - The exception is also thrown when a class is specified as lazy, - but cannot be used as a proxy for itself. - - - - - A problem occurred trying to lazily initialize a collection or proxy (for example the session - was closed) or iterate query results. - - - - - Initializes a new instance of the class. - - The name of the entity where the exception was thrown - The id of the entity where the exception was thrown - The message that describes the error. - - - - Initializes a new instance of the class. - - The message that describes the error. - - - - Initializes a new instance of the class. - - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class. - - The message that describes the error. - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Instances represent a lock mode for a row of a relational database table. - - - It is not intended that users spend much time worrying about locking since Hibernate - usually obtains exactly the right lock level automatically. Some "advanced" users may - wish to explicitly specify lock levels. - - - - - - - - - - - - - - - Is this lock mode more restrictive than the given lock mode? - - - - - - Is this lock mode less restrictive than the given lock mode? - - - - - - No lock required. - - - If an object is requested with this lock mode, a Read lock - might be obtained if necessary. - - - - - A shared lock. - - - Objects are loaded in Read mode by default - - - - - An upgrade lock. - - - Objects loaded in this lock mode are materialized using an - SQL SELECT ... FOR UPDATE - - - - - Attempt to obtain an upgrade lock, using an Oracle-style - SELECT ... FOR UPGRADE NOWAIT. - - - The semantics of this lock mode, once obtained, are the same as Upgrade - - - - - A Write lock is obtained when an object is updated or inserted. - - - This is not a valid mode for Load() or Lock(). - - - - - Similar to except that, for versioned entities, - it results in a forced version increment. - - - - - Provides access to the full range of NHibernate built-in types. - IType instances may be used to bind values to query parameters. - Also a factory for new Blobs and Clobs. - - - - - Guesses the IType of this object - - The obj. - - - - - Guesses the IType by the type - - The type. - - - - - NHibernate Ansi String type - - - - - NHibernate binary type - - - - - NHibernate binary blob type - - - - - NHibernate boolean type - - - - - NHibernate byte type - - - - - NHibernate character type - - - - - NHibernate Culture Info type - - - - - NHibernate date type - - - - - NHibernate date type - - - - - NHibernate local date type - - - - - NHibernate utc date type - - - - - NHibernate date type - - - - - NHibernate date type - - - - - NHibernate decimal type - - - - - NHibernate double type - - - - - NHibernate Currency type (System.Decimal - DbType.Currency) - - - - - NHibernate Guid type. - - - - - NHibernate System.Int16 (short in C#) type - - - - - NHibernate System.Int32 (int in C#) type - - - - - NHibernate System.Int64 (long in C#) type - - - - - NHibernate System.SByte type - - - - - NHibernate System.UInt16 (ushort in C#) type - - - - - NHibernate System.UInt32 (uint in C#) type - - - - - NHibernate System.UInt64 (ulong in C#) type - - - - - NHibernate System.Single (float in C#) Type - - - - - NHibernate String type - - - - - NHibernate string clob type - - - - - NHibernate Time type - - - - - NHibernate Ticks type - - - - - NHibernate Ticks type - - - - - NHibernate Ticks type - - - - - NHibernate Timestamp type - - - - - NHibernate TrueFalse type - - - - - NHibernate YesNo type - - - - - NHibernate class type - - - - - NHibernate class meta type for association of kind any. - - - - - - NHibernate serializable type - - - - - NHibernate System.Object type - - - - - A NHibernate persistent enum type - - - - - - - A NHibernate serializable type - - - - - - - A NHibernate serializable type - - a type mapping to a single column - the entity identifier type - - - - - A NHibernate persistent object (entity) type - - a mapped entity class - - - - A Hibernate persistent object (entity) type. - a mapped entity class - - - - A NHibernate custom type - - a class that implements UserType - - - - - Force initialization of a proxy or persistent collection. - - a persistable object, proxy, persistent collection or null - if we can't initialize the proxy at this time, eg. the Session was closed - - - - Is the proxy or persistent collection initialized? - - a persistable object, proxy, persistent collection or null - true if the argument is already initialized, or is not a proxy or collection - - - - Get the true, underlying class of a proxied persistent class. This operation - will initialize a proxy by side-effect. - - a persistable object or proxy - the true class of the instance - - - - Close an obtained from an - returned by NHibernate immediately, instead of waiting until the session is - closed or disconnected. - - - - - Close an returned by NHibernate immediately, - instead of waiting until the session is closed or disconnected. - - - - - Check if the property is initialized. If the named property does not exist - or is not persistent, this method always returns true. - - The potential proxy - the name of a persistent attribute of the object - - true if the named property of the object is not listed as uninitialized; - false if the object is an uninitialized proxy, or the named property is uninitialized - - - - - This exception is thrown when an operation would - break session-scoped identity. This occurs if the - user tries to associate two different instances of - the same class with a particular identifier, - in the scope of a single . - - - - - Initializes a new instance of the class. - - The message that describes the error. - The identifier of the object that caused the exception. - The EntityName of the object attempted to be loaded. - - - - Initializes a new instance of the class. - - The identifier of the object that caused the exception. - The EntityName of the object attempted to be loaded. - - - - Initializes a new instance of the class. - - - - - Sets the serialization info for after - getting the info from the base Exception. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Thrown when the application calls IQuery.UniqueResult() - and the query returned more than one result. Unlike all other NHibernate - exceptions, this one is recoverable! - - - - - Initializes a new instance of the class. - - The number of items in the result. - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Thrown when the user tries to pass a deleted object to the ISession. - - - - - Thrown when Hibernate could not resolve an object by id, especially when - loading an association. - - - - - Initializes a new instance of the class. - - The identifier of the object that caused the exception. - The of the object attempted to be loaded. - - - - Initializes a new instance of the class. - - The message that describes the error. - The identifier of the object that caused the exception. - The of the object attempted to be loaded. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Thrown when ISession.Load() fails to select a row with - the given primary key (identifier value). This exception might not - be thrown when Load() is called, even if there was no - row on the database, because Load() returns a proxy if - possible. Applications should use ISession.Get() to test if - a row exists in the database. - - - - - Initializes a new instance of the class. - - The identifier of the object that was attempting to be loaded. - The that NHibernate was trying to find a row for in the database. - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Thrown when the user passes a persistent instance to a ISession method that expects a - transient instance - - - - - Initializes a new instance of the class. - - The message that describes the error. - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - A problem occurred accessing a property of an instance of a persistent class by reflection - - - - - Initializes a new instance of the class. - - The message that describes the error. - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - A indicating if this was a "setter" operation. - The that NHibernate was trying find the Property or Field in. - The mapped property name that was trying to be accessed. - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Sets the serialization info for after - getting the info from the base Exception. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Gets the that NHibernate was trying find the Property or Field in. - - - - - Gets a message that describes the current . - - - The error message that explains the reason for this exception and - information about the mapped property and its usage. - - - - - Indicates that an expected getter or setter method could not be found on a class - - - - - Initializes a new instance of the class, - used when a property get/set accessor is missing. - - The that is missing the property - The name of the missing property - The type of the missing accessor - ("getter" or "setter") - - - - Initializes a new instance of the class, - used when a field is missing. - - The that is missing the field - The name of the missing property - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Initializes a new instance of the class. - - The message that describes the error. - The that NHibernate was trying to access. - The name of the Property that was being get/set. - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Sets the serialization info for after - getting the info from the base Exception. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Represents a replication strategy. - - - - - - Throw an exception when a row already exists - - - - - Ignore replicated entities when a row already exists - - - - - When a row already exists, choose the latest version - - - - - Overwrite existing rows when a row already exists - - - - - Thrown when a version number check failed, indicating that the - contained stale data (when using long transactions with - versioning). - - - - - Initializes a new instance of the class. - - The EntityName that NHibernate was trying to update in the database. - The identifier of the object that is stale. - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Sets the serialization info for after - getting the info from the base Exception. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Gets the EntityName that NHibernate was trying to update in the database. - - - - - Gets the identifier of the object that is stale. - - - - - Gets a message that describes the current . - - The error message that explains the reason for this exception. - - - - Indicated that a transaction could not be begun, committed, or rolled back - - - - - Initializes a new instance of the class. - - The message that describes the error. - - - - Initializes a new instance of the class. - - The message that describes the error. - - The exception that is the cause of the current exception. If the innerException parameter - is not a null reference, the current exception is raised in a catch block that handles - the inner exception. - - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Throw when the user passes a transient instance to a ISession method that expects - a persistent instance - - - - - Initializes a new instance of the class. - - The message that describes the error. - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Used when a user provided type does not match the expected one - - - - - Thrown when ISession.Load() selects a row with the given primary key (identifier value) - but the row's discriminator value specifies a different subclass from the one requested - - - - - Initializes a new instance of the class. - - The message that describes the error. - The identifier of the object that was being loaded. - The name of entity that NHibernate was told to load. - - - - Initializes a new instance of the class - with serialized data. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Sets the serialization info for after - getting the info from the base Exception. - - - The that holds the serialized object - data about the exception being thrown. - - - The that contains contextual information about the source or destination. - - - - - Gets the identifier of the object that was being loaded. - - - - - Gets the name of entity that NHibernate was told to load. - - - - - Gets a message that describes the current . - - The error message that explains the reason for this exception. - - - diff --git a/Users/bin/Debug/Users.dll b/Users/bin/Debug/Users.dll deleted file mode 100644 index 5140a3904..000000000 Binary files a/Users/bin/Debug/Users.dll and /dev/null differ diff --git a/Users/bin/Debug/Users.pdb b/Users/bin/Debug/Users.pdb deleted file mode 100644 index 560f2b5fa..000000000 Binary files a/Users/bin/Debug/Users.pdb and /dev/null differ diff --git a/Users/bin/Debug/cs/Users.resources.dll b/Users/bin/Debug/cs/Users.resources.dll deleted file mode 100644 index 3b4926aea..000000000 Binary files a/Users/bin/Debug/cs/Users.resources.dll and /dev/null differ diff --git a/Users/bin/Debug/de/Users.resources.dll b/Users/bin/Debug/de/Users.resources.dll deleted file mode 100644 index 79beda43f..000000000 Binary files a/Users/bin/Debug/de/Users.resources.dll and /dev/null differ diff --git a/Users/bin/Debug/fr/Users.resources.dll b/Users/bin/Debug/fr/Users.resources.dll deleted file mode 100644 index 45634da91..000000000 Binary files a/Users/bin/Debug/fr/Users.resources.dll and /dev/null differ diff --git a/Users/bin/Debug/it/Users.resources.dll b/Users/bin/Debug/it/Users.resources.dll deleted file mode 100644 index a2705dd00..000000000 Binary files a/Users/bin/Debug/it/Users.resources.dll and /dev/null differ diff --git a/Users/bin/Debug/log4net.dll b/Users/bin/Debug/log4net.dll deleted file mode 100644 index ad3e89561..000000000 Binary files a/Users/bin/Debug/log4net.dll and /dev/null differ diff --git a/Users/bin/Debug/log4net.xml b/Users/bin/Debug/log4net.xml deleted file mode 100644 index e71d34d4e..000000000 --- a/Users/bin/Debug/log4net.xml +++ /dev/null @@ -1,31809 +0,0 @@ - - - - log4net - - - - - Appender that logs to a database. - - - - appends logging events to a table within a - database. The appender can be configured to specify the connection - string by setting the property. - The connection type (provider) can be specified by setting the - property. For more information on database connection strings for - your specific database see http://www.connectionstrings.com/. - - - Records are written into the database either using a prepared - statement or a stored procedure. The property - is set to (System.Data.CommandType.Text) to specify a prepared statement - or to (System.Data.CommandType.StoredProcedure) to specify a stored - procedure. - - - The prepared statement text or the name of the stored procedure - must be set in the property. - - - The prepared statement or stored procedure can take a number - of parameters. Parameters are added using the - method. This adds a single to the - ordered list of parameters. The - type may be subclassed if required to provide database specific - functionality. The specifies - the parameter name, database type, size, and how the value should - be generated using a . - - - - An example of a SQL Server table that could be logged to: - - CREATE TABLE [dbo].[Log] ( - [ID] [int] IDENTITY (1, 1) NOT NULL , - [Date] [datetime] NOT NULL , - [Thread] [varchar] (255) NOT NULL , - [Level] [varchar] (20) NOT NULL , - [Logger] [varchar] (255) NOT NULL , - [Message] [varchar] (4000) NOT NULL - ) ON [PRIMARY] - - - - An example configuration to log to the above table: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Julian Biddle - Nicko Cadell - Gert Driesen - Lance Nehring - - - - Abstract base class implementation of that - buffers events in a fixed size buffer. - - - - This base class should be used by appenders that need to buffer a - number of events before logging them. For example the - buffers events and then submits the entire contents of the buffer to - the underlying database in one go. - - - Subclasses should override the - method to deliver the buffered events. - - The BufferingAppenderSkeleton maintains a fixed size cyclic - buffer of events. The size of the buffer is set using - the property. - - A is used to inspect - each event as it arrives in the appender. If the - triggers, then the current buffer is sent immediately - (see ). Otherwise the event - is stored in the buffer. For example, an evaluator can be used to - deliver the events immediately when an ERROR event arrives. - - - The buffering appender can be configured in a mode. - By default the appender is NOT lossy. When the buffer is full all - the buffered events are sent with . - If the property is set to true then the - buffer will not be sent when it is full, and new events arriving - in the appender will overwrite the oldest event in the buffer. - In lossy mode the buffer will only be sent when the - triggers. This can be useful behavior when you need to know about - ERROR events but not about events with a lower level, configure an - evaluator that will trigger when an ERROR event arrives, the whole - buffer will be sent which gives a history of events leading up to - the ERROR event. - - - Nicko Cadell - Gert Driesen - - - - Abstract base class implementation of . - - - - This class provides the code for common functionality, such - as support for threshold filtering and support for general filters. - - - Appenders can also implement the interface. Therefore - they would require that the method - be called after the appenders properties have been configured. - - - Nicko Cadell - Gert Driesen - - - - Implement this interface for your own strategies for printing log statements. - - - - Implementors should consider extending the - class which provides a default implementation of this interface. - - - Appenders can also implement the interface. Therefore - they would require that the method - be called after the appenders properties have been configured. - - - Nicko Cadell - Gert Driesen - - - - Closes the appender and releases resources. - - - - Releases any resources allocated within the appender such as file handles, - network connections, etc. - - - It is a programming error to append to a closed appender. - - - - - - Log the logging event in Appender specific way. - - The event to log - - - This method is called to log a message into this appender. - - - - - - Gets or sets the name of this appender. - - The name of the appender. - - The name uniquely identifies the appender. - - - - - Interface for appenders that support bulk logging. - - - - This interface extends the interface to - support bulk logging of objects. Appenders - should only implement this interface if they can bulk log efficiently. - - - Nicko Cadell - - - - Log the array of logging events in Appender specific way. - - The events to log - - - This method is called to log an array of events into this appender. - - - - - - Interface used to delay activate a configured object. - - - - This allows an object to defer activation of its options until all - options have been set. This is required for components which have - related options that remain ambiguous until all are set. - - - If a component implements this interface then the method - must be called by the container after its all the configured properties have been set - and before the component can be used. - - - Nicko Cadell - - - - Activate the options that were previously set with calls to properties. - - - - This allows an object to defer activation of its options until all - options have been set. This is required for components which have - related options that remain ambiguous until all are set. - - - If a component implements this interface then this method must be called - after its properties have been set before the component can be used. - - - - - - Initial buffer size - - - - - Maximum buffer size before it is recycled - - - - - Default constructor - - - Empty default constructor - - - - - Finalizes this appender by calling the implementation's - method. - - - - If this appender has not been closed then the Finalize method - will call . - - - - - - Initialize the appender based on the options set - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - Closes the appender and release resources. - - - - Release any resources allocated within the appender such as file handles, - network connections, etc. - - - It is a programming error to append to a closed appender. - - - This method cannot be overridden by subclasses. This method - delegates the closing of the appender to the - method which must be overridden in the subclass. - - - - - - Performs threshold checks and invokes filters before - delegating actual logging to the subclasses specific - method. - - The event to log. - - - This method cannot be overridden by derived classes. A - derived class should override the method - which is called by this method. - - - The implementation of this method is as follows: - - - - - - Checks that the severity of the - is greater than or equal to the of this - appender. - - - - Checks that the chain accepts the - . - - - - - Calls and checks that - it returns true. - - - - - If all of the above steps succeed then the - will be passed to the abstract method. - - - - - - Performs threshold checks and invokes filters before - delegating actual logging to the subclasses specific - method. - - The array of events to log. - - - This method cannot be overridden by derived classes. A - derived class should override the method - which is called by this method. - - - The implementation of this method is as follows: - - - - - - Checks that the severity of the - is greater than or equal to the of this - appender. - - - - Checks that the chain accepts the - . - - - - - Calls and checks that - it returns true. - - - - - If all of the above steps succeed then the - will be passed to the method. - - - - - - Test if the logging event should we output by this appender - - the event to test - true if the event should be output, false if the event should be ignored - - - This method checks the logging event against the threshold level set - on this appender and also against the filters specified on this - appender. - - - The implementation of this method is as follows: - - - - - - Checks that the severity of the - is greater than or equal to the of this - appender. - - - - Checks that the chain accepts the - . - - - - - - - - - Adds a filter to the end of the filter chain. - - the filter to add to this appender - - - The Filters are organized in a linked list. - - - Setting this property causes the new filter to be pushed onto the - back of the filter chain. - - - - - - Clears the filter list for this appender. - - - - Clears the filter list for this appender. - - - - - - Checks if the message level is below this appender's threshold. - - to test against. - - - If there is no threshold set, then the return value is always true. - - - - true if the meets the - requirements of this appender. - - - - - Is called when the appender is closed. Derived classes should override - this method if resources need to be released. - - - - Releases any resources allocated within the appender such as file handles, - network connections, etc. - - - It is a programming error to append to a closed appender. - - - - - - Subclasses of should implement this method - to perform actual logging. - - The event to append. - - - A subclass must implement this method to perform - logging of the . - - This method will be called by - if all the conditions listed for that method are met. - - - To restrict the logging of events in the appender - override the method. - - - - - - Append a bulk array of logging events. - - the array of logging events - - - This base class implementation calls the - method for each element in the bulk array. - - - A sub class that can better process a bulk array of events should - override this method in addition to . - - - - - - Called before as a precondition. - - - - This method is called by - before the call to the abstract method. - - - This method can be overridden in a subclass to extend the checks - made before the event is passed to the method. - - - A subclass should ensure that they delegate this call to - this base class if it is overridden. - - - true if the call to should proceed. - - - - Renders the to a string. - - The event to render. - The event rendered as a string. - - - Helper method to render a to - a string. This appender must have a - set to render the to - a string. - - If there is exception data in the logging event and - the layout does not process the exception, this method - will append the exception text to the rendered string. - - - Where possible use the alternative version of this method - . - That method streams the rendering onto an existing Writer - which can give better performance if the caller already has - a open and ready for writing. - - - - - - Renders the to a string. - - The event to render. - The TextWriter to write the formatted event to - - - Helper method to render a to - a string. This appender must have a - set to render the to - a string. - - If there is exception data in the logging event and - the layout does not process the exception, this method - will append the exception text to the rendered string. - - - Use this method in preference to - where possible. If, however, the caller needs to render the event - to a string then does - provide an efficient mechanism for doing so. - - - - - - The layout of this appender. - - - See for more information. - - - - - The name of this appender. - - - See for more information. - - - - - The level threshold of this appender. - - - - There is no level threshold filtering by default. - - - See for more information. - - - - - - It is assumed and enforced that errorHandler is never null. - - - - It is assumed and enforced that errorHandler is never null. - - - See for more information. - - - - - - The first filter in the filter chain. - - - - Set to null initially. - - - See for more information. - - - - - - The last filter in the filter chain. - - - See for more information. - - - - - Flag indicating if this appender is closed. - - - See for more information. - - - - - The guard prevents an appender from repeatedly calling its own DoAppend method - - - - - StringWriter used to render events - - - - - The fully qualified type of the AppenderSkeleton class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Gets or sets the threshold of this appender. - - - The threshold of the appender. - - - - All log events with lower level than the threshold level are ignored - by the appender. - - - In configuration files this option is specified by setting the - value of the option to a level - string, such as "DEBUG", "INFO" and so on. - - - - - - Gets or sets the for this appender. - - The of the appender - - - The provides a default - implementation for the property. - - - - - - The filter chain. - - The head of the filter chain filter chain. - - - Returns the head Filter. The Filters are organized in a linked list - and so all Filters on this Appender are available through the result. - - - - - - Gets or sets the for this appender. - - The layout of the appender. - - - See for more information. - - - - - - - Gets or sets the name of this appender. - - The name of the appender. - - - The name uniquely identifies the appender. - - - - - - Tests if this appender requires a to be set. - - - - In the rather exceptional case, where the appender - implementation admits a layout but can also work without it, - then the appender should return true. - - - This default implementation always returns false. - - - - true if the appender requires a layout object, otherwise false. - - - - - The default buffer size. - - - The default size of the cyclic buffer used to store events. - This is set to 512 by default. - - - - - Initializes a new instance of the class. - - - - Protected default constructor to allow subclassing. - - - - - - Initializes a new instance of the class. - - the events passed through this appender must be - fixed by the time that they arrive in the derived class' SendBuffer method. - - - Protected constructor to allow subclassing. - - - The should be set if the subclass - expects the events delivered to be fixed even if the - is set to zero, i.e. when no buffering occurs. - - - - - - Flush the currently buffered events - - - - Flushes any events that have been buffered. - - - If the appender is buffering in mode then the contents - of the buffer will NOT be flushed to the appender. - - - - - - Flush the currently buffered events - - set to true to flush the buffer of lossy events - - - Flushes events that have been buffered. If is - false then events will only be flushed if this buffer is non-lossy mode. - - - If the appender is buffering in mode then the contents - of the buffer will only be flushed if is true. - In this case the contents of the buffer will be tested against the - and if triggering will be output. All other buffered - events will be discarded. - - - If is true then the buffer will always - be emptied by calling this method. - - - - - - Initialize the appender based on the options set - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - Close this appender instance. - - - - Close this appender instance. If this appender is marked - as not then the remaining events in - the buffer must be sent when the appender is closed. - - - - - - This method is called by the method. - - the event to log - - - Stores the in the cyclic buffer. - - - The buffer will be sent (i.e. passed to the - method) if one of the following conditions is met: - - - - The cyclic buffer is full and this appender is - marked as not lossy (see ) - - - An is set and - it is triggered for the - specified. - - - - Before the event is stored in the buffer it is fixed - (see ) to ensure that - any data referenced by the event will be valid when the buffer - is processed. - - - - - - Sends the contents of the buffer. - - The first logging event. - The buffer containing the events that need to be send. - - - The subclass must override . - - - - - - Sends the events. - - The events that need to be send. - - - The subclass must override this method to process the buffered events. - - - - - - The size of the cyclic buffer used to hold the logging events. - - - Set to by default. - - - - - The cyclic buffer used to store the logging events. - - - - - The triggering event evaluator that causes the buffer to be sent immediately. - - - The object that is used to determine if an event causes the entire - buffer to be sent immediately. This field can be null, which - indicates that event triggering is not to be done. The evaluator - can be set using the property. If this appender - has the ( property) set to - true then an must be set. - - - - - Indicates if the appender should overwrite events in the cyclic buffer - when it becomes full, or if the buffer should be flushed when the - buffer is full. - - - If this field is set to true then an must - be set. - - - - - The triggering event evaluator filters discarded events. - - - The object that is used to determine if an event that is discarded should - really be discarded or if it should be sent to the appenders. - This field can be null, which indicates that all discarded events will - be discarded. - - - - - Value indicating which fields in the event should be fixed - - - By default all fields are fixed - - - - - The events delivered to the subclass must be fixed. - - - - - Gets or sets a value that indicates whether the appender is lossy. - - - true if the appender is lossy, otherwise false. The default is false. - - - - This appender uses a buffer to store logging events before - delivering them. A triggering event causes the whole buffer - to be send to the remote sink. If the buffer overruns before - a triggering event then logging events could be lost. Set - to false to prevent logging events - from being lost. - - If is set to true then an - must be specified. - - - - - Gets or sets the size of the cyclic buffer used to hold the - logging events. - - - The size of the cyclic buffer used to hold the logging events. - - - - The option takes a positive integer - representing the maximum number of logging events to collect in - a cyclic buffer. When the is reached, - oldest events are deleted as new events are added to the - buffer. By default the size of the cyclic buffer is 512 events. - - - If the is set to a value less than - or equal to 1 then no buffering will occur. The logging event - will be delivered synchronously (depending on the - and properties). Otherwise the event will - be buffered. - - - - - - Gets or sets the that causes the - buffer to be sent immediately. - - - The that causes the buffer to be - sent immediately. - - - - The evaluator will be called for each event that is appended to this - appender. If the evaluator triggers then the current buffer will - immediately be sent (see ). - - If is set to true then an - must be specified. - - - - - Gets or sets the value of the to use. - - - The value of the to use. - - - - The evaluator will be called for each event that is discarded from this - appender. If the evaluator triggers then the current buffer will immediately - be sent (see ). - - - - - - Gets or sets a value indicating if only part of the logging event data - should be fixed. - - - true if the appender should only fix part of the logging event - data, otherwise false. The default is false. - - - - Setting this property to true will cause only part of the - event data to be fixed and serialized. This will improve performance. - - - See for more information. - - - - - - Gets or sets a the fields that will be fixed in the event - - - The event fields that will be fixed before the event is buffered - - - - The logging event needs to have certain thread specific values - captured before it can be buffered. See - for details. - - - - - - - Initializes a new instance of the class. - - - Public default constructor to initialize a new instance of this class. - - - - - Initialize the appender based on the options set - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - Override the parent method to close the database - - - - Closes the database command and database connection. - - - - - - Inserts the events into the database. - - The events to insert into the database. - - - Insert all the events specified in the - array into the database. - - - - - - Adds a parameter to the command. - - The parameter to add to the command. - - - Adds a parameter to the ordered list of command parameters. - - - - - - Writes the events to the database using the transaction specified. - - The transaction that the events will be executed under. - The array of events to insert into the database. - - - The transaction argument can be null if the appender has been - configured not to use transactions. See - property for more information. - - - - - - Formats the log message into database statement text. - - The event being logged. - - This method can be overridden by subclasses to provide - more control over the format of the database statement. - - - Text that can be passed to a . - - - - - Creates an instance used to connect to the database. - - - This method is called whenever a new IDbConnection is needed (i.e. when a reconnect is necessary). - - The of the object. - The connectionString output from the ResolveConnectionString method. - An instance with a valid connection string. - - - - Resolves the connection string from the ConnectionString, ConnectionStringName, or AppSettingsKey - property. - - - ConnectiongStringName is only supported on .NET 2.0 and higher. - - Additional information describing the connection string. - A connection string used to connect to the database. - - - - Retrieves the class type of the ADO.NET provider. - - - - Gets the Type of the ADO.NET provider to use to connect to the - database. This method resolves the type specified in the - property. - - - Subclasses can override this method to return a different type - if necessary. - - - The of the ADO.NET provider - - - - Prepares the database command and initialize the parameters. - - - - - Connects to the database. - - - - - Cleanup the existing command. - - - If true, a message will be written using LogLog.Warn if an exception is encountered when calling Dispose. - - - - - Cleanup the existing connection. - - - Calls the IDbConnection's method. - - - - - Flag to indicate if we are using a command object - - - - Set to true when the appender is to use a prepared - statement or stored procedure to insert into the database. - - - - - - The list of objects. - - - - The list of objects. - - - - - - The security context to use for privileged calls - - - - - The that will be used - to insert logging events into a database. - - - - - The database command. - - - - - Database connection string. - - - - - The appSettings key from App.Config that contains the connection string. - - - - - The connectionStrings key from App.Config that contains the connection string. - - - - - String type name of the type name. - - - - - The text of the command. - - - - - The command type. - - - - - Indicates whether to use transactions when writing to the database. - - - - - Indicates whether to use transactions when writing to the database. - - - - - The fully qualified type of the AdoNetAppender class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Gets or sets the database connection string that is used to connect to - the database. - - - The database connection string used to connect to the database. - - - - The connections string is specific to the connection type. - See for more information. - - - Connection string for MS Access via ODBC: - "DSN=MS Access Database;UID=admin;PWD=;SystemDB=C:\data\System.mdw;SafeTransactions = 0;FIL=MS Access;DriverID = 25;DBQ=C:\data\train33.mdb" - - Another connection string for MS Access via ODBC: - "Driver={Microsoft Access Driver (*.mdb)};DBQ=C:\Work\cvs_root\log4net-1.2\access.mdb;UID=;PWD=;" - - Connection string for MS Access via OLE DB: - "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Work\cvs_root\log4net-1.2\access.mdb;User Id=;Password=;" - - - - - The appSettings key from App.Config that contains the connection string. - - - - - The connectionStrings key from App.Config that contains the connection string. - - - This property requires at least .NET 2.0. - - - - - Gets or sets the type name of the connection - that should be created. - - - The type name of the connection. - - - - The type name of the ADO.NET provider to use. - - - The default is to use the OLE DB provider. - - - Use the OLE DB Provider. This is the default value. - System.Data.OleDb.OleDbConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - Use the MS SQL Server Provider. - System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - Use the ODBC Provider. - Microsoft.Data.Odbc.OdbcConnection,Microsoft.Data.Odbc,version=1.0.3300.0,publicKeyToken=b77a5c561934e089,culture=neutral - This is an optional package that you can download from - http://msdn.microsoft.com/downloads - search for ODBC .NET Data Provider. - - Use the Oracle Provider. - System.Data.OracleClient.OracleConnection, System.Data.OracleClient, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - This is an optional package that you can download from - http://msdn.microsoft.com/downloads - search for .NET Managed Provider for Oracle. - - - - - Gets or sets the command text that is used to insert logging events - into the database. - - - The command text used to insert logging events into the database. - - - - Either the text of the prepared statement or the - name of the stored procedure to execute to write into - the database. - - - The property determines if - this text is a prepared statement or a stored procedure. - - - - - - Gets or sets the command type to execute. - - - The command type to execute. - - - - This value may be either (System.Data.CommandType.Text) to specify - that the is a prepared statement to execute, - or (System.Data.CommandType.StoredProcedure) to specify that the - property is the name of a stored procedure - to execute. - - - The default value is (System.Data.CommandType.Text). - - - - - - Should transactions be used to insert logging events in the database. - - - true if transactions should be used to insert logging events in - the database, otherwise false. The default value is true. - - - - Gets or sets a value that indicates whether transactions should be used - to insert logging events in the database. - - - When set a single transaction will be used to insert the buffered events - into the database. Otherwise each event will be inserted without using - an explicit transaction. - - - - - - Gets or sets the used to call the NetSend method. - - - The used to call the NetSend method. - - - - Unless a specified here for this appender - the is queried for the - security context to use. The default behavior is to use the security context - of the current thread. - - - - - - Should this appender try to reconnect to the database on error. - - - true if the appender should try to reconnect to the database after an - error has occurred, otherwise false. The default value is false, - i.e. not to try to reconnect. - - - - The default behaviour is for the appender not to try to reconnect to the - database if an error occurs. Subsequent logging events are discarded. - - - To force the appender to attempt to reconnect to the database set this - property to true. - - - When the appender attempts to connect to the database there may be a - delay of up to the connection timeout specified in the connection string. - This delay will block the calling application's thread. - Until the connection can be reestablished this potential delay may occur multiple times. - - - - - - Gets or sets the underlying . - - - The underlying . - - - creates a to insert - logging events into a database. Classes deriving from - can use this property to get or set this . Use the - underlying returned from if - you require access beyond that which provides. - - - - - Parameter type used by the . - - - - This class provides the basic database parameter properties - as defined by the interface. - - This type can be subclassed to provide database specific - functionality. The two methods that are called externally are - and . - - - - - - Initializes a new instance of the class. - - - Default constructor for the AdoNetAppenderParameter class. - - - - - Prepare the specified database command object. - - The command to prepare. - - - Prepares the database command object by adding - this parameter to its collection of parameters. - - - - - - Renders the logging event and set the parameter value in the command. - - The command containing the parameter. - The event to be rendered. - - - Renders the logging event using this parameters layout - object. Sets the value of the parameter on the command object. - - - - - - The name of this parameter. - - - - - The database type for this parameter. - - - - - Flag to infer type rather than use the DbType - - - - - The precision for this parameter. - - - - - The scale for this parameter. - - - - - The size for this parameter. - - - - - The to use to render the - logging event into an object for this parameter. - - - - - Gets or sets the name of this parameter. - - - The name of this parameter. - - - - The name of this parameter. The parameter name - must match up to a named parameter to the SQL stored procedure - or prepared statement. - - - - - - Gets or sets the database type for this parameter. - - - The database type for this parameter. - - - - The database type for this parameter. This property should - be set to the database type from the - enumeration. See . - - - This property is optional. If not specified the ADO.NET provider - will attempt to infer the type from the value. - - - - - - - Gets or sets the precision for this parameter. - - - The precision for this parameter. - - - - The maximum number of digits used to represent the Value. - - - This property is optional. If not specified the ADO.NET provider - will attempt to infer the precision from the value. - - - - - - - Gets or sets the scale for this parameter. - - - The scale for this parameter. - - - - The number of decimal places to which Value is resolved. - - - This property is optional. If not specified the ADO.NET provider - will attempt to infer the scale from the value. - - - - - - - Gets or sets the size for this parameter. - - - The size for this parameter. - - - - The maximum size, in bytes, of the data within the column. - - - This property is optional. If not specified the ADO.NET provider - will attempt to infer the size from the value. - - - For BLOB data types like VARCHAR(max) it may be impossible to infer the value automatically, use -1 as the size in this case. - - - - - - - Gets or sets the to use to - render the logging event into an object for this - parameter. - - - The used to render the - logging event into an object for this parameter. - - - - The that renders the value for this - parameter. - - - The can be used to adapt - any into a - for use in the property. - - - - - - Appends logging events to the terminal using ANSI color escape sequences. - - - - AnsiColorTerminalAppender appends log events to the standard output stream - or the error output stream using a layout specified by the - user. It also allows the color of a specific level of message to be set. - - - This appender expects the terminal to understand the VT100 control set - in order to interpret the color codes. If the terminal or console does not - understand the control codes the behavior is not defined. - - - By default, all output is written to the console's standard output stream. - The property can be set to direct the output to the - error stream. - - - NOTE: This appender writes each message to the System.Console.Out or - System.Console.Error that is set at the time the event is appended. - Therefore it is possible to programmatically redirect the output of this appender - (for example NUnit does this to capture program output). While this is the desired - behavior of this appender it may have security implications in your application. - - - When configuring the ANSI colored terminal appender, a mapping should be - specified to map a logging level to a color. For example: - - - - - - - - - - - - - - - The Level is the standard log4net logging level and ForeColor and BackColor can be any - of the following values: - - Blue - Green - Red - White - Yellow - Purple - Cyan - - These color values cannot be combined together to make new colors. - - - The attributes can be any combination of the following: - - Brightforeground is brighter - Dimforeground is dimmer - Underscoremessage is underlined - Blinkforeground is blinking (does not work on all terminals) - Reverseforeground and background are reversed - Hiddenoutput is hidden - Strikethroughmessage has a line through it - - While any of these attributes may be combined together not all combinations - work well together, for example setting both Bright and Dim attributes makes - no sense. - - - Patrick Wagstrom - Nicko Cadell - - - - The to use when writing to the Console - standard output stream. - - - - The to use when writing to the Console - standard output stream. - - - - - - The to use when writing to the Console - standard error output stream. - - - - The to use when writing to the Console - standard error output stream. - - - - - - Ansi code to reset terminal - - - - - Initializes a new instance of the class. - - - The instance of the class is set up to write - to the standard output stream. - - - - - Add a mapping of level to color - - The mapping to add - - - Add a mapping to this appender. - Each mapping defines the foreground and background colours - for a level. - - - - - - This method is called by the method. - - The event to log. - - - Writes the event to the console. - - - The format of the output will depend on the appender's layout. - - - - - - Initialize the options for this appender - - - - Initialize the level to color mappings set on this appender. - - - - - - Flag to write output to the error stream rather than the standard output stream - - - - - Mapping from level object to color value - - - - - Target is the value of the console output stream. - - - Target is the value of the console output stream. - This is either "Console.Out" or "Console.Error". - - - - Target is the value of the console output stream. - This is either "Console.Out" or "Console.Error". - - - - - - This appender requires a to be set. - - true - - - This appender requires a to be set. - - - - - - The enum of possible display attributes - - - - The following flags can be combined together to - form the ANSI color attributes. - - - - - - - text is bright - - - - - text is dim - - - - - text is underlined - - - - - text is blinking - - - Not all terminals support this attribute - - - - - text and background colors are reversed - - - - - text is hidden - - - - - text is displayed with a strikethrough - - - - - text color is light - - - - - The enum of possible foreground or background color values for - use with the color mapping method - - - - The output can be in one for the following ANSI colors. - - - - - - - color is black - - - - - color is red - - - - - color is green - - - - - color is yellow - - - - - color is blue - - - - - color is magenta - - - - - color is cyan - - - - - color is white - - - - - A class to act as a mapping between the level that a logging call is made at and - the color it should be displayed as. - - - - Defines the mapping between a level and the color it should be displayed in. - - - - - - An entry in the - - - - This is an abstract base class for types that are stored in the - object. - - - Nicko Cadell - - - - Default protected constructor - - - - Default protected constructor - - - - - - Initialize any options defined on this entry - - - - Should be overridden by any classes that need to initialise based on their options - - - - - - The level that is the key for this mapping - - - The that is the key for this mapping - - - - Get or set the that is the key for this - mapping subclass. - - - - - - Initialize the options for the object - - - - Combine the and together - and append the attributes. - - - - - - The mapped foreground color for the specified level - - - - Required property. - The mapped foreground color for the specified level - - - - - - The mapped background color for the specified level - - - - Required property. - The mapped background color for the specified level - - - - - - The color attributes for the specified level - - - - Required property. - The color attributes for the specified level - - - - - - The combined , and - suitable for setting the ansi terminal color. - - - - - A strongly-typed collection of objects. - - Nicko Cadell - - - - Creates a read-only wrapper for a AppenderCollection instance. - - list to create a readonly wrapper arround - - An AppenderCollection wrapper that is read-only. - - - - - An empty readonly static AppenderCollection - - - - - Initializes a new instance of the AppenderCollection class - that is empty and has the default initial capacity. - - - - - Initializes a new instance of the AppenderCollection class - that has the specified initial capacity. - - - The number of elements that the new AppenderCollection is initially capable of storing. - - - - - Initializes a new instance of the AppenderCollection class - that contains elements copied from the specified AppenderCollection. - - The AppenderCollection whose elements are copied to the new collection. - - - - Initializes a new instance of the AppenderCollection class - that contains elements copied from the specified array. - - The array whose elements are copied to the new list. - - - - Initializes a new instance of the AppenderCollection class - that contains elements copied from the specified collection. - - The collection whose elements are copied to the new list. - - - - Allow subclasses to avoid our default constructors - - - - - - - Copies the entire AppenderCollection to a one-dimensional - array. - - The one-dimensional array to copy to. - - - - Copies the entire AppenderCollection to a one-dimensional - array, starting at the specified index of the target array. - - The one-dimensional array to copy to. - The zero-based index in at which copying begins. - - - - Adds a to the end of the AppenderCollection. - - The to be added to the end of the AppenderCollection. - The index at which the value has been added. - - - - Removes all elements from the AppenderCollection. - - - - - Creates a shallow copy of the . - - A new with a shallow copy of the collection data. - - - - Determines whether a given is in the AppenderCollection. - - The to check for. - true if is found in the AppenderCollection; otherwise, false. - - - - Returns the zero-based index of the first occurrence of a - in the AppenderCollection. - - The to locate in the AppenderCollection. - - The zero-based index of the first occurrence of - in the entire AppenderCollection, if found; otherwise, -1. - - - - - Inserts an element into the AppenderCollection at the specified index. - - The zero-based index at which should be inserted. - The to insert. - - is less than zero - -or- - is equal to or greater than . - - - - - Removes the first occurrence of a specific from the AppenderCollection. - - The to remove from the AppenderCollection. - - The specified was not found in the AppenderCollection. - - - - - Removes the element at the specified index of the AppenderCollection. - - The zero-based index of the element to remove. - - is less than zero - -or- - is equal to or greater than . - - - - - Returns an enumerator that can iterate through the AppenderCollection. - - An for the entire AppenderCollection. - - - - Adds the elements of another AppenderCollection to the current AppenderCollection. - - The AppenderCollection whose elements should be added to the end of the current AppenderCollection. - The new of the AppenderCollection. - - - - Adds the elements of a array to the current AppenderCollection. - - The array whose elements should be added to the end of the AppenderCollection. - The new of the AppenderCollection. - - - - Adds the elements of a collection to the current AppenderCollection. - - The collection whose elements should be added to the end of the AppenderCollection. - The new of the AppenderCollection. - - - - Sets the capacity to the actual number of elements. - - - - - Return the collection elements as an array - - the array - - - - is less than zero - -or- - is equal to or greater than . - - - - - is less than zero - -or- - is equal to or greater than . - - - - - Gets the number of elements actually contained in the AppenderCollection. - - - - - Gets a value indicating whether access to the collection is synchronized (thread-safe). - - true if access to the ICollection is synchronized (thread-safe); otherwise, false. - - - - Gets an object that can be used to synchronize access to the collection. - - - - - Gets or sets the at the specified index. - - The zero-based index of the element to get or set. - - is less than zero - -or- - is equal to or greater than . - - - - - Gets a value indicating whether the collection has a fixed size. - - true if the collection has a fixed size; otherwise, false. The default is false - - - - Gets a value indicating whether the IList is read-only. - - true if the collection is read-only; otherwise, false. The default is false - - - - Gets or sets the number of elements the AppenderCollection can contain. - - - - - Supports type-safe iteration over a . - - - - - - Advances the enumerator to the next element in the collection. - - - true if the enumerator was successfully advanced to the next element; - false if the enumerator has passed the end of the collection. - - - The collection was modified after the enumerator was created. - - - - - Sets the enumerator to its initial position, before the first element in the collection. - - - - - Gets the current element in the collection. - - - - - Type visible only to our subclasses - Used to access protected constructor - - - - - - A value - - - - - Supports simple iteration over a . - - - - - - Initializes a new instance of the Enumerator class. - - - - - - Advances the enumerator to the next element in the collection. - - - true if the enumerator was successfully advanced to the next element; - false if the enumerator has passed the end of the collection. - - - The collection was modified after the enumerator was created. - - - - - Sets the enumerator to its initial position, before the first element in the collection. - - - - - Gets the current element in the collection. - - - - - - - - - Appends log events to the ASP.NET system. - - - - - Diagnostic information and tracing messages that you specify are appended to the output - of the page that is sent to the requesting browser. Optionally, you can view this information - from a separate trace viewer (Trace.axd) that displays trace information for every page in a - given application. - - - Trace statements are processed and displayed only when tracing is enabled. You can control - whether tracing is displayed to a page, to the trace viewer, or both. - - - The logging event is passed to the or - method depending on the level of the logging event. - The event's logger name is the default value for the category parameter of the Write/Warn method. - - - Nicko Cadell - Gert Driesen - Ron Grabowski - - - - Initializes a new instance of the class. - - - - Default constructor. - - - - - - Write the logging event to the ASP.NET trace - - the event to log - - - Write the logging event to the ASP.NET trace - HttpContext.Current.Trace - (). - - - - - - Defaults to %logger - - - - - This appender requires a to be set. - - true - - - This appender requires a to be set. - - - - - - The category parameter sent to the Trace method. - - - - Defaults to %logger which will use the logger name of the current - as the category parameter. - - - - - - - - Buffers events and then forwards them to attached appenders. - - - - The events are buffered in this appender until conditions are - met to allow the appender to deliver the events to the attached - appenders. See for the - conditions that cause the buffer to be sent. - - The forwarding appender can be used to specify different - thresholds and filters for the same appender at different locations - within the hierarchy. - - - Nicko Cadell - Gert Driesen - - - - Interface for attaching appenders to objects. - - - - Interface for attaching, removing and retrieving appenders. - - - Nicko Cadell - Gert Driesen - - - - Attaches an appender. - - The appender to add. - - - Add the specified appender. The implementation may - choose to allow or deny duplicate appenders. - - - - - - Gets an attached appender with the specified name. - - The name of the appender to get. - - The appender with the name specified, or null if no appender with the - specified name is found. - - - - Returns an attached appender with the specified. - If no appender with the specified name is found null will be - returned. - - - - - - Removes all attached appenders. - - - - Removes and closes all attached appenders - - - - - - Removes the specified appender from the list of attached appenders. - - The appender to remove. - The appender removed from the list - - - The appender removed is not closed. - If you are discarding the appender you must call - on the appender removed. - - - - - - Removes the appender with the specified name from the list of appenders. - - The name of the appender to remove. - The appender removed from the list - - - The appender removed is not closed. - If you are discarding the appender you must call - on the appender removed. - - - - - - Gets all attached appenders. - - - A collection of attached appenders. - - - - Gets a collection of attached appenders. - If there are no attached appenders the - implementation should return an empty - collection rather than null. - - - - - - Initializes a new instance of the class. - - - - Default constructor. - - - - - - Closes the appender and releases resources. - - - - Releases any resources allocated within the appender such as file handles, - network connections, etc. - - - It is a programming error to append to a closed appender. - - - - - - Send the events. - - The events that need to be send. - - - Forwards the events to the attached appenders. - - - - - - Adds an to the list of appenders of this - instance. - - The to add to this appender. - - - If the specified is already in the list of - appenders, then it won't be added again. - - - - - - Looks for the appender with the specified name. - - The name of the appender to lookup. - - The appender with the specified name, or null. - - - - Get the named appender attached to this buffering appender. - - - - - - Removes all previously added appenders from this appender. - - - - This is useful when re-reading configuration information. - - - - - - Removes the specified appender from the list of appenders. - - The appender to remove. - The appender removed from the list - - The appender removed is not closed. - If you are discarding the appender you must call - on the appender removed. - - - - - Removes the appender with the specified name from the list of appenders. - - The name of the appender to remove. - The appender removed from the list - - The appender removed is not closed. - If you are discarding the appender you must call - on the appender removed. - - - - - Implementation of the interface - - - - - Gets the appenders contained in this appender as an - . - - - If no appenders can be found, then an - is returned. - - - A collection of the appenders in this appender. - - - - - Appends logging events to the console. - - - - ColoredConsoleAppender appends log events to the standard output stream - or the error output stream using a layout specified by the - user. It also allows the color of a specific type of message to be set. - - - By default, all output is written to the console's standard output stream. - The property can be set to direct the output to the - error stream. - - - NOTE: This appender writes directly to the application's attached console - not to the System.Console.Out or System.Console.Error TextWriter. - The System.Console.Out and System.Console.Error streams can be - programmatically redirected (for example NUnit does this to capture program output). - This appender will ignore these redirections because it needs to use Win32 - API calls to colorize the output. To respect these redirections the - must be used. - - - When configuring the colored console appender, mapping should be - specified to map a logging level to a color. For example: - - - - - - - - - - - - - - The Level is the standard log4net logging level and ForeColor and BackColor can be any - combination of the following values: - - Blue - Green - Red - White - Yellow - Purple - Cyan - HighIntensity - - - - Rick Hobbs - Nicko Cadell - - - - The to use when writing to the Console - standard output stream. - - - - The to use when writing to the Console - standard output stream. - - - - - - The to use when writing to the Console - standard error output stream. - - - - The to use when writing to the Console - standard error output stream. - - - - - - Initializes a new instance of the class. - - - The instance of the class is set up to write - to the standard output stream. - - - - - Initializes a new instance of the class - with the specified layout. - - the layout to use for this appender - - The instance of the class is set up to write - to the standard output stream. - - - - - Initializes a new instance of the class - with the specified layout. - - the layout to use for this appender - flag set to true to write to the console error stream - - When is set to true, output is written to - the standard error output stream. Otherwise, output is written to the standard - output stream. - - - - - Add a mapping of level to color - done by the config file - - The mapping to add - - - Add a mapping to this appender. - Each mapping defines the foreground and background colors - for a level. - - - - - - This method is called by the method. - - The event to log. - - - Writes the event to the console. - - - The format of the output will depend on the appender's layout. - - - - - - Initialize the options for this appender - - - - Initialize the level to color mappings set on this appender. - - - - - - Flag to write output to the error stream rather than the standard output stream - - - - - Mapping from level object to color value - - - - - The console output stream writer to write to - - - - This writer is not thread safe. - - - - - - Target is the value of the console output stream. - This is either "Console.Out" or "Console.Error". - - - Target is the value of the console output stream. - This is either "Console.Out" or "Console.Error". - - - - Target is the value of the console output stream. - This is either "Console.Out" or "Console.Error". - - - - - - This appender requires a to be set. - - true - - - This appender requires a to be set. - - - - - - The enum of possible color values for use with the color mapping method - - - - The following flags can be combined together to - form the colors. - - - - - - - color is blue - - - - - color is green - - - - - color is red - - - - - color is white - - - - - color is yellow - - - - - color is purple - - - - - color is cyan - - - - - color is intensified - - - - - A class to act as a mapping between the level that a logging call is made at and - the color it should be displayed as. - - - - Defines the mapping between a level and the color it should be displayed in. - - - - - - Initialize the options for the object - - - - Combine the and together. - - - - - - The mapped foreground color for the specified level - - - - Required property. - The mapped foreground color for the specified level. - - - - - - The mapped background color for the specified level - - - - Required property. - The mapped background color for the specified level. - - - - - - The combined and suitable for - setting the console color. - - - - - Appends logging events to the console. - - - - ConsoleAppender appends log events to the standard output stream - or the error output stream using a layout specified by the - user. - - - By default, all output is written to the console's standard output stream. - The property can be set to direct the output to the - error stream. - - - NOTE: This appender writes each message to the System.Console.Out or - System.Console.Error that is set at the time the event is appended. - Therefore it is possible to programmatically redirect the output of this appender - (for example NUnit does this to capture program output). While this is the desired - behavior of this appender it may have security implications in your application. - - - Nicko Cadell - Gert Driesen - - - - The to use when writing to the Console - standard output stream. - - - - The to use when writing to the Console - standard output stream. - - - - - - The to use when writing to the Console - standard error output stream. - - - - The to use when writing to the Console - standard error output stream. - - - - - - Initializes a new instance of the class. - - - The instance of the class is set up to write - to the standard output stream. - - - - - Initializes a new instance of the class - with the specified layout. - - the layout to use for this appender - - The instance of the class is set up to write - to the standard output stream. - - - - - Initializes a new instance of the class - with the specified layout. - - the layout to use for this appender - flag set to true to write to the console error stream - - When is set to true, output is written to - the standard error output stream. Otherwise, output is written to the standard - output stream. - - - - - This method is called by the method. - - The event to log. - - - Writes the event to the console. - - - The format of the output will depend on the appender's layout. - - - - - - Target is the value of the console output stream. - This is either "Console.Out" or "Console.Error". - - - Target is the value of the console output stream. - This is either "Console.Out" or "Console.Error". - - - - Target is the value of the console output stream. - This is either "Console.Out" or "Console.Error". - - - - - - This appender requires a to be set. - - true - - - This appender requires a to be set. - - - - - - Appends log events to the system. - - - - The application configuration file can be used to control what listeners - are actually used. See the MSDN documentation for the - class for details on configuring the - debug system. - - - Events are written using the - method. The event's logger name is passed as the value for the category name to the Write method. - - - Nicko Cadell - - - - Initializes a new instance of the . - - - - Default constructor. - - - - - - Initializes a new instance of the - with a specified layout. - - The layout to use with this appender. - - - Obsolete constructor. - - - - - - Writes the logging event to the system. - - The event to log. - - - Writes the logging event to the system. - If is true then the - is called. - - - - - - Immediate flush means that the underlying writer or output stream - will be flushed at the end of each append operation. - - - - Immediate flush is slower but ensures that each append request is - actually written. If is set to - false, then there is a good chance that the last few - logs events are not actually written to persistent media if and - when the application crashes. - - - The default value is true. - - - - - Gets or sets a value that indicates whether the appender will - flush at the end of each write. - - - The default behavior is to flush at the end of each - write. If the option is set tofalse, then the underlying - stream can defer writing to physical medium to a later time. - - - Avoiding the flush operation at the end of each append results - in a performance gain of 10 to 20 percent. However, there is safety - trade-off involved in skipping flushing. Indeed, when flushing is - skipped, then it is likely that the last few log events will not - be recorded on disk when the application exits. This is a high - price to pay even for a 20% performance gain. - - - - - - This appender requires a to be set. - - true - - - This appender requires a to be set. - - - - - - Writes events to the system event log. - - - - The appender will fail if you try to write using an event source that doesn't exist unless it is running with local administrator privileges. - See also http://logging.apache.org/log4net/release/faq.html#trouble-EventLog - - - The EventID of the event log entry can be - set using the EventID property () - on the . - - - The Category of the event log entry can be - set using the Category property () - on the . - - - There is a limit of 32K characters for an event log message - - - When configuring the EventLogAppender a mapping can be - specified to map a logging level to an event log entry type. For example: - - - <mapping> - <level value="ERROR" /> - <eventLogEntryType value="Error" /> - </mapping> - <mapping> - <level value="DEBUG" /> - <eventLogEntryType value="Information" /> - </mapping> - - - The Level is the standard log4net logging level and eventLogEntryType can be any value - from the enum, i.e.: - - Erroran error event - Warninga warning event - Informationan informational event - - - - Aspi Havewala - Douglas de la Torre - Nicko Cadell - Gert Driesen - Thomas Voss - - - - Initializes a new instance of the class. - - - - Default constructor. - - - - - - Initializes a new instance of the class - with the specified . - - The to use with this appender. - - - Obsolete constructor. - - - - - - Add a mapping of level to - done by the config file - - The mapping to add - - - Add a mapping to this appender. - Each mapping defines the event log entry type for a level. - - - - - - Initialize the appender based on the options set - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - Create an event log source - - - Uses different API calls under NET_2_0 - - - - - This method is called by the - method. - - the event to log - - Writes the event to the system event log using the - . - - If the event has an EventID property (see ) - set then this integer will be used as the event log event id. - - - There is a limit of 32K characters for an event log message - - - - - - Get the equivalent for a - - the Level to convert to an EventLogEntryType - The equivalent for a - - Because there are fewer applicable - values to use in logging levels than there are in the - this is a one way mapping. There is - a loss of information during the conversion. - - - - - The log name is the section in the event logs where the messages - are stored. - - - - - Name of the application to use when logging. This appears in the - application column of the event log named by . - - - - - The name of the machine which holds the event log. This is - currently only allowed to be '.' i.e. the current machine. - - - - - Mapping from level object to EventLogEntryType - - - - - The security context to use for privileged calls - - - - - The event ID to use unless one is explicitly specified via the LoggingEvent's properties. - - - - - The event category to use unless one is explicitly specified via the LoggingEvent's properties. - - - - - The fully qualified type of the EventLogAppender class. - - - Used by the internal logger to record the Type of the - log message. - - - - - The maximum size supported by default. - - - http://msdn.microsoft.com/en-us/library/xzwc042w(v=vs.100).aspx - The 32766 documented max size is two bytes shy of 32K (I'm assuming 32766 - may leave space for a two byte null terminator of #0#0). The 32766 max - length is what the .NET 4.0 source code checks for, but this is WRONG! - Strings with a length > 31839 on Windows Vista or higher can CORRUPT - the event log! See: System.Diagnostics.EventLogInternal.InternalWriteEvent() - for the use of the 32766 max size. - - - - - The maximum size supported by a windows operating system that is vista - or newer. - - - See ReportEvent API: - http://msdn.microsoft.com/en-us/library/aa363679(VS.85).aspx - ReportEvent's lpStrings parameter: - "A pointer to a buffer containing an array of - null-terminated strings that are merged into the message before Event Viewer - displays the string to the user. This parameter must be a valid pointer - (or NULL), even if wNumStrings is zero. Each string is limited to 31,839 characters." - - Going beyond the size of 31839 will (at some point) corrupt the event log on Windows - Vista or higher! It may succeed for a while...but you will eventually run into the - error: "System.ComponentModel.Win32Exception : A device attached to the system is - not functioning", and the event log will then be corrupt (I was able to corrupt - an event log using a length of 31877 on Windows 7). - - The max size for Windows Vista or higher is documented here: - http://msdn.microsoft.com/en-us/library/xzwc042w(v=vs.100).aspx. - Going over this size may succeed a few times but the buffer will overrun and - eventually corrupt the log (based on testing). - - The maxEventMsgSize size is based on the max buffer size of the lpStrings parameter of the ReportEvent API. - The documented max size for EventLog.WriteEntry for Windows Vista and higher is 31839, but I'm leaving room for a - terminator of #0#0, as we cannot see the source of ReportEvent (though we could use an API monitor to examine the - buffer, given enough time). - - - - - The maximum size that the operating system supports for - a event log message. - - - Used to determine the maximum string length that can be written - to the operating system event log and eventually truncate a string - that exceeds the limits. - - - - - This method determines the maximum event log message size allowed for - the current environment. - - - - - - The name of the log where messages will be stored. - - - The string name of the log where messages will be stored. - - - This is the name of the log as it appears in the Event Viewer - tree. The default value is to log into the Application - log, this is where most applications write their events. However - if you need a separate log for your application (or applications) - then you should set the appropriately. - This should not be used to distinguish your event log messages - from those of other applications, the - property should be used to distinguish events. This property should be - used to group together events into a single log. - - - - - - Property used to set the Application name. This appears in the - event logs when logging. - - - The string used to distinguish events from different sources. - - - Sets the event log source property. - - - - - This property is used to return the name of the computer to use - when accessing the event logs. Currently, this is the current - computer, denoted by a dot "." - - - The string name of the machine holding the event log that - will be logged into. - - - This property cannot be changed. It is currently set to '.' - i.e. the local machine. This may be changed in future. - - - - - Gets or sets the used to write to the EventLog. - - - The used to write to the EventLog. - - - - The system security context used to write to the EventLog. - - - Unless a specified here for this appender - the is queried for the - security context to use. The default behavior is to use the security context - of the current thread. - - - - - - Gets or sets the EventId to use unless one is explicitly specified via the LoggingEvent's properties. - - - - The EventID of the event log entry will normally be - set using the EventID property () - on the . - This property provides the fallback value which defaults to 0. - - - - - - Gets or sets the Category to use unless one is explicitly specified via the LoggingEvent's properties. - - - - The Category of the event log entry will normally be - set using the Category property () - on the . - This property provides the fallback value which defaults to 0. - - - - - - This appender requires a to be set. - - true - - - This appender requires a to be set. - - - - - - A class to act as a mapping between the level that a logging call is made at and - the color it should be displayed as. - - - - Defines the mapping between a level and its event log entry type. - - - - - - The for this entry - - - - Required property. - The for this entry - - - - - - Appends logging events to a file. - - - - Logging events are sent to the file specified by - the property. - - - The file can be opened in either append or overwrite mode - by specifying the property. - If the file path is relative it is taken as relative from - the application base directory. The file encoding can be - specified by setting the property. - - - The layout's and - values will be written each time the file is opened and closed - respectively. If the property is - then the file may contain multiple copies of the header and footer. - - - This appender will first try to open the file for writing when - is called. This will typically be during configuration. - If the file cannot be opened for writing the appender will attempt - to open the file again each time a message is logged to the appender. - If the file cannot be opened for writing when a message is logged then - the message will be discarded by this appender. - - - The supports pluggable file locking models via - the property. - The default behavior, implemented by - is to obtain an exclusive write lock on the file until this appender is closed. - The alternative models only hold a - write lock while the appender is writing a logging event () - or synchronize by using a named system wide Mutex (). - - - All locking strategies have issues and you should seriously consider using a different strategy that - avoids having multiple processes logging to the same file. - - - Nicko Cadell - Gert Driesen - Rodrigo B. de Oliveira - Douglas de la Torre - Niall Daley - - - - Sends logging events to a . - - - - An Appender that writes to a . - - - This appender may be used stand alone if initialized with an appropriate - writer, however it is typically used as a base class for an appender that - can open a to write to. - - - Nicko Cadell - Gert Driesen - Douglas de la Torre - - - - Initializes a new instance of the class. - - - - Default constructor. - - - - - - Initializes a new instance of the class and - sets the output destination to a new initialized - with the specified . - - The layout to use with this appender. - The to output to. - - - Obsolete constructor. - - - - - - Initializes a new instance of the class and sets - the output destination to the specified . - - The layout to use with this appender - The to output to - - The must have been previously opened. - - - - Obsolete constructor. - - - - - - This method determines if there is a sense in attempting to append. - - - - This method checks if an output target has been set and if a - layout has been set. - - - false if any of the preconditions fail. - - - - This method is called by the - method. - - The event to log. - - - Writes a log statement to the output stream if the output stream exists - and is writable. - - - The format of the output will depend on the appender's layout. - - - - - - This method is called by the - method. - - The array of events to log. - - - This method writes all the bulk logged events to the output writer - before flushing the stream. - - - - - - Close this appender instance. The underlying stream or writer is also closed. - - - Closed appenders cannot be reused. - - - - - Writes the footer and closes the underlying . - - - - Writes the footer and closes the underlying . - - - - - - Closes the underlying . - - - - Closes the underlying . - - - - - - Clears internal references to the underlying - and other variables. - - - - Subclasses can override this method for an alternate closing behavior. - - - - - - Writes a footer as produced by the embedded layout's property. - - - - Writes a footer as produced by the embedded layout's property. - - - - - - Writes a header produced by the embedded layout's property. - - - - Writes a header produced by the embedded layout's property. - - - - - - Called to allow a subclass to lazily initialize the writer - - - - This method is called when an event is logged and the or - have not been set. This allows a subclass to - attempt to initialize the writer multiple times. - - - - - - This is the where logging events - will be written to. - - - - - Immediate flush means that the underlying - or output stream will be flushed at the end of each append operation. - - - - Immediate flush is slower but ensures that each append request is - actually written. If is set to - false, then there is a good chance that the last few - logging events are not actually persisted if and when the application - crashes. - - - The default value is true. - - - - - - The fully qualified type of the TextWriterAppender class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Gets or set whether the appender will flush at the end - of each append operation. - - - - The default behavior is to flush at the end of each - append operation. - - - If this option is set to false, then the underlying - stream can defer persisting the logging event to a later - time. - - - - Avoiding the flush operation at the end of each append results in - a performance gain of 10 to 20 percent. However, there is safety - trade-off involved in skipping flushing. Indeed, when flushing is - skipped, then it is likely that the last few log events will not - be recorded on disk when the application exits. This is a high - price to pay even for a 20% performance gain. - - - - - Sets the where the log output will go. - - - - The specified must be open and writable. - - - The will be closed when the appender - instance is closed. - - - Note: Logging to an unopened will fail. - - - - - - Gets or set the and the underlying - , if any, for this appender. - - - The for this appender. - - - - - This appender requires a to be set. - - true - - - This appender requires a to be set. - - - - - - Gets or sets the where logging events - will be written to. - - - The where logging events are written. - - - - This is the where logging events - will be written to. - - - - - - Default constructor - - - - Default constructor - - - - - - Construct a new appender using the layout, file and append mode. - - the layout to use with this appender - the full path to the file to write to - flag to indicate if the file should be appended to - - - Obsolete constructor. - - - - - - Construct a new appender using the layout and file specified. - The file will be appended to. - - the layout to use with this appender - the full path to the file to write to - - - Obsolete constructor. - - - - - - Activate the options on the file appender. - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - This will cause the file to be opened. - - - - - - Closes any previously opened file and calls the parent's . - - - - Resets the filename and the file stream. - - - - - - Called to initialize the file writer - - - - Will be called for each logged message until the file is - successfully opened. - - - - - - This method is called by the - method. - - The event to log. - - - Writes a log statement to the output stream if the output stream exists - and is writable. - - - The format of the output will depend on the appender's layout. - - - - - - This method is called by the - method. - - The array of events to log. - - - Acquires the output file locks once before writing all the events to - the stream. - - - - - - Writes a footer as produced by the embedded layout's property. - - - - Writes a footer as produced by the embedded layout's property. - - - - - - Writes a header produced by the embedded layout's property. - - - - Writes a header produced by the embedded layout's property. - - - - - - Closes the underlying . - - - - Closes the underlying . - - - - - - Closes the previously opened file. - - - - Writes the to the file and then - closes the file. - - - - - - Sets and opens the file where the log output will go. The specified file must be writable. - - The path to the log file. Must be a fully qualified path. - If true will append to fileName. Otherwise will truncate fileName - - - Calls but guarantees not to throw an exception. - Errors are passed to the . - - - - - - Sets and opens the file where the log output will go. The specified file must be writable. - - The path to the log file. Must be a fully qualified path. - If true will append to fileName. Otherwise will truncate fileName - - - If there was already an opened file, then the previous file - is closed first. - - - This method will ensure that the directory structure - for the specified exists. - - - - - - Sets the quiet writer used for file output - - the file stream that has been opened for writing - - - This implementation of creates a - over the and passes it to the - method. - - - This method can be overridden by sub classes that want to wrap the - in some way, for example to encrypt the output - data using a System.Security.Cryptography.CryptoStream. - - - - - - Sets the quiet writer being used. - - the writer over the file stream that has been opened for writing - - - This method can be overridden by sub classes that want to - wrap the in some way. - - - - - - Convert a path into a fully qualified path. - - The path to convert. - The fully qualified path. - - - Converts the path specified to a fully - qualified path. If the path is relative it is - taken as relative from the application base - directory. - - - - - - Flag to indicate if we should append to the file - or overwrite the file. The default is to append. - - - - - The name of the log file. - - - - - The encoding to use for the file stream. - - - - - The security context to use for privileged calls - - - - - The stream to log to. Has added locking semantics - - - - - The locking model to use - - - - - The fully qualified type of the FileAppender class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Gets or sets the path to the file that logging will be written to. - - - The path to the file that logging will be written to. - - - - If the path is relative it is taken as relative from - the application base directory. - - - - - - Gets or sets a flag that indicates whether the file should be - appended to or overwritten. - - - Indicates whether the file should be appended to or overwritten. - - - - If the value is set to false then the file will be overwritten, if - it is set to true then the file will be appended to. - - The default value is true. - - - - - Gets or sets used to write to the file. - - - The used to write to the file. - - - - The default encoding set is - which is the encoding for the system's current ANSI code page. - - - - - - Gets or sets the used to write to the file. - - - The used to write to the file. - - - - Unless a specified here for this appender - the is queried for the - security context to use. The default behavior is to use the security context - of the current thread. - - - - - - Gets or sets the used to handle locking of the file. - - - The used to lock the file. - - - - Gets or sets the used to handle locking of the file. - - - There are three built in locking models, , and . - The first locks the file from the start of logging to the end, the - second locks only for the minimal amount of time when logging each message - and the last synchronizes processes using a named system wide Mutex. - - - The default locking model is the . - - - - - - Write only that uses the - to manage access to an underlying resource. - - - - - True asynchronous writes are not supported, the implementation forces a synchronous write. - - - - - Exception base type for log4net. - - - - This type extends . It - does not add any new functionality but does differentiate the - type of exception being thrown. - - - Nicko Cadell - Gert Driesen - - - - Constructor - - - - Initializes a new instance of the class. - - - - - - Constructor - - A message to include with the exception. - - - Initializes a new instance of the class with - the specified message. - - - - - - Constructor - - A message to include with the exception. - A nested exception to include. - - - Initializes a new instance of the class - with the specified message and inner exception. - - - - - - Serialization constructor - - The that holds the serialized object data about the exception being thrown. - The that contains contextual information about the source or destination. - - - Initializes a new instance of the class - with serialized data. - - - - - - Locking model base class - - - - Base class for the locking models available to the derived loggers. - - - - - - Open the output file - - The filename to use - Whether to append to the file, or overwrite - The encoding to use - - - Open the file specified and prepare for logging. - No writes will be made until is called. - Must be called before any calls to , - and . - - - - - - Close the file - - - - Close the file. No further writes will be made. - - - - - - Acquire the lock on the file - - A stream that is ready to be written to. - - - Acquire the lock on the file in preparation for writing to it. - Return a stream pointing to the file. - must be called to release the lock on the output file. - - - - - - Release the lock on the file - - - - Release the lock on the file. No further writes will be made to the - stream until is called again. - - - - - - Helper method that creates a FileStream under CurrentAppender's SecurityContext. - - - - Typically called during OpenFile or AcquireLock. - - - If the directory portion of the does not exist, it is created - via Directory.CreateDirecctory. - - - - - - - - - - Helper method to close under CurrentAppender's SecurityContext. - - - Does not set to null. - - - - - - Gets or sets the for this LockingModel - - - The for this LockingModel - - - - The file appender this locking model is attached to and working on - behalf of. - - - The file appender is used to locate the security context and the error handler to use. - - - The value of this property will be set before is - called. - - - - - - Hold an exclusive lock on the output file - - - - Open the file once for writing and hold it open until is called. - Maintains an exclusive lock on the file during this time. - - - - - - Open the file specified and prepare for logging. - - The filename to use - Whether to append to the file, or overwrite - The encoding to use - - - Open the file specified and prepare for logging. - No writes will be made until is called. - Must be called before any calls to , - and . - - - - - - Close the file - - - - Close the file. No further writes will be made. - - - - - - Acquire the lock on the file - - A stream that is ready to be written to. - - - Does nothing. The lock is already taken - - - - - - Release the lock on the file - - - - Does nothing. The lock will be released when the file is closed. - - - - - - Acquires the file lock for each write - - - - Opens the file once for each / cycle, - thus holding the lock for the minimal amount of time. This method of locking - is considerably slower than but allows - other processes to move/delete the log file whilst logging continues. - - - - - - Prepares to open the file when the first message is logged. - - The filename to use - Whether to append to the file, or overwrite - The encoding to use - - - Open the file specified and prepare for logging. - No writes will be made until is called. - Must be called before any calls to , - and . - - - - - - Close the file - - - - Close the file. No further writes will be made. - - - - - - Acquire the lock on the file - - A stream that is ready to be written to. - - - Acquire the lock on the file in preparation for writing to it. - Return a stream pointing to the file. - must be called to release the lock on the output file. - - - - - - Release the lock on the file - - - - Release the lock on the file. No further writes will be made to the - stream until is called again. - - - - - - Provides cross-process file locking. - - Ron Grabowski - Steve Wranovsky - - - - Open the file specified and prepare for logging. - - The filename to use - Whether to append to the file, or overwrite - The encoding to use - - - Open the file specified and prepare for logging. - No writes will be made until is called. - Must be called before any calls to , - - and . - - - - - - Close the file - - - - Close the file. No further writes will be made. - - - - - - Acquire the lock on the file - - A stream that is ready to be written to. - - - Does nothing. The lock is already taken - - - - - - - - - - - This appender forwards logging events to attached appenders. - - - - The forwarding appender can be used to specify different thresholds - and filters for the same appender at different locations within the hierarchy. - - - Nicko Cadell - Gert Driesen - - - - Initializes a new instance of the class. - - - - Default constructor. - - - - - - Closes the appender and releases resources. - - - - Releases any resources allocated within the appender such as file handles, - network connections, etc. - - - It is a programming error to append to a closed appender. - - - - - - Forward the logging event to the attached appenders - - The event to log. - - - Delivers the logging event to all the attached appenders. - - - - - - Forward the logging events to the attached appenders - - The array of events to log. - - - Delivers the logging events to all the attached appenders. - - - - - - Adds an to the list of appenders of this - instance. - - The to add to this appender. - - - If the specified is already in the list of - appenders, then it won't be added again. - - - - - - Looks for the appender with the specified name. - - The name of the appender to lookup. - - The appender with the specified name, or null. - - - - Get the named appender attached to this appender. - - - - - - Removes all previously added appenders from this appender. - - - - This is useful when re-reading configuration information. - - - - - - Removes the specified appender from the list of appenders. - - The appender to remove. - The appender removed from the list - - The appender removed is not closed. - If you are discarding the appender you must call - on the appender removed. - - - - - Removes the appender with the specified name from the list of appenders. - - The name of the appender to remove. - The appender removed from the list - - The appender removed is not closed. - If you are discarding the appender you must call - on the appender removed. - - - - - Implementation of the interface - - - - - Gets the appenders contained in this appender as an - . - - - If no appenders can be found, then an - is returned. - - - A collection of the appenders in this appender. - - - - - Logs events to a local syslog service. - - - - This appender uses the POSIX libc library functions openlog, syslog, and closelog. - If these functions are not available on the local system then this appender will not work! - - - The functions openlog, syslog, and closelog are specified in SUSv2 and - POSIX 1003.1-2001 standards. These are used to log messages to the local syslog service. - - - This appender talks to a local syslog service. If you need to log to a remote syslog - daemon and you cannot configure your local syslog service to do this you may be - able to use the to log via UDP. - - - Syslog messages must have a facility and and a severity. The severity - is derived from the Level of the logging event. - The facility must be chosen from the set of defined syslog - values. The facilities list is predefined - and cannot be extended. - - - An identifier is specified with each log message. This can be specified - by setting the property. The identity (also know - as the tag) must not contain white space. The default value for the - identity is the application name (from ). - - - Rob Lyon - Nicko Cadell - - - - Initializes a new instance of the class. - - - This instance of the class is set up to write - to a local syslog service. - - - - - Add a mapping of level to severity - - The mapping to add - - - Adds a to this appender. - - - - - - Initialize the appender based on the options set. - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - This method is called by the method. - - The event to log. - - - Writes the event to a remote syslog daemon. - - - The format of the output will depend on the appender's layout. - - - - - - Close the syslog when the appender is closed - - - - Close the syslog when the appender is closed - - - - - - Translates a log4net level to a syslog severity. - - A log4net level. - A syslog severity. - - - Translates a log4net level to a syslog severity. - - - - - - Generate a syslog priority. - - The syslog facility. - The syslog severity. - A syslog priority. - - - - The facility. The default facility is . - - - - - The message identity - - - - - Marshaled handle to the identity string. We have to hold on to the - string as the openlog and syslog APIs just hold the - pointer to the ident and dereference it for each log message. - - - - - Mapping from level object to syslog severity - - - - - Open connection to system logger. - - - - - Generate a log message. - - - - The libc syslog method takes a format string and a variable argument list similar - to the classic printf function. As this type of vararg list is not supported - by C# we need to specify the arguments explicitly. Here we have specified the - format string with a single message argument. The caller must set the format - string to "%s". - - - - - - Close descriptor used to write to system logger. - - - - - Message identity - - - - An identifier is specified with each log message. This can be specified - by setting the property. The identity (also know - as the tag) must not contain white space. The default value for the - identity is the application name (from ). - - - - - - Syslog facility - - - Set to one of the values. The list of - facilities is predefined and cannot be extended. The default value - is . - - - - - This appender requires a to be set. - - true - - - This appender requires a to be set. - - - - - - syslog severities - - - - The log4net Level maps to a syslog severity using the - method and the - class. The severity is set on . - - - - - - system is unusable - - - - - action must be taken immediately - - - - - critical conditions - - - - - error conditions - - - - - warning conditions - - - - - normal but significant condition - - - - - informational - - - - - debug-level messages - - - - - syslog facilities - - - - The syslog facility defines which subsystem the logging comes from. - This is set on the property. - - - - - - kernel messages - - - - - random user-level messages - - - - - mail system - - - - - system daemons - - - - - security/authorization messages - - - - - messages generated internally by syslogd - - - - - line printer subsystem - - - - - network news subsystem - - - - - UUCP subsystem - - - - - clock (cron/at) daemon - - - - - security/authorization messages (private) - - - - - ftp daemon - - - - - NTP subsystem - - - - - log audit - - - - - log alert - - - - - clock daemon - - - - - reserved for local use - - - - - reserved for local use - - - - - reserved for local use - - - - - reserved for local use - - - - - reserved for local use - - - - - reserved for local use - - - - - reserved for local use - - - - - reserved for local use - - - - - A class to act as a mapping between the level that a logging call is made at and - the syslog severity that is should be logged at. - - - - A class to act as a mapping between the level that a logging call is made at and - the syslog severity that is should be logged at. - - - - - - The mapped syslog severity for the specified level - - - - Required property. - The mapped syslog severity for the specified level - - - - - - Appends colorful logging events to the console, using the .NET 2 - built-in capabilities. - - - - ManagedColoredConsoleAppender appends log events to the standard output stream - or the error output stream using a layout specified by the - user. It also allows the color of a specific type of message to be set. - - - By default, all output is written to the console's standard output stream. - The property can be set to direct the output to the - error stream. - - - When configuring the colored console appender, mappings should be - specified to map logging levels to colors. For example: - - - - - - - - - - - - - - - - - - - - - - The Level is the standard log4net logging level while - ForeColor and BackColor are the values of - enumeration. - - - Based on the ColoredConsoleAppender - - - Rick Hobbs - Nicko Cadell - Pavlos Touboulidis - - - - The to use when writing to the Console - standard output stream. - - - - The to use when writing to the Console - standard output stream. - - - - - - The to use when writing to the Console - standard error output stream. - - - - The to use when writing to the Console - standard error output stream. - - - - - - Initializes a new instance of the class. - - - The instance of the class is set up to write - to the standard output stream. - - - - - Add a mapping of level to color - done by the config file - - The mapping to add - - - Add a mapping to this appender. - Each mapping defines the foreground and background colors - for a level. - - - - - - This method is called by the method. - - The event to log. - - - Writes the event to the console. - - - The format of the output will depend on the appender's layout. - - - - - - Initialize the options for this appender - - - - Initialize the level to color mappings set on this appender. - - - - - - Flag to write output to the error stream rather than the standard output stream - - - - - Mapping from level object to color value - - - - - Target is the value of the console output stream. - This is either "Console.Out" or "Console.Error". - - - Target is the value of the console output stream. - This is either "Console.Out" or "Console.Error". - - - - Target is the value of the console output stream. - This is either "Console.Out" or "Console.Error". - - - - - - This appender requires a to be set. - - true - - - This appender requires a to be set. - - - - - - A class to act as a mapping between the level that a logging call is made at and - the color it should be displayed as. - - - - Defines the mapping between a level and the color it should be displayed in. - - - - - - The mapped foreground color for the specified level - - - - Required property. - The mapped foreground color for the specified level. - - - - - - The mapped background color for the specified level - - - - Required property. - The mapped background color for the specified level. - - - - - - Stores logging events in an array. - - - - The memory appender stores all the logging events - that are appended in an in-memory array. - - - Use the method to get - the current list of events that have been appended. - - - Use the method to clear the - current list of events. - - - Julian Biddle - Nicko Cadell - Gert Driesen - - - - Initializes a new instance of the class. - - - - Default constructor. - - - - - - Gets the events that have been logged. - - The events that have been logged - - - Gets the events that have been logged. - - - - - - This method is called by the method. - - the event to log - - Stores the in the events list. - - - - - Clear the list of events - - - Clear the list of events - - - - - The list of events that have been appended. - - - - - Value indicating which fields in the event should be fixed - - - By default all fields are fixed - - - - - Gets or sets a value indicating whether only part of the logging event - data should be fixed. - - - true if the appender should only fix part of the logging event - data, otherwise false. The default is false. - - - - Setting this property to true will cause only part of the event - data to be fixed and stored in the appender, hereby improving performance. - - - See for more information. - - - - - - Gets or sets the fields that will be fixed in the event - - - - The logging event needs to have certain thread specific values - captured before it can be buffered. See - for details. - - - - - - Logs entries by sending network messages using the - native function. - - - - You can send messages only to names that are active - on the network. If you send the message to a user name, - that user must be logged on and running the Messenger - service to receive the message. - - - The receiver will get a top most window displaying the - messages one at a time, therefore this appender should - not be used to deliver a high volume of messages. - - - The following table lists some possible uses for this appender : - - - - - Action - Property Value(s) - - - Send a message to a user account on the local machine - - - = <name of the local machine> - - - = <user name> - - - - - Send a message to a user account on a remote machine - - - = <name of the remote machine> - - - = <user name> - - - - - Send a message to a domain user account - - - = <name of a domain controller | uninitialized> - - - = <user name> - - - - - Send a message to all the names in a workgroup or domain - - - = <workgroup name | domain name>* - - - - - Send a message from the local machine to a remote machine - - - = <name of the local machine | uninitialized> - - - = <name of the remote machine> - - - - - - - Note : security restrictions apply for sending - network messages, see - for more information. - - - - - An example configuration section to log information - using this appender from the local machine, named - LOCAL_PC, to machine OPERATOR_PC : - - - - - - - - - - Nicko Cadell - Gert Driesen - - - - The DNS or NetBIOS name of the server on which the function is to execute. - - - - - The sender of the network message. - - - - - The message alias to which the message should be sent. - - - - - The security context to use for privileged calls - - - - - Initializes the appender. - - - The default constructor initializes all fields to their default values. - - - - - Initialize the appender based on the options set. - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - The appender will be ignored if no was specified. - - - The required property was not specified. - - - - This method is called by the method. - - The event to log. - - - Sends the event using a network message. - - - - - - Sends a buffer of information to a registered message alias. - - The DNS or NetBIOS name of the server on which the function is to execute. - The message alias to which the message buffer should be sent - The originator of the message. - The message text. - The length, in bytes, of the message text. - - - The following restrictions apply for sending network messages: - - - - - Platform - Requirements - - - Windows NT - - - No special group membership is required to send a network message. - - - Admin, Accounts, Print, or Server Operator group membership is required to - successfully send a network message on a remote server. - - - - - Windows 2000 or later - - - If you send a message on a domain controller that is running Active Directory, - access is allowed or denied based on the access control list (ACL) for the securable - object. The default ACL permits only Domain Admins and Account Operators to send a network message. - - - On a member server or workstation, only Administrators and Server Operators can send a network message. - - - - - - - For more information see Security Requirements for the Network Management Functions. - - - - - If the function succeeds, the return value is zero. - - - - - - Gets or sets the sender of the message. - - - The sender of the message. - - - If this property is not specified, the message is sent from the local computer. - - - - - Gets or sets the message alias to which the message should be sent. - - - The recipient of the message. - - - This property should always be specified in order to send a message. - - - - - Gets or sets the DNS or NetBIOS name of the remote server on which the function is to execute. - - - DNS or NetBIOS name of the remote server on which the function is to execute. - - - - For Windows NT 4.0 and earlier, the string should begin with \\. - - - If this property is not specified, the local computer is used. - - - - - - Gets or sets the used to call the NetSend method. - - - The used to call the NetSend method. - - - - Unless a specified here for this appender - the is queried for the - security context to use. The default behavior is to use the security context - of the current thread. - - - - - - This appender requires a to be set. - - true - - - This appender requires a to be set. - - - - - - Appends log events to the OutputDebugString system. - - - - OutputDebugStringAppender appends log events to the - OutputDebugString system. - - - The string is passed to the native OutputDebugString - function. - - - Nicko Cadell - Gert Driesen - - - - Initializes a new instance of the class. - - - - Default constructor. - - - - - - Write the logging event to the output debug string API - - the event to log - - - Write the logging event to the output debug string API - - - - - - Stub for OutputDebugString native method - - the string to output - - - Stub for OutputDebugString native method - - - - - - This appender requires a to be set. - - true - - - This appender requires a to be set. - - - - - - Logs events to a remote syslog daemon. - - - - The BSD syslog protocol is used to remotely log to - a syslog daemon. The syslogd listens for for messages - on UDP port 514. - - - The syslog UDP protocol is not authenticated. Most syslog daemons - do not accept remote log messages because of the security implications. - You may be able to use the LocalSyslogAppender to talk to a local - syslog service. - - - There is an RFC 3164 that claims to document the BSD Syslog Protocol. - This RFC can be seen here: http://www.faqs.org/rfcs/rfc3164.html. - This appender generates what the RFC calls an "Original Device Message", - i.e. does not include the TIMESTAMP or HOSTNAME fields. By observation - this format of message will be accepted by all current syslog daemon - implementations. The daemon will attach the current time and the source - hostname or IP address to any messages received. - - - Syslog messages must have a facility and and a severity. The severity - is derived from the Level of the logging event. - The facility must be chosen from the set of defined syslog - values. The facilities list is predefined - and cannot be extended. - - - An identifier is specified with each log message. This can be specified - by setting the property. The identity (also know - as the tag) must not contain white space. The default value for the - identity is the application name (from ). - - - Rob Lyon - Nicko Cadell - - - - Sends logging events as connectionless UDP datagrams to a remote host or a - multicast group using an . - - - - UDP guarantees neither that messages arrive, nor that they arrive in the correct order. - - - To view the logging results, a custom application can be developed that listens for logging - events. - - - When decoding events send via this appender remember to use the same encoding - to decode the events as was used to send the events. See the - property to specify the encoding to use. - - - - This example shows how to log receive logging events that are sent - on IP address 244.0.0.1 and port 8080 to the console. The event is - encoded in the packet as a unicode string and it is decoded as such. - - IPEndPoint remoteEndPoint = new IPEndPoint(IPAddress.Any, 0); - UdpClient udpClient; - byte[] buffer; - string loggingEvent; - - try - { - udpClient = new UdpClient(8080); - - while(true) - { - buffer = udpClient.Receive(ref remoteEndPoint); - loggingEvent = System.Text.Encoding.Unicode.GetString(buffer); - Console.WriteLine(loggingEvent); - } - } - catch(Exception e) - { - Console.WriteLine(e.ToString()); - } - - - Dim remoteEndPoint as IPEndPoint - Dim udpClient as UdpClient - Dim buffer as Byte() - Dim loggingEvent as String - - Try - remoteEndPoint = new IPEndPoint(IPAddress.Any, 0) - udpClient = new UdpClient(8080) - - While True - buffer = udpClient.Receive(ByRef remoteEndPoint) - loggingEvent = System.Text.Encoding.Unicode.GetString(buffer) - Console.WriteLine(loggingEvent) - Wend - Catch e As Exception - Console.WriteLine(e.ToString()) - End Try - - - An example configuration section to log information using this appender to the - IP 224.0.0.1 on port 8080: - - - - - - - - - - Gert Driesen - Nicko Cadell - - - - Initializes a new instance of the class. - - - The default constructor initializes all fields to their default values. - - - - - Initialize the appender based on the options set. - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - The appender will be ignored if no was specified or - an invalid remote or local TCP port number was specified. - - - The required property was not specified. - The TCP port number assigned to or is less than or greater than . - - - - This method is called by the method. - - The event to log. - - - Sends the event using an UDP datagram. - - - Exceptions are passed to the . - - - - - - Closes the UDP connection and releases all resources associated with - this instance. - - - - Disables the underlying and releases all managed - and unmanaged resources associated with the . - - - - - - Initializes the underlying connection. - - - - The underlying is initialized and binds to the - port number from which you intend to communicate. - - - Exceptions are passed to the . - - - - - - The IP address of the remote host or multicast group to which - the logging event will be sent. - - - - - The TCP port number of the remote host or multicast group to - which the logging event will be sent. - - - - - The cached remote endpoint to which the logging events will be sent. - - - - - The TCP port number from which the will communicate. - - - - - The instance that will be used for sending the - logging events. - - - - - The encoding to use for the packet. - - - - - Gets or sets the IP address of the remote host or multicast group to which - the underlying should sent the logging event. - - - The IP address of the remote host or multicast group to which the logging event - will be sent. - - - - Multicast addresses are identified by IP class D addresses (in the range 224.0.0.0 to - 239.255.255.255). Multicast packets can pass across different networks through routers, so - it is possible to use multicasts in an Internet scenario as long as your network provider - supports multicasting. - - - Hosts that want to receive particular multicast messages must register their interest by joining - the multicast group. Multicast messages are not sent to networks where no host has joined - the multicast group. Class D IP addresses are used for multicast groups, to differentiate - them from normal host addresses, allowing nodes to easily detect if a message is of interest. - - - Static multicast addresses that are needed globally are assigned by IANA. A few examples are listed in the table below: - - - - - IP Address - Description - - - 224.0.0.1 - - - Sends a message to all system on the subnet. - - - - - 224.0.0.2 - - - Sends a message to all routers on the subnet. - - - - - 224.0.0.12 - - - The DHCP server answers messages on the IP address 224.0.0.12, but only on a subnet. - - - - - - - A complete list of actually reserved multicast addresses and their owners in the ranges - defined by RFC 3171 can be found at the IANA web site. - - - The address range 239.0.0.0 to 239.255.255.255 is reserved for administrative scope-relative - addresses. These addresses can be reused with other local groups. Routers are typically - configured with filters to prevent multicast traffic in this range from flowing outside - of the local network. - - - - - - Gets or sets the TCP port number of the remote host or multicast group to which - the underlying should sent the logging event. - - - An integer value in the range to - indicating the TCP port number of the remote host or multicast group to which the logging event - will be sent. - - - The underlying will send messages to this TCP port number - on the remote host or multicast group. - - The value specified is less than or greater than . - - - - Gets or sets the TCP port number from which the underlying will communicate. - - - An integer value in the range to - indicating the TCP port number from which the underlying will communicate. - - - - The underlying will bind to this port for sending messages. - - - Setting the value to 0 (the default) will cause the udp client not to bind to - a local port. - - - The value specified is less than or greater than . - - - - Gets or sets used to write the packets. - - - The used to write the packets. - - - - The used to write the packets. - - - - - - Gets or sets the underlying . - - - The underlying . - - - creates a to send logging events - over a network. Classes deriving from can use this - property to get or set this . Use the underlying - returned from if you require access beyond that which - provides. - - - - - Gets or sets the cached remote endpoint to which the logging events should be sent. - - - The cached remote endpoint to which the logging events will be sent. - - - The method will initialize the remote endpoint - with the values of the and - properties. - - - - - This appender requires a to be set. - - true - - - This appender requires a to be set. - - - - - - Syslog port 514 - - - - - Initial buffer size - - - - - Maximum buffer size before it is recycled - - - - - Initializes a new instance of the class. - - - This instance of the class is set up to write - to a remote syslog daemon. - - - - - Add a mapping of level to severity - - The mapping to add - - - Add a mapping to this appender. - - - - - - This method is called by the method. - - The event to log. - - - Writes the event to a remote syslog daemon. - - - The format of the output will depend on the appender's layout. - - - - - - Initialize the options for this appender - - - - Initialize the level to syslog severity mappings set on this appender. - - - - - - Translates a log4net level to a syslog severity. - - A log4net level. - A syslog severity. - - - Translates a log4net level to a syslog severity. - - - - - - Generate a syslog priority. - - The syslog facility. - The syslog severity. - A syslog priority. - - - Generate a syslog priority. - - - - - - The facility. The default facility is . - - - - - The message identity - - - - - Mapping from level object to syslog severity - - - - - Message identity - - - - An identifier is specified with each log message. This can be specified - by setting the property. The identity (also know - as the tag) must not contain white space. The default value for the - identity is the application name (from ). - - - - - - Syslog facility - - - Set to one of the values. The list of - facilities is predefined and cannot be extended. The default value - is . - - - - - syslog severities - - - - The syslog severities. - - - - - - system is unusable - - - - - action must be taken immediately - - - - - critical conditions - - - - - error conditions - - - - - warning conditions - - - - - normal but significant condition - - - - - informational - - - - - debug-level messages - - - - - syslog facilities - - - - The syslog facilities - - - - - - kernel messages - - - - - random user-level messages - - - - - mail system - - - - - system daemons - - - - - security/authorization messages - - - - - messages generated internally by syslogd - - - - - line printer subsystem - - - - - network news subsystem - - - - - UUCP subsystem - - - - - clock (cron/at) daemon - - - - - security/authorization messages (private) - - - - - ftp daemon - - - - - NTP subsystem - - - - - log audit - - - - - log alert - - - - - clock daemon - - - - - reserved for local use - - - - - reserved for local use - - - - - reserved for local use - - - - - reserved for local use - - - - - reserved for local use - - - - - reserved for local use - - - - - reserved for local use - - - - - reserved for local use - - - - - A class to act as a mapping between the level that a logging call is made at and - the syslog severity that is should be logged at. - - - - A class to act as a mapping between the level that a logging call is made at and - the syslog severity that is should be logged at. - - - - - - The mapped syslog severity for the specified level - - - - Required property. - The mapped syslog severity for the specified level - - - - - - Delivers logging events to a remote logging sink. - - - - This Appender is designed to deliver events to a remote sink. - That is any object that implements the - interface. It delivers the events using .NET remoting. The - object to deliver events to is specified by setting the - appenders property. - - The RemotingAppender buffers events before sending them. This allows it to - make more efficient use of the remoting infrastructure. - - Once the buffer is full the events are still not sent immediately. - They are scheduled to be sent using a pool thread. The effect is that - the send occurs asynchronously. This is very important for a - number of non obvious reasons. The remoting infrastructure will - flow thread local variables (stored in the ), - if they are marked as , across the - remoting boundary. If the server is not contactable then - the remoting infrastructure will clear the - objects from the . To prevent a logging failure from - having side effects on the calling application the remoting call must be made - from a separate thread to the one used by the application. A - thread is used for this. If no thread is available then - the events will block in the thread pool manager until a thread is available. - - Because the events are sent asynchronously using pool threads it is possible to close - this appender before all the queued events have been sent. - When closing the appender attempts to wait until all the queued events have been sent, but - this will timeout after 30 seconds regardless. - - If this appender is being closed because the - event has fired it may not be possible to send all the queued events. During process - exit the runtime limits the time that a - event handler is allowed to run for. If the runtime terminates the threads before - the queued events have been sent then they will be lost. To ensure that all events - are sent the appender must be closed before the application exits. See - for details on how to shutdown - log4net programmatically. - - - Nicko Cadell - Gert Driesen - Daniel Cazzulino - - - - Initializes a new instance of the class. - - - - Default constructor. - - - - - - Initialize the appender based on the options set - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - Send the contents of the buffer to the remote sink. - - - The events are not sent immediately. They are scheduled to be sent - using a pool thread. The effect is that the send occurs asynchronously. - This is very important for a number of non obvious reasons. The remoting - infrastructure will flow thread local variables (stored in the ), - if they are marked as , across the - remoting boundary. If the server is not contactable then - the remoting infrastructure will clear the - objects from the . To prevent a logging failure from - having side effects on the calling application the remoting call must be made - from a separate thread to the one used by the application. A - thread is used for this. If no thread is available then - the events will block in the thread pool manager until a thread is available. - - The events to send. - - - - Override base class close. - - - - This method waits while there are queued work items. The events are - sent asynchronously using work items. These items - will be sent once a thread pool thread is available to send them, therefore - it is possible to close the appender before all the queued events have been - sent. - - This method attempts to wait until all the queued events have been sent, but this - method will timeout after 30 seconds regardless. - - If the appender is being closed because the - event has fired it may not be possible to send all the queued events. During process - exit the runtime limits the time that a - event handler is allowed to run for. - - - - - A work item is being queued into the thread pool - - - - - A work item from the thread pool has completed - - - - - Send the contents of the buffer to the remote sink. - - - This method is designed to be used with the . - This method expects to be passed an array of - objects in the state param. - - the logging events to send - - - - The URL of the remote sink. - - - - - The local proxy (.NET remoting) for the remote logging sink. - - - - - The number of queued callbacks currently waiting or executing - - - - - Event used to signal when there are no queued work items - - - This event is set when there are no queued work items. In this - state it is safe to close the appender. - - - - - Gets or sets the URL of the well-known object that will accept - the logging events. - - - The well-known URL of the remote sink. - - - - The URL of the remoting sink that will accept logging events. - The sink must implement the - interface. - - - - - - Interface used to deliver objects to a remote sink. - - - This interface must be implemented by a remoting sink - if the is to be used - to deliver logging events to the sink. - - - - - Delivers logging events to the remote sink - - Array of events to log. - - - Delivers logging events to the remote sink - - - - - - Appender that rolls log files based on size or date or both. - - - - RollingFileAppender can roll log files based on size or date or both - depending on the setting of the property. - When set to the log file will be rolled - once its size exceeds the . - When set to the log file will be rolled - once the date boundary specified in the property - is crossed. - When set to the log file will be - rolled once the date boundary specified in the property - is crossed, but within a date boundary the file will also be rolled - once its size exceeds the . - When set to the log file will be rolled when - the appender is configured. This effectively means that the log file can be - rolled once per program execution. - - - A of few additional optional features have been added: - - Attach date pattern for current log file - Backup number increments for newer files - Infinite number of backups by file size - - - - - - For large or infinite numbers of backup files a - greater than zero is highly recommended, otherwise all the backup files need - to be renamed each time a new backup is created. - - - When Date/Time based rolling is used setting - to will reduce the number of file renamings to few or none. - - - - - - Changing or without clearing - the log file directory of backup files will cause unexpected and unwanted side effects. - - - - - If Date/Time based rolling is enabled this appender will attempt to roll existing files - in the directory without a Date/Time tag based on the last write date of the base log file. - The appender only rolls the log file when a message is logged. If Date/Time based rolling - is enabled then the appender will not roll the log file at the Date/Time boundary but - at the point when the next message is logged after the boundary has been crossed. - - - - The extends the and - has the same behavior when opening the log file. - The appender will first try to open the file for writing when - is called. This will typically be during configuration. - If the file cannot be opened for writing the appender will attempt - to open the file again each time a message is logged to the appender. - If the file cannot be opened for writing when a message is logged then - the message will be discarded by this appender. - - - When rolling a backup file necessitates deleting an older backup file the - file to be deleted is moved to a temporary name before being deleted. - - - - - A maximum number of backup files when rolling on date/time boundaries is not supported. - - - - Nicko Cadell - Gert Driesen - Aspi Havewala - Douglas de la Torre - Edward Smit - - - - Initializes a new instance of the class. - - - - Default constructor. - - - - - - The fully qualified type of the RollingFileAppender class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Sets the quiet writer being used. - - - This method can be overridden by sub classes. - - the writer to set - - - - Write out a logging event. - - the event to write to file. - - - Handles append time behavior for RollingFileAppender. This checks - if a roll over either by date (checked first) or time (checked second) - is need and then appends to the file last. - - - - - - Write out an array of logging events. - - the events to write to file. - - - Handles append time behavior for RollingFileAppender. This checks - if a roll over either by date (checked first) or time (checked second) - is need and then appends to the file last. - - - - - - Performs any required rolling before outputting the next event - - - - Handles append time behavior for RollingFileAppender. This checks - if a roll over either by date (checked first) or time (checked second) - is need and then appends to the file last. - - - - - - Creates and opens the file for logging. If - is false then the fully qualified name is determined and used. - - the name of the file to open - true to append to existing file - - This method will ensure that the directory structure - for the specified exists. - - - - - Get the current output file name - - the base file name - the output file name - - The output file name is based on the base fileName specified. - If is set then the output - file name is the same as the base file passed in. Otherwise - the output file depends on the date pattern, on the count - direction or both. - - - - - Determines curSizeRollBackups (only within the current roll point) - - - - - Generates a wildcard pattern that can be used to find all files - that are similar to the base file name. - - - - - - - Builds a list of filenames for all files matching the base filename plus a file - pattern. - - - - - - - Initiates a roll over if needed for crossing a date boundary since the last run. - - - - - Initializes based on existing conditions at time of . - - - - Initializes based on existing conditions at time of . - The following is done - - determine curSizeRollBackups (only within the current roll point) - initiates a roll over if needed for crossing a date boundary since the last run. - - - - - - - Does the work of bumping the 'current' file counter higher - to the highest count when an incremental file name is seen. - The highest count is either the first file (when count direction - is greater than 0) or the last file (when count direction less than 0). - In either case, we want to know the highest count that is present. - - - - - - - Attempts to extract a number from the end of the file name that indicates - the number of the times the file has been rolled over. - - - Certain date pattern extensions like yyyyMMdd will be parsed as valid backup indexes. - - - - - - - Takes a list of files and a base file name, and looks for - 'incremented' versions of the base file. Bumps the max - count up to the highest count seen. - - - - - - - Calculates the RollPoint for the datePattern supplied. - - the date pattern to calculate the check period for - The RollPoint that is most accurate for the date pattern supplied - - Essentially the date pattern is examined to determine what the - most suitable roll point is. The roll point chosen is the roll point - with the smallest period that can be detected using the date pattern - supplied. i.e. if the date pattern only outputs the year, month, day - and hour then the smallest roll point that can be detected would be - and hourly roll point as minutes could not be detected. - - - - - Initialize the appender based on the options set - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - Sets initial conditions including date/time roll over information, first check, - scheduledFilename, and calls to initialize - the current number of backups. - - - - - - - - - .1, .2, .3, etc. - - - - - Rollover the file(s) to date/time tagged file(s). - - set to true if the file to be rolled is currently open - - - Rollover the file(s) to date/time tagged file(s). - Resets curSizeRollBackups. - If fileIsOpen is set then the new file is opened (through SafeOpenFile). - - - - - - Renames file to file . - - Name of existing file to roll. - New name for file. - - - Renames file to file . It - also checks for existence of target file and deletes if it does. - - - - - - Test if a file exists at a specified path - - the path to the file - true if the file exists - - - Test if a file exists at a specified path - - - - - - Deletes the specified file if it exists. - - The file to delete. - - - Delete a file if is exists. - The file is first moved to a new filename then deleted. - This allows the file to be removed even when it cannot - be deleted, but it still can be moved. - - - - - - Implements file roll base on file size. - - - - If the maximum number of size based backups is reached - (curSizeRollBackups == maxSizeRollBackups) then the oldest - file is deleted -- its index determined by the sign of countDirection. - If countDirection < 0, then files - {File.1, ..., File.curSizeRollBackups -1} - are renamed to {File.2, ..., - File.curSizeRollBackups}. Moreover, File is - renamed File.1 and closed. - - - A new file is created to receive further log output. - - - If maxSizeRollBackups is equal to zero, then the - File is truncated with no backup files created. - - - If maxSizeRollBackups < 0, then File is - renamed if needed and no files are deleted. - - - - - - Implements file roll. - - the base name to rename - - - If the maximum number of size based backups is reached - (curSizeRollBackups == maxSizeRollBackups) then the oldest - file is deleted -- its index determined by the sign of countDirection. - If countDirection < 0, then files - {File.1, ..., File.curSizeRollBackups -1} - are renamed to {File.2, ..., - File.curSizeRollBackups}. - - - If maxSizeRollBackups is equal to zero, then the - File is truncated with no backup files created. - - - If maxSizeRollBackups < 0, then File is - renamed if needed and no files are deleted. - - - This is called by to rename the files. - - - - - - Get the start time of the next window for the current rollpoint - - the current date - the type of roll point we are working with - the start time for the next roll point an interval after the currentDateTime date - - - Returns the date of the next roll point after the currentDateTime date passed to the method. - - - The basic strategy is to subtract the time parts that are less significant - than the rollpoint from the current time. This should roll the time back to - the start of the time window for the current rollpoint. Then we add 1 window - worth of time and get the start time of the next window for the rollpoint. - - - - - - This object supplies the current date/time. Allows test code to plug in - a method to control this class when testing date/time based rolling. The default - implementation uses the underlying value of DateTime.Now. - - - - - The date pattern. By default, the pattern is set to ".yyyy-MM-dd" - meaning daily rollover. - - - - - The actual formatted filename that is currently being written to - or will be the file transferred to on roll over - (based on staticLogFileName). - - - - - The timestamp when we shall next recompute the filename. - - - - - Holds date of last roll over - - - - - The type of rolling done - - - - - The default maximum file size is 10MB - - - - - There is zero backup files by default - - - - - How many sized based backups have been made so far - - - - - The rolling file count direction. - - - - - The rolling mode used in this appender. - - - - - Cache flag set if we are rolling by date. - - - - - Cache flag set if we are rolling by size. - - - - - Value indicating whether to always log to the same file. - - - - - Value indicating whether to preserve the file name extension when rolling. - - - - - FileName provided in configuration. Used for rolling properly - - - - - The 1st of January 1970 in UTC - - - - - Gets or sets the strategy for determining the current date and time. The default - implementation is to use LocalDateTime which internally calls through to DateTime.Now. - DateTime.UtcNow may be used on frameworks newer than .NET 1.0 by specifying - . - - - An implementation of the interface which returns the current date and time. - - - - Gets or sets the used to return the current date and time. - - - There are two built strategies for determining the current date and time, - - and . - - - The default strategy is . - - - - - - Gets or sets the date pattern to be used for generating file names - when rolling over on date. - - - The date pattern to be used for generating file names when rolling - over on date. - - - - Takes a string in the same format as expected by - . - - - This property determines the rollover schedule when rolling over - on date. - - - - - - Gets or sets the maximum number of backup files that are kept before - the oldest is erased. - - - The maximum number of backup files that are kept before the oldest is - erased. - - - - If set to zero, then there will be no backup files and the log file - will be truncated when it reaches . - - - If a negative number is supplied then no deletions will be made. Note - that this could result in very slow performance as a large number of - files are rolled over unless is used. - - - The maximum applies to each time based group of files and - not the total. - - - - - - Gets or sets the maximum size that the output file is allowed to reach - before being rolled over to backup files. - - - The maximum size in bytes that the output file is allowed to reach before being - rolled over to backup files. - - - - This property is equivalent to except - that it is required for differentiating the setter taking a - argument from the setter taking a - argument. - - - The default maximum file size is 10MB (10*1024*1024). - - - - - - Gets or sets the maximum size that the output file is allowed to reach - before being rolled over to backup files. - - - The maximum size that the output file is allowed to reach before being - rolled over to backup files. - - - - This property allows you to specify the maximum size with the - suffixes "KB", "MB" or "GB" so that the size is interpreted being - expressed respectively in kilobytes, megabytes or gigabytes. - - - For example, the value "10KB" will be interpreted as 10240 bytes. - - - The default maximum file size is 10MB. - - - If you have the option to set the maximum file size programmatically - consider using the property instead as this - allows you to set the size in bytes as a . - - - - - - Gets or sets the rolling file count direction. - - - The rolling file count direction. - - - - Indicates if the current file is the lowest numbered file or the - highest numbered file. - - - By default newer files have lower numbers ( < 0), - i.e. log.1 is most recent, log.5 is the 5th backup, etc... - - - >= 0 does the opposite i.e. - log.1 is the first backup made, log.5 is the 5th backup made, etc. - For infinite backups use >= 0 to reduce - rollover costs. - - The default file count direction is -1. - - - - - Gets or sets the rolling style. - - The rolling style. - - - The default rolling style is . - - - When set to this appender's - property is set to false, otherwise - the appender would append to a single file rather than rolling - the file each time it is opened. - - - - - - Gets or sets a value indicating whether to preserve the file name extension when rolling. - - - true if the file name extension should be preserved. - - - - By default file.log is rolled to file.log.yyyy-MM-dd or file.log.curSizeRollBackup. - However, under Windows the new file name will loose any program associations as the - extension is changed. Optionally file.log can be renamed to file.yyyy-MM-dd.log or - file.curSizeRollBackup.log to maintain any program associations. - - - - - - Gets or sets a value indicating whether to always log to - the same file. - - - true if always should be logged to the same file, otherwise false. - - - - By default file.log is always the current file. Optionally - file.log.yyyy-mm-dd for current formatted datePattern can by the currently - logging file (or file.log.curSizeRollBackup or even - file.log.yyyy-mm-dd.curSizeRollBackup). - - - This will make time based rollovers with a large number of backups - much faster as the appender it won't have to rename all the backups! - - - - - - Style of rolling to use - - - - Style of rolling to use - - - - - - Roll files once per program execution - - - - Roll files once per program execution. - Well really once each time this appender is - configured. - - - Setting this option also sets AppendToFile to - false on the RollingFileAppender, otherwise - this appender would just be a normal file appender. - - - - - - Roll files based only on the size of the file - - - - - Roll files based only on the date - - - - - Roll files based on both the size and date of the file - - - - - The code assumes that the following 'time' constants are in a increasing sequence. - - - - The code assumes that the following 'time' constants are in a increasing sequence. - - - - - - Roll the log not based on the date - - - - - Roll the log for each minute - - - - - Roll the log for each hour - - - - - Roll the log twice a day (midday and midnight) - - - - - Roll the log each day (midnight) - - - - - Roll the log each week - - - - - Roll the log each month - - - - - This interface is used to supply Date/Time information to the . - - - This interface is used to supply Date/Time information to the . - Used primarily to allow test classes to plug themselves in so they can - supply test date/times. - - - - - Gets the current time. - - The current time. - - - Gets the current time. - - - - - - Default implementation of that returns the current time. - - - - - Gets the current time. - - The current time. - - - Gets the current time. - - - - - - Implementation of that returns the current time as the coordinated universal time (UTC). - - - - - Gets the current time. - - The current time. - - - Gets the current time. - - - - - - Send an e-mail when a specific logging event occurs, typically on errors - or fatal errors. - - - - The number of logging events delivered in this e-mail depend on - the value of option. The - keeps only the last - logging events in its - cyclic buffer. This keeps memory requirements at a reasonable level while - still delivering useful application context. - - - Authentication and setting the server Port are only available on the MS .NET 1.1 runtime. - For these features to be enabled you need to ensure that you are using a version of - the log4net assembly that is built against the MS .NET 1.1 framework and that you are - running the your application on the MS .NET 1.1 runtime. On all other platforms only sending - unauthenticated messages to a server listening on port 25 (the default) is supported. - - - Authentication is supported by setting the property to - either or . - If using authentication then the - and properties must also be set. - - - To set the SMTP server port use the property. The default port is 25. - - - Nicko Cadell - Gert Driesen - - - - Default constructor - - - - Default constructor - - - - - - Sends the contents of the cyclic buffer as an e-mail message. - - The logging events to send. - - - - Send the email message - - the body text to include in the mail - - - - Gets or sets a comma- or semicolon-delimited list of recipient e-mail addresses (use semicolon on .NET 1.1 and comma for later versions). - - - - For .NET 1.1 (System.Web.Mail): A semicolon-delimited list of e-mail addresses. - - - For .NET 2.0 (System.Net.Mail): A comma-delimited list of e-mail addresses. - - - - - For .NET 1.1 (System.Web.Mail): A semicolon-delimited list of e-mail addresses. - - - For .NET 2.0 (System.Net.Mail): A comma-delimited list of e-mail addresses. - - - - - - Gets or sets a comma- or semicolon-delimited list of recipient e-mail addresses - that will be carbon copied (use semicolon on .NET 1.1 and comma for later versions). - - - - For .NET 1.1 (System.Web.Mail): A semicolon-delimited list of e-mail addresses. - - - For .NET 2.0 (System.Net.Mail): A comma-delimited list of e-mail addresses. - - - - - For .NET 1.1 (System.Web.Mail): A semicolon-delimited list of e-mail addresses. - - - For .NET 2.0 (System.Net.Mail): A comma-delimited list of e-mail addresses. - - - - - - Gets or sets a semicolon-delimited list of recipient e-mail addresses - that will be blind carbon copied. - - - A semicolon-delimited list of e-mail addresses. - - - - A semicolon-delimited list of recipient e-mail addresses. - - - - - - Gets or sets the e-mail address of the sender. - - - The e-mail address of the sender. - - - - The e-mail address of the sender. - - - - - - Gets or sets the subject line of the e-mail message. - - - The subject line of the e-mail message. - - - - The subject line of the e-mail message. - - - - - - Gets or sets the name of the SMTP relay mail server to use to send - the e-mail messages. - - - The name of the e-mail relay server. If SmtpServer is not set, the - name of the local SMTP server is used. - - - - The name of the e-mail relay server. If SmtpServer is not set, the - name of the local SMTP server is used. - - - - - - Obsolete - - - Use the BufferingAppenderSkeleton Fix methods instead - - - - Obsolete property. - - - - - - The mode to use to authentication with the SMTP server - - - Authentication is only available on the MS .NET 1.1 runtime. - - Valid Authentication mode values are: , - , and . - The default value is . When using - you must specify the - and to use to authenticate. - When using the Windows credentials for the current - thread, if impersonating, or the process will be used to authenticate. - - - - - - The username to use to authenticate with the SMTP server - - - Authentication is only available on the MS .NET 1.1 runtime. - - A and must be specified when - is set to , - otherwise the username will be ignored. - - - - - - The password to use to authenticate with the SMTP server - - - Authentication is only available on the MS .NET 1.1 runtime. - - A and must be specified when - is set to , - otherwise the password will be ignored. - - - - - - The port on which the SMTP server is listening - - - Server Port is only available on the MS .NET 1.1 runtime. - - The port on which the SMTP server is listening. The default - port is 25. The Port can only be changed when running on - the MS .NET 1.1 runtime. - - - - - - Gets or sets the priority of the e-mail message - - - One of the values. - - - - Sets the priority of the e-mails generated by this - appender. The default priority is . - - - If you are using this appender to report errors then - you may want to set the priority to . - - - - - - Enable or disable use of SSL when sending e-mail message - - - This is available on MS .NET 2.0 runtime and higher - - - - - Gets or sets the reply-to e-mail address. - - - This is available on MS .NET 2.0 runtime and higher - - - - - Gets or sets the subject encoding to be used. - - - The default encoding is the operating system's current ANSI codepage. - - - - - Gets or sets the body encoding to be used. - - - The default encoding is the operating system's current ANSI codepage. - - - - - This appender requires a to be set. - - true - - - This appender requires a to be set. - - - - - - Values for the property. - - - - SMTP authentication modes. - - - - - - No authentication - - - - - Basic authentication. - - - Requires a username and password to be supplied - - - - - Integrated authentication - - - Uses the Windows credentials from the current thread or process to authenticate. - - - - - Send an email when a specific logging event occurs, typically on errors - or fatal errors. Rather than sending via smtp it writes a file into the - directory specified by . This allows services such - as the IIS SMTP agent to manage sending the messages. - - - - The configuration for this appender is identical to that of the SMTPAppender, - except that instead of specifying the SMTPAppender.SMTPHost you specify - . - - - The number of logging events delivered in this e-mail depend on - the value of option. The - keeps only the last - logging events in its - cyclic buffer. This keeps memory requirements at a reasonable level while - still delivering useful application context. - - - Niall Daley - Nicko Cadell - - - - Default constructor - - - - Default constructor - - - - - - Sends the contents of the cyclic buffer as an e-mail message. - - The logging events to send. - - - Sends the contents of the cyclic buffer as an e-mail message. - - - - - - Activate the options on this appender. - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - Convert a path into a fully qualified path. - - The path to convert. - The fully qualified path. - - - Converts the path specified to a fully - qualified path. If the path is relative it is - taken as relative from the application base - directory. - - - - - - The security context to use for privileged calls - - - - - Gets or sets a semicolon-delimited list of recipient e-mail addresses. - - - A semicolon-delimited list of e-mail addresses. - - - - A semicolon-delimited list of e-mail addresses. - - - - - - Gets or sets the e-mail address of the sender. - - - The e-mail address of the sender. - - - - The e-mail address of the sender. - - - - - - Gets or sets the subject line of the e-mail message. - - - The subject line of the e-mail message. - - - - The subject line of the e-mail message. - - - - - - Gets or sets the path to write the messages to. - - - - Gets or sets the path to write the messages to. This should be the same - as that used by the agent sending the messages. - - - - - - Gets or sets the used to write to the pickup directory. - - - The used to write to the pickup directory. - - - - Unless a specified here for this appender - the is queried for the - security context to use. The default behavior is to use the security context - of the current thread. - - - - - - This appender requires a to be set. - - true - - - This appender requires a to be set. - - - - - - Appender that allows clients to connect via Telnet to receive log messages - - - - The TelnetAppender accepts socket connections and streams logging messages - back to the client. - The output is provided in a telnet-friendly way so that a log can be monitored - over a TCP/IP socket. - This allows simple remote monitoring of application logging. - - - The default is 23 (the telnet port). - - - Keith Long - Nicko Cadell - - - - Default constructor - - - - Default constructor - - - - - - The fully qualified type of the TelnetAppender class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Overrides the parent method to close the socket handler - - - - Closes all the outstanding connections. - - - - - - Initialize the appender based on the options set. - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - Create the socket handler and wait for connections - - - - - - Writes the logging event to each connected client. - - The event to log. - - - Writes the logging event to each connected client. - - - - - - Gets or sets the TCP port number on which this will listen for connections. - - - An integer value in the range to - indicating the TCP port number on which this will listen for connections. - - - - The default value is 23 (the telnet port). - - - The value specified is less than - or greater than . - - - - This appender requires a to be set. - - true - - - This appender requires a to be set. - - - - - - Helper class to manage connected clients - - - - The SocketHandler class is used to accept connections from - clients. It is threaded so that clients can connect/disconnect - asynchronously. - - - - - - Opens a new server port on - - the local port to listen on for connections - - - Creates a socket handler on the specified local server port. - - - - - - Sends a string message to each of the connected clients - - the text to send - - - Sends a string message to each of the connected clients - - - - - - Add a client to the internal clients list - - client to add - - - - Remove a client from the internal clients list - - client to remove - - - - Callback used to accept a connection on the server socket - - The result of the asynchronous operation - - - On connection adds to the list of connections - if there are two many open connections you will be disconnected - - - - - - Close all network connections - - - - Make sure we close all network connections - - - - - - Test if this handler has active connections - - - true if this handler has active connections - - - - This property will be true while this handler has - active connections, that is at least one connection that - the handler will attempt to send a message to. - - - - - - Class that represents a client connected to this handler - - - - Class that represents a client connected to this handler - - - - - - Create this for the specified - - the client's socket - - - Opens a stream writer on the socket. - - - - - - Write a string to the client - - string to send - - - Write a string to the client - - - - - - Cleanup the clients connection - - - - Close the socket connection. - - - - - - Appends log events to the system. - - - - The application configuration file can be used to control what listeners - are actually used. See the MSDN documentation for the - class for details on configuring the - trace system. - - - Events are written using the System.Diagnostics.Trace.Write(string,string) - method. The event's logger name is the default value for the category parameter - of the Write method. - - - Compact Framework
- The Compact Framework does not support the - class for any operation except Assert. When using the Compact Framework this - appender will write to the system rather than - the Trace system. This appender will therefore behave like the . -
-
- Douglas de la Torre - Nicko Cadell - Gert Driesen - Ron Grabowski -
- - - Initializes a new instance of the . - - - - Default constructor. - - - - - - Initializes a new instance of the - with a specified layout. - - The layout to use with this appender. - - - Obsolete constructor. - - - - - - Writes the logging event to the system. - - The event to log. - - - Writes the logging event to the system. - - - - - - Immediate flush means that the underlying writer or output stream - will be flushed at the end of each append operation. - - - - Immediate flush is slower but ensures that each append request is - actually written. If is set to - false, then there is a good chance that the last few - logs events are not actually written to persistent media if and - when the application crashes. - - - The default value is true. - - - - - Defaults to %logger - - - - - Gets or sets a value that indicates whether the appender will - flush at the end of each write. - - - The default behavior is to flush at the end of each - write. If the option is set tofalse, then the underlying - stream can defer writing to physical medium to a later time. - - - Avoiding the flush operation at the end of each append results - in a performance gain of 10 to 20 percent. However, there is safety - trade-off involved in skipping flushing. Indeed, when flushing is - skipped, then it is likely that the last few log events will not - be recorded on disk when the application exits. This is a high - price to pay even for a 20% performance gain. - - - - - - The category parameter sent to the Trace method. - - - - Defaults to %logger which will use the logger name of the current - as the category parameter. - - - - - - - - This appender requires a to be set. - - true - - - This appender requires a to be set. - - - - - - Assembly level attribute that specifies a domain to alias to this assembly's repository. - - - - AliasDomainAttribute is obsolete. Use AliasRepositoryAttribute instead of AliasDomainAttribute. - - - An assembly's logger repository is defined by its , - however this can be overridden by an assembly loaded before the target assembly. - - - An assembly can alias another assembly's domain to its repository by - specifying this attribute with the name of the target domain. - - - This attribute can only be specified on the assembly and may be used - as many times as necessary to alias all the required domains. - - - Nicko Cadell - Gert Driesen - - - - Assembly level attribute that specifies a repository to alias to this assembly's repository. - - - - An assembly's logger repository is defined by its , - however this can be overridden by an assembly loaded before the target assembly. - - - An assembly can alias another assembly's repository to its repository by - specifying this attribute with the name of the target repository. - - - This attribute can only be specified on the assembly and may be used - as many times as necessary to alias all the required repositories. - - - Nicko Cadell - Gert Driesen - - - - Initializes a new instance of the class with - the specified repository to alias to this assembly's repository. - - The repository to alias to this assemby's repository. - - - Initializes a new instance of the class with - the specified repository to alias to this assembly's repository. - - - - - - Gets or sets the repository to alias to this assemby's repository. - - - The repository to alias to this assemby's repository. - - - - The name of the repository to alias to this assemby's repository. - - - - - - Initializes a new instance of the class with - the specified domain to alias to this assembly's repository. - - The domain to alias to this assemby's repository. - - - Obsolete. Use instead of . - - - - - - Use this class to quickly configure a . - - - - Allows very simple programmatic configuration of log4net. - - - Only one appender can be configured using this configurator. - The appender is set at the root of the hierarchy and all logging - events will be delivered to that appender. - - - Appenders can also implement the interface. Therefore - they would require that the method - be called after the appenders properties have been configured. - - - Nicko Cadell - Gert Driesen - - - - The fully qualified type of the BasicConfigurator class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Initializes a new instance of the class. - - - - Uses a private access modifier to prevent instantiation of this class. - - - - - - Initializes the log4net system with a default configuration. - - - - Initializes the log4net logging system using a - that will write to Console.Out. The log messages are - formatted using the layout object - with the - layout style. - - - - - - Initializes the log4net system using the specified appender. - - The appender to use to log all logging events. - - - Initializes the log4net system using the specified appender. - - - - - - Initializes the log4net system using the specified appenders. - - The appenders to use to log all logging events. - - - Initializes the log4net system using the specified appenders. - - - - - - Initializes the with a default configuration. - - The repository to configure. - - - Initializes the specified repository using a - that will write to Console.Out. The log messages are - formatted using the layout object - with the - layout style. - - - - - - Initializes the using the specified appender. - - The repository to configure. - The appender to use to log all logging events. - - - Initializes the using the specified appender. - - - - - - Initializes the using the specified appenders. - - The repository to configure. - The appenders to use to log all logging events. - - - Initializes the using the specified appender. - - - - - - Base class for all log4net configuration attributes. - - - This is an abstract class that must be extended by - specific configurators. This attribute allows the - configurator to be parameterized by an assembly level - attribute. - - Nicko Cadell - Gert Driesen - - - - Constructor used by subclasses. - - the ordering priority for this configurator - - - The is used to order the configurator - attributes before they are invoked. Higher priority configurators are executed - before lower priority ones. - - - - - - Configures the for the specified assembly. - - The assembly that this attribute was defined on. - The repository to configure. - - - Abstract method implemented by a subclass. When this method is called - the subclass should configure the . - - - - - - Compare this instance to another ConfiguratorAttribute - - the object to compare to - see - - - Compares the priorities of the two instances. - Sorts by priority in descending order. Objects with the same priority are - randomly ordered. - - - - - - Assembly level attribute that specifies the logging domain for the assembly. - - - - DomainAttribute is obsolete. Use RepositoryAttribute instead of DomainAttribute. - - - Assemblies are mapped to logging domains. Each domain has its own - logging repository. This attribute specified on the assembly controls - the configuration of the domain. The property specifies the name - of the domain that this assembly is a part of. The - specifies the type of the repository objects to create for the domain. If - this attribute is not specified and a is not specified - then the assembly will be part of the default shared logging domain. - - - This attribute can only be specified on the assembly and may only be used - once per assembly. - - - Nicko Cadell - Gert Driesen - - - - Assembly level attribute that specifies the logging repository for the assembly. - - - - Assemblies are mapped to logging repository. This attribute specified - on the assembly controls - the configuration of the repository. The property specifies the name - of the repository that this assembly is a part of. The - specifies the type of the object - to create for the assembly. If this attribute is not specified or a - is not specified then the assembly will be part of the default shared logging repository. - - - This attribute can only be specified on the assembly and may only be used - once per assembly. - - - Nicko Cadell - Gert Driesen - - - - Initializes a new instance of the class. - - - - Default constructor. - - - - - - Initialize a new instance of the class - with the name of the repository. - - The name of the repository. - - - Initialize the attribute with the name for the assembly's repository. - - - - - - Gets or sets the name of the logging repository. - - - The string name to use as the name of the repository associated with this - assembly. - - - - This value does not have to be unique. Several assemblies can share the - same repository. They will share the logging configuration of the repository. - - - - - - Gets or sets the type of repository to create for this assembly. - - - The type of repository to create for this assembly. - - - - The type of the repository to create for the assembly. - The type must implement the - interface. - - - This will be the type of repository created when - the repository is created. If multiple assemblies reference the - same repository then the repository is only created once using the - of the first assembly to call into the - repository. - - - - - - Initializes a new instance of the class. - - - - Obsolete. Use RepositoryAttribute instead of DomainAttribute. - - - - - - Initialize a new instance of the class - with the name of the domain. - - The name of the domain. - - - Obsolete. Use RepositoryAttribute instead of DomainAttribute. - - - - - - Use this class to initialize the log4net environment using an Xml tree. - - - - DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator. - - - Configures a using an Xml tree. - - - Nicko Cadell - Gert Driesen - - - - Private constructor - - - - - Automatically configures the log4net system based on the - application's configuration settings. - - - - DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator. - - Each application has a configuration file. This has the - same name as the application with '.config' appended. - This file is XML and calling this function prompts the - configurator to look in that file for a section called - log4net that contains the configuration data. - - - - - Automatically configures the using settings - stored in the application's configuration file. - - - - DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator. - - Each application has a configuration file. This has the - same name as the application with '.config' appended. - This file is XML and calling this function prompts the - configurator to look in that file for a section called - log4net that contains the configuration data. - - The repository to configure. - - - - Configures log4net using a log4net element - - - - DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator. - - Loads the log4net configuration from the XML element - supplied as . - - The element to parse. - - - - Configures the using the specified XML - element. - - - - DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator. - - Loads the log4net configuration from the XML element - supplied as . - - The repository to configure. - The element to parse. - - - - Configures log4net using the specified configuration file. - - The XML file to load the configuration from. - - - DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator. - - - The configuration file must be valid XML. It must contain - at least one element called log4net that holds - the log4net configuration data. - - - The log4net configuration file can possible be specified in the application's - configuration file (either MyAppName.exe.config for a - normal application on Web.config for an ASP.NET application). - - - The following example configures log4net using a configuration file, of which the - location is stored in the application's configuration file : - - - using log4net.Config; - using System.IO; - using System.Configuration; - - ... - - DOMConfigurator.Configure(new FileInfo(ConfigurationSettings.AppSettings["log4net-config-file"])); - - - In the .config file, the path to the log4net can be specified like this : - - - - - - - - - - - - - Configures log4net using the specified configuration file. - - A stream to load the XML configuration from. - - - DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator. - - - The configuration data must be valid XML. It must contain - at least one element called log4net that holds - the log4net configuration data. - - - Note that this method will NOT close the stream parameter. - - - - - - Configures the using the specified configuration - file. - - The repository to configure. - The XML file to load the configuration from. - - - DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator. - - - The configuration file must be valid XML. It must contain - at least one element called log4net that holds - the configuration data. - - - The log4net configuration file can possible be specified in the application's - configuration file (either MyAppName.exe.config for a - normal application on Web.config for an ASP.NET application). - - - The following example configures log4net using a configuration file, of which the - location is stored in the application's configuration file : - - - using log4net.Config; - using System.IO; - using System.Configuration; - - ... - - DOMConfigurator.Configure(new FileInfo(ConfigurationSettings.AppSettings["log4net-config-file"])); - - - In the .config file, the path to the log4net can be specified like this : - - - - - - - - - - - - - Configures the using the specified configuration - file. - - The repository to configure. - The stream to load the XML configuration from. - - - DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator. - - - The configuration data must be valid XML. It must contain - at least one element called log4net that holds - the configuration data. - - - Note that this method will NOT close the stream parameter. - - - - - - Configures log4net using the file specified, monitors the file for changes - and reloads the configuration if a change is detected. - - The XML file to load the configuration from. - - - DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator. - - - The configuration file must be valid XML. It must contain - at least one element called log4net that holds - the configuration data. - - - The configuration file will be monitored using a - and depends on the behavior of that class. - - - For more information on how to configure log4net using - a separate configuration file, see . - - - - - - - Configures the using the file specified, - monitors the file for changes and reloads the configuration if a change - is detected. - - The repository to configure. - The XML file to load the configuration from. - - - DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator. - - - The configuration file must be valid XML. It must contain - at least one element called log4net that holds - the configuration data. - - - The configuration file will be monitored using a - and depends on the behavior of that class. - - - For more information on how to configure log4net using - a separate configuration file, see . - - - - - - - Assembly level attribute to configure the . - - - - AliasDomainAttribute is obsolete. Use AliasRepositoryAttribute instead of AliasDomainAttribute. - - - This attribute may only be used at the assembly scope and can only - be used once per assembly. - - - Use this attribute to configure the - without calling one of the - methods. - - - Nicko Cadell - Gert Driesen - - - - Assembly level attribute to configure the . - - - - This attribute may only be used at the assembly scope and can only - be used once per assembly. - - - Use this attribute to configure the - without calling one of the - methods. - - - If neither of the or - properties are set the configuration is loaded from the application's .config file. - If set the property takes priority over the - property. The property - specifies a path to a file to load the config from. The path is relative to the - application's base directory; . - The property is used as a postfix to the assembly file name. - The config file must be located in the application's base directory; . - For example in a console application setting the to - config has the same effect as not specifying the or - properties. - - - The property can be set to cause the - to watch the configuration file for changes. - - - - Log4net will only look for assembly level configuration attributes once. - When using the log4net assembly level attributes to control the configuration - of log4net you must ensure that the first call to any of the - methods is made from the assembly with the configuration - attributes. - - - If you cannot guarantee the order in which log4net calls will be made from - different assemblies you must use programmatic configuration instead, i.e. - call the method directly. - - - - Nicko Cadell - Gert Driesen - - - - Default constructor - - - - Default constructor - - - - - - Configures the for the specified assembly. - - The assembly that this attribute was defined on. - The repository to configure. - - - Configure the repository using the . - The specified must extend the - class otherwise the will not be able to - configure it. - - - The does not extend . - - - - Attempt to load configuration from the local file system - - The assembly that this attribute was defined on. - The repository to configure. - - - - Configure the specified repository using a - - The repository to configure. - the FileInfo pointing to the config file - - - - Attempt to load configuration from a URI - - The assembly that this attribute was defined on. - The repository to configure. - - - - The fully qualified type of the XmlConfiguratorAttribute class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Gets or sets the filename of the configuration file. - - - The filename of the configuration file. - - - - If specified, this is the name of the configuration file to use with - the . This file path is relative to the - application base directory (). - - - The takes priority over the . - - - - - - Gets or sets the extension of the configuration file. - - - The extension of the configuration file. - - - - If specified this is the extension for the configuration file. - The path to the config file is built by using the application - base directory (), - the assembly file name and the config file extension. - - - If the is set to MyExt then - possible config file names would be: MyConsoleApp.exe.MyExt or - MyClassLibrary.dll.MyExt. - - - The takes priority over the . - - - - - - Gets or sets a value indicating whether to watch the configuration file. - - - true if the configuration should be watched, false otherwise. - - - - If this flag is specified and set to true then the framework - will watch the configuration file and will reload the config each time - the file is modified. - - - The config file can only be watched if it is loaded from local disk. - In a No-Touch (Smart Client) deployment where the application is downloaded - from a web server the config file may not reside on the local disk - and therefore it may not be able to watch it. - - - Watching configuration is not supported on the SSCLI. - - - - - - Class to register for the log4net section of the configuration file - - - The log4net section of the configuration file needs to have a section - handler registered. This is the section handler used. It simply returns - the XML element that is the root of the section. - - - Example of registering the log4net section handler : - - - -
- - - log4net configuration XML goes here - - - - - Nicko Cadell - Gert Driesen - - - - Initializes a new instance of the class. - - - - Default constructor. - - - - - - Parses the configuration section. - - The configuration settings in a corresponding parent configuration section. - The configuration context when called from the ASP.NET configuration system. Otherwise, this parameter is reserved and is a null reference. - The for the log4net section. - The for the log4net section. - - - Returns the containing the configuration data, - - - - - - Assembly level attribute that specifies a plugin to attach to - the repository. - - - - Specifies the type of a plugin to create and attach to the - assembly's repository. The plugin type must implement the - interface. - - - Nicko Cadell - Gert Driesen - - - - Interface used to create plugins. - - - - Interface used to create a plugin. - - - Nicko Cadell - Gert Driesen - - - - Creates the plugin object. - - the new plugin instance - - - Create and return a new plugin instance. - - - - - - Initializes a new instance of the class - with the specified type. - - The type name of plugin to create. - - - Create the attribute with the plugin type specified. - - - Where possible use the constructor that takes a . - - - - - - Initializes a new instance of the class - with the specified type. - - The type of plugin to create. - - - Create the attribute with the plugin type specified. - - - - - - Creates the plugin object defined by this attribute. - - - - Creates the instance of the object as - specified by this attribute. - - - The plugin object. - - - - Returns a representation of the properties of this object. - - - - Overrides base class method to - return a representation of the properties of this object. - - - A representation of the properties of this object - - - - Gets or sets the type for the plugin. - - - The type for the plugin. - - - - The type for the plugin. - - - - - - Gets or sets the type name for the plugin. - - - The type name for the plugin. - - - - The type name for the plugin. - - - Where possible use the property instead. - - - - - - Assembly level attribute to configure the . - - - - This attribute may only be used at the assembly scope and can only - be used once per assembly. - - - Use this attribute to configure the - without calling one of the - methods. - - - Nicko Cadell - - - - Construct provider attribute with type specified - - the type of the provider to use - - - The provider specified must subclass the - class. - - - - - - Configures the SecurityContextProvider - - The assembly that this attribute was defined on. - The repository to configure. - - - Creates a provider instance from the specified. - Sets this as the default security context provider . - - - - - - The fully qualified type of the SecurityContextProviderAttribute class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Gets or sets the type of the provider to use. - - - the type of the provider to use. - - - - The provider specified must subclass the - class. - - - - - - Use this class to initialize the log4net environment using an Xml tree. - - - - Configures a using an Xml tree. - - - Nicko Cadell - Gert Driesen - - - - Private constructor - - - - - Automatically configures the log4net system based on the - application's configuration settings. - - - - Each application has a configuration file. This has the - same name as the application with '.config' appended. - This file is XML and calling this function prompts the - configurator to look in that file for a section called - log4net that contains the configuration data. - - - To use this method to configure log4net you must specify - the section - handler for the log4net configuration section. See the - for an example. - - - - - - - Automatically configures the using settings - stored in the application's configuration file. - - - - Each application has a configuration file. This has the - same name as the application with '.config' appended. - This file is XML and calling this function prompts the - configurator to look in that file for a section called - log4net that contains the configuration data. - - - To use this method to configure log4net you must specify - the section - handler for the log4net configuration section. See the - for an example. - - - The repository to configure. - - - - Configures log4net using a log4net element - - - - Loads the log4net configuration from the XML element - supplied as . - - - The element to parse. - - - - Configures the using the specified XML - element. - - - Loads the log4net configuration from the XML element - supplied as . - - The repository to configure. - The element to parse. - - - - Configures log4net using the specified configuration file. - - The XML file to load the configuration from. - - - The configuration file must be valid XML. It must contain - at least one element called log4net that holds - the log4net configuration data. - - - The log4net configuration file can possible be specified in the application's - configuration file (either MyAppName.exe.config for a - normal application on Web.config for an ASP.NET application). - - - The first element matching <configuration> will be read as the - configuration. If this file is also a .NET .config file then you must specify - a configuration section for the log4net element otherwise .NET will - complain. Set the type for the section handler to , for example: - - -
- - - - - The following example configures log4net using a configuration file, of which the - location is stored in the application's configuration file : - - - using log4net.Config; - using System.IO; - using System.Configuration; - - ... - - XmlConfigurator.Configure(new FileInfo(ConfigurationSettings.AppSettings["log4net-config-file"])); - - - In the .config file, the path to the log4net can be specified like this : - - - - - - - - - - - - - Configures log4net using the specified configuration URI. - - A URI to load the XML configuration from. - - - The configuration data must be valid XML. It must contain - at least one element called log4net that holds - the log4net configuration data. - - - The must support the URI scheme specified. - - - - - - Configures log4net using the specified configuration data stream. - - A stream to load the XML configuration from. - - - The configuration data must be valid XML. It must contain - at least one element called log4net that holds - the log4net configuration data. - - - Note that this method will NOT close the stream parameter. - - - - - - Configures the using the specified configuration - file. - - The repository to configure. - The XML file to load the configuration from. - - - The configuration file must be valid XML. It must contain - at least one element called log4net that holds - the configuration data. - - - The log4net configuration file can possible be specified in the application's - configuration file (either MyAppName.exe.config for a - normal application on Web.config for an ASP.NET application). - - - The first element matching <configuration> will be read as the - configuration. If this file is also a .NET .config file then you must specify - a configuration section for the log4net element otherwise .NET will - complain. Set the type for the section handler to , for example: - - -
- - - - - The following example configures log4net using a configuration file, of which the - location is stored in the application's configuration file : - - - using log4net.Config; - using System.IO; - using System.Configuration; - - ... - - XmlConfigurator.Configure(new FileInfo(ConfigurationSettings.AppSettings["log4net-config-file"])); - - - In the .config file, the path to the log4net can be specified like this : - - - - - - - - - - - - - Configures the using the specified configuration - URI. - - The repository to configure. - A URI to load the XML configuration from. - - - The configuration data must be valid XML. It must contain - at least one element called log4net that holds - the configuration data. - - - The must support the URI scheme specified. - - - - - - Configures the using the specified configuration - file. - - The repository to configure. - The stream to load the XML configuration from. - - - The configuration data must be valid XML. It must contain - at least one element called log4net that holds - the configuration data. - - - Note that this method will NOT close the stream parameter. - - - - - - Configures log4net using the file specified, monitors the file for changes - and reloads the configuration if a change is detected. - - The XML file to load the configuration from. - - - The configuration file must be valid XML. It must contain - at least one element called log4net that holds - the configuration data. - - - The configuration file will be monitored using a - and depends on the behavior of that class. - - - For more information on how to configure log4net using - a separate configuration file, see . - - - - - - - Configures the using the file specified, - monitors the file for changes and reloads the configuration if a change - is detected. - - The repository to configure. - The XML file to load the configuration from. - - - The configuration file must be valid XML. It must contain - at least one element called log4net that holds - the configuration data. - - - The configuration file will be monitored using a - and depends on the behavior of that class. - - - For more information on how to configure log4net using - a separate configuration file, see . - - - - - - - Configures the specified repository using a log4net element. - - The hierarchy to configure. - The element to parse. - - - Loads the log4net configuration from the XML element - supplied as . - - - This method is ultimately called by one of the Configure methods - to load the configuration from an . - - - - - - Maps repository names to ConfigAndWatchHandler instances to allow a particular - ConfigAndWatchHandler to dispose of its FileSystemWatcher when a repository is - reconfigured. - - - - - The fully qualified type of the XmlConfigurator class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Class used to watch config files. - - - - Uses the to monitor - changes to a specified file. Because multiple change notifications - may be raised when the file is modified, a timer is used to - compress the notifications into a single event. The timer - waits for time before delivering - the event notification. If any further - change notifications arrive while the timer is waiting it - is reset and waits again for to - elapse. - - - - - - The default amount of time to wait after receiving notification - before reloading the config file. - - - - - Holds the FileInfo used to configure the XmlConfigurator - - - - - Holds the repository being configured. - - - - - The timer used to compress the notification events. - - - - - Watches file for changes. This object should be disposed when no longer - needed to free system handles on the watched resources. - - - - - Initializes a new instance of the class to - watch a specified config file used to configure a repository. - - The repository to configure. - The configuration file to watch. - - - Initializes a new instance of the class. - - - - - - Event handler used by . - - The firing the event. - The argument indicates the file that caused the event to be fired. - - - This handler reloads the configuration from the file when the event is fired. - - - - - - Event handler used by . - - The firing the event. - The argument indicates the file that caused the event to be fired. - - - This handler reloads the configuration from the file when the event is fired. - - - - - - Called by the timer when the configuration has been updated. - - null - - - - Release the handles held by the watcher and timer. - - - - - The implementation of the interface suitable - for use with the compact framework - - - - This implementation is a simple - mapping between repository name and - object. - - - The .NET Compact Framework 1.0 does not support retrieving assembly - level attributes therefore unlike the DefaultRepositorySelector - this selector does not examine the calling assembly for attributes. - - - Nicko Cadell - - - - Interface used by the to select the . - - - - The uses a - to specify the policy for selecting the correct - to return to the caller. - - - Nicko Cadell - Gert Driesen - - - - Gets the for the specified assembly. - - The assembly to use to lookup to the - The for the assembly. - - - Gets the for the specified assembly. - - - How the association between and - is made is not defined. The implementation may choose any method for - this association. The results of this method must be repeatable, i.e. - when called again with the same arguments the result must be the - save value. - - - - - - Gets the named . - - The name to use to lookup to the . - The named - - Lookup a named . This is the repository created by - calling . - - - - - Creates a new repository for the assembly specified. - - The assembly to use to create the domain to associate with the . - The type of repository to create, must implement . - The repository created. - - - The created will be associated with the domain - specified such that a call to with the - same assembly specified will return the same repository instance. - - - How the association between and - is made is not defined. The implementation may choose any method for - this association. - - - - - - Creates a new repository with the name specified. - - The name to associate with the . - The type of repository to create, must implement . - The repository created. - - - The created will be associated with the name - specified such that a call to with the - same name will return the same repository instance. - - - - - - Test if a named repository exists - - the named repository to check - true if the repository exists - - - Test if a named repository exists. Use - to create a new repository and to retrieve - a repository. - - - - - - Gets an array of all currently defined repositories. - - - An array of the instances created by - this . - - - Gets an array of all of the repositories created by this selector. - - - - - - Event to notify that a logger repository has been created. - - - Event to notify that a logger repository has been created. - - - - Event raised when a new repository is created. - The event source will be this selector. The event args will - be a which - holds the newly created . - - - - - - Create a new repository selector - - the type of the repositories to create, must implement - - - Create an new compact repository selector. - The default type for repositories must be specified, - an appropriate value would be . - - - throw if is null - throw if does not implement - - - - Get the for the specified assembly - - not used - The default - - - The argument is not used. This selector does not create a - separate repository for each assembly. - - - As a named repository is not specified the default repository is - returned. The default repository is named log4net-default-repository. - - - - - - Get the named - - the name of the repository to lookup - The named - - - Get the named . The default - repository is log4net-default-repository. Other repositories - must be created using the . - If the named repository does not exist an exception is thrown. - - - throw if is null - throw if the does not exist - - - - Create a new repository for the assembly specified - - not used - the type of repository to create, must implement - the repository created - - - The argument is not used. This selector does not create a - separate repository for each assembly. - - - If the is null then the - default repository type specified to the constructor is used. - - - As a named repository is not specified the default repository is - returned. The default repository is named log4net-default-repository. - - - - - - Create a new repository for the repository specified - - the repository to associate with the - the type of repository to create, must implement . - If this param is null then the default repository type is used. - the repository created - - - The created will be associated with the repository - specified such that a call to with the - same repository specified will return the same repository instance. - - - If the named repository already exists an exception will be thrown. - - - If is null then the default - repository type specified to the constructor is used. - - - throw if is null - throw if the already exists - - - - Test if a named repository exists - - the named repository to check - true if the repository exists - - - Test if a named repository exists. Use - to create a new repository and to retrieve - a repository. - - - - - - Gets a list of objects - - an array of all known objects - - - Gets an array of all of the repositories created by this selector. - - - - - - The fully qualified type of the CompactRepositorySelector class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Notify the registered listeners that the repository has been created - - The repository that has been created - - - Raises the LoggerRepositoryCreatedEvent - event. - - - - - - Event to notify that a logger repository has been created. - - - Event to notify that a logger repository has been created. - - - - Event raised when a new repository is created. - The event source will be this selector. The event args will - be a which - holds the newly created . - - - - - - The default implementation of the interface. - - - - Uses attributes defined on the calling assembly to determine how to - configure the hierarchy for the repository. - - - Nicko Cadell - Gert Driesen - - - - Creates a new repository selector. - - The type of the repositories to create, must implement - - - Create an new repository selector. - The default type for repositories must be specified, - an appropriate value would be . - - - is . - does not implement . - - - - Gets the for the specified assembly. - - The assembly use to lookup the . - - - The type of the created and the repository - to create can be overridden by specifying the - attribute on the . - - - The default values are to use the - implementation of the interface and to use the - as the name of the repository. - - - The created will be automatically configured using - any attributes defined on - the . - - - The for the assembly - is . - - - - Gets the for the specified repository. - - The repository to use to lookup the . - The for the specified repository. - - - Returns the named repository. If is null - a is thrown. If the repository - does not exist a is thrown. - - - Use to create a repository. - - - is . - does not exist. - - - - Create a new repository for the assembly specified - - the assembly to use to create the repository to associate with the . - The type of repository to create, must implement . - The repository created. - - - The created will be associated with the repository - specified such that a call to with the - same assembly specified will return the same repository instance. - - - The type of the created and - the repository to create can be overridden by specifying the - attribute on the - . The default values are to use the - implementation of the - interface and to use the - as the name of the repository. - - - The created will be automatically - configured using any - attributes defined on the . - - - If a repository for the already exists - that repository will be returned. An error will not be raised and that - repository may be of a different type to that specified in . - Also the attribute on the - assembly may be used to override the repository type specified in - . - - - is . - - - - Creates a new repository for the assembly specified. - - the assembly to use to create the repository to associate with the . - The type of repository to create, must implement . - The name to assign to the created repository - Set to true to read and apply the assembly attributes - The repository created. - - - The created will be associated with the repository - specified such that a call to with the - same assembly specified will return the same repository instance. - - - The type of the created and - the repository to create can be overridden by specifying the - attribute on the - . The default values are to use the - implementation of the - interface and to use the - as the name of the repository. - - - The created will be automatically - configured using any - attributes defined on the . - - - If a repository for the already exists - that repository will be returned. An error will not be raised and that - repository may be of a different type to that specified in . - Also the attribute on the - assembly may be used to override the repository type specified in - . - - - is . - - - - Creates a new repository for the specified repository. - - The repository to associate with the . - The type of repository to create, must implement . - If this param is then the default repository type is used. - The new repository. - - - The created will be associated with the repository - specified such that a call to with the - same repository specified will return the same repository instance. - - - is . - already exists. - - - - Test if a named repository exists - - the named repository to check - true if the repository exists - - - Test if a named repository exists. Use - to create a new repository and to retrieve - a repository. - - - - - - Gets a list of objects - - an array of all known objects - - - Gets an array of all of the repositories created by this selector. - - - - - - Aliases a repository to an existing repository. - - The repository to alias. - The repository that the repository is aliased to. - - - The repository specified will be aliased to the repository when created. - The repository must not already exist. - - - When the repository is created it must utilize the same repository type as - the repository it is aliased to, otherwise the aliasing will fail. - - - - is . - -or- - is . - - - - - Notifies the registered listeners that the repository has been created. - - The repository that has been created. - - - Raises the event. - - - - - - Gets the repository name and repository type for the specified assembly. - - The assembly that has a . - in/out param to hold the repository name to use for the assembly, caller should set this to the default value before calling. - in/out param to hold the type of the repository to create for the assembly, caller should set this to the default value before calling. - is . - - - - Configures the repository using information from the assembly. - - The assembly containing - attributes which define the configuration for the repository. - The repository to configure. - - is . - -or- - is . - - - - - Loads the attribute defined plugins on the assembly. - - The assembly that contains the attributes. - The repository to add the plugins to. - - is . - -or- - is . - - - - - Loads the attribute defined aliases on the assembly. - - The assembly that contains the attributes. - The repository to alias to. - - is . - -or- - is . - - - - - The fully qualified type of the DefaultRepositorySelector class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Event to notify that a logger repository has been created. - - - Event to notify that a logger repository has been created. - - - - Event raised when a new repository is created. - The event source will be this selector. The event args will - be a which - holds the newly created . - - - - - - Defined error codes that can be passed to the method. - - - - Values passed to the method. - - - Nicko Cadell - - - - A general error - - - - - Error while writing output - - - - - Failed to flush file - - - - - Failed to close file - - - - - Unable to open output file - - - - - No layout specified - - - - - Failed to parse address - - - - - An evaluator that triggers on an Exception type - - - - This evaluator will trigger if the type of the Exception - passed to - is equal to a Type in . /// - - - Drew Schaeffer - - - - Test if an triggers an action - - - - Implementations of this interface allow certain appenders to decide - when to perform an appender specific action. - - - The action or behavior triggered is defined by the implementation. - - - Nicko Cadell - - - - Test if this event triggers the action - - The event to check - true if this event triggers the action, otherwise false - - - Return true if this event triggers the action - - - - - - The type that causes the trigger to fire. - - - - - Causes subclasses of to cause the trigger to fire. - - - - - Default ctor to allow dynamic creation through a configurator. - - - - - Constructs an evaluator and initializes to trigger on - - the type that triggers this evaluator. - If true, this evaluator will trigger on subclasses of . - - - - Is this the triggering event? - - The event to check - This method returns true, if the logging event Exception - Type is . - Otherwise it returns false - - - This evaluator will trigger if the Exception Type of the event - passed to - is . - - - - - - The type that triggers this evaluator. - - - - - If true, this evaluator will trigger on subclasses of . - - - - - Appenders may delegate their error handling to an . - - - - Error handling is a particularly tedious to get right because by - definition errors are hard to predict and to reproduce. - - - Nicko Cadell - Gert Driesen - - - - Handles the error and information about the error condition is passed as - a parameter. - - The message associated with the error. - The that was thrown when the error occurred. - The error code associated with the error. - - - Handles the error and information about the error condition is passed as - a parameter. - - - - - - Prints the error message passed as a parameter. - - The message associated with the error. - The that was thrown when the error occurred. - - - See . - - - - - - Prints the error message passed as a parameter. - - The message associated with the error. - - - See . - - - - - - Interface for objects that require fixing. - - - - Interface that indicates that the object requires fixing before it - can be taken outside the context of the appender's - method. - - - When objects that implement this interface are stored - in the context properties maps - and - are fixed - (see ) the - method will be called. - - - Nicko Cadell - - - - Get a portable version of this object - - the portable instance of this object - - - Get a portable instance object that represents the current - state of this object. The portable object can be stored - and logged from any thread with identical results. - - - - - - Interface that all loggers implement - - - - This interface supports logging events and testing if a level - is enabled for logging. - - - These methods will not throw exceptions. Note to implementor, ensure - that the implementation of these methods cannot allow an exception - to be thrown to the caller. - - - Nicko Cadell - Gert Driesen - - - - This generic form is intended to be used by wrappers. - - The declaring type of the method that is - the stack boundary into the logging system for this call. - The level of the message to be logged. - The message object to log. - the exception to log, including its stack trace. Pass null to not log an exception. - - - Generates a logging event for the specified using - the and . - - - - - - This is the most generic printing method that is intended to be used - by wrappers. - - The event being logged. - - - Logs the specified logging event through this logger. - - - - - - Checks if this logger is enabled for a given passed as parameter. - - The level to check. - - true if this logger is enabled for level, otherwise false. - - - - Test if this logger is going to log events of the specified . - - - - - - Gets the name of the logger. - - - The name of the logger. - - - - The name of this logger - - - - - - Gets the where this - Logger instance is attached to. - - - The that this logger belongs to. - - - - Gets the where this - Logger instance is attached to. - - - - - - Base interface for all wrappers - - - - Base interface for all wrappers. - - - All wrappers must implement this interface. - - - Nicko Cadell - - - - Get the implementation behind this wrapper object. - - - The object that in implementing this object. - - - - The object that in implementing this - object. The Logger object may not - be the same object as this object because of logger decorators. - This gets the actual underlying objects that is used to process - the log events. - - - - - - Delegate used to handle logger repository creation event notifications - - The which created the repository. - The event args - that holds the instance that has been created. - - - Delegate used to handle logger repository creation event notifications. - - - - - - Provides data for the event. - - - - A - event is raised every time a is created. - - - - - - The created - - - - - Construct instance using specified - - the that has been created - - - Construct instance using specified - - - - - - The that has been created - - - The that has been created - - - - The that has been created - - - - - - Defines the default set of levels recognized by the system. - - - - Each has an associated . - - - Levels have a numeric that defines the relative - ordering between levels. Two Levels with the same - are deemed to be equivalent. - - - The levels that are recognized by log4net are set for each - and each repository can have different levels defined. The levels are stored - in the on the repository. Levels are - looked up by name from the . - - - When logging at level INFO the actual level used is not but - the value of LoggerRepository.LevelMap["INFO"]. The default value for this is - , but this can be changed by reconfiguring the level map. - - - Each level has a in addition to its . The - is the string that is written into the output log. By default - the display name is the same as the level name, but this can be used to alias levels - or to localize the log output. - - - Some of the predefined levels recognized by the system are: - - - - . - - - . - - - . - - - . - - - . - - - . - - - . - - - - Nicko Cadell - Gert Driesen - - - - Constructor - - Integer value for this level, higher values represent more severe levels. - The string name of this level. - The display name for this level. This may be localized or otherwise different from the name - - - Initializes a new instance of the class with - the specified level name and value. - - - - - - Constructor - - Integer value for this level, higher values represent more severe levels. - The string name of this level. - - - Initializes a new instance of the class with - the specified level name and value. - - - - - - Returns the representation of the current - . - - - A representation of the current . - - - - Returns the level . - - - - - - Compares levels. - - The object to compare against. - true if the objects are equal. - - - Compares the levels of instances, and - defers to base class if the target object is not a - instance. - - - - - - Returns a hash code - - A hash code for the current . - - - Returns a hash code suitable for use in hashing algorithms and data - structures like a hash table. - - - Returns the hash code of the level . - - - - - - Compares this instance to a specified object and returns an - indication of their relative values. - - A instance or to compare with this instance. - - A 32-bit signed integer that indicates the relative order of the - values compared. The return value has these meanings: - - - Value - Meaning - - - Less than zero - This instance is less than . - - - Zero - This instance is equal to . - - - Greater than zero - - This instance is greater than . - -or- - is . - - - - - - - must be an instance of - or ; otherwise, an exception is thrown. - - - is not a . - - - - Returns a value indicating whether a specified - is greater than another specified . - - A - A - - true if is greater than - ; otherwise, false. - - - - Compares two levels. - - - - - - Returns a value indicating whether a specified - is less than another specified . - - A - A - - true if is less than - ; otherwise, false. - - - - Compares two levels. - - - - - - Returns a value indicating whether a specified - is greater than or equal to another specified . - - A - A - - true if is greater than or equal to - ; otherwise, false. - - - - Compares two levels. - - - - - - Returns a value indicating whether a specified - is less than or equal to another specified . - - A - A - - true if is less than or equal to - ; otherwise, false. - - - - Compares two levels. - - - - - - Returns a value indicating whether two specified - objects have the same value. - - A or . - A or . - - true if the value of is the same as the - value of ; otherwise, false. - - - - Compares two levels. - - - - - - Returns a value indicating whether two specified - objects have different values. - - A or . - A or . - - true if the value of is different from - the value of ; otherwise, false. - - - - Compares two levels. - - - - - - Compares two specified instances. - - The first to compare. - The second to compare. - - A 32-bit signed integer that indicates the relative order of the - two values compared. The return value has these meanings: - - - Value - Meaning - - - Less than zero - is less than . - - - Zero - is equal to . - - - Greater than zero - is greater than . - - - - - - Compares two levels. - - - - - - The level designates a higher level than all the rest. - - - - - The level designates very severe error events. - System unusable, emergencies. - - - - - The level designates very severe error events. - System unusable, emergencies. - - - - - The level designates very severe error events - that will presumably lead the application to abort. - - - - - The level designates very severe error events. - Take immediate action, alerts. - - - - - The level designates very severe error events. - Critical condition, critical. - - - - - The level designates very severe error events. - - - - - The level designates error events that might - still allow the application to continue running. - - - - - The level designates potentially harmful - situations. - - - - - The level designates informational messages - that highlight the progress of the application at the highest level. - - - - - The level designates informational messages that - highlight the progress of the application at coarse-grained level. - - - - - The level designates fine-grained informational - events that are most useful to debug an application. - - - - - The level designates fine-grained informational - events that are most useful to debug an application. - - - - - The level designates fine-grained informational - events that are most useful to debug an application. - - - - - The level designates fine-grained informational - events that are most useful to debug an application. - - - - - The level designates fine-grained informational - events that are most useful to debug an application. - - - - - The level designates fine-grained informational - events that are most useful to debug an application. - - - - - The level designates the lowest level possible. - - - - - Gets the name of this level. - - - The name of this level. - - - - Gets the name of this level. - - - - - - Gets the value of this level. - - - The value of this level. - - - - Gets the value of this level. - - - - - - Gets the display name of this level. - - - The display name of this level. - - - - Gets the display name of this level. - - - - - - A strongly-typed collection of objects. - - Nicko Cadell - - - - Creates a read-only wrapper for a LevelCollection instance. - - list to create a readonly wrapper arround - - A LevelCollection wrapper that is read-only. - - - - - Initializes a new instance of the LevelCollection class - that is empty and has the default initial capacity. - - - - - Initializes a new instance of the LevelCollection class - that has the specified initial capacity. - - - The number of elements that the new LevelCollection is initially capable of storing. - - - - - Initializes a new instance of the LevelCollection class - that contains elements copied from the specified LevelCollection. - - The LevelCollection whose elements are copied to the new collection. - - - - Initializes a new instance of the LevelCollection class - that contains elements copied from the specified array. - - The array whose elements are copied to the new list. - - - - Initializes a new instance of the LevelCollection class - that contains elements copied from the specified collection. - - The collection whose elements are copied to the new list. - - - - Allow subclasses to avoid our default constructors - - - - - - Copies the entire LevelCollection to a one-dimensional - array. - - The one-dimensional array to copy to. - - - - Copies the entire LevelCollection to a one-dimensional - array, starting at the specified index of the target array. - - The one-dimensional array to copy to. - The zero-based index in at which copying begins. - - - - Adds a to the end of the LevelCollection. - - The to be added to the end of the LevelCollection. - The index at which the value has been added. - - - - Removes all elements from the LevelCollection. - - - - - Creates a shallow copy of the . - - A new with a shallow copy of the collection data. - - - - Determines whether a given is in the LevelCollection. - - The to check for. - true if is found in the LevelCollection; otherwise, false. - - - - Returns the zero-based index of the first occurrence of a - in the LevelCollection. - - The to locate in the LevelCollection. - - The zero-based index of the first occurrence of - in the entire LevelCollection, if found; otherwise, -1. - - - - - Inserts an element into the LevelCollection at the specified index. - - The zero-based index at which should be inserted. - The to insert. - - is less than zero - -or- - is equal to or greater than . - - - - - Removes the first occurrence of a specific from the LevelCollection. - - The to remove from the LevelCollection. - - The specified was not found in the LevelCollection. - - - - - Removes the element at the specified index of the LevelCollection. - - The zero-based index of the element to remove. - - is less than zero - -or- - is equal to or greater than . - - - - - Returns an enumerator that can iterate through the LevelCollection. - - An for the entire LevelCollection. - - - - Adds the elements of another LevelCollection to the current LevelCollection. - - The LevelCollection whose elements should be added to the end of the current LevelCollection. - The new of the LevelCollection. - - - - Adds the elements of a array to the current LevelCollection. - - The array whose elements should be added to the end of the LevelCollection. - The new of the LevelCollection. - - - - Adds the elements of a collection to the current LevelCollection. - - The collection whose elements should be added to the end of the LevelCollection. - The new of the LevelCollection. - - - - Sets the capacity to the actual number of elements. - - - - - is less than zero - -or- - is equal to or greater than . - - - - - is less than zero - -or- - is equal to or greater than . - - - - - Gets the number of elements actually contained in the LevelCollection. - - - - - Gets a value indicating whether access to the collection is synchronized (thread-safe). - - true if access to the ICollection is synchronized (thread-safe); otherwise, false. - - - - Gets an object that can be used to synchronize access to the collection. - - - - - Gets or sets the at the specified index. - - The zero-based index of the element to get or set. - - is less than zero - -or- - is equal to or greater than . - - - - - Gets a value indicating whether the collection has a fixed size. - - true if the collection has a fixed size; otherwise, false. The default is false - - - - Gets a value indicating whether the IList is read-only. - - true if the collection is read-only; otherwise, false. The default is false - - - - Gets or sets the number of elements the LevelCollection can contain. - - - - - Supports type-safe iteration over a . - - - - - Advances the enumerator to the next element in the collection. - - - true if the enumerator was successfully advanced to the next element; - false if the enumerator has passed the end of the collection. - - - The collection was modified after the enumerator was created. - - - - - Sets the enumerator to its initial position, before the first element in the collection. - - - - - Gets the current element in the collection. - - - - - Type visible only to our subclasses - Used to access protected constructor - - - - - A value - - - - - Supports simple iteration over a . - - - - - Initializes a new instance of the Enumerator class. - - - - - - Advances the enumerator to the next element in the collection. - - - true if the enumerator was successfully advanced to the next element; - false if the enumerator has passed the end of the collection. - - - The collection was modified after the enumerator was created. - - - - - Sets the enumerator to its initial position, before the first element in the collection. - - - - - Gets the current element in the collection. - - - - - An evaluator that triggers at a threshold level - - - - This evaluator will trigger if the level of the event - passed to - is equal to or greater than the - level. - - - Nicko Cadell - - - - The threshold for triggering - - - - - Create a new evaluator using the threshold. - - - - Create a new evaluator using the threshold. - - - This evaluator will trigger if the level of the event - passed to - is equal to or greater than the - level. - - - - - - Create a new evaluator using the specified threshold. - - the threshold to trigger at - - - Create a new evaluator using the specified threshold. - - - This evaluator will trigger if the level of the event - passed to - is equal to or greater than the - level. - - - - - - Is this the triggering event? - - The event to check - This method returns true, if the event level - is equal or higher than the . - Otherwise it returns false - - - This evaluator will trigger if the level of the event - passed to - is equal to or greater than the - level. - - - - - - the threshold to trigger at - - - The that will cause this evaluator to trigger - - - - This evaluator will trigger if the level of the event - passed to - is equal to or greater than the - level. - - - - - - Mapping between string name and Level object - - - - Mapping between string name and object. - This mapping is held separately for each . - The level name is case insensitive. - - - Nicko Cadell - - - - Mapping from level name to Level object. The - level name is case insensitive - - - - - Construct the level map - - - - Construct the level map. - - - - - - Clear the internal maps of all levels - - - - Clear the internal maps of all levels - - - - - - Create a new Level and add it to the map - - the string to display for the Level - the level value to give to the Level - - - Create a new Level and add it to the map - - - - - - - Create a new Level and add it to the map - - the string to display for the Level - the level value to give to the Level - the display name to give to the Level - - - Create a new Level and add it to the map - - - - - - Add a Level to the map - - the Level to add - - - Add a Level to the map - - - - - - Lookup a named level from the map - - the name of the level to lookup is taken from this level. - If the level is not set on the map then this level is added - the level in the map with the name specified - - - Lookup a named level from the map. The name of the level to lookup is taken - from the property of the - argument. - - - If no level with the specified name is found then the - argument is added to the level map - and returned. - - - - - - Lookup a by name - - The name of the Level to lookup - a Level from the map with the name specified - - - Returns the from the - map with the name specified. If the no level is - found then null is returned. - - - - - - Return all possible levels as a list of Level objects. - - all possible levels as a list of Level objects - - - Return all possible levels as a list of Level objects. - - - - - - The internal representation of caller location information. - - - - This class uses the System.Diagnostics.StackTrace class to generate - a call stack. The caller's information is then extracted from this stack. - - - The System.Diagnostics.StackTrace class is not supported on the - .NET Compact Framework 1.0 therefore caller location information is not - available on that framework. - - - The System.Diagnostics.StackTrace class has this to say about Release builds: - - - "StackTrace information will be most informative with Debug build configurations. - By default, Debug builds include debug symbols, while Release builds do not. The - debug symbols contain most of the file, method name, line number, and column - information used in constructing StackFrame and StackTrace objects. StackTrace - might not report as many method calls as expected, due to code transformations - that occur during optimization." - - - This means that in a Release build the caller information may be incomplete or may - not exist at all! Therefore caller location information cannot be relied upon in a Release build. - - - Nicko Cadell - Gert Driesen - - - - When location information is not available the constant - NA is returned. Current value of this string - constant is ?. - - - - - Constructor - - The declaring type of the method that is - the stack boundary into the logging system for this call. - - - Initializes a new instance of the - class based on the current thread. - - - - - - Constructor - - The fully qualified class name. - The method name. - The file name. - The line number of the method within the file. - - - Initializes a new instance of the - class with the specified data. - - - - - - The fully qualified type of the LocationInfo class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Gets the fully qualified class name of the caller making the logging - request. - - - The fully qualified class name of the caller making the logging - request. - - - - Gets the fully qualified class name of the caller making the logging - request. - - - - - - Gets the file name of the caller. - - - The file name of the caller. - - - - Gets the file name of the caller. - - - - - - Gets the line number of the caller. - - - The line number of the caller. - - - - Gets the line number of the caller. - - - - - - Gets the method name of the caller. - - - The method name of the caller. - - - - Gets the method name of the caller. - - - - - - Gets all available caller information - - - All available caller information, in the format - fully.qualified.classname.of.caller.methodName(Filename:line) - - - - Gets all available caller information, in the format - fully.qualified.classname.of.caller.methodName(Filename:line) - - - - - - Gets the stack frames from the stack trace of the caller making the log request - - - - - Static manager that controls the creation of repositories - - - - Static manager that controls the creation of repositories - - - This class is used by the wrapper managers (e.g. ) - to provide access to the objects. - - - This manager also holds the that is used to - lookup and create repositories. The selector can be set either programmatically using - the property, or by setting the log4net.RepositorySelector - AppSetting in the applications config file to the fully qualified type name of the - selector to use. - - - Nicko Cadell - Gert Driesen - - - - Private constructor to prevent instances. Only static methods should be used. - - - - Private constructor to prevent instances. Only static methods should be used. - - - - - - Hook the shutdown event - - - - On the full .NET runtime, the static constructor hooks up the - AppDomain.ProcessExit and AppDomain.DomainUnload> events. - These are used to shutdown the log4net system as the application exits. - - - - - - Register for ProcessExit and DomainUnload events on the AppDomain - - - - This needs to be in a separate method because the events make - a LinkDemand for the ControlAppDomain SecurityPermission. Because - this is a LinkDemand it is demanded at JIT time. Therefore we cannot - catch the exception in the method itself, we have to catch it in the - caller. - - - - - - Return the default instance. - - the repository to lookup in - Return the default instance - - - Gets the for the repository specified - by the argument. - - - - - - Returns the default instance. - - The assembly to use to lookup the repository. - The default instance. - - - - Return the default instance. - - the repository to lookup in - Return the default instance - - - Gets the for the repository specified - by the argument. - - - - - - Returns the default instance. - - The assembly to use to lookup the repository. - The default instance. - - - Returns the default instance. - - - - - - Returns the named logger if it exists. - - The repository to lookup in. - The fully qualified logger name to look for. - - The logger found, or null if the named logger does not exist in the - specified repository. - - - - If the named logger exists (in the specified repository) then it - returns a reference to the logger, otherwise it returns - null. - - - - - - Returns the named logger if it exists. - - The assembly to use to lookup the repository. - The fully qualified logger name to look for. - - The logger found, or null if the named logger does not exist in the - specified assembly's repository. - - - - If the named logger exists (in the specified assembly's repository) then it - returns a reference to the logger, otherwise it returns - null. - - - - - - Returns all the currently defined loggers in the specified repository. - - The repository to lookup in. - All the defined loggers. - - - The root logger is not included in the returned array. - - - - - - Returns all the currently defined loggers in the specified assembly's repository. - - The assembly to use to lookup the repository. - All the defined loggers. - - - The root logger is not included in the returned array. - - - - - - Retrieves or creates a named logger. - - The repository to lookup in. - The name of the logger to retrieve. - The logger with the name specified. - - - Retrieves a logger named as the - parameter. If the named logger already exists, then the - existing instance will be returned. Otherwise, a new instance is - created. - - - By default, loggers do not have a set level but inherit - it from the hierarchy. This is one of the central features of - log4net. - - - - - - Retrieves or creates a named logger. - - The assembly to use to lookup the repository. - The name of the logger to retrieve. - The logger with the name specified. - - - Retrieves a logger named as the - parameter. If the named logger already exists, then the - existing instance will be returned. Otherwise, a new instance is - created. - - - By default, loggers do not have a set level but inherit - it from the hierarchy. This is one of the central features of - log4net. - - - - - - Shorthand for . - - The repository to lookup in. - The of which the fullname will be used as the name of the logger to retrieve. - The logger with the name specified. - - - Gets the logger for the fully qualified name of the type specified. - - - - - - Shorthand for . - - the assembly to use to lookup the repository - The of which the fullname will be used as the name of the logger to retrieve. - The logger with the name specified. - - - Gets the logger for the fully qualified name of the type specified. - - - - - - Shuts down the log4net system. - - - - Calling this method will safely close and remove all - appenders in all the loggers including root contained in all the - default repositories. - - - Some appenders need to be closed before the application exists. - Otherwise, pending logging events might be lost. - - - The shutdown method is careful to close nested - appenders before closing regular appenders. This is allows - configurations where a regular appender is attached to a logger - and again to a nested appender. - - - - - - Shuts down the repository for the repository specified. - - The repository to shutdown. - - - Calling this method will safely close and remove all - appenders in all the loggers including root contained in the - repository for the specified. - - - Some appenders need to be closed before the application exists. - Otherwise, pending logging events might be lost. - - - The shutdown method is careful to close nested - appenders before closing regular appenders. This is allows - configurations where a regular appender is attached to a logger - and again to a nested appender. - - - - - - Shuts down the repository for the repository specified. - - The assembly to use to lookup the repository. - - - Calling this method will safely close and remove all - appenders in all the loggers including root contained in the - repository for the repository. The repository is looked up using - the specified. - - - Some appenders need to be closed before the application exists. - Otherwise, pending logging events might be lost. - - - The shutdown method is careful to close nested - appenders before closing regular appenders. This is allows - configurations where a regular appender is attached to a logger - and again to a nested appender. - - - - - - Resets all values contained in this repository instance to their defaults. - - The repository to reset. - - - Resets all values contained in the repository instance to their - defaults. This removes all appenders from all loggers, sets - the level of all non-root loggers to null, - sets their additivity flag to true and sets the level - of the root logger to . Moreover, - message disabling is set its default "off" value. - - - - - - Resets all values contained in this repository instance to their defaults. - - The assembly to use to lookup the repository to reset. - - - Resets all values contained in the repository instance to their - defaults. This removes all appenders from all loggers, sets - the level of all non-root loggers to null, - sets their additivity flag to true and sets the level - of the root logger to . Moreover, - message disabling is set its default "off" value. - - - - - - Creates a repository with the specified name. - - The name of the repository, this must be unique amongst repositories. - The created for the repository. - - - CreateDomain is obsolete. Use CreateRepository instead of CreateDomain. - - - Creates the default type of which is a - object. - - - The name must be unique. Repositories cannot be redefined. - An will be thrown if the repository already exists. - - - The specified repository already exists. - - - - Creates a repository with the specified name. - - The name of the repository, this must be unique amongst repositories. - The created for the repository. - - - Creates the default type of which is a - object. - - - The name must be unique. Repositories cannot be redefined. - An will be thrown if the repository already exists. - - - The specified repository already exists. - - - - Creates a repository with the specified name and repository type. - - The name of the repository, this must be unique to the repository. - A that implements - and has a no arg constructor. An instance of this type will be created to act - as the for the repository specified. - The created for the repository. - - - CreateDomain is obsolete. Use CreateRepository instead of CreateDomain. - - - The name must be unique. Repositories cannot be redefined. - An Exception will be thrown if the repository already exists. - - - The specified repository already exists. - - - - Creates a repository with the specified name and repository type. - - The name of the repository, this must be unique to the repository. - A that implements - and has a no arg constructor. An instance of this type will be created to act - as the for the repository specified. - The created for the repository. - - - The name must be unique. Repositories cannot be redefined. - An Exception will be thrown if the repository already exists. - - - The specified repository already exists. - - - - Creates a repository for the specified assembly and repository type. - - The assembly to use to get the name of the repository. - A that implements - and has a no arg constructor. An instance of this type will be created to act - as the for the repository specified. - The created for the repository. - - - CreateDomain is obsolete. Use CreateRepository instead of CreateDomain. - - - The created will be associated with the repository - specified such that a call to with the - same assembly specified will return the same repository instance. - - - - - - Creates a repository for the specified assembly and repository type. - - The assembly to use to get the name of the repository. - A that implements - and has a no arg constructor. An instance of this type will be created to act - as the for the repository specified. - The created for the repository. - - - The created will be associated with the repository - specified such that a call to with the - same assembly specified will return the same repository instance. - - - - - - Gets an array of all currently defined repositories. - - An array of all the known objects. - - - Gets an array of all currently defined repositories. - - - - - - Internal method to get pertinent version info. - - A string of version info. - - - - Called when the event fires - - the that is exiting - null - - - Called when the event fires. - - - When the event is triggered the log4net system is . - - - - - - Called when the event fires - - the that is exiting - null - - - Called when the event fires. - - - When the event is triggered the log4net system is . - - - - - - The fully qualified type of the LoggerManager class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Initialize the default repository selector - - - - - Gets or sets the repository selector used by the . - - - The repository selector used by the . - - - - The repository selector () is used by - the to create and select repositories - (). - - - The caller to supplies either a string name - or an assembly (if not supplied the assembly is inferred using - ). - - - This context is used by the selector to lookup a specific repository. - - - For the full .NET Framework, the default repository is DefaultRepositorySelector; - for the .NET Compact Framework CompactRepositorySelector is the default - repository. - - - - - - Implementation of the interface. - - - - This class should be used as the base for all wrapper implementations. - - - Nicko Cadell - Gert Driesen - - - - Constructs a new wrapper for the specified logger. - - The logger to wrap. - - - Constructs a new wrapper for the specified logger. - - - - - - The logger that this object is wrapping - - - - - Gets the implementation behind this wrapper object. - - - The object that this object is implementing. - - - - The Logger object may not be the same object as this object - because of logger decorators. - - - This gets the actual underlying objects that is used to process - the log events. - - - - - - Portable data structure used by - - - - Portable data structure used by - - - Nicko Cadell - - - - The logger name. - - - - The logger name. - - - - - - Level of logging event. - - - - Level of logging event. Level cannot be Serializable - because it is a flyweight. Due to its special serialization it - cannot be declared final either. - - - - - - The application supplied message. - - - - The application supplied message of logging event. - - - - - - The name of thread - - - - The name of thread in which this logging event was generated - - - - - - The time the event was logged - - - - The TimeStamp is stored in the local time zone for this computer. - - - - - - Location information for the caller. - - - - Location information for the caller. - - - - - - String representation of the user - - - - String representation of the user's windows name, - like DOMAIN\username - - - - - - String representation of the identity. - - - - String representation of the current thread's principal identity. - - - - - - The string representation of the exception - - - - The string representation of the exception - - - - - - String representation of the AppDomain. - - - - String representation of the AppDomain. - - - - - - Additional event specific properties - - - - A logger or an appender may attach additional - properties to specific events. These properties - have a string key and an object value. - - - - - - Flags passed to the property - - - - Flags passed to the property - - - Nicko Cadell - - - - Fix the MDC - - - - - Fix the NDC - - - - - Fix the rendered message - - - - - Fix the thread name - - - - - Fix the callers location information - - - CAUTION: Very slow to generate - - - - - Fix the callers windows user name - - - CAUTION: Slow to generate - - - - - Fix the domain friendly name - - - - - Fix the callers principal name - - - CAUTION: May be slow to generate - - - - - Fix the exception text - - - - - Fix the event properties. Active properties must implement in order to be eligible for fixing. - - - - - No fields fixed - - - - - All fields fixed - - - - - Partial fields fixed - - - - This set of partial fields gives good performance. The following fields are fixed: - - - - - - - - - - - - - The internal representation of logging events. - - - - When an affirmative decision is made to log then a - instance is created. This instance - is passed around to the different log4net components. - - - This class is of concern to those wishing to extend log4net. - - - Some of the values in instances of - are considered volatile, that is the values are correct at the - time the event is delivered to appenders, but will not be consistent - at any time afterwards. If an event is to be stored and then processed - at a later time these volatile values must be fixed by calling - . There is a performance penalty - for incurred by calling but it - is essential to maintaining data consistency. - - - Nicko Cadell - Gert Driesen - Douglas de la Torre - Daniel Cazzulino - - - - The key into the Properties map for the host name value. - - - - - The key into the Properties map for the thread identity value. - - - - - The key into the Properties map for the user name value. - - - - - Initializes a new instance of the class - from the supplied parameters. - - The declaring type of the method that is - the stack boundary into the logging system for this call. - The repository this event is logged in. - The name of the logger of this event. - The level of this event. - The message of this event. - The exception for this event. - - - Except , and , - all fields of LoggingEvent are filled when actually needed. Call - to cache all data locally - to prevent inconsistencies. - - This method is called by the log4net framework - to create a logging event. - - - - - - Initializes a new instance of the class - using specific data. - - The declaring type of the method that is - the stack boundary into the logging system for this call. - The repository this event is logged in. - Data used to initialize the logging event. - The fields in the struct that have already been fixed. - - - This constructor is provided to allow a - to be created independently of the log4net framework. This can - be useful if you require a custom serialization scheme. - - - Use the method to obtain an - instance of the class. - - - The parameter should be used to specify which fields in the - struct have been preset. Fields not specified in the - will be captured from the environment if requested or fixed. - - - - - - Initializes a new instance of the class - using specific data. - - The declaring type of the method that is - the stack boundary into the logging system for this call. - The repository this event is logged in. - Data used to initialize the logging event. - - - This constructor is provided to allow a - to be created independently of the log4net framework. This can - be useful if you require a custom serialization scheme. - - - Use the method to obtain an - instance of the class. - - - This constructor sets this objects flags to , - this assumes that all the data relating to this event is passed in via the - parameter and no other data should be captured from the environment. - - - - - - Initializes a new instance of the class - using specific data. - - Data used to initialize the logging event. - - - This constructor is provided to allow a - to be created independently of the log4net framework. This can - be useful if you require a custom serialization scheme. - - - Use the method to obtain an - instance of the class. - - - This constructor sets this objects flags to , - this assumes that all the data relating to this event is passed in via the - parameter and no other data should be captured from the environment. - - - - - - Serialization constructor - - The that holds the serialized object data. - The that contains contextual information about the source or destination. - - - Initializes a new instance of the class - with serialized data. - - - - - - Ensure that the repository is set. - - the value for the repository - - - - Write the rendered message to a TextWriter - - the writer to write the message to - - - Unlike the property this method - does store the message data in the internal cache. Therefore - if called only once this method should be faster than the - property, however if the message is - to be accessed multiple times then the property will be more efficient. - - - - - - Serializes this object into the provided. - - The to populate with data. - The destination for this serialization. - - - The data in this event must be fixed before it can be serialized. - - - The method must be called during the - method call if this event - is to be used outside that method. - - - - - - Gets the portable data for this . - - The for this event. - - - A new can be constructed using a - instance. - - - Does a fix of the data - in the logging event before returning the event data. - - - - - - Gets the portable data for this . - - The set of data to ensure is fixed in the LoggingEventData - The for this event. - - - A new can be constructed using a - instance. - - - - - - Returns this event's exception's rendered using the - . - - - This event's exception's rendered using the . - - - - Obsolete. Use instead. - - - - - - Returns this event's exception's rendered using the - . - - - This event's exception's rendered using the . - - - - Returns this event's exception's rendered using the - . - - - - - - Fix instance fields that hold volatile data. - - - - Some of the values in instances of - are considered volatile, that is the values are correct at the - time the event is delivered to appenders, but will not be consistent - at any time afterwards. If an event is to be stored and then processed - at a later time these volatile values must be fixed by calling - . There is a performance penalty - incurred by calling but it - is essential to maintaining data consistency. - - - Calling is equivalent to - calling passing the parameter - false. - - - See for more - information. - - - - - - Fixes instance fields that hold volatile data. - - Set to true to not fix data that takes a long time to fix. - - - Some of the values in instances of - are considered volatile, that is the values are correct at the - time the event is delivered to appenders, but will not be consistent - at any time afterwards. If an event is to be stored and then processed - at a later time these volatile values must be fixed by calling - . There is a performance penalty - for incurred by calling but it - is essential to maintaining data consistency. - - - The param controls the data that - is fixed. Some of the data that can be fixed takes a long time to - generate, therefore if you do not require those settings to be fixed - they can be ignored by setting the param - to true. This setting will ignore the - and settings. - - - Set to false to ensure that all - settings are fixed. - - - - - - Fix the fields specified by the parameter - - the fields to fix - - - Only fields specified in the will be fixed. - Fields will not be fixed if they have previously been fixed. - It is not possible to 'unfix' a field. - - - - - - Lookup a composite property in this event - - the key for the property to lookup - the value for the property - - - This event has composite properties that combine together properties from - several different contexts in the following order: - - - this events properties - - This event has that can be set. These - properties are specific to this event only. - - - - the thread properties - - The that are set on the current - thread. These properties are shared by all events logged on this thread. - - - - the global properties - - The that are set globally. These - properties are shared by all the threads in the AppDomain. - - - - - - - - - Get all the composite properties in this event - - the containing all the properties - - - See for details of the composite properties - stored by the event. - - - This method returns a single containing all the - properties defined for this event. - - - - - - The internal logging event data. - - - - - The internal logging event data. - - - - - The internal logging event data. - - - - - The fully qualified Type of the calling - logger class in the stack frame (i.e. the declaring type of the method). - - - - - The application supplied message of logging event. - - - - - The exception that was thrown. - - - This is not serialized. The string representation - is serialized instead. - - - - - The repository that generated the logging event - - - This is not serialized. - - - - - The fix state for this event - - - These flags indicate which fields have been fixed. - Not serialized. - - - - - Indicated that the internal cache is updateable (ie not fixed) - - - This is a seperate flag to m_fixFlags as it allows incrementel fixing and simpler - changes in the caching strategy. - - - - - Gets the time when the current process started. - - - This is the time when this process started. - - - - The TimeStamp is stored in the local time zone for this computer. - - - Tries to get the start time for the current process. - Failing that it returns the time of the first call to - this property. - - - Note that AppDomains may be loaded and unloaded within the - same process without the process terminating and therefore - without the process start time being reset. - - - - - - Gets the of the logging event. - - - The of the logging event. - - - - Gets the of the logging event. - - - - - - Gets the time of the logging event. - - - The time of the logging event. - - - - The TimeStamp is stored in the local time zone for this computer. - - - - - - Gets the name of the logger that logged the event. - - - The name of the logger that logged the event. - - - - Gets the name of the logger that logged the event. - - - - - - Gets the location information for this logging event. - - - The location information for this logging event. - - - - The collected information is cached for future use. - - - See the class for more information on - supported frameworks and the different behavior in Debug and - Release builds. - - - - - - Gets the message object used to initialize this event. - - - The message object used to initialize this event. - - - - Gets the message object used to initialize this event. - Note that this event may not have a valid message object. - If the event is serialized the message object will not - be transferred. To get the text of the message the - property must be used - not this property. - - - If there is no defined message object for this event then - null will be returned. - - - - - - Gets the exception object used to initialize this event. - - - The exception object used to initialize this event. - - - - Gets the exception object used to initialize this event. - Note that this event may not have a valid exception object. - If the event is serialized the exception object will not - be transferred. To get the text of the exception the - method must be used - not this property. - - - If there is no defined exception object for this event then - null will be returned. - - - - - - The that this event was created in. - - - - The that this event was created in. - - - - - - Gets the message, rendered through the . - - - The message rendered through the . - - - - The collected information is cached for future use. - - - - - - Gets the name of the current thread. - - - The name of the current thread, or the thread ID when - the name is not available. - - - - The collected information is cached for future use. - - - - - - Gets the name of the current user. - - - The name of the current user, or NOT AVAILABLE when the - underlying runtime has no support for retrieving the name of the - current user. - - - - Calls WindowsIdentity.GetCurrent().Name to get the name of - the current windows user. - - - To improve performance, we could cache the string representation of - the name, and reuse that as long as the identity stayed constant. - Once the identity changed, we would need to re-assign and re-render - the string. - - - However, the WindowsIdentity.GetCurrent() call seems to - return different objects every time, so the current implementation - doesn't do this type of caching. - - - Timing for these operations: - - - - Method - Results - - - WindowsIdentity.GetCurrent() - 10000 loops, 00:00:00.2031250 seconds - - - WindowsIdentity.GetCurrent().Name - 10000 loops, 00:00:08.0468750 seconds - - - - This means we could speed things up almost 40 times by caching the - value of the WindowsIdentity.GetCurrent().Name property, since - this takes (8.04-0.20) = 7.84375 seconds. - - - - - - Gets the identity of the current thread principal. - - - The string name of the identity of the current thread principal. - - - - Calls System.Threading.Thread.CurrentPrincipal.Identity.Name to get - the name of the current thread principal. - - - - - - Gets the AppDomain friendly name. - - - The AppDomain friendly name. - - - - Gets the AppDomain friendly name. - - - - - - Additional event specific properties. - - - Additional event specific properties. - - - - A logger or an appender may attach additional - properties to specific events. These properties - have a string key and an object value. - - - This property is for events that have been added directly to - this event. The aggregate properties (which include these - event properties) can be retrieved using - and . - - - Once the properties have been fixed this property - returns the combined cached properties. This ensures that updates to - this property are always reflected in the underlying storage. When - returning the combined properties there may be more keys in the - Dictionary than expected. - - - - - - The fixed fields in this event - - - The set of fields that are fixed in this event - - - - Fields will not be fixed if they have previously been fixed. - It is not possible to 'unfix' a field. - - - - - - Implementation of wrapper interface. - - - - This implementation of the interface - forwards to the held by the base class. - - - This logger has methods to allow the caller to log at the following - levels: - - - - DEBUG - - The and methods log messages - at the DEBUG level. That is the level with that name defined in the - repositories . The default value - for this level is . The - property tests if this level is enabled for logging. - - - - INFO - - The and methods log messages - at the INFO level. That is the level with that name defined in the - repositories . The default value - for this level is . The - property tests if this level is enabled for logging. - - - - WARN - - The and methods log messages - at the WARN level. That is the level with that name defined in the - repositories . The default value - for this level is . The - property tests if this level is enabled for logging. - - - - ERROR - - The and methods log messages - at the ERROR level. That is the level with that name defined in the - repositories . The default value - for this level is . The - property tests if this level is enabled for logging. - - - - FATAL - - The and methods log messages - at the FATAL level. That is the level with that name defined in the - repositories . The default value - for this level is . The - property tests if this level is enabled for logging. - - - - - The values for these levels and their semantic meanings can be changed by - configuring the for the repository. - - - Nicko Cadell - Gert Driesen - - - - The ILog interface is use by application to log messages into - the log4net framework. - - - - Use the to obtain logger instances - that implement this interface. The - static method is used to get logger instances. - - - This class contains methods for logging at different levels and also - has properties for determining if those logging levels are - enabled in the current configuration. - - - This interface can be implemented in different ways. This documentation - specifies reasonable behavior that a caller can expect from the actual - implementation, however different implementations reserve the right to - do things differently. - - - Simple example of logging messages - - ILog log = LogManager.GetLogger("application-log"); - - log.Info("Application Start"); - log.Debug("This is a debug message"); - - if (log.IsDebugEnabled) - { - log.Debug("This is another debug message"); - } - - - - - Nicko Cadell - Gert Driesen - - - Log a message object with the level. - - Log a message object with the level. - - The message object to log. - - - This method first checks if this logger is DEBUG - enabled by comparing the level of this logger with the - level. If this logger is - DEBUG enabled, then it converts the message object - (passed as parameter) to a string by invoking the appropriate - . It then - proceeds to call all the registered appenders in this logger - and also higher in the hierarchy depending on the value of - the additivity flag. - - WARNING Note that passing an - to this method will print the name of the - but no stack trace. To print a stack trace use the - form instead. - - - - - - - - Log a message object with the level including - the stack trace of the passed - as a parameter. - - The message object to log. - The exception to log, including its stack trace. - - - See the form for more detailed information. - - - - - - - Log a formatted string with the level. - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object to format - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - An that supplies culture-specific formatting information - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - Log a message object with the level. - - Logs a message object with the level. - - - - This method first checks if this logger is INFO - enabled by comparing the level of this logger with the - level. If this logger is - INFO enabled, then it converts the message object - (passed as parameter) to a string by invoking the appropriate - . It then - proceeds to call all the registered appenders in this logger - and also higher in the hierarchy depending on the value of the - additivity flag. - - WARNING Note that passing an - to this method will print the name of the - but no stack trace. To print a stack trace use the - form instead. - - - The message object to log. - - - - - - Logs a message object with the INFO level including - the stack trace of the passed - as a parameter. - - The message object to log. - The exception to log, including its stack trace. - - - See the form for more detailed information. - - - - - - - Log a formatted message string with the level. - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object to format - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - An that supplies culture-specific formatting information - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - Log a message object with the level. - - Log a message object with the level. - - - - This method first checks if this logger is WARN - enabled by comparing the level of this logger with the - level. If this logger is - WARN enabled, then it converts the message object - (passed as parameter) to a string by invoking the appropriate - . It then - proceeds to call all the registered appenders in this logger - and also higher in the hierarchy depending on the value of the - additivity flag. - - WARNING Note that passing an - to this method will print the name of the - but no stack trace. To print a stack trace use the - form instead. - - - The message object to log. - - - - - - Log a message object with the level including - the stack trace of the passed - as a parameter. - - The message object to log. - The exception to log, including its stack trace. - - - See the form for more detailed information. - - - - - - - Log a formatted message string with the level. - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object to format - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - An that supplies culture-specific formatting information - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - Log a message object with the level. - - Logs a message object with the level. - - The message object to log. - - - This method first checks if this logger is ERROR - enabled by comparing the level of this logger with the - level. If this logger is - ERROR enabled, then it converts the message object - (passed as parameter) to a string by invoking the appropriate - . It then - proceeds to call all the registered appenders in this logger - and also higher in the hierarchy depending on the value of the - additivity flag. - - WARNING Note that passing an - to this method will print the name of the - but no stack trace. To print a stack trace use the - form instead. - - - - - - - - Log a message object with the level including - the stack trace of the passed - as a parameter. - - The message object to log. - The exception to log, including its stack trace. - - - See the form for more detailed information. - - - - - - - Log a formatted message string with the level. - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object to format - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - An that supplies culture-specific formatting information - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - Log a message object with the level. - - Log a message object with the level. - - - - This method first checks if this logger is FATAL - enabled by comparing the level of this logger with the - level. If this logger is - FATAL enabled, then it converts the message object - (passed as parameter) to a string by invoking the appropriate - . It then - proceeds to call all the registered appenders in this logger - and also higher in the hierarchy depending on the value of the - additivity flag. - - WARNING Note that passing an - to this method will print the name of the - but no stack trace. To print a stack trace use the - form instead. - - - The message object to log. - - - - - - Log a message object with the level including - the stack trace of the passed - as a parameter. - - The message object to log. - The exception to log, including its stack trace. - - - See the form for more detailed information. - - - - - - - Log a formatted message string with the level. - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - A String containing zero or more format items - An Object to format - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - An that supplies culture-specific formatting information - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Checks if this logger is enabled for the level. - - - true if this logger is enabled for events, false otherwise. - - - - This function is intended to lessen the computational cost of - disabled log debug statements. - - For some ILog interface log, when you write: - - log.Debug("This is entry number: " + i ); - - - You incur the cost constructing the message, string construction and concatenation in - this case, regardless of whether the message is logged or not. - - - If you are worried about speed (who isn't), then you should write: - - - if (log.IsDebugEnabled) - { - log.Debug("This is entry number: " + i ); - } - - - This way you will not incur the cost of parameter - construction if debugging is disabled for log. On - the other hand, if the log is debug enabled, you - will incur the cost of evaluating whether the logger is debug - enabled twice. Once in and once in - the . This is an insignificant overhead - since evaluating a logger takes about 1% of the time it - takes to actually log. This is the preferred style of logging. - - Alternatively if your logger is available statically then the is debug - enabled state can be stored in a static variable like this: - - - private static readonly bool isDebugEnabled = log.IsDebugEnabled; - - - Then when you come to log you can write: - - - if (isDebugEnabled) - { - log.Debug("This is entry number: " + i ); - } - - - This way the debug enabled state is only queried once - when the class is loaded. Using a private static readonly - variable is the most efficient because it is a run time constant - and can be heavily optimized by the JIT compiler. - - - Of course if you use a static readonly variable to - hold the enabled state of the logger then you cannot - change the enabled state at runtime to vary the logging - that is produced. You have to decide if you need absolute - speed or runtime flexibility. - - - - - - - - Checks if this logger is enabled for the level. - - - true if this logger is enabled for events, false otherwise. - - - For more information see . - - - - - - - - Checks if this logger is enabled for the level. - - - true if this logger is enabled for events, false otherwise. - - - For more information see . - - - - - - - - Checks if this logger is enabled for the level. - - - true if this logger is enabled for events, false otherwise. - - - For more information see . - - - - - - - - Checks if this logger is enabled for the level. - - - true if this logger is enabled for events, false otherwise. - - - For more information see . - - - - - - - - Construct a new wrapper for the specified logger. - - The logger to wrap. - - - Construct a new wrapper for the specified logger. - - - - - - Virtual method called when the configuration of the repository changes - - the repository holding the levels - - - Virtual method called when the configuration of the repository changes - - - - - - Logs a message object with the DEBUG level. - - The message object to log. - - - This method first checks if this logger is DEBUG - enabled by comparing the level of this logger with the - DEBUG level. If this logger is - DEBUG enabled, then it converts the message object - (passed as parameter) to a string by invoking the appropriate - . It then - proceeds to call all the registered appenders in this logger - and also higher in the hierarchy depending on the value of the - additivity flag. - - - WARNING Note that passing an - to this method will print the name of the - but no stack trace. To print a stack trace use the - form instead. - - - - - - Logs a message object with the DEBUG level - - The message object to log. - The exception to log, including its stack trace. - - - Logs a message object with the DEBUG level including - the stack trace of the passed - as a parameter. - - - See the form for more detailed information. - - - - - - - Logs a formatted message string with the DEBUG level. - - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the DEBUG level. - - A String containing zero or more format items - An Object to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the DEBUG level. - - A String containing zero or more format items - An Object to format - An Object to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the DEBUG level. - - A String containing zero or more format items - An Object to format - An Object to format - An Object to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the DEBUG level. - - An that supplies culture-specific formatting information - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a message object with the INFO level. - - The message object to log. - - - This method first checks if this logger is INFO - enabled by comparing the level of this logger with the - INFO level. If this logger is - INFO enabled, then it converts the message object - (passed as parameter) to a string by invoking the appropriate - . It then - proceeds to call all the registered appenders in this logger - and also higher in the hierarchy depending on the value of - the additivity flag. - - - WARNING Note that passing an - to this method will print the name of the - but no stack trace. To print a stack trace use the - form instead. - - - - - - Logs a message object with the INFO level. - - The message object to log. - The exception to log, including its stack trace. - - - Logs a message object with the INFO level including - the stack trace of the - passed as a parameter. - - - See the form for more detailed information. - - - - - - - Logs a formatted message string with the INFO level. - - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the INFO level. - - A String containing zero or more format items - An Object to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the INFO level. - - A String containing zero or more format items - An Object to format - An Object to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the INFO level. - - A String containing zero or more format items - An Object to format - An Object to format - An Object to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the INFO level. - - An that supplies culture-specific formatting information - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a message object with the WARN level. - - the message object to log - - - This method first checks if this logger is WARN - enabled by comparing the level of this logger with the - WARN level. If this logger is - WARN enabled, then it converts the message object - (passed as parameter) to a string by invoking the appropriate - . It then - proceeds to call all the registered appenders in this logger and - also higher in the hierarchy depending on the value of the - additivity flag. - - - WARNING Note that passing an to this - method will print the name of the but no - stack trace. To print a stack trace use the - form instead. - - - - - - Logs a message object with the WARN level - - The message object to log. - The exception to log, including its stack trace. - - - Logs a message object with the WARN level including - the stack trace of the - passed as a parameter. - - - See the form for more detailed information. - - - - - - - Logs a formatted message string with the WARN level. - - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the WARN level. - - A String containing zero or more format items - An Object to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the WARN level. - - A String containing zero or more format items - An Object to format - An Object to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the WARN level. - - A String containing zero or more format items - An Object to format - An Object to format - An Object to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the WARN level. - - An that supplies culture-specific formatting information - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a message object with the ERROR level. - - The message object to log. - - - This method first checks if this logger is ERROR - enabled by comparing the level of this logger with the - ERROR level. If this logger is - ERROR enabled, then it converts the message object - (passed as parameter) to a string by invoking the appropriate - . It then - proceeds to call all the registered appenders in this logger and - also higher in the hierarchy depending on the value of the - additivity flag. - - - WARNING Note that passing an to this - method will print the name of the but no - stack trace. To print a stack trace use the - form instead. - - - - - - Logs a message object with the ERROR level - - The message object to log. - The exception to log, including its stack trace. - - - Logs a message object with the ERROR level including - the stack trace of the - passed as a parameter. - - - See the form for more detailed information. - - - - - - - Logs a formatted message string with the ERROR level. - - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the ERROR level. - - A String containing zero or more format items - An Object to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the ERROR level. - - A String containing zero or more format items - An Object to format - An Object to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the ERROR level. - - A String containing zero or more format items - An Object to format - An Object to format - An Object to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the ERROR level. - - An that supplies culture-specific formatting information - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a message object with the FATAL level. - - The message object to log. - - - This method first checks if this logger is FATAL - enabled by comparing the level of this logger with the - FATAL level. If this logger is - FATAL enabled, then it converts the message object - (passed as parameter) to a string by invoking the appropriate - . It then - proceeds to call all the registered appenders in this logger and - also higher in the hierarchy depending on the value of the - additivity flag. - - - WARNING Note that passing an to this - method will print the name of the but no - stack trace. To print a stack trace use the - form instead. - - - - - - Logs a message object with the FATAL level - - The message object to log. - The exception to log, including its stack trace. - - - Logs a message object with the FATAL level including - the stack trace of the - passed as a parameter. - - - See the form for more detailed information. - - - - - - - Logs a formatted message string with the FATAL level. - - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the FATAL level. - - A String containing zero or more format items - An Object to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the FATAL level. - - A String containing zero or more format items - An Object to format - An Object to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the FATAL level. - - A String containing zero or more format items - An Object to format - An Object to format - An Object to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - The string is formatted using the - format provider. To specify a localized provider use the - method. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Logs a formatted message string with the FATAL level. - - An that supplies culture-specific formatting information - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the method. See - String.Format for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - Event handler for the event - - the repository - Empty - - - - The fully qualified name of this declaring type not the type of any subclass. - - - - - Checks if this logger is enabled for the DEBUG - level. - - - true if this logger is enabled for DEBUG events, - false otherwise. - - - - This function is intended to lessen the computational cost of - disabled log debug statements. - - - For some log Logger object, when you write: - - - log.Debug("This is entry number: " + i ); - - - You incur the cost constructing the message, concatenation in - this case, regardless of whether the message is logged or not. - - - If you are worried about speed, then you should write: - - - if (log.IsDebugEnabled()) - { - log.Debug("This is entry number: " + i ); - } - - - This way you will not incur the cost of parameter - construction if debugging is disabled for log. On - the other hand, if the log is debug enabled, you - will incur the cost of evaluating whether the logger is debug - enabled twice. Once in IsDebugEnabled and once in - the Debug. This is an insignificant overhead - since evaluating a logger takes about 1% of the time it - takes to actually log. - - - - - - Checks if this logger is enabled for the INFO level. - - - true if this logger is enabled for INFO events, - false otherwise. - - - - See for more information and examples - of using this method. - - - - - - - Checks if this logger is enabled for the WARN level. - - - true if this logger is enabled for WARN events, - false otherwise. - - - - See for more information and examples - of using this method. - - - - - - - Checks if this logger is enabled for the ERROR level. - - - true if this logger is enabled for ERROR events, - false otherwise. - - - - See for more information and examples of using this method. - - - - - - - Checks if this logger is enabled for the FATAL level. - - - true if this logger is enabled for FATAL events, - false otherwise. - - - - See for more information and examples of using this method. - - - - - - - provides method information without actually referencing a System.Reflection.MethodBase - as that would require that the containing assembly is loaded. - - - - - - When location information is not available the constant - NA is returned. Current value of this string - constant is ?. - - - - - constructs a method item for an unknown method. - - - - - constructs a method item from the name of the method. - - - - - - constructs a method item from the name of the method and its parameters. - - - - - - - constructs a method item from a method base by determining the method name and its parameters. - - - - - - The fully qualified type of the StackFrameItem class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Gets the method name of the caller making the logging - request. - - - The method name of the caller making the logging - request. - - - - Gets the method name of the caller making the logging - request. - - - - - - Gets the method parameters of the caller making - the logging request. - - - The method parameters of the caller making - the logging request - - - - Gets the method parameters of the caller making - the logging request. - - - - - - A SecurityContext used by log4net when interacting with protected resources - - - - A SecurityContext used by log4net when interacting with protected resources - for example with operating system services. This can be used to impersonate - a principal that has been granted privileges on the system resources. - - - Nicko Cadell - - - - Impersonate this SecurityContext - - State supplied by the caller - An instance that will - revoke the impersonation of this SecurityContext, or null - - - Impersonate this security context. Further calls on the current - thread should now be made in the security context provided - by this object. When the result - method is called the security - context of the thread should be reverted to the state it was in - before was called. - - - - - - The providers default instances. - - - - A configured component that interacts with potentially protected system - resources uses a to provide the elevated - privileges required. If the object has - been not been explicitly provided to the component then the component - will request one from this . - - - By default the is - an instance of which returns only - objects. This is a reasonable default - where the privileges required are not know by the system. - - - This default behavior can be overridden by subclassing the - and overriding the method to return - the desired objects. The default provider - can be replaced by programmatically setting the value of the - property. - - - An alternative is to use the log4net.Config.SecurityContextProviderAttribute - This attribute can be applied to an assembly in the same way as the - log4net.Config.XmlConfiguratorAttribute". The attribute takes - the type to use as the as an argument. - - - Nicko Cadell - - - - The default provider - - - - - Protected default constructor to allow subclassing - - - - Protected default constructor to allow subclassing - - - - - - Create a SecurityContext for a consumer - - The consumer requesting the SecurityContext - An impersonation context - - - The default implementation is to return a . - - - Subclasses should override this method to provide their own - behavior. - - - - - - Gets or sets the default SecurityContextProvider - - - The default SecurityContextProvider - - - - The default provider is used by configured components that - require a and have not had one - given to them. - - - By default this is an instance of - that returns objects. - - - The default provider can be set programmatically by setting - the value of this property to a sub class of - that has the desired behavior. - - - - - - provides stack frame information without actually referencing a System.Diagnostics.StackFrame - as that would require that the containing assembly is loaded. - - - - - - When location information is not available the constant - NA is returned. Current value of this string - constant is ?. - - - - - returns a stack frame item from a stack frame. This - - - - - - - The fully qualified type of the StackFrameItem class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Gets the fully qualified class name of the caller making the logging - request. - - - The fully qualified class name of the caller making the logging - request. - - - - Gets the fully qualified class name of the caller making the logging - request. - - - - - - Gets the file name of the caller. - - - The file name of the caller. - - - - Gets the file name of the caller. - - - - - - Gets the line number of the caller. - - - The line number of the caller. - - - - Gets the line number of the caller. - - - - - - Gets the method name of the caller. - - - The method name of the caller. - - - - Gets the method name of the caller. - - - - - - Gets all available caller information - - - All available caller information, in the format - fully.qualified.classname.of.caller.methodName(Filename:line) - - - - Gets all available caller information, in the format - fully.qualified.classname.of.caller.methodName(Filename:line) - - - - - - An evaluator that triggers after specified number of seconds. - - - - This evaluator will trigger if the specified time period - has passed since last check. - - - Robert Sevcik - - - - The default time threshold for triggering in seconds. Zero means it won't trigger at all. - - - - - The time threshold for triggering in seconds. Zero means it won't trigger at all. - - - - - The time of last check. This gets updated when the object is created and when the evaluator triggers. - - - - - Create a new evaluator using the time threshold in seconds. - - - - Create a new evaluator using the time threshold in seconds. - - - This evaluator will trigger if the specified time period - has passed since last check. - - - - - - Create a new evaluator using the specified time threshold in seconds. - - - The time threshold in seconds to trigger after. - Zero means it won't trigger at all. - - - - Create a new evaluator using the specified time threshold in seconds. - - - This evaluator will trigger if the specified time period - has passed since last check. - - - - - - Is this the triggering event? - - The event to check - This method returns true, if the specified time period - has passed since last check.. - Otherwise it returns false - - - This evaluator will trigger if the specified time period - has passed since last check. - - - - - - The time threshold in seconds to trigger after - - - The time threshold in seconds to trigger after. - Zero means it won't trigger at all. - - - - This evaluator will trigger if the specified time period - has passed since last check. - - - - - - Delegate used to handle creation of new wrappers. - - The logger to wrap in a wrapper. - - - Delegate used to handle creation of new wrappers. This delegate - is called from the - method to construct the wrapper for the specified logger. - - - The delegate to use is supplied to the - constructor. - - - - - - Maps between logger objects and wrapper objects. - - - - This class maintains a mapping between objects and - objects. Use the method to - lookup the for the specified . - - - New wrapper instances are created by the - method. The default behavior is for this method to delegate construction - of the wrapper to the delegate supplied - to the constructor. This allows specialization of the behavior without - requiring subclassing of this type. - - - Nicko Cadell - Gert Driesen - - - - Initializes a new instance of the - - The handler to use to create the wrapper objects. - - - Initializes a new instance of the class with - the specified handler to create the wrapper objects. - - - - - - Gets the wrapper object for the specified logger. - - The wrapper object for the specified logger - - - If the logger is null then the corresponding wrapper is null. - - - Looks up the wrapper it it has previously been requested and - returns it. If the wrapper has never been requested before then - the virtual method is - called. - - - - - - Creates the wrapper object for the specified logger. - - The logger to wrap in a wrapper. - The wrapper object for the logger. - - - This implementation uses the - passed to the constructor to create the wrapper. This method - can be overridden in a subclass. - - - - - - Called when a monitored repository shutdown event is received. - - The that is shutting down - - - This method is called when a that this - is holding loggers for has signaled its shutdown - event . The default - behavior of this method is to release the references to the loggers - and their wrappers generated for this repository. - - - - - - Event handler for repository shutdown event. - - The sender of the event. - The event args. - - - - Map of logger repositories to hashtables of ILogger to ILoggerWrapper mappings - - - - - The handler to use to create the extension wrapper objects. - - - - - Internal reference to the delegate used to register for repository shutdown events. - - - - - Gets the map of logger repositories. - - - Map of logger repositories. - - - - Gets the hashtable that is keyed on . The - values are hashtables keyed on with the - value being the corresponding . - - - - - - Formats a as "HH:mm:ss,fff". - - - - Formats a in the format "HH:mm:ss,fff" for example, "15:49:37,459". - - - Nicko Cadell - Gert Driesen - - - - Render a as a string. - - - - Interface to abstract the rendering of a - instance into a string. - - - The method is used to render the - date to a text writer. - - - Nicko Cadell - Gert Driesen - - - - Formats the specified date as a string. - - The date to format. - The writer to write to. - - - Format the as a string and write it - to the provided. - - - - - - String constant used to specify AbsoluteTimeDateFormat in layouts. Current value is ABSOLUTE. - - - - - String constant used to specify DateTimeDateFormat in layouts. Current value is DATE. - - - - - String constant used to specify ISO8601DateFormat in layouts. Current value is ISO8601. - - - - - Renders the date into a string. Format is "HH:mm:ss". - - The date to render into a string. - The string builder to write to. - - - Subclasses should override this method to render the date - into a string using a precision up to the second. This method - will be called at most once per second and the result will be - reused if it is needed again during the same second. - - - - - - Renders the date into a string. Format is "HH:mm:ss,fff". - - The date to render into a string. - The writer to write to. - - - Uses the method to generate the - time string up to the seconds and then appends the current - milliseconds. The results from are - cached and is called at most once - per second. - - - Sub classes should override - rather than . - - - - - - Last stored time with precision up to the second. - - - - - Last stored time with precision up to the second, formatted - as a string. - - - - - Last stored time with precision up to the second, formatted - as a string. - - - - - Formats a as "dd MMM yyyy HH:mm:ss,fff" - - - - Formats a in the format - "dd MMM yyyy HH:mm:ss,fff" for example, - "06 Nov 1994 15:49:37,459". - - - Nicko Cadell - Gert Driesen - Angelika Schnagl - - - - Default constructor. - - - - Initializes a new instance of the class. - - - - - - Formats the date without the milliseconds part - - The date to format. - The string builder to write to. - - - Formats a DateTime in the format "dd MMM yyyy HH:mm:ss" - for example, "06 Nov 1994 15:49:37". - - - The base class will append the ",fff" milliseconds section. - This method will only be called at most once per second. - - - - - - The format info for the invariant culture. - - - - - Formats the as "yyyy-MM-dd HH:mm:ss,fff". - - - - Formats the specified as a string: "yyyy-MM-dd HH:mm:ss,fff". - - - Nicko Cadell - Gert Driesen - - - - Default constructor - - - - Initializes a new instance of the class. - - - - - - Formats the date without the milliseconds part - - The date to format. - The string builder to write to. - - - Formats the date specified as a string: "yyyy-MM-dd HH:mm:ss". - - - The base class will append the ",fff" milliseconds section. - This method will only be called at most once per second. - - - - - - Formats the using the method. - - - - Formats the using the method. - - - Nicko Cadell - Gert Driesen - - - - Constructor - - The format string. - - - Initializes a new instance of the class - with the specified format string. - - - The format string must be compatible with the options - that can be supplied to . - - - - - - Formats the date using . - - The date to convert to a string. - The writer to write to. - - - Uses the date format string supplied to the constructor to call - the method to format the date. - - - - - - The format string used to format the . - - - - The format string must be compatible with the options - that can be supplied to . - - - - - - This filter drops all . - - - - You can add this filter to the end of a filter chain to - switch from the default "accept all unless instructed otherwise" - filtering behavior to a "deny all unless instructed otherwise" - behavior. - - - Nicko Cadell - Gert Driesen - - - - Subclass this type to implement customized logging event filtering - - - - Users should extend this class to implement customized logging - event filtering. Note that and - , the parent class of all standard - appenders, have built-in filtering rules. It is suggested that you - first use and understand the built-in rules before rushing to write - your own custom filters. - - - This abstract class assumes and also imposes that filters be - organized in a linear chain. The - method of each filter is called sequentially, in the order of their - addition to the chain. - - - The method must return one - of the integer constants , - or . - - - If the value is returned, then the log event is dropped - immediately without consulting with the remaining filters. - - - If the value is returned, then the next filter - in the chain is consulted. If there are no more filters in the - chain, then the log event is logged. Thus, in the presence of no - filters, the default behavior is to log all logging events. - - - If the value is returned, then the log - event is logged without consulting the remaining filters. - - - The philosophy of log4net filters is largely inspired from the - Linux ipchains. - - - Nicko Cadell - Gert Driesen - - - - Implement this interface to provide customized logging event filtering - - - - Users should implement this interface to implement customized logging - event filtering. Note that and - , the parent class of all standard - appenders, have built-in filtering rules. It is suggested that you - first use and understand the built-in rules before rushing to write - your own custom filters. - - - This abstract class assumes and also imposes that filters be - organized in a linear chain. The - method of each filter is called sequentially, in the order of their - addition to the chain. - - - The method must return one - of the integer constants , - or . - - - If the value is returned, then the log event is dropped - immediately without consulting with the remaining filters. - - - If the value is returned, then the next filter - in the chain is consulted. If there are no more filters in the - chain, then the log event is logged. Thus, in the presence of no - filters, the default behavior is to log all logging events. - - - If the value is returned, then the log - event is logged without consulting the remaining filters. - - - The philosophy of log4net filters is largely inspired from the - Linux ipchains. - - - Nicko Cadell - Gert Driesen - - - - Decide if the logging event should be logged through an appender. - - The LoggingEvent to decide upon - The decision of the filter - - - If the decision is , then the event will be - dropped. If the decision is , then the next - filter, if any, will be invoked. If the decision is then - the event will be logged without consulting with other filters in - the chain. - - - - - - Property to get and set the next filter - - - The next filter in the chain - - - - Filters are typically composed into chains. This property allows the next filter in - the chain to be accessed. - - - - - - Points to the next filter in the filter chain. - - - - See for more information. - - - - - - Initialize the filter with the options set - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - Typically filter's options become active immediately on set, - however this method must still be called. - - - - - - Decide if the should be logged through an appender. - - The to decide upon - The decision of the filter - - - If the decision is , then the event will be - dropped. If the decision is , then the next - filter, if any, will be invoked. If the decision is then - the event will be logged without consulting with other filters in - the chain. - - - This method is marked abstract and must be implemented - in a subclass. - - - - - - Property to get and set the next filter - - - The next filter in the chain - - - - Filters are typically composed into chains. This property allows the next filter in - the chain to be accessed. - - - - - - Default constructor - - - - - Always returns the integer constant - - the LoggingEvent to filter - Always returns - - - Ignores the event being logged and just returns - . This can be used to change the default filter - chain behavior from to . This filter - should only be used as the last filter in the chain - as any further filters will be ignored! - - - - - - The return result from - - - - The return result from - - - - - - The log event must be dropped immediately without - consulting with the remaining filters, if any, in the chain. - - - - - This filter is neutral with respect to the log event. - The remaining filters, if any, should be consulted for a final decision. - - - - - The log event must be logged immediately without - consulting with the remaining filters, if any, in the chain. - - - - - This is a very simple filter based on matching. - - - - The filter admits two options and - . If there is an exact match between the value - of the option and the of the - , then the method returns in - case the option value is set - to true, if it is false then - is returned. If the does not match then - the result will be . - - - Nicko Cadell - Gert Driesen - - - - flag to indicate if the filter should on a match - - - - - the to match against - - - - - Default constructor - - - - - Tests if the of the logging event matches that of the filter - - the event to filter - see remarks - - - If the of the event matches the level of the - filter then the result of the function depends on the - value of . If it is true then - the function will return , it it is false then it - will return . If the does not match then - the result will be . - - - - - - when matching - - - - The property is a flag that determines - the behavior when a matching is found. If the - flag is set to true then the filter will the - logging event, otherwise it will the event. - - - The default is true i.e. to the event. - - - - - - The that the filter will match - - - - The level that this filter will attempt to match against the - level. If a match is found then - the result depends on the value of . - - - - - - This is a simple filter based on matching. - - - - The filter admits three options and - that determine the range of priorities that are matched, and - . If there is a match between the range - of priorities and the of the , then the - method returns in case the - option value is set to true, if it is false - then is returned. If there is no match, is returned. - - - Nicko Cadell - Gert Driesen - - - - Flag to indicate the behavior when matching a - - - - - the minimum value to match - - - - - the maximum value to match - - - - - Default constructor - - - - - Check if the event should be logged. - - the logging event to check - see remarks - - - If the of the logging event is outside the range - matched by this filter then - is returned. If the is matched then the value of - is checked. If it is true then - is returned, otherwise - is returned. - - - - - - when matching and - - - - The property is a flag that determines - the behavior when a matching is found. If the - flag is set to true then the filter will the - logging event, otherwise it will the event. - - - The default is true i.e. to the event. - - - - - - Set the minimum matched - - - - The minimum level that this filter will attempt to match against the - level. If a match is found then - the result depends on the value of . - - - - - - Sets the maximum matched - - - - The maximum level that this filter will attempt to match against the - level. If a match is found then - the result depends on the value of . - - - - - - Simple filter to match a string in the event's logger name. - - - - The works very similar to the . It admits two - options and . If the - of the starts - with the value of the option, then the - method returns in - case the option value is set to true, - if it is false then is returned. - - - Daniel Cazzulino - - - - Flag to indicate the behavior when we have a match - - - - - The logger name string to substring match against the event - - - - - Default constructor - - - - - Check if this filter should allow the event to be logged - - the event being logged - see remarks - - - The rendered message is matched against the . - If the equals the beginning of - the incoming () - then a match will have occurred. If no match occurs - this function will return - allowing other filters to check the event. If a match occurs then - the value of is checked. If it is - true then is returned otherwise - is returned. - - - - - - when matching - - - - The property is a flag that determines - the behavior when a matching is found. If the - flag is set to true then the filter will the - logging event, otherwise it will the event. - - - The default is true i.e. to the event. - - - - - - The that the filter will match - - - - This filter will attempt to match this value against logger name in - the following way. The match will be done against the beginning of the - logger name (using ). The match is - case sensitive. If a match is found then - the result depends on the value of . - - - - - - Simple filter to match a keyed string in the - - - - Simple filter to match a keyed string in the - - - As the MDC has been replaced with layered properties the - should be used instead. - - - Nicko Cadell - Gert Driesen - - - - Simple filter to match a string an event property - - - - Simple filter to match a string in the value for a - specific event property - - - Nicko Cadell - - - - Simple filter to match a string in the rendered message - - - - Simple filter to match a string in the rendered message - - - Nicko Cadell - Gert Driesen - - - - Flag to indicate the behavior when we have a match - - - - - The string to substring match against the message - - - - - A string regex to match - - - - - A regex object to match (generated from m_stringRegexToMatch) - - - - - Default constructor - - - - - Initialize and precompile the Regex if required - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - Check if this filter should allow the event to be logged - - the event being logged - see remarks - - - The rendered message is matched against the . - If the occurs as a substring within - the message then a match will have occurred. If no match occurs - this function will return - allowing other filters to check the event. If a match occurs then - the value of is checked. If it is - true then is returned otherwise - is returned. - - - - - - when matching or - - - - The property is a flag that determines - the behavior when a matching is found. If the - flag is set to true then the filter will the - logging event, otherwise it will the event. - - - The default is true i.e. to the event. - - - - - - Sets the static string to match - - - - The string that will be substring matched against - the rendered message. If the message contains this - string then the filter will match. If a match is found then - the result depends on the value of . - - - One of or - must be specified. - - - - - - Sets the regular expression to match - - - - The regular expression pattern that will be matched against - the rendered message. If the message matches this - pattern then the filter will match. If a match is found then - the result depends on the value of . - - - One of or - must be specified. - - - - - - The key to use to lookup the string from the event properties - - - - - Default constructor - - - - - Check if this filter should allow the event to be logged - - the event being logged - see remarks - - - The event property for the is matched against - the . - If the occurs as a substring within - the property value then a match will have occurred. If no match occurs - this function will return - allowing other filters to check the event. If a match occurs then - the value of is checked. If it is - true then is returned otherwise - is returned. - - - - - - The key to lookup in the event properties and then match against. - - - - The key name to use to lookup in the properties map of the - . The match will be performed against - the value of this property if it exists. - - - - - - Simple filter to match a string in the - - - - Simple filter to match a string in the - - - As the MDC has been replaced with named stacks stored in the - properties collections the should - be used instead. - - - Nicko Cadell - Gert Driesen - - - - Default constructor - - - - Sets the to "NDC". - - - - - - Write the event appdomain name to the output - - - - Writes the to the output writer. - - - Daniel Cazzulino - Nicko Cadell - - - - Abstract class that provides the formatting functionality that - derived classes need. - - - Conversion specifiers in a conversion patterns are parsed to - individual PatternConverters. Each of which is responsible for - converting a logging event in a converter specific manner. - - Nicko Cadell - - - - Abstract class that provides the formatting functionality that - derived classes need. - - - - Conversion specifiers in a conversion patterns are parsed to - individual PatternConverters. Each of which is responsible for - converting a logging event in a converter specific manner. - - - Nicko Cadell - Gert Driesen - - - - Initial buffer size - - - - - Maximum buffer size before it is recycled - - - - - Protected constructor - - - - Initializes a new instance of the class. - - - - - - Evaluate this pattern converter and write the output to a writer. - - that will receive the formatted result. - The state object on which the pattern converter should be executed. - - - Derived pattern converters must override this method in order to - convert conversion specifiers in the appropriate way. - - - - - - Set the next pattern converter in the chains - - the pattern converter that should follow this converter in the chain - the next converter - - - The PatternConverter can merge with its neighbor during this method (or a sub class). - Therefore the return value may or may not be the value of the argument passed in. - - - - - - Write the pattern converter to the writer with appropriate formatting - - that will receive the formatted result. - The state object on which the pattern converter should be executed. - - - This method calls to allow the subclass to perform - appropriate conversion of the pattern converter. If formatting options have - been specified via the then this method will - apply those formattings before writing the output. - - - - - - Fast space padding method. - - to which the spaces will be appended. - The number of spaces to be padded. - - - Fast space padding method. - - - - - - The option string to the converter - - - - - Write an dictionary to a - - the writer to write to - a to use for object conversion - the value to write to the writer - - - Writes the to a writer in the form: - - - {key1=value1, key2=value2, key3=value3} - - - If the specified - is not null then it is used to render the key and value to text, otherwise - the object's ToString method is called. - - - - - - Write an dictionary to a - - the writer to write to - a to use for object conversion - the value to write to the writer - - - Writes the to a writer in the form: - - - {key1=value1, key2=value2, key3=value3} - - - If the specified - is not null then it is used to render the key and value to text, otherwise - the object's ToString method is called. - - - - - - Write an object to a - - the writer to write to - a to use for object conversion - the value to write to the writer - - - Writes the Object to a writer. If the specified - is not null then it is used to render the object to text, otherwise - the object's ToString method is called. - - - - - - Get the next pattern converter in the chain - - - the next pattern converter in the chain - - - - Get the next pattern converter in the chain - - - - - - Gets or sets the formatting info for this converter - - - The formatting info for this converter - - - - Gets or sets the formatting info for this converter - - - - - - Gets or sets the option value for this converter - - - The option for this converter - - - - Gets or sets the option value for this converter - - - - - - - - - - - Initializes a new instance of the class. - - - - - Derived pattern converters must override this method in order to - convert conversion specifiers in the correct way. - - that will receive the formatted result. - The on which the pattern converter should be executed. - - - - Derived pattern converters must override this method in order to - convert conversion specifiers in the correct way. - - that will receive the formatted result. - The state object on which the pattern converter should be executed. - - - - Flag indicating if this converter handles exceptions - - - false if this converter handles exceptions - - - - - Flag indicating if this converter handles the logging event exception - - false if this converter handles the logging event exception - - - If this converter handles the exception object contained within - , then this property should be set to - false. Otherwise, if the layout ignores the exception - object, then the property should be set to true. - - - Set this value to override a this default setting. The default - value is true, this converter does not handle the exception. - - - - - - Write the event appdomain name to the output - - that will receive the formatted result. - the event being logged - - - Writes the to the output . - - - - - - Converter for items in the ASP.Net Cache. - - - - Outputs an item from the . - - - Ron Grabowski - - - - Abstract class that provides access to the current HttpContext () that - derived classes need. - - - This class handles the case when HttpContext.Current is null by writing - to the writer. - - Ron Grabowski - - - - Derived pattern converters must override this method in order to - convert conversion specifiers in the correct way. - - that will receive the formatted result. - The on which the pattern converter should be executed. - The under which the ASP.Net request is running. - - - - Write the ASP.Net Cache item to the output - - that will receive the formatted result. - The on which the pattern converter should be executed. - The under which the ASP.Net request is running. - - - Writes out the value of a named property. The property name - should be set in the - property. If no property has been set, all key value pairs from the Cache will - be written to the output. - - - - - - Converter for items in the . - - - - Outputs an item from the . - - - Ron Grabowski - - - - Write the ASP.Net HttpContext item to the output - - that will receive the formatted result. - The on which the pattern converter should be executed. - The under which the ASP.Net request is running. - - - Writes out the value of a named property. The property name - should be set in the - property. - - - - - - Converter for items in the ASP.Net Cache. - - - - Outputs an item from the . - - - Ron Grabowski - - - - Write the ASP.Net Cache item to the output - - that will receive the formatted result. - The on which the pattern converter should be executed. - The under which the ASP.Net request is running. - - - Writes out the value of a named property. The property name - should be set in the - property. - - - - - - Converter for items in the ASP.Net Cache. - - - - Outputs an item from the . - - - Ron Grabowski - - - - Write the ASP.Net Cache item to the output - - that will receive the formatted result. - The on which the pattern converter should be executed. - The under which the ASP.Net request is running. - - - Writes out the value of a named property. The property name - should be set in the - property. If no property has been set, all key value pairs from the Session will - be written to the output. - - - - - - Date pattern converter, uses a to format - the date of a . - - - - Render the to the writer as a string. - - - The value of the determines - the formatting of the date. The following values are allowed: - - - Option value - Output - - - ISO8601 - - Uses the formatter. - Formats using the "yyyy-MM-dd HH:mm:ss,fff" pattern. - - - - DATE - - Uses the formatter. - Formats using the "dd MMM yyyy HH:mm:ss,fff" for example, "06 Nov 1994 15:49:37,459". - - - - ABSOLUTE - - Uses the formatter. - Formats using the "HH:mm:ss,yyyy" for example, "15:49:37,459". - - - - other - - Any other pattern string uses the formatter. - This formatter passes the pattern string to the - method. - For details on valid patterns see - DateTimeFormatInfo Class. - - - - - - The is in the local time zone and is rendered in that zone. - To output the time in Universal time see . - - - Nicko Cadell - - - - The used to render the date to a string - - - - The used to render the date to a string - - - - - - Initialize the converter pattern based on the property. - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - Convert the pattern into the rendered message - - that will receive the formatted result. - the event being logged - - - Pass the to the - for it to render it to the writer. - - - The passed is in the local time zone. - - - - - - The fully qualified type of the DatePatternConverter class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Write the exception text to the output - - - - If an exception object is stored in the logging event - it will be rendered into the pattern output with a - trailing newline. - - - If there is no exception then nothing will be output - and no trailing newline will be appended. - It is typical to put a newline before the exception - and to have the exception as the last data in the pattern. - - - Nicko Cadell - - - - Default constructor - - - - - Write the exception text to the output - - that will receive the formatted result. - the event being logged - - - If an exception object is stored in the logging event - it will be rendered into the pattern output with a - trailing newline. - - - If there is no exception or the exception property specified - by the Option value does not exist then nothing will be output - and no trailing newline will be appended. - It is typical to put a newline before the exception - and to have the exception as the last data in the pattern. - - - Recognized values for the Option parameter are: - - - - Message - - - Source - - - StackTrace - - - TargetSite - - - HelpLink - - - - - - - Writes the caller location file name to the output - - - - Writes the value of the for - the event to the output writer. - - - Nicko Cadell - - - - Write the caller location file name to the output - - that will receive the formatted result. - the event being logged - - - Writes the value of the for - the to the output . - - - - - - Write the caller location info to the output - - - - Writes the to the output writer. - - - Nicko Cadell - - - - Write the caller location info to the output - - that will receive the formatted result. - the event being logged - - - Writes the to the output writer. - - - - - - Writes the event identity to the output - - - - Writes the value of the to - the output writer. - - - Daniel Cazzulino - Nicko Cadell - - - - Writes the event identity to the output - - that will receive the formatted result. - the event being logged - - - Writes the value of the - to - the output . - - - - - - Write the event level to the output - - - - Writes the display name of the event - to the writer. - - - Nicko Cadell - - - - Write the event level to the output - - that will receive the formatted result. - the event being logged - - - Writes the of the - to the . - - - - - - Write the caller location line number to the output - - - - Writes the value of the for - the event to the output writer. - - - Nicko Cadell - - - - Write the caller location line number to the output - - that will receive the formatted result. - the event being logged - - - Writes the value of the for - the to the output . - - - - - - Converter for logger name - - - - Outputs the of the event. - - - Nicko Cadell - - - - Converter to output and truncate '.' separated strings - - - - This abstract class supports truncating a '.' separated string - to show a specified number of elements from the right hand side. - This is used to truncate class names that are fully qualified. - - - Subclasses should override the method to - return the fully qualified string. - - - Nicko Cadell - - - - Initialize the converter - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - Get the fully qualified string data - - the event being logged - the fully qualified name - - - Overridden by subclasses to get the fully qualified name before the - precision is applied to it. - - - Return the fully qualified '.' (dot/period) separated string. - - - - - - Convert the pattern to the rendered message - - that will receive the formatted result. - the event being logged - - Render the to the precision - specified by the property. - - - - - The fully qualified type of the NamedPatternConverter class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Gets the fully qualified name of the logger - - the event being logged - The fully qualified logger name - - - Returns the of the . - - - - - - Writes the event message to the output - - - - Uses the method - to write out the event message. - - - Nicko Cadell - - - - Writes the event message to the output - - that will receive the formatted result. - the event being logged - - - Uses the method - to write out the event message. - - - - - - Write the method name to the output - - - - Writes the caller location to - the output. - - - Nicko Cadell - - - - Write the method name to the output - - that will receive the formatted result. - the event being logged - - - Writes the caller location to - the output. - - - - - - Converter to include event NDC - - - - Outputs the value of the event property named NDC. - - - The should be used instead. - - - Nicko Cadell - - - - Write the event NDC to the output - - that will receive the formatted result. - the event being logged - - - As the thread context stacks are now stored in named event properties - this converter simply looks up the value of the NDC property. - - - The should be used instead. - - - - - - Property pattern converter - - - - Writes out the value of a named property. The property name - should be set in the - property. - - - If the is set to null - then all the properties are written as key value pairs. - - - Nicko Cadell - - - - Write the property value to the output - - that will receive the formatted result. - the event being logged - - - Writes out the value of a named property. The property name - should be set in the - property. - - - If the is set to null - then all the properties are written as key value pairs. - - - - - - Converter to output the relative time of the event - - - - Converter to output the time of the event relative to the start of the program. - - - Nicko Cadell - - - - Write the relative time to the output - - that will receive the formatted result. - the event being logged - - - Writes out the relative time of the event in milliseconds. - That is the number of milliseconds between the event - and the . - - - - - - Helper method to get the time difference between two DateTime objects - - start time (in the current local time zone) - end time (in the current local time zone) - the time difference in milliseconds - - - - Write the caller stack frames to the output - - - - Writes the to the output writer, using format: - type3.MethodCall3(type param,...) > type2.MethodCall2(type param,...) > type1.MethodCall1(type param,...) - - - Adam Davies - - - - Write the caller stack frames to the output - - - - Writes the to the output writer, using format: - type3.MethodCall3 > type2.MethodCall2 > type1.MethodCall1 - - - Michael Cromwell - - - - Initialize the converter - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - Write the strack frames to the output - - that will receive the formatted result. - the event being logged - - - Writes the to the output writer. - - - - - - Returns the Name of the method - - - This method was created, so this class could be used as a base class for StackTraceDetailPatternConverter - string - - - - The fully qualified type of the StackTracePatternConverter class. - - - Used by the internal logger to record the Type of the - log message. - - - - - The fully qualified type of the StackTraceDetailPatternConverter class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Converter to include event thread name - - - - Writes the to the output. - - - Nicko Cadell - - - - Write the ThreadName to the output - - that will receive the formatted result. - the event being logged - - - Writes the to the . - - - - - - Pattern converter for the class name - - - - Outputs the of the event. - - - Nicko Cadell - - - - Gets the fully qualified name of the class - - the event being logged - The fully qualified type name for the caller location - - - Returns the of the . - - - - - - Converter to include event user name - - Douglas de la Torre - Nicko Cadell - - - - Convert the pattern to the rendered message - - that will receive the formatted result. - the event being logged - - - - Write the TimeStamp to the output - - - - Date pattern converter, uses a to format - the date of a . - - - Uses a to format the - in Universal time. - - - See the for details on the date pattern syntax. - - - - Nicko Cadell - - - - Write the TimeStamp to the output - - that will receive the formatted result. - the event being logged - - - Pass the to the - for it to render it to the writer. - - - The passed is in the local time zone, this is converted - to Universal time before it is rendered. - - - - - - - The fully qualified type of the UtcDatePatternConverter class. - - - Used by the internal logger to record the Type of the - log message. - - - - - A flexible layout configurable with pattern string that re-evaluates on each call. - - - This class is built on and provides all the - features and capabilities of PatternLayout. PatternLayout is a 'static' class - in that its layout is done once at configuration time. This class will recreate - the layout on each reference. - One important difference between PatternLayout and DynamicPatternLayout is the - treatment of the Header and Footer parameters in the configuration. The Header and Footer - parameters for DynamicPatternLayout must be syntactically in the form of a PatternString, - but should not be marked as type log4net.Util.PatternString. Doing so causes the - pattern to be statically converted at configuration time and causes DynamicPatternLayout - to perform the same as PatternLayout. - Please see for complete documentation. - - <layout type="log4net.Layout.DynamicPatternLayout"> - <param name="Header" value="%newline**** Trace Opened Local: %date{yyyy-MM-dd HH:mm:ss.fff} UTC: %utcdate{yyyy-MM-dd HH:mm:ss.fff} ****%newline" /> - <param name="Footer" value="**** Trace Closed %date{yyyy-MM-dd HH:mm:ss.fff} ****%newline" /> - </layout> - - - - - - A flexible layout configurable with pattern string. - - - - The goal of this class is to a - as a string. The results - depend on the conversion pattern. - - - The conversion pattern is closely related to the conversion - pattern of the printf function in C. A conversion pattern is - composed of literal text and format control expressions called - conversion specifiers. - - - You are free to insert any literal text within the conversion - pattern. - - - Each conversion specifier starts with a percent sign (%) and is - followed by optional format modifiers and a conversion - pattern name. The conversion pattern name specifies the type of - data, e.g. logger, level, date, thread name. The format - modifiers control such things as field width, padding, left and - right justification. The following is a simple example. - - - Let the conversion pattern be "%-5level [%thread]: %message%newline" and assume - that the log4net environment was set to use a PatternLayout. Then the - statements - - - ILog log = LogManager.GetLogger(typeof(TestApp)); - log.Debug("Message 1"); - log.Warn("Message 2"); - - would yield the output - - DEBUG [main]: Message 1 - WARN [main]: Message 2 - - - Note that there is no explicit separator between text and - conversion specifiers. The pattern parser knows when it has reached - the end of a conversion specifier when it reads a conversion - character. In the example above the conversion specifier - %-5level means the level of the logging event should be left - justified to a width of five characters. - - - The recognized conversion pattern names are: - - - - Conversion Pattern Name - Effect - - - a - Equivalent to appdomain - - - appdomain - - Used to output the friendly name of the AppDomain where the - logging event was generated. - - - - aspnet-cache - - - Used to output all cache items in the case of %aspnet-cache or just one named item if used as %aspnet-cache{key} - - - This pattern is not available for Compact Framework or Client Profile assemblies. - - - - - aspnet-context - - - Used to output all context items in the case of %aspnet-context or just one named item if used as %aspnet-context{key} - - - This pattern is not available for Compact Framework or Client Profile assemblies. - - - - - aspnet-request - - - Used to output all request parameters in the case of %aspnet-request or just one named param if used as %aspnet-request{key} - - - This pattern is not available for Compact Framework or Client Profile assemblies. - - - - - aspnet-session - - - Used to output all session items in the case of %aspnet-session or just one named item if used as %aspnet-session{key} - - - This pattern is not available for Compact Framework or Client Profile assemblies. - - - - - c - Equivalent to logger - - - C - Equivalent to type - - - class - Equivalent to type - - - d - Equivalent to date - - - date - - - Used to output the date of the logging event in the local time zone. - To output the date in universal time use the %utcdate pattern. - The date conversion - specifier may be followed by a date format specifier enclosed - between braces. For example, %date{HH:mm:ss,fff} or - %date{dd MMM yyyy HH:mm:ss,fff}. If no date format specifier is - given then ISO8601 format is - assumed (). - - - The date format specifier admits the same syntax as the - time pattern string of the . - - - For better results it is recommended to use the log4net date - formatters. These can be specified using one of the strings - "ABSOLUTE", "DATE" and "ISO8601" for specifying - , - and respectively - . For example, - %date{ISO8601} or %date{ABSOLUTE}. - - - These dedicated date formatters perform significantly - better than . - - - - - exception - - - Used to output the exception passed in with the log message. - - - If an exception object is stored in the logging event - it will be rendered into the pattern output with a - trailing newline. - If there is no exception then nothing will be output - and no trailing newline will be appended. - It is typical to put a newline before the exception - and to have the exception as the last data in the pattern. - - - - - F - Equivalent to file - - - file - - - Used to output the file name where the logging request was - issued. - - - WARNING Generating caller location information is - extremely slow. Its use should be avoided unless execution speed - is not an issue. - - - See the note below on the availability of caller location information. - - - - - identity - - - Used to output the user name for the currently active user - (Principal.Identity.Name). - - - WARNING Generating caller information is - extremely slow. Its use should be avoided unless execution speed - is not an issue. - - - - - l - Equivalent to location - - - L - Equivalent to line - - - location - - - Used to output location information of the caller which generated - the logging event. - - - The location information depends on the CLI implementation but - usually consists of the fully qualified name of the calling - method followed by the callers source the file name and line - number between parentheses. - - - The location information can be very useful. However, its - generation is extremely slow. Its use should be avoided - unless execution speed is not an issue. - - - See the note below on the availability of caller location information. - - - - - level - - - Used to output the level of the logging event. - - - - - line - - - Used to output the line number from where the logging request - was issued. - - - WARNING Generating caller location information is - extremely slow. Its use should be avoided unless execution speed - is not an issue. - - - See the note below on the availability of caller location information. - - - - - logger - - - Used to output the logger of the logging event. The - logger conversion specifier can be optionally followed by - precision specifier, that is a decimal constant in - brackets. - - - If a precision specifier is given, then only the corresponding - number of right most components of the logger name will be - printed. By default the logger name is printed in full. - - - For example, for the logger name "a.b.c" the pattern - %logger{2} will output "b.c". - - - - - m - Equivalent to message - - - M - Equivalent to method - - - message - - - Used to output the application supplied message associated with - the logging event. - - - - - mdc - - - The MDC (old name for the ThreadContext.Properties) is now part of the - combined event properties. This pattern is supported for compatibility - but is equivalent to property. - - - - - method - - - Used to output the method name where the logging request was - issued. - - - WARNING Generating caller location information is - extremely slow. Its use should be avoided unless execution speed - is not an issue. - - - See the note below on the availability of caller location information. - - - - - n - Equivalent to newline - - - newline - - - Outputs the platform dependent line separator character or - characters. - - - This conversion pattern offers the same performance as using - non-portable line separator strings such as "\n", or "\r\n". - Thus, it is the preferred way of specifying a line separator. - - - - - ndc - - - Used to output the NDC (nested diagnostic context) associated - with the thread that generated the logging event. - - - - - p - Equivalent to level - - - P - Equivalent to property - - - properties - Equivalent to property - - - property - - - Used to output the an event specific property. The key to - lookup must be specified within braces and directly following the - pattern specifier, e.g. %property{user} would include the value - from the property that is keyed by the string 'user'. Each property value - that is to be included in the log must be specified separately. - Properties are added to events by loggers or appenders. By default - the log4net:HostName property is set to the name of machine on - which the event was originally logged. - - - If no key is specified, e.g. %property then all the keys and their - values are printed in a comma separated list. - - - The properties of an event are combined from a number of different - contexts. These are listed below in the order in which they are searched. - - - - the event properties - - The event has that can be set. These - properties are specific to this event only. - - - - the thread properties - - The that are set on the current - thread. These properties are shared by all events logged on this thread. - - - - the global properties - - The that are set globally. These - properties are shared by all the threads in the AppDomain. - - - - - - - - r - Equivalent to timestamp - - - stacktrace - - - Used to output the stack trace of the logging event - The stack trace level specifier may be enclosed - between braces. For example, %stacktrace{level}. - If no stack trace level specifier is given then 1 is assumed - - - Output uses the format: - type3.MethodCall3 > type2.MethodCall2 > type1.MethodCall1 - - - This pattern is not available for Compact Framework assemblies. - - - - - stacktracedetail - - - Used to output the stack trace of the logging event - The stack trace level specifier may be enclosed - between braces. For example, %stacktracedetail{level}. - If no stack trace level specifier is given then 1 is assumed - - - Output uses the format: - type3.MethodCall3(type param,...) > type2.MethodCall2(type param,...) > type1.MethodCall1(type param,...) - - - This pattern is not available for Compact Framework assemblies. - - - - - t - Equivalent to thread - - - timestamp - - - Used to output the number of milliseconds elapsed since the start - of the application until the creation of the logging event. - - - - - thread - - - Used to output the name of the thread that generated the - logging event. Uses the thread number if no name is available. - - - - - type - - - Used to output the fully qualified type name of the caller - issuing the logging request. This conversion specifier - can be optionally followed by precision specifier, that - is a decimal constant in brackets. - - - If a precision specifier is given, then only the corresponding - number of right most components of the class name will be - printed. By default the class name is output in fully qualified form. - - - For example, for the class name "log4net.Layout.PatternLayout", the - pattern %type{1} will output "PatternLayout". - - - WARNING Generating the caller class information is - slow. Thus, its use should be avoided unless execution speed is - not an issue. - - - See the note below on the availability of caller location information. - - - - - u - Equivalent to identity - - - username - - - Used to output the WindowsIdentity for the currently - active user. - - - WARNING Generating caller WindowsIdentity information is - extremely slow. Its use should be avoided unless execution speed - is not an issue. - - - - - utcdate - - - Used to output the date of the logging event in universal time. - The date conversion - specifier may be followed by a date format specifier enclosed - between braces. For example, %utcdate{HH:mm:ss,fff} or - %utcdate{dd MMM yyyy HH:mm:ss,fff}. If no date format specifier is - given then ISO8601 format is - assumed (). - - - The date format specifier admits the same syntax as the - time pattern string of the . - - - For better results it is recommended to use the log4net date - formatters. These can be specified using one of the strings - "ABSOLUTE", "DATE" and "ISO8601" for specifying - , - and respectively - . For example, - %utcdate{ISO8601} or %utcdate{ABSOLUTE}. - - - These dedicated date formatters perform significantly - better than . - - - - - w - Equivalent to username - - - x - Equivalent to ndc - - - X - Equivalent to mdc - - - % - - - The sequence %% outputs a single percent sign. - - - - - - The single letter patterns are deprecated in favor of the - longer more descriptive pattern names. - - - By default the relevant information is output as is. However, - with the aid of format modifiers it is possible to change the - minimum field width, the maximum field width and justification. - - - The optional format modifier is placed between the percent sign - and the conversion pattern name. - - - The first optional format modifier is the left justification - flag which is just the minus (-) character. Then comes the - optional minimum field width modifier. This is a decimal - constant that represents the minimum number of characters to - output. If the data item requires fewer characters, it is padded on - either the left or the right until the minimum width is - reached. The default is to pad on the left (right justify) but you - can specify right padding with the left justification flag. The - padding character is space. If the data item is larger than the - minimum field width, the field is expanded to accommodate the - data. The value is never truncated. - - - This behavior can be changed using the maximum field - width modifier which is designated by a period followed by a - decimal constant. If the data item is longer than the maximum - field, then the extra characters are removed from the - beginning of the data item and not from the end. For - example, it the maximum field width is eight and the data item is - ten characters long, then the first two characters of the data item - are dropped. This behavior deviates from the printf function in C - where truncation is done from the end. - - - Below are various format modifier examples for the logger - conversion specifier. - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Format modifierleft justifyminimum widthmaximum widthcomment
%20loggerfalse20none - - Left pad with spaces if the logger name is less than 20 - characters long. - -
%-20loggertrue20none - - Right pad with spaces if the logger - name is less than 20 characters long. - -
%.30loggerNAnone30 - - Truncate from the beginning if the logger - name is longer than 30 characters. - -
%20.30loggerfalse2030 - - Left pad with spaces if the logger name is shorter than 20 - characters. However, if logger name is longer than 30 characters, - then truncate from the beginning. - -
%-20.30loggertrue2030 - - Right pad with spaces if the logger name is shorter than 20 - characters. However, if logger name is longer than 30 characters, - then truncate from the beginning. - -
-
- - Note about caller location information.
- The following patterns %type %file %line %method %location %class %C %F %L %l %M - all generate caller location information. - Location information uses the System.Diagnostics.StackTrace class to generate - a call stack. The caller's information is then extracted from this stack. -
- - - The System.Diagnostics.StackTrace class is not supported on the - .NET Compact Framework 1.0 therefore caller location information is not - available on that framework. - - - - - The System.Diagnostics.StackTrace class has this to say about Release builds: - - - "StackTrace information will be most informative with Debug build configurations. - By default, Debug builds include debug symbols, while Release builds do not. The - debug symbols contain most of the file, method name, line number, and column - information used in constructing StackFrame and StackTrace objects. StackTrace - might not report as many method calls as expected, due to code transformations - that occur during optimization." - - - This means that in a Release build the caller information may be incomplete or may - not exist at all! Therefore caller location information cannot be relied upon in a Release build. - - - - Additional pattern converters may be registered with a specific - instance using the method. - -
- - This is a more detailed pattern. - %timestamp [%thread] %level %logger %ndc - %message%newline - - - A similar pattern except that the relative time is - right padded if less than 6 digits, thread name is right padded if - less than 15 characters and truncated if longer and the logger - name is left padded if shorter than 30 characters and truncated if - longer. - %-6timestamp [%15.15thread] %-5level %30.30logger %ndc - %message%newline - - Nicko Cadell - Gert Driesen - Douglas de la Torre - Daniel Cazzulino -
- - - Extend this abstract class to create your own log layout format. - - - - This is the base implementation of the - interface. Most layout objects should extend this class. - - - - - - Subclasses must implement the - method. - - - Subclasses should set the in their default - constructor. - - - - Nicko Cadell - Gert Driesen - - - - Interface implemented by layout objects - - - - An object is used to format a - as text. The method is called by an - appender to transform the into a string. - - - The layout can also supply and - text that is appender before any events and after all the events respectively. - - - Nicko Cadell - Gert Driesen - - - - Implement this method to create your own layout format. - - The TextWriter to write the formatted event to - The event to format - - - This method is called by an appender to format - the as text and output to a writer. - - - If the caller does not have a and prefers the - event to be formatted as a then the following - code can be used to format the event into a . - - - StringWriter writer = new StringWriter(); - Layout.Format(writer, loggingEvent); - string formattedEvent = writer.ToString(); - - - - - - The content type output by this layout. - - The content type - - - The content type output by this layout. - - - This is a MIME type e.g. "text/plain". - - - - - - The header for the layout format. - - the layout header - - - The Header text will be appended before any logging events - are formatted and appended. - - - - - - The footer for the layout format. - - the layout footer - - - The Footer text will be appended after all the logging events - have been formatted and appended. - - - - - - Flag indicating if this layout handle exceptions - - false if this layout handles exceptions - - - If this layout handles the exception object contained within - , then the layout should return - false. Otherwise, if the layout ignores the exception - object, then the layout should return true. - - - - - - The header text - - - - See for more information. - - - - - - The footer text - - - - See for more information. - - - - - - Flag indicating if this layout handles exceptions - - - - false if this layout handles exceptions - - - - - - Empty default constructor - - - - Empty default constructor - - - - - - Activate component options - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - This method must be implemented by the subclass. - - - - - - Implement this method to create your own layout format. - - The TextWriter to write the formatted event to - The event to format - - - This method is called by an appender to format - the as text. - - - - - - Convenience method for easily formatting the logging event into a string variable. - - - - Creates a new StringWriter instance to store the formatted logging event. - - - - - The content type output by this layout. - - The content type is "text/plain" - - - The content type output by this layout. - - - This base class uses the value "text/plain". - To change this value a subclass must override this - property. - - - - - - The header for the layout format. - - the layout header - - - The Header text will be appended before any logging events - are formatted and appended. - - - - - - The footer for the layout format. - - the layout footer - - - The Footer text will be appended after all the logging events - have been formatted and appended. - - - - - - Flag indicating if this layout handles exceptions - - false if this layout handles exceptions - - - If this layout handles the exception object contained within - , then the layout should return - false. Otherwise, if the layout ignores the exception - object, then the layout should return true. - - - Set this value to override a this default setting. The default - value is true, this layout does not handle the exception. - - - - - - Default pattern string for log output. - - - - Default pattern string for log output. - Currently set to the string "%message%newline" - which just prints the application supplied message. - - - - - - A detailed conversion pattern - - - - A conversion pattern which includes Time, Thread, Logger, and Nested Context. - Current value is %timestamp [%thread] %level %logger %ndc - %message%newline. - - - - - - Internal map of converter identifiers to converter types. - - - - This static map is overridden by the m_converterRegistry instance map - - - - - - the pattern - - - - - the head of the pattern converter chain - - - - - patterns defined on this PatternLayout only - - - - - Initialize the global registry - - - - Defines the builtin global rules. - - - - - - Constructs a PatternLayout using the DefaultConversionPattern - - - - The default pattern just produces the application supplied message. - - - Note to Inheritors: This constructor calls the virtual method - . If you override this method be - aware that it will be called before your is called constructor. - - - As per the contract the - method must be called after the properties on this object have been - configured. - - - - - - Constructs a PatternLayout using the supplied conversion pattern - - the pattern to use - - - Note to Inheritors: This constructor calls the virtual method - . If you override this method be - aware that it will be called before your is called constructor. - - - When using this constructor the method - need not be called. This may not be the case when using a subclass. - - - - - - Create the pattern parser instance - - the pattern to parse - The that will format the event - - - Creates the used to parse the conversion string. Sets the - global and instance rules on the . - - - - - - Initialize layout options - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - Produces a formatted string as specified by the conversion pattern. - - the event being logged - The TextWriter to write the formatted event to - - - Parse the using the patter format - specified in the property. - - - - - - Add a converter to this PatternLayout - - the converter info - - - This version of the method is used by the configurator. - Programmatic users should use the alternative method. - - - - - - Add a converter to this PatternLayout - - the name of the conversion pattern for this converter - the type of the converter - - - Add a named pattern converter to this instance. This - converter will be used in the formatting of the event. - This method must be called before . - - - The specified must extend the - type. - - - - - - The pattern formatting string - - - - The ConversionPattern option. This is the string which - controls formatting and consists of a mix of literal content and - conversion specifiers. - - - - - - The header PatternString - - - - - The footer PatternString - - - - - Constructs a DynamicPatternLayout using the DefaultConversionPattern - - - - The default pattern just produces the application supplied message. - - - - - - Constructs a DynamicPatternLayout using the supplied conversion pattern - - the pattern to use - - - - - - The header for the layout format. - - the layout header - - - The Header text will be appended before any logging events - are formatted and appended. - - The pattern will be formatted on each get operation. - - - - - The footer for the layout format. - - the layout footer - - - The Footer text will be appended after all the logging events - have been formatted and appended. - - The pattern will be formatted on each get operation. - - - - - A Layout that renders only the Exception text from the logging event - - - - A Layout that renders only the Exception text from the logging event. - - - This Layout should only be used with appenders that utilize multiple - layouts (e.g. ). - - - Nicko Cadell - Gert Driesen - - - - Default constructor - - - - Constructs a ExceptionLayout - - - - - - Activate component options - - - - Part of the component activation - framework. - - - This method does nothing as options become effective immediately. - - - - - - Gets the exception text from the logging event - - The TextWriter to write the formatted event to - the event being logged - - - Write the exception string to the . - The exception string is retrieved from . - - - - - - Interface for raw layout objects - - - - Interface used to format a - to an object. - - - This interface should not be confused with the - interface. This interface is used in - only certain specialized situations where a raw object is - required rather than a formatted string. The - is not generally useful than this interface. - - - Nicko Cadell - Gert Driesen - - - - Implement this method to create your own layout format. - - The event to format - returns the formatted event - - - Implement this method to create your own layout format. - - - - - - Adapts any to a - - - - Where an is required this adapter - allows a to be specified. - - - Nicko Cadell - Gert Driesen - - - - The layout to adapt - - - - - Construct a new adapter - - the layout to adapt - - - Create the adapter for the specified . - - - - - - Format the logging event as an object. - - The event to format - returns the formatted event - - - Format the logging event as an object. - - - Uses the object supplied to - the constructor to perform the formatting. - - - - - - Type converter for the interface - - - - Used to convert objects to the interface. - Supports converting from the interface to - the interface using the . - - - Nicko Cadell - Gert Driesen - - - - Interface supported by type converters - - - - This interface supports conversion from arbitrary types - to a single target type. See . - - - Nicko Cadell - Gert Driesen - - - - Can the source type be converted to the type supported by this object - - the type to convert - true if the conversion is possible - - - Test if the can be converted to the - type supported by this converter. - - - - - - Convert the source object to the type supported by this object - - the object to convert - the converted object - - - Converts the to the type supported - by this converter. - - - - - - Can the sourceType be converted to an - - the source to be to be converted - true if the source type can be converted to - - - Test if the can be converted to a - . Only is supported - as the . - - - - - - Convert the value to a object - - the value to convert - the object - - - Convert the object to a - object. If the object - is a then the - is used to adapt between the two interfaces, otherwise an - exception is thrown. - - - - - - Extract the value of a property from the - - - - Extract the value of a property from the - - - Nicko Cadell - - - - Constructs a RawPropertyLayout - - - - - Lookup the property for - - The event to format - returns property value - - - Looks up and returns the object value of the property - named . If there is no property defined - with than name then null will be returned. - - - - - - The name of the value to lookup in the LoggingEvent Properties collection. - - - Value to lookup in the LoggingEvent Properties collection - - - - String name of the property to lookup in the . - - - - - - Extract the date from the - - - - Extract the date from the - - - Nicko Cadell - Gert Driesen - - - - Constructs a RawTimeStampLayout - - - - - Gets the as a . - - The event to format - returns the time stamp - - - Gets the as a . - - - The time stamp is in local time. To format the time stamp - in universal time use . - - - - - - Extract the date from the - - - - Extract the date from the - - - Nicko Cadell - Gert Driesen - - - - Constructs a RawUtcTimeStampLayout - - - - - Gets the as a . - - The event to format - returns the time stamp - - - Gets the as a . - - - The time stamp is in universal time. To format the time stamp - in local time use . - - - - - - A very simple layout - - - - SimpleLayout consists of the level of the log statement, - followed by " - " and then the log message itself. For example, - - DEBUG - Hello world - - - - Nicko Cadell - Gert Driesen - - - - Constructs a SimpleLayout - - - - - Initialize layout options - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - Produces a simple formatted output. - - the event being logged - The TextWriter to write the formatted event to - - - Formats the event as the level of the even, - followed by " - " and then the log message itself. The - output is terminated by a newline. - - - - - - Layout that formats the log events as XML elements. - - - - The output of the consists of a series of - log4net:event elements. It does not output a complete well-formed XML - file. The output is designed to be included as an external entity - in a separate file to form a correct XML file. - - - For example, if abc is the name of the file where - the output goes, then a well-formed XML file would - be: - - - <?xml version="1.0" ?> - - <!DOCTYPE log4net:events SYSTEM "log4net-events.dtd" [<!ENTITY data SYSTEM "abc">]> - - <log4net:events version="1.2" xmlns:log4net="http://logging.apache.org/log4net/schemas/log4net-events-1.2> - &data; - </log4net:events> - - - This approach enforces the independence of the - and the appender where it is embedded. - - - The version attribute helps components to correctly - interpret output generated by . The value of - this attribute should be "1.2" for release 1.2 and later. - - - Alternatively the Header and Footer properties can be - configured to output the correct XML header, open tag and close tag. - When setting the Header and Footer properties it is essential - that the underlying data store not be appendable otherwise the data - will become invalid XML. - - - Nicko Cadell - Gert Driesen - - - - Layout that formats the log events as XML elements. - - - - This is an abstract class that must be subclassed by an implementation - to conform to a specific schema. - - - Deriving classes must implement the method. - - - Nicko Cadell - Gert Driesen - - - - Protected constructor to support subclasses - - - - Initializes a new instance of the class - with no location info. - - - - - - Protected constructor to support subclasses - - - - The parameter determines whether - location information will be output by the layout. If - is set to true, then the - file name and line number of the statement at the origin of the log - statement will be output. - - - If you are embedding this layout within an SMTPAppender - then make sure to set the LocationInfo option of that - appender as well. - - - - - - Initialize layout options - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - Produces a formatted string. - - The event being logged. - The TextWriter to write the formatted event to - - - Format the and write it to the . - - - This method creates an that writes to the - . The is passed - to the method. Subclasses should override the - method rather than this method. - - - - - - Does the actual writing of the XML. - - The writer to use to output the event to. - The event to write. - - - Subclasses should override this method to format - the as XML. - - - - - - Flag to indicate if location information should be included in - the XML events. - - - - - The string to replace invalid chars with - - - - - Gets a value indicating whether to include location information in - the XML events. - - - true if location information should be included in the XML - events; otherwise, false. - - - - If is set to true, then the file - name and line number of the statement at the origin of the log - statement will be output. - - - If you are embedding this layout within an SMTPAppender - then make sure to set the LocationInfo option of that - appender as well. - - - - - - The string to replace characters that can not be expressed in XML with. - - - Not all characters may be expressed in XML. This property contains the - string to replace those that can not with. This defaults to a ?. Set it - to the empty string to simply remove offending characters. For more - details on the allowed character ranges see http://www.w3.org/TR/REC-xml/#charsets - Character replacement will occur in the log message, the property names - and the property values. - - - - - - - Gets the content type output by this layout. - - - As this is the XML layout, the value is always "text/xml". - - - - As this is the XML layout, the value is always "text/xml". - - - - - - Constructs an XmlLayout - - - - - Constructs an XmlLayout. - - - - The LocationInfo option takes a boolean value. By - default, it is set to false which means there will be no location - information output by this layout. If the the option is set to - true, then the file name and line number of the statement - at the origin of the log statement will be output. - - - If you are embedding this layout within an SmtpAppender - then make sure to set the LocationInfo option of that - appender as well. - - - - - - Initialize layout options - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - Builds a cache of the element names - - - - - - Does the actual writing of the XML. - - The writer to use to output the event to. - The event to write. - - - Override the base class method - to write the to the . - - - - - - The prefix to use for all generated element names - - - - - The prefix to use for all element names - - - - The default prefix is log4net. Set this property - to change the prefix. If the prefix is set to an empty string - then no prefix will be written. - - - - - - Set whether or not to base64 encode the message. - - - - By default the log message will be written as text to the xml - output. This can cause problems when the message contains binary - data. By setting this to true the contents of the message will be - base64 encoded. If this is set then invalid character replacement - (see ) will not be performed - on the log message. - - - - - - Set whether or not to base64 encode the property values. - - - - By default the properties will be written as text to the xml - output. This can cause problems when one or more properties contain - binary data. By setting this to true the values of the properties - will be base64 encoded. If this is set then invalid character replacement - (see ) will not be performed - on the property values. - - - - - - Layout that formats the log events as XML elements compatible with the log4j schema - - - - Formats the log events according to the http://logging.apache.org/log4j schema. - - - Nicko Cadell - - - - The 1st of January 1970 in UTC - - - - - Constructs an XMLLayoutSchemaLog4j - - - - - Constructs an XMLLayoutSchemaLog4j. - - - - The LocationInfo option takes a boolean value. By - default, it is set to false which means there will be no location - information output by this layout. If the the option is set to - true, then the file name and line number of the statement - at the origin of the log statement will be output. - - - If you are embedding this layout within an SMTPAppender - then make sure to set the LocationInfo option of that - appender as well. - - - - - - Actually do the writing of the xml - - the writer to use - the event to write - - - Generate XML that is compatible with the log4j schema. - - - - - - The version of the log4j schema to use. - - - - Only version 1.2 of the log4j schema is supported. - - - - - - The default object Renderer. - - - - The default renderer supports rendering objects and collections to strings. - - - See the method for details of the output. - - - Nicko Cadell - Gert Driesen - - - - Implement this interface in order to render objects as strings - - - - Certain types require special case conversion to - string form. This conversion is done by an object renderer. - Object renderers implement the - interface. - - - Nicko Cadell - Gert Driesen - - - - Render the object to a string - - The map used to lookup renderers - The object to render - The writer to render to - - - Render the object to a - string. - - - The parameter is - provided to lookup and render other objects. This is - very useful where contains - nested objects of unknown type. The - method can be used to render these objects. - - - - - - Default constructor - - - - Default constructor - - - - - - Render the object to a string - - The map used to lookup renderers - The object to render - The writer to render to - - - Render the object to a string. - - - The parameter is - provided to lookup and render other objects. This is - very useful where contains - nested objects of unknown type. The - method can be used to render these objects. - - - The default renderer supports rendering objects to strings as follows: - - - - Value - Rendered String - - - null - - "(null)" - - - - - - - For a one dimensional array this is the - array type name, an open brace, followed by a comma - separated list of the elements (using the appropriate - renderer), followed by a close brace. - - - For example: int[] {1, 2, 3}. - - - If the array is not one dimensional the - Array.ToString() is returned. - - - - - , & - - - Rendered as an open brace, followed by a comma - separated list of the elements (using the appropriate - renderer), followed by a close brace. - - - For example: {a, b, c}. - - - All collection classes that implement its subclasses, - or generic equivalents all implement the interface. - - - - - - - - Rendered as the key, an equals sign ('='), and the value (using the appropriate - renderer). - - - For example: key=value. - - - - - other - - Object.ToString() - - - - - - - - Render the array argument into a string - - The map used to lookup renderers - the array to render - The writer to render to - - - For a one dimensional array this is the - array type name, an open brace, followed by a comma - separated list of the elements (using the appropriate - renderer), followed by a close brace. For example: - int[] {1, 2, 3}. - - - If the array is not one dimensional the - Array.ToString() is returned. - - - - - - Render the enumerator argument into a string - - The map used to lookup renderers - the enumerator to render - The writer to render to - - - Rendered as an open brace, followed by a comma - separated list of the elements (using the appropriate - renderer), followed by a close brace. For example: - {a, b, c}. - - - - - - Render the DictionaryEntry argument into a string - - The map used to lookup renderers - the DictionaryEntry to render - The writer to render to - - - Render the key, an equals sign ('='), and the value (using the appropriate - renderer). For example: key=value. - - - - - - Map class objects to an . - - - - Maintains a mapping between types that require special - rendering and the that - is used to render them. - - - The method is used to render an - object using the appropriate renderers defined in this map. - - - Nicko Cadell - Gert Driesen - - - - Default Constructor - - - - Default constructor. - - - - - - Render using the appropriate renderer. - - the object to render to a string - the object rendered as a string - - - This is a convenience method used to render an object to a string. - The alternative method - should be used when streaming output to a . - - - - - - Render using the appropriate renderer. - - the object to render to a string - The writer to render to - - - Find the appropriate renderer for the type of the - parameter. This is accomplished by calling the - method. Once a renderer is found, it is - applied on the object and the result is returned - as a . - - - - - - Gets the renderer for the specified object type - - the object to lookup the renderer for - the renderer for - - - Gets the renderer for the specified object type. - - - Syntactic sugar method that calls - with the type of the object parameter. - - - - - - Gets the renderer for the specified type - - the type to lookup the renderer for - the renderer for the specified type - - - Returns the renderer for the specified type. - If no specific renderer has been defined the - will be returned. - - - - - - Internal function to recursively search interfaces - - the type to lookup the renderer for - the renderer for the specified type - - - - Clear the map of renderers - - - - Clear the custom renderers defined by using - . The - cannot be removed. - - - - - - Register an for . - - the type that will be rendered by - the renderer for - - - Register an object renderer for a specific source type. - This renderer will be returned from a call to - specifying the same as an argument. - - - - - - Get the default renderer instance - - the default renderer - - - Get the default renderer - - - - - - Interface implemented by logger repository plugins. - - - - Plugins define additional behavior that can be associated - with a . - The held by the - property is used to store the plugins for a repository. - - - The log4net.Config.PluginAttribute can be used to - attach plugins to repositories created using configuration - attributes. - - - Nicko Cadell - Gert Driesen - - - - Attaches the plugin to the specified . - - The that this plugin should be attached to. - - - A plugin may only be attached to a single repository. - - - This method is called when the plugin is attached to the repository. - - - - - - Is called when the plugin is to shutdown. - - - - This method is called to notify the plugin that - it should stop operating and should detach from - the repository. - - - - - - Gets the name of the plugin. - - - The name of the plugin. - - - - Plugins are stored in the - keyed by name. Each plugin instance attached to a - repository must be a unique name. - - - - - - A strongly-typed collection of objects. - - Nicko Cadell - - - - Creates a read-only wrapper for a PluginCollection instance. - - list to create a readonly wrapper arround - - A PluginCollection wrapper that is read-only. - - - - - Initializes a new instance of the PluginCollection class - that is empty and has the default initial capacity. - - - - - Initializes a new instance of the PluginCollection class - that has the specified initial capacity. - - - The number of elements that the new PluginCollection is initially capable of storing. - - - - - Initializes a new instance of the PluginCollection class - that contains elements copied from the specified PluginCollection. - - The PluginCollection whose elements are copied to the new collection. - - - - Initializes a new instance of the PluginCollection class - that contains elements copied from the specified array. - - The array whose elements are copied to the new list. - - - - Initializes a new instance of the PluginCollection class - that contains elements copied from the specified collection. - - The collection whose elements are copied to the new list. - - - - Allow subclasses to avoid our default constructors - - - - - - - Copies the entire PluginCollection to a one-dimensional - array. - - The one-dimensional array to copy to. - - - - Copies the entire PluginCollection to a one-dimensional - array, starting at the specified index of the target array. - - The one-dimensional array to copy to. - The zero-based index in at which copying begins. - - - - Adds a to the end of the PluginCollection. - - The to be added to the end of the PluginCollection. - The index at which the value has been added. - - - - Removes all elements from the PluginCollection. - - - - - Creates a shallow copy of the . - - A new with a shallow copy of the collection data. - - - - Determines whether a given is in the PluginCollection. - - The to check for. - true if is found in the PluginCollection; otherwise, false. - - - - Returns the zero-based index of the first occurrence of a - in the PluginCollection. - - The to locate in the PluginCollection. - - The zero-based index of the first occurrence of - in the entire PluginCollection, if found; otherwise, -1. - - - - - Inserts an element into the PluginCollection at the specified index. - - The zero-based index at which should be inserted. - The to insert. - - is less than zero - -or- - is equal to or greater than . - - - - - Removes the first occurrence of a specific from the PluginCollection. - - The to remove from the PluginCollection. - - The specified was not found in the PluginCollection. - - - - - Removes the element at the specified index of the PluginCollection. - - The zero-based index of the element to remove. - - is less than zero. - -or- - is equal to or greater than . - - - - - Returns an enumerator that can iterate through the PluginCollection. - - An for the entire PluginCollection. - - - - Adds the elements of another PluginCollection to the current PluginCollection. - - The PluginCollection whose elements should be added to the end of the current PluginCollection. - The new of the PluginCollection. - - - - Adds the elements of a array to the current PluginCollection. - - The array whose elements should be added to the end of the PluginCollection. - The new of the PluginCollection. - - - - Adds the elements of a collection to the current PluginCollection. - - The collection whose elements should be added to the end of the PluginCollection. - The new of the PluginCollection. - - - - Sets the capacity to the actual number of elements. - - - - - is less than zero. - -or- - is equal to or greater than . - - - - - is less than zero. - -or- - is equal to or greater than . - - - - - Gets the number of elements actually contained in the PluginCollection. - - - - - Gets a value indicating whether access to the collection is synchronized (thread-safe). - - true if access to the ICollection is synchronized (thread-safe); otherwise, false. - - - - Gets an object that can be used to synchronize access to the collection. - - - An object that can be used to synchronize access to the collection. - - - - - Gets or sets the at the specified index. - - - The at the specified index. - - The zero-based index of the element to get or set. - - is less than zero. - -or- - is equal to or greater than . - - - - - Gets a value indicating whether the collection has a fixed size. - - true if the collection has a fixed size; otherwise, false. The default is false. - - - - Gets a value indicating whether the IList is read-only. - - true if the collection is read-only; otherwise, false. The default is false. - - - - Gets or sets the number of elements the PluginCollection can contain. - - - The number of elements the PluginCollection can contain. - - - - - Supports type-safe iteration over a . - - - - - - Advances the enumerator to the next element in the collection. - - - true if the enumerator was successfully advanced to the next element; - false if the enumerator has passed the end of the collection. - - - The collection was modified after the enumerator was created. - - - - - Sets the enumerator to its initial position, before the first element in the collection. - - - - - Gets the current element in the collection. - - - - - Type visible only to our subclasses - Used to access protected constructor - - - - - - A value - - - - - Supports simple iteration over a . - - - - - - Initializes a new instance of the Enumerator class. - - - - - - Advances the enumerator to the next element in the collection. - - - true if the enumerator was successfully advanced to the next element; - false if the enumerator has passed the end of the collection. - - - The collection was modified after the enumerator was created. - - - - - Sets the enumerator to its initial position, before the first element in the collection. - - - - - Gets the current element in the collection. - - - The current element in the collection. - - - - - - - - Map of repository plugins. - - - - This class is a name keyed map of the plugins that are - attached to a repository. - - - Nicko Cadell - Gert Driesen - - - - Constructor - - The repository that the plugins should be attached to. - - - Initialize a new instance of the class with a - repository that the plugins should be attached to. - - - - - - Adds a to the map. - - The to add to the map. - - - The will be attached to the repository when added. - - - If there already exists a plugin with the same name - attached to the repository then the old plugin will - be and replaced with - the new plugin. - - - - - - Removes a from the map. - - The to remove from the map. - - - Remove a specific plugin from this map. - - - - - - Gets a by name. - - The name of the to lookup. - - The from the map with the name specified, or - null if no plugin is found. - - - - Lookup a plugin by name. If the plugin is not found null - will be returned. - - - - - - Gets all possible plugins as a list of objects. - - All possible plugins as a list of objects. - - - Get a collection of all the plugins defined in this map. - - - - - - Base implementation of - - - - Default abstract implementation of the - interface. This base class can be used by implementors - of the interface. - - - Nicko Cadell - Gert Driesen - - - - Constructor - - the name of the plugin - - Initializes a new Plugin with the specified name. - - - - - Attaches this plugin to a . - - The that this plugin should be attached to. - - - A plugin may only be attached to a single repository. - - - This method is called when the plugin is attached to the repository. - - - - - - Is called when the plugin is to shutdown. - - - - This method is called to notify the plugin that - it should stop operating and should detach from - the repository. - - - - - - The name of this plugin. - - - - - The repository this plugin is attached to. - - - - - Gets or sets the name of the plugin. - - - The name of the plugin. - - - - Plugins are stored in the - keyed by name. Each plugin instance attached to a - repository must be a unique name. - - - The name of the plugin must not change one the - plugin has been attached to a repository. - - - - - - The repository for this plugin - - - The that this plugin is attached to. - - - - Gets or sets the that this plugin is - attached to. - - - - - - Plugin that listens for events from the - - - - This plugin publishes an instance of - on a specified . This listens for logging events delivered from - a remote . - - - When an event is received it is relogged within the attached repository - as if it had been raised locally. - - - Nicko Cadell - Gert Driesen - - - - Default constructor - - - - Initializes a new instance of the class. - - - The property must be set. - - - - - - Construct with sink Uri. - - The name to publish the sink under in the remoting infrastructure. - See for more details. - - - Initializes a new instance of the class - with specified name. - - - - - - Attaches this plugin to a . - - The that this plugin should be attached to. - - - A plugin may only be attached to a single repository. - - - This method is called when the plugin is attached to the repository. - - - - - - Is called when the plugin is to shutdown. - - - - When the plugin is shutdown the remote logging - sink is disconnected. - - - - - - The fully qualified type of the RemoteLoggingServerPlugin class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Gets or sets the URI of this sink. - - - The URI of this sink. - - - - This is the name under which the object is marshaled. - - - - - - - Delivers objects to a remote sink. - - - - Internal class used to listen for logging events - and deliver them to the local repository. - - - - - - Constructor - - The repository to log to. - - - Initializes a new instance of the for the - specified . - - - - - - Logs the events to the repository. - - The events to log. - - - The events passed are logged to the - - - - - - Obtains a lifetime service object to control the lifetime - policy for this instance. - - null to indicate that this instance should live forever. - - - Obtains a lifetime service object to control the lifetime - policy for this instance. This object should live forever - therefore this implementation returns null. - - - - - - The underlying that events should - be logged to. - - - - - Default implementation of - - - - This default implementation of the - interface is used to create the default subclass - of the object. - - - Nicko Cadell - Gert Driesen - - - - Interface abstracts creation of instances - - - - This interface is used by the to - create new objects. - - - The method is called - to create a named . - - - Implement this interface to create new subclasses of . - - - Nicko Cadell - Gert Driesen - - - - Create a new instance - - The that will own the . - The name of the . - The instance for the specified name. - - - Create a new instance with the - specified name. - - - Called by the to create - new named instances. - - - If the is null then the root logger - must be returned. - - - - - - Default constructor - - - - Initializes a new instance of the class. - - - - - - Create a new instance - - The that will own the . - The name of the . - The instance for the specified name. - - - Create a new instance with the - specified name. - - - Called by the to create - new named instances. - - - If the is null then the root logger - must be returned. - - - - - - Default internal subclass of - - - - This subclass has no additional behavior over the - class but does allow instances - to be created. - - - - - - Implementation of used by - - - - Internal class used to provide implementation of - interface. Applications should use to get - logger instances. - - - This is one of the central classes in the log4net implementation. One of the - distinctive features of log4net are hierarchical loggers and their - evaluation. The organizes the - instances into a rooted tree hierarchy. - - - The class is abstract. Only concrete subclasses of - can be created. The - is used to create instances of this type for the . - - - Nicko Cadell - Gert Driesen - Aspi Havewala - Douglas de la Torre - - - - This constructor created a new instance and - sets its name. - - The name of the . - - - This constructor is protected and designed to be used by - a subclass that is not abstract. - - - Loggers are constructed by - objects. See for the default - logger creator. - - - - - - Add to the list of appenders of this - Logger instance. - - An appender to add to this logger - - - Add to the list of appenders of this - Logger instance. - - - If is already in the list of - appenders, then it won't be added again. - - - - - - Look for the appender named as name - - The name of the appender to lookup - The appender with the name specified, or null. - - - Returns the named appender, or null if the appender is not found. - - - - - - Remove all previously added appenders from this Logger instance. - - - - Remove all previously added appenders from this Logger instance. - - - This is useful when re-reading configuration information. - - - - - - Remove the appender passed as parameter form the list of appenders. - - The appender to remove - The appender removed from the list - - - Remove the appender passed as parameter form the list of appenders. - The appender removed is not closed. - If you are discarding the appender you must call - on the appender removed. - - - - - - Remove the appender passed as parameter form the list of appenders. - - The name of the appender to remove - The appender removed from the list - - - Remove the named appender passed as parameter form the list of appenders. - The appender removed is not closed. - If you are discarding the appender you must call - on the appender removed. - - - - - - This generic form is intended to be used by wrappers. - - The declaring type of the method that is - the stack boundary into the logging system for this call. - The level of the message to be logged. - The message object to log. - The exception to log, including its stack trace. - - - Generate a logging event for the specified using - the and . - - - This method must not throw any exception to the caller. - - - - - - This is the most generic printing method that is intended to be used - by wrappers. - - The event being logged. - - - Logs the specified logging event through this logger. - - - This method must not throw any exception to the caller. - - - - - - Checks if this logger is enabled for a given passed as parameter. - - The level to check. - - true if this logger is enabled for level, otherwise false. - - - - Test if this logger is going to log events of the specified . - - - This method must not throw any exception to the caller. - - - - - - Deliver the to the attached appenders. - - The event to log. - - - Call the appenders in the hierarchy starting at - this. If no appenders could be found, emit a - warning. - - - This method calls all the appenders inherited from the - hierarchy circumventing any evaluation of whether to log or not - to log the particular log request. - - - - - - Closes all attached appenders implementing the interface. - - - - Used to ensure that the appenders are correctly shutdown. - - - - - - This is the most generic printing method. This generic form is intended to be used by wrappers - - The level of the message to be logged. - The message object to log. - The exception to log, including its stack trace. - - - Generate a logging event for the specified using - the . - - - - - - Creates a new logging event and logs the event without further checks. - - The declaring type of the method that is - the stack boundary into the logging system for this call. - The level of the message to be logged. - The message object to log. - The exception to log, including its stack trace. - - - Generates a logging event and delivers it to the attached - appenders. - - - - - - Creates a new logging event and logs the event without further checks. - - The event being logged. - - - Delivers the logging event to the attached appenders. - - - - - - The fully qualified type of the Logger class. - - - - - The name of this logger. - - - - - The assigned level of this logger. - - - - The level variable need not be - assigned a value in which case it is inherited - form the hierarchy. - - - - - - The parent of this logger. - - - - The parent of this logger. - All loggers have at least one ancestor which is the root logger. - - - - - - Loggers need to know what Hierarchy they are in. - - - - Loggers need to know what Hierarchy they are in. - The hierarchy that this logger is a member of is stored - here. - - - - - - Helper implementation of the interface - - - - - Flag indicating if child loggers inherit their parents appenders - - - - Additivity is set to true by default, that is children inherit - the appenders of their ancestors by default. If this variable is - set to false then the appenders found in the - ancestors of this logger are not used. However, the children - of this logger will inherit its appenders, unless the children - have their additivity flag set to false too. See - the user manual for more details. - - - - - - Lock to protect AppenderAttachedImpl variable m_appenderAttachedImpl - - - - - Gets or sets the parent logger in the hierarchy. - - - The parent logger in the hierarchy. - - - - Part of the Composite pattern that makes the hierarchy. - The hierarchy is parent linked rather than child linked. - - - - - - Gets or sets a value indicating if child loggers inherit their parent's appenders. - - - true if child loggers inherit their parent's appenders. - - - - Additivity is set to true by default, that is children inherit - the appenders of their ancestors by default. If this variable is - set to false then the appenders found in the - ancestors of this logger are not used. However, the children - of this logger will inherit its appenders, unless the children - have their additivity flag set to false too. See - the user manual for more details. - - - - - - Gets the effective level for this logger. - - The nearest level in the logger hierarchy. - - - Starting from this logger, searches the logger hierarchy for a - non-null level and returns it. Otherwise, returns the level of the - root logger. - - The Logger class is designed so that this method executes as - quickly as possible. - - - - - Gets or sets the where this - Logger instance is attached to. - - The hierarchy that this logger belongs to. - - - This logger must be attached to a single . - - - - - - Gets or sets the assigned , if any, for this Logger. - - - The of this logger. - - - - The assigned can be null. - - - - - - Get the appenders contained in this logger as an - . - - A collection of the appenders in this logger - - - Get the appenders contained in this logger as an - . If no appenders - can be found, then a is returned. - - - - - - Gets the logger name. - - - The name of the logger. - - - - The name of this logger - - - - - - Gets the where this - Logger instance is attached to. - - - The that this logger belongs to. - - - - Gets the where this - Logger instance is attached to. - - - - - - Construct a new Logger - - the name of the logger - - - Initializes a new instance of the class - with the specified name. - - - - - - Delegate used to handle logger creation event notifications. - - The in which the has been created. - The event args that hold the instance that has been created. - - - Delegate used to handle logger creation event notifications. - - - - - - Provides data for the event. - - - - A event is raised every time a - is created. - - - - - - The created - - - - - Constructor - - The that has been created. - - - Initializes a new instance of the event argument - class,with the specified . - - - - - - Gets the that has been created. - - - The that has been created. - - - - The that has been created. - - - - - - Hierarchical organization of loggers - - - - The casual user should not have to deal with this class - directly. - - - This class is specialized in retrieving loggers by name and - also maintaining the logger hierarchy. Implements the - interface. - - - The structure of the logger hierarchy is maintained by the - method. The hierarchy is such that children - link to their parent but parents do not have any references to their - children. Moreover, loggers can be instantiated in any order, in - particular descendant before ancestor. - - - In case a descendant is created before a particular ancestor, - then it creates a provision node for the ancestor and adds itself - to the provision node. Other descendants of the same ancestor add - themselves to the previously created provision node. - - - Nicko Cadell - Gert Driesen - - - - Base implementation of - - - - Default abstract implementation of the interface. - - - Skeleton implementation of the interface. - All types can extend this type. - - - Nicko Cadell - Gert Driesen - - - - Interface implemented by logger repositories. - - - - This interface is implemented by logger repositories. e.g. - . - - - This interface is used by the - to obtain interfaces. - - - Nicko Cadell - Gert Driesen - - - - Check if the named logger exists in the repository. If so return - its reference, otherwise returns null. - - The name of the logger to lookup - The Logger object with the name specified - - - If the names logger exists it is returned, otherwise - null is returned. - - - - - - Returns all the currently defined loggers as an Array. - - All the defined loggers - - - Returns all the currently defined loggers as an Array. - - - - - - Returns a named logger instance - - The name of the logger to retrieve - The logger object with the name specified - - - Returns a named logger instance. - - - If a logger of that name already exists, then it will be - returned. Otherwise, a new logger will be instantiated and - then linked with its existing ancestors as well as children. - - - - - Shutdown the repository - - - Shutting down a repository will safely close and remove - all appenders in all loggers including the root logger. - - - Some appenders need to be closed before the - application exists. Otherwise, pending logging events might be - lost. - - - The method is careful to close nested - appenders before closing regular appenders. This is allows - configurations where a regular appender is attached to a logger - and again to a nested appender. - - - - - - Reset the repositories configuration to a default state - - - - Reset all values contained in this instance to their - default state. - - - Existing loggers are not removed. They are just reset. - - - This method should be used sparingly and with care as it will - block all logging until it is completed. - - - - - - Log the through this repository. - - the event to log - - - This method should not normally be used to log. - The interface should be used - for routine logging. This interface can be obtained - using the method. - - - The logEvent is delivered to the appropriate logger and - that logger is then responsible for logging the event. - - - - - - Returns all the Appenders that are configured as an Array. - - All the Appenders - - - Returns all the Appenders that are configured as an Array. - - - - - - The name of the repository - - - The name of the repository - - - - The name of the repository. - - - - - - RendererMap accesses the object renderer map for this repository. - - - RendererMap accesses the object renderer map for this repository. - - - - RendererMap accesses the object renderer map for this repository. - - - The RendererMap holds a mapping between types and - objects. - - - - - - The plugin map for this repository. - - - The plugin map for this repository. - - - - The plugin map holds the instances - that have been attached to this repository. - - - - - - Get the level map for the Repository. - - - - Get the level map for the Repository. - - - The level map defines the mappings between - level names and objects in - this repository. - - - - - - The threshold for all events in this repository - - - The threshold for all events in this repository - - - - The threshold for all events in this repository. - - - - - - Flag indicates if this repository has been configured. - - - Flag indicates if this repository has been configured. - - - - Flag indicates if this repository has been configured. - - - - - - Collection of internal messages captured during the most - recent configuration process. - - - - - Event to notify that the repository has been shutdown. - - - Event to notify that the repository has been shutdown. - - - - Event raised when the repository has been shutdown. - - - - - - Event to notify that the repository has had its configuration reset. - - - Event to notify that the repository has had its configuration reset. - - - - Event raised when the repository's configuration has been - reset to default. - - - - - - Event to notify that the repository has had its configuration changed. - - - Event to notify that the repository has had its configuration changed. - - - - Event raised when the repository's configuration has been changed. - - - - - - Repository specific properties - - - Repository specific properties - - - - These properties can be specified on a repository specific basis. - - - - - - Default Constructor - - - - Initializes the repository with default (empty) properties. - - - - - - Construct the repository using specific properties - - the properties to set for this repository - - - Initializes the repository with specified properties. - - - - - - Test if logger exists - - The name of the logger to lookup - The Logger object with the name specified - - - Check if the named logger exists in the repository. If so return - its reference, otherwise returns null. - - - - - - Returns all the currently defined loggers in the repository - - All the defined loggers - - - Returns all the currently defined loggers in the repository as an Array. - - - - - - Return a new logger instance - - The name of the logger to retrieve - The logger object with the name specified - - - Return a new logger instance. - - - If a logger of that name already exists, then it will be - returned. Otherwise, a new logger will be instantiated and - then linked with its existing ancestors as well as children. - - - - - - Shutdown the repository - - - - Shutdown the repository. Can be overridden in a subclass. - This base class implementation notifies the - listeners and all attached plugins of the shutdown event. - - - - - - Reset the repositories configuration to a default state - - - - Reset all values contained in this instance to their - default state. - - - Existing loggers are not removed. They are just reset. - - - This method should be used sparingly and with care as it will - block all logging until it is completed. - - - - - - Log the logEvent through this repository. - - the event to log - - - This method should not normally be used to log. - The interface should be used - for routine logging. This interface can be obtained - using the method. - - - The logEvent is delivered to the appropriate logger and - that logger is then responsible for logging the event. - - - - - - Returns all the Appenders that are configured as an Array. - - All the Appenders - - - Returns all the Appenders that are configured as an Array. - - - - - - The fully qualified type of the LoggerRepositorySkeleton class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Adds an object renderer for a specific class. - - The type that will be rendered by the renderer supplied. - The object renderer used to render the object. - - - Adds an object renderer for a specific class. - - - - - - Notify the registered listeners that the repository is shutting down - - Empty EventArgs - - - Notify any listeners that this repository is shutting down. - - - - - - Notify the registered listeners that the repository has had its configuration reset - - Empty EventArgs - - - Notify any listeners that this repository's configuration has been reset. - - - - - - Notify the registered listeners that the repository has had its configuration changed - - Empty EventArgs - - - Notify any listeners that this repository's configuration has changed. - - - - - - Raise a configuration changed event on this repository - - EventArgs.Empty - - - Applications that programmatically change the configuration of the repository should - raise this event notification to notify listeners. - - - - - - The name of the repository - - - The string name of the repository - - - - The name of this repository. The name is - used to store and lookup the repositories - stored by the . - - - - - - The threshold for all events in this repository - - - The threshold for all events in this repository - - - - The threshold for all events in this repository - - - - - - RendererMap accesses the object renderer map for this repository. - - - RendererMap accesses the object renderer map for this repository. - - - - RendererMap accesses the object renderer map for this repository. - - - The RendererMap holds a mapping between types and - objects. - - - - - - The plugin map for this repository. - - - The plugin map for this repository. - - - - The plugin map holds the instances - that have been attached to this repository. - - - - - - Get the level map for the Repository. - - - - Get the level map for the Repository. - - - The level map defines the mappings between - level names and objects in - this repository. - - - - - - Flag indicates if this repository has been configured. - - - Flag indicates if this repository has been configured. - - - - Flag indicates if this repository has been configured. - - - - - - Contains a list of internal messages captures during the - last configuration. - - - - - Event to notify that the repository has been shutdown. - - - Event to notify that the repository has been shutdown. - - - - Event raised when the repository has been shutdown. - - - - - - Event to notify that the repository has had its configuration reset. - - - Event to notify that the repository has had its configuration reset. - - - - Event raised when the repository's configuration has been - reset to default. - - - - - - Event to notify that the repository has had its configuration changed. - - - Event to notify that the repository has had its configuration changed. - - - - Event raised when the repository's configuration has been changed. - - - - - - Repository specific properties - - - Repository specific properties - - - These properties can be specified on a repository specific basis - - - - - Basic Configurator interface for repositories - - - - Interface used by basic configurator to configure a - with a default . - - - A should implement this interface to support - configuration by the . - - - Nicko Cadell - Gert Driesen - - - - Initialize the repository using the specified appender - - the appender to use to log all logging events - - - Configure the repository to route all logging events to the - specified appender. - - - - - - Initialize the repository using the specified appenders - - the appenders to use to log all logging events - - - Configure the repository to route all logging events to the - specified appenders. - - - - - - Configure repository using XML - - - - Interface used by Xml configurator to configure a . - - - A should implement this interface to support - configuration by the . - - - Nicko Cadell - Gert Driesen - - - - Initialize the repository using the specified config - - the element containing the root of the config - - - The schema for the XML configuration data is defined by - the implementation. - - - - - - Default constructor - - - - Initializes a new instance of the class. - - - - - - Construct with properties - - The properties to pass to this repository. - - - Initializes a new instance of the class. - - - - - - Construct with a logger factory - - The factory to use to create new logger instances. - - - Initializes a new instance of the class with - the specified . - - - - - - Construct with properties and a logger factory - - The properties to pass to this repository. - The factory to use to create new logger instances. - - - Initializes a new instance of the class with - the specified . - - - - - - Test if a logger exists - - The name of the logger to lookup - The Logger object with the name specified - - - Check if the named logger exists in the hierarchy. If so return - its reference, otherwise returns null. - - - - - - Returns all the currently defined loggers in the hierarchy as an Array - - All the defined loggers - - - Returns all the currently defined loggers in the hierarchy as an Array. - The root logger is not included in the returned - enumeration. - - - - - - Return a new logger instance named as the first parameter using - the default factory. - - - - Return a new logger instance named as the first parameter using - the default factory. - - - If a logger of that name already exists, then it will be - returned. Otherwise, a new logger will be instantiated and - then linked with its existing ancestors as well as children. - - - The name of the logger to retrieve - The logger object with the name specified - - - - Shutting down a hierarchy will safely close and remove - all appenders in all loggers including the root logger. - - - - Shutting down a hierarchy will safely close and remove - all appenders in all loggers including the root logger. - - - Some appenders need to be closed before the - application exists. Otherwise, pending logging events might be - lost. - - - The Shutdown method is careful to close nested - appenders before closing regular appenders. This is allows - configurations where a regular appender is attached to a logger - and again to a nested appender. - - - - - - Reset all values contained in this hierarchy instance to their default. - - - - Reset all values contained in this hierarchy instance to their - default. This removes all appenders from all loggers, sets - the level of all non-root loggers to null, - sets their additivity flag to true and sets the level - of the root logger to . Moreover, - message disabling is set its default "off" value. - - - Existing loggers are not removed. They are just reset. - - - This method should be used sparingly and with care as it will - block all logging until it is completed. - - - - - - Log the logEvent through this hierarchy. - - the event to log - - - This method should not normally be used to log. - The interface should be used - for routine logging. This interface can be obtained - using the method. - - - The logEvent is delivered to the appropriate logger and - that logger is then responsible for logging the event. - - - - - - Returns all the Appenders that are currently configured - - An array containing all the currently configured appenders - - - Returns all the instances that are currently configured. - All the loggers are searched for appenders. The appenders may also be containers - for appenders and these are also searched for additional loggers. - - - The list returned is unordered but does not contain duplicates. - - - - - - Collect the appenders from an . - The appender may also be a container. - - - - - - - Collect the appenders from an container - - - - - - - Initialize the log4net system using the specified appender - - the appender to use to log all logging events - - - - Initialize the log4net system using the specified appenders - - the appenders to use to log all logging events - - - - Initialize the log4net system using the specified appenders - - the appenders to use to log all logging events - - - This method provides the same functionality as the - method implemented - on this object, but it is protected and therefore can be called by subclasses. - - - - - - Initialize the log4net system using the specified config - - the element containing the root of the config - - - - Initialize the log4net system using the specified config - - the element containing the root of the config - - - This method provides the same functionality as the - method implemented - on this object, but it is protected and therefore can be called by subclasses. - - - - - - Test if this hierarchy is disabled for the specified . - - The level to check against. - - true if the repository is disabled for the level argument, false otherwise. - - - - If this hierarchy has not been configured then this method will - always return true. - - - This method will return true if this repository is - disabled for level object passed as parameter and - false otherwise. - - - See also the property. - - - - - - Clear all logger definitions from the internal hashtable - - - - This call will clear all logger definitions from the internal - hashtable. Invoking this method will irrevocably mess up the - logger hierarchy. - - - You should really know what you are doing before - invoking this method. - - - - - - Return a new logger instance named as the first parameter using - . - - The name of the logger to retrieve - The factory that will make the new logger instance - The logger object with the name specified - - - If a logger of that name already exists, then it will be - returned. Otherwise, a new logger will be instantiated by the - parameter and linked with its existing - ancestors as well as children. - - - - - - Sends a logger creation event to all registered listeners - - The newly created logger - - Raises the logger creation event. - - - - - Updates all the parents of the specified logger - - The logger to update the parents for - - - This method loops through all the potential parents of - . There 3 possible cases: - - - - No entry for the potential parent of exists - - We create a ProvisionNode for this potential - parent and insert in that provision node. - - - - The entry is of type Logger for the potential parent. - - The entry is 's nearest existing parent. We - update 's parent field with this entry. We also break from - he loop because updating our parent's parent is our parent's - responsibility. - - - - The entry is of type ProvisionNode for this potential parent. - - We add to the list of children for this - potential parent. - - - - - - - - Replace a with a in the hierarchy. - - - - - - We update the links for all the children that placed themselves - in the provision node 'pn'. The second argument 'log' is a - reference for the newly created Logger, parent of all the - children in 'pn'. - - - We loop on all the children 'c' in 'pn'. - - - If the child 'c' has been already linked to a child of - 'log' then there is no need to update 'c'. - - - Otherwise, we set log's parent field to c's parent and set - c's parent field to log. - - - - - - Define or redefine a Level using the values in the argument - - the level values - - - Define or redefine a Level using the values in the argument - - - Supports setting levels via the configuration file. - - - - - - Set a Property using the values in the argument - - the property value - - - Set a Property using the values in the argument. - - - Supports setting property values via the configuration file. - - - - - - The fully qualified type of the Hierarchy class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Event used to notify that a logger has been created. - - - - Event raised when a logger is created. - - - - - - Has no appender warning been emitted - - - - Flag to indicate if we have already issued a warning - about not having an appender warning. - - - - - - Get the root of this hierarchy - - - - Get the root of this hierarchy. - - - - - - Gets or sets the default instance. - - The default - - - The logger factory is used to create logger instances. - - - - - - A class to hold the value, name and display name for a level - - - - A class to hold the value, name and display name for a level - - - - - - Override Object.ToString to return sensible debug info - - string info about this object - - - - Value of the level - - - - If the value is not set (defaults to -1) the value will be looked - up for the current level with the same name. - - - - - - Name of the level - - - The name of the level - - - - The name of the level. - - - - - - Display name for the level - - - The display name of the level - - - - The display name of the level. - - - - - - Used internally to accelerate hash table searches. - - - - Internal class used to improve performance of - string keyed hashtables. - - - The hashcode of the string is cached for reuse. - The string is stored as an interned value. - When comparing two objects for equality - the reference equality of the interned strings is compared. - - - Nicko Cadell - Gert Driesen - - - - Construct key with string name - - - - Initializes a new instance of the class - with the specified name. - - - Stores the hashcode of the string and interns - the string key to optimize comparisons. - - - The Compact Framework 1.0 the - method does not work. On the Compact Framework - the string keys are not interned nor are they - compared by reference. - - - The name of the logger. - - - - Returns a hash code for the current instance. - - A hash code for the current instance. - - - Returns the cached hashcode. - - - - - - Determines whether two instances - are equal. - - The to compare with the current . - - true if the specified is equal to the current ; otherwise, false. - - - - Compares the references of the interned strings. - - - - - - Provision nodes are used where no logger instance has been specified - - - - instances are used in the - when there is no specified - for that node. - - - A provision node holds a list of child loggers on behalf of - a logger that does not exist. - - - Nicko Cadell - Gert Driesen - - - - Create a new provision node with child node - - A child logger to add to this node. - - - Initializes a new instance of the class - with the specified child logger. - - - - - - The sits at the root of the logger hierarchy tree. - - - - The is a regular except - that it provides several guarantees. - - - First, it cannot be assigned a null - level. Second, since the root logger cannot have a parent, the - property always returns the value of the - level field without walking the hierarchy. - - - Nicko Cadell - Gert Driesen - - - - Construct a - - The level to assign to the root logger. - - - Initializes a new instance of the class with - the specified logging level. - - - The root logger names itself as "root". However, the root - logger cannot be retrieved by name. - - - - - - The fully qualified type of the RootLogger class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Gets the assigned level value without walking the logger hierarchy. - - The assigned level value without walking the logger hierarchy. - - - Because the root logger cannot have a parent and its level - must not be null this property just returns the - value of . - - - - - - Gets or sets the assigned for the root logger. - - - The of the root logger. - - - - Setting the level of the root logger to a null reference - may have catastrophic results. We prevent this here. - - - - - - Initializes the log4net environment using an XML DOM. - - - - Configures a using an XML DOM. - - - Nicko Cadell - Gert Driesen - - - - Construct the configurator for a hierarchy - - The hierarchy to build. - - - Initializes a new instance of the class - with the specified . - - - - - - Configure the hierarchy by parsing a DOM tree of XML elements. - - The root element to parse. - - - Configure the hierarchy by parsing a DOM tree of XML elements. - - - - - - Parse appenders by IDREF. - - The appender ref element. - The instance of the appender that the ref refers to. - - - Parse an XML element that represents an appender and return - the appender. - - - - - - Parses an appender element. - - The appender element. - The appender instance or null when parsing failed. - - - Parse an XML element that represents an appender and return - the appender instance. - - - - - - Parses a logger element. - - The logger element. - - - Parse an XML element that represents a logger. - - - - - - Parses the root logger element. - - The root element. - - - Parse an XML element that represents the root logger. - - - - - - Parses the children of a logger element. - - The category element. - The logger instance. - Flag to indicate if the logger is the root logger. - - - Parse the child elements of a <logger> element. - - - - - - Parses an object renderer. - - The renderer element. - - - Parse an XML element that represents a renderer. - - - - - - Parses a level element. - - The level element. - The logger object to set the level on. - Flag to indicate if the logger is the root logger. - - - Parse an XML element that represents a level. - - - - - - Sets a parameter on an object. - - The parameter element. - The object to set the parameter on. - - The parameter name must correspond to a writable property - on the object. The value of the parameter is a string, - therefore this function will attempt to set a string - property first. If unable to set a string property it - will inspect the property and its argument type. It will - attempt to call a static method called Parse on the - type of the property. This method will take a single - string argument and return a value that can be used to - set the property. - - - - - Test if an element has no attributes or child elements - - the element to inspect - true if the element has any attributes or child elements, false otherwise - - - - Test if a is constructible with Activator.CreateInstance. - - the type to inspect - true if the type is creatable using a default constructor, false otherwise - - - - Look for a method on the that matches the supplied - - the type that has the method - the name of the method - the method info found - - - The method must be a public instance method on the . - The method must be named or "Add" followed by . - The method must take a single parameter. - - - - - - Converts a string value to a target type. - - The type of object to convert the string to. - The string value to use as the value of the object. - - - An object of type with value or - null when the conversion could not be performed. - - - - - - Creates an object as specified in XML. - - The XML element that contains the definition of the object. - The object type to use if not explicitly specified. - The type that the returned object must be or must inherit from. - The object or null - - - Parse an XML element and create an object instance based on the configuration - data. - - - The type of the instance may be specified in the XML. If not - specified then the is used - as the type. However the type is specified it must support the - type. - - - - - - key: appenderName, value: appender. - - - - - The Hierarchy being configured. - - - - - The fully qualified type of the XmlHierarchyConfigurator class. - - - Used by the internal logger to record the Type of the - log message. - - - - - - - - - - - - - - - - - - - - - Delegate used to handle logger repository shutdown event notifications - - The that is shutting down. - Empty event args - - - Delegate used to handle logger repository shutdown event notifications. - - - - - - Delegate used to handle logger repository configuration reset event notifications - - The that has had its configuration reset. - Empty event args - - - Delegate used to handle logger repository configuration reset event notifications. - - - - - - Delegate used to handle event notifications for logger repository configuration changes. - - The that has had its configuration changed. - Empty event arguments. - - - Delegate used to handle event notifications for logger repository configuration changes. - - - - - - Write the name of the current AppDomain to the output - - - - Write the name of the current AppDomain to the output writer - - - Nicko Cadell - - - - Write the name of the current AppDomain to the output - - the writer to write to - null, state is not set - - - Writes name of the current AppDomain to the output . - - - - - - Write the current date to the output - - - - Date pattern converter, uses a to format - the current date and time to the writer as a string. - - - The value of the determines - the formatting of the date. The following values are allowed: - - - Option value - Output - - - ISO8601 - - Uses the formatter. - Formats using the "yyyy-MM-dd HH:mm:ss,fff" pattern. - - - - DATE - - Uses the formatter. - Formats using the "dd MMM yyyy HH:mm:ss,fff" for example, "06 Nov 1994 15:49:37,459". - - - - ABSOLUTE - - Uses the formatter. - Formats using the "HH:mm:ss,fff" for example, "15:49:37,459". - - - - other - - Any other pattern string uses the formatter. - This formatter passes the pattern string to the - method. - For details on valid patterns see - DateTimeFormatInfo Class. - - - - - - The date and time is in the local time zone and is rendered in that zone. - To output the time in Universal time see . - - - Nicko Cadell - - - - The used to render the date to a string - - - - The used to render the date to a string - - - - - - Initialize the converter options - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - Write the current date to the output - - that will receive the formatted result. - null, state is not set - - - Pass the current date and time to the - for it to render it to the writer. - - - The date and time passed is in the local time zone. - - - - - - The fully qualified type of the DatePatternConverter class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Write an folder path to the output - - - - Write an special path environment folder path to the output writer. - The value of the determines - the name of the variable to output. - should be a value in the enumeration. - - - Ron Grabowski - - - - Write an special path environment folder path to the output - - the writer to write to - null, state is not set - - - Writes the special path environment folder path to the output . - The name of the special path environment folder path to output must be set - using the - property. - - - - - - The fully qualified type of the EnvironmentFolderPathPatternConverter class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Write an environment variable to the output - - - - Write an environment variable to the output writer. - The value of the determines - the name of the variable to output. - - - Nicko Cadell - - - - Write an environment variable to the output - - the writer to write to - null, state is not set - - - Writes the environment variable to the output . - The name of the environment variable to output must be set - using the - property. - - - - - - The fully qualified type of the EnvironmentPatternConverter class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Write the current thread identity to the output - - - - Write the current thread identity to the output writer - - - Nicko Cadell - - - - Write the current thread identity to the output - - the writer to write to - null, state is not set - - - Writes the current thread identity to the output . - - - - - - The fully qualified type of the IdentityPatternConverter class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Pattern converter for literal string instances in the pattern - - - - Writes the literal string value specified in the - property to - the output. - - - Nicko Cadell - - - - Set the next converter in the chain - - The next pattern converter in the chain - The next pattern converter - - - Special case the building of the pattern converter chain - for instances. Two adjacent - literals in the pattern can be represented by a single combined - pattern converter. This implementation detects when a - is added to the chain - after this converter and combines its value with this converter's - literal value. - - - - - - Write the literal to the output - - the writer to write to - null, not set - - - Override the formatting behavior to ignore the FormattingInfo - because we have a literal instead. - - - Writes the value of - to the output . - - - - - - Convert this pattern into the rendered message - - that will receive the formatted result. - null, not set - - - This method is not used. - - - - - - Writes a newline to the output - - - - Writes the system dependent line terminator to the output. - This behavior can be overridden by setting the : - - - - Option Value - Output - - - DOS - DOS or Windows line terminator "\r\n" - - - UNIX - UNIX line terminator "\n" - - - - Nicko Cadell - - - - Initialize the converter - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - Write the current process ID to the output - - - - Write the current process ID to the output writer - - - Nicko Cadell - - - - Write the current process ID to the output - - the writer to write to - null, state is not set - - - Write the current process ID to the output . - - - - - - The fully qualified type of the ProcessIdPatternConverter class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Property pattern converter - - - - This pattern converter reads the thread and global properties. - The thread properties take priority over global properties. - See for details of the - thread properties. See for - details of the global properties. - - - If the is specified then that will be used to - lookup a single property. If no is specified - then all properties will be dumped as a list of key value pairs. - - - Nicko Cadell - - - - Write the property value to the output - - that will receive the formatted result. - null, state is not set - - - Writes out the value of a named property. The property name - should be set in the - property. - - - If the is set to null - then all the properties are written as key value pairs. - - - - - - A Pattern converter that generates a string of random characters - - - - The converter generates a string of random characters. By default - the string is length 4. This can be changed by setting the - to the string value of the length required. - - - The random characters in the string are limited to uppercase letters - and numbers only. - - - The random number generator used by this class is not cryptographically secure. - - - Nicko Cadell - - - - Shared random number generator - - - - - Length of random string to generate. Default length 4. - - - - - Initialize the converter options - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - Write a randoim string to the output - - the writer to write to - null, state is not set - - - Write a randoim string to the output . - - - - - - The fully qualified type of the RandomStringPatternConverter class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Write the current threads username to the output - - - - Write the current threads username to the output writer - - - Nicko Cadell - - - - Write the current threads username to the output - - the writer to write to - null, state is not set - - - Write the current threads username to the output . - - - - - - The fully qualified type of the UserNamePatternConverter class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Write the UTC date time to the output - - - - Date pattern converter, uses a to format - the current date and time in Universal time. - - - See the for details on the date pattern syntax. - - - - Nicko Cadell - - - - Write the current date and time to the output - - that will receive the formatted result. - null, state is not set - - - Pass the current date and time to the - for it to render it to the writer. - - - The date is in Universal time when it is rendered. - - - - - - - The fully qualified type of the UtcDatePatternConverter class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Type converter for Boolean. - - - - Supports conversion from string to bool type. - - - - - - Nicko Cadell - Gert Driesen - - - - Can the source type be converted to the type supported by this object - - the type to convert - true if the conversion is possible - - - Returns true if the is - the type. - - - - - - Convert the source object to the type supported by this object - - the object to convert - the converted object - - - Uses the method to convert the - argument to a . - - - - The object cannot be converted to the - target type. To check for this condition use the - method. - - - - - Exception base type for conversion errors. - - - - This type extends . It - does not add any new functionality but does differentiate the - type of exception being thrown. - - - Nicko Cadell - Gert Driesen - - - - Constructor - - - - Initializes a new instance of the class. - - - - - - Constructor - - A message to include with the exception. - - - Initializes a new instance of the class - with the specified message. - - - - - - Constructor - - A message to include with the exception. - A nested exception to include. - - - Initializes a new instance of the class - with the specified message and inner exception. - - - - - - Serialization constructor - - The that holds the serialized object data about the exception being thrown. - The that contains contextual information about the source or destination. - - - Initializes a new instance of the class - with serialized data. - - - - - - Creates a new instance of the class. - - The conversion destination type. - The value to convert. - An instance of the . - - - Creates a new instance of the class. - - - - - - Creates a new instance of the class. - - The conversion destination type. - The value to convert. - A nested exception to include. - An instance of the . - - - Creates a new instance of the class. - - - - - - Register of type converters for specific types. - - - - Maintains a registry of type converters used to convert between - types. - - - Use the and - methods to register new converters. - The and methods - lookup appropriate converters to use. - - - - - Nicko Cadell - Gert Driesen - - - - Private constructor - - - Initializes a new instance of the class. - - - - - Static constructor. - - - - This constructor defines the intrinsic type converters. - - - - - - Adds a converter for a specific type. - - The type being converted to. - The type converter to use to convert to the destination type. - - - Adds a converter instance for a specific type. - - - - - - Adds a converter for a specific type. - - The type being converted to. - The type of the type converter to use to convert to the destination type. - - - Adds a converter for a specific type. - - - - - - Gets the type converter to use to convert values to the destination type. - - The type being converted from. - The type being converted to. - - The type converter instance to use for type conversions or null - if no type converter is found. - - - - Gets the type converter to use to convert values to the destination type. - - - - - - Gets the type converter to use to convert values to the destination type. - - The type being converted to. - - The type converter instance to use for type conversions or null - if no type converter is found. - - - - Gets the type converter to use to convert values to the destination type. - - - - - - Lookups the type converter to use as specified by the attributes on the - destination type. - - The type being converted to. - - The type converter instance to use for type conversions or null - if no type converter is found. - - - - - Creates the instance of the type converter. - - The type of the type converter. - - The type converter instance to use for type conversions or null - if no type converter is found. - - - - The type specified for the type converter must implement - the or interfaces - and must have a public default (no argument) constructor. - - - - - - The fully qualified type of the ConverterRegistry class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Mapping from to type converter. - - - - - Supports conversion from string to type. - - - - Supports conversion from string to type. - - - - - - Nicko Cadell - Gert Driesen - - - - Can the source type be converted to the type supported by this object - - the type to convert - true if the conversion is possible - - - Returns true if the is - the type. - - - - - - Overrides the ConvertFrom method of IConvertFrom. - - the object to convert to an encoding - the encoding - - - Uses the method to - convert the argument to an . - - - - The object cannot be converted to the - target type. To check for this condition use the - method. - - - - - Interface supported by type converters - - - - This interface supports conversion from a single type to arbitrary types. - See . - - - Nicko Cadell - - - - Returns whether this converter can convert the object to the specified type - - A Type that represents the type you want to convert to - true if the conversion is possible - - - Test if the type supported by this converter can be converted to the - . - - - - - - Converts the given value object to the specified type, using the arguments - - the object to convert - The Type to convert the value parameter to - the converted object - - - Converts the (which must be of the type supported - by this converter) to the specified.. - - - - - - Supports conversion from string to type. - - - - Supports conversion from string to type. - - - - - Nicko Cadell - - - - Can the source type be converted to the type supported by this object - - the type to convert - true if the conversion is possible - - - Returns true if the is - the type. - - - - - - Overrides the ConvertFrom method of IConvertFrom. - - the object to convert to an IPAddress - the IPAddress - - - Uses the method to convert the - argument to an . - If that fails then the string is resolved as a DNS hostname. - - - - The object cannot be converted to the - target type. To check for this condition use the - method. - - - - - Valid characters in an IPv4 or IPv6 address string. (Does not support subnets) - - - - - Supports conversion from string to type. - - - - Supports conversion from string to type. - - - The string is used as the - of the . - - - - - - Nicko Cadell - - - - Can the source type be converted to the type supported by this object - - the type to convert - true if the conversion is possible - - - Returns true if the is - the type. - - - - - - Overrides the ConvertFrom method of IConvertFrom. - - the object to convert to a PatternLayout - the PatternLayout - - - Creates and returns a new using - the as the - . - - - - The object cannot be converted to the - target type. To check for this condition use the - method. - - - - - Convert between string and - - - - Supports conversion from string to type, - and from a type to a string. - - - The string is used as the - of the . - - - - - - Nicko Cadell - - - - Can the target type be converted to the type supported by this object - - A that represents the type you want to convert to - true if the conversion is possible - - - Returns true if the is - assignable from a type. - - - - - - Converts the given value object to the specified type, using the arguments - - the object to convert - The Type to convert the value parameter to - the converted object - - - Uses the method to convert the - argument to a . - - - - The object cannot be converted to the - . To check for this condition use the - method. - - - - - Can the source type be converted to the type supported by this object - - the type to convert - true if the conversion is possible - - - Returns true if the is - the type. - - - - - - Overrides the ConvertFrom method of IConvertFrom. - - the object to convert to a PatternString - the PatternString - - - Creates and returns a new using - the as the - . - - - - The object cannot be converted to the - target type. To check for this condition use the - method. - - - - - Supports conversion from string to type. - - - - Supports conversion from string to type. - - - - - - Nicko Cadell - - - - Can the source type be converted to the type supported by this object - - the type to convert - true if the conversion is possible - - - Returns true if the is - the type. - - - - - - Overrides the ConvertFrom method of IConvertFrom. - - the object to convert to a Type - the Type - - - Uses the method to convert the - argument to a . - Additional effort is made to locate partially specified types - by searching the loaded assemblies. - - - - The object cannot be converted to the - target type. To check for this condition use the - method. - - - - - Attribute used to associate a type converter - - - - Class and Interface level attribute that specifies a type converter - to use with the associated type. - - - To associate a type converter with a target type apply a - TypeConverterAttribute to the target type. Specify the - type of the type converter on the attribute. - - - Nicko Cadell - Gert Driesen - - - - The string type name of the type converter - - - - - Default constructor - - - - Default constructor - - - - - - Create a new type converter attribute for the specified type name - - The string type name of the type converter - - - The type specified must implement the - or the interfaces. - - - - - - Create a new type converter attribute for the specified type - - The type of the type converter - - - The type specified must implement the - or the interfaces. - - - - - - The string type name of the type converter - - - The string type name of the type converter - - - - The type specified must implement the - or the interfaces. - - - - - - A straightforward implementation of the interface. - - - - This is the default implementation of the - interface. Implementors of the interface - should aggregate an instance of this type. - - - Nicko Cadell - Gert Driesen - - - - Constructor - - - - Initializes a new instance of the class. - - - - - - Append on on all attached appenders. - - The event being logged. - The number of appenders called. - - - Calls the method on all - attached appenders. - - - - - - Append on on all attached appenders. - - The array of events being logged. - The number of appenders called. - - - Calls the method on all - attached appenders. - - - - - - Calls the DoAppende method on the with - the objects supplied. - - The appender - The events - - - If the supports the - interface then the will be passed - through using that interface. Otherwise the - objects in the array will be passed one at a time. - - - - - - Attaches an appender. - - The appender to add. - - - If the appender is already in the list it won't be added again. - - - - - - Gets an attached appender with the specified name. - - The name of the appender to get. - - The appender with the name specified, or null if no appender with the - specified name is found. - - - - Lookup an attached appender by name. - - - - - - Removes all attached appenders. - - - - Removes and closes all attached appenders - - - - - - Removes the specified appender from the list of attached appenders. - - The appender to remove. - The appender removed from the list - - - The appender removed is not closed. - If you are discarding the appender you must call - on the appender removed. - - - - - - Removes the appender with the specified name from the list of appenders. - - The name of the appender to remove. - The appender removed from the list - - - The appender removed is not closed. - If you are discarding the appender you must call - on the appender removed. - - - - - - List of appenders - - - - - Array of appenders, used to cache the m_appenderList - - - - - The fully qualified type of the AppenderAttachedImpl class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Gets all attached appenders. - - - A collection of attached appenders, or null if there - are no attached appenders. - - - - The read only collection of all currently attached appenders. - - - - - - This class aggregates several PropertiesDictionary collections together. - - - - Provides a dictionary style lookup over an ordered list of - collections. - - - Nicko Cadell - - - - Constructor - - - - Initializes a new instance of the class. - - - - - - Add a Properties Dictionary to this composite collection - - the properties to add - - - Properties dictionaries added first take precedence over dictionaries added - later. - - - - - - Flatten this composite collection into a single properties dictionary - - the flattened dictionary - - - Reduces the collection of ordered dictionaries to a single dictionary - containing the resultant values for the keys. - - - - - - Gets the value of a property - - - The value for the property with the specified key - - - - Looks up the value for the specified. - The collections are searched - in the order in which they were added to this collection. The value - returned is the value held by the first collection that contains - the specified key. - - - If none of the collections contain the specified key then - null is returned. - - - - - - Base class for Context Properties implementations - - - - This class defines a basic property get set accessor - - - Nicko Cadell - - - - Gets or sets the value of a property - - - The value for the property with the specified key - - - - Gets or sets the value of a property - - - - - - Wrapper class used to map converter names to converter types - - - - Pattern converter info class used during configuration by custom - PatternString and PatternLayer converters. - - - - - - default constructor - - - - - - - - - - - Gets or sets the name of the conversion pattern - - - - The name of the pattern in the format string - - - - - - Gets or sets the type of the converter - - - - The value specified must extend the - type. - - - - - - - - - - - Subclass of that maintains a count of - the number of bytes written. - - - - This writer counts the number of bytes written. - - - Nicko Cadell - Gert Driesen - - - - that does not leak exceptions - - - - does not throw exceptions when things go wrong. - Instead, it delegates error handling to its . - - - Nicko Cadell - Gert Driesen - - - - Adapter that extends and forwards all - messages to an instance of . - - - - Adapter that extends and forwards all - messages to an instance of . - - - Nicko Cadell - - - - The writer to forward messages to - - - - - Create an instance of that forwards all - messages to a . - - The to forward to - - - Create an instance of that forwards all - messages to a . - - - - - - Closes the writer and releases any system resources associated with the writer - - - - - - - - - Dispose this writer - - flag indicating if we are being disposed - - - Dispose this writer - - - - - - Flushes any buffered output - - - - Clears all buffers for the writer and causes any buffered data to be written - to the underlying device - - - - - - Writes a character to the wrapped TextWriter - - the value to write to the TextWriter - - - Writes a character to the wrapped TextWriter - - - - - - Writes a character buffer to the wrapped TextWriter - - the data buffer - the start index - the number of characters to write - - - Writes a character buffer to the wrapped TextWriter - - - - - - Writes a string to the wrapped TextWriter - - the value to write to the TextWriter - - - Writes a string to the wrapped TextWriter - - - - - - Gets or sets the underlying . - - - The underlying . - - - - Gets or sets the underlying . - - - - - - The Encoding in which the output is written - - - The - - - - The Encoding in which the output is written - - - - - - Gets an object that controls formatting - - - The format provider - - - - Gets an object that controls formatting - - - - - - Gets or sets the line terminator string used by the TextWriter - - - The line terminator to use - - - - Gets or sets the line terminator string used by the TextWriter - - - - - - Constructor - - the writer to actually write to - the error handler to report error to - - - Create a new QuietTextWriter using a writer and error handler - - - - - - Writes a character to the underlying writer - - the char to write - - - Writes a character to the underlying writer - - - - - - Writes a buffer to the underlying writer - - the buffer to write - the start index to write from - the number of characters to write - - - Writes a buffer to the underlying writer - - - - - - Writes a string to the output. - - The string data to write to the output. - - - Writes a string to the output. - - - - - - Closes the underlying output writer. - - - - Closes the underlying output writer. - - - - - - The error handler instance to pass all errors to - - - - - Flag to indicate if this writer is closed - - - - - Gets or sets the error handler that all errors are passed to. - - - The error handler that all errors are passed to. - - - - Gets or sets the error handler that all errors are passed to. - - - - - - Gets a value indicating whether this writer is closed. - - - true if this writer is closed, otherwise false. - - - - Gets a value indicating whether this writer is closed. - - - - - - Constructor - - The to actually write to. - The to report errors to. - - - Creates a new instance of the class - with the specified and . - - - - - - Writes a character to the underlying writer and counts the number of bytes written. - - the char to write - - - Overrides implementation of . Counts - the number of bytes written. - - - - - - Writes a buffer to the underlying writer and counts the number of bytes written. - - the buffer to write - the start index to write from - the number of characters to write - - - Overrides implementation of . Counts - the number of bytes written. - - - - - - Writes a string to the output and counts the number of bytes written. - - The string data to write to the output. - - - Overrides implementation of . Counts - the number of bytes written. - - - - - - Total number of bytes written. - - - - - Gets or sets the total number of bytes written. - - - The total number of bytes written. - - - - Gets or sets the total number of bytes written. - - - - - - A fixed size rolling buffer of logging events. - - - - An array backed fixed size leaky bucket. - - - Nicko Cadell - Gert Driesen - - - - Constructor - - The maximum number of logging events in the buffer. - - - Initializes a new instance of the class with - the specified maximum number of buffered logging events. - - - The argument is not a positive integer. - - - - Appends a to the buffer. - - The event to append to the buffer. - The event discarded from the buffer, if the buffer is full, otherwise null. - - - Append an event to the buffer. If the buffer still contains free space then - null is returned. If the buffer is full then an event will be dropped - to make space for the new event, the event dropped is returned. - - - - - - Get and remove the oldest event in the buffer. - - The oldest logging event in the buffer - - - Gets the oldest (first) logging event in the buffer and removes it - from the buffer. - - - - - - Pops all the logging events from the buffer into an array. - - An array of all the logging events in the buffer. - - - Get all the events in the buffer and clear the buffer. - - - - - - Clear the buffer - - - - Clear the buffer of all events. The events in the buffer are lost. - - - - - - Gets the th oldest event currently in the buffer. - - The th oldest event currently in the buffer. - - - If is outside the range 0 to the number of events - currently in the buffer, then null is returned. - - - - - - Gets the maximum size of the buffer. - - The maximum size of the buffer. - - - Gets the maximum size of the buffer - - - - - - Gets the number of logging events in the buffer. - - The number of logging events in the buffer. - - - This number is guaranteed to be in the range 0 to - (inclusive). - - - - - - An always empty . - - - - A singleton implementation of the - interface that always represents an empty collection. - - - Nicko Cadell - Gert Driesen - - - - Initializes a new instance of the class. - - - - Uses a private access modifier to enforce the singleton pattern. - - - - - - Copies the elements of the to an - , starting at a particular Array index. - - The one-dimensional - that is the destination of the elements copied from - . The Array must have zero-based - indexing. - The zero-based index in array at which - copying begins. - - - As the collection is empty no values are copied into the array. - - - - - - Returns an enumerator that can iterate through a collection. - - - An that can be used to - iterate through the collection. - - - - As the collection is empty a is returned. - - - - - - The singleton instance of the empty collection. - - - - - Gets the singleton instance of the empty collection. - - The singleton instance of the empty collection. - - - Gets the singleton instance of the empty collection. - - - - - - Gets a value indicating if access to the is synchronized (thread-safe). - - - true if access to the is synchronized (thread-safe); otherwise, false. - - - - For the this property is always true. - - - - - - Gets the number of elements contained in the . - - - The number of elements contained in the . - - - - As the collection is empty the is always 0. - - - - - - Gets an object that can be used to synchronize access to the . - - - An object that can be used to synchronize access to the . - - - - As the collection is empty and thread safe and synchronized this instance is also - the object. - - - - - - An always empty . - - - - A singleton implementation of the - interface that always represents an empty collection. - - - Nicko Cadell - Gert Driesen - - - - Initializes a new instance of the class. - - - - Uses a private access modifier to enforce the singleton pattern. - - - - - - Copies the elements of the to an - , starting at a particular Array index. - - The one-dimensional - that is the destination of the elements copied from - . The Array must have zero-based - indexing. - The zero-based index in array at which - copying begins. - - - As the collection is empty no values are copied into the array. - - - - - - Returns an enumerator that can iterate through a collection. - - - An that can be used to - iterate through the collection. - - - - As the collection is empty a is returned. - - - - - - Adds an element with the provided key and value to the - . - - The to use as the key of the element to add. - The to use as the value of the element to add. - - - As the collection is empty no new values can be added. A - is thrown if this method is called. - - - This dictionary is always empty and cannot be modified. - - - - Removes all elements from the . - - - - As the collection is empty no values can be removed. A - is thrown if this method is called. - - - This dictionary is always empty and cannot be modified. - - - - Determines whether the contains an element - with the specified key. - - The key to locate in the . - false - - - As the collection is empty the method always returns false. - - - - - - Returns an enumerator that can iterate through a collection. - - - An that can be used to - iterate through the collection. - - - - As the collection is empty a is returned. - - - - - - Removes the element with the specified key from the . - - The key of the element to remove. - - - As the collection is empty no values can be removed. A - is thrown if this method is called. - - - This dictionary is always empty and cannot be modified. - - - - The singleton instance of the empty dictionary. - - - - - Gets the singleton instance of the . - - The singleton instance of the . - - - Gets the singleton instance of the . - - - - - - Gets a value indicating if access to the is synchronized (thread-safe). - - - true if access to the is synchronized (thread-safe); otherwise, false. - - - - For the this property is always true. - - - - - - Gets the number of elements contained in the - - - The number of elements contained in the . - - - - As the collection is empty the is always 0. - - - - - - Gets an object that can be used to synchronize access to the . - - - An object that can be used to synchronize access to the . - - - - As the collection is empty and thread safe and synchronized this instance is also - the object. - - - - - - Gets a value indicating whether the has a fixed size. - - true - - - As the collection is empty always returns true. - - - - - - Gets a value indicating whether the is read-only. - - true - - - As the collection is empty always returns true. - - - - - - Gets an containing the keys of the . - - An containing the keys of the . - - - As the collection is empty a is returned. - - - - - - Gets an containing the values of the . - - An containing the values of the . - - - As the collection is empty a is returned. - - - - - - Gets or sets the element with the specified key. - - The key of the element to get or set. - null - - - As the collection is empty no values can be looked up or stored. - If the index getter is called then null is returned. - A is thrown if the setter is called. - - - This dictionary is always empty and cannot be modified. - - - - Contain the information obtained when parsing formatting modifiers - in conversion modifiers. - - - - Holds the formatting information extracted from the format string by - the . This is used by the - objects when rendering the output. - - - Nicko Cadell - Gert Driesen - - - - Defaut Constructor - - - - Initializes a new instance of the class. - - - - - - Constructor - - - - Initializes a new instance of the class - with the specified parameters. - - - - - - Gets or sets the minimum value. - - - The minimum value. - - - - Gets or sets the minimum value. - - - - - - Gets or sets the maximum value. - - - The maximum value. - - - - Gets or sets the maximum value. - - - - - - Gets or sets a flag indicating whether left align is enabled - or not. - - - A flag indicating whether left align is enabled or not. - - - - Gets or sets a flag indicating whether left align is enabled or not. - - - - - - Implementation of Properties collection for the - - - - This class implements a properties collection that is thread safe and supports both - storing properties and capturing a read only copy of the current propertied. - - - This class is optimized to the scenario where the properties are read frequently - and are modified infrequently. - - - Nicko Cadell - - - - The read only copy of the properties. - - - - This variable is declared volatile to prevent the compiler and JIT from - reordering reads and writes of this thread performed on different threads. - - - - - - Lock object used to synchronize updates within this instance - - - - - Constructor - - - - Initializes a new instance of the class. - - - - - - Remove a property from the global context - - the key for the entry to remove - - - Removing an entry from the global context properties is relatively expensive compared - with reading a value. - - - - - - Clear the global context properties - - - - - Get a readonly immutable copy of the properties - - the current global context properties - - - This implementation is fast because the GlobalContextProperties class - stores a readonly copy of the properties. - - - - - - Gets or sets the value of a property - - - The value for the property with the specified key - - - - Reading the value for a key is faster than setting the value. - When the value is written a new read only copy of - the properties is created. - - - - - - The static class ILogExtensions contains a set of widely used - methods that ease the interaction with the ILog interface implementations. - - - - This class contains methods for logging at different levels and checks the - properties for determining if those logging levels are enabled in the current - configuration. - - - Simple example of logging messages - - using log4net.Util; - - ILog log = LogManager.GetLogger("application-log"); - - log.InfoExt("Application Start"); - log.DebugExt("This is a debug message"); - - - - - - Log a message object with the level. - - The logger on which the message is logged. - The lambda expression that gets the object to log. - - - This method first checks if this logger is INFO - enabled by reading the value property. - This check happens always and does not depend on the - implementation. If this logger is INFO enabled, then it converts - the message object (retrieved by invocation of the provided callback) to a - string by invoking the appropriate . - It then proceeds to call all the registered appenders in this logger - and also higher in the hierarchy depending on the value of - the additivity flag. - - WARNING Note that passing an - to this method will print the name of the - but no stack trace. To print a stack trace use the - form instead. - - - - - - - - Log a message object with the level including - the stack trace of the passed - as a parameter. - - The logger on which the message is logged. - The lambda expression that gets the object to log. - The exception to log, including its stack trace. - - - See the form for more detailed information. - - - - - - - Log a message object with the level. //TODO - - Log a message object with the level. - - The logger on which the message is logged. - The message object to log. - - - This method first checks if this logger is INFO - enabled by reading the value property. - This check happens always and does not depend on the - implementation. If this logger is INFO enabled, then it converts - the message object (passed as parameter) to a string by invoking the appropriate - . It then - proceeds to call all the registered appenders in this logger - and also higher in the hierarchy depending on the value of - the additivity flag. - - WARNING Note that passing an - to this method will print the name of the - but no stack trace. To print a stack trace use the - form instead. - - - - - - - - Log a message object with the level including - the stack trace of the passed - as a parameter. - - The logger on which the message is logged. - The message object to log. - The exception to log, including its stack trace. - - - See the form for more detailed information. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - An that supplies culture-specific formatting information - The logger on which the message is logged. - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object to format - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Log a message object with the level. - - The logger on which the message is logged. - The lambda expression that gets the object to log. - - - This method first checks if this logger is INFO - enabled by reading the value property. - This check happens always and does not depend on the - implementation. If this logger is INFO enabled, then it converts - the message object (retrieved by invocation of the provided callback) to a - string by invoking the appropriate . - It then proceeds to call all the registered appenders in this logger - and also higher in the hierarchy depending on the value of - the additivity flag. - - WARNING Note that passing an - to this method will print the name of the - but no stack trace. To print a stack trace use the - form instead. - - - - - - - - Log a message object with the level including - the stack trace of the passed - as a parameter. - - The logger on which the message is logged. - The lambda expression that gets the object to log. - The exception to log, including its stack trace. - - - See the form for more detailed information. - - - - - - - Log a message object with the level. //TODO - - Log a message object with the level. - - The logger on which the message is logged. - The message object to log. - - - This method first checks if this logger is INFO - enabled by reading the value property. - This check happens always and does not depend on the - implementation. If this logger is INFO enabled, then it converts - the message object (passed as parameter) to a string by invoking the appropriate - . It then - proceeds to call all the registered appenders in this logger - and also higher in the hierarchy depending on the value of - the additivity flag. - - WARNING Note that passing an - to this method will print the name of the - but no stack trace. To print a stack trace use the - form instead. - - - - - - - - Log a message object with the level including - the stack trace of the passed - as a parameter. - - The logger on which the message is logged. - The message object to log. - The exception to log, including its stack trace. - - - See the form for more detailed information. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - An that supplies culture-specific formatting information - The logger on which the message is logged. - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object to format - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Log a message object with the level. - - The logger on which the message is logged. - The lambda expression that gets the object to log. - - - This method first checks if this logger is WARN - enabled by reading the value property. - This check happens always and does not depend on the - implementation. If this logger is WARN enabled, then it converts - the message object (retrieved by invocation of the provided callback) to a - string by invoking the appropriate . - It then proceeds to call all the registered appenders in this logger - and also higher in the hierarchy depending on the value of - the additivity flag. - - WARNING Note that passing an - to this method will print the name of the - but no stack trace. To print a stack trace use the - form instead. - - - - - - - - Log a message object with the level including - the stack trace of the passed - as a parameter. - - The logger on which the message is logged. - The lambda expression that gets the object to log. - The exception to log, including its stack trace. - - - See the form for more detailed information. - - - - - - - Log a message object with the level. //TODO - - Log a message object with the level. - - The logger on which the message is logged. - The message object to log. - - - This method first checks if this logger is WARN - enabled by reading the value property. - This check happens always and does not depend on the - implementation. If this logger is WARN enabled, then it converts - the message object (passed as parameter) to a string by invoking the appropriate - . It then - proceeds to call all the registered appenders in this logger - and also higher in the hierarchy depending on the value of - the additivity flag. - - WARNING Note that passing an - to this method will print the name of the - but no stack trace. To print a stack trace use the - form instead. - - - - - - - - Log a message object with the level including - the stack trace of the passed - as a parameter. - - The logger on which the message is logged. - The message object to log. - The exception to log, including its stack trace. - - - See the form for more detailed information. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - An that supplies culture-specific formatting information - The logger on which the message is logged. - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object to format - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Log a message object with the level. - - The logger on which the message is logged. - The lambda expression that gets the object to log. - - - This method first checks if this logger is ERROR - enabled by reading the value property. - This check happens always and does not depend on the - implementation. If this logger is ERROR enabled, then it converts - the message object (retrieved by invocation of the provided callback) to a - string by invoking the appropriate . - It then proceeds to call all the registered appenders in this logger - and also higher in the hierarchy depending on the value of - the additivity flag. - - WARNING Note that passing an - to this method will print the name of the - but no stack trace. To print a stack trace use the - form instead. - - - - - - - - Log a message object with the level including - the stack trace of the passed - as a parameter. - - The logger on which the message is logged. - The lambda expression that gets the object to log. - The exception to log, including its stack trace. - - - See the form for more detailed information. - - - - - - - Log a message object with the level. //TODO - - Log a message object with the level. - - The logger on which the message is logged. - The message object to log. - - - This method first checks if this logger is ERROR - enabled by reading the value property. - This check happens always and does not depend on the - implementation. If this logger is ERROR enabled, then it converts - the message object (passed as parameter) to a string by invoking the appropriate - . It then - proceeds to call all the registered appenders in this logger - and also higher in the hierarchy depending on the value of - the additivity flag. - - WARNING Note that passing an - to this method will print the name of the - but no stack trace. To print a stack trace use the - form instead. - - - - - - - - Log a message object with the level including - the stack trace of the passed - as a parameter. - - The logger on which the message is logged. - The message object to log. - The exception to log, including its stack trace. - - - See the form for more detailed information. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - An that supplies culture-specific formatting information - The logger on which the message is logged. - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object to format - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Log a message object with the level. - - The logger on which the message is logged. - The lambda expression that gets the object to log. - - - This method first checks if this logger is FATAL - enabled by reading the value property. - This check happens always and does not depend on the - implementation. If this logger is FATAL enabled, then it converts - the message object (retrieved by invocation of the provided callback) to a - string by invoking the appropriate . - It then proceeds to call all the registered appenders in this logger - and also higher in the hierarchy depending on the value of - the additivity flag. - - WARNING Note that passing an - to this method will print the name of the - but no stack trace. To print a stack trace use the - form instead. - - - - - - - - Log a message object with the level including - the stack trace of the passed - as a parameter. - - The logger on which the message is logged. - The lambda expression that gets the object to log. - The exception to log, including its stack trace. - - - See the form for more detailed information. - - - - - - - Log a message object with the level. //TODO - - Log a message object with the level. - - The logger on which the message is logged. - The message object to log. - - - This method first checks if this logger is FATAL - enabled by reading the value property. - This check happens always and does not depend on the - implementation. If this logger is FATAL enabled, then it converts - the message object (passed as parameter) to a string by invoking the appropriate - . It then - proceeds to call all the registered appenders in this logger - and also higher in the hierarchy depending on the value of - the additivity flag. - - WARNING Note that passing an - to this method will print the name of the - but no stack trace. To print a stack trace use the - form instead. - - - - - - - - Log a message object with the level including - the stack trace of the passed - as a parameter. - - The logger on which the message is logged. - The message object to log. - The exception to log, including its stack trace. - - - See the form for more detailed information. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - An that supplies culture-specific formatting information - The logger on which the message is logged. - A String containing zero or more format items - An Object array containing zero or more objects to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Logs a formatted message string with the level. - - The logger on which the message is logged. - A String containing zero or more format items - An Object to format - An Object to format - An Object to format - - - The message is formatted using the String.Format method. See - for details of the syntax of the format string and the behavior - of the formatting. - - - This method does not take an object to include in the - log event. To pass an use one of the - methods instead. - - - - - - - - Manages a mapping from levels to - - - - Manages an ordered mapping from instances - to subclasses. - - - Nicko Cadell - - - - Default constructor - - - - Initialise a new instance of . - - - - - - Add a to this mapping - - the entry to add - - - If a has previously been added - for the same then that entry will be - overwritten. - - - - - - Lookup the mapping for the specified level - - the level to lookup - the for the level or null if no mapping found - - - Lookup the value for the specified level. Finds the nearest - mapping value for the level that is equal to or less than the - specified. - - - If no mapping could be found then null is returned. - - - - - - Initialize options - - - - Caches the sorted list of in an array - - - - - - Implementation of Properties collection for the - - - - Class implements a collection of properties that is specific to each thread. - The class is not synchronized as each thread has its own . - - - This class stores its properties in a slot on the named - log4net.Util.LogicalThreadContextProperties. - - - The requires a link time - for the - . - If the calling code does not have this permission then this context will be disabled. - It will not store any property values set on it. - - - Nicko Cadell - - - - Flag used to disable this context if we don't have permission to access the CallContext. - - - - - Constructor - - - - Initializes a new instance of the class. - - - - - - Remove a property - - the key for the entry to remove - - - Remove the value for the specified from the context. - - - - - - Clear all the context properties - - - - Clear all the context properties - - - - - - Get the PropertiesDictionary stored in the LocalDataStoreSlot for this thread. - - create the dictionary if it does not exist, otherwise return null if is does not exist - the properties for this thread - - - The collection returned is only to be used on the calling thread. If the - caller needs to share the collection between different threads then the - caller must clone the collection before doings so. - - - - - - Gets the call context get data. - - The peroperties dictionary stored in the call context - - The method has a - security link demand, therfore we must put the method call in a seperate method - that we can wrap in an exception handler. - - - - - Sets the call context data. - - The properties. - - The method has a - security link demand, therfore we must put the method call in a seperate method - that we can wrap in an exception handler. - - - - - The fully qualified type of the LogicalThreadContextProperties class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Gets or sets the value of a property - - - The value for the property with the specified key - - - - Get or set the property value for the specified. - - - - - - - - - - - - - Outputs log statements from within the log4net assembly. - - - - Log4net components cannot make log4net logging calls. However, it is - sometimes useful for the user to learn about what log4net is - doing. - - - All log4net internal debug calls go to the standard output stream - whereas internal error messages are sent to the standard error output - stream. - - - Nicko Cadell - Gert Driesen - - - - Formats Prefix, Source, and Message in the same format as the value - sent to Console.Out and Trace.Write. - - - - - - Initializes a new instance of the class. - - - - - - - - - Static constructor that initializes logging by reading - settings from the application configuration file. - - - - The log4net.Internal.Debug application setting - controls internal debugging. This setting should be set - to true to enable debugging. - - - The log4net.Internal.Quiet application setting - suppresses all internal logging including error messages. - This setting should be set to true to enable message - suppression. - - - - - - Raises the LogReceived event when an internal messages is received. - - - - - - - - - Writes log4net internal debug messages to the - standard output stream. - - - The message to log. - - - All internal debug messages are prepended with - the string "log4net: ". - - - - - - Writes log4net internal debug messages to the - standard output stream. - - The Type that generated this message. - The message to log. - An exception to log. - - - All internal debug messages are prepended with - the string "log4net: ". - - - - - - Writes log4net internal warning messages to the - standard error stream. - - The Type that generated this message. - The message to log. - - - All internal warning messages are prepended with - the string "log4net:WARN ". - - - - - - Writes log4net internal warning messages to the - standard error stream. - - The Type that generated this message. - The message to log. - An exception to log. - - - All internal warning messages are prepended with - the string "log4net:WARN ". - - - - - - Writes log4net internal error messages to the - standard error stream. - - The Type that generated this message. - The message to log. - - - All internal error messages are prepended with - the string "log4net:ERROR ". - - - - - - Writes log4net internal error messages to the - standard error stream. - - The Type that generated this message. - The message to log. - An exception to log. - - - All internal debug messages are prepended with - the string "log4net:ERROR ". - - - - - - Writes output to the standard output stream. - - The message to log. - - - Writes to both Console.Out and System.Diagnostics.Trace. - Note that the System.Diagnostics.Trace is not supported - on the Compact Framework. - - - If the AppDomain is not configured with a config file then - the call to System.Diagnostics.Trace may fail. This is only - an issue if you are programmatically creating your own AppDomains. - - - - - - Writes output to the standard error stream. - - The message to log. - - - Writes to both Console.Error and System.Diagnostics.Trace. - Note that the System.Diagnostics.Trace is not supported - on the Compact Framework. - - - If the AppDomain is not configured with a config file then - the call to System.Diagnostics.Trace may fail. This is only - an issue if you are programmatically creating your own AppDomains. - - - - - - Default debug level - - - - - In quietMode not even errors generate any output. - - - - - The event raised when an internal message has been received. - - - - - The Type that generated the internal message. - - - - - The DateTime stamp of when the internal message was received. - - - - - A string indicating the severity of the internal message. - - - "log4net: ", - "log4net:ERROR ", - "log4net:WARN " - - - - - The internal log message. - - - - - The Exception related to the message. - - - Optional. Will be null if no Exception was passed. - - - - - Gets or sets a value indicating whether log4net internal logging - is enabled or disabled. - - - true if log4net internal logging is enabled, otherwise - false. - - - - When set to true, internal debug level logging will be - displayed. - - - This value can be set by setting the application setting - log4net.Internal.Debug in the application configuration - file. - - - The default value is false, i.e. debugging is - disabled. - - - - - The following example enables internal debugging using the - application configuration file : - - - - - - - - - - - - - Gets or sets a value indicating whether log4net should generate no output - from internal logging, not even for errors. - - - true if log4net should generate no output at all from internal - logging, otherwise false. - - - - When set to true will cause internal logging at all levels to be - suppressed. This means that no warning or error reports will be logged. - This option overrides the setting and - disables all debug also. - - This value can be set by setting the application setting - log4net.Internal.Quiet in the application configuration file. - - - The default value is false, i.e. internal logging is not - disabled. - - - - The following example disables internal logging using the - application configuration file : - - - - - - - - - - - - - - - - - Test if LogLog.Debug is enabled for output. - - - true if Debug is enabled - - - - Test if LogLog.Debug is enabled for output. - - - - - - Test if LogLog.Warn is enabled for output. - - - true if Warn is enabled - - - - Test if LogLog.Warn is enabled for output. - - - - - - Test if LogLog.Error is enabled for output. - - - true if Error is enabled - - - - Test if LogLog.Error is enabled for output. - - - - - - Subscribes to the LogLog.LogReceived event and stores messages - to the supplied IList instance. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Represents a native error code and message. - - - - Represents a Win32 platform native error. - - - Nicko Cadell - Gert Driesen - - - - Create an instance of the class with the specified - error number and message. - - The number of the native error. - The message of the native error. - - - Create an instance of the class with the specified - error number and message. - - - - - - Create a new instance of the class for the last Windows error. - - - An instance of the class for the last windows error. - - - - The message for the error number is lookup up using the - native Win32 FormatMessage function. - - - - - - Create a new instance of the class. - - the error number for the native error - - An instance of the class for the specified - error number. - - - - The message for the specified error number is lookup up using the - native Win32 FormatMessage function. - - - - - - Retrieves the message corresponding with a Win32 message identifier. - - Message identifier for the requested message. - - The message corresponding with the specified message identifier. - - - - The message will be searched for in system message-table resource(s) - using the native FormatMessage function. - - - - - - Return error information string - - error information string - - - Return error information string - - - - - - Formats a message string. - - Formatting options, and how to interpret the parameter. - Location of the message definition. - Message identifier for the requested message. - Language identifier for the requested message. - If includes FORMAT_MESSAGE_ALLOCATE_BUFFER, the function allocates a buffer using the LocalAlloc function, and places the pointer to the buffer at the address specified in . - If the FORMAT_MESSAGE_ALLOCATE_BUFFER flag is not set, this parameter specifies the maximum number of TCHARs that can be stored in the output buffer. If FORMAT_MESSAGE_ALLOCATE_BUFFER is set, this parameter specifies the minimum number of TCHARs to allocate for an output buffer. - Pointer to an array of values that are used as insert values in the formatted message. - - - The function requires a message definition as input. The message definition can come from a - buffer passed into the function. It can come from a message table resource in an - already-loaded module. Or the caller can ask the function to search the system's message - table resource(s) for the message definition. The function finds the message definition - in a message table resource based on a message identifier and a language identifier. - The function copies the formatted message text to an output buffer, processing any embedded - insert sequences if requested. - - - To prevent the usage of unsafe code, this stub does not support inserting values in the formatted message. - - - - - If the function succeeds, the return value is the number of TCHARs stored in the output - buffer, excluding the terminating null character. - - - If the function fails, the return value is zero. To get extended error information, - call . - - - - - - Gets the number of the native error. - - - The number of the native error. - - - - Gets the number of the native error. - - - - - - Gets the message of the native error. - - - The message of the native error. - - - - - Gets the message of the native error. - - - - - An always empty . - - - - A singleton implementation of the over a collection - that is empty and not modifiable. - - - Nicko Cadell - Gert Driesen - - - - Initializes a new instance of the class. - - - - Uses a private access modifier to enforce the singleton pattern. - - - - - - Test if the enumerator can advance, if so advance. - - false as the cannot advance. - - - As the enumerator is over an empty collection its - value cannot be moved over a valid position, therefore - will always return false. - - - - - - Resets the enumerator back to the start. - - - - As the enumerator is over an empty collection does nothing. - - - - - - The singleton instance of the . - - - - - Gets the singleton instance of the . - - The singleton instance of the . - - - Gets the singleton instance of the . - - - - - - Gets the current object from the enumerator. - - - Throws an because the - never has a current value. - - - - As the enumerator is over an empty collection its - value cannot be moved over a valid position, therefore - will throw an . - - - The collection is empty and - cannot be positioned over a valid location. - - - - Gets the current key from the enumerator. - - - Throws an exception because the - never has a current value. - - - - As the enumerator is over an empty collection its - value cannot be moved over a valid position, therefore - will throw an . - - - The collection is empty and - cannot be positioned over a valid location. - - - - Gets the current value from the enumerator. - - The current value from the enumerator. - - Throws an because the - never has a current value. - - - - As the enumerator is over an empty collection its - value cannot be moved over a valid position, therefore - will throw an . - - - The collection is empty and - cannot be positioned over a valid location. - - - - Gets the current entry from the enumerator. - - - Throws an because the - never has a current entry. - - - - As the enumerator is over an empty collection its - value cannot be moved over a valid position, therefore - will throw an . - - - The collection is empty and - cannot be positioned over a valid location. - - - - An always empty . - - - - A singleton implementation of the over a collection - that is empty and not modifiable. - - - Nicko Cadell - Gert Driesen - - - - Initializes a new instance of the class. - - - - Uses a private access modifier to enforce the singleton pattern. - - - - - - Test if the enumerator can advance, if so advance - - false as the cannot advance. - - - As the enumerator is over an empty collection its - value cannot be moved over a valid position, therefore - will always return false. - - - - - - Resets the enumerator back to the start. - - - - As the enumerator is over an empty collection does nothing. - - - - - - The singleton instance of the . - - - - - Get the singleton instance of the . - - The singleton instance of the . - - - Gets the singleton instance of the . - - - - - - Gets the current object from the enumerator. - - - Throws an because the - never has a current value. - - - - As the enumerator is over an empty collection its - value cannot be moved over a valid position, therefore - will throw an . - - - The collection is empty and - cannot be positioned over a valid location. - - - - A SecurityContext used when a SecurityContext is not required - - - - The is a no-op implementation of the - base class. It is used where a - is required but one has not been provided. - - - Nicko Cadell - - - - Singleton instance of - - - - Singleton instance of - - - - - - Private constructor - - - - Private constructor for singleton pattern. - - - - - - Impersonate this SecurityContext - - State supplied by the caller - null - - - No impersonation is done and null is always returned. - - - - - - Implements log4net's default error handling policy which consists - of emitting a message for the first error in an appender and - ignoring all subsequent errors. - - - - The error message is processed using the LogLog sub-system by default. - - - This policy aims at protecting an otherwise working application - from being flooded with error messages when logging fails. - - - Nicko Cadell - Gert Driesen - Ron Grabowski - - - - Default Constructor - - - - Initializes a new instance of the class. - - - - - - Constructor - - The prefix to use for each message. - - - Initializes a new instance of the class - with the specified prefix. - - - - - - Reset the error handler back to its initial disabled state. - - - - - Log an Error - - The error message. - The exception. - The internal error code. - - - Invokes if and only if this is the first error or the first error after has been called. - - - - - - Log the very first error - - The error message. - The exception. - The internal error code. - - - Sends the error information to 's Error method. - - - - - - Log an Error - - The error message. - The exception. - - - Invokes if and only if this is the first error or the first error after has been called. - - - - - - Log an error - - The error message. - - - Invokes if and only if this is the first error or the first error after has been called. - - - - - - The date the error was recorded. - - - - - Flag to indicate if it is the first error - - - - - The message recorded during the first error. - - - - - The exception recorded during the first error. - - - - - The error code recorded during the first error. - - - - - String to prefix each message with - - - - - The fully qualified type of the OnlyOnceErrorHandler class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Is error logging enabled - - - - Is error logging enabled. Logging is only enabled for the - first error delivered to the . - - - - - - The date the first error that trigged this error handler occured. - - - - - The message from the first error that trigged this error handler. - - - - - The exception from the first error that trigged this error handler. - - - May be . - - - - - The error code from the first error that trigged this error handler. - - - Defaults to - - - - - A convenience class to convert property values to specific types. - - - - Utility functions for converting types and parsing values. - - - Nicko Cadell - Gert Driesen - - - - Initializes a new instance of the class. - - - - Uses a private access modifier to prevent instantiation of this class. - - - - - - Converts a string to a value. - - String to convert. - The default value. - The value of . - - - If is "true", then true is returned. - If is "false", then false is returned. - Otherwise, is returned. - - - - - - Parses a file size into a number. - - String to parse. - The default value. - The value of . - - - Parses a file size of the form: number[KB|MB|GB] into a - long value. It is scaled with the appropriate multiplier. - - - is returned when - cannot be converted to a value. - - - - - - Converts a string to an object. - - The target type to convert to. - The string to convert to an object. - - The object converted from a string or null when the - conversion failed. - - - - Converts a string to an object. Uses the converter registry to try - to convert the string value into the specified target type. - - - - - - Checks if there is an appropriate type conversion from the source type to the target type. - - The type to convert from. - The type to convert to. - true if there is a conversion from the source type to the target type. - - Checks if there is an appropriate type conversion from the source type to the target type. - - - - - - - Converts an object to the target type. - - The object to convert to the target type. - The type to convert to. - The converted object. - - - Converts an object to the target type. - - - - - - Instantiates an object given a class name. - - The fully qualified class name of the object to instantiate. - The class to which the new object should belong. - The object to return in case of non-fulfillment. - - An instance of the or - if the object could not be instantiated. - - - - Checks that the is a subclass of - . If that test fails or the object could - not be instantiated, then is returned. - - - - - - Performs variable substitution in string from the - values of keys found in . - - The string on which variable substitution is performed. - The dictionary to use to lookup variables. - The result of the substitutions. - - - The variable substitution delimiters are ${ and }. - - - For example, if props contains key=value, then the call - - - - string s = OptionConverter.SubstituteVariables("Value of key is ${key}."); - - - - will set the variable s to "Value of key is value.". - - - If no value could be found for the specified key, then substitution - defaults to an empty string. - - - For example, if system properties contains no value for the key - "nonExistentKey", then the call - - - - string s = OptionConverter.SubstituteVariables("Value of nonExistentKey is [${nonExistentKey}]"); - - - - will set s to "Value of nonExistentKey is []". - - - An Exception is thrown if contains a start - delimiter "${" which is not balanced by a stop delimiter "}". - - - - - - Converts the string representation of the name or numeric value of one or - more enumerated constants to an equivalent enumerated object. - - The type to convert to. - The enum string value. - If true, ignore case; otherwise, regard case. - An object of type whose value is represented by . - - - - The fully qualified type of the OptionConverter class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Most of the work of the class - is delegated to the PatternParser class. - - - - The PatternParser processes a pattern string and - returns a chain of objects. - - - Nicko Cadell - Gert Driesen - - - - Constructor - - The pattern to parse. - - - Initializes a new instance of the class - with the specified pattern string. - - - - - - Parses the pattern into a chain of pattern converters. - - The head of a chain of pattern converters. - - - Parses the pattern into a chain of pattern converters. - - - - - - Build the unified cache of converters from the static and instance maps - - the list of all the converter names - - - Build the unified cache of converters from the static and instance maps - - - - - - Internal method to parse the specified pattern to find specified matches - - the pattern to parse - the converter names to match in the pattern - - - The matches param must be sorted such that longer strings come before shorter ones. - - - - - - Process a parsed literal - - the literal text - - - - Process a parsed converter pattern - - the name of the converter - the optional option for the converter - the formatting info for the converter - - - - Resets the internal state of the parser and adds the specified pattern converter - to the chain. - - The pattern converter to add. - - - - The first pattern converter in the chain - - - - - the last pattern converter in the chain - - - - - The pattern - - - - - Internal map of converter identifiers to converter types - - - - This map overrides the static s_globalRulesRegistry map. - - - - - - The fully qualified type of the PatternParser class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Get the converter registry used by this parser - - - The converter registry used by this parser - - - - Get the converter registry used by this parser - - - - - - Sort strings by length - - - - that orders strings by string length. - The longest strings are placed first - - - - - - This class implements a patterned string. - - - - This string has embedded patterns that are resolved and expanded - when the string is formatted. - - - This class functions similarly to the - in that it accepts a pattern and renders it to a string. Unlike the - however the PatternString - does not render the properties of a specific but - of the process in general. - - - The recognized conversion pattern names are: - - - - Conversion Pattern Name - Effect - - - appdomain - - - Used to output the friendly name of the current AppDomain. - - - - - date - - - Used to output the current date and time in the local time zone. - To output the date in universal time use the %utcdate pattern. - The date conversion - specifier may be followed by a date format specifier enclosed - between braces. For example, %date{HH:mm:ss,fff} or - %date{dd MMM yyyy HH:mm:ss,fff}. If no date format specifier is - given then ISO8601 format is - assumed (). - - - The date format specifier admits the same syntax as the - time pattern string of the . - - - For better results it is recommended to use the log4net date - formatters. These can be specified using one of the strings - "ABSOLUTE", "DATE" and "ISO8601" for specifying - , - and respectively - . For example, - %date{ISO8601} or %date{ABSOLUTE}. - - - These dedicated date formatters perform significantly - better than . - - - - - env - - - Used to output the a specific environment variable. The key to - lookup must be specified within braces and directly following the - pattern specifier, e.g. %env{COMPUTERNAME} would include the value - of the COMPUTERNAME environment variable. - - - The env pattern is not supported on the .NET Compact Framework. - - - - - identity - - - Used to output the user name for the currently active user - (Principal.Identity.Name). - - - - - newline - - - Outputs the platform dependent line separator character or - characters. - - - This conversion pattern name offers the same performance as using - non-portable line separator strings such as "\n", or "\r\n". - Thus, it is the preferred way of specifying a line separator. - - - - - processid - - - Used to output the system process ID for the current process. - - - - - property - - - Used to output a specific context property. The key to - lookup must be specified within braces and directly following the - pattern specifier, e.g. %property{user} would include the value - from the property that is keyed by the string 'user'. Each property value - that is to be included in the log must be specified separately. - Properties are stored in logging contexts. By default - the log4net:HostName property is set to the name of machine on - which the event was originally logged. - - - If no key is specified, e.g. %property then all the keys and their - values are printed in a comma separated list. - - - The properties of an event are combined from a number of different - contexts. These are listed below in the order in which they are searched. - - - - the thread properties - - The that are set on the current - thread. These properties are shared by all events logged on this thread. - - - - the global properties - - The that are set globally. These - properties are shared by all the threads in the AppDomain. - - - - - - - random - - - Used to output a random string of characters. The string is made up of - uppercase letters and numbers. By default the string is 4 characters long. - The length of the string can be specified within braces directly following the - pattern specifier, e.g. %random{8} would output an 8 character string. - - - - - username - - - Used to output the WindowsIdentity for the currently - active user. - - - - - utcdate - - - Used to output the date of the logging event in universal time. - The date conversion - specifier may be followed by a date format specifier enclosed - between braces. For example, %utcdate{HH:mm:ss,fff} or - %utcdate{dd MMM yyyy HH:mm:ss,fff}. If no date format specifier is - given then ISO8601 format is - assumed (). - - - The date format specifier admits the same syntax as the - time pattern string of the . - - - For better results it is recommended to use the log4net date - formatters. These can be specified using one of the strings - "ABSOLUTE", "DATE" and "ISO8601" for specifying - , - and respectively - . For example, - %utcdate{ISO8601} or %utcdate{ABSOLUTE}. - - - These dedicated date formatters perform significantly - better than . - - - - - % - - - The sequence %% outputs a single percent sign. - - - - - - Additional pattern converters may be registered with a specific - instance using or - . - - - See the for details on the - format modifiers supported by the patterns. - - - Nicko Cadell - - - - Internal map of converter identifiers to converter types. - - - - - the pattern - - - - - the head of the pattern converter chain - - - - - patterns defined on this PatternString only - - - - - Initialize the global registry - - - - - Default constructor - - - - Initialize a new instance of - - - - - - Constructs a PatternString - - The pattern to use with this PatternString - - - Initialize a new instance of with the pattern specified. - - - - - - Initialize object options - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - - - - Create the used to parse the pattern - - the pattern to parse - The - - - Returns PatternParser used to parse the conversion string. Subclasses - may override this to return a subclass of PatternParser which recognize - custom conversion pattern name. - - - - - - Produces a formatted string as specified by the conversion pattern. - - The TextWriter to write the formatted event to - - - Format the pattern to the . - - - - - - Format the pattern as a string - - the pattern formatted as a string - - - Format the pattern to a string. - - - - - - Add a converter to this PatternString - - the converter info - - - This version of the method is used by the configurator. - Programmatic users should use the alternative method. - - - - - - Add a converter to this PatternString - - the name of the conversion pattern for this converter - the type of the converter - - - Add a converter to this PatternString - - - - - - Gets or sets the pattern formatting string - - - The pattern formatting string - - - - The ConversionPattern option. This is the string which - controls formatting and consists of a mix of literal content and - conversion specifiers. - - - - - - String keyed object map. - - - - While this collection is serializable only member - objects that are serializable will - be serialized along with this collection. - - - Nicko Cadell - Gert Driesen - - - - String keyed object map that is read only. - - - - This collection is readonly and cannot be modified. - - - While this collection is serializable only member - objects that are serializable will - be serialized along with this collection. - - - Nicko Cadell - Gert Driesen - - - - The Hashtable used to store the properties data - - - - - Constructor - - - - Initializes a new instance of the class. - - - - - - Copy Constructor - - properties to copy - - - Initializes a new instance of the class. - - - - - - Deserialization constructor - - The that holds the serialized object data. - The that contains contextual information about the source or destination. - - - Initializes a new instance of the class - with serialized data. - - - - - - Gets the key names. - - An array of all the keys. - - - Gets the key names. - - - - - - Test if the dictionary contains a specified key - - the key to look for - true if the dictionary contains the specified key - - - Test if the dictionary contains a specified key - - - - - - Serializes this object into the provided. - - The to populate with data. - The destination for this serialization. - - - Serializes this object into the provided. - - - - - - See - - - - - See - - - - - - See - - - - - - - Remove all properties from the properties collection - - - - - See - - - - - - - See - - - - - - - See - - - - - Gets or sets the value of the property with the specified key. - - - The value of the property with the specified key. - - The key of the property to get or set. - - - The property value will only be serialized if it is serializable. - If it cannot be serialized it will be silently ignored if - a serialization operation is performed. - - - - - - The hashtable used to store the properties - - - The internal collection used to store the properties - - - - The hashtable used to store the properties - - - - - - See - - - - - See - - - - - See - - - - - See - - - - - See - - - - - See - - - - - The number of properties in this collection - - - - - See - - - - - Constructor - - - - Initializes a new instance of the class. - - - - - - Constructor - - properties to copy - - - Initializes a new instance of the class. - - - - - - Initializes a new instance of the class - with serialized data. - - The that holds the serialized object data. - The that contains contextual information about the source or destination. - - - Because this class is sealed the serialization constructor is private. - - - - - - Remove the entry with the specified key from this dictionary - - the key for the entry to remove - - - Remove the entry with the specified key from this dictionary - - - - - - See - - an enumerator - - - Returns a over the contest of this collection. - - - - - - See - - the key to remove - - - Remove the entry with the specified key from this dictionary - - - - - - See - - the key to lookup in the collection - true if the collection contains the specified key - - - Test if this collection contains a specified key. - - - - - - Remove all properties from the properties collection - - - - Remove all properties from the properties collection - - - - - - See - - the key - the value to store for the key - - - Store a value for the specified . - - - Thrown if the is not a string - - - - See - - - - - - - See - - - - - Gets or sets the value of the property with the specified key. - - - The value of the property with the specified key. - - The key of the property to get or set. - - - The property value will only be serialized if it is serializable. - If it cannot be serialized it will be silently ignored if - a serialization operation is performed. - - - - - - See - - - false - - - - This collection is modifiable. This property always - returns false. - - - - - - See - - - The value for the key specified. - - - - Get or set a value for the specified . - - - Thrown if the is not a string - - - - See - - - - - See - - - - - See - - - - - See - - - - - See - - - - - A class to hold the key and data for a property set in the config file - - - - A class to hold the key and data for a property set in the config file - - - - - - Override Object.ToString to return sensible debug info - - string info about this object - - - - Property Key - - - Property Key - - - - Property Key. - - - - - - Property Value - - - Property Value - - - - Property Value. - - - - - - A that ignores the message - - - - This writer is used in special cases where it is necessary - to protect a writer from being closed by a client. - - - Nicko Cadell - - - - Constructor - - the writer to actually write to - - - Create a new ProtectCloseTextWriter using a writer - - - - - - Attach this instance to a different underlying - - the writer to attach to - - - Attach this instance to a different underlying - - - - - - Does not close the underlying output writer. - - - - Does not close the underlying output writer. - This method does nothing. - - - - - - Defines a lock that supports single writers and multiple readers - - - - ReaderWriterLock is used to synchronize access to a resource. - At any given time, it allows either concurrent read access for - multiple threads, or write access for a single thread. In a - situation where a resource is changed infrequently, a - ReaderWriterLock provides better throughput than a simple - one-at-a-time lock, such as . - - - If a platform does not support a System.Threading.ReaderWriterLock - implementation then all readers and writers are serialized. Therefore - the caller must not rely on multiple simultaneous readers. - - - Nicko Cadell - - - - Constructor - - - - Initializes a new instance of the class. - - - - - - Acquires a reader lock - - - - blocks if a different thread has the writer - lock, or if at least one thread is waiting for the writer lock. - - - - - - Decrements the lock count - - - - decrements the lock count. When the count - reaches zero, the lock is released. - - - - - - Acquires the writer lock - - - - This method blocks if another thread has a reader lock or writer lock. - - - - - - Decrements the lock count on the writer lock - - - - ReleaseWriterLock decrements the writer lock count. - When the count reaches zero, the writer lock is released. - - - - - - A that can be and reused - - - - A that can be and reused. - This uses a single buffer for string operations. - - - Nicko Cadell - - - - Create an instance of - - the format provider to use - - - Create an instance of - - - - - - Override Dispose to prevent closing of writer - - flag - - - Override Dispose to prevent closing of writer - - - - - - Reset this string writer so that it can be reused. - - the maximum buffer capacity before it is trimmed - the default size to make the buffer - - - Reset this string writer so that it can be reused. - The internal buffers are cleared and reset. - - - - - - Utility class for system specific information. - - - - Utility class of static methods for system specific information. - - - Nicko Cadell - Gert Driesen - Alexey Solofnenko - - - - Private constructor to prevent instances. - - - - Only static methods are exposed from this type. - - - - - - Initialize default values for private static fields. - - - - Only static methods are exposed from this type. - - - - - - Gets the assembly location path for the specified assembly. - - The assembly to get the location for. - The location of the assembly. - - - This method does not guarantee to return the correct path - to the assembly. If only tries to give an indication as to - where the assembly was loaded from. - - - - - - Gets the fully qualified name of the , including - the name of the assembly from which the was - loaded. - - The to get the fully qualified name for. - The fully qualified name for the . - - - This is equivalent to the Type.AssemblyQualifiedName property, - but this method works on the .NET Compact Framework 1.0 as well as - the full .NET runtime. - - - - - - Gets the short name of the . - - The to get the name for. - The short name of the . - - - The short name of the assembly is the - without the version, culture, or public key. i.e. it is just the - assembly's file name without the extension. - - - Use this rather than Assembly.GetName().Name because that - is not available on the Compact Framework. - - - Because of a FileIOPermission security demand we cannot do - the obvious Assembly.GetName().Name. We are allowed to get - the of the assembly so we - start from there and strip out just the assembly name. - - - - - - Gets the file name portion of the , including the extension. - - The to get the file name for. - The file name of the assembly. - - - Gets the file name portion of the , including the extension. - - - - - - Loads the type specified in the type string. - - A sibling type to use to load the type. - The name of the type to load. - Flag set to true to throw an exception if the type cannot be loaded. - true to ignore the case of the type name; otherwise, false - The type loaded or null if it could not be loaded. - - - If the type name is fully qualified, i.e. if contains an assembly name in - the type name, the type will be loaded from the system using - . - - - If the type name is not fully qualified, it will be loaded from the assembly - containing the specified relative type. If the type is not found in the assembly - then all the loaded assemblies will be searched for the type. - - - - - - Loads the type specified in the type string. - - The name of the type to load. - Flag set to true to throw an exception if the type cannot be loaded. - true to ignore the case of the type name; otherwise, false - The type loaded or null if it could not be loaded. - - - If the type name is fully qualified, i.e. if contains an assembly name in - the type name, the type will be loaded from the system using - . - - - If the type name is not fully qualified it will be loaded from the - assembly that is directly calling this method. If the type is not found - in the assembly then all the loaded assemblies will be searched for the type. - - - - - - Loads the type specified in the type string. - - An assembly to load the type from. - The name of the type to load. - Flag set to true to throw an exception if the type cannot be loaded. - true to ignore the case of the type name; otherwise, false - The type loaded or null if it could not be loaded. - - - If the type name is fully qualified, i.e. if contains an assembly name in - the type name, the type will be loaded from the system using - . - - - If the type name is not fully qualified it will be loaded from the specified - assembly. If the type is not found in the assembly then all the loaded assemblies - will be searched for the type. - - - - - - Generate a new guid - - A new Guid - - - Generate a new guid - - - - - - Create an - - The name of the parameter that caused the exception - The value of the argument that causes this exception - The message that describes the error - the ArgumentOutOfRangeException object - - - Create a new instance of the class - with a specified error message, the parameter name, and the value - of the argument. - - - The Compact Framework does not support the 3 parameter constructor for the - type. This method provides an - implementation that works for all platforms. - - - - - - Parse a string into an value - - the string to parse - out param where the parsed value is placed - true if the string was able to be parsed into an integer - - - Attempts to parse the string into an integer. If the string cannot - be parsed then this method returns false. The method does not throw an exception. - - - - - - Parse a string into an value - - the string to parse - out param where the parsed value is placed - true if the string was able to be parsed into an integer - - - Attempts to parse the string into an integer. If the string cannot - be parsed then this method returns false. The method does not throw an exception. - - - - - - Parse a string into an value - - the string to parse - out param where the parsed value is placed - true if the string was able to be parsed into an integer - - - Attempts to parse the string into an integer. If the string cannot - be parsed then this method returns false. The method does not throw an exception. - - - - - - Lookup an application setting - - the application settings key to lookup - the value for the key, or null - - - Configuration APIs are not supported under the Compact Framework - - - - - - Convert a path into a fully qualified local file path. - - The path to convert. - The fully qualified path. - - - Converts the path specified to a fully - qualified path. If the path is relative it is - taken as relative from the application base - directory. - - - The path specified must be a local file path, a URI is not supported. - - - - - - Creates a new case-insensitive instance of the class with the default initial capacity. - - A new case-insensitive instance of the class with the default initial capacity - - - The new Hashtable instance uses the default load factor, the CaseInsensitiveHashCodeProvider, and the CaseInsensitiveComparer. - - - - - - Gets an empty array of types. - - - - The Type.EmptyTypes field is not available on - the .NET Compact Framework 1.0. - - - - - - The fully qualified type of the SystemInfo class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Cache the host name for the current machine - - - - - Cache the application friendly name - - - - - Text to output when a null is encountered. - - - - - Text to output when an unsupported feature is requested. - - - - - Start time for the current process. - - - - - Gets the system dependent line terminator. - - - The system dependent line terminator. - - - - Gets the system dependent line terminator. - - - - - - Gets the base directory for this . - - The base directory path for the current . - - - Gets the base directory for this . - - - The value returned may be either a local file path or a URI. - - - - - - Gets the path to the configuration file for the current . - - The path to the configuration file for the current . - - - The .NET Compact Framework 1.0 does not have a concept of a configuration - file. For this runtime, we use the entry assembly location as the root for - the configuration file name. - - - The value returned may be either a local file path or a URI. - - - - - - Gets the path to the file that first executed in the current . - - The path to the entry assembly. - - - Gets the path to the file that first executed in the current . - - - - - - Gets the ID of the current thread. - - The ID of the current thread. - - - On the .NET framework, the AppDomain.GetCurrentThreadId method - is used to obtain the thread ID for the current thread. This is the - operating system ID for the thread. - - - On the .NET Compact Framework 1.0 it is not possible to get the - operating system thread ID for the current thread. The native method - GetCurrentThreadId is implemented inline in a header file - and cannot be called. - - - On the .NET Framework 2.0 the Thread.ManagedThreadId is used as this - gives a stable id unrelated to the operating system thread ID which may - change if the runtime is using fibers. - - - - - - Get the host name or machine name for the current machine - - - The hostname or machine name - - - - Get the host name or machine name for the current machine - - - The host name () or - the machine name (Environment.MachineName) for - the current machine, or if neither of these are available - then NOT AVAILABLE is returned. - - - - - - Get this application's friendly name - - - The friendly name of this application as a string - - - - If available the name of the application is retrieved from - the AppDomain using AppDomain.CurrentDomain.FriendlyName. - - - Otherwise the file name of the entry assembly is used. - - - - - - Get the start time for the current process. - - - - This is the time at which the log4net library was loaded into the - AppDomain. Due to reports of a hang in the call to System.Diagnostics.Process.StartTime - this is not the start time for the current process. - - - The log4net library should be loaded by an application early during its - startup, therefore this start time should be a good approximation for - the actual start time. - - - Note that AppDomains may be loaded and unloaded within the - same process without the process terminating, however this start time - will be set per AppDomain. - - - - - - Text to output when a null is encountered. - - - - Use this value to indicate a null has been encountered while - outputting a string representation of an item. - - - The default value is (null). This value can be overridden by specifying - a value for the log4net.NullText appSetting in the application's - .config file. - - - - - - Text to output when an unsupported feature is requested. - - - - Use this value when an unsupported feature is requested. - - - The default value is NOT AVAILABLE. This value can be overridden by specifying - a value for the log4net.NotAvailableText appSetting in the application's - .config file. - - - - - - Utility class that represents a format string. - - - - Utility class that represents a format string. - - - Nicko Cadell - - - - Initialise the - - An that supplies culture-specific formatting information. - A containing zero or more format items. - An array containing zero or more objects to format. - - - - Format the string and arguments - - the formatted string - - - - Replaces the format item in a specified with the text equivalent - of the value of a corresponding instance in a specified array. - A specified parameter supplies culture-specific formatting information. - - An that supplies culture-specific formatting information. - A containing zero or more format items. - An array containing zero or more objects to format. - - A copy of format in which the format items have been replaced by the - equivalent of the corresponding instances of in args. - - - - This method does not throw exceptions. If an exception thrown while formatting the result the - exception and arguments are returned in the result string. - - - - - - Process an error during StringFormat - - - - - Dump the contents of an array into a string builder - - - - - Dump an object to a string - - - - - The fully qualified type of the SystemStringFormat class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Implementation of Properties collection for the - - - - Class implements a collection of properties that is specific to each thread. - The class is not synchronized as each thread has its own . - - - Nicko Cadell - - - - Each thread will automatically have its instance. - - - - - Internal constructor - - - - Initializes a new instance of the class. - - - - - - Remove a property - - the key for the entry to remove - - - Remove a property - - - - - - Get the keys stored in the properties. - - - Gets the keys stored in the properties. - - a set of the defined keys - - - - Clear all properties - - - - Clear all properties - - - - - - Get the PropertiesDictionary for this thread. - - create the dictionary if it does not exist, otherwise return null if does not exist - the properties for this thread - - - The collection returned is only to be used on the calling thread. If the - caller needs to share the collection between different threads then the - caller must clone the collection before doing so. - - - - - - Gets or sets the value of a property - - - The value for the property with the specified key - - - - Gets or sets the value of a property - - - - - - Implementation of Stack for the - - - - Implementation of Stack for the - - - Nicko Cadell - - - - The stack store. - - - - - Internal constructor - - - - Initializes a new instance of the class. - - - - - - Clears all the contextual information held in this stack. - - - - Clears all the contextual information held in this stack. - Only call this if you think that this tread is being reused after - a previous call execution which may not have completed correctly. - You do not need to use this method if you always guarantee to call - the method of the - returned from even in exceptional circumstances, - for example by using the using(log4net.ThreadContext.Stacks["NDC"].Push("Stack_Message")) - syntax. - - - - - - Removes the top context from this stack. - - The message in the context that was removed from the top of this stack. - - - Remove the top context from this stack, and return - it to the caller. If this stack is empty then an - empty string (not ) is returned. - - - - - - Pushes a new context message into this stack. - - The new context message. - - An that can be used to clean up the context stack. - - - - Pushes a new context onto this stack. An - is returned that can be used to clean up this stack. This - can be easily combined with the using keyword to scope the - context. - - - Simple example of using the Push method with the using keyword. - - using(log4net.ThreadContext.Stacks["NDC"].Push("Stack_Message")) - { - log.Warn("This should have an ThreadContext Stack message"); - } - - - - - - Gets the current context information for this stack. - - The current context information. - - - - Gets the current context information for this stack. - - Gets the current context information - - - Gets the current context information for this stack. - - - - - - Get a portable version of this object - - the portable instance of this object - - - Get a cross thread portable version of this object - - - - - - The number of messages in the stack - - - The current number of messages in the stack - - - - The current number of messages in the stack. That is - the number of times has been called - minus the number of times has been called. - - - - - - Gets and sets the internal stack used by this - - The internal storage stack - - - This property is provided only to support backward compatability - of the . Tytpically the internal stack should not - be modified. - - - - - - Inner class used to represent a single context frame in the stack. - - - - Inner class used to represent a single context frame in the stack. - - - - - - Constructor - - The message for this context. - The parent context in the chain. - - - Initializes a new instance of the class - with the specified message and parent context. - - - - - - Get the message. - - The message. - - - Get the message. - - - - - - Gets the full text of the context down to the root level. - - - The full text of the context down to the root level. - - - - Gets the full text of the context down to the root level. - - - - - - Struct returned from the method. - - - - This struct implements the and is designed to be used - with the pattern to remove the stack frame at the end of the scope. - - - - - - The ThreadContextStack internal stack - - - - - The depth to trim the stack to when this instance is disposed - - - - - Constructor - - The internal stack used by the ThreadContextStack. - The depth to return the stack to when this object is disposed. - - - Initializes a new instance of the class with - the specified stack and return depth. - - - - - - Returns the stack to the correct depth. - - - - Returns the stack to the correct depth. - - - - - - Implementation of Stacks collection for the - - - - Implementation of Stacks collection for the - - - Nicko Cadell - - - - Internal constructor - - - - Initializes a new instance of the class. - - - - - - The fully qualified type of the ThreadContextStacks class. - - - Used by the internal logger to record the Type of the - log message. - - - - - Gets the named thread context stack - - - The named stack - - - - Gets the named thread context stack - - - - - - Utility class for transforming strings. - - - - Utility class for transforming strings. - - - Nicko Cadell - Gert Driesen - - - - Initializes a new instance of the class. - - - - Uses a private access modifier to prevent instantiation of this class. - - - - - - Write a string to an - - the writer to write to - the string to write - The string to replace non XML compliant chars with - - - The test is escaped either using XML escape entities - or using CDATA sections. - - - - - - Replace invalid XML characters in text string - - the XML text input string - the string to use in place of invalid characters - A string that does not contain invalid XML characters. - - - Certain Unicode code points are not allowed in the XML InfoSet, for - details see: http://www.w3.org/TR/REC-xml/#charsets. - - - This method replaces any illegal characters in the input string - with the mask string specified. - - - - - - Count the number of times that the substring occurs in the text - - the text to search - the substring to find - the number of times the substring occurs in the text - - - The substring is assumed to be non repeating within itself. - - - - - - Characters illegal in XML 1.0 - - - - - Impersonate a Windows Account - - - - This impersonates a Windows account. - - - How the impersonation is done depends on the value of . - This allows the context to either impersonate a set of user credentials specified - using username, domain name and password or to revert to the process credentials. - - - - - - Default constructor - - - - Default constructor - - - - - - Initialize the SecurityContext based on the options set. - - - - This is part of the delayed object - activation scheme. The method must - be called on this object after the configuration properties have - been set. Until is called this - object is in an undefined state and must not be used. - - - If any of the configuration properties are modified then - must be called again. - - - The security context will try to Logon the specified user account and - capture a primary token for impersonation. - - - The required , - or properties were not specified. - - - - Impersonate the Windows account specified by the and properties. - - caller provided state - - An instance that will revoke the impersonation of this SecurityContext - - - - Depending on the property either - impersonate a user using credentials supplied or revert - to the process credentials. - - - - - - Create a given the userName, domainName and password. - - the user name - the domain name - the password - the for the account specified - - - Uses the Windows API call LogonUser to get a principal token for the account. This - token is used to initialize the WindowsIdentity. - - - - - - Gets or sets the impersonation mode for this security context - - - The impersonation mode for this security context - - - - Impersonate either a user with user credentials or - revert this thread to the credentials of the process. - The value is one of the - enum. - - - The default value is - - - When the mode is set to - the user's credentials are established using the - , and - values. - - - When the mode is set to - no other properties need to be set. If the calling thread is - impersonating then it will be reverted back to the process credentials. - - - - - - Gets or sets the Windows username for this security context - - - The Windows username for this security context - - - - This property must be set if - is set to (the default setting). - - - - - - Gets or sets the Windows domain name for this security context - - - The Windows domain name for this security context - - - - The default value for is the local machine name - taken from the property. - - - This property must be set if - is set to (the default setting). - - - - - - Sets the password for the Windows account specified by the and properties. - - - The password for the Windows account specified by the and properties. - - - - This property must be set if - is set to (the default setting). - - - - - - The impersonation modes for the - - - - See the property for - details. - - - - - - Impersonate a user using the credentials supplied - - - - - Revert this the thread to the credentials of the process - - - - - Adds to - - - - Helper class to expose the - through the interface. - - - - - - Constructor - - the impersonation context being wrapped - - - Constructor - - - - - - Revert the impersonation - - - - Revert the impersonation - - - - - - The log4net Global Context. - - - - The GlobalContext provides a location for global debugging - information to be stored. - - - The global context has a properties map and these properties can - be included in the output of log messages. The - supports selecting and outputing these properties. - - - By default the log4net:HostName property is set to the name of - the current machine. - - - - - GlobalContext.Properties["hostname"] = Environment.MachineName; - - - - Nicko Cadell - - - - Private Constructor. - - - Uses a private access modifier to prevent instantiation of this class. - - - - - The global context properties instance - - - - - The global properties map. - - - The global properties map. - - - - The global properties map. - - - - - - Provides information about the environment the assembly has - been built for. - - - - Version of the assembly - - - Version of the framework targeted - - - Type of framework targeted - - - Does it target a client profile? - - - - Identifies the version and target for this assembly. - - - - - The log4net Logical Thread Context. - - - - The LogicalThreadContext provides a location for specific debugging - information to be stored. - The LogicalThreadContext properties override any or - properties with the same name. - - - The Logical Thread Context has a properties map and a stack. - The properties and stack can - be included in the output of log messages. The - supports selecting and outputting these properties. - - - The Logical Thread Context provides a diagnostic context for the current call context. - This is an instrument for distinguishing interleaved log - output from different sources. Log output is typically interleaved - when a server handles multiple clients near-simultaneously. - - - The Logical Thread Context is managed on a per basis. - - - The requires a link time - for the - . - If the calling code does not have this permission then this context will be disabled. - It will not store any property values set on it. - - - Example of using the thread context properties to store a username. - - LogicalThreadContext.Properties["user"] = userName; - log.Info("This log message has a LogicalThreadContext Property called 'user'"); - - - Example of how to push a message into the context stack - - using(LogicalThreadContext.Stacks["LDC"].Push("my context message")) - { - log.Info("This log message has a LogicalThreadContext Stack message that includes 'my context message'"); - - } // at the end of the using block the message is automatically popped - - - - Nicko Cadell - - - - Private Constructor. - - - - Uses a private access modifier to prevent instantiation of this class. - - - - - - The thread context properties instance - - - - - The thread context stacks instance - - - - - The thread properties map - - - The thread properties map - - - - The LogicalThreadContext properties override any - or properties with the same name. - - - - - - The thread stacks - - - stack map - - - - The logical thread stacks. - - - - - - This class is used by client applications to request logger instances. - - - - This class has static methods that are used by a client to request - a logger instance. The method is - used to retrieve a logger. - - - See the interface for more details. - - - Simple example of logging messages - - ILog log = LogManager.GetLogger("application-log"); - - log.Info("Application Start"); - log.Debug("This is a debug message"); - - if (log.IsDebugEnabled) - { - log.Debug("This is another debug message"); - } - - - - - Nicko Cadell - Gert Driesen - - - - Initializes a new instance of the class. - - - Uses a private access modifier to prevent instantiation of this class. - - - - Returns the named logger if it exists. - - Returns the named logger if it exists. - - - - If the named logger exists (in the default repository) then it - returns a reference to the logger, otherwise it returns null. - - - The fully qualified logger name to look for. - The logger found, or null if no logger could be found. - - - - Returns the named logger if it exists. - - - - If the named logger exists (in the specified repository) then it - returns a reference to the logger, otherwise it returns - null. - - - The repository to lookup in. - The fully qualified logger name to look for. - - The logger found, or null if the logger doesn't exist in the specified - repository. - - - - - Returns the named logger if it exists. - - - - If the named logger exists (in the repository for the specified assembly) then it - returns a reference to the logger, otherwise it returns - null. - - - The assembly to use to lookup the repository. - The fully qualified logger name to look for. - - The logger, or null if the logger doesn't exist in the specified - assembly's repository. - - - - Get the currently defined loggers. - - Returns all the currently defined loggers in the default repository. - - - The root logger is not included in the returned array. - - All the defined loggers. - - - - Returns all the currently defined loggers in the specified repository. - - The repository to lookup in. - - The root logger is not included in the returned array. - - All the defined loggers. - - - - Returns all the currently defined loggers in the specified assembly's repository. - - The assembly to use to lookup the repository. - - The root logger is not included in the returned array. - - All the defined loggers. - - - Get or create a logger. - - Retrieves or creates a named logger. - - - - Retrieves a logger named as the - parameter. If the named logger already exists, then the - existing instance will be returned. Otherwise, a new instance is - created. - - By default, loggers do not have a set level but inherit - it from the hierarchy. This is one of the central features of - log4net. - - - The name of the logger to retrieve. - The logger with the name specified. - - - - Retrieves or creates a named logger. - - - - Retrieve a logger named as the - parameter. If the named logger already exists, then the - existing instance will be returned. Otherwise, a new instance is - created. - - - By default, loggers do not have a set level but inherit - it from the hierarchy. This is one of the central features of - log4net. - - - The repository to lookup in. - The name of the logger to retrieve. - The logger with the name specified. - - - - Retrieves or creates a named logger. - - - - Retrieve a logger named as the - parameter. If the named logger already exists, then the - existing instance will be returned. Otherwise, a new instance is - created. - - - By default, loggers do not have a set level but inherit - it from the hierarchy. This is one of the central features of - log4net. - - - The assembly to use to lookup the repository. - The name of the logger to retrieve. - The logger with the name specified. - - - - Shorthand for . - - - Get the logger for the fully qualified name of the type specified. - - The full name of will be used as the name of the logger to retrieve. - The logger with the name specified. - - - - Shorthand for . - - - Gets the logger for the fully qualified name of the type specified. - - The repository to lookup in. - The full name of will be used as the name of the logger to retrieve. - The logger with the name specified. - - - - Shorthand for . - - - Gets the logger for the fully qualified name of the type specified. - - The assembly to use to lookup the repository. - The full name of will be used as the name of the logger to retrieve. - The logger with the name specified. - - - - Shuts down the log4net system. - - - - Calling this method will safely close and remove all - appenders in all the loggers including root contained in all the - default repositories. - - - Some appenders need to be closed before the application exists. - Otherwise, pending logging events might be lost. - - The shutdown method is careful to close nested - appenders before closing regular appenders. This is allows - configurations where a regular appender is attached to a logger - and again to a nested appender. - - - - - Shutdown a logger repository. - - Shuts down the default repository. - - - - Calling this method will safely close and remove all - appenders in all the loggers including root contained in the - default repository. - - Some appenders need to be closed before the application exists. - Otherwise, pending logging events might be lost. - - The shutdown method is careful to close nested - appenders before closing regular appenders. This is allows - configurations where a regular appender is attached to a logger - and again to a nested appender. - - - - - - Shuts down the repository for the repository specified. - - - - Calling this method will safely close and remove all - appenders in all the loggers including root contained in the - specified. - - - Some appenders need to be closed before the application exists. - Otherwise, pending logging events might be lost. - - The shutdown method is careful to close nested - appenders before closing regular appenders. This is allows - configurations where a regular appender is attached to a logger - and again to a nested appender. - - - The repository to shutdown. - - - - Shuts down the repository specified. - - - - Calling this method will safely close and remove all - appenders in all the loggers including root contained in the - repository. The repository is looked up using - the specified. - - - Some appenders need to be closed before the application exists. - Otherwise, pending logging events might be lost. - - - The shutdown method is careful to close nested - appenders before closing regular appenders. This is allows - configurations where a regular appender is attached to a logger - and again to a nested appender. - - - The assembly to use to lookup the repository. - - - Reset the configuration of a repository - - Resets all values contained in this repository instance to their defaults. - - - - Resets all values contained in the repository instance to their - defaults. This removes all appenders from all loggers, sets - the level of all non-root loggers to null, - sets their additivity flag to true and sets the level - of the root logger to . Moreover, - message disabling is set to its default "off" value. - - - - - - Resets all values contained in this repository instance to their defaults. - - - - Reset all values contained in the repository instance to their - defaults. This removes all appenders from all loggers, sets - the level of all non-root loggers to null, - sets their additivity flag to true and sets the level - of the root logger to . Moreover, - message disabling is set to its default "off" value. - - - The repository to reset. - - - - Resets all values contained in this repository instance to their defaults. - - - - Reset all values contained in the repository instance to their - defaults. This removes all appenders from all loggers, sets - the level of all non-root loggers to null, - sets their additivity flag to true and sets the level - of the root logger to . Moreover, - message disabling is set to its default "off" value. - - - The assembly to use to lookup the repository to reset. - - - Get the logger repository. - - Returns the default instance. - - - - Gets the for the repository specified - by the callers assembly (). - - - The instance for the default repository. - - - - Returns the default instance. - - The default instance. - - - Gets the for the repository specified - by the argument. - - - The repository to lookup in. - - - - Returns the default instance. - - The default instance. - - - Gets the for the repository specified - by the argument. - - - The assembly to use to lookup the repository. - - - Get a logger repository. - - Returns the default instance. - - - - Gets the for the repository specified - by the callers assembly (). - - - The instance for the default repository. - - - - Returns the default instance. - - The default instance. - - - Gets the for the repository specified - by the argument. - - - The repository to lookup in. - - - - Returns the default instance. - - The default instance. - - - Gets the for the repository specified - by the argument. - - - The assembly to use to lookup the repository. - - - Create a domain - - Creates a repository with the specified repository type. - - - - CreateDomain is obsolete. Use CreateRepository instead of CreateDomain. - - - The created will be associated with the repository - specified such that a call to will return - the same repository instance. - - - A that implements - and has a no arg constructor. An instance of this type will be created to act - as the for the repository specified. - The created for the repository. - - - Create a logger repository. - - Creates a repository with the specified repository type. - - A that implements - and has a no arg constructor. An instance of this type will be created to act - as the for the repository specified. - The created for the repository. - - - The created will be associated with the repository - specified such that a call to will return - the same repository instance. - - - - - - Creates a repository with the specified name. - - - - CreateDomain is obsolete. Use CreateRepository instead of CreateDomain. - - - Creates the default type of which is a - object. - - - The name must be unique. Repositories cannot be redefined. - An will be thrown if the repository already exists. - - - The name of the repository, this must be unique amongst repositories. - The created for the repository. - The specified repository already exists. - - - - Creates a repository with the specified name. - - - - Creates the default type of which is a - object. - - - The name must be unique. Repositories cannot be redefined. - An will be thrown if the repository already exists. - - - The name of the repository, this must be unique amongst repositories. - The created for the repository. - The specified repository already exists. - - - - Creates a repository with the specified name and repository type. - - - - CreateDomain is obsolete. Use CreateRepository instead of CreateDomain. - - - The name must be unique. Repositories cannot be redefined. - An will be thrown if the repository already exists. - - - The name of the repository, this must be unique to the repository. - A that implements - and has a no arg constructor. An instance of this type will be created to act - as the for the repository specified. - The created for the repository. - The specified repository already exists. - - - - Creates a repository with the specified name and repository type. - - - - The name must be unique. Repositories cannot be redefined. - An will be thrown if the repository already exists. - - - The name of the repository, this must be unique to the repository. - A that implements - and has a no arg constructor. An instance of this type will be created to act - as the for the repository specified. - The created for the repository. - The specified repository already exists. - - - - Creates a repository for the specified assembly and repository type. - - - - CreateDomain is obsolete. Use CreateRepository instead of CreateDomain. - - - The created will be associated with the repository - specified such that a call to with the - same assembly specified will return the same repository instance. - - - The assembly to use to get the name of the repository. - A that implements - and has a no arg constructor. An instance of this type will be created to act - as the for the repository specified. - The created for the repository. - - - - Creates a repository for the specified assembly and repository type. - - - - The created will be associated with the repository - specified such that a call to with the - same assembly specified will return the same repository instance. - - - The assembly to use to get the name of the repository. - A that implements - and has a no arg constructor. An instance of this type will be created to act - as the for the repository specified. - The created for the repository. - - - - Gets the list of currently defined repositories. - - - - Get an array of all the objects that have been created. - - - An array of all the known objects. - - - - Looks up the wrapper object for the logger specified. - - The logger to get the wrapper for. - The wrapper for the logger specified. - - - - Looks up the wrapper objects for the loggers specified. - - The loggers to get the wrappers for. - The wrapper objects for the loggers specified. - - - - Create the objects used by - this manager. - - The logger to wrap. - The wrapper for the logger specified. - - - - The wrapper map to use to hold the objects. - - - - - Implementation of Mapped Diagnostic Contexts. - - - - - The MDC is deprecated and has been replaced by the . - The current MDC implementation forwards to the ThreadContext.Properties. - - - - The MDC class is similar to the class except that it is - based on a map instead of a stack. It provides mapped - diagnostic contexts. A Mapped Diagnostic Context, or - MDC in short, is an instrument for distinguishing interleaved log - output from different sources. Log output is typically interleaved - when a server handles multiple clients near-simultaneously. - - - The MDC is managed on a per thread basis. - - - - Nicko Cadell - Gert Driesen - - - - Initializes a new instance of the class. - - - Uses a private access modifier to prevent instantiation of this class. - - - - - Gets the context value identified by the parameter. - - The key to lookup in the MDC. - The string value held for the key, or a null reference if no corresponding value is found. - - - - The MDC is deprecated and has been replaced by the . - The current MDC implementation forwards to the ThreadContext.Properties. - - - - If the parameter does not look up to a - previously defined context then null will be returned. - - - - - - Add an entry to the MDC - - The key to store the value under. - The value to store. - - - - The MDC is deprecated and has been replaced by the . - The current MDC implementation forwards to the ThreadContext.Properties. - - - - Puts a context value (the parameter) as identified - with the parameter into the current thread's - context map. - - - If a value is already defined for the - specified then the value will be replaced. If the - is specified as null then the key value mapping will be removed. - - - - - - Removes the key value mapping for the key specified. - - The key to remove. - - - - The MDC is deprecated and has been replaced by the . - The current MDC implementation forwards to the ThreadContext.Properties. - - - - Remove the specified entry from this thread's MDC - - - - - - Clear all entries in the MDC - - - - - The MDC is deprecated and has been replaced by the . - The current MDC implementation forwards to the ThreadContext.Properties. - - - - Remove all the entries from this thread's MDC - - - - - - Implementation of Nested Diagnostic Contexts. - - - - - The NDC is deprecated and has been replaced by the . - The current NDC implementation forwards to the ThreadContext.Stacks["NDC"]. - - - - A Nested Diagnostic Context, or NDC in short, is an instrument - to distinguish interleaved log output from different sources. Log - output is typically interleaved when a server handles multiple - clients near-simultaneously. - - - Interleaved log output can still be meaningful if each log entry - from different contexts had a distinctive stamp. This is where NDCs - come into play. - - - Note that NDCs are managed on a per thread basis. The NDC class - is made up of static methods that operate on the context of the - calling thread. - - - How to push a message into the context - - using(NDC.Push("my context message")) - { - ... all log calls will have 'my context message' included ... - - } // at the end of the using block the message is automatically removed - - - - Nicko Cadell - Gert Driesen - - - - Initializes a new instance of the class. - - - Uses a private access modifier to prevent instantiation of this class. - - - - - Clears all the contextual information held on the current thread. - - - - - The NDC is deprecated and has been replaced by the . - The current NDC implementation forwards to the ThreadContext.Stacks["NDC"]. - - - - Clears the stack of NDC data held on the current thread. - - - - - - Creates a clone of the stack of context information. - - A clone of the context info for this thread. - - - - The NDC is deprecated and has been replaced by the . - The current NDC implementation forwards to the ThreadContext.Stacks["NDC"]. - - - - The results of this method can be passed to the - method to allow child threads to inherit the context of their - parent thread. - - - - - - Inherits the contextual information from another thread. - - The context stack to inherit. - - - - The NDC is deprecated and has been replaced by the . - The current NDC implementation forwards to the ThreadContext.Stacks["NDC"]. - - - - This thread will use the context information from the stack - supplied. This can be used to initialize child threads with - the same contextual information as their parent threads. These - contexts will NOT be shared. Any further contexts that - are pushed onto the stack will not be visible to the other. - Call to obtain a stack to pass to - this method. - - - - - - Removes the top context from the stack. - - - The message in the context that was removed from the top - of the stack. - - - - - The NDC is deprecated and has been replaced by the . - The current NDC implementation forwards to the ThreadContext.Stacks["NDC"]. - - - - Remove the top context from the stack, and return - it to the caller. If the stack is empty then an - empty string (not null) is returned. - - - - - - Pushes a new context message. - - The new context message. - - An that can be used to clean up - the context stack. - - - - - The NDC is deprecated and has been replaced by the . - The current NDC implementation forwards to the ThreadContext.Stacks["NDC"]. - - - - Pushes a new context onto the context stack. An - is returned that can be used to clean up the context stack. This - can be easily combined with the using keyword to scope the - context. - - - Simple example of using the Push method with the using keyword. - - using(log4net.NDC.Push("NDC_Message")) - { - log.Warn("This should have an NDC message"); - } - - - - - - Removes the context information for this thread. It is - not required to call this method. - - - - - The NDC is deprecated and has been replaced by the . - The current NDC implementation forwards to the ThreadContext.Stacks["NDC"]. - - - - This method is not implemented. - - - - - - Forces the stack depth to be at most . - - The maximum depth of the stack - - - - The NDC is deprecated and has been replaced by the . - The current NDC implementation forwards to the ThreadContext.Stacks["NDC"]. - - - - Forces the stack depth to be at most . - This may truncate the head of the stack. This only affects the - stack in the current thread. Also it does not prevent it from - growing, it only sets the maximum depth at the time of the - call. This can be used to return to a known context depth. - - - - - - Gets the current context depth. - - The current context depth. - - - - The NDC is deprecated and has been replaced by the . - The current NDC implementation forwards to the ThreadContext.Stacks["NDC"]. - - - - The number of context values pushed onto the context stack. - - - Used to record the current depth of the context. This can then - be restored using the method. - - - - - - - The log4net Thread Context. - - - - The ThreadContext provides a location for thread specific debugging - information to be stored. - The ThreadContext properties override any - properties with the same name. - - - The thread context has a properties map and a stack. - The properties and stack can - be included in the output of log messages. The - supports selecting and outputting these properties. - - - The Thread Context provides a diagnostic context for the current thread. - This is an instrument for distinguishing interleaved log - output from different sources. Log output is typically interleaved - when a server handles multiple clients near-simultaneously. - - - The Thread Context is managed on a per thread basis. - - - Example of using the thread context properties to store a username. - - ThreadContext.Properties["user"] = userName; - log.Info("This log message has a ThreadContext Property called 'user'"); - - - Example of how to push a message into the context stack - - using(ThreadContext.Stacks["NDC"].Push("my context message")) - { - log.Info("This log message has a ThreadContext Stack message that includes 'my context message'"); - - } // at the end of the using block the message is automatically popped - - - - Nicko Cadell - - - - Private Constructor. - - - - Uses a private access modifier to prevent instantiation of this class. - - - - - - The thread context properties instance - - - - - The thread context stacks instance - - - - - The thread properties map - - - The thread properties map - - - - The ThreadContext properties override any - properties with the same name. - - - - - - The thread stacks - - - stack map - - - - The thread local stacks. - - - - - diff --git a/Users/bin/Debug/pl/Users.resources.dll b/Users/bin/Debug/pl/Users.resources.dll deleted file mode 100644 index d601c4de9..000000000 Binary files a/Users/bin/Debug/pl/Users.resources.dll and /dev/null differ diff --git a/Users/bin/Debug/ru/Users.resources.dll b/Users/bin/Debug/ru/Users.resources.dll deleted file mode 100644 index de771a976..000000000 Binary files a/Users/bin/Debug/ru/Users.resources.dll and /dev/null differ diff --git a/Users/bin/Debug/zh-CN/Users.resources.dll b/Users/bin/Debug/zh-CN/Users.resources.dll deleted file mode 100644 index ef4043a6a..000000000 Binary files a/Users/bin/Debug/zh-CN/Users.resources.dll and /dev/null differ diff --git a/Users/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs b/Users/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs deleted file mode 100644 index 3871b184d..000000000 --- a/Users/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs +++ /dev/null @@ -1,4 +0,0 @@ -// -using System; -using System.Reflection; -[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")] diff --git a/Users/obj/Debug/Users.Forms.EditSelectedUser.resources b/Users/obj/Debug/Users.Forms.EditSelectedUser.resources deleted file mode 100644 index c8db3828d..000000000 Binary files a/Users/obj/Debug/Users.Forms.EditSelectedUser.resources and /dev/null differ diff --git a/Users/obj/Debug/Users.Forms.LoginDlg.resources b/Users/obj/Debug/Users.Forms.LoginDlg.resources deleted file mode 100644 index 5b3940a36..000000000 Binary files a/Users/obj/Debug/Users.Forms.LoginDlg.resources and /dev/null differ diff --git a/Users/obj/Debug/Users.Forms.PasswordChangeDlg.resources b/Users/obj/Debug/Users.Forms.PasswordChangeDlg.resources deleted file mode 100644 index 0c87ba20c..000000000 Binary files a/Users/obj/Debug/Users.Forms.PasswordChangeDlg.resources and /dev/null differ diff --git a/Users/obj/Debug/Users.Forms.PlainLoginDlg.resources b/Users/obj/Debug/Users.Forms.PlainLoginDlg.resources deleted file mode 100644 index 5b3940a36..000000000 Binary files a/Users/obj/Debug/Users.Forms.PlainLoginDlg.resources and /dev/null differ diff --git a/Users/obj/Debug/Users.Forms.UserManagementDlg.resources b/Users/obj/Debug/Users.Forms.UserManagementDlg.resources deleted file mode 100644 index cefd3a8a4..000000000 Binary files a/Users/obj/Debug/Users.Forms.UserManagementDlg.resources and /dev/null differ diff --git a/Users/obj/Debug/Users.Resources.Strings.cs.resources b/Users/obj/Debug/Users.Resources.Strings.cs.resources deleted file mode 100644 index ac27a5d17..000000000 Binary files a/Users/obj/Debug/Users.Resources.Strings.cs.resources and /dev/null differ diff --git a/Users/obj/Debug/Users.Resources.Strings.de.resources b/Users/obj/Debug/Users.Resources.Strings.de.resources deleted file mode 100644 index 7f8cb716f..000000000 Binary files a/Users/obj/Debug/Users.Resources.Strings.de.resources and /dev/null differ diff --git a/Users/obj/Debug/Users.Resources.Strings.fr.resources b/Users/obj/Debug/Users.Resources.Strings.fr.resources deleted file mode 100644 index 2c70c982c..000000000 Binary files a/Users/obj/Debug/Users.Resources.Strings.fr.resources and /dev/null differ diff --git a/Users/obj/Debug/Users.Resources.Strings.it.resources b/Users/obj/Debug/Users.Resources.Strings.it.resources deleted file mode 100644 index a6e4eaab9..000000000 Binary files a/Users/obj/Debug/Users.Resources.Strings.it.resources and /dev/null differ diff --git a/Users/obj/Debug/Users.Resources.Strings.pl.resources b/Users/obj/Debug/Users.Resources.Strings.pl.resources deleted file mode 100644 index 709603f01..000000000 Binary files a/Users/obj/Debug/Users.Resources.Strings.pl.resources and /dev/null differ diff --git a/Users/obj/Debug/Users.Resources.Strings.resources b/Users/obj/Debug/Users.Resources.Strings.resources deleted file mode 100644 index 851008154..000000000 Binary files a/Users/obj/Debug/Users.Resources.Strings.resources and /dev/null differ diff --git a/Users/obj/Debug/Users.Resources.Strings.ru.resources b/Users/obj/Debug/Users.Resources.Strings.ru.resources deleted file mode 100644 index c2960d273..000000000 Binary files a/Users/obj/Debug/Users.Resources.Strings.ru.resources and /dev/null differ diff --git a/Users/obj/Debug/Users.Resources.Strings.zh-CN.resources b/Users/obj/Debug/Users.Resources.Strings.zh-CN.resources deleted file mode 100644 index 74ec456be..000000000 Binary files a/Users/obj/Debug/Users.Resources.Strings.zh-CN.resources and /dev/null differ diff --git a/Users/obj/Debug/Users.csproj.AssemblyReference.cache b/Users/obj/Debug/Users.csproj.AssemblyReference.cache deleted file mode 100644 index e2b39177a..000000000 Binary files a/Users/obj/Debug/Users.csproj.AssemblyReference.cache and /dev/null differ diff --git a/Users/obj/Debug/Users.csproj.CoreCompileInputs.cache b/Users/obj/Debug/Users.csproj.CoreCompileInputs.cache deleted file mode 100644 index 5345d2066..000000000 --- a/Users/obj/Debug/Users.csproj.CoreCompileInputs.cache +++ /dev/null @@ -1 +0,0 @@ -7d3eac640e4fa879f74881661d7a1243808d9e7c874ceed9029496931b74b66c diff --git a/Users/obj/Debug/Users.csproj.FileListAbsolute.txt b/Users/obj/Debug/Users.csproj.FileListAbsolute.txt deleted file mode 100644 index b82b653be..000000000 --- a/Users/obj/Debug/Users.csproj.FileListAbsolute.txt +++ /dev/null @@ -1,49 +0,0 @@ -C:\Users\micha\git\tbf\Users\bin\Debug\Users.dll -C:\Users\micha\git\tbf\Users\bin\Debug\Users.pdb -C:\Users\micha\git\tbf\Users\bin\Debug\cs\Users.resources.dll -C:\Users\micha\git\tbf\Users\bin\Debug\de\Users.resources.dll -C:\Users\micha\git\tbf\Users\bin\Debug\fr\Users.resources.dll -C:\Users\micha\git\tbf\Users\bin\Debug\it\Users.resources.dll -C:\Users\micha\git\tbf\Users\bin\Debug\pl\Users.resources.dll -C:\Users\micha\git\tbf\Users\bin\Debug\ru\Users.resources.dll -C:\Users\micha\git\tbf\Users\bin\Debug\zh-CN\Users.resources.dll -C:\Users\micha\git\tbf\Users\bin\Debug\Common.dll -C:\Users\micha\git\tbf\Users\bin\Debug\FluentNHibernate.dll -C:\Users\micha\git\tbf\Users\bin\Debug\GemCard.dll -C:\Users\micha\git\tbf\Users\bin\Debug\Iesi.Collections.dll -C:\Users\micha\git\tbf\Users\bin\Debug\log4net.dll -C:\Users\micha\git\tbf\Users\bin\Debug\MySql.Data.dll -C:\Users\micha\git\tbf\Users\bin\Debug\NHibernate.dll -C:\Users\micha\git\tbf\Users\bin\Debug\Common.pdb -C:\Users\micha\git\tbf\Users\bin\Debug\GemCard.pdb -C:\Users\micha\git\tbf\Users\bin\Debug\FluentNHibernate.pdb -C:\Users\micha\git\tbf\Users\bin\Debug\FluentNHibernate.xml -C:\Users\micha\git\tbf\Users\bin\Debug\Iesi.Collections.xml -C:\Users\micha\git\tbf\Users\bin\Debug\log4net.xml -C:\Users\micha\git\tbf\Users\bin\Debug\NHibernate.xml -C:\Users\micha\git\tbf\Users\obj\Debug\Users.csproj.AssemblyReference.cache -C:\Users\micha\git\tbf\Users\obj\Debug\Users.Forms.EditSelectedUser.resources -C:\Users\micha\git\tbf\Users\obj\Debug\Users.Forms.PasswordChangeDlg.resources -C:\Users\micha\git\tbf\Users\obj\Debug\Users.Forms.PlainLoginDlg.resources -C:\Users\micha\git\tbf\Users\obj\Debug\Users.Forms.UserManagementDlg.resources -C:\Users\micha\git\tbf\Users\obj\Debug\Users.Forms.LoginDlg.resources -C:\Users\micha\git\tbf\Users\obj\Debug\Users.Resources.Strings.resources -C:\Users\micha\git\tbf\Users\obj\Debug\Users.Resources.Strings.cs.resources -C:\Users\micha\git\tbf\Users\obj\Debug\Users.Resources.Strings.de.resources -C:\Users\micha\git\tbf\Users\obj\Debug\Users.Resources.Strings.fr.resources -C:\Users\micha\git\tbf\Users\obj\Debug\Users.Resources.Strings.it.resources -C:\Users\micha\git\tbf\Users\obj\Debug\Users.Resources.Strings.pl.resources -C:\Users\micha\git\tbf\Users\obj\Debug\Users.Resources.Strings.ru.resources -C:\Users\micha\git\tbf\Users\obj\Debug\Users.Resources.Strings.zh-CN.resources -C:\Users\micha\git\tbf\Users\obj\Debug\Users.csproj.GenerateResource.cache -C:\Users\micha\git\tbf\Users\obj\Debug\Users.csproj.CoreCompileInputs.cache -C:\Users\micha\git\tbf\Users\obj\Debug\cs\Users.resources.dll -C:\Users\micha\git\tbf\Users\obj\Debug\de\Users.resources.dll -C:\Users\micha\git\tbf\Users\obj\Debug\fr\Users.resources.dll -C:\Users\micha\git\tbf\Users\obj\Debug\it\Users.resources.dll -C:\Users\micha\git\tbf\Users\obj\Debug\pl\Users.resources.dll -C:\Users\micha\git\tbf\Users\obj\Debug\ru\Users.resources.dll -C:\Users\micha\git\tbf\Users\obj\Debug\zh-CN\Users.resources.dll -C:\Users\micha\git\tbf\Users\obj\Debug\Users.csproj.Up2Date -C:\Users\micha\git\tbf\Users\obj\Debug\Users.dll -C:\Users\micha\git\tbf\Users\obj\Debug\Users.pdb diff --git a/Users/obj/Debug/Users.csproj.GenerateResource.cache b/Users/obj/Debug/Users.csproj.GenerateResource.cache deleted file mode 100644 index fd2e74689..000000000 Binary files a/Users/obj/Debug/Users.csproj.GenerateResource.cache and /dev/null differ diff --git a/Users/obj/Debug/Users.csproj.Up2Date b/Users/obj/Debug/Users.csproj.Up2Date deleted file mode 100644 index e69de29bb..000000000 diff --git a/Users/obj/Debug/Users.dll b/Users/obj/Debug/Users.dll deleted file mode 100644 index 5140a3904..000000000 Binary files a/Users/obj/Debug/Users.dll and /dev/null differ diff --git a/Users/obj/Debug/Users.pdb b/Users/obj/Debug/Users.pdb deleted file mode 100644 index 560f2b5fa..000000000 Binary files a/Users/obj/Debug/Users.pdb and /dev/null differ diff --git a/Users/obj/Debug/cs/Users.resources.dll b/Users/obj/Debug/cs/Users.resources.dll deleted file mode 100644 index 3b4926aea..000000000 Binary files a/Users/obj/Debug/cs/Users.resources.dll and /dev/null differ diff --git a/Users/obj/Debug/de/Users.resources.dll b/Users/obj/Debug/de/Users.resources.dll deleted file mode 100644 index 79beda43f..000000000 Binary files a/Users/obj/Debug/de/Users.resources.dll and /dev/null differ diff --git a/Users/obj/Debug/fr/Users.resources.dll b/Users/obj/Debug/fr/Users.resources.dll deleted file mode 100644 index 45634da91..000000000 Binary files a/Users/obj/Debug/fr/Users.resources.dll and /dev/null differ diff --git a/Users/obj/Debug/it/Users.resources.dll b/Users/obj/Debug/it/Users.resources.dll deleted file mode 100644 index a2705dd00..000000000 Binary files a/Users/obj/Debug/it/Users.resources.dll and /dev/null differ diff --git a/Users/obj/Debug/pl/Users.resources.dll b/Users/obj/Debug/pl/Users.resources.dll deleted file mode 100644 index d601c4de9..000000000 Binary files a/Users/obj/Debug/pl/Users.resources.dll and /dev/null differ diff --git a/Users/obj/Debug/ru/Users.resources.dll b/Users/obj/Debug/ru/Users.resources.dll deleted file mode 100644 index de771a976..000000000 Binary files a/Users/obj/Debug/ru/Users.resources.dll and /dev/null differ diff --git a/Users/obj/Debug/zh-CN/Users.resources.dll b/Users/obj/Debug/zh-CN/Users.resources.dll deleted file mode 100644 index ef4043a6a..000000000 Binary files a/Users/obj/Debug/zh-CN/Users.resources.dll and /dev/null differ