<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin>

     <extension
         point="org.eclipse.datatools.connectivity.oda.dataSource">
      <dataSource
            odaVersion="3.1"
            driverClass="org.eclipse.birt.report.data.oda.sampledb.SampleDBDriver"
            defaultDisplayName="%datasource.name"
            setThreadContextClassLoader="false"
            id="%oda.data.source.id">
            <properties>
            <propertyGroup
                  defaultDisplayName="Connection Properties"
                  name="connectionProperties">
               <property
                  type="string"
                  defaultDisplayName="JDBC Driver Class"
                  canInherit="true"
                  name="odaDriverClass"/>
               <property
                  type="string"
                  defaultDisplayName="JDBC Driver URL"
                  canInherit="true"
                  name="odaURL"/>
               <property
                  type="string"
                  defaultDisplayName="Data Source"
                  canInherit="true"
                  name="odaDataSource"/>
               <property
                  type="string"
                  defaultDisplayName="User Name"
                  canInherit="true"
                  name="odaUser"/>
               <property
                     isEncryptable="true"
                     type="string"
                     canInherit="true"
                     defaultDisplayName="Password"
                     name="odaPassword"/>
            </propertyGroup>
            <propertyVisibility name="odaDataSource" visibility="hide"/>
         </properties>
      </dataSource>   
      <dataSet
            defaultDisplayName="%select.dataset.name"
            id="org.eclipse.birt.report.data.oda.jdbc.JdbcSelectDataSet">
            <dataTypeMapping
                  nativeDataType="BIT"
                  nativeDataTypeCode="-7"
                  odaScalarDataType="Integer"/>
            <dataTypeMapping
                  nativeDataType="TINYINT"
                  nativeDataTypeCode="-6"
                  odaScalarDataType="Integer"/>
            <dataTypeMapping
                  nativeDataType="SMALLINT"
                  nativeDataTypeCode="5"
                  odaScalarDataType="Integer"/>
            <dataTypeMapping
                  nativeDataType="INTEGER"
                  nativeDataTypeCode="4"
                  odaScalarDataType="Integer"/>
            <dataTypeMapping
                  nativeDataType="BIGINT"
                  nativeDataTypeCode="-5"
                  odaScalarDataType="Decimal"/>
            <dataTypeMapping
                  nativeDataType="FLOAT"
                  nativeDataTypeCode="6"
                  odaScalarDataType="Double"/>
            <dataTypeMapping
                  nativeDataType="REAL"
                  nativeDataTypeCode="7"
                  odaScalarDataType="Double"/>
            <dataTypeMapping
                  nativeDataType="DOUBLE"
                  nativeDataTypeCode="8"
                  odaScalarDataType="Double"/>
            <dataTypeMapping
                  nativeDataType="NUMERIC"
                  nativeDataTypeCode="2"
                  odaScalarDataType="Decimal"/>
            <dataTypeMapping
                  nativeDataType="DECIMAL"
                  nativeDataTypeCode="3"
                  odaScalarDataType="Decimal"/>
            <dataTypeMapping
                  nativeDataType="CHAR"
                  nativeDataTypeCode="1"
                  odaScalarDataType="String"/>
            <dataTypeMapping
                  nativeDataType="VARCHAR"
                  nativeDataTypeCode="12"
                  odaScalarDataType="String"/>
            <dataTypeMapping
                  nativeDataType="LONGVARCHAR"
                  nativeDataTypeCode="-1"
                  odaScalarDataType="String"/>
            <dataTypeMapping
                  nativeDataType="DATE"
                  nativeDataTypeCode="91"
                  odaScalarDataType="Date"/>
            <dataTypeMapping
                  nativeDataType="TIME"
                  nativeDataTypeCode="92"
                  odaScalarDataType="Time"/>
            <dataTypeMapping
                  nativeDataType="TIMESTAMP"
                  nativeDataTypeCode="93"
                  odaScalarDataType="Timestamp"/>
            <dataTypeMapping
                  nativeDataType="BOOLEAN"
                  nativeDataTypeCode="16"
                  odaScalarDataType="Boolean"/>
            <dataTypeMapping
                  nativeDataType="BINARY"
                  nativeDataTypeCode="-2"
                  odaScalarDataType="String"/><!--Blob"/>-->
            <dataTypeMapping
                  nativeDataType="VARBINARY"
                  nativeDataTypeCode="-3"
                  odaScalarDataType="String"/><!--Blob"/>-->
            <dataTypeMapping
                  nativeDataType="LONGVARBINARY"
                  nativeDataTypeCode="-4"
                  odaScalarDataType="String"/><!--Blob"/>-->
            <properties>
            	<propertyGroup
                	  defaultDisplayName="Query Properties"
                  	name="queryProperties">
               		<property
                    	 type="string"
                    	 defaultDisplayName="%dataset.property.queryTimeOut"
                     	canInherit="true"
                     	name="queryTimeOut"/>
                     <property
                    	 type="string"
                     	defaultDisplayName="%dataset.property.rowFetchSize"
                     	canInherit="false"
                     	name="rowFetchSize"/>
           		 </propertyGroup>
         	</properties>
      </dataSet>

   </extension>
        <extension
         point="org.eclipse.datatools.connectivity.connectionProfile">
      <category
            id="%oda.data.source.id"
            name="%oda.data.source.name"
            parentCategory="%oda.parent.category.id"/>
      <connectionProfile
            category="%oda.data.source.id"
            id="%oda.data.source.id"
            name="%connection.profile.name"
            pingFactory="org.eclipse.datatools.connectivity.oda.profile.OdaConnectionFactory"/>
      <connectionFactory
            id="org.eclipse.datatools.connectivity.oda.IConnection"
            name="%oda.connection.factory.name"
            class="org.eclipse.datatools.connectivity.oda.profile.OdaConnectionFactory"
            profile="%oda.data.source.id"/>
   </extension>
   
   <extension
         point="org.eclipse.birt.report.data.oda.jdbc.driverinfo">
      <jdbcDriver
            connectionFactory="org.eclipse.birt.report.data.oda.sampledb.SampleDBJDBCConnectionFactory"
            driverClass="org.eclipse.birt.report.data.oda.sampledb.Driver"
            name="%jdbc.driver.name"
            urlTemplate="jdbc:classicmodels:sampledb"/>
   </extension>

</plugin>
