Advertisement
Guest User

plugin.xml for datanucleus in shaded jar

a guest
Jul 20th, 2017
1,447
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
XML 156.65 KB | None | 0 0
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <?eclipse version="3.2"?>
  3. <plugin id="org.datanucleus" name="DataNucleus Core" provider-name="DataNucleus">
  4.   <!-- extension points from datanucleus-core-4.1.6 -->
  5.   <extension-point id="api_adapter" name="Api Adapter" schema="schema/apiadapter.exsd"/>
  6.   <extension-point id="autostart" name="AutoStartMechanism" schema="schema/autostart.exsd"/>
  7.   <extension-point id="cache_level1" name="Level1 Cache" schema="schema/cache_level1.exsd"/>
  8.   <extension-point id="cache_level2" name="Level2 Cache" schema="schema/cache_level2.exsd"/>
  9.   <extension-point id="cache_query_compilation" name="Query Compilation Cache" schema="schema/cache_query_compilation.exsd"/>
  10.   <extension-point id="cache_query_compilation_store" name="Query Datastore Compilation Cache" schema="schema/cache_query_compilation_store.exsd"/>
  11.   <extension-point id="cache_query_result" name="Query Result Cache" schema="schema/cache_query_result.exsd"/>
  12.   <extension-point id="callbackhandler" name="Callback Handler" schema="schema/callbackhandler.exsd"/>
  13.   <extension-point id="classloader_resolver" name="ClassLoader Resolver" schema="schema/classloader_resolver.exsd"/>
  14.   <extension-point id="identity_string_translator" name="Identity String Translator" schema="schema/identity_string_translator.exsd"/>
  15.   <extension-point id="identity_key_translator" name="Identity Key Translator" schema="schema/identity_key_translator.exsd"/>
  16.   <extension-point id="jta_locator" name="JTA Locator" schema="schema/jta_locator.exsd"/>
  17.   <extension-point id="management_server" name="Management Server" schema="schema/management_server.exsd"/>
  18.   <extension-point id="store_datastoreidentity" name="Datastore Identity" schema="schema/datastoreidentity.exsd"/>
  19.   <extension-point id="store_manager" name="Store Manager" schema="schema/store_manager.exsd"/>
  20.   <extension-point id="store_query_query" name="Query" schema="schema/query.exsd"/>
  21.   <extension-point id="query_method_evaluators" name="Query Method Evaluators" schema="schema/query_method_evaluator.exsd"/>
  22.   <extension-point id="query_method_prefix" name="Query Method Prefix" schema="schema/query_method_prefix.exsd"/>
  23.   <extension-point id="store_valuegenerator" name="Value Generator" schema="schema/valuegenerator.exsd"/>
  24.   <extension-point id="store_objectvaluegenerator" name="Object Value Generator" schema="schema/objectvaluegenerator.exsd"/>
  25.   <extension-point id="store_connectionfactory" name="Connection Factory" schema="schema/connectionfactory.exsd"/>
  26.   <extension-point id="java_type" name="Java Type" schema="schema/java_type.exsd"/>
  27.   <extension-point id="type_converter" name="Java Converter Type" schema="schema/type_converter.exsd"/>
  28.   <extension-point id="persistence_properties" name="Persistence Properties" schema="schema/persistenceproperties.exsd"/>
  29.   <extension-point id="metadata_handler" name="MetaData Handler" schema="schema/metadata_handler.exsd"/>
  30.   <extension-point id="metadata_manager" name="MetaDataManager" schema="schema/metadata_manager.exsd"/>
  31.   <extension-point id="metadata_entityresolver" name="MetaDataEntityResolver" schema="schema/metadata_entityresolver.exsd"/>
  32.   <extension-point id="annotations" name="Annotations" schema="schema/annotations.exsd"/>
  33.   <extension-point id="class_annotation_handler" name="Class Annotation Handler" schema="schema/class_annotation_handler.exsd"/>
  34.   <extension-point id="member_annotation_handler" name="Member Annotation Handler" schema="schema/member_annotation_handler.exsd"/>
  35.   <extension-point id="identifier_namingfactory" name="Identifier NamingFactory" schema="schema/identifier_namingfactory.exsd"/>
  36.  
  37.   <!-- extension-points from datanucleus-rdbms-4.17 -->
  38.   <extension-point id="store.rdbms.datastoreadapter" name="Datastore Adapter" schema="schema/datastoreadapter.exsd"/>
  39.   <extension-point id="store.rdbms.connectionprovider" name="Connection Provider" schema="schema/connectionprovider.exsd"/>
  40.   <extension-point id="store.rdbms.connectionpool" name="ConnectionPool" schema="schema/connectionpool.exsd"/>
  41.   <extension-point id="store.rdbms.sql_expression" name="SQL Expressions" schema="schema/sql_expression.exsd"/>
  42.   <extension-point id="store.rdbms.sql_method" name="SQL Methods" schema="schema/sql_method.exsd"/>
  43.   <extension-point id="store.rdbms.sql_operation" name="SQL Expressions" schema="schema/sql_operation.exsd"/>
  44.   <extension-point id="store.rdbms.sql_tablenamer" name="SQL Table Namer" schema="schema/sql_tablenamer.exsd"/>
  45.   <extension-point id="store.rdbms.java_mapping" name="Types Mapping" schema="schema/java_mapping.exsd"/>
  46.   <extension-point id="store.rdbms.datastore_mapping" name="Datastore Mapping" schema="schema/datastore_mapping.exsd"/>
  47.   <extension-point id="store.rdbms.identifierfactory" name="Identifier Factory" schema="schema/identifierfactory.exsd"/>
  48.  
  49.   <!-- extensions from datanucleus-core-4.1.6 -->
  50.   <!-- LEVEL1 CACHES -->
  51.   <extension point="org.datanucleus.cache_level1">
  52.     <cache name="strong" class-name="org.datanucleus.cache.StrongRefCache"/>
  53.     <cache name="soft" class-name="org.datanucleus.cache.SoftRefCache"/>
  54.     <cache name="weak" class-name="org.datanucleus.cache.WeakRefCache"/>
  55.   </extension>
  56.  
  57.   <!-- LEVEL2 CACHES -->
  58.   <extension point="org.datanucleus.cache_level2">
  59.     <cache name="weak" class-name="org.datanucleus.cache.WeakLevel2Cache"/>
  60.     <cache name="soft" class-name="org.datanucleus.cache.SoftLevel2Cache"/>
  61.     <cache name="none" class-name="org.datanucleus.cache.NullLevel2Cache"/>
  62.     <cache name="javax.cache" class-name="org.datanucleus.cache.JavaxCacheLevel2Cache"/>
  63.   </extension>
  64.  
  65.   <!-- JTA LOCATORS -->
  66.   <extension point="org.datanucleus.jta_locator">
  67.     <jta_locator name="jboss" class-name="org.datanucleus.transaction.jta.JBossTransactionManagerLocator"/>
  68.     <jta_locator name="jonas" class-name="org.datanucleus.transaction.jta.JOnASTransactionManagerLocator"/>
  69.     <jta_locator name="jotm" class-name="org.datanucleus.transaction.jta.JOTMTransactionManagerLocator"/>
  70.     <jta_locator name="oc4j" class-name="org.datanucleus.transaction.jta.OC4JTransactionManagerLocator"/>
  71.     <jta_locator name="orion" class-name="org.datanucleus.transaction.jta.OrionTransactionManagerLocator"/>
  72.     <jta_locator name="resin" class-name="org.datanucleus.transaction.jta.ResinTransactionManagerLocator"/>
  73.     <jta_locator name="sap" class-name="org.datanucleus.transaction.jta.SAPWebASTransactionManagerLocator"/>
  74.     <jta_locator name="sun" class-name="org.datanucleus.transaction.jta.SunTransactionManagerLocator"/>
  75.     <jta_locator name="weblogic" class-name="org.datanucleus.transaction.jta.WebLogicTransactionManagerLocator"/>
  76.     <jta_locator name="websphere" class-name="org.datanucleus.transaction.jta.WebSphereTransactionManagerLocator"/>
  77.     <jta_locator name="custom_jndi" class-name="org.datanucleus.transaction.jta.CustomJNDITransactionManagerLocator"/>
  78.     <jta_locator name="atomikos" class-name="org.datanucleus.transaction.jta.AtomikosTransactionManagerLocator"/>
  79.     <jta_locator name="bitronix" class-name="org.datanucleus.transaction.jta.BTMTransactionManagerLocator"/>
  80.   </extension>
  81.  
  82.   <!-- DATASTORE IDENTITY -->
  83.   <extension point="org.datanucleus.store_datastoreidentity">
  84.     <datastoreidentity name="datanucleus" class-name="org.datanucleus.identity.DatastoreIdImpl"/>
  85.     <datastoreidentity name="kodo" class-name="org.datanucleus.identity.DatastoreIdImplKodo"/>
  86.     <datastoreidentity name="xcalia" class-name="org.datanucleus.identity.DatastoreIdImplXcalia"/>
  87.     <datastoreidentity name="unique" class-name="org.datanucleus.identity.DatastoreUniqueLongId"/>
  88.   </extension>
  89.  
  90.   <!-- IDENTITY STRING TRANSLATOR -->
  91.   <extension point="org.datanucleus.identity_string_translator">
  92.     <identitystringtranslator name="xcalia" class-name="org.datanucleus.identity.XcaliaIdentityStringTranslator"/>
  93.   </extension>
  94.  
  95.   <!-- NAMING FACTORY -->
  96.   <extension point="org.datanucleus.identifier_namingfactory">
  97.     <namingfactory name="datanucleus2" class-name="org.datanucleus.store.schema.naming.DN2NamingFactory"/>
  98.     <namingfactory name="jpa" class-name="org.datanucleus.store.schema.naming.JPANamingFactory"/>
  99.   </extension>
  100.  
  101.   <!-- JAVA TYPES -->
  102.   <extension point="org.datanucleus.java_type">
  103.     <!-- "primitive" types -->
  104.     <java-type name="boolean" dfg="true" embedded="true"/>
  105.     <java-type name="byte" dfg="true" embedded="true"/>
  106.     <java-type name="char" dfg="true" embedded="true"/>
  107.     <java-type name="double" dfg="true" embedded="true"/>
  108.     <java-type name="float" dfg="true" embedded="true"/>
  109.     <java-type name="int" dfg="true" embedded="true"/>
  110.     <java-type name="long" dfg="true" embedded="true"/>
  111.     <java-type name="short" dfg="true" embedded="true"/>
  112.  
  113.     <!-- "java.lang" types -->
  114.     <java-type name="java.lang.Boolean" dfg="true" embedded="true"/>
  115.     <java-type name="java.lang.Byte" dfg="true" embedded="true"/>
  116.     <java-type name="java.lang.Character" dfg="true" embedded="true"/>
  117.     <java-type name="java.lang.Double" dfg="true" embedded="true"/>
  118.     <java-type name="java.lang.Float" dfg="true" embedded="true"/>
  119.     <java-type name="java.lang.Integer" dfg="true" embedded="true"/>
  120.     <java-type name="java.lang.Long" dfg="true" embedded="true"/>
  121.     <java-type name="java.lang.Short" dfg="true" embedded="true"/>
  122.     <java-type name="java.lang.Number" dfg="true" embedded="true"/>
  123.     <java-type name="java.lang.String" dfg="true" embedded="true"/>
  124.     <java-type name="java.lang.Enum" dfg="true" embedded="true"/>
  125.     <java-type name="java.lang.StringBuffer" dfg="true" embedded="true" converter-name="dn.stringbuffer-string"/>
  126.     <java-type name="java.lang.StringBuilder" dfg="true" embedded="true" converter-name="dn.stringbuilder-string"/>
  127.     <java-type name="java.lang.Class" dfg="true" embedded="true" converter-name="dn.class-string"/>
  128.  
  129.     <!-- "java.awt" types -->
  130.     <java-type name="java.awt.image.BufferedImage" embedded="true"/>
  131.     <java-type name="java.awt.Color" embedded="true" converter-name="dn.color-string"/>
  132.  
  133.     <!-- "java.math" types -->
  134.     <java-type name="java.math.BigDecimal" dfg="true" embedded="true"/>
  135.     <java-type name="java.math.BigInteger" dfg="true" embedded="true"/>
  136.  
  137.     <!-- "java.net" types -->
  138.     <java-type name="java.net.URL" dfg="true" embedded="true" converter-name="dn.url-string"/>
  139.     <java-type name="java.net.URI" dfg="true" embedded="true" converter-name="dn.uri-string"/>
  140.  
  141.     <!-- "java.sql" types -->
  142.     <java-type name="java.sql.Date" dfg="true" embedded="true" wrapper-type="org.datanucleus.store.types.wrappers.SqlDate"/>
  143.     <java-type name="java.sql.Time" dfg="true" embedded="true" wrapper-type="org.datanucleus.store.types.wrappers.SqlTime"/>
  144.     <java-type name="java.sql.Timestamp" dfg="true" embedded="true" wrapper-type="org.datanucleus.store.types.wrappers.SqlTimestamp"/>
  145.  
  146.     <!-- "java.util" types -->
  147.     <java-type name="java.util.Date" dfg="true" embedded="true" wrapper-type="org.datanucleus.store.types.wrappers.Date"/>
  148.     <java-type name="java.util.Locale" dfg="true" embedded="true" converter-name="dn.locale-string"/>
  149.     <java-type name="java.util.Currency" dfg="true" embedded="true" converter-name="dn.currency-string"/>
  150.     <java-type name="java.util.Calendar" dfg="true" embedded="true"
  151.               wrapper-type="org.datanucleus.store.types.wrappers.GregorianCalendar" converter-name="dn.calendar-string"/>
  152.     <java-type name="java.util.GregorianCalendar" dfg="true" embedded="true"
  153.               wrapper-type="org.datanucleus.store.types.wrappers.GregorianCalendar" converter-name="dn.calendar-string"/>
  154.     <java-type name="java.util.UUID" dfg="true" embedded="true" converter-name="dn.uuid-string"/>
  155.     <java-type name="java.util.TimeZone" dfg="true" embedded="true" converter-name="dn.timezone-string"/>
  156.  
  157.     <java-type name="java.util.ArrayList" wrapper-type="org.datanucleus.store.types.wrappers.ArrayList"
  158.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.ArrayList"/>
  159.     <java-type name="java.util.Arrays$ArrayList" wrapper-type="org.datanucleus.store.types.wrappers.List"
  160.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.List"/>
  161.     <java-type name="java.util.BitSet" wrapper-type="org.datanucleus.store.types.wrappers.BitSet" converter-name="dn.bitset-string"/>
  162.     <java-type name="java.util.Collection" wrapper-type="org.datanucleus.store.types.wrappers.Collection"
  163.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.Collection"/>
  164.     <java-type name="java.util.HashMap" wrapper-type="org.datanucleus.store.types.wrappers.HashMap"
  165.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.HashMap"/>
  166.     <java-type name="java.util.HashSet" wrapper-type="org.datanucleus.store.types.wrappers.HashSet"
  167.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.HashSet"/>
  168.     <java-type name="java.util.Hashtable" wrapper-type="org.datanucleus.store.types.wrappers.Hashtable"
  169.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.Hashtable"/>
  170.     <java-type name="java.util.LinkedHashMap" wrapper-type="org.datanucleus.store.types.wrappers.LinkedHashMap"
  171.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.LinkedHashMap"/>
  172.     <java-type name="java.util.LinkedHashSet" wrapper-type="org.datanucleus.store.types.wrappers.LinkedHashSet"
  173.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.LinkedHashSet"/>
  174.     <java-type name="java.util.LinkedList" wrapper-type="org.datanucleus.store.types.wrappers.LinkedList"
  175.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.LinkedList"/>
  176.     <java-type name="java.util.List" wrapper-type="org.datanucleus.store.types.wrappers.List"
  177.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.List"/>
  178.     <java-type name="java.util.Map" wrapper-type="org.datanucleus.store.types.wrappers.Map"
  179.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.Map"/>
  180.     <java-type name="java.util.PriorityQueue" wrapper-type="org.datanucleus.store.types.wrappers.PriorityQueue"
  181.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.PriorityQueue"/>
  182.     <java-type name="java.util.Properties" wrapper-type="org.datanucleus.store.types.wrappers.Properties"
  183.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.Properties"/>
  184.     <java-type name="java.util.Queue" wrapper-type="org.datanucleus.store.types.wrappers.Queue"
  185.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.Queue"/>
  186.     <java-type name="java.util.Set" wrapper-type="org.datanucleus.store.types.wrappers.Set"
  187.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.Set"/>
  188.     <java-type name="java.util.SortedSet" wrapper-type="org.datanucleus.store.types.wrappers.SortedSet"
  189.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.SortedSet"/>
  190.     <java-type name="java.util.SortedMap" wrapper-type="org.datanucleus.store.types.wrappers.SortedMap"
  191.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.SortedMap"/>
  192.     <java-type name="java.util.Stack" wrapper-type="org.datanucleus.store.types.wrappers.Stack"
  193.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.Stack"/>
  194.     <java-type name="java.util.TreeMap" wrapper-type="org.datanucleus.store.types.wrappers.TreeMap"
  195.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.TreeMap"/>
  196.     <java-type name="java.util.TreeSet" wrapper-type="org.datanucleus.store.types.wrappers.TreeSet"
  197.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.TreeSet"/>
  198.     <java-type name="java.util.Vector" wrapper-type="org.datanucleus.store.types.wrappers.Vector"
  199.               wrapper-type-backed="org.datanucleus.store.types.wrappers.backed.Vector"/>
  200.  
  201.     <!-- array types -->
  202.     <java-type name="[B" embedded="true"/>
  203.     <java-type name="[C" embedded="true"/>
  204.     <java-type name="[D" embedded="true"/>
  205.     <java-type name="[F" embedded="true"/>
  206.     <java-type name="[I" embedded="true"/>
  207.     <java-type name="[J" embedded="true"/>
  208.     <java-type name="[S" embedded="true"/>
  209.     <java-type name="[Z" embedded="true"/>
  210.     <java-type name="[Ljava.lang.Boolean;" embedded="true"/>
  211.     <java-type name="[Ljava.lang.Byte;" embedded="true"/>
  212.     <java-type name="[Ljava.lang.Character;" embedded="true"/>
  213.     <java-type name="[Ljava.lang.Double;" embedded="true"/>
  214.     <java-type name="[Ljava.lang.Float;" embedded="true"/>
  215.     <java-type name="[Ljava.lang.Integer;" embedded="true"/>
  216.     <java-type name="[Ljava.lang.Long;" embedded="true"/>
  217.     <java-type name="[Ljava.lang.Short;" embedded="true"/>
  218.     <java-type name="[Ljava.lang.Number;" embedded="true"/>
  219.     <java-type name="[Ljava.lang.String;" embedded="true"/>
  220.     <java-type name="[Ljava.math.BigInteger;" embedded="true"/>
  221.     <java-type name="[Ljava.math.BigDecimal;" embedded="true"/>
  222.     <java-type name="[Ljava.util.Date;" embedded="true"/>
  223.     <java-type name="[Ljava.util.Locale;" embedded="true"/>
  224.     <java-type name="[Ljava.lang.Enum;" embedded="true"/>
  225.   </extension>
  226.  
  227.   <!-- TYPE CONVERTERS -->
  228.   <extension point="org.datanucleus.type_converter">
  229.     <type-converter name="dn.boolean-yn" member-type="java.lang.Boolean" datastore-type="java.lang.Character"
  230.                    converter-class="org.datanucleus.store.types.converters.BooleanYNConverter"/>
  231.     <type-converter name="dn.boolean-integer" member-type="java.lang.Boolean" datastore-type="java.lang.Integer"
  232.                    converter-class="org.datanucleus.store.types.converters.BooleanIntegerConverter"/>
  233.  
  234.     <type-converter name="dn.character-string" member-type="java.lang.Character" datastore-type="java.lang.String"
  235.                    converter-class="org.datanucleus.store.types.converters.CharacterStringConverter"/>
  236.     <type-converter name="dn.bigdecimal-string" member-type="java.math.BigDecimal" datastore-type="java.lang.String"
  237.                    converter-class="org.datanucleus.store.types.converters.BigDecimalStringConverter"/>
  238.     <type-converter name="dn.bigdecimal-double" member-type="java.math.BigDecimal" datastore-type="java.lang.Double"
  239.                    converter-class="org.datanucleus.store.types.converters.BigDecimalDoubleConverter"/>
  240.     <type-converter name="dn.biginteger-string" member-type="java.math.BigInteger" datastore-type="java.lang.String"
  241.                    converter-class="org.datanucleus.store.types.converters.BigIntegerStringConverter"/>
  242.     <type-converter name="dn.biginteger-long" member-type="java.math.BigInteger" datastore-type="java.lang.Long"
  243.                    converter-class="org.datanucleus.store.types.converters.BigIntegerLongConverter"/>
  244.     <type-converter name="dn.bitset-string" member-type="java.util.BitSet" datastore-type="java.lang.String"
  245.                    converter-class="org.datanucleus.store.types.converters.BitSetStringConverter"/>
  246.  
  247.     <type-converter name="dn.calendar-string" member-type="java.util.Calendar" datastore-type="java.lang.String"
  248.                    converter-class="org.datanucleus.store.types.converters.CalendarStringConverter"/>
  249.     <type-converter name="dn.calendar-date" member-type="java.util.Calendar" datastore-type="java.util.Date"
  250.                    converter-class="org.datanucleus.store.types.converters.CalendarDateConverter"/>
  251.     <type-converter name="dn.calendar-timestamp" member-type="java.util.Calendar" datastore-type="java.sql.Timestamp"
  252.                    converter-class="org.datanucleus.store.types.converters.CalendarTimestampConverter"/>
  253.     <type-converter name="dn.calendar-components" member-type="java.util.Calendar" datastore-type="[Ljava.lang.Object;"
  254.                    converter-class="org.datanucleus.store.types.converters.CalendarComponentsConverter"/>
  255.  
  256.     <type-converter name="dn.color-string" member-type="java.awt.Color" datastore-type="java.lang.String"
  257.                    converter-class="org.datanucleus.store.types.converters.ColorStringConverter"/>
  258.     <type-converter name="dn.color-components" member-type="java.awt.Color" datastore-type="[I"
  259.                    converter-class="org.datanucleus.store.types.converters.ColorComponentsConverter"/>
  260.  
  261.     <type-converter name="dn.class-string" member-type="java.lang.Class" datastore-type="java.lang.String"
  262.                    converter-class="org.datanucleus.store.types.converters.ClassStringConverter"/>
  263.     <type-converter name="dn.integer-string" member-type="java.lang.Integer" datastore-type="java.lang.String"
  264.                    converter-class="org.datanucleus.store.types.converters.IntegerStringConverter"/>
  265.     <type-converter name="dn.long-string" member-type="java.lang.Long" datastore-type="java.lang.String"
  266.                    converter-class="org.datanucleus.store.types.converters.LongStringConverter"/>
  267.     <type-converter name="dn.currency-string" member-type="java.util.Currency" datastore-type="java.lang.String"
  268.                    converter-class="org.datanucleus.store.types.converters.CurrencyStringConverter"/>
  269.     <type-converter name="dn.locale-string" member-type="java.util.Locale" datastore-type="java.lang.String"
  270.                    converter-class="org.datanucleus.store.types.converters.LocaleStringConverter"/>
  271.     <type-converter name="dn.stringbuffer-string" member-type="java.lang.StringBuffer" datastore-type="java.lang.String"
  272.                    converter-class="org.datanucleus.store.types.converters.StringBufferStringConverter"/>
  273.     <type-converter name="dn.stringbuilder-string" member-type="java.lang.StringBuilder" datastore-type="java.lang.String"
  274.                    converter-class="org.datanucleus.store.types.converters.StringBuilderStringConverter"/>
  275.     <type-converter name="dn.timezone-string" member-type="java.util.TimeZone" datastore-type="java.lang.String"
  276.                    converter-class="org.datanucleus.store.types.converters.TimeZoneStringConverter"/>
  277.     <type-converter name="dn.uri-string" member-type="java.net.URI" datastore-type="java.lang.String"
  278.                    converter-class="org.datanucleus.store.types.converters.URIStringConverter"/>
  279.     <type-converter name="dn.url-string" member-type="java.net.URL" datastore-type="java.lang.String"
  280.                    converter-class="org.datanucleus.store.types.converters.URLStringConverter"/>
  281.     <type-converter name="dn.uuid-string" member-type="java.util.UUID" datastore-type="java.lang.String"
  282.                    converter-class="org.datanucleus.store.types.converters.UUIDStringConverter"/>
  283.  
  284.     <type-converter name="dn.date-long" member-type="java.util.Date" datastore-type="java.lang.Long"
  285.                    converter-class="org.datanucleus.store.types.converters.DateLongConverter"/>
  286.     <type-converter name="dn.date-string" member-type="java.util.Date" datastore-type="java.lang.String"
  287.                    converter-class="org.datanucleus.store.types.converters.DateStringConverter"/>
  288.  
  289.     <type-converter name="dn.sqldate-long" member-type="java.sql.Date" datastore-type="java.lang.Long"
  290.                    converter-class="org.datanucleus.store.types.converters.SqlDateLongConverter"/>
  291.     <type-converter name="dn.sqldate-string" member-type="java.sql.Date" datastore-type="java.lang.String"
  292.                    converter-class="org.datanucleus.store.types.converters.SqlDateStringConverter"/>
  293.     <type-converter name="dn.sqldate-date" member-type="java.sql.Date" datastore-type="java.util.Date"
  294.                    converter-class="org.datanucleus.store.types.converters.SqlDateDateConverter"/>
  295.     <type-converter name="dn.sqltime-long" member-type="java.sql.Time" datastore-type="java.lang.Long"
  296.                    converter-class="org.datanucleus.store.types.converters.SqlTimeLongConverter"/>
  297.     <type-converter name="dn.sqltime-string" member-type="java.sql.Time" datastore-type="java.lang.String"
  298.                    converter-class="org.datanucleus.store.types.converters.SqlTimeStringConverter"/>
  299.     <type-converter name="dn.sqltime-date" member-type="java.sql.Time" datastore-type="java.util.Date"
  300.                    converter-class="org.datanucleus.store.types.converters.SqlTimeDateConverter"/>
  301.     <type-converter name="dn.sqltimestamp-long" member-type="java.sql.Timestamp" datastore-type="java.lang.Long"
  302.                    converter-class="org.datanucleus.store.types.converters.SqlTimestampLongConverter"/>
  303.     <type-converter name="dn.sqltimestamp-date" member-type="java.sql.Timestamp" datastore-type="java.util.Date"
  304.                    converter-class="org.datanucleus.store.types.converters.SqlTimestampDateConverter"/>
  305.     <type-converter name="dn.sqltimestamp-string" member-type="java.sql.Timestamp" datastore-type="java.lang.String"
  306.                    converter-class="org.datanucleus.store.types.converters.SqlTimestampStringConverter"/>
  307.  
  308.     <type-converter name="dn.serializable-string" member-type="java.io.Serializable" datastore-type="java.lang.String"
  309.                    converter-class="org.datanucleus.store.types.converters.SerializableStringConverter"/>
  310.     <type-converter name="dn.serializable-bytearray" member-type="java.io.Serializable" datastore-type="[B"
  311.                    converter-class="org.datanucleus.store.types.converters.SerializableByteArrayConverter"/>
  312.     <type-converter name="dn.serializable-bytebuffer" member-type="java.io.Serializable" datastore-type="java.nio.ByteBuffer"
  313.                    converter-class="org.datanucleus.store.types.converters.SerializableByteBufferConverter"/>
  314.  
  315.     <type-converter name="dn.bytearray-bytebuffer" member-type="[B" datastore-type="java.nio.ByteBuffer"
  316.                    converter-class="org.datanucleus.store.types.converters.ByteArrayByteBufferConverter"/>
  317.     <type-converter name="dn.booleanarray-bytebuffer" member-type="[Z" datastore-type="java.nio.ByteBuffer"
  318.                    converter-class="org.datanucleus.store.types.converters.BooleanArrayByteBufferConverter"/>
  319.     <type-converter name="dn.chararray-bytebuffer" member-type="[C" datastore-type="java.nio.ByteBuffer"
  320.                    converter-class="org.datanucleus.store.types.converters.CharArrayByteBufferConverter"/>
  321.     <type-converter name="dn.doublearray-bytebuffer" member-type="[D" datastore-type="java.nio.ByteBuffer"
  322.                    converter-class="org.datanucleus.store.types.converters.DoubleArrayByteBufferConverter"/>
  323.     <type-converter name="dn.floatarray-bytebuffer" member-type="[F" datastore-type="java.nio.ByteBuffer"
  324.                    converter-class="org.datanucleus.store.types.converters.FloatArrayByteBufferConverter"/>
  325.     <type-converter name="dn.intarray-bytebuffer" member-type="[I" datastore-type="java.nio.ByteBuffer"
  326.                    converter-class="org.datanucleus.store.types.converters.IntArrayByteBufferConverter"/>
  327.     <type-converter name="dn.longarray-bytebuffer" member-type="[J" datastore-type="java.nio.ByteBuffer"
  328.                    converter-class="org.datanucleus.store.types.converters.LongArrayByteBufferConverter"/>
  329.     <type-converter name="dn.shortarray-bytebuffer" member-type="[S" datastore-type="java.nio.ByteBuffer"
  330.                    converter-class="org.datanucleus.store.types.converters.ShortArrayByteBufferConverter"/>
  331.     <type-converter name="dn.bigintegerarray-bytebuffer" member-type="java.math.BigInteger" datastore-type="java.nio.ByteBuffer"
  332.                    converter-class="org.datanucleus.store.types.converters.BigIntegerArrayByteBufferConverter"/>
  333.     <type-converter name="dn.bigdecimalarray-bytebuffer" member-type="java.math.BigDecimal" datastore-type="java.nio.ByteBuffer"
  334.                    converter-class="org.datanucleus.store.types.converters.BigDecimalArrayByteBufferConverter"/>
  335.   </extension>
  336.  
  337.   <!-- VALUE GENERATORS -->
  338.   <extension point="org.datanucleus.store_valuegenerator">
  339.     <valuegenerator name="timestamp" class-name="org.datanucleus.store.valuegenerator.TimestampGenerator" unique="true"/>
  340.     <valuegenerator name="timestamp-value" class-name="org.datanucleus.store.valuegenerator.TimestampValueGenerator" unique="true"/>
  341.     <valuegenerator name="auid" class-name="org.datanucleus.store.valuegenerator.AUIDGenerator" unique="true"/>
  342.     <valuegenerator name="uuid-hex" class-name="org.datanucleus.store.valuegenerator.UUIDHexGenerator" unique="true"/>
  343.     <valuegenerator name="uuid-string" class-name="org.datanucleus.store.valuegenerator.UUIDStringGenerator" unique="true"/>
  344.     <valuegenerator name="uuid" class-name="org.datanucleus.store.valuegenerator.UUIDGenerator" unique="true"/>
  345.  
  346.     <!-- merged -->
  347.     <valuegenerator name="datastore-uuid-hex" class-name="org.datanucleus.store.rdbms.valuegenerator.DatastoreUUIDHexGenerator" datastore="rdbms"/>
  348.     <valuegenerator name="increment" class-name="org.datanucleus.store.rdbms.valuegenerator.TableGenerator" datastore="rdbms"/>
  349.     <valuegenerator name="max" class-name="org.datanucleus.store.rdbms.valuegenerator.MaxGenerator" datastore="rdbms"/>
  350.     <valuegenerator name="sequence" class-name="org.datanucleus.store.rdbms.valuegenerator.SequenceGenerator" datastore="rdbms"/>
  351.     <valuegenerator name="table-sequence" class-name="org.datanucleus.store.rdbms.valuegenerator.TableGenerator" datastore="rdbms"/>
  352.   </extension>
  353.  
  354.   <!-- CLASS LOADERS -->
  355.   <extension point="org.datanucleus.classloader_resolver">
  356.     <class-loader-resolver name="datanucleus" class-name="org.datanucleus.ClassLoaderResolverImpl"/>
  357.   </extension>
  358.  
  359.   <!-- AUTOSTART MECHANISMS -->
  360.   <extension point="org.datanucleus.autostart">
  361.     <autostart class-name="org.datanucleus.store.autostart.ClassesAutoStarter" name="Classes"/>
  362.     <autostart class-name="org.datanucleus.store.autostart.XMLAutoStarter" name="XML"/>
  363.     <autostart class-name="org.datanucleus.store.autostart.MetaDataAutoStarter" name="MetaData"/>
  364.  
  365.     <!-- merged -->
  366.     <autostart class-name="org.datanucleus.store.rdbms.autostart.SchemaAutoStarter" name="SchemaTable"/>
  367.   </extension>
  368.  
  369.   <!-- QUERY COMPILATION CACHE (GENERIC) -->
  370.   <extension point="org.datanucleus.cache_query_compilation">
  371.     <cache name="soft" class-name="org.datanucleus.query.cache.SoftQueryCompilationCache"/>
  372.     <cache name="weak" class-name="org.datanucleus.query.cache.WeakQueryCompilationCache"/>
  373.     <cache name="strong" class-name="org.datanucleus.query.cache.StrongQueryCompilationCache"/>
  374.   </extension>
  375.  
  376.   <!-- QUERY COMPILATION CACHE (DATASTORE) -->
  377.   <extension point="org.datanucleus.cache_query_compilation_store">
  378.     <cache name="soft" class-name="org.datanucleus.store.query.cache.SoftQueryDatastoreCompilationCache"/>
  379.     <cache name="weak" class-name="org.datanucleus.store.query.cache.WeakQueryDatastoreCompilationCache"/>
  380.     <cache name="strong" class-name="org.datanucleus.store.query.cache.StrongQueryDatastoreCompilationCache"/>
  381.   </extension>
  382.  
  383.   <!-- QUERY RESULT CACHE -->
  384.   <extension point="org.datanucleus.cache_query_result">
  385.     <cache name="soft" class-name="org.datanucleus.store.query.cache.SoftQueryResultsCache"/>
  386.     <cache name="weak" class-name="org.datanucleus.store.query.cache.WeakQueryResultsCache"/>
  387.     <cache name="strong" class-name="org.datanucleus.store.query.cache.StrongQueryResultsCache"/>
  388.     <cache name="javax.cache" class-name="org.datanucleus.cache.JavaxCacheQueryResultCache"/>
  389.   </extension>
  390.  
  391.   <!-- QUERY METHODS (IN-MEMORY) -->
  392.   <extension point="org.datanucleus.query_method_evaluators">
  393.     <query-method-evaluator method="Math.abs" evaluator="org.datanucleus.query.inmemory.AbsFunction"/>
  394.     <query-method-evaluator method="Math.sqrt" evaluator="org.datanucleus.query.inmemory.SqrtFunction"/>
  395.     <query-method-evaluator method="Math.acos" evaluator="org.datanucleus.query.inmemory.ArcCosineFunction"/>
  396.     <query-method-evaluator method="Math.asin" evaluator="org.datanucleus.query.inmemory.ArcSineFunction"/>
  397.     <query-method-evaluator method="Math.atan" evaluator="org.datanucleus.query.inmemory.ArcTangentFunction"/>
  398.     <query-method-evaluator method="Math.cos" evaluator="org.datanucleus.query.inmemory.CosineFunction"/>
  399.     <query-method-evaluator method="Math.sin" evaluator="org.datanucleus.query.inmemory.SineFunction"/>
  400.     <query-method-evaluator method="Math.tan" evaluator="org.datanucleus.query.inmemory.TangentFunction"/>
  401.     <query-method-evaluator method="Math.log" evaluator="org.datanucleus.query.inmemory.LogFunction"/>
  402.     <query-method-evaluator method="Math.exp" evaluator="org.datanucleus.query.inmemory.ExpFunction"/>
  403.     <query-method-evaluator method="Math.floor" evaluator="org.datanucleus.query.inmemory.FloorFunction"/>
  404.     <query-method-evaluator method="Math.ceil" evaluator="org.datanucleus.query.inmemory.CeilFunction"/>
  405.     <query-method-evaluator method="Math.toDegrees" evaluator="org.datanucleus.query.inmemory.DegreesFunction"/>
  406.     <query-method-evaluator method="Math.toRadians" evaluator="org.datanucleus.query.inmemory.RadiansFunction"/>
  407.     <query-method-evaluator method="CURRENT_DATE" evaluator="org.datanucleus.query.inmemory.CurrentDateFunction"/>
  408.     <query-method-evaluator method="CURRENT_TIME" evaluator="org.datanucleus.query.inmemory.CurrentTimeFunction"/>
  409.     <query-method-evaluator method="CURRENT_TIMESTAMP" evaluator="org.datanucleus.query.inmemory.CurrentTimestampFunction"/>
  410.     <query-method-evaluator method="ABS" evaluator="org.datanucleus.query.inmemory.AbsFunction"/>
  411.     <query-method-evaluator method="SQRT" evaluator="org.datanucleus.query.inmemory.SqrtFunction"/>
  412.     <query-method-evaluator method="MOD" evaluator="org.datanucleus.query.inmemory.ModFunction"/>
  413.     <query-method-evaluator method="COALESCE" evaluator="org.datanucleus.query.inmemory.CoalesceFunction"/>
  414.     <query-method-evaluator method="COS" evaluator="org.datanucleus.query.inmemory.CosineFunction"/>
  415.     <query-method-evaluator method="SIN" evaluator="org.datanucleus.query.inmemory.SineFunction"/>
  416.     <query-method-evaluator method="TAN" evaluator="org.datanucleus.query.inmemory.TangentFunction"/>
  417.     <query-method-evaluator method="ACOS" evaluator="org.datanucleus.query.inmemory.ArcCosineFunction"/>
  418.     <query-method-evaluator method="ASIN" evaluator="org.datanucleus.query.inmemory.ArcSineFunction"/>
  419.     <query-method-evaluator method="ATAN" evaluator="org.datanucleus.query.inmemory.ArcTangentFunction"/>
  420.     <query-method-evaluator method="CEIL" evaluator="org.datanucleus.query.inmemory.CeilFunction"/>
  421.     <query-method-evaluator method="FLOOR" evaluator="org.datanucleus.query.inmemory.FloorFunction"/>
  422.     <query-method-evaluator method="LOG" evaluator="org.datanucleus.query.inmemory.LogFunction"/>
  423.     <query-method-evaluator method="EXP" evaluator="org.datanucleus.query.inmemory.ExpFunction"/>
  424.     <query-method-evaluator method="NULLIF" evaluator="org.datanucleus.query.inmemory.NullIfFunction"/>
  425.     <query-method-evaluator method="SIZE" evaluator="org.datanucleus.query.inmemory.SizeFunction"/>
  426.     <query-method-evaluator method="UPPER" evaluator="org.datanucleus.query.inmemory.UpperFunction"/>
  427.     <query-method-evaluator method="LOWER" evaluator="org.datanucleus.query.inmemory.LowerFunction"/>
  428.     <query-method-evaluator method="LENGTH" evaluator="org.datanucleus.query.inmemory.LengthFunction"/>
  429.     <query-method-evaluator method="CONCAT" evaluator="org.datanucleus.query.inmemory.ConcatFunction"/>
  430.     <query-method-evaluator method="SUBSTRING" evaluator="org.datanucleus.query.inmemory.SubstringFunction"/>
  431.     <query-method-evaluator method="LOCATE" evaluator="org.datanucleus.query.inmemory.LocateFunction"/>
  432.     <query-method-evaluator method="TRIM" evaluator="org.datanucleus.query.inmemory.TrimFunction"/>
  433.     <query-method-evaluator method="TRIM_LEADING" evaluator="org.datanucleus.query.inmemory.TrimFunction"/>
  434.     <query-method-evaluator method="TRIM_TRAILING" evaluator="org.datanucleus.query.inmemory.TrimFunction"/>
  435.     <query-method-evaluator method="DEGREES" evaluator="org.datanucleus.query.inmemory.DegreesFunction"/>
  436.     <query-method-evaluator method="RADIANS" evaluator="org.datanucleus.query.inmemory.RadiansFunction"/>
  437.  
  438.     <query-method-evaluator class="java.lang.Enum" method="matches" evaluator="org.datanucleus.query.inmemory.EnumMatchesMethod"/>
  439.     <query-method-evaluator class="java.lang.Enum" method="toString" evaluator="org.datanucleus.query.inmemory.EnumToStringMethod"/>
  440.     <query-method-evaluator class="java.lang.Enum" method="ordinal" evaluator="org.datanucleus.query.inmemory.EnumOrdinalMethod"/>
  441.  
  442.     <query-method-evaluator class="java.lang.Object" method="getClass" evaluator="org.datanucleus.query.inmemory.ObjectGetClassMethod"/>
  443.  
  444.     <query-method-evaluator class="java.lang.String" method="charAt" evaluator="org.datanucleus.query.inmemory.StringCharAtMethod"/>
  445.     <query-method-evaluator class="java.lang.String" method="concat" evaluator="org.datanucleus.query.inmemory.StringConcatMethod"/>
  446.     <query-method-evaluator class="java.lang.String" method="endsWith" evaluator="org.datanucleus.query.inmemory.StringEndsWithMethod"/>
  447.     <query-method-evaluator class="java.lang.String" method="equals" evaluator="org.datanucleus.query.inmemory.StringEqualsMethod"/>
  448.     <query-method-evaluator class="java.lang.String" method="equalsIgnoreCase" evaluator="org.datanucleus.query.inmemory.StringEqualsIgnoreCaseMethod"/>
  449.     <query-method-evaluator class="java.lang.String" method="indexOf" evaluator="org.datanucleus.query.inmemory.StringIndexOfMethod"/>
  450.     <query-method-evaluator class="java.lang.String" method="length" evaluator="org.datanucleus.query.inmemory.StringLengthMethod"/>
  451.     <query-method-evaluator class="java.lang.String" method="matches" evaluator="org.datanucleus.query.inmemory.StringMatchesMethod"/>
  452.     <query-method-evaluator class="java.lang.String" method="startsWith" evaluator="org.datanucleus.query.inmemory.StringStartsWithMethod"/>
  453.     <query-method-evaluator class="java.lang.String" method="substring" evaluator="org.datanucleus.query.inmemory.StringSubstringMethod"/>
  454.     <query-method-evaluator class="java.lang.String" method="toUpperCase" evaluator="org.datanucleus.query.inmemory.StringToUpperCaseMethod"/>
  455.     <query-method-evaluator class="java.lang.String" method="toLowerCase" evaluator="org.datanucleus.query.inmemory.StringToLowerCaseMethod"/>
  456.     <query-method-evaluator class="java.lang.String" method="trim" evaluator="org.datanucleus.query.inmemory.StringTrimMethod"/>
  457.     <query-method-evaluator class="java.lang.String" method="trimLeft" evaluator="org.datanucleus.query.inmemory.StringTrimLeftMethod"/>
  458.     <query-method-evaluator class="java.lang.String" method="trimRight" evaluator="org.datanucleus.query.inmemory.StringTrimRightMethod"/>
  459.  
  460.     <query-method-evaluator class="java.util.Collection" method="size" evaluator="org.datanucleus.query.inmemory.ContainerSizeMethod"/>
  461.     <query-method-evaluator class="java.util.Collection" method="isEmpty" evaluator="org.datanucleus.query.inmemory.ContainerIsEmptyMethod"/>
  462.     <query-method-evaluator class="java.util.Collection" method="contains" evaluator="org.datanucleus.query.inmemory.CollectionContainsMethod"/>
  463.     <query-method-evaluator class="java.util.Map" method="size" evaluator="org.datanucleus.query.inmemory.ContainerSizeMethod"/>
  464.     <query-method-evaluator class="java.util.Map" method="isEmpty" evaluator="org.datanucleus.query.inmemory.ContainerIsEmptyMethod"/>
  465.     <query-method-evaluator class="java.util.Map" method="containsKey" evaluator="org.datanucleus.query.inmemory.MapContainsKeyMethod"/>
  466.     <query-method-evaluator class="java.util.Map" method="containsValue" evaluator="org.datanucleus.query.inmemory.MapContainsValueMethod"/>
  467.     <query-method-evaluator class="java.util.Map" method="containsEntry" evaluator="org.datanucleus.query.inmemory.MapContainsEntryMethod"/>
  468.     <query-method-evaluator class="java.util.Map" method="get" evaluator="org.datanucleus.query.inmemory.MapGetMethod"/>
  469.  
  470.     <query-method-evaluator class="java.util.Date" method="getTime" evaluator="org.datanucleus.query.inmemory.DateGetTimeMethod"/>
  471.     <query-method-evaluator class="java.util.Date" method="getDay" evaluator="org.datanucleus.query.inmemory.DateGetDayMethod"/>
  472.     <query-method-evaluator class="java.util.Date" method="getDate" evaluator="org.datanucleus.query.inmemory.DateGetDayMethod"/>
  473.     <query-method-evaluator class="java.util.Date" method="getMonth" evaluator="org.datanucleus.query.inmemory.DateGetMonthMethod"/>
  474.     <query-method-evaluator class="java.util.Date" method="getYear" evaluator="org.datanucleus.query.inmemory.DateGetYearMethod"/>
  475.     <query-method-evaluator class="java.util.Date" method="getHour" evaluator="org.datanucleus.query.inmemory.DateGetHoursMethod"/>
  476.     <query-method-evaluator class="java.util.Date" method="getMinute" evaluator="org.datanucleus.query.inmemory.DateGetMinutesMethod"/>
  477.     <query-method-evaluator class="java.util.Date" method="getSecond" evaluator="org.datanucleus.query.inmemory.DateGetSecondsMethod"/>
  478.  
  479.     <!-- merged -->
  480.     <query-method-evaluator method="JDOHelper.getObjectId" evaluator="org.datanucleus.api.jdo.query.inmemory.JDOHelperGetObjectIdFunction"/>
  481.     <query-method-evaluator method="JDOHelper.getVersion" evaluator="org.datanucleus.api.jdo.query.inmemory.JDOHelperGetVersionFunction"/>
  482.   </extension>
  483.  
  484.   <!-- QUERY METHODS -->
  485.   <extension point="org.datanucleus.query_method_prefix">
  486.     <query-method-prefix prefix="JDOHelper" alias="JDOHelper"/>
  487.     <query-method-prefix prefix="javax.jdo.JDOHelper" alias="JDOHelper"/>
  488.     <query-method-prefix prefix="Math" alias="Math"/>
  489.     <query-method-prefix prefix="java.lang.Math" alias="Math"/>
  490.   </extension>
  491.  
  492.   <!-- METADATA HANDLERS -->
  493.   <extension point="org.datanucleus.metadata_handler">
  494.     <handler class-name="org.datanucleus.metadata.xml.PersistenceFileMetaDataHandler" name="Persistence"
  495.             entity-resolver="org.datanucleus.metadata.xml.PluginEntityResolver"/>
  496.  
  497.     <!-- merged -->
  498.     <handler class-name="org.datanucleus.api.jdo.metadata.JDOMetaDataHandler" name="JDO"
  499.             entity-resolver="org.datanucleus.metadata.xml.PluginEntityResolver"/>
  500.   </extension>
  501.  
  502.   <!-- METADATA RESOLVERS -->
  503.   <extension point="org.datanucleus.metadata_entityresolver">
  504.     <entityresolver identity="http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" type="SYSTEM" url="/org/datanucleus/metadata/persistence_1_0.xsd"/>
  505.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/persistence/persistence_1_0.xsd" type="SYSTEM" url="/org/datanucleus/metadata/persistence_1_0.xsd"/>
  506.     <entityresolver identity="http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd" type="SYSTEM" url="/org/datanucleus/metadata/persistence_2_0.xsd"/>
  507.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/persistence/persistence_2_0.xsd" type="SYSTEM" url="/org/datanucleus/metadata/persistence_2_0.xsd"/>
  508.     <entityresolver identity="http://java.sun.com/xml/ns/persistence/persistence_2_1.xsd" type="SYSTEM" url="/org/datanucleus/metadata/persistence_2_1.xsd"/>
  509.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd" type="SYSTEM" url="/org/datanucleus/metadata/persistence_2_1.xsd"/>
  510.     <entityresolver url="/org/datanucleus/metadata/persistence_2_0.xsd"/>
  511.  
  512.     <!-- merged -->
  513.     <!-- DTDs -->
  514.     <entityresolver identity="-//Sun Microsystems, Inc.//DTD Java Data Objects Metadata 1.0//EN"
  515.                    type="PUBLIC" url="/org/datanucleus/api/jdo/jdo_1_0.dtd"/>
  516.     <entityresolver identity="-//Sun Microsystems, Inc.//DTD Java Data Objects Metadata 2.0//EN"
  517.                    type="PUBLIC" url="/org/datanucleus/api/jdo/jdo_2_0.dtd"/>
  518.     <entityresolver identity="-//Sun Microsystems, Inc.//DTD Java Data Objects Metadata 2.1//EN"
  519.                    type="PUBLIC" url="/org/datanucleus/api/jdo/jdo_2_0.dtd"/>
  520.     <entityresolver identity="-//Sun Microsystems, Inc.//DTD Java Data Objects Metadata 2.2//EN"
  521.                    type="PUBLIC" url="/org/datanucleus/api/jdo/jdo_2_2.dtd"/>
  522.     <entityresolver identity="-//Sun Microsystems, Inc.//DTD Java Data Objects Metadata 2.3//EN"
  523.                    type="PUBLIC" url="/org/datanucleus/api/jdo/jdo_2_3.dtd"/>
  524.     <entityresolver identity="-//Sun Microsystems, Inc.//DTD Java Data Objects Metadata 3.0//EN"
  525.                    type="PUBLIC" url="/org/datanucleus/api/jdo/jdo_3_0.dtd"/>
  526.     <entityresolver identity="-//Sun Microsystems, Inc.//DTD Java Data Objects Metadata 3.1//EN"
  527.                    type="PUBLIC" url="/org/datanucleus/api/jdo/jdo_3_1.dtd"/>
  528.  
  529.     <entityresolver identity="-//Sun Microsystems, Inc.//DTD Java Data Objects Mapping Metadata 2.0//EN"
  530.                    type="PUBLIC" url="/org/datanucleus/api/jdo/jdo_orm_2_0.dtd"/>
  531.     <entityresolver identity="-//Sun Microsystems, Inc.//DTD Java Data Objects Mapping Metadata 2.1//EN"
  532.                    type="PUBLIC" url="/org/datanucleus/api/jdo/jdo_orm_2_0.dtd"/>
  533.     <entityresolver identity="-//Sun Microsystems, Inc.//DTD Java Data Objects Mapping Metadata 2.2//EN"
  534.                    type="PUBLIC" url="/org/datanucleus/api/jdo/jdo_orm_2_2.dtd"/>
  535.     <entityresolver identity="-//Sun Microsystems, Inc.//DTD Java Data Objects Mapping Metadata 3.0//EN"
  536.                    type="PUBLIC" url="/org/datanucleus/api/jdo/jdo_orm_3_0.dtd"/>
  537.     <entityresolver identity="-//Sun Microsystems, Inc.//DTD Java Data Objects Mapping Metadata 3.1//EN"
  538.                    type="PUBLIC" url="/org/datanucleus/api/jdo/jdo_orm_3_1.dtd"/>
  539.  
  540.     <entityresolver identity="-//Sun Microsystems, Inc.//DTD Java Data Objects Query Metadata 2.0//EN"
  541.                    type="PUBLIC" url="/org/datanucleus/api/jdo/jdoquery_2_0.dtd"/>
  542.     <entityresolver identity="-//Sun Microsystems, Inc.//DTD Java Data Objects Query Metadata 2.1//EN"
  543.                    type="PUBLIC" url="/org/datanucleus/api/jdo/jdoquery_2_0.dtd"/>
  544.     <entityresolver identity="-//Sun Microsystems, Inc.//DTD Java Data Objects Query Metadata 2.2//EN"
  545.                    type="PUBLIC" url="/org/datanucleus/api/jdo/jdoquery_2_2.dtd"/>
  546.     <entityresolver identity="-//Sun Microsystems, Inc.//DTD Java Data Objects Query Metadata 3.0//EN"
  547.                    type="PUBLIC" url="/org/datanucleus/api/jdo/jdoquery_3_0.dtd"/>
  548.  
  549.     <!-- DTD Shortcuts : point to latest version -->
  550.     <entityresolver identity="file:/javax/jdo/jdo.dtd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_3_1.dtd"/>
  551.     <entityresolver identity="file:/javax/jdo/orm.dtd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_orm_3_1.dtd"/>
  552.     <entityresolver identity="file:/javax/jdo/jdoquery.dtd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdoquery_3_0.dtd"/>
  553.  
  554.     <!-- XSDs -->
  555.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/jdoquery_3_2.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdoquery_3_0.xsd"/>
  556.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/jdoquery_3_1.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdoquery_3_0.xsd"/>
  557.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/jdoquery_3_0.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdoquery_3_0.xsd"/>
  558.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/jdoquery_2_2.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdoquery_2_2.xsd"/>
  559.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/jdoquery_2_1.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdoquery_2_1.xsd"/>
  560.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/jdoquery_2_0.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdoquery_2_0.xsd"/>
  561.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/jdoquery_3_2.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdoquery_3_0.xsd"/>
  562.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/jdoquery_3_1.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdoquery_3_0.xsd"/>
  563.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/jdoquery_3_0.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdoquery_3_0.xsd"/>
  564.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/jdoquery_2_2.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdoquery_2_2.xsd"/>
  565.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/jdoquery_2_1.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdoquery_2_1.xsd"/>
  566.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/jdoquery_2_0.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdoquery_2_0.xsd"/>
  567.  
  568.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/orm_3_2.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_orm_3_2.xsd"/>
  569.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/orm_3_1.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_orm_3_1.xsd"/>
  570.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/orm_3_0.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_orm_3_0.xsd"/>
  571.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/orm_2_2.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_orm_2_2.xsd"/>
  572.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/orm_2_1.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_orm_2_1.xsd"/>
  573.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/orm_2_0.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_orm_2_0.xsd"/>
  574.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/orm_3_2.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_orm_3_2.xsd"/>
  575.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/orm_3_1.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_orm_3_1.xsd"/>
  576.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/orm_3_0.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_orm_3_0.xsd"/>
  577.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/orm_2_2.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_orm_2_2.xsd"/>
  578.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/orm_2_1.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_orm_2_1.xsd"/>
  579.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/orm_2_0.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_orm_2_0.xsd"/>
  580.  
  581.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/jdo_3_2.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_3_2.xsd"/>
  582.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/jdo_3_1.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_3_1.xsd"/>
  583.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/jdo_3_0.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_3_0.xsd"/>
  584.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/jdo_2_2.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_2_2.xsd"/>
  585.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/jdo_2_1.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_2_1.xsd"/>
  586.     <entityresolver identity="http://java.sun.com/xml/ns/jdo/jdo_2_0.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_2_0.xsd"/>
  587.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/jdo_3_2.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_3_2.xsd"/>
  588.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/jdo_3_1.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_3_1.xsd"/>
  589.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/jdo_3_0.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_3_0.xsd"/>
  590.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/jdo_2_2.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_2_2.xsd"/>
  591.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/jdo_2_1.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_2_1.xsd"/>
  592.     <entityresolver identity="http://xmlns.jcp.org/xml/ns/jdo/jdo_2_0.xsd" type="SYSTEM" url="/org/datanucleus/api/jdo/jdo_2_0.xsd"/>
  593.  
  594.     <entityresolver url="/org/datanucleus/api/jdo/jdoquery_3_2.xsd"/>
  595.     <entityresolver url="/org/datanucleus/api/jdo/jdo_orm_3_2.xsd"/>
  596.     <entityresolver url="/org/datanucleus/api/jdo/jdo_3_2.xsd"/>
  597.   </extension>
  598.  
  599.   <!-- EXTENSION ANNOTATIONS -->
  600.   <extension point="org.datanucleus.member_annotation_handler">
  601.     <member-annotation-handler annotation-class="javax.validation.constraints.NotNull"
  602.                               handler="org.datanucleus.metadata.annotations.ValidationNotNullAnnotationHandler"/>
  603.     <member-annotation-handler annotation-class="javax.validation.constraints.Size"
  604.                               handler="org.datanucleus.metadata.annotations.ValidationSizeAnnotationHandler"/>
  605.   </extension>
  606.  
  607.   <!-- JMX SERVERS -->
  608.   <extension point="org.datanucleus.management_server">
  609.     <management-server class="org.datanucleus.management.jmx.PlatformManagementServer" name="default"/>
  610.     <management-server class="org.datanucleus.management.jmx.Mx4jManagementServer" name="mx4j"/>
  611.   </extension>
  612.  
  613.   <!-- extension points from datanucleus-rdbms-4.1.7 -->
  614.   <!-- STORE MANAGER -->
  615.   <extension point="org.datanucleus.store_manager">
  616.     <store-manager class-name="org.datanucleus.store.rdbms.RDBMSStoreManager" url-key="jdbc" key="rdbms"/>
  617.   </extension>
  618.  
  619.   <!-- QUERY LANGUAGES -->
  620.   <extension point="org.datanucleus.store_query_query">
  621.     <query class-name="org.datanucleus.store.rdbms.query.JDOQLQuery" datastore="rdbms" name="JDOQL"/>
  622.     <query class-name="org.datanucleus.store.rdbms.query.JPQLQuery" datastore="rdbms" name="JPQL"/>
  623.     <query class-name="org.datanucleus.store.rdbms.query.SQLQuery" datastore="rdbms" name="SQL"/>
  624.     <query class-name="org.datanucleus.store.rdbms.query.StoredProcedureQuery" datastore="rdbms" name="STOREDPROC"/>
  625.   </extension>
  626.  
  627.   <!-- CONNECTION FACTORY -->
  628.   <extension point="org.datanucleus.store_connectionfactory">
  629.     <connectionfactory name="rdbms/tx" class-name="org.datanucleus.store.rdbms.ConnectionFactoryImpl" transactional="true" datastore="rdbms"/>
  630.     <connectionfactory name="rdbms/nontx" class-name="org.datanucleus.store.rdbms.ConnectionFactoryImpl" transactional="false" datastore="rdbms"/>
  631.   </extension>
  632.  
  633.   <!-- CONNECTION PROVIDER -->
  634.   <extension point="org.datanucleus.store.rdbms.connectionprovider">
  635.     <connection-provider class-name="org.datanucleus.store.rdbms.ConnectionProviderPriorityList" name="PriorityList"/>
  636.   </extension>
  637.  
  638.   <!-- CONNECTIONPOOL -->
  639.   <extension point="org.datanucleus.store.rdbms.connectionpool">
  640.     <connectionpool-factory name="dbcp-builtin" class-name="org.datanucleus.store.rdbms.connectionpool.DBCPBuiltinConnectionPoolFactory"/>
  641.     <connectionpool-factory name="None" class-name="org.datanucleus.store.rdbms.connectionpool.DefaultConnectionPoolFactory"/>
  642.     <connectionpool-factory name="BoneCP" class-name="org.datanucleus.store.rdbms.connectionpool.BoneCPConnectionPoolFactory"/>
  643.     <connectionpool-factory name="C3P0" class-name="org.datanucleus.store.rdbms.connectionpool.C3P0ConnectionPoolFactory"/>
  644.     <connectionpool-factory name="DBCP" class-name="org.datanucleus.store.rdbms.connectionpool.DBCPConnectionPoolFactory"/>
  645.     <connectionpool-factory name="DBCP2" class-name="org.datanucleus.store.rdbms.connectionpool.DBCP2ConnectionPoolFactory"/>
  646.     <connectionpool-factory name="Proxool" class-name="org.datanucleus.store.rdbms.connectionpool.ProxoolConnectionPoolFactory"/>
  647.     <connectionpool-factory name="Tomcat" class-name="org.datanucleus.store.rdbms.connectionpool.TomcatConnectionPoolFactory"/>
  648.     <connectionpool-factory name="HikariCP" class-name="org.datanucleus.store.rdbms.connectionpool.HikariCPConnectionPoolFactory"/>
  649.   </extension>
  650.  
  651.   <!-- PERSISTENCE PROPERTIES -->
  652.   <extension point="org.datanucleus.persistence_properties">
  653.     <persistence-property name="datanucleus.rdbms.useLegacyNativeValueStrategy" datastore="true" value="false"
  654.                          validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  655.     <persistence-property name="datanucleus.rdbms.dynamicSchemaUpdates" datastore="true" value="false"
  656.                          validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  657.     <persistence-property name="datanucleus.rdbms.tableColumnOrder" datastore="true" value="owner-first"/>
  658.  
  659.     <persistence-property name="datanucleus.rdbms.query.fetchDirection" datastore="true" value="forward"
  660.                          validator="org.datanucleus.store.rdbms.RDBMSPropertyValidator"/>
  661.     <persistence-property name="datanucleus.rdbms.query.resultSetType" datastore="true" value="forward-only"
  662.                          validator="org.datanucleus.store.rdbms.RDBMSPropertyValidator"/>
  663.     <persistence-property name="datanucleus.rdbms.query.resultSetConcurrency" datastore="true" value="read-only"
  664.                          validator="org.datanucleus.store.rdbms.RDBMSPropertyValidator"/>
  665.     <persistence-property name="datanucleus.rdbms.query.multivaluedFetch" datastore="true" value="exists"
  666.                          validator="org.datanucleus.store.rdbms.RDBMSPropertyValidator"/>
  667.  
  668.     <persistence-property name="datanucleus.rdbms.classAdditionMaxRetries" datastore="true" value="3"
  669.                          validator="org.datanucleus.properties.IntegerPropertyValidator"/>
  670.     <persistence-property name="datanucleus.rdbms.statementBatchLimit" datastore="true" value="50"
  671.                          validator="org.datanucleus.properties.IntegerPropertyValidator"/>
  672.     <persistence-property name="datanucleus.rdbms.oracleNlsSortOrder" datastore="true" value="LATIN"/>
  673.     <persistence-property name="datanucleus.rdbms.discriminatorPerSubclassTable" datastore="true" value="false"
  674.                          validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  675.     <persistence-property name="datanucleus.rdbms.constraintCreateMode" datastore="true" value="DataNucleus"
  676.                          validator="org.datanucleus.store.rdbms.RDBMSPropertyValidator"/>
  677.     <persistence-property name="datanucleus.rdbms.uniqueConstraints.mapInverse" datastore="true" value="true"
  678.                          validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  679.     <persistence-property name="datanucleus.rdbms.initializeColumnInfo" datastore="true" value="ALL"
  680.                          validator="org.datanucleus.store.rdbms.RDBMSPropertyValidator"/>
  681.     <persistence-property name="datanucleus.rdbms.useDefaultSqlType" datastore="true" value="true"
  682.                          validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  683.     <persistence-property name="datanucleus.rdbms.stringDefaultLength" datastore="true" value="255"
  684.                          validator="org.datanucleus.properties.IntegerPropertyValidator"/>
  685.     <persistence-property name="datanucleus.rdbms.stringLengthExceededAction" datastore="true" value="EXCEPTION"
  686.                          validator="org.datanucleus.store.rdbms.RDBMSPropertyValidator"/>
  687.     <persistence-property name="datanucleus.rdbms.persistEmptyStringAsNull" datastore="true" value="false"
  688.                          validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  689.     <persistence-property name="datanucleus.rdbms.checkExistTablesOrViews" datastore="true" value="true"
  690.                          validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  691.     <persistence-property name="datanucleus.rdbms.schemaTable.tableName" datastore="true"/>
  692.     <persistence-property name="datanucleus.rdbms.connectionProviderName" datastore="true" value="PriorityList"/>
  693.     <persistence-property name="datanucleus.rdbms.connectionProviderFailOnError" datastore="true" value="false"
  694.                          validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  695.     <persistence-property name="datanucleus.rdbms.datastoreAdapterClassName" datastore="true"/>
  696.     <persistence-property name="datanucleus.rdbms.omitDatabaseMetaDataGetColumns" datastore="true" value="false"
  697.                          validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  698.     <persistence-property name="datanucleus.rdbms.sqlTableNamingStrategy" datastore="true" value="alpha-scheme"/>
  699.     <persistence-property name="datanucleus.rdbms.allowColumnReuse" datastore="true" value="false"/>
  700.  
  701.     <persistence-property name="datanucleus.rdbms.adapter.informixUseSerialForIdentity" datastore="true"
  702.                          validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  703.     <persistence-property name="datanucleus.rdbms.statementLogging" datastore="true" value="values-in-brackets"
  704.                          validator="org.datanucleus.store.rdbms.RDBMSPropertyValidator"/>
  705.     <persistence-property name="datanucleus.rdbms.fetchUnloadedAutomatically" datastore="true" value="false"
  706.                          validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  707.  
  708.     <persistence-property name="datanucleus.rdbms.mysql.engineType" datastore="true"/>
  709.     <persistence-property name="datanucleus.rdbms.mysql.collation" datastore="true"/>
  710.     <persistence-property name="datanucleus.rdbms.mysql.characterSet" datastore="true"/>
  711.  
  712.     <!-- TODO Rename these to "datanucleus.rdbms.connectionPool.*" or move to "core" -->
  713.     <persistence-property name="datanucleus.connectionPool.maxStatements" datastore="true" value="0"
  714.                          validator="org.datanucleus.properties.IntegerPropertyValidator"/>
  715.     <persistence-property name="datanucleus.connectionPool.maxPoolSize" datastore="true"
  716.                          validator="org.datanucleus.properties.IntegerPropertyValidator"/>
  717.     <persistence-property name="datanucleus.connectionPool.minPoolSize" datastore="true"
  718.                          validator="org.datanucleus.properties.IntegerPropertyValidator"/>
  719.     <persistence-property name="datanucleus.connectionPool.initialPoolSize" datastore="true"
  720.                          validator="org.datanucleus.properties.IntegerPropertyValidator"/>
  721.     <persistence-property name="datanucleus.connectionPool.maxIdle" datastore="true"
  722.                          validator="org.datanucleus.properties.IntegerPropertyValidator"/>
  723.     <persistence-property name="datanucleus.connectionPool.minIdle" datastore="true"
  724.                          validator="org.datanucleus.properties.IntegerPropertyValidator"/>
  725.     <persistence-property name="datanucleus.connectionPool.maxActive" datastore="true"
  726.                          validator="org.datanucleus.properties.IntegerPropertyValidator"/>
  727.     <persistence-property name="datanucleus.connectionPool.maxWait" datastore="true"
  728.                          validator="org.datanucleus.properties.IntegerPropertyValidator"/>
  729.     <persistence-property name="datanucleus.connectionPool.testSQL" datastore="true"
  730.                          validator="org.datanucleus.properties.StringPropertyValidator"/>
  731.     <persistence-property name="datanucleus.connectionPool.timeBetweenEvictionRunsMillis" datastore="true"
  732.                          validator="org.datanucleus.properties.IntegerPropertyValidator"/>
  733.     <persistence-property name="datanucleus.connectionPool.minEvictableIdleTimeMillis" datastore="true"
  734.                          validator="org.datanucleus.properties.IntegerPropertyValidator"/>
  735.     <persistence-property name="datanucleus.connectionPool.maxConnections" datastore="true"
  736.                          validator="org.datanucleus.properties.IntegerPropertyValidator"/>
  737.     <persistence-property name="datanucleus.connectionPool.driverProps"/>
  738.  
  739.     <!-- merged -->
  740.     <persistence-property name="javax.jdo.PersistenceManagerFactoryClass"/>
  741.     <persistence-property name="javax.jdo.option.ConnectionDriverName" internal-name="datanucleus.ConnectionDriverName"/>
  742.     <persistence-property name="javax.jdo.option.ConnectionURL" internal-name="datanucleus.ConnectionURL"/>
  743.     <persistence-property name="javax.jdo.option.ConnectionUserName" internal-name="datanucleus.ConnectionUserName"/>
  744.     <persistence-property name="javax.jdo.option.ConnectionPassword" internal-name="datanucleus.ConnectionPassword"/>
  745.     <persistence-property name="javax.jdo.option.ConnectionFactoryName" internal-name="datanucleus.ConnectionFactoryName"/>
  746.     <persistence-property name="javax.jdo.option.ConnectionFactory2Name" internal-name="datanucleus.ConnectionFactory2Name"/>
  747.     <persistence-property name="javax.jdo.option.ConnectionFactory" internal-name="datanucleus.ConnectionFactory"/>
  748.     <persistence-property name="javax.jdo.option.ConnectionFactory2" internal-name="datanucleus.ConnectionFactory2"/>
  749.     <persistence-property name="javax.jdo.option.IgnoreCache" internal-name="datanucleus.IgnoreCache"
  750.                          manager-overrideable="true" validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  751.     <persistence-property name="javax.jdo.option.Optimistic" internal-name="datanucleus.Optimistic"
  752.                          manager-overrideable="true" validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  753.     <persistence-property name="javax.jdo.option.Multithreaded" internal-name="datanucleus.Multithreaded"
  754.                          manager-overrideable="true" validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  755.     <persistence-property name="javax.jdo.option.RetainValues" internal-name="datanucleus.RetainValues"
  756.                          manager-overrideable="true" validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  757.     <persistence-property name="javax.jdo.option.RestoreValues" internal-name="datanucleus.RestoreValues"
  758.                          manager-overrideable="true" validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  759.     <persistence-property name="javax.jdo.option.NontransactionalRead" internal-name="datanucleus.NontransactionalRead"
  760.                          manager-overrideable="true" validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  761.     <persistence-property name="javax.jdo.option.NontransactionalWrite" internal-name="datanucleus.NontransactionalWrite"
  762.                          manager-overrideable="true" validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  763.     <persistence-property name="javax.jdo.option.DetachAllOnCommit" internal-name="datanucleus.DetachAllOnCommit"
  764.                          manager-overrideable="true" validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  765.     <persistence-property name="javax.jdo.option.CopyOnAttach" internal-name="datanucleus.CopyOnAttach"
  766.                          manager-overrideable="true" validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  767.     <persistence-property name="javax.jdo.option.TransactionType" internal-name="datanucleus.TransactionType"
  768.                          validator="org.datanucleus.properties.CorePropertyValidator"/>
  769.     <persistence-property name="javax.jdo.option.Name" internal-name="datanucleus.Name"
  770.                          validator="org.datanucleus.properties.StringPropertyValidator"/>
  771.     <persistence-property name="javax.jdo.option.PersistenceUnitName" internal-name="datanucleus.PersistenceUnitName"
  772.                          validator="org.datanucleus.properties.StringPropertyValidator"/>
  773.     <persistence-property name="javax.jdo.option.ServerTimeZoneID" internal-name="datanucleus.ServerTimeZoneID"
  774.                          validator="org.datanucleus.properties.CorePropertyValidator"/>
  775.     <persistence-property name="javax.jdo.option.ReadOnly" internal-name="datanucleus.readOnlyDatastore"
  776.                          validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  777.     <persistence-property name="javax.jdo.option.TransactionIsolationLevel" internal-name="datanucleus.transactionIsolation"
  778.                          validator="org.datanucleus.properties.CorePropertyValidator"/>
  779.     <persistence-property name="javax.jdo.option.Mapping" internal-name="datanucleus.Mapping"
  780.                          validator="org.datanucleus.properties.StringPropertyValidator"/>
  781.     <persistence-property name="javax.jdo.mapping.Catalog" internal-name="datanucleus.mapping.Catalog"
  782.                          validator="org.datanucleus.properties.StringPropertyValidator"/>
  783.     <persistence-property name="javax.jdo.mapping.Schema" internal-name="datanucleus.mapping.Schema"
  784.                          validator="org.datanucleus.properties.StringPropertyValidator"/>
  785.     <persistence-property name="javax.jdo.option.DatastoreReadTimeoutMillis" internal-name="datanucleus.datastoreReadTimeout" value="0"
  786.                          manager-overrideable="true" validator="org.datanucleus.properties.IntegerPropertyValidator"/>
  787.     <persistence-property name="javax.jdo.option.DatastoreWriteTimeoutMillis" internal-name="datanucleus.datastoreWriteTimeout" value="0"
  788.                          manager-overrideable="true" validator="org.datanucleus.properties.IntegerPropertyValidator"/>
  789.     <persistence-property name="javax.jdo.option.spi.ResourceName"/> <!-- JDOHelper nonsense -->
  790.     <persistence-property name="javax.jdo.option.Multitenancy" internal-name="datanucleus.tenantID"/>
  791.  
  792.     <persistence-property name="datanucleus.allowListenerUpdateAfterInit" value="false"
  793.                          validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  794.  
  795.     <persistence-property name="datanucleus.singletonPMFForName" value="false"
  796.                          validator="org.datanucleus.properties.BooleanPropertyValidator"/>
  797.   </extension>
  798.  
  799.   <!-- RDBMS : JAVA TYPES MAPPING -->
  800.   <extension point="org.datanucleus.store.rdbms.java_mapping">
  801.     <!-- "primitive" types -->
  802.     <mapping java-type="boolean" mapping-class="org.datanucleus.store.rdbms.mapping.java.BooleanMapping"/>
  803.     <mapping java-type="byte" mapping-class="org.datanucleus.store.rdbms.mapping.java.ByteMapping"/>
  804.     <mapping java-type="char" mapping-class="org.datanucleus.store.rdbms.mapping.java.CharacterMapping"/>
  805.     <mapping java-type="double" mapping-class="org.datanucleus.store.rdbms.mapping.java.DoubleMapping"/>
  806.     <mapping java-type="float" mapping-class="org.datanucleus.store.rdbms.mapping.java.FloatMapping" />
  807.     <mapping java-type="int" mapping-class="org.datanucleus.store.rdbms.mapping.java.IntegerMapping"/>
  808.     <mapping java-type="long" mapping-class="org.datanucleus.store.rdbms.mapping.java.LongMapping"/>
  809.     <mapping java-type="short" mapping-class="org.datanucleus.store.rdbms.mapping.java.ShortMapping"/>
  810.  
  811.     <!-- "java.lang" types -->
  812.     <mapping java-type="java.lang.Boolean" mapping-class="org.datanucleus.store.rdbms.mapping.java.BooleanMapping"/>
  813.     <mapping java-type="java.lang.Byte" mapping-class="org.datanucleus.store.rdbms.mapping.java.ByteMapping"/>
  814.     <mapping java-type="java.lang.Character" mapping-class="org.datanucleus.store.rdbms.mapping.java.CharacterMapping"/>
  815.     <mapping java-type="java.lang.Double" mapping-class="org.datanucleus.store.rdbms.mapping.java.DoubleMapping"/>
  816.     <mapping java-type="java.lang.Float" mapping-class="org.datanucleus.store.rdbms.mapping.java.FloatMapping"/>
  817.     <mapping java-type="java.lang.Integer" mapping-class="org.datanucleus.store.rdbms.mapping.java.IntegerMapping"/>
  818.     <mapping java-type="java.lang.Long" mapping-class="org.datanucleus.store.rdbms.mapping.java.LongMapping"/>
  819.     <mapping java-type="java.lang.Short" mapping-class="org.datanucleus.store.rdbms.mapping.java.ShortMapping"/>
  820.  
  821.     <mapping java-type="java.lang.Class" mapping-class="org.datanucleus.store.rdbms.mapping.java.ClassMapping"/>
  822.     <mapping java-type="java.lang.Number" mapping-class="org.datanucleus.store.rdbms.mapping.java.NumberMapping"/>
  823.     <mapping java-type="java.lang.Object" mapping-class="org.datanucleus.store.rdbms.mapping.java.SerialisedMapping"/>
  824.     <mapping java-type="java.lang.String" mapping-class="org.datanucleus.store.rdbms.mapping.java.StringMapping"/>
  825.     <mapping java-type="java.lang.Enum" mapping-class="org.datanucleus.store.rdbms.mapping.java.EnumMapping"/>
  826.  
  827.     <!-- "java.awt" types -->
  828.     <mapping java-type="java.awt.image.BufferedImage" mapping-class="org.datanucleus.store.rdbms.mapping.java.BufferedImageMapping"/>
  829.  
  830.     <!-- "java.io" types -->
  831.     <mapping java-type="java.io.File" mapping-class="org.datanucleus.store.rdbms.mapping.java.FileMapping"/>
  832.     <mapping java-type="java.io.Serializable" mapping-class="org.datanucleus.store.rdbms.mapping.java.SerialisedMapping"/>
  833.  
  834.     <!-- "java.math" types -->
  835.     <mapping java-type="java.math.BigDecimal" mapping-class="org.datanucleus.store.rdbms.mapping.java.BigDecimalMapping"/>
  836.     <mapping java-type="java.math.BigInteger" mapping-class="org.datanucleus.store.rdbms.mapping.java.BigIntegerMapping"/>
  837.  
  838.     <!-- "java.util" types -->
  839.     <mapping java-type="java.util.Calendar" mapping-class="org.datanucleus.store.rdbms.mapping.java.GregorianCalendarMapping"/>
  840.     <mapping java-type="java.util.Date" mapping-class="org.datanucleus.store.rdbms.mapping.java.DateMapping"/>
  841.     <mapping java-type="java.util.UUID" mapping-class="org.datanucleus.store.rdbms.mapping.java.UUIDMapping"/>
  842.  
  843.     <!-- "java.sql" types -->
  844.     <mapping java-type="java.sql.Date" mapping-class="org.datanucleus.store.rdbms.mapping.java.SqlDateMapping"/>
  845.     <mapping java-type="java.sql.Time" mapping-class="org.datanucleus.store.rdbms.mapping.java.SqlTimeMapping"/>
  846.     <mapping java-type="java.sql.Timestamp" mapping-class="org.datanucleus.store.rdbms.mapping.java.SqlTimestampMapping"/>
  847.  
  848.     <!-- array types -->
  849.     <mapping java-type="[B" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  850.     <mapping java-type="[C" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  851.     <mapping java-type="[D" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  852.     <mapping java-type="[F" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  853.     <mapping java-type="[I" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  854.     <mapping java-type="[J" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  855.     <mapping java-type="[S" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  856.     <mapping java-type="[Z" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  857.  
  858.     <mapping java-type="[Ljava.lang.Boolean;" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  859.     <mapping java-type="[Ljava.lang.Byte;" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  860.     <mapping java-type="[Ljava.lang.Character;" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  861.     <mapping java-type="[Ljava.lang.Double;" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  862.     <mapping java-type="[Ljava.lang.Float;" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  863.     <mapping java-type="[Ljava.lang.Integer;" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  864.     <mapping java-type="[Ljava.lang.Long;" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  865.     <mapping java-type="[Ljava.lang.Short;" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  866.  
  867.     <mapping java-type="[Ljava.lang.Number;" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  868.     <mapping java-type="[Ljava.lang.String;" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  869.     <mapping java-type="[Ljava.lang.Enum;" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  870.     <mapping java-type="[Ljava.math.BigInteger;" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  871.     <mapping java-type="[Ljava.math.BigDecimal;" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  872.     <mapping java-type="[Ljava.util.Date;" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  873.     <mapping java-type="[Ljava.util.Locale;" mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"/>
  874.  
  875.     <!-- container types -->
  876.     <mapping java-type="java.util.ArrayList" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  877.     <mapping java-type="java.util.BitSet" mapping-class="org.datanucleus.store.rdbms.mapping.java.BitSetMapping"/>
  878.     <mapping java-type="java.util.Collection" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  879.     <mapping java-type="java.util.GregorianCalendar" mapping-class="org.datanucleus.store.rdbms.mapping.java.GregorianCalendarMapping"/>
  880.     <mapping java-type="java.util.HashMap" mapping-class="org.datanucleus.store.rdbms.mapping.java.MapMapping"/>
  881.     <mapping java-type="java.util.HashSet" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  882.     <mapping java-type="java.util.Hashtable" mapping-class="org.datanucleus.store.rdbms.mapping.java.MapMapping"/>
  883.     <mapping java-type="java.util.LinkedList" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  884.     <mapping java-type="java.util.List" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  885.     <mapping java-type="java.util.LinkedHashMap" mapping-class="org.datanucleus.store.rdbms.mapping.java.MapMapping"/>
  886.     <mapping java-type="java.util.LinkedHashSet" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  887.     <mapping java-type="java.util.Map" mapping-class="org.datanucleus.store.rdbms.mapping.java.MapMapping"/>
  888.     <mapping java-type="java.util.PriorityQueue" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  889.     <mapping java-type="java.util.Properties" mapping-class="org.datanucleus.store.rdbms.mapping.java.MapMapping"/>
  890.     <mapping java-type="java.util.Queue" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  891.     <mapping java-type="java.util.Set" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  892.     <mapping java-type="java.util.SortedMap" mapping-class="org.datanucleus.store.rdbms.mapping.java.MapMapping"/>
  893.     <mapping java-type="java.util.SortedSet" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  894.     <mapping java-type="java.util.Stack" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  895.     <mapping java-type="java.util.TreeMap" mapping-class="org.datanucleus.store.rdbms.mapping.java.MapMapping"/>
  896.     <mapping java-type="java.util.TreeSet" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  897.     <mapping java-type="java.util.Vector" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  898.  
  899.     <!-- DataNucleus types -->
  900.     <mapping java-type="org.datanucleus.identity.DatastoreId" mapping-class="org.datanucleus.store.rdbms.mapping.java.DatastoreIdMapping"/>
  901.  
  902.     <mapping java-type="org.datanucleus.store.types.backed.ArrayList" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  903.     <mapping java-type="org.datanucleus.store.types.backed.Collection" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  904.     <mapping java-type="org.datanucleus.store.types.backed.HashMap" mapping-class="org.datanucleus.store.rdbms.mapping.java.MapMapping"/>
  905.     <mapping java-type="org.datanucleus.store.types.backed.HashSet" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  906.     <mapping java-type="org.datanucleus.store.types.backed.Hashtable" mapping-class="org.datanucleus.store.rdbms.mapping.java.MapMapping"/>
  907.     <mapping java-type="org.datanucleus.store.types.backed.LinkedList" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  908.     <mapping java-type="org.datanucleus.store.types.backed.List" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  909.     <mapping java-type="org.datanucleus.store.types.backed.LinkedHashSet" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  910.     <mapping java-type="org.datanucleus.store.types.backed.LinkedHashMap" mapping-class="org.datanucleus.store.rdbms.mapping.java.MapMapping"/>
  911.     <mapping java-type="org.datanucleus.store.types.backed.Map" mapping-class="org.datanucleus.store.rdbms.mapping.java.MapMapping"/>
  912.     <mapping java-type="org.datanucleus.store.types.backed.PriorityQueue" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  913.     <mapping java-type="org.datanucleus.store.types.backed.Properties" mapping-class="org.datanucleus.store.rdbms.mapping.java.MapMapping"/>
  914.     <mapping java-type="org.datanucleus.store.types.backed.Queue" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  915.     <mapping java-type="org.datanucleus.store.types.backed.Set" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  916.     <mapping java-type="org.datanucleus.store.types.backed.SortedMap" mapping-class="org.datanucleus.store.rdbms.mapping.java.MapMapping"/>
  917.     <mapping java-type="org.datanucleus.store.types.backed.SortedSet" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  918.     <mapping java-type="org.datanucleus.store.types.backed.Stack" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  919.     <mapping java-type="org.datanucleus.store.types.backed.TreeMap" mapping-class="org.datanucleus.store.rdbms.mapping.java.MapMapping"/>
  920.     <mapping java-type="org.datanucleus.store.types.backed.TreeSet" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  921.     <mapping java-type="org.datanucleus.store.types.backed.Vector" mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"/>
  922.   </extension>
  923.  
  924.   <!-- RDBMS Datastore Mapping -->
  925.   <extension point="org.datanucleus.store.rdbms.datastore_mapping">
  926.     <mapping java-type="java.lang.Boolean" jdbc-type="BIT" sql-type="BIT" default="true"
  927.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.BitRDBMSMapping">
  928.       <excludes vendor-id="derby"/>
  929.       <excludes vendor-id="firebird"/>
  930.       <excludes vendor-id="h2"/>
  931.       <excludes vendor-id="hsql"/>
  932.       <excludes vendor-id="pointbase"/>
  933.       <excludes vendor-id="sapdb"/>
  934.     </mapping>
  935.     <mapping java-type="java.lang.Boolean" jdbc-type="CHAR" sql-type="CHAR" default="false"
  936.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.CharRDBMSMapping"/>
  937.     <mapping java-type="java.lang.Boolean" jdbc-type="BOOLEAN" sql-type="BOOLEAN" default="false"
  938.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.BooleanRDBMSMapping">
  939.       <excludes vendor-id="h2"/>
  940.     </mapping>
  941.     <mapping java-type="java.lang.Boolean" jdbc-type="BOOLEAN" sql-type="BOOLEAN" default="true"
  942.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.BooleanRDBMSMapping">
  943.       <includes vendor-id="h2"/>
  944.     </mapping>
  945.     <mapping java-type="java.lang.Boolean" jdbc-type="TINYINT" sql-type="TINYINT" default="false"
  946.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.TinyIntRDBMSMapping">
  947.       <excludes vendor-id="db2"/>
  948.       <excludes vendor-id="derby"/>
  949.       <excludes vendor-id="sapdb"/>
  950.       <excludes vendor-id="sqlserver"/>
  951.       <excludes vendor-id="nuodb"/>
  952.     </mapping>
  953.     <mapping java-type="java.lang.Boolean" jdbc-type="SMALLINT" sql-type="SMALLINT" default="false"
  954.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.SmallIntRDBMSMapping"/>
  955.     <mapping java-type="java.lang.Boolean" jdbc-type="CHAR" sql-type="CHAR" default="true"
  956.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.CharRDBMSMapping">
  957.       <includes vendor-id="db2"/>
  958.       <includes vendor-id="derby"/>
  959.       <includes vendor-id="firebird"/>
  960.       <includes vendor-id="pointbase"/>
  961.       <includes vendor-id="sapdb"/>
  962.     </mapping>
  963.     <mapping java-type="java.lang.Boolean" jdbc-type="BOOLEAN" sql-type="BOOLEAN" default="true"
  964.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.CharRDBMSMapping">
  965.       <includes vendor-id="hsql"/>
  966.     </mapping>
  967.     <mapping java-type="java.lang.Boolean" jdbc-type="NUMERIC" sql-type="NUMERIC" default="true"
  968.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  969.       <includes vendor-id="oracle"/>
  970.     </mapping>
  971.  
  972.     <mapping java-type="java.lang.Byte" jdbc-type="TINYINT" sql-type="TINYINT" default="true"
  973.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.TinyIntRDBMSMapping">
  974.       <excludes vendor-id="db2"/>
  975.       <excludes vendor-id="derby"/>
  976.       <excludes vendor-id="sapdb"/>
  977.       <excludes vendor-id="sqlserver"/>
  978.       <excludes vendor-id="nuodb"/>
  979.     </mapping>
  980.     <mapping java-type="java.lang.Byte" jdbc-type="SMALLINT" sql-type="SMALLINT" default="false"
  981.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.SmallIntRDBMSMapping"/>
  982.     <mapping java-type="java.lang.Byte" jdbc-type="NUMERIC" sql-type="NUMERIC" default="true"
  983.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  984.       <includes vendor-id="oracle"/>
  985.     </mapping>
  986.  
  987.     <mapping java-type="java.lang.Character" jdbc-type="CHAR" sql-type="CHAR" default="true"
  988.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.CharRDBMSMapping"/>
  989.     <mapping java-type="java.lang.Character" jdbc-type="INTEGER" sql-type="INTEGER" default="false"
  990.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.IntegerRDBMSMapping">
  991.       <excludes vendor-id="sqlserver"/>
  992.     </mapping>
  993.     <mapping java-type="java.lang.Character" jdbc-type="INTEGER" sql-type="INT" default="false"
  994.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.IntegerRDBMSMapping">
  995.       <includes vendor-id="derby"/>
  996.       <includes vendor-id="sapdb"/>
  997.       <includes vendor-id="sqlserver"/>
  998.       <includes vendor-id="sybase"/>
  999.     </mapping>
  1000.     <mapping java-type="java.lang.Character" jdbc-type="NUMERIC" sql-type="NUMERIC" default="false"
  1001.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1002.       <includes vendor-id="oracle"/>
  1003.     </mapping>
  1004.  
  1005.     <mapping java-type="java.lang.Double" jdbc-type="DOUBLE" sql-type="DOUBLE" default="true"
  1006.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.DoubleRDBMSMapping">
  1007.       <excludes vendor-id="informix"/>
  1008.       <excludes vendor-id="sqlserver"/>
  1009.     </mapping>
  1010.     <mapping java-type="java.lang.Double" jdbc-type="DOUBLE" sql-type="FLOAT" default="false"
  1011.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.DoubleRDBMSMapping">
  1012.       <includes vendor-id="sqlserver"/>
  1013.     </mapping>
  1014.     <mapping java-type="java.lang.Double" jdbc-type="DECIMAL" sql-type="DECIMAL" default="false"
  1015.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.DecimalRDBMSMapping">
  1016.       <excludes vendor-id="postgresql"/>
  1017.     </mapping>
  1018.     <mapping java-type="java.lang.Double" jdbc-type="FLOAT" sql-type="FLOAT" default="true"
  1019.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.FloatRDBMSMapping">
  1020.       <includes vendor-id="informix"/>
  1021.       <includes vendor-id="oracle"/>
  1022.       <includes vendor-id="sqlserver"/>
  1023.     </mapping>
  1024.     <mapping java-type="java.lang.Double" jdbc-type="NUMERIC" sql-type="NUMBER" default="false"
  1025.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1026.       <includes vendor-id="oracle"/>
  1027.     </mapping>
  1028.  
  1029.     <mapping java-type="java.lang.Float" jdbc-type="FLOAT" sql-type="FLOAT" default="true"
  1030.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.FloatRDBMSMapping">
  1031.       <excludes vendor-id="postgresql"/>
  1032.       <excludes vendor-id="sybase"/>
  1033.       <excludes vendor-id="db2"/>
  1034.     </mapping>
  1035.     <mapping java-type="java.lang.Float" jdbc-type="DOUBLE" sql-type="DOUBLE" default="false"
  1036.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.DoubleRDBMSMapping">
  1037.       <excludes vendor-id="informix"/>
  1038.       <excludes vendor-id="sqlserver"/>
  1039.     </mapping>
  1040.     <mapping java-type="java.lang.Float" jdbc-type="REAL" sql-type="REAL" default="false"
  1041.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.RealRDBMSMapping">
  1042.       <excludes vendor-id="db2"/>
  1043.     </mapping>
  1044.     <mapping java-type="java.lang.Float" jdbc-type="REAL" sql-type="REAL" default="true"
  1045.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.RealRDBMSMapping">
  1046.       <includes vendor-id="db2"/>
  1047.     </mapping>
  1048.     <mapping java-type="java.lang.Float" jdbc-type="DECIMAL" sql-type="DECIMAL" default="false"
  1049.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.DecimalRDBMSMapping">
  1050.       <excludes vendor-id="postgresql"/>
  1051.     </mapping>
  1052.     <mapping java-type="java.lang.Float" jdbc-type="DOUBLE" sql-type="DOUBLE" default="true"
  1053.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.DoubleRDBMSMapping">
  1054.       <includes vendor-id="postgresql"/>
  1055.       <includes vendor-id="sybase"/>
  1056.     </mapping>
  1057.     <mapping java-type="java.lang.Float" jdbc-type="NUMERIC" sql-type="NUMBER" default="false"
  1058.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1059.       <includes vendor-id="oracle"/>
  1060.     </mapping>
  1061.  
  1062.     <mapping java-type="java.lang.Integer" jdbc-type="INTEGER" sql-type="INTEGER" default="true"
  1063.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.IntegerRDBMSMapping">
  1064.       <excludes vendor-id="sqlserver"/>
  1065.     </mapping>
  1066.     <mapping java-type="java.lang.Integer" jdbc-type="BIGINT" sql-type="BIGINT" default="false"
  1067.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.BigIntRDBMSMapping">
  1068.       <excludes vendor-id="sapdb"/>
  1069.       <excludes vendor-id="sybase"/>
  1070.     </mapping>
  1071.     <mapping java-type="java.lang.Integer" jdbc-type="NUMERIC" sql-type="NUMERIC" default="false"
  1072.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1073.       <excludes vendor-id="sapdb"/>
  1074.     </mapping>
  1075.     <mapping java-type="java.lang.Integer" jdbc-type="INTEGER" sql-type="INT" default="true"
  1076.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.IntegerRDBMSMapping">
  1077.       <includes vendor-id="derby"/>
  1078.       <includes vendor-id="sapdb"/>
  1079.       <includes vendor-id="sqlserver"/>
  1080.       <includes vendor-id="sybase"/>
  1081.     </mapping>
  1082.     <mapping java-type="java.lang.Integer" jdbc-type="NUMERIC" sql-type="NUMERIC" default="true"
  1083.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1084.       <includes vendor-id="oracle"/>
  1085.     </mapping>
  1086.     <mapping java-type="java.lang.Integer" jdbc-type="NUMERIC" sql-type="NUMBER" default="false"
  1087.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1088.       <includes vendor-id="oracle"/>
  1089.     </mapping>
  1090.     <mapping java-type="java.lang.Integer" jdbc-type="TINYINT" sql-type="TINYINT" default="false"
  1091.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.TinyIntRDBMSMapping">
  1092.       <excludes vendor-id="db2"/>
  1093.       <excludes vendor-id="derby"/>
  1094.       <excludes vendor-id="sapdb"/>
  1095.       <excludes vendor-id="sqlserver"/>
  1096.       <excludes vendor-id="nuodb"/>
  1097.     </mapping>
  1098.     <mapping java-type="java.lang.Integer" jdbc-type="SMALLINT" sql-type="SMALLINT" default="false"
  1099.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.SmallIntRDBMSMapping"/>
  1100.     <mapping java-type="java.lang.Integer" jdbc-type="BIGINT" sql-type="BIGINT" default="false"
  1101.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.BigIntRDBMSMapping">
  1102.       <excludes vendor-id="sapdb"/>
  1103.       <excludes vendor-id="sybase"/>
  1104.     </mapping>
  1105.  
  1106.     <mapping java-type="java.lang.Long" jdbc-type="BIGINT" sql-type="BIGINT" default="true"
  1107.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.BigIntRDBMSMapping">
  1108.       <excludes vendor-id="sapdb"/>
  1109.       <excludes vendor-id="sybase"/>
  1110.     </mapping>
  1111.     <mapping java-type="java.lang.Long" jdbc-type="INTEGER" sql-type="INT" default="false"
  1112.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.IntegerRDBMSMapping">
  1113.       <excludes vendor-id="sybase"/>
  1114.     </mapping>
  1115.     <mapping java-type="java.lang.Long" jdbc-type="NUMERIC" sql-type="NUMERIC" default="false"
  1116.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1117.       <excludes vendor-id="sapdb"/>
  1118.     </mapping>
  1119.     <mapping java-type="java.lang.Long" jdbc-type="DOUBLE" sql-type="DOUBLE" default="false"
  1120.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.DoubleRDBMSMapping">
  1121.       <includes vendor-id="sapdb"/>
  1122.     </mapping>
  1123.     <mapping java-type="java.lang.Long" jdbc-type="DECIMAL" sql-type="NUMERIC" default="true"
  1124.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.DecimalRDBMSMapping">
  1125.       <includes vendor-id="sapdb"/>
  1126.     </mapping>
  1127.     <mapping java-type="java.lang.Long" jdbc-type="INTEGER" sql-type="INT" default="true"
  1128.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.IntegerRDBMSMapping">
  1129.       <includes vendor-id="sybase"/>
  1130.     </mapping>
  1131.     <mapping java-type="java.lang.Long" jdbc-type="NUMERIC" sql-type="NUMERIC" default="true"
  1132.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1133.       <includes vendor-id="oracle"/>
  1134.     </mapping>
  1135.     <mapping java-type="java.lang.Long" jdbc-type="NUMERIC" sql-type="NUMBER" default="false"
  1136.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1137.       <includes vendor-id="oracle"/>
  1138.     </mapping>
  1139.     <mapping java-type="java.lang.Long" jdbc-type="TINYINT" sql-type="TINYINT" default="false"
  1140.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.TinyIntRDBMSMapping">
  1141.       <excludes vendor-id="db2"/>
  1142.       <excludes vendor-id="derby"/>
  1143.       <excludes vendor-id="sapdb"/>
  1144.       <excludes vendor-id="sqlserver"/>
  1145.       <excludes vendor-id="nuodb"/>
  1146.     </mapping>
  1147.     <mapping java-type="java.lang.Long" jdbc-type="SMALLINT" sql-type="SMALLINT" default="false"
  1148.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.SmallIntRDBMSMapping"/>
  1149.  
  1150.     <mapping java-type="java.lang.Short" jdbc-type="SMALLINT" sql-type="SMALLINT" default="true"
  1151.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.SmallIntRDBMSMapping"/>
  1152.     <mapping java-type="java.lang.Short" jdbc-type="INTEGER" sql-type="INTEGER" default="false"
  1153.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.IntegerRDBMSMapping">
  1154.       <excludes vendor-id="sqlserver"/>
  1155.     </mapping>
  1156.     <mapping java-type="java.lang.Short" jdbc-type="INTEGER" sql-type="INT" default="false"
  1157.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.IntegerRDBMSMapping">
  1158.       <includes vendor-id="derby"/>
  1159.       <includes vendor-id="sapdb"/>
  1160.       <includes vendor-id="sqlserver"/>
  1161.       <includes vendor-id="sybase"/>
  1162.     </mapping>
  1163.     <mapping java-type="java.lang.Short" jdbc-type="NUMERIC" sql-type="NUMERIC" default="true"
  1164.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1165.       <includes vendor-id="oracle"/>
  1166.     </mapping>
  1167.     <mapping java-type="java.lang.Short" jdbc-type="NUMERIC" sql-type="NUMBER" default="false"
  1168.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1169.       <includes vendor-id="oracle"/>
  1170.     </mapping>
  1171.     <mapping java-type="java.lang.Short" jdbc-type="TINYINT" sql-type="TINYINT" default="false"
  1172.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.TinyIntRDBMSMapping">
  1173.       <excludes vendor-id="db2"/>
  1174.       <excludes vendor-id="derby"/>
  1175.       <excludes vendor-id="sapdb"/>
  1176.       <excludes vendor-id="sqlserver"/>
  1177.       <excludes vendor-id="nuodb"/>
  1178.     </mapping>
  1179.  
  1180.     <mapping java-type="java.lang.String" jdbc-type="VARCHAR" sql-type="VARCHAR" default="true"
  1181.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.VarCharRDBMSMapping"/>
  1182.     <mapping java-type="java.lang.String" jdbc-type="CHAR" sql-type="CHAR" default="false"
  1183.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.CharRDBMSMapping"/>
  1184.     <mapping java-type="java.lang.String" jdbc-type="BIGINT" sql-type="BIGINT" default="false"
  1185.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.BigIntRDBMSMapping"/>
  1186.     <mapping java-type="java.lang.String" jdbc-type="LONGVARCHAR" sql-type="LONGVARCHAR" default="false"
  1187.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.LongVarcharRDBMSMapping"/>
  1188.     <mapping java-type="java.lang.String" jdbc-type="CLOB" sql-type="CLOB" default="false"
  1189.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.ClobRDBMSMapping">
  1190.       <excludes vendor-id="oracle"/>
  1191.     </mapping>
  1192.     <mapping java-type="java.lang.String" jdbc-type="CLOB" sql-type="CLOB" default="false"
  1193.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.OracleClobRDBMSMapping">
  1194.       <includes vendor-id="oracle"/>
  1195.     </mapping>
  1196.     <mapping java-type="java.lang.String" jdbc-type="BLOB" sql-type="BLOB" default="false"
  1197.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.BlobRDBMSMapping">
  1198.       <excludes vendor-id="oracle"/>
  1199.     </mapping>
  1200.     <mapping java-type="java.lang.String" jdbc-type="BLOB" sql-type="BLOB" default="false"
  1201.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.OracleBlobRDBMSMapping">
  1202.       <includes vendor-id="oracle"/>
  1203.     </mapping>
  1204.     <mapping java-type="java.lang.String" jdbc-type="DATALINK" sql-type="DATALINK" default="false"
  1205.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.DB2DatalinkRDBMSMapping">
  1206.       <includes vendor-id="db2"/>
  1207.     </mapping>
  1208.     <mapping java-type="java.lang.String" jdbc-type="CHAR" sql-type="UNIQUEIDENTIFIER" default="false"
  1209.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.CharRDBMSMapping">
  1210.       <includes vendor-id="sqlserver"/>
  1211.     </mapping>
  1212.     <mapping java-type="java.lang.String" jdbc-type="SQLXML" sql-type="SQLXML" default="false"
  1213.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.SqlXmlRDBMSMapping">
  1214.       <includes vendor-id="db2"/>
  1215.     </mapping>
  1216.     <mapping java-type="java.lang.String" jdbc-type="LONGVARCHAR" sql-type="LONGTEXT" default="false"
  1217.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.LongVarcharRDBMSMapping">
  1218.       <includes vendor-id="mysql"/>
  1219.     </mapping>
  1220.     <mapping java-type="java.lang.String" jdbc-type="LONGVARCHAR" sql-type="MEDIUMTEXT" default="false"
  1221.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.LongVarcharRDBMSMapping">
  1222.       <includes vendor-id="mysql"/>
  1223.     </mapping>
  1224.     <mapping java-type="java.lang.String" jdbc-type="LONGVARCHAR" sql-type="TEXT" default="false"
  1225.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.LongVarcharRDBMSMapping">
  1226.       <includes vendor-id="mysql"/>
  1227.     </mapping>
  1228.     <mapping java-type="java.lang.String" jdbc-type="BLOB" sql-type="LONGBLOB" default="false"
  1229.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.BlobRDBMSMapping">
  1230.       <includes vendor-id="mysql"/>
  1231.     </mapping>
  1232.     <mapping java-type="java.lang.String" jdbc-type="BLOB" sql-type="MEDIUMBLOB" default="false"
  1233.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.BlobRDBMSMapping">
  1234.       <includes vendor-id="mysql"/>
  1235.     </mapping>
  1236.     <mapping java-type="java.lang.String" jdbc-type="XMLTYPE" sql-type="XMLTYPE" default="false"
  1237.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.OracleXMLTypeRDBMSMapping">
  1238.       <includes vendor-id="oracle"/>
  1239.     </mapping>
  1240.     <mapping java-type="java.lang.String" jdbc-type="NVARCHAR" sql-type="NVARCHAR" default="false"
  1241.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NVarcharRDBMSMapping"/>
  1242.     <mapping java-type="java.lang.String" jdbc-type="NCHAR" sql-type="NCHAR" default="false"
  1243.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NCharRDBMSMapping"/>
  1244.  
  1245.     <mapping java-type="java.math.BigDecimal" jdbc-type="DECIMAL" sql-type="DECIMAL" default="true"
  1246.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.DecimalRDBMSMapping">
  1247.       <excludes vendor-id="postgresql"/>
  1248.     </mapping>
  1249.     <mapping java-type="java.math.BigDecimal" jdbc-type="NUMERIC" sql-type="NUMERIC" default="false"
  1250.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1251.       <excludes vendor-id="sapdb"/>
  1252.     </mapping>
  1253.     <mapping java-type="java.math.BigDecimal" jdbc-type="NUMERIC" sql-type="NUMERIC" default="false"
  1254.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1255.       <includes vendor-id="postgresql"/>
  1256.     </mapping>
  1257.     <mapping java-type="java.math.BigDecimal" jdbc-type="NUMERIC" sql-type="NUMERIC" default="true"
  1258.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1259.       <includes vendor-id="oracle"/>
  1260.     </mapping>
  1261.     <mapping java-type="java.math.BigDecimal" jdbc-type="NUMERIC" sql-type="NUMBER" default="false"
  1262.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1263.       <includes vendor-id="oracle"/>
  1264.     </mapping>
  1265.  
  1266.     <mapping java-type="java.math.BigInteger" jdbc-type="NUMERIC" sql-type="NUMERIC" default="true"
  1267.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1268.       <excludes vendor-id="sapdb"/>
  1269.     </mapping>
  1270.     <mapping java-type="java.math.BigInteger" jdbc-type="DECIMAL" sql-type="NUMERIC" default="true"
  1271.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.DecimalRDBMSMapping">
  1272.       <includes vendor-id="sapdb"/>
  1273.     </mapping>
  1274.     <mapping java-type="java.math.BigInteger" jdbc-type="NUMERIC" sql-type="NUMBER" default="false"
  1275.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1276.       <includes vendor-id="oracle"/>
  1277.     </mapping>
  1278.  
  1279.     <mapping java-type="java.sql.Date" jdbc-type="DATE" sql-type="DATE" default="true"
  1280.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.DateRDBMSMapping"/>
  1281.     <mapping java-type="java.sql.Date" jdbc-type="TIMESTAMP" sql-type="TIMESTAMP" default="false"
  1282.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.TimestampRDBMSMapping"/>
  1283.     <mapping java-type="java.sql.Date" jdbc-type="CHAR" sql-type="CHAR" default="false"
  1284.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.CharRDBMSMapping"/>
  1285.     <mapping java-type="java.sql.Date" jdbc-type="VARCHAR" sql-type="VARCHAR" default="false"
  1286.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.VarCharRDBMSMapping"/>
  1287.     <mapping java-type="java.sql.Date" jdbc-type="BIGINT" sql-type="BIGINT" default="false"
  1288.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.BigIntRDBMSMapping">
  1289.       <excludes vendor-id="sapdb"/>
  1290.       <excludes vendor-id="sybase"/>
  1291.     </mapping>
  1292.  
  1293.     <mapping java-type="java.sql.Time" jdbc-type="TIME" sql-type="TIME" default="true"
  1294.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.TimeRDBMSMapping"/>
  1295.     <mapping java-type="java.sql.Time" jdbc-type="TIMESTAMP" sql-type="TIMESTAMP" default="false"
  1296.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.TimestampRDBMSMapping"/>
  1297.     <mapping java-type="java.sql.Time" jdbc-type="CHAR" sql-type="CHAR" default="false"
  1298.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.CharRDBMSMapping"/>
  1299.     <mapping java-type="java.sql.Time" jdbc-type="VARCHAR" sql-type="VARCHAR" default="false"
  1300.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.VarCharRDBMSMapping"/>
  1301.     <mapping java-type="java.sql.Time" jdbc-type="BIGINT" sql-type="BIGINT" default="false"
  1302.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.BigIntRDBMSMapping">
  1303.       <excludes vendor-id="sapdb"/>
  1304.       <excludes vendor-id="sybase"/>
  1305.     </mapping>
  1306.  
  1307.     <mapping java-type="java.sql.Timestamp" jdbc-type="TIMESTAMP" sql-type="TIMESTAMP" default="true"
  1308.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.TimestampRDBMSMapping"/>
  1309.     <mapping java-type="java.sql.Timestamp" jdbc-type="CHAR" sql-type="CHAR" default="false"
  1310.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.CharRDBMSMapping"/>
  1311.     <mapping java-type="java.sql.Timestamp" jdbc-type="VARCHAR" sql-type="VARCHAR" default="false"
  1312.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.VarCharRDBMSMapping"/>
  1313.     <mapping java-type="java.sql.Timestamp" jdbc-type="DATE" sql-type="DATE" default="false"
  1314.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.DateRDBMSMapping"/>
  1315.     <mapping java-type="java.sql.Timestamp" jdbc-type="TIME" sql-type="TIME" default="false"
  1316.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.TimeRDBMSMapping"/>
  1317.  
  1318.     <mapping java-type="java.util.Date" jdbc-type="TIMESTAMP" sql-type="TIMESTAMP" default="true"
  1319.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.TimestampRDBMSMapping"/>
  1320.     <mapping java-type="java.util.Date" jdbc-type="DATE" sql-type="DATE" default="false"
  1321.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.DateRDBMSMapping"/>
  1322.     <mapping java-type="java.util.Date" jdbc-type="CHAR" sql-type="CHAR" default="false"
  1323.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.CharRDBMSMapping"/>
  1324.     <mapping java-type="java.util.Date" jdbc-type="VARCHAR" sql-type="VARCHAR" default="false"
  1325.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.VarCharRDBMSMapping"/>
  1326.     <mapping java-type="java.util.Date" jdbc-type="BIGINT" sql-type="BIGINT" default="false"
  1327.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.BigIntRDBMSMapping">
  1328.       <excludes vendor-id="sapdb"/>
  1329.       <excludes vendor-id="sybase"/>
  1330.     </mapping>
  1331.     <mapping java-type="java.util.Date" jdbc-type="TIME" sql-type="TIME" default="false"
  1332.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.TimeRDBMSMapping"/>
  1333.  
  1334.     <mapping java-type="java.util.UUID" jdbc-type="OTHER" sql-type="UUID" default="false"
  1335.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.OtherRDBMSMapping">
  1336.       <includes vendor-id="postgresql"/>
  1337.     </mapping>
  1338.  
  1339.     <mapping java-type="java.io.Serializable" jdbc-type="LONGVARBINARY" sql-type="LONGVARBINARY" default="true"
  1340.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.LongVarBinaryRDBMSMapping">
  1341.     </mapping>
  1342.     <mapping java-type="java.io.Serializable" jdbc-type="BLOB" sql-type="BLOB" default="false"
  1343.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.BlobRDBMSMapping">
  1344.       <excludes vendor-id="oracle"/>
  1345.     </mapping>
  1346.     <mapping java-type="java.io.Serializable" jdbc-type="BLOB" sql-type="BLOB" default="true"
  1347.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.OracleBlobRDBMSMapping">
  1348.       <includes vendor-id="oracle"/>
  1349.     </mapping>
  1350.     <mapping java-type="java.io.Serializable" jdbc-type="VARBINARY" sql-type="VARBINARY" default="false"
  1351.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.VarBinaryRDBMSMapping">
  1352.       <excludes vendor-id="timesten"/>
  1353.     </mapping>
  1354.     <mapping java-type="java.io.Serializable" jdbc-type="VARBINARY" sql-type="VARBINARY" default="true"
  1355.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.TimesTenVarBinaryRDBMSMapping">
  1356.       <includes vendor-id="timesten"/>
  1357.     </mapping>
  1358.     <mapping java-type="java.io.File" jdbc-type="LONGVARBINARY" sql-type="LONGVARBINARY" default="true"
  1359.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.BinaryStreamRDBMSMapping">
  1360.     </mapping>
  1361.  
  1362.     <mapping java-type="org.datanucleus.identity.DatastoreId" jdbc-type="BIGINT" sql-type="BIGINT" default="true"
  1363.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.BigIntRDBMSMapping">
  1364.       <excludes vendor-id="sapdb"/>
  1365.       <excludes vendor-id="sybase"/>
  1366.     </mapping>
  1367.     <mapping java-type="org.datanucleus.identity.DatastoreId" jdbc-type="INTEGER" sql-type="INTEGER" default="false"
  1368.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.IntegerRDBMSMapping">
  1369.       <excludes vendor-id="sqlserver"/>
  1370.     </mapping>
  1371.     <mapping java-type="org.datanucleus.identity.DatastoreId" jdbc-type="NUMERIC" sql-type="NUMERIC" default="false"
  1372.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1373.       <excludes vendor-id="sapdb"/>
  1374.     </mapping>
  1375.     <mapping java-type="org.datanucleus.identity.DatastoreId" jdbc-type="CHAR" sql-type="CHAR" default="false"
  1376.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.CharRDBMSMapping"/>
  1377.     <mapping java-type="org.datanucleus.identity.DatastoreId" jdbc-type="VARCHAR" sql-type="VARCHAR" default="false"
  1378.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.VarCharRDBMSMapping"/>
  1379.     <mapping java-type="org.datanucleus.identity.DatastoreId" jdbc-type="INTEGER" sql-type="INT" default="true"
  1380.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.IntegerRDBMSMapping">
  1381.       <includes vendor-id="sapdb"/>
  1382.       <includes vendor-id="sqlserver"/>
  1383.       <includes vendor-id="sybase"/>
  1384.     </mapping>
  1385.     <mapping java-type="org.datanucleus.identity.DatastoreId" jdbc-type="NUMERIC" sql-type="NUMERIC" default="true"
  1386.             rdbms-mapping-class="org.datanucleus.store.rdbms.mapping.datastore.NumericRDBMSMapping">
  1387.       <includes vendor-id="oracle"/>
  1388.     </mapping>
  1389.   </extension>
  1390.  
  1391.   <!-- IDENTIFIER FACTORIES. TODO Adopt NamingFactory -->
  1392.   <extension point="org.datanucleus.store.rdbms.identifierfactory">
  1393.     <identifierfactory name="datanucleus2" class-name="org.datanucleus.store.rdbms.identifier.DN2IdentifierFactory"/>
  1394.     <identifierfactory name="jpa" class-name="org.datanucleus.store.rdbms.identifier.JPAIdentifierFactory"/>
  1395.     <identifierfactory name="datanucleus1" class-name="org.datanucleus.store.rdbms.identifier.DNIdentifierFactory"/>
  1396.     <identifierfactory name="jpox" class-name="org.datanucleus.store.rdbms.identifier.JPOXIdentifierFactory"/>
  1397.   </extension>
  1398.  
  1399.   <!-- SQL EXPRESSIONS -->
  1400.   <extension point="org.datanucleus.store.rdbms.sql_expression">
  1401.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.ArrayMapping"
  1402.                    literal-class="org.datanucleus.store.rdbms.sql.expression.ArrayLiteral"
  1403.                    expression-class="org.datanucleus.store.rdbms.sql.expression.ArrayExpression"/>
  1404.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.OracleArrayMapping"
  1405.                    literal-class="org.datanucleus.store.rdbms.sql.expression.ArrayLiteral"
  1406.                    expression-class="org.datanucleus.store.rdbms.sql.expression.ArrayExpression"/>
  1407.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.BigDecimalMapping"
  1408.                    literal-class="org.datanucleus.store.rdbms.sql.expression.FloatingPointLiteral"
  1409.                    expression-class="org.datanucleus.store.rdbms.sql.expression.NumericExpression"/>
  1410.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.BigIntegerMapping"
  1411.                    literal-class="org.datanucleus.store.rdbms.sql.expression.IntegerLiteral"
  1412.                    expression-class="org.datanucleus.store.rdbms.sql.expression.NumericExpression"/>
  1413.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.BooleanMapping"
  1414.                    literal-class="org.datanucleus.store.rdbms.sql.expression.BooleanLiteral"
  1415.                    expression-class="org.datanucleus.store.rdbms.sql.expression.BooleanExpression"/>
  1416.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.ByteMapping"
  1417.                    literal-class="org.datanucleus.store.rdbms.sql.expression.ByteLiteral"
  1418.                    expression-class="org.datanucleus.store.rdbms.sql.expression.ByteExpression"/>
  1419.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.CharacterMapping"
  1420.                    literal-class="org.datanucleus.store.rdbms.sql.expression.CharacterLiteral"
  1421.                    expression-class="org.datanucleus.store.rdbms.sql.expression.CharacterExpression"/>
  1422.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.CollectionMapping"
  1423.                    literal-class="org.datanucleus.store.rdbms.sql.expression.CollectionLiteral"
  1424.                    expression-class="org.datanucleus.store.rdbms.sql.expression.CollectionExpression"/>
  1425.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.OracleCollectionMapping"
  1426.                    literal-class="org.datanucleus.store.rdbms.sql.expression.CollectionLiteral"
  1427.                    expression-class="org.datanucleus.store.rdbms.sql.expression.CollectionExpression"/>
  1428.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.DateMapping"
  1429.                    literal-class="org.datanucleus.store.rdbms.sql.expression.TemporalLiteral"
  1430.                    expression-class="org.datanucleus.store.rdbms.sql.expression.TemporalExpression"/>
  1431.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.DiscriminatorLongMapping"
  1432.                    literal-class="org.datanucleus.store.rdbms.sql.expression.IntegerLiteral"
  1433.                    expression-class="org.datanucleus.store.rdbms.sql.expression.NumericExpression"/>
  1434.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.DiscriminatorStringMapping"
  1435.                    literal-class="org.datanucleus.store.rdbms.sql.expression.StringLiteral"
  1436.                    expression-class="org.datanucleus.store.rdbms.sql.expression.StringExpression"/>
  1437.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.DoubleMapping"
  1438.                    literal-class="org.datanucleus.store.rdbms.sql.expression.FloatingPointLiteral"
  1439.                    expression-class="org.datanucleus.store.rdbms.sql.expression.NumericExpression"/>
  1440.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.EnumMapping"
  1441.                    literal-class="org.datanucleus.store.rdbms.sql.expression.EnumLiteral"
  1442.                    expression-class="org.datanucleus.store.rdbms.sql.expression.EnumExpression"/>
  1443.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.FloatMapping"
  1444.                    literal-class="org.datanucleus.store.rdbms.sql.expression.FloatingPointLiteral"
  1445.                    expression-class="org.datanucleus.store.rdbms.sql.expression.NumericExpression"/>
  1446.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.GregorianCalendarMapping"
  1447.                    literal-class="org.datanucleus.store.rdbms.sql.expression.TemporalLiteral"
  1448.                    expression-class="org.datanucleus.store.rdbms.sql.expression.TemporalExpression"/>
  1449.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.IndexMapping"
  1450.                    literal-class="org.datanucleus.store.rdbms.sql.expression.IntegerLiteral"
  1451.                    expression-class="org.datanucleus.store.rdbms.sql.expression.NumericExpression"/>
  1452.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.IntegerMapping"
  1453.                    literal-class="org.datanucleus.store.rdbms.sql.expression.IntegerLiteral"
  1454.                    expression-class="org.datanucleus.store.rdbms.sql.expression.NumericExpression"/>
  1455.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.LongMapping"
  1456.                    literal-class="org.datanucleus.store.rdbms.sql.expression.IntegerLiteral"
  1457.                    expression-class="org.datanucleus.store.rdbms.sql.expression.NumericExpression"/>
  1458.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.MapMapping"
  1459.                    literal-class="org.datanucleus.store.rdbms.sql.expression.MapLiteral"
  1460.                    expression-class="org.datanucleus.store.rdbms.sql.expression.MapExpression"/>
  1461.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.OracleMapMapping"
  1462.                    literal-class="org.datanucleus.store.rdbms.sql.expression.MapLiteral"
  1463.                    expression-class="org.datanucleus.store.rdbms.sql.expression.MapExpression"/>
  1464.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.NumberMapping"
  1465.                    literal-class="org.datanucleus.store.rdbms.sql.expression.FloatingPointLiteral"
  1466.                    expression-class="org.datanucleus.store.rdbms.sql.expression.NumericExpression"/>
  1467.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.DatastoreIdMapping"
  1468.                    literal-class="org.datanucleus.store.rdbms.sql.expression.ObjectLiteral"
  1469.                    expression-class="org.datanucleus.store.rdbms.sql.expression.ObjectExpression"/>
  1470.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.PersistableMapping"
  1471.                    literal-class="org.datanucleus.store.rdbms.sql.expression.ObjectLiteral"
  1472.                    expression-class="org.datanucleus.store.rdbms.sql.expression.ObjectExpression"/>
  1473.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.PersistableIdMapping"
  1474.                    literal-class="org.datanucleus.store.rdbms.sql.expression.ObjectLiteral"
  1475.                    expression-class="org.datanucleus.store.rdbms.sql.expression.ObjectExpression"/>
  1476.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.ReferenceIdMapping"
  1477.                    literal-class="org.datanucleus.store.rdbms.sql.expression.ObjectLiteral"
  1478.                    expression-class="org.datanucleus.store.rdbms.sql.expression.ObjectExpression"/>
  1479.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.ObjectMapping"
  1480.                    literal-class="org.datanucleus.store.rdbms.sql.expression.ObjectLiteral"
  1481.                    expression-class="org.datanucleus.store.rdbms.sql.expression.ObjectExpression"/>
  1482.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.EmbeddedPCMapping"
  1483.                    literal-class="org.datanucleus.store.rdbms.sql.expression.ObjectLiteral"
  1484.                    expression-class="org.datanucleus.store.rdbms.sql.expression.ObjectExpression"/>
  1485.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.EmbeddedElementPCMapping"
  1486.                    literal-class="org.datanucleus.store.rdbms.sql.expression.ObjectLiteral"
  1487.                    expression-class="org.datanucleus.store.rdbms.sql.expression.ObjectExpression"/>
  1488.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.EmbeddedKeyPCMapping"
  1489.                    literal-class="org.datanucleus.store.rdbms.sql.expression.ObjectLiteral"
  1490.                    expression-class="org.datanucleus.store.rdbms.sql.expression.ObjectExpression"/>
  1491.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.EmbeddedValuePCMapping"
  1492.                    literal-class="org.datanucleus.store.rdbms.sql.expression.ObjectLiteral"
  1493.                    expression-class="org.datanucleus.store.rdbms.sql.expression.ObjectExpression"/>
  1494.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.ReferenceMapping"
  1495.                    literal-class="org.datanucleus.store.rdbms.sql.expression.ObjectLiteral"
  1496.                    expression-class="org.datanucleus.store.rdbms.sql.expression.ObjectExpression"/>
  1497.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.InterfaceMapping"
  1498.                    literal-class="org.datanucleus.store.rdbms.sql.expression.ObjectLiteral"
  1499.                    expression-class="org.datanucleus.store.rdbms.sql.expression.ObjectExpression"/>
  1500.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.ShortMapping"
  1501.                    literal-class="org.datanucleus.store.rdbms.sql.expression.IntegerLiteral"
  1502.                    expression-class="org.datanucleus.store.rdbms.sql.expression.NumericExpression"/>
  1503.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.SqlDateMapping"
  1504.                    literal-class="org.datanucleus.store.rdbms.sql.expression.TemporalLiteral"
  1505.                    expression-class="org.datanucleus.store.rdbms.sql.expression.TemporalExpression"/>
  1506.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.SqlTimeMapping"
  1507.                    literal-class="org.datanucleus.store.rdbms.sql.expression.TemporalLiteral"
  1508.                    expression-class="org.datanucleus.store.rdbms.sql.expression.TemporalExpression"/>
  1509.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.SqlTimestampMapping"
  1510.                    literal-class="org.datanucleus.store.rdbms.sql.expression.TemporalLiteral"
  1511.                    expression-class="org.datanucleus.store.rdbms.sql.expression.TemporalExpression"/>
  1512.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.StringMapping"
  1513.                    literal-class="org.datanucleus.store.rdbms.sql.expression.StringLiteral"
  1514.                    expression-class="org.datanucleus.store.rdbms.sql.expression.StringExpression"/>
  1515.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.OracleStringLobMapping"
  1516.                    literal-class="org.datanucleus.store.rdbms.sql.expression.StringLiteral"
  1517.                    expression-class="org.datanucleus.store.rdbms.sql.expression.StringExpression"/>
  1518.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.VersionLongMapping"
  1519.                    literal-class="org.datanucleus.store.rdbms.sql.expression.IntegerLiteral"
  1520.                    expression-class="org.datanucleus.store.rdbms.sql.expression.NumericExpression"/>
  1521.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.VersionTimestampMapping"
  1522.                    literal-class="org.datanucleus.store.rdbms.sql.expression.TemporalLiteral"
  1523.                    expression-class="org.datanucleus.store.rdbms.sql.expression.TemporalExpression"/>
  1524.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.ClassMapping"
  1525.                    literal-class="org.datanucleus.store.rdbms.sql.expression.StringLiteral"
  1526.                    expression-class="org.datanucleus.store.rdbms.sql.expression.StringExpression"/>
  1527.  
  1528.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.UUIDMapping"
  1529.                    literal-class="org.datanucleus.store.rdbms.sql.expression.StringLiteral"
  1530.                    expression-class="org.datanucleus.store.rdbms.sql.expression.StringExpression"/>
  1531.  
  1532.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.TypeConverterMapping"
  1533.                    literal-class="org.datanucleus.store.rdbms.sql.expression.TypeConverterLiteral"
  1534.                    expression-class="org.datanucleus.store.rdbms.sql.expression.TypeConverterExpression"/>
  1535.     <sql-expression mapping-class="org.datanucleus.store.rdbms.mapping.java.TypeConverterMultiMapping"
  1536.                    literal-class="org.datanucleus.store.rdbms.sql.expression.TypeConverterMultiLiteral"
  1537.                    expression-class="org.datanucleus.store.rdbms.sql.expression.TypeConverterMultiExpression"/>
  1538.   </extension>
  1539.  
  1540.   <!-- SQL METHODS -->
  1541.   <extension point="org.datanucleus.store.rdbms.sql_method">
  1542.     <sql-method method="abs" evaluator="org.datanucleus.store.rdbms.sql.method.AbsFunction"/>
  1543.     <sql-method method="acos" evaluator="org.datanucleus.store.rdbms.sql.method.AcosFunction"/>
  1544.     <sql-method method="asin" evaluator="org.datanucleus.store.rdbms.sql.method.AsinFunction"/>
  1545.     <sql-method method="atan" evaluator="org.datanucleus.store.rdbms.sql.method.AtanFunction"/>
  1546.     <sql-method method="avg" evaluator="org.datanucleus.store.rdbms.sql.method.AvgFunction"/>
  1547.     <sql-method method="avg" evaluator="org.datanucleus.store.rdbms.sql.method.AvgWithCastFunction" datastore="h2"/>
  1548.     <sql-method method="avg" evaluator="org.datanucleus.store.rdbms.sql.method.AvgWithCastFunction" datastore="hsql"/>
  1549.     <sql-method method="avg" evaluator="org.datanucleus.store.rdbms.sql.method.AvgWithCastFunction" datastore="derby"/>
  1550.     <sql-method method="ceil" evaluator="org.datanucleus.store.rdbms.sql.method.CeilFunction"/>
  1551.     <sql-method method="cos" evaluator="org.datanucleus.store.rdbms.sql.method.CosFunction"/>
  1552.     <sql-method method="count" evaluator="org.datanucleus.store.rdbms.sql.method.CountFunction"/>
  1553.     <sql-method method="exp" evaluator="org.datanucleus.store.rdbms.sql.method.ExpFunction"/>
  1554.     <sql-method method="floor" evaluator="org.datanucleus.store.rdbms.sql.method.FloorFunction"/>
  1555.     <sql-method method="log" evaluator="org.datanucleus.store.rdbms.sql.method.LogFunction"/>
  1556.     <sql-method method="log" evaluator="org.datanucleus.store.rdbms.sql.method.LogFunction2" datastore="postgresql"/>
  1557.     <sql-method method="max" evaluator="org.datanucleus.store.rdbms.sql.method.MaxFunction"/>
  1558.     <sql-method method="min" evaluator="org.datanucleus.store.rdbms.sql.method.MinFunction"/>
  1559.     <sql-method method="sin" evaluator="org.datanucleus.store.rdbms.sql.method.SinFunction"/>
  1560.     <sql-method method="sqrt" evaluator="org.datanucleus.store.rdbms.sql.method.SqrtFunction"/>
  1561.     <sql-method method="sum" evaluator="org.datanucleus.store.rdbms.sql.method.SumFunction"/>
  1562.     <sql-method method="tan" evaluator="org.datanucleus.store.rdbms.sql.method.TanFunction"/>
  1563.     <sql-method method="degrees" evaluator="org.datanucleus.store.rdbms.sql.method.DegreesFunction"/>
  1564.     <sql-method method="radians" evaluator="org.datanucleus.store.rdbms.sql.method.RadiansFunction"/>
  1565.     <sql-method method="ABS" evaluator="org.datanucleus.store.rdbms.sql.method.AbsFunction"/>
  1566.     <sql-method method="ACOS" evaluator="org.datanucleus.store.rdbms.sql.method.AcosFunction"/>
  1567.     <sql-method method="ASIN" evaluator="org.datanucleus.store.rdbms.sql.method.AsinFunction"/>
  1568.     <sql-method method="ATAN" evaluator="org.datanucleus.store.rdbms.sql.method.AtanFunction"/>
  1569.     <sql-method method="AVG" evaluator="org.datanucleus.store.rdbms.sql.method.AvgFunction"/>
  1570.     <sql-method method="AVG" evaluator="org.datanucleus.store.rdbms.sql.method.AvgWithCastFunction" datastore="h2"/>
  1571.     <sql-method method="AVG" evaluator="org.datanucleus.store.rdbms.sql.method.AvgWithCastFunction" datastore="hsql"/>
  1572.     <sql-method method="AVG" evaluator="org.datanucleus.store.rdbms.sql.method.AvgWithCastFunction" datastore="derby"/>
  1573.     <sql-method method="CEIL" evaluator="org.datanucleus.store.rdbms.sql.method.CeilFunction"/>
  1574.     <sql-method method="COS" evaluator="org.datanucleus.store.rdbms.sql.method.CosFunction"/>
  1575.     <sql-method method="COUNT" evaluator="org.datanucleus.store.rdbms.sql.method.CountFunction"/>
  1576.     <sql-method method="COUNTSTAR" evaluator="org.datanucleus.store.rdbms.sql.method.CountStarFunction"/>
  1577.     <sql-method method="EXP" evaluator="org.datanucleus.store.rdbms.sql.method.ExpFunction"/>
  1578.     <sql-method method="FLOOR" evaluator="org.datanucleus.store.rdbms.sql.method.FloorFunction"/>
  1579.     <sql-method method="LOG" evaluator="org.datanucleus.store.rdbms.sql.method.LogFunction"/>
  1580.     <sql-method method="MAX" evaluator="org.datanucleus.store.rdbms.sql.method.MaxFunction"/>
  1581.     <sql-method method="MIN" evaluator="org.datanucleus.store.rdbms.sql.method.MinFunction"/>
  1582.     <sql-method method="SIN" evaluator="org.datanucleus.store.rdbms.sql.method.SinFunction"/>
  1583.     <sql-method method="SQRT" evaluator="org.datanucleus.store.rdbms.sql.method.SqrtFunction"/>
  1584.     <sql-method method="SUM" evaluator="org.datanucleus.store.rdbms.sql.method.SumFunction"/>
  1585.     <sql-method method="TAN" evaluator="org.datanucleus.store.rdbms.sql.method.TanFunction"/>
  1586.     <sql-method method="RADIANS" evaluator="org.datanucleus.store.rdbms.sql.method.RadiansFunction"/>
  1587.     <sql-method method="DEGREES" evaluator="org.datanucleus.store.rdbms.sql.method.DegreesFunction"/>
  1588.     <sql-method method="COALESCE" evaluator="org.datanucleus.store.rdbms.sql.method.CoalesceFunction"/>
  1589.     <sql-method method="NULLIF" evaluator="org.datanucleus.store.rdbms.sql.method.NullIfFunction"/>
  1590.     <sql-method method="INDEX" evaluator="org.datanucleus.store.rdbms.sql.method.IndexFunction"/>
  1591.     <sql-method method="CURRENT_DATE" evaluator="org.datanucleus.store.rdbms.sql.method.CurrentDateFunction"/>
  1592.     <sql-method method="CURRENT_TIME" evaluator="org.datanucleus.store.rdbms.sql.method.CurrentTimeFunction"/>
  1593.     <sql-method method="CURRENT_TIMESTAMP" evaluator="org.datanucleus.store.rdbms.sql.method.CurrentTimestampFunction"/>
  1594.     <sql-method method="Math.abs" evaluator="org.datanucleus.store.rdbms.sql.method.MathAbsMethod"/>
  1595.     <sql-method method="Math.acos" evaluator="org.datanucleus.store.rdbms.sql.method.MathAcosMethod"/>
  1596.     <sql-method method="Math.asin" evaluator="org.datanucleus.store.rdbms.sql.method.MathAsinMethod"/>
  1597.     <sql-method method="Math.atan" evaluator="org.datanucleus.store.rdbms.sql.method.MathAtanMethod"/>
  1598.     <sql-method method="Math.ceil" evaluator="org.datanucleus.store.rdbms.sql.method.MathCeilMethod"/>
  1599.     <sql-method method="Math.cos" evaluator="org.datanucleus.store.rdbms.sql.method.MathCosMethod"/>
  1600.     <sql-method method="Math.exp" evaluator="org.datanucleus.store.rdbms.sql.method.MathExpMethod"/>
  1601.     <sql-method method="Math.floor" evaluator="org.datanucleus.store.rdbms.sql.method.MathFloorMethod"/>
  1602.     <sql-method method="Math.log" evaluator="org.datanucleus.store.rdbms.sql.method.MathLogMethod"/>
  1603.     <sql-method method="Math.sin" evaluator="org.datanucleus.store.rdbms.sql.method.MathSinMethod"/>
  1604.     <sql-method method="Math.sqrt" evaluator="org.datanucleus.store.rdbms.sql.method.MathSqrtMethod"/>
  1605.     <sql-method method="Math.tan" evaluator="org.datanucleus.store.rdbms.sql.method.MathTanMethod"/>
  1606.     <sql-method method="Math.toRadians" evaluator="org.datanucleus.store.rdbms.sql.method.MathToRadiansMethod"/>
  1607.     <sql-method method="Math.toDegrees" evaluator="org.datanucleus.store.rdbms.sql.method.MathToDegreesMethod"/>
  1608.     <sql-method method="JDOHelper.getObjectId"
  1609.                evaluator="org.datanucleus.store.rdbms.sql.method.JDOHelperGetObjectIdMethod"/>
  1610.     <sql-method method="JDOHelper.getVersion"
  1611.                evaluator="org.datanucleus.store.rdbms.sql.method.JDOHelperGetVersionMethod"/>
  1612.     <sql-method method="SQL_cube" datastore="db2"
  1613.                evaluator="org.datanucleus.store.rdbms.sql.method.SQLCubeFunction"/>
  1614.     <sql-method method="SQL_cube" datastore="oracle"
  1615.                evaluator="org.datanucleus.store.rdbms.sql.method.SQLCubeFunction"/>
  1616.     <sql-method method="SQL_cube" datastore="sqlserver"
  1617.                evaluator="org.datanucleus.store.rdbms.sql.method.SQLCubeFunction"/>
  1618.     <sql-method method="SQL_rollup" datastore="db2"
  1619.                evaluator="org.datanucleus.store.rdbms.sql.method.SQLRollupFunction"/>
  1620.     <sql-method method="SQL_rollup" datastore="oracle"
  1621.                evaluator="org.datanucleus.store.rdbms.sql.method.SQLRollupFunction"/>
  1622.     <sql-method method="SQL_rollup" datastore="sqlserver"
  1623.                evaluator="org.datanucleus.store.rdbms.sql.method.SQLRollupFunction"/>
  1624.     <sql-method method="SQL_boolean" evaluator="org.datanucleus.store.rdbms.sql.method.SQLBooleanMethod"/>
  1625.     <sql-method method="SQL_numeric" evaluator="org.datanucleus.store.rdbms.sql.method.SQLNumericMethod"/>
  1626.     <sql-method method="SQL_function" evaluator="org.datanucleus.store.rdbms.sql.method.SQLFunctionMethod"/>
  1627.  
  1628.     <sql-method class="java.lang.Character" method="toUpperCase"
  1629.                evaluator="org.datanucleus.store.rdbms.sql.method.StringToUpperMethod"/>
  1630.     <sql-method class="java.lang.CHaracter" method="toLowerCase"
  1631.                evaluator="org.datanucleus.store.rdbms.sql.method.StringToLowerMethod"/>
  1632.     <sql-method class="java.lang.Enum" method="ordinal"
  1633.                evaluator="org.datanucleus.store.rdbms.sql.method.EnumOrdinalMethod"/>
  1634.     <sql-method class="java.lang.Enum" method="toString"
  1635.                evaluator="org.datanucleus.store.rdbms.sql.method.EnumToStringMethod"/>
  1636.     <sql-method class="java.lang.Object" method="getClass"
  1637.                evaluator="org.datanucleus.store.rdbms.sql.method.ObjectGetClassMethod"/>
  1638.     <sql-method class="java.lang.String" method="charAt"
  1639.                evaluator="org.datanucleus.store.rdbms.sql.method.StringCharAtMethod"/>
  1640.     <sql-method class="java.lang.String" method="concat" datastore="sqlserver"
  1641.                evaluator="org.datanucleus.store.rdbms.sql.method.StringConcat2Method"/>
  1642.     <sql-method class="java.lang.String" method="concat" datastore="mysql"
  1643.                evaluator="org.datanucleus.store.rdbms.sql.method.StringConcat2Method"/>
  1644.     <sql-method class="java.lang.String" method="concat" datastore="db2"
  1645.                evaluator="org.datanucleus.store.rdbms.sql.method.StringConcat2Method"/>
  1646.     <sql-method class="java.lang.String" method="concat" datastore="derby"
  1647.                evaluator="org.datanucleus.store.rdbms.sql.method.StringConcat1Method"/>
  1648.     <sql-method class="java.lang.String" method="concat" datastore="oracle"
  1649.                evaluator="org.datanucleus.store.rdbms.sql.method.StringConcat1Method"/>
  1650.     <sql-method class="java.lang.String" method="concat" datastore="postgresql"
  1651.                evaluator="org.datanucleus.store.rdbms.sql.method.StringConcat1Method"/>
  1652.     <sql-method class="java.lang.String" method="endsWith"
  1653.                evaluator="org.datanucleus.store.rdbms.sql.method.StringEndsWithMethod"/>
  1654.     <sql-method class="java.lang.String" method="equals"
  1655.                evaluator="org.datanucleus.store.rdbms.sql.method.StringEqualsMethod"/>
  1656.     <sql-method class="java.lang.String" method="equalsIgnoreCase"
  1657.                evaluator="org.datanucleus.store.rdbms.sql.method.StringEqualsIgnoreCaseMethod"/>
  1658.     <sql-method class="java.lang.String" method="indexOf"
  1659.                evaluator="org.datanucleus.store.rdbms.sql.method.StringIndexOfMethod"/>
  1660.     <sql-method class="java.lang.String" method="indexOf" datastore="oracle"
  1661.                evaluator="org.datanucleus.store.rdbms.sql.method.StringIndexOf2Method"/>
  1662.     <sql-method class="java.lang.String" method="indexOf" datastore="db2"
  1663.                evaluator="org.datanucleus.store.rdbms.sql.method.StringIndexOf3Method"/>
  1664.     <sql-method class="java.lang.String" method="indexOf" datastore="sqlserver"
  1665.                evaluator="org.datanucleus.store.rdbms.sql.method.StringIndexOf4Method"/>
  1666.     <sql-method class="java.lang.String" method="indexOf" datastore="postgresql"
  1667.                evaluator="org.datanucleus.store.rdbms.sql.method.StringIndexOf5Method"/>
  1668.     <sql-method class="java.lang.String" method="indexOf" datastore="sybase"
  1669.                evaluator="org.datanucleus.store.rdbms.sql.method.StringIndexOf4Method"/>
  1670.     <sql-method class="java.lang.String" method="indexOf" datastore="sqlite"
  1671.                evaluator="org.datanucleus.store.rdbms.sql.method.StringIndexOf2Method"/>
  1672.     <sql-method class="java.lang.String" method="length"
  1673.                evaluator="org.datanucleus.store.rdbms.sql.method.StringLengthMethod"/>
  1674.     <sql-method class="java.lang.String" method="length" datastore="derby"
  1675.                evaluator="org.datanucleus.store.rdbms.sql.method.StringLength3Method"/>
  1676.     <sql-method class="java.lang.String" method="length" datastore="db2"
  1677.                evaluator="org.datanucleus.store.rdbms.sql.method.StringLength3Method"/>
  1678.     <sql-method class="java.lang.String" method="length" datastore="mckoi"
  1679.                evaluator="org.datanucleus.store.rdbms.sql.method.StringLength3Method"/>
  1680.     <sql-method class="java.lang.String" method="length" datastore="firebird"
  1681.                evaluator="org.datanucleus.store.rdbms.sql.method.StringLength2Method"/>
  1682.     <sql-method class="java.lang.String" method="length" datastore="oracle"
  1683.                evaluator="org.datanucleus.store.rdbms.sql.method.StringLength3Method"/>
  1684.     <sql-method class="java.lang.String" method="length" datastore="sapdb"
  1685.                evaluator="org.datanucleus.store.rdbms.sql.method.StringLength3Method"/>
  1686.     <sql-method class="java.lang.String" method="length" datastore="sqlite"
  1687.                evaluator="org.datanucleus.store.rdbms.sql.method.StringLength3Method"/>
  1688.     <sql-method class="java.lang.String" method="matches"
  1689.                evaluator="org.datanucleus.store.rdbms.sql.method.StringMatchesMethod"/>
  1690.     <sql-method class="java.lang.String" method="matches" datastore="derby"
  1691.                evaluator="org.datanucleus.store.rdbms.sql.method.StringMatchesDerbyMethod"/>
  1692.     <sql-method class="java.lang.String" method="replaceAll"
  1693.                evaluator="org.datanucleus.store.rdbms.sql.method.StringReplaceAllMethod"/>
  1694.  
  1695.     <sql-method class="java.lang.String" method="similarTo" datastore="postgresql"
  1696.                evaluator="org.datanucleus.store.rdbms.sql.method.StringSimilarPostgresqlMethod"/>
  1697.  
  1698.     <sql-method class="java.lang.String" method="startsWith"
  1699.                evaluator="org.datanucleus.store.rdbms.sql.method.StringStartsWithMethod"/>
  1700.     <sql-method class="java.lang.String" method="startsWith" datastore="sqlserver"
  1701.                evaluator="org.datanucleus.store.rdbms.sql.method.StringStartsWith2Method"/>
  1702.     <sql-method class="java.lang.String" method="startsWith" datastore="mysql"
  1703.                evaluator="org.datanucleus.store.rdbms.sql.method.StringStartsWith3Method"/>
  1704.     <sql-method class="java.lang.String" method="startsWith" datastore="hsql"
  1705.                evaluator="org.datanucleus.store.rdbms.sql.method.StringStartsWith3Method"/>
  1706.     <sql-method class="java.lang.String" method="startsWith" datastore="derby"
  1707.                evaluator="org.datanucleus.store.rdbms.sql.method.StringStartsWith3Method"/>
  1708.     <sql-method class="java.lang.String" method="substring"
  1709.                evaluator="org.datanucleus.store.rdbms.sql.method.StringSubstringMethod"/>
  1710.     <sql-method class="java.lang.String" method="substring" datastore="mckoi"
  1711.                evaluator="org.datanucleus.store.rdbms.sql.method.StringSubstring2Method"/>
  1712.     <sql-method class="java.lang.String" method="substring" datastore="sqlserver"
  1713.                evaluator="org.datanucleus.store.rdbms.sql.method.StringSubstring4Method"/>
  1714.     <sql-method class="java.lang.String" method="substring" datastore="sybase"
  1715.                evaluator="org.datanucleus.store.rdbms.sql.method.StringSubstring2Method"/>
  1716.     <sql-method class="java.lang.String" method="substring" datastore="sqlite"
  1717.                evaluator="org.datanucleus.store.rdbms.sql.method.StringSubstring3Method"/>
  1718.     <sql-method class="java.lang.String" method="substring" datastore="db2"
  1719.                evaluator="org.datanucleus.store.rdbms.sql.method.StringSubstring3Method"/>
  1720.     <sql-method class="java.lang.String" method="substring" datastore="derby"
  1721.                evaluator="org.datanucleus.store.rdbms.sql.method.StringSubstring3Method"/>
  1722.     <sql-method class="java.lang.String" method="substring" datastore="informix"
  1723.                evaluator="org.datanucleus.store.rdbms.sql.method.StringSubstring3Method"/>
  1724.     <sql-method class="java.lang.String" method="substring" datastore="oracle"
  1725.                evaluator="org.datanucleus.store.rdbms.sql.method.StringSubstring3Method"/>
  1726.     <sql-method class="java.lang.String" method="substring" datastore="sapdb"
  1727.                evaluator="org.datanucleus.store.rdbms.sql.method.StringSubstring3Method"/>
  1728.     <sql-method class="java.lang.String" method="substring" datastore="postgresql"
  1729.                evaluator="org.datanucleus.store.rdbms.sql.method.StringSubstring5Method"/>
  1730.     <sql-method class="java.lang.String" method="toUpperCase"
  1731.                evaluator="org.datanucleus.store.rdbms.sql.method.StringToUpperMethod"/>
  1732.     <sql-method class="java.lang.String" method="toLowerCase"
  1733.                evaluator="org.datanucleus.store.rdbms.sql.method.StringToLowerMethod"/>
  1734.     <sql-method class="java.lang.String" method="translate"
  1735.                evaluator="org.datanucleus.store.rdbms.sql.method.StringTranslateMethod" datastore="postgresql"/>
  1736.     <sql-method class="java.lang.String" method="translate"
  1737.                evaluator="org.datanucleus.store.rdbms.sql.method.StringTranslateMethod" datastore="oracle"/>
  1738.     <sql-method class="java.lang.String" method="translate"
  1739.                evaluator="org.datanucleus.store.rdbms.sql.method.StringTranslateMethod" datastore="db2"/>
  1740.  
  1741.     <sql-method class="java.lang.String" method="trim"
  1742.                evaluator="org.datanucleus.store.rdbms.sql.method.StringTrimMethod"/>
  1743.     <sql-method class="java.lang.String" method="trim" datastore="derby"
  1744.                evaluator="org.datanucleus.store.rdbms.sql.method.StringTrim2Method"/>
  1745.     <sql-method class="java.lang.String" method="trim" datastore="db2"
  1746.                evaluator="org.datanucleus.store.rdbms.sql.method.StringTrim2Method"/>
  1747.     <sql-method class="java.lang.String" method="trim" datastore="hsql"
  1748.                evaluator="org.datanucleus.store.rdbms.sql.method.StringTrim2Method"/>
  1749.     <sql-method class="java.lang.String" method="trim" datastore="sqlserver"
  1750.                evaluator="org.datanucleus.store.rdbms.sql.method.StringTrim2Method"/>
  1751.     <sql-method class="java.lang.String" method="trim" datastore="mysql"
  1752.                evaluator="org.datanucleus.store.rdbms.sql.method.StringTrim3Method"/>
  1753.     <sql-method class="java.lang.String" method="trim" datastore="postgresql"
  1754.                evaluator="org.datanucleus.store.rdbms.sql.method.StringTrim3Method"/>
  1755.  
  1756.     <sql-method class="java.lang.String" method="trimLeft"
  1757.                evaluator="org.datanucleus.store.rdbms.sql.method.StringTrimLeftMethod"/>
  1758.     <sql-method class="java.lang.String" method="trimLeft" datastore="mysql"
  1759.                evaluator="org.datanucleus.store.rdbms.sql.method.StringTrimLeft3Method"/>
  1760.     <sql-method class="java.lang.String" method="trimLeft" datastore="postgresql"
  1761.                evaluator="org.datanucleus.store.rdbms.sql.method.StringTrimLeft3Method"/>
  1762.  
  1763.     <sql-method class="java.lang.String" method="trimRight"
  1764.                evaluator="org.datanucleus.store.rdbms.sql.method.StringTrimRightMethod"/>
  1765.     <sql-method class="java.lang.String" method="trimRight" datastore="mysql"
  1766.                evaluator="org.datanucleus.store.rdbms.sql.method.StringTrimRight3Method"/>
  1767.     <sql-method class="java.lang.String" method="trimRight" datastore="postgresql"
  1768.                evaluator="org.datanucleus.store.rdbms.sql.method.StringTrimRight3Method"/>
  1769.  
  1770.     <sql-method class="java.util.Collection" method="contains"
  1771.                evaluator="org.datanucleus.store.rdbms.sql.method.CollectionContainsMethod"/>
  1772.     <sql-method class="java.util.Collection" method="isEmpty"
  1773.                evaluator="org.datanucleus.store.rdbms.sql.method.CollectionIsEmptyMethod"/>
  1774.     <sql-method class="java.util.Collection" method="size"
  1775.                evaluator="org.datanucleus.store.rdbms.sql.method.CollectionSizeMethod"/>
  1776.     <sql-method class="java.util.Collection" method="get"
  1777.                evaluator="org.datanucleus.store.rdbms.sql.method.ListGetMethod"/>
  1778.  
  1779.     <sql-method class="java.util.Date" method="getDay"
  1780.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetDayMethod"/>
  1781.     <sql-method class="java.util.Date" method="getDay" datastore="oracle"
  1782.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetDay2Method"/>
  1783.     <sql-method class="java.util.Date" method="getDay" datastore="postgresql"
  1784.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetDay3Method"/>
  1785.     <sql-method class="java.util.Date" method="getDate"
  1786.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetDayMethod"/>
  1787.     <sql-method class="java.util.Date" method="getDate" datastore="oracle"
  1788.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetDay2Method"/>
  1789.     <sql-method class="java.util.Date" method="getDate" datastore="postgresql"
  1790.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetDay3Method"/>
  1791.     <sql-method class="java.util.Date" method="getDate" datastore="sqlite"
  1792.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetDay4Method"/>
  1793.     <sql-method class="java.util.Date" method="getDate" datastore="firebird"
  1794.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetDay5Method"/>
  1795.     <sql-method class="java.util.Date" method="getMonth"
  1796.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetMonthMethod"/>
  1797.     <sql-method class="java.util.Date" method="getMonth" datastore="oracle"
  1798.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetMonth2Method"/>
  1799.     <sql-method class="java.util.Date" method="getMonth" datastore="postgresql"
  1800.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetMonth3Method"/>
  1801.     <sql-method class="java.util.Date" method="getMonth" datastore="sqlite"
  1802.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetMonth4Method"/>
  1803.     <sql-method class="java.util.Date" method="getMonth" datastore="firebird"
  1804.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetMonth5Method"/>
  1805.     <sql-method class="java.util.Date" method="getYear"
  1806.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetYearMethod"/>
  1807.     <sql-method class="java.util.Date" method="getYear" datastore="oracle"
  1808.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetYear2Method"/>
  1809.     <sql-method class="java.util.Date" method="getYear" datastore="postgresql"
  1810.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetYear3Method"/>
  1811.     <sql-method class="java.util.Date" method="getYear" datastore="sqlite"
  1812.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetYear4Method"/>
  1813.     <sql-method class="java.util.Date" method="getYear" datastore="firebird"
  1814.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetYear5Method"/>
  1815.     <sql-method class="java.util.Date" method="getHour"
  1816.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetHourMethod"/>
  1817.     <sql-method class="java.util.Date" method="getHour" datastore="oracle"
  1818.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetHour2Method"/>
  1819.     <sql-method class="java.util.Date" method="getHour" datastore="postgresql"
  1820.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetHour3Method"/>
  1821.     <sql-method class="java.util.Date" method="getHour" datastore="sqlserver"
  1822.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetHour4Method"/>
  1823.     <sql-method class="java.util.Date" method="getHour" datastore="sqlite"
  1824.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetHour5Method"/>
  1825.     <sql-method class="java.util.Date" method="getHour" datastore="firebird"
  1826.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetHour6Method"/>
  1827.     <sql-method class="java.util.Date" method="getMinute"
  1828.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetMinuteMethod"/>
  1829.     <sql-method class="java.util.Date" method="getMinute" datastore="oracle"
  1830.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetMinute2Method"/>
  1831.     <sql-method class="java.util.Date" method="getMinute" datastore="postgresql"
  1832.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetMinute3Method"/>
  1833.     <sql-method class="java.util.Date" method="getMinute" datastore="sqlserver"
  1834.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetMinute4Method"/>
  1835.     <sql-method class="java.util.Date" method="getMinute" datastore="sqlite"
  1836.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetMinute5Method"/>
  1837.     <sql-method class="java.util.Date" method="getMinute" datastore="firebird"
  1838.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetMinute6Method"/>
  1839.     <sql-method class="java.util.Date" method="getSecond"
  1840.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetSecondMethod"/>
  1841.     <sql-method class="java.util.Date" method="getSecond" datastore="oracle"
  1842.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetSecond2Method"/>
  1843.     <sql-method class="java.util.Date" method="getSecond" datastore="postgresql"
  1844.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetSecond3Method"/>
  1845.     <sql-method class="java.util.Date" method="getSecond" datastore="sqlserver"
  1846.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetSecond4Method"/>
  1847.     <sql-method class="java.util.Date" method="getSecond" datastore="hsql"
  1848.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetSecond5Method"/>
  1849.     <sql-method class="java.util.Date" method="getSecond" datastore="sqlite"
  1850.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetSecond6Method"/>
  1851.     <sql-method class="java.util.Date" method="getSecond" datastore="firebird"
  1852.                evaluator="org.datanucleus.store.rdbms.sql.method.DateGetSecond7Method"/>
  1853.  
  1854.     <sql-method class="java.util.Map" method="mapKey" evaluator="org.datanucleus.store.rdbms.sql.method.MapKeyMethod"/>
  1855.     <sql-method class="java.util.Map" method="mapValue" evaluator="org.datanucleus.store.rdbms.sql.method.MapValueMethod"/>
  1856.     <sql-method class="java.util.Map" method="containsEntry" evaluator="org.datanucleus.store.rdbms.sql.method.MapContainsEntryMethod"/>
  1857.     <sql-method class="java.util.Map" method="containsKey" evaluator="org.datanucleus.store.rdbms.sql.method.MapContainsKeyMethod"/>
  1858.     <sql-method class="java.util.Map" method="containsValue" evaluator="org.datanucleus.store.rdbms.sql.method.MapContainsValueMethod"/>
  1859.     <sql-method class="java.util.Map" method="get" evaluator="org.datanucleus.store.rdbms.sql.method.MapGetMethod"/>
  1860.     <sql-method class="java.util.Map" method="isEmpty" evaluator="org.datanucleus.store.rdbms.sql.method.MapIsEmptyMethod"/>
  1861.     <sql-method class="java.util.Map" method="size" evaluator="org.datanucleus.store.rdbms.sql.method.MapSizeMethod"/>
  1862.  
  1863.     <sql-method class="ARRAY" method="contains" evaluator="org.datanucleus.store.rdbms.sql.method.ArrayContainsMethod"/>
  1864.     <sql-method class="ARRAY" method="isEmpty" evaluator="org.datanucleus.store.rdbms.sql.method.ArrayIsEmptyMethod"/>
  1865.     <sql-method class="ARRAY" method="size" evaluator="org.datanucleus.store.rdbms.sql.method.ArraySizeMethod"/>
  1866.     <sql-method class="ARRAY" method="length" evaluator="org.datanucleus.store.rdbms.sql.method.ArraySizeMethod"/>
  1867.   </extension>
  1868.  
  1869.   <!-- SQL OPERATIONS -->
  1870.   <extension point="org.datanucleus.store.rdbms.sql_operation">
  1871.     <sql-operation name="mod" datastore="derby"
  1872.                   evaluator="org.datanucleus.store.rdbms.sql.operation.Mod2Operation"/>
  1873.     <sql-operation name="mod" datastore="h2"
  1874.                   evaluator="org.datanucleus.store.rdbms.sql.operation.Mod2Operation"/>
  1875.     <sql-operation name="mod" datastore="hsql"
  1876.                   evaluator="org.datanucleus.store.rdbms.sql.operation.Mod2Operation"/>
  1877.     <sql-operation name="mod" datastore="informix"
  1878.                   evaluator="org.datanucleus.store.rdbms.sql.operation.Mod2Operation"/>
  1879.     <sql-operation name="mod" datastore="oracle"
  1880.                   evaluator="org.datanucleus.store.rdbms.sql.operation.Mod2Operation"/>
  1881.     <sql-operation name="mod" datastore="db2"
  1882.                   evaluator="org.datanucleus.store.rdbms.sql.operation.Mod3Operation"/>
  1883.  
  1884.     <sql-operation name="concat" datastore="mysql"
  1885.                   evaluator="org.datanucleus.store.rdbms.sql.operation.Concat2Operation"/>
  1886.     <sql-operation name="concat" datastore="derby"
  1887.                   evaluator="org.datanucleus.store.rdbms.sql.operation.Concat3Operation"/>
  1888.     <sql-operation name="concat" datastore="db2"
  1889.                   evaluator="org.datanucleus.store.rdbms.sql.operation.Concat3Operation"/>
  1890.  
  1891.     <sql-operation name="numericToString"
  1892.                   evaluator="org.datanucleus.store.rdbms.sql.operation.NumericToStringOperation"/>
  1893.     <sql-operation name="numericToString" datastore="mysql"
  1894.                   evaluator="org.datanucleus.store.rdbms.sql.operation.NumericToString2Operation"/>
  1895.     <sql-operation name="numericToString" datastore="derby"
  1896.                   evaluator="org.datanucleus.store.rdbms.sql.operation.NumericToString3Operation"/>
  1897.   </extension>
  1898.  
  1899.   <!-- SQL TABLE NAMING -->
  1900.   <extension point="org.datanucleus.store.rdbms.sql_tablenamer">
  1901.     <sql-tablenamer name="t-scheme" class="org.datanucleus.store.rdbms.sql.SQLTableTNamer"/>
  1902.     <sql-tablenamer name="alpha-scheme" class="org.datanucleus.store.rdbms.sql.SQLTableAlphaNamer"/>
  1903.     <sql-tablenamer name="table-name" class="org.datanucleus.store.rdbms.sql.SQLTableNameNamer"/>
  1904.   </extension>
  1905.  
  1906.   <!-- DATASTORE ADAPTERS -->
  1907.   <extension point="org.datanucleus.store.rdbms.datastoreadapter">
  1908.     <datastore-adapter vendor-id="Adaptive Server Anywhere" class-name="org.datanucleus.store.rdbms.adapter.SybaseAdapter" priority="0"/>
  1909.     <datastore-adapter vendor-id="Adaptive Server Enterprise" class-name="org.datanucleus.store.rdbms.adapter.SybaseAdapter" priority="0"/>
  1910.     <datastore-adapter vendor-id="Adaptive Server IQ" class-name="org.datanucleus.store.rdbms.adapter.SybaseAdapter" priority="0"/>
  1911.     <datastore-adapter vendor-id="as/400" class-name="org.datanucleus.store.rdbms.adapter.DB2AS400Adapter" priority="1"/>
  1912.     <datastore-adapter vendor-id="cloudscape" class-name="org.datanucleus.store.rdbms.adapter.DerbyAdapter" priority="0"/>
  1913.     <datastore-adapter vendor-id="db2" class-name="org.datanucleus.store.rdbms.adapter.DB2Adapter" priority="0"/>
  1914.     <datastore-adapter vendor-id="derby" class-name="org.datanucleus.store.rdbms.adapter.DerbyAdapter" priority="0"/>
  1915.     <datastore-adapter vendor-id="firebird" class-name="org.datanucleus.store.rdbms.adapter.FirebirdAdapter" priority="0"/>
  1916.     <datastore-adapter vendor-id="h2" class-name="org.datanucleus.store.rdbms.adapter.H2Adapter" priority="0"/>
  1917.     <datastore-adapter vendor-id="hsql" class-name="org.datanucleus.store.rdbms.adapter.HSQLAdapter" priority="0"/>
  1918.     <datastore-adapter vendor-id="informix" class-name="org.datanucleus.store.rdbms.adapter.InformixAdapter" priority="0"/>
  1919.     <datastore-adapter vendor-id="interbase" class-name="org.datanucleus.store.rdbms.adapter.FirebirdAdapter" priority="0"/>
  1920.     <datastore-adapter vendor-id="mckoi" class-name="org.datanucleus.store.rdbms.adapter.McKoiAdapter" priority="0"/>
  1921.     <datastore-adapter vendor-id="microsoft" class-name="org.datanucleus.store.rdbms.adapter.MSSQLServerAdapter" priority="0"/>
  1922.     <datastore-adapter vendor-id="mysql" class-name="org.datanucleus.store.rdbms.adapter.MySQLAdapter" priority="0"/>
  1923.     <datastore-adapter vendor-id="nuodb" class-name="org.datanucleus.store.rdbms.adapter.NuoDBAdapter" priority="0"/>
  1924.     <datastore-adapter vendor-id="oracle" class-name="org.datanucleus.store.rdbms.adapter.OracleAdapter" priority="0"/>
  1925.     <datastore-adapter vendor-id="pointbase" class-name="org.datanucleus.store.rdbms.adapter.PointbaseAdapter" priority="0"/>
  1926.     <datastore-adapter vendor-id="postgresql" class-name="org.datanucleus.store.rdbms.adapter.PostgreSQLAdapter" priority="0"/>
  1927.     <datastore-adapter vendor-id="sap db" class-name="org.datanucleus.store.rdbms.adapter.SAPDBAdapter" priority="0"/>
  1928.     <datastore-adapter vendor-id="sapdb" class-name="org.datanucleus.store.rdbms.adapter.SAPDBAdapter" priority="0"/>
  1929.     <datastore-adapter vendor-id="sybase" class-name="org.datanucleus.store.rdbms.adapter.SybaseAdapter" priority="0"/>
  1930.     <datastore-adapter vendor-id="timesten" class-name="org.datanucleus.store.rdbms.adapter.TimesTenAdapter" priority="0"/>
  1931.     <datastore-adapter vendor-id="sqlite" class-name="org.datanucleus.store.rdbms.adapter.SQLiteAdapter" priority="0"/>
  1932.     <datastore-adapter vendor-id="virtuoso" class-name="org.datanucleus.store.rdbms.adapter.VirtuosoAdapter" priority="0"/>
  1933.   </extension>
  1934.  
  1935.   <!-- extension points from datanucleus-api-jdo-4.2.1 -->
  1936.   <!-- ANNOTATIONS -->
  1937.   <extension point="org.datanucleus.annotations">
  1938.     <annotations annotation-class="javax.jdo.annotations.PersistenceCapable" reader="org.datanucleus.api.jdo.metadata.JDOAnnotationReader"/>
  1939.     <annotations annotation-class="javax.jdo.annotations.PersistenceAware" reader="org.datanucleus.api.jdo.metadata.JDOAnnotationReader"/>
  1940.     <annotations annotation-class="javax.jdo.annotations.Queries" reader="org.datanucleus.api.jdo.metadata.JDOAnnotationReader"/>
  1941.     <annotations annotation-class="javax.jdo.annotations.Query" reader="org.datanucleus.api.jdo.metadata.JDOAnnotationReader"/>
  1942.   </extension>
  1943.  
  1944.   <!-- CALLBACK HANDLER -->
  1945.   <extension point="org.datanucleus.callbackhandler">
  1946.     <callback-handler class-name="org.datanucleus.api.jdo.JDOCallbackHandler" name="JDO"/>
  1947.   </extension>
  1948.  
  1949.   <!-- METADATA MANAGER -->
  1950.   <extension point="org.datanucleus.metadata_manager">
  1951.     <metadata-manager class="org.datanucleus.api.jdo.metadata.JDOMetaDataManager" name="JDO"/>
  1952.   </extension>
  1953.  
  1954.   <!-- PERSISTENCE API -->
  1955.   <extension point="org.datanucleus.api_adapter">
  1956.     <api-adapter name="JDO" class-name="org.datanucleus.api.jdo.JDOAdapter"/>
  1957.   </extension>
  1958. </plugin>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement