From 7f7d1fc8cbfc809f6e519489f50c87862a77455d Mon Sep 17 00:00:00 2001 From: Moray Jones Date: Mon, 29 Apr 2024 17:29:09 +0100 Subject: [PATCH 1/2] [Hackney] Add Arcus passthrough for open311 Adds passthrough for Arbus Open311 https://mysocietysupport.freshdesk.com/a/tickets/4052 --- conf/council-hackney_arcus.yml-example | 2 ++ .../Endpoint/Integration/UK/Hackney/Arcus.pm | 24 +++++++++++++++++++ t/open311/endpoint/uk.t | 2 ++ 3 files changed, 28 insertions(+) create mode 100644 conf/council-hackney_arcus.yml-example create mode 100644 perllib/Open311/Endpoint/Integration/UK/Hackney/Arcus.pm diff --git a/conf/council-hackney_arcus.yml-example b/conf/council-hackney_arcus.yml-example new file mode 100644 index 000000000..2c16d9f4d --- /dev/null +++ b/conf/council-hackney_arcus.yml-example @@ -0,0 +1,2 @@ +endpoint: https://localhost:4000/ +api_key: 123 diff --git a/perllib/Open311/Endpoint/Integration/UK/Hackney/Arcus.pm b/perllib/Open311/Endpoint/Integration/UK/Hackney/Arcus.pm new file mode 100644 index 000000000..eb01531a3 --- /dev/null +++ b/perllib/Open311/Endpoint/Integration/UK/Hackney/Arcus.pm @@ -0,0 +1,24 @@ +=head1 NAME + +Open311::Endpoint::Integration::UK::Hackney::Arcus - Hackney passthrough for the Arcus backend + +=head1 SUMMARY + +This is the Hackney-specific Arcus integration. It is a standard +Open311 server apart from it uses a different endpoint for updates. + +=cut + +package Open311::Endpoint::Integration::UK::Hackney::Arcus; + +use Moo; +extends 'Open311::Endpoint::Integration::Passthrough'; +extends 'Open311::Endpoint::Integration::UK::Hackney::Base'; + +around BUILDARGS => sub { + my ($orig, $class, %args) = @_; + $args{jurisdiction_id} = 'hackney_arcus'; + return $class->$orig(%args); +}; + +1; diff --git a/t/open311/endpoint/uk.t b/t/open311/endpoint/uk.t index da561b43d..823931253 100644 --- a/t/open311/endpoint/uk.t +++ b/t/open311/endpoint/uk.t @@ -56,6 +56,8 @@ test_multi(1, 'Open311::Endpoint::Integration::UK::Oxfordshire', test_multi(1, 'Open311::Endpoint::Integration::UK::Hackney', 'Open311::Endpoint::Integration::UK::Hackney::Highways' => 'hackney_highways_alloy_v2', 'Open311::Endpoint::Integration::UK::Hackney::Environment' => 'hackney_environment_alloy_v2', + 'Open311::Endpoint::Integration::UK::Hackney::Arcus' => 'hackney_arcus', + ); test_multi(1, 'Open311::Endpoint::Integration::UK::Buckinghamshire', From c100158c39b75188e05a6831c5275b213a1e7d90 Mon Sep 17 00:00:00 2001 From: Moray Jones Date: Wed, 1 May 2024 10:45:28 +0100 Subject: [PATCH 2/2] fixup! [Hackney] Add Arcus passthrough for open311 --- perllib/Open311/Endpoint/Integration/UK/Hackney/Arcus.pm | 1 - t/open311/endpoint/uk.t | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/perllib/Open311/Endpoint/Integration/UK/Hackney/Arcus.pm b/perllib/Open311/Endpoint/Integration/UK/Hackney/Arcus.pm index eb01531a3..37194a325 100644 --- a/perllib/Open311/Endpoint/Integration/UK/Hackney/Arcus.pm +++ b/perllib/Open311/Endpoint/Integration/UK/Hackney/Arcus.pm @@ -13,7 +13,6 @@ package Open311::Endpoint::Integration::UK::Hackney::Arcus; use Moo; extends 'Open311::Endpoint::Integration::Passthrough'; -extends 'Open311::Endpoint::Integration::UK::Hackney::Base'; around BUILDARGS => sub { my ($orig, $class, %args) = @_; diff --git a/t/open311/endpoint/uk.t b/t/open311/endpoint/uk.t index 823931253..0643a3fbf 100644 --- a/t/open311/endpoint/uk.t +++ b/t/open311/endpoint/uk.t @@ -53,10 +53,10 @@ test_multi(1, 'Open311::Endpoint::Integration::UK::Oxfordshire', 'Open311::Endpoint::Integration::UK::Oxfordshire::AlloyV2' => 'oxfordshire_alloy_v2', ); -test_multi(1, 'Open311::Endpoint::Integration::UK::Hackney', +test_multi(0, 'Open311::Endpoint::Integration::UK::Hackney', 'Open311::Endpoint::Integration::UK::Hackney::Highways' => 'hackney_highways_alloy_v2', 'Open311::Endpoint::Integration::UK::Hackney::Environment' => 'hackney_environment_alloy_v2', - 'Open311::Endpoint::Integration::UK::Hackney::Arcus' => 'hackney_arcus', + #'Open311::Endpoint::Integration::UK::Hackney::Arcus' => 'hackney_arcus', );