|
|
|
# Islandora Services
|
|
|
|
# islandora.services.yml:
|
|
|
|
services:
|
|
|
|
islandora.eventgenerator:
|
|
|
|
class: Drupal\islandora\EventGenerator\EventGenerator
|
|
|
|
arguments: ['@language_manager']
|
|
|
|
islandora.stomp:
|
|
|
|
class: Stomp\StatefulStomp
|
|
|
|
factory: ['Drupal\islandora\StompFactory', create]
|
|
|
|
arguments: ['@config.factory']
|
|
|
|
islandora.jwt-subscriber:
|
|
|
|
class: Drupal\islandora\EventSubscriber\JwtEventSubscriber
|
|
|
|
factory: ['Drupal\islandora\EventSubscriber\JwtEventSubscriber', create]
|
|
|
|
arguments: ['@entity_type.manager', '@current_user']
|
|
|
|
tags:
|
|
|
|
- { name: event_subscriber }
|
|
|
|
islandora.media_link_header_subscriber:
|
|
|
|
class: Drupal\islandora\EventSubscriber\MediaLinkHeaderSubscriber
|
|
|
|
arguments: ['@entity_type.manager', '@entity_field.manager', '@access_manager', '@current_user', '@current_route_match', '@request_stack']
|
|
|
|
tags:
|
|
|
|
- { name: event_subscriber }
|
|
|
|
islandora.node_link_header_subscriber:
|
|
|
|
class: Drupal\islandora\EventSubscriber\NodeLinkHeaderSubscriber
|
|
|
|
arguments: ['@entity_type.manager', '@entity_field.manager', '@access_manager', '@current_user', '@current_route_match', '@request_stack', '@islandora.utils']
|
|
|
|
tags:
|
|
|
|
- { name: event_subscriber }
|
|
|
|
islandora.admin_view_route_subscriber:
|
|
|
|
class: Drupal\islandora\EventSubscriber\AdminViewsRouteSubscriber
|
|
|
|
tags:
|
|
|
|
- { name: event_subscriber }
|
JSON-LD Context generator (#33)
* JSON-LD Context generator
Base pull, service, interface and class. Needs testing. DCS should be
solved already
* Missing an @
* Wrong Cache backend service injected
* make sure the bundle has mapping
* Testing routes to make debugging easier
* phpstorm, leave my indentation alone!
* phpcs for test controller
* Changes, lots of them
* Exceptions thrown all around (and documented
* “Try/Catch” where relevant
* Logger channel for ISLANDORA, useful for all CLAW
* Exceptions are being cached
* Naive field types of json-ld term definitions for context. Kinda poor
mans rdf map for fields
* Docs, docs.
* Route Controller now responds with application/ld+json, means don’t
wait for HTML!
* Concerns addressed
TODO: need new tests.
* Web tests!
Don’t run via UI (buggy) https://www.drupal.org/node/2745123
Do this
```Shell
sudo -u www-data php core/scripts/run-tests.sh --verbose --class
"Drupal\islandora\Tests\Web\JsonldContextGeneratorWebTest"
```
* Coding standards
* Coding standards and Cache
Now caching happens on the response and on the method. Best of both
worlds.
```Shell
curl -i http://localhost:8000/fedora_resource_context/rdf_source
HTTP/1.1 200 OK
Date: Tue, 21 Mar 2017 19:19:03 GMT
Server: Apache/2.4.18 (Ubuntu)
Cache-Control: must-revalidate, no-cache, private
X-Powered-By: Islandora CLAW API
X-Drupal-Dynamic-Cache: MISS
X-UA-Compatible: IE=edge
Content-language: en
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
Expires: Sun, 19 Nov 1978 05:00:00 GMT
X-Generator: Drupal 8 (https://www.drupal.org)
X-Debug-Token: 7d33c2
X-Debug-Token-Link: /admin/reports/profiler/view/7d33c2
X-Drupal-Cache: HIT
Content-Length: 229
Content-Type: application/ld+json
{"@context":{"schema":"http://schema.org/","schema:dateModified":{"@type
":"xsd:dateTime"},"schema:dateCreated":{"@type":"xsd:dateTime"},"fedora"
:"http://fedora.info/definitions/v4/repository#","fedora:hasParent":{"@t
ype":"@id"}}}
````
and after cache clear (or changing user permissions or even an entity
type def associated to the requested rdfmapping)
```Shell
HTTP/1.1 200 OK
Date: Tue, 21 Mar 2017 19:20:49 GMT
Server: Apache/2.4.18 (Ubuntu)
Cache-Control: must-revalidate, no-cache, private
X-Powered-By: Islandora CLAW API
X-Drupal-Dynamic-Cache: MISS
X-UA-Compatible: IE=edge
Content-language: en
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
Expires: Sun, 19 Nov 1978 05:00:00 GMT
X-Generator: Drupal 8 (https://www.drupal.org)
X-Debug-Token: acc399
X-Debug-Token-Link: /admin/reports/profiler/view/acc399
X-Drupal-Cache: MISS
Content-Length: 229
Content-Type: application/ld+json
````
* Short notion array..
should be named “bracket structure…”
* We should run tests on our own server...
* lets try with 127.0.0.1
* testing travis changes (#1)
* fixes not working Drupal/drush integration on Travis-CI
* Kernel tests
* 400 is 1 less than 401
* restore notifications
* Fixes type in TODO
* Jared rocks
* Debug statement not needed
Was not outputting anyway
* Namespace change
Addressing @dhlamb namespace change
8 years ago
|
|
|
logger.channel.islandora:
|
|
|
|
parent: logger.channel_base
|
|
|
|
arguments: ['islandora']
|
|
|
|
islandora.media_route_context_provider:
|
|
|
|
class: Drupal\islandora\ContextProvider\MediaRouteContextProvider
|
|
|
|
arguments: ['@current_route_match']
|
|
|
|
tags:
|
|
|
|
- { name: 'context_provider' }
|
|
|
|
islandora.file_route_context_provider:
|
|
|
|
class: Drupal\islandora\ContextProvider\FileRouteContextProvider
|
|
|
|
arguments: ['@current_route_match']
|
|
|
|
tags:
|
|
|
|
- { name: 'context_provider' }
|
|
|
|
islandora.taxonomy_term_route_context_provider:
|
|
|
|
class: Drupal\islandora\ContextProvider\TermRouteContextProvider
|
|
|
|
arguments: ['@current_route_match']
|
|
|
|
tags:
|
|
|
|
- { name: 'context_provider' }
|
|
|
|
islandora.media_source_service:
|
|
|
|
class: Drupal\islandora\MediaSource\MediaSourceService
|
|
|
|
arguments: ['@entity_type.manager', '@current_user', '@language_manager', '@entity.query', '@file_system', '@islandora.utils']
|
|
|
|
islandora.utils:
|
|
|
|
class: Drupal\islandora\IslandoraUtils
|
|
|
|
arguments: ['@entity_type.manager', '@entity_field.manager', '@entity.query', '@context.manager', '@flysystem_factory']
|
|
|
|
islandora.gemini.client:
|
|
|
|
class: Islandora\Crayfish\Commons\Client\GeminiClient
|
|
|
|
factory: ['Drupal\islandora\GeminiClientFactory', create]
|
|
|
|
arguments: ['@config.factory', '@logger.channel.islandora']
|
|
|
|
islandora.gemini.lookup:
|
|
|
|
class: Drupal\islandora\GeminiLookup
|
|
|
|
arguments: ['@islandora.gemini.client', '@jwt.authentication.jwt', '@islandora.media_source_service', '@http_client', '@logger.channel.islandora']
|