https://github.com/thecodingmachine/database.datasource.datasource-interface
This package only contains basic interfaces for implementing Data sources. Those data sources can be used by a range of objects, including the ExtDataGrid wrapper in Xaja, or other grids...
https://github.com/thecodingmachine/database.datasource.datasource-interface
Last synced: about 1 year ago
JSON representation
This package only contains basic interfaces for implementing Data sources. Those data sources can be used by a range of objects, including the ExtDataGrid wrapper in Xaja, or other grids...
- Host: GitHub
- URL: https://github.com/thecodingmachine/database.datasource.datasource-interface
- Owner: thecodingmachine
- Created: 2012-12-05T10:42:45.000Z (over 13 years ago)
- Default Branch: 4.0
- Last Pushed: 2016-06-22T17:17:16.000Z (almost 10 years ago)
- Last Synced: 2025-04-01T18:02:07.795Z (about 1 year ago)
- Language: PHP
- Size: 20.5 KB
- Stars: 0
- Watchers: 8
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[](https://packagist.org/packages/mouf/database.datasource.datasource-interface) [](https://packagist.org/packages/mouf/database.datasource.datasource-interface) [](https://packagist.org/packages/mouf/database.datasource.datasource-interface) [](https://packagist.org/packages/mouf/database.datasource.datasource-interface)
[](https://scrutinizer-ci.com/g/thecodingmachine/database.datasource.datasource-interface/?branch=4.0)
[](https://travis-ci.org/thecodingmachine/database.datasource.datasource-interface)
[](https://coveralls.io/github/thecodingmachine/database.datasource.datasource-interface?branch=4.0)
Datasources for Mouf
====================
You can find in this package two very useful interfaces:
- `DataSourceInterface`: a DataSource that represents an array of arrays
- `RowInterface`: a Row that is the representation of a key indexed array.
Known implementations
---------------------
- MagicQuery (TODO)
This packages contains 2 very basic implementations of these interfaces:
- The `Row` class maps a key indexed array into a `RowInterface`
- The `DataSource` class maps an array of array into a `DataSourceInterface`
Modifiers
---------
This package comes with a set of utility classes to transform rows and datasources:
- `RowMapper` creates an "output" row from an "input" row and a set of `Pickers` (implementing the `PickerInterface`)
- `ArrayMapper` creates an "output" datasource from an "input" datasource and a set of `Pickers` (implementing the `PickerInterface`)
This package comes with 2 pickers (implementing the `PickerInterface`):
- `RowPicker`: selects one value in a row
- `CallbackPicker`: applies a callback function to a row and returns the value of the callback
Finally, the `RowBuilder` class can be used to merge rows, add a row as a key of a row or to add datasources as keys of a row.