Download the PHP package naoned/oai-pmh-server-bundle without Composer
On this page you can find all versions of the php package naoned/oai-pmh-server-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package oai-pmh-server-bundle
OaiPmhServerBundle
About
Provides an Oai-Pmh server to serve your data. This is an Oai-Pmh server only, you have to plug your own data provider.
Features
- Compliant with official Oai-Pmh tech spec : http://www.openarchives.org/OAI/openarchivesprotocol.html
- Sucessfully pass http://re.cs.uct.ac.za/ test
- Automated resumption in large list, with arrays or ArrayObject
- On the fly XML generation, if you provide Records in a real-time data-accesing ArrayObject
- Parametrable resumption items-per-page (default at 50)
Limitations
- Does not supports resumption (by token) on set lists
- More data formats (currently supports Dublin Core only)
Installation
Require the naoned/OaiPmhServer
package in your composer.json and update your dependencies.
$ composer require naoned/OaiPmhServer:*
Add the NaonedOaiPmhServerBundle to your application's kernel:
Configuration
Add to your config.yml
You can choose here nb of records and sets in list with resumption
Add to your routing.yml
You can choose here route to your Oai-Pmh server
Add to your services.yml In your own Bundle (that manage data), add a service to expose data
Create Data provider
Fournishing data is up to you. That’s why you have to define a service. In order to do it, create on your side a class based on this example :
If you use Symfony >= 2.8, use ContainerAwareTrait instead of extending ContainerAware :
Of course, you have to implement data retreiveing here, based on anything : db (Sql), mappers (Doctrine, Pomm) or any other data storing (ElasticSearch …). That why I made this class container aware, but you can preferely set required services via setters.
In addition, lists (records ans sets) can be sent as ArrayObjects, in order to manage data calling in an other class that implements .