aboutsummaryrefslogtreecommitdiffstats
path: root/perllib/Open311/Endpoint/Schema/Regex.pm
diff options
context:
space:
mode:
authorMatthew Somerville <matthew-github@dracos.co.uk>2016-08-26 15:05:30 +0100
committerMatthew Somerville <matthew-github@dracos.co.uk>2016-08-26 15:05:30 +0100
commit0e45fa27e4bc857f61b71f6c121a61e08e54cb6a (patch)
tree7e83c50825819b60a9a73f16c4d4f0a4ff247650 /perllib/Open311/Endpoint/Schema/Regex.pm
parentc1178ea85d1879d6533ac09e2a3c813441554b43 (diff)
parenta09c61c807d8d6b50227c9d8aa687f1eb22bad00 (diff)
Merge branch 'stevenage-open311'
Diffstat (limited to 'perllib/Open311/Endpoint/Schema/Regex.pm')
-rw-r--r--perllib/Open311/Endpoint/Schema/Regex.pm43
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;