From: <jul...@us...> - 2011-01-18 07:02:55
|
Revision: 5363 http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5363&view=rev Author: julian-maughan Date: 2011-01-18 07:02:44 +0000 (Tue, 18 Jan 2011) Log Message: ----------- Merged latest trunk (r5362) to ReadOnlyCriteria branch. Modified Paths: -------------- branches/ReadOnlyCriteria/nhibernate/ShowBuildMenu.bat branches/ReadOnlyCriteria/nhibernate/build-common/common-project.xml branches/ReadOnlyCriteria/nhibernate/build-common/common.xml branches/ReadOnlyCriteria/nhibernate/doc/reference/modules/basic_mapping.xml branches/ReadOnlyCriteria/nhibernate/doc/reference/modules/configuration.xml branches/ReadOnlyCriteria/nhibernate/doc/reference/modules/manipulating_data.xml branches/ReadOnlyCriteria/nhibernate/doc/reference/modules/performance.xml branches/ReadOnlyCriteria/nhibernate/lib/net/3.5/Remotion.Data.Linq.dll branches/ReadOnlyCriteria/nhibernate/releasenotes.txt branches/ReadOnlyCriteria/nhibernate/src/Iesi.Collections/Iesi.Collections.csproj branches/ReadOnlyCriteria/nhibernate/src/Iesi.Collections.Test/Iesi.Collections.Test.csproj branches/ReadOnlyCriteria/nhibernate/src/Iesi.Collections.sln branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Cfg/MappingSchema/Hbm.generated.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Collection/PersistentIdentifierBag.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Criterion/DetachedCriteria.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Criterion/Restrictions.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Driver/DriverBase.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Engine/CascadeStyle.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Engine/CascadingAction.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Engine/ISessionImplementor.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Event/Default/DefaultMergeEventListener.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Event/IEventSource.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Generated/HqlLexer.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Generated/HqlParser.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Generated/HqlSqlWalker.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Hql.g branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Hql/Ast/ANTLR/HqlSqlWalker.g branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Tree/CaseNode.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Hql/Ast/ANTLR/Tree/FromElement.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Hql/Ast/HqlTreeBuilder.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Hql/Ast/HqlTreeNode.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/IQuery.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/ISession.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/IStatelessSession.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Impl/AbstractQueryImpl.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Impl/AbstractSessionImpl.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Impl/SessionImpl.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Impl/StatelessSessionImpl.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Linq/LinqExtensionMethods.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Linq/NhQueryProvider.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Linq/NhQueryable.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Linq/ReWriters/AddLeftJoinsReWriter.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Linq/Visitors/ExpressionKeyVisitor.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Linq/Visitors/LeftJoinDetector.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Linq/Visitors/QueryModelVisitor.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Linq/Visitors/ResultOperatorProcessors/ProcessGroupBy.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Linq/Visitors/ResultOperatorProcessors/ProcessOfType.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/NHibernate.csproj branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Persister/Collection/AbstractCollectionPersister.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Persister/Entity/AbstractEntityPersister.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/PropertyValueException.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Type/AbstractBinaryType.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Type/CompositeCustomType.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Type/CustomType.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Type/DateTime2Type.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Type/DateTimeType.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Type/EntityType.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Util/ArrayHelper.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/nhibernate-mapping.xsd branches/ReadOnlyCriteria/nhibernate/src/NHibernate.ByteCode.Castle/NHibernate.ByteCode.Castle.csproj branches/ReadOnlyCriteria/nhibernate/src/NHibernate.ByteCode.Castle.Tests/NHibernate.ByteCode.Castle.Tests.csproj branches/ReadOnlyCriteria/nhibernate/src/NHibernate.ByteCode.LinFu/NHibernate.ByteCode.LinFu.csproj branches/ReadOnlyCriteria/nhibernate/src/NHibernate.ByteCode.LinFu.Tests/App.config branches/ReadOnlyCriteria/nhibernate/src/NHibernate.ByteCode.LinFu.Tests/NHibernate.ByteCode.LinFu.Tests.csproj branches/ReadOnlyCriteria/nhibernate/src/NHibernate.ByteCode.Spring/NHibernate.ByteCode.Spring.csproj branches/ReadOnlyCriteria/nhibernate/src/NHibernate.ByteCode.Spring.Tests/App.config branches/ReadOnlyCriteria/nhibernate/src/NHibernate.ByteCode.Spring.Tests/NHibernate.ByteCode.Spring.Tests.csproj branches/ReadOnlyCriteria/nhibernate/src/NHibernate.DomainModel/NHibernate.DomainModel.csproj branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Everything.sln branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Example.Web/Web.Config branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/HQL/Ast/HqlFixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Linq/BinaryExpressionOrdererTests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Linq/EagerLoadTests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Linq/ParameterisedQueries.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Linq/ProjectionsTests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Linq/WhereTests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH479/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Stateless/StatelessSessionFixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/TypesTest/Decima2lTypeFixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.TestDatabaseSetup/NHibernate.TestDatabaseSetup.csproj branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Tool.HbmXsd/NHibernate.Tool.HbmXsd.csproj branches/ReadOnlyCriteria/nhibernate/src/NHibernate.sln Added Paths: ----------- branches/ReadOnlyCriteria/.hgignore branches/ReadOnlyCriteria/nhibernate/Tools/Antlr/ branches/ReadOnlyCriteria/nhibernate/Tools/Antlr/antlr-3.2.jar branches/ReadOnlyCriteria/nhibernate/lib/net/3.5/Remotion.Data.Linq.pdb branches/ReadOnlyCriteria/nhibernate/lib/net/3.5/Remotion.Data.Linq.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Event/Default/EventCache.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Hql/Ast/ANTLR/AntlrHql.bat branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Hql/Ast/ANTLR/AntlrHqlDebug.bat branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Hql/Ast/ANTLR/AntlrHqlSqlWalker.bat branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Hql/Ast/ANTLR/AntlrHqlSqlWalkerDebug.bat branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Linq/ReWriters/MoveOrderByToEndRewriter.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Linq/ReWriters/ResultOperatorRewriter.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Linq/ReWriters/ResultOperatorRewriterResult.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Util/EnumerableExtensions.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/A.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/CascadeMergeToChildBeforeParent.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/CascadeMergeToChildBeforeParentTest.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/MultiPathCircleCascade.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/MultiPathCircleCascadeTest.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/Node.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/Route.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/Tour.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/Transport.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/Vehicle.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/G.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/H.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/MultiPathCascade.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/MultiPathCascadeTest.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Linq/ByMethod/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Linq/ByMethod/AnyTests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Linq/ByMethod/GroupByTests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Linq/ByMethod/OrderByTests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Linq/ByMethod/SumTests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Linq/StatelessSessionQueringTest.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/BagWithLazyExtraAndFilter/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/BagWithLazyExtraAndFilter/Domain.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/BagWithLazyExtraAndFilter/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/BagWithLazyExtraAndFilter/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2037/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2037/Domain.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2037/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2037/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2043/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2043/Domain.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2043/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2043/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2056/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2056/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2056/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2118/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2118/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2118/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2203/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2203/Domain.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2203/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2203/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2228/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2228/Domain.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2228/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2228/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2280/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2280/InvalidSqlTest.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2280/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2280/Organisation.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2280/OrganisationCode.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2341/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2341/Domain.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2341/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2341/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2362/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2362/Category.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2362/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2362/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2362/Product.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2362/Supplier.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2386/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2386/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2386/Organisation.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2386/ResponsibleLegalPerson.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2386/Test.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2386/TradingName.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2412/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2412/Customer.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2412/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2412/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2412/Order.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2459/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2459/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2459/Test.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2459/TrainingComponent.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2470/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2470/Class1Class2Classes.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2470/Class1Class2DTOs.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2470/Class1Class2Tests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2470/DTO.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2470/DomainObject.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2470/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/UtilityTest/EnumerableExtensionsTests/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/UtilityTest/EnumerableExtensionsTests/AnyExtensionTests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/UtilityTest/EnumerableExtensionsTests/FirstExtensionTests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/UtilityTest/EnumerableExtensionsTests/FirstOrNullExtensionTests.cs Removed Paths: ------------- branches/ReadOnlyCriteria/nhibernate/Tools/Antlr/antlr-3.2.jar branches/ReadOnlyCriteria/nhibernate/src/NHibernate/Hql/Ast/ANTLR/output/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/CascadeMergeToChildBeforeParent.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/CascadeMergeToChildBeforeParentTest.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/MultiPathCircleCascade.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/MultiPathCircleCascadeTest.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/Node.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/Route.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/Tour.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/Transport.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Cascade/Circle/Vehicle.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Linq/ByMethod/AnyTests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Linq/ByMethod/GroupByTests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Linq/ByMethod/OrderByTests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Linq/ByMethod/SumTests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Linq/OrderByTests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/BagWithLazyExtraAndFilter/Domain.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/BagWithLazyExtraAndFilter/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/BagWithLazyExtraAndFilter/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2037/Domain.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2037/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2037/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2043/Domain.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2043/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2043/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2056/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2056/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2118/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2118/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2203/Domain.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2203/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2203/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2228/Domain.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2228/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2228/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2280/InvalidSqlTest.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2280/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2280/Organisation.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2280/OrganisationCode.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2341/Domain.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2341/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2341/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2362/Category.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2362/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2362/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2362/Product.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2362/Supplier.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2386/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2386/Organisation.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2386/ResponsibleLegalPerson.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2386/Test.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2386/TradingName.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2412/Customer.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2412/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2412/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2412/Order.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2459/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2459/Test.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2459/TrainingComponent.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2470/Class1Class2Classes.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2470/Class1Class2DTOs.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2470/Class1Class2Tests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2470/DTO.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2470/DomainObject.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2470/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/UtilityTest/EnumerableExtensionsTests/AnyExtensionTests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/UtilityTest/EnumerableExtensionsTests/FirstExtensionTests.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/UtilityTest/EnumerableExtensionsTests/FirstOrNullExtensionTests.cs Property Changed: ---------------- branches/ReadOnlyCriteria/ branches/ReadOnlyCriteria/nhibernate/ branches/ReadOnlyCriteria/nhibernate/src/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1850/Customer.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1850/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1850/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1904/Fixture.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1904/Mappings.hbm.xml branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1904/Model.cs branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1927/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1928/ branches/ReadOnlyCriteria/nhibernate/src/NHibernate.Test/Tools/hbm2ddl/SchemaExportTests/ Property changes on: branches/ReadOnlyCriteria ___________________________________________________________________ Modified: svn:mergeinfo - /branches/2.1.x:4505-4508,4510-4513,4537-4538 + /branches/2.1.x:4505-4508,4510-4513,4537-4538 /trunk:5306-5362 Copied: branches/ReadOnlyCriteria/.hgignore (from rev 5362, trunk/.hgignore) =================================================================== --- branches/ReadOnlyCriteria/.hgignore (rev 0) +++ branches/ReadOnlyCriteria/.hgignore 2011-01-18 07:02:44 UTC (rev 5363) @@ -0,0 +1,37 @@ +# Ignore file for Visual Studio 2008/2010 + +# use glob syntax +syntax: glob + +*.obj +*.exe +*.pdb +*.user +*.aps +*.pch +*.vspscc +*_i.c +*_p.c +*.ncb +*.suo +*.tlb +*.tlh +*.bak +*.cache +*.ilk +*.log +*.lib +*.sbr +*.scc +[Bb]in +[Db]ebug*/ +obj/ +[Rr]elease*/ +*resharper* +_ReSharper*/ +[Tt]est[Rr]esult* +[Bb]uild[Ll]og.* +*.[Pp]ublish.xml +glob:NHibernate.dll +glob:nhibernate\build\ +glob:AssemblyInfo.cs Property changes on: branches/ReadOnlyCriteria/nhibernate ___________________________________________________________________ Modified: svn:mergeinfo - /branches/2.1.x/nhibernate:4690-4691,4696-4697,4711,4715-4716,4905-4908 + /branches/2.1.x/nhibernate:4690-4691,4696-4697,4711,4715-4716,4905-4908 /trunk/nhibernate:5306-5362 Modified: branches/ReadOnlyCriteria/nhibernate/ShowBuildMenu.bat =================================================================== --- branches/ReadOnlyCriteria/nhibernate/ShowBuildMenu.bat 2011-01-17 15:39:29 UTC (rev 5362) +++ branches/ReadOnlyCriteria/nhibernate/ShowBuildMenu.bat 2011-01-18 07:02:44 UTC (rev 5363) @@ -1,6 +1,5 @@ @echo off -set OLD_CD=%CD% -cd %~dp0 +pushd %~dp0 set NANT=Tools\nant\bin\NAnt.exe -t:net-3.5 @@ -17,9 +16,18 @@ echo F. Build NHibernate (Release) echo G. Build Release Package (Also runs tests and creates documentation) echo. -choice /C abcdefg +echo --- GRAMMAR --- +echo H. Grammar operations (related to Hql.g and HqlSqlWalker.g) +echo. +if exist %SYSTEMROOT%\System32\choice.exe ( goto prompt-choice ) +goto prompt-set + +:prompt-choice +choice /C:abcdefgh + if errorlevel 255 goto end +if errorlevel 8 goto grammar if errorlevel 7 goto build-release-package if errorlevel 6 goto build-release if errorlevel 5 goto build-debug @@ -29,6 +37,19 @@ if errorlevel 1 goto build-visual-studio if errorlevel 0 goto end +:prompt-set +set /p OPT=[A, B, C, D, E, F, G, H]? + +if /I "%OPT%"=="A" goto build-visual-studio +if /I "%OPT%"=="B" goto help-test-setup +if /I "%OPT%"=="C" goto help-larger-window +if /I "%OPT%"=="D" goto build-test +if /I "%OPT%"=="E" goto build-debug +if /I "%OPT%"=="F" goto build-release +if /I "%OPT%"=="G" goto build-release-package +if /I "%OPT%"=="H" goto grammar +goto prompt-set + :help-test-setup echo. echo 1. Install SQL Server 2008 (or use the database included with VS). @@ -88,6 +109,65 @@ %NANT% test goto end +:grammar +echo. +echo --- GRAMMAR --- +echo A. Regenerate HqlLexer.cs and HqlParser.cs from Hql.g. +echo B. Regenerate HqlSqlWalker.cs from HqlSqlWalker.g. +echo C. Regenerate Hql.g in debug mode. +echo D. Regenerate HqlSqlWalker.g in debug mode. +echo E. Quick instructions on using debug mode. +echo. + +if exist %SYSTEMROOT%\System32\choice.exe ( goto grammar-prompt-choice ) +goto grammar-prompt-set + +:grammar-prompt-choice +choice /C:abcde + +if errorlevel 255 goto end +if errorlevel 5 goto antlr-debug +if errorlevel 4 goto antlr-hqlsqlwalker-debug +if errorlevel 3 goto antlr-hql-debug +if errorlevel 2 goto antlr-hqlsqlwalker +if errorlevel 1 goto antlr-hql +if errorlevel 0 goto end + +:grammar-prompt-set +set /p OPT=[A, B, C, D, E]? + +if /I "%OPT%"=="A" goto antlr-hql +if /I "%OPT%"=="B" goto antlr-hqlsqlwalker +if /I "%OPT%"=="C" goto antlr-hql-debug +if /I "%OPT%"=="D" goto antlr-hqlsqlwalker-debug +if /I "%OPT%"=="E" goto antlr-debug +goto grammar-prompt-set + +:antlr-hql +call src\NHibernate\Hql\Ast\ANTLR\AntlrHql.bat +goto end + +:antlr-hqlsqlwalker +call src\NHibernate\Hql\Ast\ANTLR\AntlrHqlSqlWalker.bat +goto end + +:antlr-hql-debug +call src\NHibernate\Hql\Ast\ANTLR\AntlrHqlDebug.bat +goto end + +:antlr-hqlsqlwalker-debug +call src\NHibernate\Hql\Ast\ANTLR\AntlrHqlSqlWalkerDebug.bat +goto end + +:antlr-debug +echo To use the debug grammar: +echo 1. Create a unit test that runs the hql parser on the input you're interested in. +echo 2. Run the unit test. It will appear to stall. +echo 3. Download and run AntlrWorks. +echo 4. Choose "Debug Remote" and allow the default ports. +echo 5. You should now be connected and able to step through your grammar. +goto end + :end -cd %OLD_CD% +popd pause Property changes on: branches/ReadOnlyCriteria/nhibernate/Tools/Antlr ___________________________________________________________________ Added: bugtraq:url + http://jira.nhibernate.org/browse/%BUGID% Added: bugtraq:logregex + NH-\d+ Deleted: branches/ReadOnlyCriteria/nhibernate/Tools/Antlr/antlr-3.2.jar =================================================================== (Binary files differ) Copied: branches/ReadOnlyCriteria/nhibernate/Tools/Antlr/antlr-3.2.jar (from rev 5362, trunk/nhibernate/Tools/Antlr/antlr-3.2.jar) =================================================================== (Binary files differ) Modified: branches/ReadOnlyCriteria/nhibernate/build-common/common-project.xml =================================================================== --- branches/ReadOnlyCriteria/nhibernate/build-common/common-project.xml 2011-01-17 15:39:29 UTC (rev 5362) +++ branches/ReadOnlyCriteria/nhibernate/build-common/common-project.xml 2011-01-18 07:02:44 UTC (rev 5363) @@ -108,6 +108,7 @@ output="${bin.dir}/${project::get-name()}.dll" doc="${bin.dir}/${project::get-name()}.xml" if="${sign}" + optimize="${build.release}" > <nowarn> <warning number="1591" /> <!-- No XML comment for publicly visible member --> @@ -124,6 +125,7 @@ output="${bin.dir}/${project::get-name()}.dll" doc="${bin.dir}/${project::get-name()}.xml" unless="${sign}" + optimize="${build.release}" > <nowarn> <warning number="1591" /> <!-- No XML comment for publicly visible member --> Modified: branches/ReadOnlyCriteria/nhibernate/build-common/common.xml =================================================================== --- branches/ReadOnlyCriteria/nhibernate/build-common/common.xml 2011-01-17 15:39:29 UTC (rev 5362) +++ branches/ReadOnlyCriteria/nhibernate/build-common/common.xml 2011-01-18 07:02:44 UTC (rev 5363) @@ -84,7 +84,7 @@ effectively SP0). --> - <property name="project.version" value="3.0.0.GA" overwrite="false" /> + <property name="project.version" value="3.0.1.GA" overwrite="false" /> <!-- Compute short project version (major.minor) using a regex --> <regex input="${project.version}" pattern="^(?'shortversion'\d+\.\d+)" /> Modified: branches/ReadOnlyCriteria/nhibernate/doc/reference/modules/basic_mapping.xml =================================================================== --- branches/ReadOnlyCriteria/nhibernate/doc/reference/modules/basic_mapping.xml 2011-01-17 15:39:29 UTC (rev 5362) +++ branches/ReadOnlyCriteria/nhibernate/doc/reference/modules/basic_mapping.xml 2011-01-18 07:02:44 UTC (rev 5363) @@ -225,7 +225,7 @@ <callout arearefs="class2"> <para> <literal>table</literal>(optional - defaults to the unqualified class name): The name of its database table. - </para> + </para> </callout> <callout arearefs="class3"> <para> @@ -1739,8 +1739,7 @@ insert="true|false" upate="true|false" access="field|property|nosetter|ClassName" - optimistic-lock="true|false" -> + optimistic-lock="true|false"> <property ...../> <many-to-one .... /> @@ -1805,6 +1804,113 @@ </sect2> + <sect2 id="mapping-declaration-properties"> + <title>properties</title> + + <para> + The <literal><properties></literal> element allows the + definition of a named, logical grouping of the properties of a class. + The most important use of the construct is that it allows a combination + of properties to be the target of a <literal>property-ref</literal>. It + is also a convenient way to define a multi-column unique constraint. For + example: + </para> + + <programlistingco> + <areaspec> + <area coords="2 60" id="properties1" /> + <area coords="3 60" id="properties2" /> + <area coords="4 60" id="properties3" /> + <area coords="5 60" id="properties4" /> + <area coords="6 60" id="properties5" /> + </areaspec> + + <programlisting><![CDATA[<properties + name="logicalName" + insert="true|false" + update="true|false" + optimistic-lock="true|false" + unique="true|false"> + + <property .../> + <many-to-one .../> + ........ +</properties>]]></programlisting> + + <calloutlist> + <callout arearefs="properties1"> + <para> + <literal>name</literal>: the logical name of the grouping. + It is <emphasis>not</emphasis> an actual property name. + </para> + </callout> + + <callout arearefs="properties2"> + <para> + <literal>insert</literal>: do the mapped columns appear in + SQL <literal>INSERTs</literal>? + </para> + </callout> + + <callout arearefs="properties3"> + <para> + <literal>update</literal>: do the mapped columns appear in + SQL <literal>UPDATEs</literal>? + </para> + </callout> + + <callout arearefs="properties4"> + <para> + <literal>optimistic-lock</literal> (optional - defaults to + <literal>true</literal>): specifies that updates to these + properties either do or do not require acquisition of the + optimistic lock. It determines if a version increment should occur + when these properties are dirty. + </para> + </callout> + + <callout arearefs="properties5"> + <para> + <literal>unique</literal> (optional - defaults to + <literal>false</literal>): specifies that a unique constraint + exists upon all mapped columns of the component. + </para> + </callout> + </calloutlist> + </programlistingco> + + <para> + For example, if we have the following + <literal><![CDATA[<properties>]]></literal> mapping: + </para> + + <programlisting role="XML"><![CDATA[<class name="Person"> + <id name="personNumber" /> + <properties name="name" unique="true" update="false"> + <property name="firstName" /> + <property name="lastName" /> + <property name="initial" /> + </properties> +</class>]]></programlisting> + + <para> + You might have some legacy data association that refers to this + unique key of the <literal>Person</literal> table, instead of to the + primary key: + </para> + + <programlisting role="XML"><![CDATA[<many-to-one name="owner" class="Person" property-ref="name"> + <column name="firstName" /> + <column name="lastName" /> + <column name="initial" /> +</many-to-one>]]></programlisting> + + <para> + The use of this outside the context of mapping legacy data is not + recommended. + </para> + </sect2> + <sect2 id="mapping-declaration-subclass"> <title>subclass</title> @@ -1830,6 +1936,7 @@ dynamic-insert="true|false"> <property .... /> + <properties .... /> ..... </subclass>]]></programlisting> <calloutlist> @@ -1899,6 +2006,7 @@ <key .... > <property .... /> + <properties .... /> ..... </joined-subclass>]]></programlisting> <calloutlist> @@ -2003,6 +2111,7 @@ node="element-name"> <property .... /> + <properties .... /> ..... </union-subclass>]]></programlisting> <calloutlist> Modified: branches/ReadOnlyCriteria/nhibernate/doc/reference/modules/configuration.xml =================================================================== --- branches/ReadOnlyCriteria/nhibernate/doc/reference/modules/configuration.xml 2011-01-17 15:39:29 UTC (rev 5362) +++ branches/ReadOnlyCriteria/nhibernate/doc/reference/modules/configuration.xml 2011-01-18 07:02:44 UTC (rev 5363) @@ -568,7 +568,32 @@ </para> </entry> </row> - <row> + <row> + <entry> + <literal>hbm2ddl.keywords</literal> + </entry> + <entry> + Automatically import <literal>reserved/keywords</literal> from the database when the + <literal>ISessionFactory</literal> is created. + <para> + <emphasis role="strong">none :</emphasis> + disable any operation regarding RDBMS KeyWords + </para> + <para> + <emphasis role="strong">keywords :</emphasis> + imports all RDBMS KeyWords where the <literal>Dialect</literal> can provide the implementation of <literal>IDataBaseSchema</literal>. + </para> + <para> + <emphasis role="strong">auto-quote :</emphasis> + imports all RDBMS KeyWords and auto-quote all table-names/column-names . + </para> + <para> + <emphasis role="strong">eg.</emphasis> + <literal>none</literal> | <literal>keywords</literal> | <literal>auto-quote</literal> + </para> + </entry> + </row> + <row> <entry> <literal>use_proxy_validator</literal> </entry> Modified: branches/ReadOnlyCriteria/nhibernate/doc/reference/modules/manipulating_data.xml =================================================================== --- branches/ReadOnlyCriteria/nhibernate/doc/reference/modules/manipulating_data.xml 2011-01-17 15:39:29 UTC (rev 5362) +++ branches/ReadOnlyCriteria/nhibernate/doc/reference/modules/manipulating_data.xml 2011-01-18 07:02:44 UTC (rev 5363) @@ -633,14 +633,14 @@ </itemizedlist> <para> - The last case can be avoided by using <literal>SaveOrUpdateCopy(Object o)</literal>. This method + The last case can be avoided by using <literal>Merge(Object o)</literal>. This method copies 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. The method returns the persistent instance. If the given instance is unsaved or does not exist in the database, NHibernate will save it and return it as a newly persistent instance. Otherwise, the given instance does not become associated with the session. In most applications with detached objects, you need both methods, <literal>SaveOrUpdate()</literal> - and <literal>SaveOrUpdateCopy()</literal>. + and <literal>Merge()</literal>. </para> </sect2> Modified: branches/ReadOnlyCriteria/nhibernate/doc/reference/modules/performance.xml =================================================================== --- branches/ReadOnlyCriteria/nhibernate/doc/reference/modules/performance.xml 2011-01-17 15:39:29 UTC (rev 5362) +++ branches/ReadOnlyCriteria/nhibernate/doc/reference/modules/performance.xml 2011-01-18 07:02:44 UTC (rev 5363) @@ -481,7 +481,7 @@ <listitem> <para> You may also attach a previously loaded object to a new <literal>ISession</literal> - with <literal>SaveOrUpdateCopy()</literal> or <literal>Lock()</literal> before + with <literal>Merge()</literal> or <literal>Lock()</literal> before accessing uninitialized collections (or other proxies). No, NHibernate does not, and certainly <emphasis>should</emphasis> not do this automatically, since it would introduce ad hoc transaction semantics! Modified: branches/ReadOnlyCriteria/nhibernate/lib/net/3.5/Remotion.Data.Linq.dll =================================================================== (Binary files differ) Copied: branches/ReadOnlyCriteria/nhibernate/lib/net/3.5/Remotion.Data.Linq.pdb (from rev 5362, trunk/nhibernate/lib/net/3.5/Remotion.Data.Linq.pdb) =================================================================== (Binary files differ) Copied: branches/ReadOnlyCriteria/nhibernate/lib/net/3.5/Remotion.Data.Linq.xml (from rev 5362, trunk/nhibernate/lib/net/3.5/Remotion.Data.Linq.xml) =================================================================== --- branches/ReadOnlyCriteria/nhibernate/lib/net/3.5/Remotion.Data.Linq.xml (rev 0) +++ branches/ReadOnlyCriteria/nhibernate/lib/net/3.5/Remotion.Data.Linq.xml 2011-01-18 07:02:44 UTC (rev 5363) @@ -0,0 +1,1253 @@ +<?xml version="1.0" encoding="utf-8"?><doc><assembly> + <name>Remotion.Data.Linq</name> + </assembly><members><member name="T:Remotion.Data.Linq.DefaultQueryProvider"><summary> + Represents a default implementation of <see cref="T:Remotion.Data.Linq.QueryProviderBase" /> that is automatically used by <see cref="T:Remotion.Data.Linq.QueryableBase`1" /> + unless a custom <see cref="T:System.Linq.IQueryProvider" /> is specified. The <see cref="T:Remotion.Data.Linq.DefaultQueryProvider" /> executes queries by parsing them into + an instance of type <see cref="T:Remotion.Data.Linq.QueryModel" />, which is then passed to an implementation of <see cref="T:Remotion.Data.Linq.IQueryExecutor" /> to obtain the + result set. + </summary></member><member name="T:Remotion.Data.Linq.QueryProviderBase"><summary> + Provides a default implementation of <see cref="T:System.Linq.IQueryProvider" /> that executes queries (subclasses of <see cref="T:Remotion.Data.Linq.QueryableBase`1" />) by + first parsing them into a <see cref="T:Remotion.Data.Linq.QueryModel" /> and then passing that to a given implementation of <see cref="T:Remotion.Data.Linq.IQueryExecutor" />. + Usually, <see cref="T:Remotion.Data.Linq.DefaultQueryProvider" /> should be used unless <see cref="M:Remotion.Data.Linq.QueryProviderBase.CreateQuery``1(System.Linq.Expressions.Expression)" /> must be manually implemented. + </summary></member><member name="M:Remotion.Data.Linq.QueryProviderBase.#ctor(Remotion.Data.Linq.IQueryExecutor)"><summary> + Initializes a new instance of <see cref="T:Remotion.Data.Linq.QueryProviderBase" /> using the default <see cref="T:Remotion.Data.Linq.Parsing.Structure.MethodCallExpressionNodeTypeRegistry" />. + </summary><param name="executor">The <see cref="T:Remotion.Data.Linq.IQueryExecutor" /> used to execute queries against a specific query backend.</param></member><member name="M:Remotion.Data.Linq.QueryProviderBase.#ctor(Remotion.Data.Linq.IQueryExecutor,Remotion.Data.Linq.Parsing.Structure.MethodCallExpressionNodeTypeRegistry)"><summary> + Initializes a new instance of <see cref="T:Remotion.Data.Linq.QueryProviderBase" /> using a custom <see cref="T:Remotion.Data.Linq.Parsing.Structure.MethodCallExpressionNodeTypeRegistry" />. Use this + constructor to specify a specific set of parsers to use when analyzing the query. + </summary><param name="executor">The <see cref="T:Remotion.Data.Linq.IQueryExecutor" /> used to execute queries against a specific query backend.</param><param name="nodeTypeRegistry">The <see cref="T:Remotion.Data.Linq.Parsing.Structure.MethodCallExpressionNodeTypeRegistry" /> containing the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> + parsers that should be used when parsing queries.</param></member><member name="M:Remotion.Data.Linq.QueryProviderBase.CreateQuery(System.Linq.Expressions.Expression)"><summary> + Constructs an <see cref="T:System.Linq.IQueryable" /> object that can evaluate the query represented by a specified expression tree. This + method delegates to <see cref="M:Remotion.Data.Linq.QueryProviderBase.CreateQuery``1(System.Linq.Expressions.Expression)" />. + </summary><param name="expression">An expression tree that represents a LINQ query.</param></member><member name="M:Remotion.Data.Linq.QueryProviderBase.CreateQuery``1(System.Linq.Expressions.Expression)"><summary> + Constructs an <see cref="T:System.Linq.IQueryable`1" /> object that can evaluate the query represented by a specified expression tree. This method is + called by the standard query operators defined by the <see cref="T:System.Linq.Queryable" /> class. + </summary><param name="expression">An expression tree that represents a LINQ query.</param></member><member name="M:Remotion.Data.Linq.QueryProviderBase.Execute``1(System.Linq.Expressions.Expression)"><summary> + Executes the query defined by the specified expression by parsing it with a + <see cref="T:Remotion.Data.Linq.Parsing.Structure.QueryParser" /> and then running it through the <see cref="P:Remotion.Data.Linq.QueryProviderBase.Executor" />. + This method is invoked through the <see cref="T:System.Linq.IQueryProvider" /> interface by methods such as + <see cref="M:System.Linq.Queryable.First``1(System.Linq.IQueryable{``0})" /> and + <see cref="M:System.Linq.Queryable.Count``1(System.Linq.IQueryable{``0})" />, and it's also invoked by <see cref="T:Remotion.Data.Linq.QueryableBase`1" /> + when the <see cref="T:System.Linq.IQueryable`1" /> is enumerated. + </summary></member><member name="M:Remotion.Data.Linq.QueryProviderBase.GenerateQueryModel(System.Linq.Expressions.Expression)"><summary> + The method generates a <see cref="T:Remotion.Data.Linq.QueryModel" />. + </summary><param name="expression">The query as expression chain.</param></member><member name="P:Remotion.Data.Linq.QueryProviderBase.Executor"><summary> + Gets or sets the implementation of <see cref="T:Remotion.Data.Linq.IQueryExecutor" /> used to execute queries created via <see cref="M:Remotion.Data.Linq.QueryProviderBase.CreateQuery``1(System.Linq.Expressions.Expression)" />. + </summary></member><member name="P:Remotion.Data.Linq.QueryProviderBase.ExpressionTreeParser"><summary> + Gets the <see cref="P:Remotion.Data.Linq.QueryProviderBase.ExpressionTreeParser" /> used by this <see cref="T:Remotion.Data.Linq.QueryProviderBase" /> to parse LINQ <see cref="T:System.Linq.Expressions.Expression" /> + trees. + </summary></member><member name="M:Remotion.Data.Linq.DefaultQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)"><summary> + Creates a new <see cref="T:System.Linq.IQueryable" /> (of type <see cref="P:Remotion.Data.Linq.DefaultQueryProvider.QueryableType" /> with <typeparamref name="T" /> as its generic argument) that + represents the query defined by <paramref name="expression" /> and is able to enumerate its results. + </summary><param name="expression">An expression representing the query for which a <see cref="T:System.Linq.IQueryable`1" /> should be created.</param></member><member name="P:Remotion.Data.Linq.DefaultQueryProvider.QueryableType"><summary> + Gets the type of queryable created by this provider. This is the generic type definition of an implementation of <see cref="T:System.Linq.IQueryable`1" /> + (usually a subclass of <see cref="T:Remotion.Data.Linq.QueryableBase`1" />) with exactly one type argument. + </summary></member><member name="T:Remotion.Data.Linq.IQueryExecutor"><summary> + Constitutes the bridge between re-linq and a concrete query provider implementation. Concrete providers implement this interface + and <see cref="T:Remotion.Data.Linq.QueryProviderBase" /> calls the respective method of the interface implementation when a query is to be executed. + </summary></member><member name="M:Remotion.Data.Linq.IQueryExecutor.ExecuteScalar``1(Remotion.Data.Linq.QueryModel)"><summary> + Executes the given <paramref name="queryModel" /> as a scalar query, i.e. as a query returning a scalar value of type <typeparamref name="T" />. + The query ends with a scalar result operator, for example a <see cref="T:Remotion.Data.Linq.Clauses.ResultOperators.CountResultOperator" /> or a <see cref="T:Remotion.Data.Linq.Clauses.ResultOperators.SumResultOperator" />. + </summary><param name="queryModel">The <see cref="T:Remotion.Data.Linq.QueryModel" /> representing the query to be executed. Analyze this via an + <see cref="T:Remotion.Data.Linq.IQueryModelVisitor" />.</param></member><member name="M:Remotion.Data.Linq.IQueryExecutor.ExecuteSingle``1(Remotion.Data.Linq.QueryModel,System.Boolean)"><summary> + Executes the given <paramref name="queryModel" /> as a single object query, i.e. as a query returning a single object of type + <typeparamref name="T" />. + The query ends with a single result operator, for example a <see cref="T:Remotion.Data.Linq.Clauses.ResultOperators.FirstResultOperator" /> or a <see cref="T:Remotion.Data.Linq.Clauses.ResultOperators.SingleResultOperator" />. + </summary><param name="queryModel">The <see cref="T:Remotion.Data.Linq.QueryModel" /> representing the query to be executed. Analyze this via an + <see cref="T:Remotion.Data.Linq.IQueryModelVisitor" />.</param><param name="returnDefaultWhenEmpty">If <see langword="true" />, the executor must return a default value when its result set is empty; + if <see langword="false" />, it should throw an <see cref="T:System.InvalidOperationException" /> when its result set is empty.</param></member><member name="M:Remotion.Data.Linq.IQueryExecutor.ExecuteCollection``1(Remotion.Data.Linq.QueryModel)"><summary> + Executes the given <paramref name="queryModel" /> as a collection query, i.e. as a query returning objects of type <typeparamref name="T" />. + The query does not end with a scalar result operator, but it can end with a single result operator, for example + <see cref="T:Remotion.Data.Linq.Clauses.ResultOperators.SingleResultOperator" /> or <see cref="T:Remotion.Data.Linq.Clauses.ResultOperators.FirstResultOperator" />. In such a case, the returned enumerable must yield exactly + one object (or none if the last result operator allows empty result sets). + </summary><param name="queryModel">The <see cref="T:Remotion.Data.Linq.QueryModel" /> representing the query to be executed. Analyze this via an + <see cref="T:Remotion.Data.Linq.IQueryModelVisitor" />.</param></member><member name="T:Remotion.Data.Linq.IQueryModelVisitor"><summary> + Defines an interface for visiting the clauses of a <see cref="T:Remotion.Data.Linq.QueryModel" />. + </summary></member><member name="T:Remotion.Data.Linq.QueryableBase`1"><summary> + Acts as a common base class for <see cref="T:System.Linq.IQueryable`1" /> implementations based on re-linq. In a specific LINQ provider, a custom queryable + class should be derived from <see cref="T:Remotion.Data.Linq.QueryableBase`1" /> which supplies an implementation of <see cref="T:Remotion.Data.Linq.IQueryExecutor" /> that is used to + execute the query. This is then used as an entry point (the main data source) of a LINQ query. + </summary></member><member name="M:Remotion.Data.Linq.QueryableBase`1.#ctor(Remotion.Data.Linq.IQueryExecutor)"><summary> + Initializes a new instance of the <see cref="T:Remotion.Data.Linq.QueryableBase`1" /> class with a <see cref="T:Remotion.Data.Linq.DefaultQueryProvider" /> and the given + <paramref name="executor" />. This constructor should be used by subclasses to begin a new query. The <see cref="P:Remotion.Data.Linq.QueryableBase`1.Expression" /> generated by + this constructor is a <see cref="T:System.Linq.Expressions.ConstantExpression" /> pointing back to this <see cref="T:Remotion.Data.Linq.QueryableBase`1" />. + </summary><param name="executor">The <see cref="T:Remotion.Data.Linq.IQueryExecutor" /> used to execute the query represented by this <see cref="T:Remotion.Data.Linq.QueryableBase`1" />.</param></member><member name="M:Remotion.Data.Linq.QueryableBase`1.#ctor(System.Linq.IQueryProvider)"><summary> + Initializes a new instance of the <see cref="T:Remotion.Data.Linq.QueryableBase`1" /> class with a specific <see cref="T:System.Linq.IQueryProvider" />. This constructor + should only be used to begin a query when <see cref="T:Remotion.Data.Linq.DefaultQueryProvider" /> does not fit the requirements. + </summary><param name="provider">The provider used to execute the query represented by this <see cref="T:Remotion.Data.Linq.QueryableBase`1" /> and to construct + queries around this <see cref="T:Remotion.Data.Linq.QueryableBase`1" />.</param></member><member name="M:Remotion.Data.Linq.QueryableBase`1.#ctor(System.Linq.IQueryProvider,System.Linq.Expressions.Expression)"><summary> + Initializes a new instance of the <see cref="T:Remotion.Data.Linq.QueryableBase`1" /> class with a given <paramref name="provider" /> and + <paramref name="expression" />. A constructor with a matching signature must be exposed on subclasses because it is used by + <see cref="T:Remotion.Data.Linq.DefaultQueryProvider" /> to construct queries around this <see cref="T:Remotion.Data.Linq.QueryableBase`1" /> when a query method (e.g. of the + <see cref="T:System.Linq.Queryable" /> class) is called. + </summary><param name="provider">The provider used to execute the query represented by this <see cref="T:Remotion.Data.Linq.QueryableBase`1" /> and to construct + queries around this <see cref="T:Remotion.Data.Linq.QueryableBase`1" />.</param><param name="expression">The expression representing the query.</param></member><member name="M:Remotion.Data.Linq.QueryableBase`1.GetEnumerator"><summary> + Executes the query via the <see cref="P:Remotion.Data.Linq.QueryableBase`1.Provider" /> and returns an enumerator that iterates through the items returned by the query. + </summary></member><member name="P:Remotion.Data.Linq.QueryableBase`1.Expression"><summary> + Gets the expression tree that is associated with the instance of <see cref="T:System.Linq.IQueryable" />. This expression describes the + query represented by this <see cref="T:Remotion.Data.Linq.QueryableBase`1" />. + </summary></member><member name="P:Remotion.Data.Linq.QueryableBase`1.Provider"><summary> + Gets the query provider that is associated with this data source. The provider is used to execute the query. By default, a + <see cref="T:Remotion.Data.Linq.DefaultQueryProvider" /> is used that parses the query and passes it on to an implementation of <see cref="T:Remotion.Data.Linq.IQueryExecutor" />. + </summary></member><member name="P:Remotion.Data.Linq.QueryableBase`1.ElementType"><summary> + Gets the type of the element(s) that are returned when the expression tree associated with this instance of <see cref="T:System.Linq.IQueryable" /> is executed. + </summary></member><member name="T:Remotion.Data.Linq.QueryModel"><summary> + Provides an abstraction of an expression tree created for a LINQ query. <see cref="T:Remotion.Data.Linq.QueryModel" /> instances are passed to LINQ providers based + on re-linq via <see cref="T:Remotion.Data.Linq.IQueryExecutor" />, but you can also use <see cref="T:Remotion.Data.Linq.Parsing.Structure.QueryParser" /> to parse an expression tree by hand or construct + a <see cref="T:Remotion.Data.Linq.QueryModel" /> manually via its constructor. + </summary></member><member name="M:Remotion.Data.Linq.QueryModel.#ctor(Remotion.Data.Linq.Clauses.MainFromClause,Remotion.Data.Linq.Clauses.SelectClause)"><summary> + Initializes a new instance of <see cref="T:Remotion.Data.Linq.QueryModel" /> + </summary><param name="mainFromClause">The <see cref="T:Remotion.Data.Linq.Clauses.MainFromClause" /> of the query. This is the starting point of the query, generating items + that are filtered and projected by the query.</param><param name="selectClause">The <see cref="P:Remotion.Data.Linq.QueryModel.SelectClause" /> of the query. This is the end point of + the query, it defines what is actually returned for each of the items coming from the <see cref="P:Remotion.Data.Linq.QueryModel.MainFromClause" /> and passing the + <see cref="P:Remotion.Data.Linq.QueryModel.BodyClauses" />. After it, only the <see cref="P:Remotion.Data.Linq.QueryModel.ResultOperators" /> modify the result of the query.</param></member><member name="M:Remotion.Data.Linq.QueryModel.GetOutputDataInfo"><summary> + Gets an <see cref="T:Remotion.Data.Linq.Clauses.StreamedData.IStreamedDataInfo" /> object describing the data streaming out of this <see cref="T:Remotion.Data.Linq.QueryModel" />. If a query ends with + the <see cref="P:Remotion.Data.Linq.QueryModel.SelectClause" />, this corresponds to <see cref="M:Remotion.Data.Linq.Clauses.SelectClause.GetOutputDataInfo" />. If a query has + <see cref="P:Remotion.Data.Linq.QueryModel.ResultOperators" />, the data is further modified by those operators. + </summary></member><member name="M:Remotion.Data.Linq.QueryModel.GetUniqueIdentfierGenerator"><summary> + Gets the <see cref="T:Remotion.Data.Linq.UniqueIdentifierGenerator" /> which is used by the <see cref="T:Remotion.Data.Linq.QueryModel" />. + </summary></member><member name="M:Remotion.Data.Linq.QueryModel.Accept(Remotion.Data.Linq.IQueryModelVisitor)"><summary> + Accepts an implementation of <see cref="T:Remotion.Data.Linq.IQueryModelVisitor" /> or <see cref="T:Remotion.Data.Linq.QueryModelVisitorBase" />, as defined by the Visitor pattern. + </summary></member><member name="M:Remotion.Data.Linq.QueryModel.ToString"><summary> + Returns a <see cref="T:System.String" /> representation of this <see cref="T:Remotion.Data.Linq.QueryModel" />. + </summary></member><member name="M:Remotion.Data.Linq.Query... [truncated message content] |