Scroll to navigation

Catmandu::Importer::JSON(3pm) User Contributed Perl Documentation Catmandu::Importer::JSON(3pm)
 

NAME

Catmandu::Importer::JSON - Package that imports JSON data

SYNOPSIS

    use Catmandu::Importer::JSON;
    my $importer = Catmandu::Importer::JSON->new(file => "/foo/bar.json");
    my $n = $importer->each(sub {
        my $hashref = $_[0];
        # ...
    });
The defaults assume a newline delimited JSON file:
    { "recordno": 1, "name": "Alpha" }
    { "recordno": 2, "name": "Beta" }
    { "recordno": 3, "name": "Gamma" }
Use the "multiline" option to parse pretty-printed JSON or JSON arrays.

METHODS

new(file => $filename , fh => $fh , multiline => 0|1 ,fix => [...])

Create a new JSON importer for $filename. Uses STDIN when no filename is given. "multiline" switches optionally between line-delimited JSON and multiline JSON or arrays. the default is line-delimited JSON.
The constructor inherits the fix parameter from Catmandu::Fixable. When given, then each fix or fix script will be applied to imported items.

count

each(&callback)

...

Every Catmandu::Importer is a Catmandu::Iterable all its methods are inherited. The Catmandu::Importer::JSON methods are not idempotent: JSON streams can only be read once.

SEE ALSO

Catmandu::Iterable
2014-10-14 perl v5.20.1