Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Custom datasources allows allow you to interface data services with any datasource type. You can create a custom data source as you create your data service: Follow the steps from 1 to 3 in creating a data service using various data sources. When you get to the Add New Data Source screen, select Custom Data Source as the data source type. The custom datasource specific options will appear as shown below. 

...

Used to represent data in tables, where a set of named tables contains contain data rows that can be queried later. You can use the interface the org.wso2.carbon.dataservices.core.custom.datasource.TabularDataBasedDS interface to implement tabular datasources. For a sample implementation of a tabular custom datasource, see InMemoryDataSource.

A tabular datasource is typically associated with an SQL data services query. This is done by internally using our own SQL parser to execute SQL against the custom datasource. For a sample data service descriptor on how this is done, see InMemoryDSSample. Also, this is supported in Carbon datasources with the following datasource reader implementationorg.wso2.carbon.dataservices.core.custom.datasource.CustomTabularDataSourceReader. Find a sample Carbon datasource configuration file at <PRODUCT_HOME>/repository/conf/datasources/custom-datasources.xml.

...

Custom query datasources are implemented using the interface the org.wso2.carbon.dataservices.core.custom.datasource.CustomQueryBasedDS interface. You can create any non-tabular datasource using the query-based approach. Even if the target datasource does not have a query expression format, you can create your own. For example, you can support any NoSQL type datasource this way.

For a sample implementation of a query-based custom datasource, see EchoDataSource. For a sample data service descriptor with custom query datasources, see InMemoryDSSample. This is supported in Carbon datasources, with the following datasource reader implementationorg.wso2.carbon.dataservices.core.custom.datasource.CustomQueryDataSourceReader. You can find a sample of a Carbon datasource configuration in <PRODUCT_HOME>\repository\conf\datasources\custom-datasources.xml.

...