TAO Logo

GitHub GitHub release GitHub commit activity

Extension to manage deliveries

Installation instructions

These instructions assume that you have already a TAO installation on your system. If you don't, go to package/tao and follow the installation instructions.

If you installed your TAO instance through package/tao, oat-sa/extension-tao-delivery is very likely already installed. You can verify this under Settings -> Extension manager, where it would appear on the left hand side as taoDelivery. Alternatively you would find it in the code at /config/generis/installation.conf.php.

Note, that you have to be logged in as System Administrator to do this.

Add the extension to your TAO composer and to the autoloader:

composer require oat-sa/extension-tao-delivery

Install the extension on the CLI from the project root:

Linux:

sudo php tao/scripts/installExtension oat-sa/extension-tao-delivery

Windows:

php tao\scripts\installExtension oat-sa/extension-tao-delivery

As a system administrator you also install it through the TAO Extension Manager:

  • Settings (the gears on the right hand side of the menu) -> Extension manager
  • Select taoDelivery on the right hand side, check the box and hit install

REST API

Configuration options

AttemptService.conf.php

Configuration option states_to_exclude

Description : when retrieving attempts (executions), those attempts with specified states won't be retrieved

Possible states :

  • http://www.tao.lu/Ontologies/TAODelivery.rdf#DeliveryExecutionStatusActive: active state
  • http://www.tao.lu/Ontologies/TAODelivery.rdf#DeliveryExecutionStatusPaused: paused state
  • http://www.tao.lu/Ontologies/TAODelivery.rdf#DeliveryExecutionStatusFinished: finished state
  • http://www.tao.lu/Ontologies/TAODelivery.rdf#DeliveryExecutionStatusTerminated: terminated state

One can specify multiple states as an array to exclude.

authorization.conf.php

Configuration option providers

Description : when verifying that a given delivery execution is allowed to be executed, the specified providers are used. For an execution to be rejected, at least one provider should throw an exception, return values are not considered

Possible values:

  • Objects of a class that implements the AuthorizationProvider interface

Value examples :

  • [ new oat\taoDelivery\model\authorization\strategy\StateValidation() ]
  • [ new oat\taoDelivery\model\authorization\strategy\StateValidation(), oat\taoDelivery\model\authorization\strategy\AuthorizationAggregator() ]

DeliveryExecutionDelete.conf.php

Configuration option deleteDeliveryExecutionDataServices

Description: the list of services to remove a delivery execution

Possible values:

  • Objects of a class that implements the DeliveryExecutionDelete interface.

deliveryFields.conf.php

Configuration option http://www.tao.lu/Ontologies/TAODelivery.rdf#CustomLabel

Description: the use roles able to see delivery custom labels

Possible values:

  • Any TAO roles

Value examples:

  • [ 'http://www.tao.lu/Ontologies/TAO.rdf#DeliveryRole' ]

returnUrl.conf.php

Configuration option extension

Description: an extension name for composing a return URL

Possible values:

  • Any TAO extension name

Value examples:

  • taoDelivery

Configuration option controller

Description: a controller (module) name for composing a return URL

Possible values:

  • Any controller within the extension above

Value examples:

  • Main

Configuration option method

Description: a method (action) for composing a return URL

Possible values:

  • any public method within the controller above

Value examples:

  • index

Extension Wiki

You can find the extension wiki here.