diff options
author | Matthew Somerville <matthew-github@dracos.co.uk> | 2016-08-26 15:05:30 +0100 |
---|---|---|
committer | Matthew Somerville <matthew-github@dracos.co.uk> | 2016-08-26 15:05:30 +0100 |
commit | 0e45fa27e4bc857f61b71f6c121a61e08e54cb6a (patch) | |
tree | 7e83c50825819b60a9a73f16c4d4f0a4ff247650 /perllib/Open311/Endpoint/Schema/Regex.pm | |
parent | c1178ea85d1879d6533ac09e2a3c813441554b43 (diff) | |
parent | a09c61c807d8d6b50227c9d8aa687f1eb22bad00 (diff) |
Merge branch 'stevenage-open311'
Diffstat (limited to 'perllib/Open311/Endpoint/Schema/Regex.pm')
-rw-r--r-- | perllib/Open311/Endpoint/Schema/Regex.pm | 43 |
1 files changed, 0 insertions, 43 deletions
diff --git a/perllib/Open311/Endpoint/Schema/Regex.pm b/perllib/Open311/Endpoint/Schema/Regex.pm deleted file mode 100644 index a79542198..000000000 --- a/perllib/Open311/Endpoint/Schema/Regex.pm +++ /dev/null @@ -1,43 +0,0 @@ -use strict; use warnings; -package Open311::Endpoint::Schema::Regex; -use parent 'Data::Rx::CommonType::EasyNew'; - -use Carp (); - -sub type_uri { - 'tag:wiki.open311.org,GeoReport_v2:rx/regex', -} - -sub guts_from_arg { - my ($class, $arg, $rx) = @_; - $arg ||= {}; - - my $pattern = delete $arg->{pattern}; - my $message = delete $arg->{message}; - if (my @unexpected = keys %$arg) { - Carp::croak sprintf "Unknown arguments %s in constructing %s", - (join ',' => @unexpected), $class->type_uri; - } - - return { - str_schema => $rx->make_schema('//str'), - pattern => qr/$pattern/, - message => $message, - }; -} - -sub assert_valid { - my ($self, $value) = @_; - - $self->{str_schema}->assert_valid( $value ); - - return 1 if $value =~ $self->{pattern}; - - $self->fail({ - error => [ qw(type) ], - message => $self->{message} || "found value doesn't match regex", - value => $value, - }) -} - -1; |