View on
MetaCPAN
Pieter De Praetere > Datahub-Factory-0.02 > Datahub::Factory::Importer::PIDS

Download:
Datahub-Factory-0.02.tar.gz

Dependencies

Annotate this POD

Website

View/Report Bugs
Source   Latest Release: Datahub-Factory-0.6

NAME ^

Datahub::Factory::Importer::PIDS - Insert PIDS from an external source

SYNOPSIS ^

    use Datahub::Factory::Importer::PIDS;
    use Data::Dumper qw(Dumper);

    my $pids = Datahub::Factory::Importer::PIDS->new(
        username       => 'datahub',
        api_key        => 'datahub',
        container_name => 'datahub'
    );

    $pids->temporary_table($pids->get_object('test.csv'), 'id');

DESCRIPTION ^

The module uses Catmandu to create a SQLite database from a CSV containing an export of the Resolver that can be used in Catmandu fixes to insert PIDS (Persistent Identifiers).

The CSV's are stored on a protected Rackspace cloud files instance.

It has absolutely no use outside of the Datahub use case.

PARAMETERS ^

username

Rackspace Cloud Files username to access the files.

api_key

API key for the Cloud Files user.

container_name

Name of the container where the files are stored. Optional, defaults to datahub.

METHODS ^

get_object($filename)

Get the object called $filename from the Cloud files instance and store it in /tmp. Only accepts CSV's.

Returns the local path of the object it just fetched.

temporary_table($csv_location, $id_column)

Create a SQLite database (in /tmp) that stores the CSV that is stored in $csv_location. Create an _id column (as expected by Catmandu::Fix::lookup_in_store) in the database from the column in the CSV called $id_column.

Returns nothing.

AUTHOR ^

Pieter De Praetere <pieter at packed.be >

COPYRIGHT ^

Copyright 2017- PACKED vzw

LICENSE ^

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO ^

Datahub::Factory Catmandu

syntax highlighting: