Articulate

 view release on metacpan or  search on metacpan

META.json  view on Meta::CPAN

         "requires" : {
            "ExtUtils::MakeMaker" : "0"
         }
      },
      "runtime" : {
         "requires" : {
            "Class::Inspector" : "0",
            "DBD::SQLite" : "1.46",
            "DBIx::Class" : "0.082",
            "Data::DPath" : "0.5",
            "DateTime" : "1.18",
            "Digest::SHA" : "0",
            "Exporter::Declare" : "0.113",
            "File::Path" : "0",
            "Hash::Merge" : "0.2",
            "IO::All" : "0",
            "JSON" : "0",
            "Module::Load" : "0",
            "Moo" : "1.004",
            "MooX::Singleton" : "0",
            "SQL::Translator" : "0.11018",

META.yml  view on Meta::CPAN

name: Articulate
no_index:
  directory:
    - t
    - inc
requires:
  Class::Inspector: '0'
  DBD::SQLite: '1.46'
  DBIx::Class: '0.082'
  Data::DPath: '0.5'
  DateTime: '1.18'
  Digest::SHA: '0'
  Exporter::Declare: '0.113'
  File::Path: '0'
  Hash::Merge: '0.2'
  IO::All: '0'
  JSON: '0'
  Module::Load: '0'
  Moo: '1.004'
  MooX::Singleton: '0'
  SQL::Translator: '0.11018'

MYMETA.json  view on Meta::CPAN

         "requires" : {
            "ExtUtils::MakeMaker" : "0"
         }
      },
      "runtime" : {
         "requires" : {
            "Class::Inspector" : "0",
            "DBD::SQLite" : "1.46",
            "DBIx::Class" : "0.082",
            "Data::DPath" : "0.5",
            "DateTime" : "1.18",
            "Digest::SHA" : "0",
            "Exporter::Declare" : "0.113",
            "File::Path" : "0",
            "Hash::Merge" : "0.2",
            "IO::All" : "0",
            "JSON" : "0",
            "Module::Load" : "0",
            "Moo" : "1.004",
            "MooX::Singleton" : "0",
            "SQL::Translator" : "0.11018",

MYMETA.yml  view on Meta::CPAN

name: Articulate
no_index:
  directory:
    - t
    - inc
requires:
  Class::Inspector: '0'
  DBD::SQLite: '1.46'
  DBIx::Class: '0.082'
  Data::DPath: '0.5'
  DateTime: '1.18'
  Digest::SHA: '0'
  Exporter::Declare: '0.113'
  File::Path: '0'
  Hash::Merge: '0.2'
  IO::All: '0'
  JSON: '0'
  Module::Load: '0'
  Moo: '1.004'
  MooX::Singleton: '0'
  SQL::Translator: '0.11018'

Makefile.PL  view on Meta::CPAN

    resources => {
      repository => 'http://github.com/pdl/Articulate',
      bugtracker => 'http://github.com/pdl/Articulate/issues',
      homepage   => 'http://github.com/pdl/Articulate',
    },
  },
  MIN_PERL_VERSION => 5.010_001,
  PL_FILES         => {},
  PREREQ_PM        => {
    'Class::Inspector'  => 0,       # Used by Articulate::Role::Service
    'DateTime'          => 1.18,
    'Data::DPath'       => 0.50,
    'DBIx::Class'       => 0.082,   # Until we separate out Storage::Local
    'DBD::SQLite'       => 1.46,    # Until we separate out Storage::Local
    'Digest::SHA'       => 0,
    'Exporter::Declare' => 0.113,
    'File::Path'        => 0,       # implied by IO::All but just in case
    'Hash::Merge'       => 0.2,
    'IO::All'           => 0,
    'JSON'              => 0,
    'Module::Load'      => 0,

lib/Articulate/Caching/Native.pm  view on Meta::CPAN

package Articulate::Caching::Native;
use strict;
use warnings;

use Moo;
use DateTime;
with 'Articulate::Role::Component';

=head1 NAME

Articulate::Caching::Native - cache content in memory

=head1 DESCRIPTION

This implements caching by keeping an hash of the content you wish to
cache in memory.

lib/Articulate/Caching/Native.pm  view on Meta::CPAN

a maximum number of locations under which content may be stored is set.
Once this maximum is reached or exceeded, a quarter of the keys are
removed (preserving those which have most recently been accessed).

Consequently, it is unsuitable for cases where large documents are to
be stored alongside small ones, or where you have a very large number
of locations you want to cache.

=cut

sub _now { DateTime->now . '' }

=head1 ATTRIBUTES

=cut

=head3 cache

This is the contents of the cache. Don't set this.

=cut

lib/Articulate/Enrichment/DateCreated.pm  view on Meta::CPAN

Articulate::Enrichment::DateCreated - add a creation date to the meta

=head1 METHODS

=head3 enrich

Sets the creation date (C<meta.schema.core.dateCreated>) to the current time, unless it already has a defined value.

=cut

use DateTime;

sub _now {
  DateTime->now;
}

sub enrich {
  my $self    = shift;
  my $item    = shift;
  my $request = shift;
  my $now     = _now;
  $item->meta->{schema}->{core}->{dateCreated} //= "$now";
  return $item;
}

lib/Articulate/Enrichment/DateUpdated.pm  view on Meta::CPAN


=head1 METHODS

=head3 enrich

Sets the update date (C<meta.schema.core.dateUpdated>) to the current
time.

=cut

use DateTime;

sub _now {
  DateTime->now;
}

sub enrich {
  my $self    = shift;
  my $item    = shift;
  my $request = shift;
  my $now     = _now;
  $item->meta->{schema}->{core}->{dateUpdated} = "$now";
  return $item;
}



( run in 0.647 second using v1.01-cache-2.11-cpan-05444aca049 )