Acme-VOYAGEGROUP-ConferenceRoom

 view release on metacpan or  search on metacpan

MANIFEST  view on Meta::CPAN

Build.PL
Changes
LICENSE
META.json
README.md
bin/conference_room
cpanfile
lib/Acme/VOYAGEGROUP/ConferenceRoom.pm
lib/Acme/VOYAGEGROUP/ConferenceRoom/Output/Color.pm
lib/Acme/VOYAGEGROUP/ConferenceRoom/Output/JSON.pm
lib/Acme/VOYAGEGROUP/ConferenceRoom/Output/MessagePack.pm
lib/Acme/VOYAGEGROUP/ConferenceRoom/Output/XML.pm
minil.toml
t/00_compile.t
t/01_conference_room.t
META.yml
MANIFEST

META.json  view on Meta::CPAN

            "Test::CPAN::Meta" : "0",
            "Test::MinimumVersion" : "0.10108",
            "Test::Pod" : "1.41",
            "Test::Spellunker" : "v0.2.7"
         }
      },
      "runtime" : {
         "requires" : {
            "Data::MessagePack" : "0",
            "Encode::Locale" : "0",
            "JSON::XS" : "0",
            "UNIVERSAL::require" : "0",
            "XML::Smart" : "0",
            "perl" : "5.008005"
         }
      },
      "test" : {
         "requires" : {
            "Test::Base::Less" : "0",
            "Test::More" : "0.98",
            "Test::Pretty" : "0"

META.json  view on Meta::CPAN

      }
   },
   "provides" : {
      "Acme::VOYAGEGROUP::ConferenceRoom" : {
         "file" : "lib/Acme/VOYAGEGROUP/ConferenceRoom.pm",
         "version" : "0.01"
      },
      "Acme::VOYAGEGROUP::ConferenceRoom::Output::Color" : {
         "file" : "lib/Acme/VOYAGEGROUP/ConferenceRoom/Output/Color.pm"
      },
      "Acme::VOYAGEGROUP::ConferenceRoom::Output::JSON" : {
         "file" : "lib/Acme/VOYAGEGROUP/ConferenceRoom/Output/JSON.pm"
      },
      "Acme::VOYAGEGROUP::ConferenceRoom::Output::MessagePack" : {
         "file" : "lib/Acme/VOYAGEGROUP/ConferenceRoom/Output/MessagePack.pm"
      },
      "Acme::VOYAGEGROUP::ConferenceRoom::Output::XML" : {
         "file" : "lib/Acme/VOYAGEGROUP/ConferenceRoom/Output/XML.pm"
      }
   },
   "release_status" : "stable",
   "resources" : {

META.yml  view on Meta::CPAN

    - eg
    - examples
    - author
    - builder
provides:
  Acme::VOYAGEGROUP::ConferenceRoom:
    file: lib/Acme/VOYAGEGROUP/ConferenceRoom.pm
    version: 0.01
  Acme::VOYAGEGROUP::ConferenceRoom::Output::Color:
    file: lib/Acme/VOYAGEGROUP/ConferenceRoom/Output/Color.pm
  Acme::VOYAGEGROUP::ConferenceRoom::Output::JSON:
    file: lib/Acme/VOYAGEGROUP/ConferenceRoom/Output/JSON.pm
  Acme::VOYAGEGROUP::ConferenceRoom::Output::MessagePack:
    file: lib/Acme/VOYAGEGROUP/ConferenceRoom/Output/MessagePack.pm
  Acme::VOYAGEGROUP::ConferenceRoom::Output::XML:
    file: lib/Acme/VOYAGEGROUP/ConferenceRoom/Output/XML.pm
requires:
  Data::MessagePack: 0
  Encode::Locale: 0
  JSON::XS: 0
  UNIVERSAL::require: 0
  XML::Smart: 0
  perl: 5.008005
resources:
  bugtracker: https://github.com/monmon/Acme-VOYAGEGROUP-ConferenceRoom/issues
  homepage: https://github.com/monmon/Acme-VOYAGEGROUP-ConferenceRoom
  repository: https://github.com/monmon/Acme-VOYAGEGROUP-ConferenceRoom.git
version: 0.01

cpanfile  view on Meta::CPAN

requires 'perl', '5.008001';
requires 'Encode::Locale';
requires 'UNIVERSAL::require';
requires 'JSON::XS';
requires 'XML::Smart';
requires 'Data::MessagePack';

on 'test' => sub {
    requires 'Test::More', '0.98';
    requires 'Test::Pretty';
    requires 'Test::Base::Less';
};

lib/Acme/VOYAGEGROUP/ConferenceRoom.pm  view on Meta::CPAN

    },
    ajito => {
        lines         => [15..16],
        normalization => qr/^あじと|アジト$/ms,
        position      => qr{ \s(/*\|)$ }x,
    },
);

my %OUTPUT_OF = (
    color        => 'Acme::VOYAGEGROUP::ConferenceRoom::Output::Color',
    json         => 'Acme::VOYAGEGROUP::ConferenceRoom::Output::JSON',
    xml          => 'Acme::VOYAGEGROUP::ConferenceRoom::Output::XML',
    message_pack => 'Acme::VOYAGEGROUP::ConferenceRoom::Output::MessagePack',
);

sub conference_room {
    my $room_name = shift or croak "Conference Room Not Found";
    my $output_type = shift || 'color';

    $room_name = _normalize($room_name);
    my $process = $PROCESS_OF{$room_name};

lib/Acme/VOYAGEGROUP/ConferenceRoom/Output/JSON.pm  view on Meta::CPAN

package Acme::VOYAGEGROUP::ConferenceRoom::Output::JSON;
use strict;
use warnings;
use utf8;
use JSON::XS;

sub convert {
    my $class = shift;
    my $lines = shift;

    encode_json {
        conference_room => join "\n", @{$lines}
    };
}



( run in 1.631 second using v1.01-cache-2.11-cpan-cdf2f3d4e48 )