islandora-rdm/islandora_bagger_integration

Islandora 模块,用于以 Bagger 格式导出内容。

安装: 69

依赖项: 1

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 5

类型:drupal-module

dev-8.x-1.x 2021-01-21 20:23 UTC

This package is auto-updated.

Last update: 2024-09-10 20:40:19 UTC


README

介绍

Drupal 模块,允许用户使用 Islandora Bagger 创建 Bag。可以以“远程”或“本地”模式运行,具体说明如下。

要求

  • Islandora Bagger 微服务
  • Islandora 8
  • 如果您想使用除默认文件以外的其他 Islandora Bagger 配置文件,请使用 Context。这是 Islandora 的一个要求,因此它已经安装。

安装

  1. 将此 Github 仓库克隆到您的 Islandora 的 drupal/web/modules/contrib 目录中。
  2. 您可以在“管理 > 扩展”菜单下启用此模块,或者通过运行 drush en -y islandora_bagger_integration 命令来启用。

配置

此模块的管理设置表单需要以下内容

  1. 选择是否以本地或远程模式运行。
  2. 在您的 Drupal 服务器上到默认 Islandora Bagger 配置文件的绝对路径。如果未配置任何上下文以使用替代配置文件,则使用此文件。
  3. 如果使用远程模式
    1. Islandora Bagger REST 端点的 URL。如果您在 CLAW Vagrant 上运行 Islandora,并在主机机器上运行 Islandora Bagger(即托管 Vagrant 的同一台机器),请使用 10.0.2.2 作为端点 IP 地址而不是 localhost
    2. 将请求创建 Bag 的用户的电子邮件地址添加到配置文件中的选项。如果选中,则使用键 recipient_email 将用户的电子邮件地址添加到配置文件中。此外,如果选中此选项,则向用户显示的消息将表明他们将收到一个电子邮件,告知他们何时可以下载 Bag。
  4. 如果以本地模式运行,则在您的 Drupal 服务器上 Islandora Bagger 安装的目录的绝对路径。

配置完管理设置后,像其他任何块一样放置“Islandora Bagger 块”。您应该将此块限制为您的 Islandora 节点的内容类型,以及您希望能够创建 Bag 的用户角色。

使用方法

此模块与 Islanodra Bagger 的交互可以通过两种方式配置

  1. 使用 Islandora Bagger 作为远程微服务(“远程”模式)
    • 在此模式下,提交“创建 Bag”表单不会直接生成 Bag;相反,它向远程 Islandora Bagger 的 REST 接口发送请求,然后将其处理队列填充为节点 ID 和在创建该节点的 Bag 时使用的配置文件。
    • 在远程模式下,此 Drupal 模块不会在 Bag 准备就绪时通知用户;您需要配置 Islandora Bagger 向用户发送电子邮件,告知他们可以如何获取 Bag。
  2. 使用 Islandora Bagger 作为命令行实用程序(“本地”模式)
    • 在此模式下,提交“创建 Bag”表单将调用服务器壳中的 Islandora Bagger,然后生成 Bag。

在两种情况下,最终用户通过在块中提交一个简单的表单(只有一个按钮)来为当前对象生成一个 Bag。如果在远程模式下运行,用户将被告知他们将收到一个电子邮件,告知他们可以下载 Bag(微服务需要配置为发送此电子邮件);如果在本地模式下运行,用户将看到一个可以下载 Bag 的链接。

本地模式的优势在于在Bag生成后立即向用户提供下载链接。本地模式的缺点是Bag的创建是同步进行的,因此对于文件非常大的对象,任务可能会超时。

远程模式的优势在于生成Bag永远不会超时,因为点击“创建Bag”按钮会向远程Islandora Bagger微服务发送一个简单的REST请求,该服务然后将请求添加到队列中稍后处理。这也是一个缺点,因为用户需要稍后才能下载Bag。

使用上下文

本模块包含两个上下文反应,可以控制Islandora Bagger配置。

使用上下文来定义要使用的配置文件

其中一个反应允许您使用除默认之外的其他Islandora Bagger配置文件。要启用此功能,请执行以下操作

  1. 安装Context和Context UI模块(Islandora的要求,因此已经完成)。
  2. 创建一个上下文或编辑一个现有的上下文。
  3. 定义您的条件。
  4. 添加“Islandora Bagger Config File”反应。
  5. 输入您想要使用的配置文件的绝对路径。

本模块不提供通过Drupal的Web界面上传配置文件的机制,因此您需要访问Drupal服务器的文件系统。此外,不要将配置文件放在可以通过Web访问的目录中,因为它们包含访问您的Drupal REST接口的凭证。

使用上下文添加或修改Islandora Bagger配置设置

另一个反应允许您向Islandora Bagger配置文件添加选项或覆盖现有选项。要启用此功能,请执行以下操作

  1. 安装Context和Context UI模块(Islandora的要求,因此已经完成)。
  2. 创建一个上下文或编辑一个现有的上下文。
  3. 定义您的条件。
  4. 添加“Islandora Bagger Config Options”反应。
  5. 输入您想要添加或修改的选项。每行添加一个选项,使用YAML语法。例如
serialize: tgz
bag-info: Contact-Email: admin@example.com | Custom-Tag: Some value.
plugins: AddBasicTags | AddMedia | AddFedoraTurtle

bag-infodrupal_basic_authdrupal_media_tagspluginspost_bag_scripts是管道分隔的列表。对于bag-info,列表中的每个成员都是一个标签:值对(由冒号分隔)。其他列表选项接受管道分隔的值列表。

如果配置文件中存在选项的键,则该选项将使用新值更新。如果配置文件中不存在选项的键,则将其添加。唯一的例外是bag-info:对于此选项,上下文反应中提供的值将与配置文件中任何现有的值合并。例如,如果反应包含一个标签“Contact-Email: admin@example.com”,并且配置文件中包含一个“Contact-Email”标签,则现有的一个将被反应中的一个替换。如果反应包含配置文件中不存在的标签,则将其作为新标签添加。

从其他模块修改Islandora Bagger配置

本模块定义了一个钩子,允许其他模块修改远程和本地模式下的Islandora Bagger配置。有关详细信息,请参阅islandora_bagger_integration.api.php

待办事项

查看问题列表。

当前维护者

许可证

GPLv2