@@ -441,14 +441,6 @@ var session = sessions.OpenSession(conn);
441441 at runtime. All are optional and have reasonable default values.
442442 </para >
443443
444- <para >
445- Some properties are system-level properties. They can only be set manually by setting static properties of
446- <literal >NHibernate.Cfg.Environment</literal > class or be defined in the
447- <literal >< hibernate-configuration> </literal > section of the application
448- configuration file. These properties cannot be set using <literal >Configuration.SetProperties</literal > or
449- the <literal >hibernate.cfg.xml</literal > configuration file.
450- </para >
451-
452444 <table frame =" topbot" id =" configuration-optional-properties" revision =" 3" >
453445 <title >NHibernate Configuration Properties</title >
454446 <tgroup cols =" 2" >
@@ -514,53 +506,6 @@ var session = sessions.OpenSession(conn);
514506 </para >
515507 </entry >
516508 </row >
517- <row >
518- <entry >
519- <literal >use_reflection_optimizer</literal >
520- </entry >
521- <entry >
522- Enables use of a runtime-generated class to set or get properties of an entity
523- or component instead of using runtime reflection. This is a system-level property.
524- The use of the reflection optimizer inflicts a certain startup cost on the
525- application but should lead to better performance in the long run.
526- Defaults to <literal >true</literal >.
527- <para >
528- You can not set this property in <literal >hibernate.cfg.xml</literal >, but only
529- in <literal >< hibernate-configuration> </literal > section of the application
530- configuration file or by code by setting
531- <literal >NHibernate.Cfg.Environment.UseReflectionOptimizer</literal >
532- before creating any <literal >NHibernate.Cfg.Configuration</literal > instance.
533- </para >
534- <para >
535- <emphasis role =" strong" >eg.</emphasis >
536- <literal >true</literal > | <literal >false</literal >
537- </para >
538- </entry >
539- </row >
540- <row >
541- <entry >
542- <literal >bytecode.provider</literal >
543- </entry >
544- <entry >
545- Specifies the bytecode provider to use to optimize the use of reflection in NHibernate.
546- This is a system-level property.
547- Use <literal >null</literal > to disable the optimization completely, <literal >lcg</literal >
548- to use built-in lightweight code generation, or the class name of a custom
549- <literal >IBytecodeProvider</literal > implementation. Defaults to <literal >lcg</literal >.
550- <para >
551- You can not set this property in <literal >hibernate.cfg.xml</literal >, but only
552- in <literal >< hibernate-configuration> </literal > section of the application
553- configuration file or by code by setting
554- <literal >NHibernate.Cfg.Environment.BytecodeProvider</literal >
555- before creating any <literal >NHibernate.Cfg.Configuration</literal > instance.
556- </para >
557- <para >
558- <emphasis role =" strong" >eg.</emphasis >
559- <literal >null</literal > | <literal >lcg</literal > |
560- <literal >classname.of.BytecodeProvider, assembly</literal >
561- </para >
562- </entry >
563- </row >
564509 <row >
565510 <entry >
566511 <literal >cache.use_second_level_cache</literal >
@@ -1467,6 +1412,95 @@ in the parameter binding.</programlisting>
14671412
14681413 </sect2 >
14691414
1415+ <sect2 id =" configuration-optional-systemlevel" >
1416+ <title >System level optional properties</title >
1417+
1418+ <para >
1419+ Some properties are system-level properties. They can only be set manually by setting static
1420+ properties of <literal >NHibernate.Cfg.Environment</literal > class or be defined in the
1421+ <literal >< hibernate-configuration> </literal > section of the application configuration
1422+ file, as direct sub-elements. These properties can neither be set using
1423+ <literal >Configuration.SetProperties</literal > or the <literal >hibernate.cfg.xml</literal >
1424+ configuration file, nor be set as <literal >< session-factory> </literal > properties.
1425+ </para >
1426+
1427+ <table frame =" topbot" id =" configuration-systemlevel-properties" >
1428+ <title >NHibernate system level properties</title >
1429+ <tgroup cols =" 2" >
1430+ <colspec colname =" c1" colwidth =" 1*" />
1431+ <colspec colname =" c2" colwidth =" 1*" />
1432+ <thead >
1433+ <row >
1434+ <entry >Property name</entry >
1435+ <entry >Purpose</entry >
1436+ </row >
1437+ </thead >
1438+ <tbody >
1439+ <row >
1440+ <entry >
1441+ <literal >bytecode-provider</literal >
1442+ </entry >
1443+ <entry >
1444+ <para >
1445+ Specifies the bytecode provider to use to optimize the use of reflection in NHibernate.
1446+ Use <literal >null</literal > to disable the optimization completely, <literal >lcg</literal >
1447+ to use built-in lightweight code generation, or the assembly qualified class name of a custom
1448+ <literal >IBytecodeProvider</literal > implementation. Defaults to <literal >lcg</literal >.
1449+ </para >
1450+ <programlisting ><![CDATA[ <bytecode-provider
1451+ type="lcg|null|className" />]]> </programlisting >
1452+ <para >
1453+ You can also set this property by code by setting
1454+ <literal >NHibernate.Cfg.Environment.BytecodeProvider</literal >
1455+ before creating any <literal >NHibernate.Cfg.Configuration</literal > instance.
1456+ </para >
1457+ </entry >
1458+ </row >
1459+ <row >
1460+ <entry >
1461+ <literal >objects-factory</literal >
1462+ </entry >
1463+ <entry >
1464+ <para >
1465+ Specifies a custom objects factory to use for instantiating NHibernate dependencies.
1466+ Use the assembly qualified class name of a custom <literal >IObjectsFactory</literal >
1467+ implementation.
1468+ </para >
1469+ <programlisting ><![CDATA[ <bytecode-provider
1470+ type="className" />]]> </programlisting >
1471+ <para >
1472+ You can also set this property by code by setting
1473+ <literal >NHibernate.Cfg.Environment.ObjectsFactory</literal >
1474+ before creating any <literal >NHibernate.Cfg.Configuration</literal > instance.
1475+ </para >
1476+ </entry >
1477+ </row >
1478+ <row >
1479+ <entry >
1480+ <literal >reflection-optimizer</literal >
1481+ </entry >
1482+ <entry >
1483+ <para >
1484+ Enables use of a runtime-generated class to set or get properties of an entity
1485+ or component instead of using runtime reflection. The use of the reflection
1486+ optimizer inflicts a certain startup cost on the application but should lead to
1487+ better performance in the long run. Defaults to <literal >true</literal >.
1488+ </para >
1489+ <programlisting ><![CDATA[ <reflection-optimizer
1490+ use="true|false"/>]]> </programlisting >
1491+ <para >
1492+ You can also set this property by code by setting
1493+ <literal >NHibernate.Cfg.Environment.UseReflectionOptimizer</literal >
1494+ before creating any <literal >NHibernate.Cfg.Configuration</literal > instance.
1495+ </para >
1496+ </entry >
1497+ </row >
1498+ </tbody >
1499+ </tgroup >
1500+ </table >
1501+
1502+ </sect2 >
1503+
14701504 </sect1 >
14711505
14721506 <sect1 id =" configuration-logging" >
0 commit comments