From 6dbb3b22296754ad237b97dac3cb3125a8654f07 Mon Sep 17 00:00:00 2001 From: Irina Peshinskaya Date: Tue, 18 Oct 2016 15:42:06 +0300 Subject: [PATCH] TT#28460 Introduce return_representation in item packages Change-Id: Ibc2afdffd8a70245b6656f78bad2c4fc5273526e --- .../Controller/API/AutoAttendantsItem.pm | 28 ++-------------- .../Panel/Controller/API/BillingFeesItem.pm | 32 +++---------------- .../Controller/API/BillingNetworksItem.pm | 28 ++-------------- .../Controller/API/BillingProfilesItem.pm | 28 ++-------------- .../Panel/Controller/API/BillingZonesItem.pm | 28 ++-------------- .../Panel/Controller/API/CCMapEntriesItem.pm | 28 ++-------------- .../Controller/API/CFDestinationSetsItem.pm | 28 ++-------------- .../Panel/Controller/API/CFMappingsItem.pm | 28 ++-------------- .../Panel/Controller/API/CFSourceSetsItem.pm | 28 ++-------------- .../Panel/Controller/API/CFTimeSetsItem.pm | 28 ++-------------- .../Panel/Controller/API/CallForwardsItem.pm | 28 ++-------------- .../Panel/Controller/API/ContractsItem.pm | 28 ++-------------- .../Controller/API/CustomerBalancesItem.pm | 30 ++--------------- .../Controller/API/CustomerLocationsItem.pm | 27 ++-------------- .../Controller/API/CustomerPreferencesItem.pm | 28 ++-------------- .../Panel/Controller/API/CustomersItem.pm | 30 ++--------------- .../Controller/API/EmailTemplatesItem.pm | 28 ++-------------- .../API/EmergencyMappingContainersItem.pm | 28 ++-------------- .../Controller/API/EmergencyMappingsItem.pm | 28 ++-------------- .../Panel/Controller/API/InterceptionsItem.pm | 28 ++-------------- .../Panel/Controller/API/LnpCarriersItem.pm | 28 ++-------------- .../Panel/Controller/API/LnpNumbersItem.pm | 28 ++-------------- .../Panel/Controller/API/NcosLevelsItem.pm | 28 ++-------------- .../Controller/API/NcosLnpCarriersItem.pm | 28 ++-------------- .../Panel/Controller/API/NcosPatternsItem.pm | 28 ++-------------- .../Controller/API/PbxDeviceConfigsItem.pm | 14 +------- .../Controller/API/PbxDeviceFirmwaresItem.pm | 14 +------- .../Controller/API/PbxDeviceProfilesItem.pm | 28 ++-------------- .../Panel/Controller/API/PeeringGroupsItem.pm | 28 ++-------------- .../Controller/API/PeeringInboundRulesItem.pm | 28 ++-------------- .../Panel/Controller/API/PeeringRulesItem.pm | 30 ++--------------- .../Panel/Controller/API/RemindersItem.pm | 30 ++--------------- .../Panel/Controller/API/SoundFilesItem.pm | 14 +------- .../Panel/Controller/API/SoundSetsItem.pm | 30 ++--------------- .../API/SubscriberProfileSetsItem.pm | 30 ++--------------- .../Controller/API/SubscriberProfilesItem.pm | 30 ++--------------- .../Controller/API/SystemContactsItem.pm | 28 ++-------------- .../Controller/API/UpnRewriteSetsItem.pm | 28 ++-------------- .../Controller/API/VoicemailSettingsItem.pm | 30 ++--------------- .../Panel/Controller/API/VoicemailsItem.pm | 28 ++-------------- lib/NGCP/Panel/Controller/API/VouchersItem.pm | 28 ++-------------- 41 files changed, 83 insertions(+), 1042 deletions(-) diff --git a/lib/NGCP/Panel/Controller/API/AutoAttendantsItem.pm b/lib/NGCP/Panel/Controller/API/AutoAttendantsItem.pm index 5317fe983d..ff21462dc5 100644 --- a/lib/NGCP/Panel/Controller/API/AutoAttendantsItem.pm +++ b/lib/NGCP/Panel/Controller/API/AutoAttendantsItem.pm @@ -113,19 +113,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $subscriber); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -161,19 +149,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $subscriber); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/BillingFeesItem.pm b/lib/NGCP/Panel/Controller/API/BillingFeesItem.pm index ce13b1b202..9035eabccf 100644 --- a/lib/NGCP/Panel/Controller/API/BillingFeesItem.pm +++ b/lib/NGCP/Panel/Controller/API/BillingFeesItem.pm @@ -101,20 +101,8 @@ sub PATCH :Allow { last unless $fee; $guard->commit; - - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_fee($c, $fee, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + my $hal = $self->hal_from_fee($c, $fee, $form); + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -141,20 +129,8 @@ sub PUT :Allow { last unless $fee; $guard->commit; - - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_fee($c, $fee, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + my $hal = $self->hal_from_fee($c, $fee, $form); + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/BillingNetworksItem.pm b/lib/NGCP/Panel/Controller/API/BillingNetworksItem.pm index 1b869cbd6b..88c7746df1 100644 --- a/lib/NGCP/Panel/Controller/API/BillingNetworksItem.pm +++ b/lib/NGCP/Panel/Controller/API/BillingNetworksItem.pm @@ -118,19 +118,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $dset, "destinationsets"); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -161,19 +149,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $dset, "destinationsets"); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/BillingProfilesItem.pm b/lib/NGCP/Panel/Controller/API/BillingProfilesItem.pm index ce1d1920c9..17c4c8ca09 100644 --- a/lib/NGCP/Panel/Controller/API/BillingProfilesItem.pm +++ b/lib/NGCP/Panel/Controller/API/BillingProfilesItem.pm @@ -116,19 +116,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_profile($c, $profile, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -160,19 +148,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_profile($c, $profile, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/BillingZonesItem.pm b/lib/NGCP/Panel/Controller/API/BillingZonesItem.pm index 7da1d70bb0..6e2e538ef7 100644 --- a/lib/NGCP/Panel/Controller/API/BillingZonesItem.pm +++ b/lib/NGCP/Panel/Controller/API/BillingZonesItem.pm @@ -115,19 +115,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_zone($c, $zone, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -158,19 +146,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_zone($c, $zone, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/CCMapEntriesItem.pm b/lib/NGCP/Panel/Controller/API/CCMapEntriesItem.pm index 0e8f42c852..31ce95de5f 100644 --- a/lib/NGCP/Panel/Controller/API/CCMapEntriesItem.pm +++ b/lib/NGCP/Panel/Controller/API/CCMapEntriesItem.pm @@ -117,19 +117,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $ccmapentry, "ccmapentries"); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -160,19 +148,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $item, "ccmapentries"); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/CFDestinationSetsItem.pm b/lib/NGCP/Panel/Controller/API/CFDestinationSetsItem.pm index 3ec1dc4b19..323205b782 100644 --- a/lib/NGCP/Panel/Controller/API/CFDestinationSetsItem.pm +++ b/lib/NGCP/Panel/Controller/API/CFDestinationSetsItem.pm @@ -117,19 +117,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $dset, "destinationsets"); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -160,19 +148,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $dset, "destinationsets"); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/CFMappingsItem.pm b/lib/NGCP/Panel/Controller/API/CFMappingsItem.pm index 633cc617c1..d551fc7de2 100644 --- a/lib/NGCP/Panel/Controller/API/CFMappingsItem.pm +++ b/lib/NGCP/Panel/Controller/API/CFMappingsItem.pm @@ -117,19 +117,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $item, "cfmappings"); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -160,19 +148,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $item, "cfmappings"); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/CFSourceSetsItem.pm b/lib/NGCP/Panel/Controller/API/CFSourceSetsItem.pm index 39db9095e1..1b44fdcfea 100644 --- a/lib/NGCP/Panel/Controller/API/CFSourceSetsItem.pm +++ b/lib/NGCP/Panel/Controller/API/CFSourceSetsItem.pm @@ -117,19 +117,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $sset, "sourcesets"); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -160,19 +148,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $sset, "sourcesets"); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/CFTimeSetsItem.pm b/lib/NGCP/Panel/Controller/API/CFTimeSetsItem.pm index 5ed628e71f..3db8e8c68a 100644 --- a/lib/NGCP/Panel/Controller/API/CFTimeSetsItem.pm +++ b/lib/NGCP/Panel/Controller/API/CFTimeSetsItem.pm @@ -117,19 +117,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $tset, "timesets"); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -160,19 +148,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $tset, "destinationsets"); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/CallForwardsItem.pm b/lib/NGCP/Panel/Controller/API/CallForwardsItem.pm index e535593ff6..d39b17fc53 100644 --- a/lib/NGCP/Panel/Controller/API/CallForwardsItem.pm +++ b/lib/NGCP/Panel/Controller/API/CallForwardsItem.pm @@ -117,19 +117,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $callforward); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -160,19 +148,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $callforward); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/ContractsItem.pm b/lib/NGCP/Panel/Controller/API/ContractsItem.pm index e4bf188809..d3a6bf01e9 100644 --- a/lib/NGCP/Panel/Controller/API/ContractsItem.pm +++ b/lib/NGCP/Panel/Controller/API/ContractsItem.pm @@ -132,19 +132,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_contract($c, $contract, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -179,19 +167,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_contract($c, $contract, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/CustomerBalancesItem.pm b/lib/NGCP/Panel/Controller/API/CustomerBalancesItem.pm index 917eff51a2..3238006a7f 100644 --- a/lib/NGCP/Panel/Controller/API/CustomerBalancesItem.pm +++ b/lib/NGCP/Panel/Controller/API/CustomerBalancesItem.pm @@ -111,23 +111,11 @@ sub PATCH :Allow { last unless $item; my $hal = $self->hal_from_item($c, $item, $form); - last unless $self->add_update_journal_item_hal($c,$hal); + last unless $self->add_update_journal_item_hal($c, $hal); $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'form' => $form, 'preference' => $preference ); } return; } @@ -160,19 +148,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/CustomerLocationsItem.pm b/lib/NGCP/Panel/Controller/API/CustomerLocationsItem.pm index 7c89696864..093fa376f5 100644 --- a/lib/NGCP/Panel/Controller/API/CustomerLocationsItem.pm +++ b/lib/NGCP/Panel/Controller/API/CustomerLocationsItem.pm @@ -118,19 +118,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $dset, "destinationsets"); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -161,18 +149,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/CustomerPreferencesItem.pm b/lib/NGCP/Panel/Controller/API/CustomerPreferencesItem.pm index ed78d56f5c..aaff825e17 100644 --- a/lib/NGCP/Panel/Controller/API/CustomerPreferencesItem.pm +++ b/lib/NGCP/Panel/Controller/API/CustomerPreferencesItem.pm @@ -118,19 +118,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $customer, "contracts"); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -162,19 +150,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $customer, "contracts"); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/CustomersItem.pm b/lib/NGCP/Panel/Controller/API/CustomersItem.pm index 7232c2f206..7549aaa2d4 100644 --- a/lib/NGCP/Panel/Controller/API/CustomersItem.pm +++ b/lib/NGCP/Panel/Controller/API/CustomersItem.pm @@ -138,23 +138,11 @@ sub PATCH :Allow { last unless $customer; my $hal = $self->hal_from_customer($c, $customer, $form, $now); - last unless $self->add_update_journal_item_hal($c,$hal); + last unless $self->add_update_journal_item_hal($c, $hal); $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_customer($c, $customer, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -187,19 +175,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_customer($c, $customer, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/EmailTemplatesItem.pm b/lib/NGCP/Panel/Controller/API/EmailTemplatesItem.pm index f07f2f084f..9da18cecf6 100644 --- a/lib/NGCP/Panel/Controller/API/EmailTemplatesItem.pm +++ b/lib/NGCP/Panel/Controller/API/EmailTemplatesItem.pm @@ -101,19 +101,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } @@ -141,19 +129,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/EmergencyMappingContainersItem.pm b/lib/NGCP/Panel/Controller/API/EmergencyMappingContainersItem.pm index b2535ce6f2..fed94dfdfb 100644 --- a/lib/NGCP/Panel/Controller/API/EmergencyMappingContainersItem.pm +++ b/lib/NGCP/Panel/Controller/API/EmergencyMappingContainersItem.pm @@ -102,19 +102,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } @@ -142,19 +130,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/EmergencyMappingsItem.pm b/lib/NGCP/Panel/Controller/API/EmergencyMappingsItem.pm index 86891835ec..ac66d2e124 100644 --- a/lib/NGCP/Panel/Controller/API/EmergencyMappingsItem.pm +++ b/lib/NGCP/Panel/Controller/API/EmergencyMappingsItem.pm @@ -101,19 +101,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } @@ -141,19 +129,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/InterceptionsItem.pm b/lib/NGCP/Panel/Controller/API/InterceptionsItem.pm index fd62d415fd..9625123812 100644 --- a/lib/NGCP/Panel/Controller/API/InterceptionsItem.pm +++ b/lib/NGCP/Panel/Controller/API/InterceptionsItem.pm @@ -114,19 +114,7 @@ sub PATCH :Allow { $guard->commit; $cguard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $cguard->commit; $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } @@ -156,19 +144,7 @@ sub PUT :Allow { $guard->commit; $cguard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $cguard->commit; $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/LnpCarriersItem.pm b/lib/NGCP/Panel/Controller/API/LnpCarriersItem.pm index e32515609d..7bc335d7f4 100644 --- a/lib/NGCP/Panel/Controller/API/LnpCarriersItem.pm +++ b/lib/NGCP/Panel/Controller/API/LnpCarriersItem.pm @@ -101,19 +101,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } @@ -141,19 +129,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/LnpNumbersItem.pm b/lib/NGCP/Panel/Controller/API/LnpNumbersItem.pm index 9e3267c9fa..b0b7b4a810 100644 --- a/lib/NGCP/Panel/Controller/API/LnpNumbersItem.pm +++ b/lib/NGCP/Panel/Controller/API/LnpNumbersItem.pm @@ -101,19 +101,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } @@ -141,19 +129,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/NcosLevelsItem.pm b/lib/NGCP/Panel/Controller/API/NcosLevelsItem.pm index 7de5089d1c..84827dbf09 100644 --- a/lib/NGCP/Panel/Controller/API/NcosLevelsItem.pm +++ b/lib/NGCP/Panel/Controller/API/NcosLevelsItem.pm @@ -101,19 +101,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } @@ -141,19 +129,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/NcosLnpCarriersItem.pm b/lib/NGCP/Panel/Controller/API/NcosLnpCarriersItem.pm index ef04648ebb..d131220d66 100644 --- a/lib/NGCP/Panel/Controller/API/NcosLnpCarriersItem.pm +++ b/lib/NGCP/Panel/Controller/API/NcosLnpCarriersItem.pm @@ -101,19 +101,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } @@ -141,19 +129,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/NcosPatternsItem.pm b/lib/NGCP/Panel/Controller/API/NcosPatternsItem.pm index 3fbb36cdeb..d303517793 100644 --- a/lib/NGCP/Panel/Controller/API/NcosPatternsItem.pm +++ b/lib/NGCP/Panel/Controller/API/NcosPatternsItem.pm @@ -101,19 +101,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } @@ -141,19 +129,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/PbxDeviceConfigsItem.pm b/lib/NGCP/Panel/Controller/API/PbxDeviceConfigsItem.pm index 61b7772a40..f8b122fc1b 100644 --- a/lib/NGCP/Panel/Controller/API/PbxDeviceConfigsItem.pm +++ b/lib/NGCP/Panel/Controller/API/PbxDeviceConfigsItem.pm @@ -100,19 +100,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/PbxDeviceFirmwaresItem.pm b/lib/NGCP/Panel/Controller/API/PbxDeviceFirmwaresItem.pm index e53cce6ba5..09b47b8949 100644 --- a/lib/NGCP/Panel/Controller/API/PbxDeviceFirmwaresItem.pm +++ b/lib/NGCP/Panel/Controller/API/PbxDeviceFirmwaresItem.pm @@ -105,19 +105,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/PbxDeviceProfilesItem.pm b/lib/NGCP/Panel/Controller/API/PbxDeviceProfilesItem.pm index d4a0fa7c27..f085fda96e 100644 --- a/lib/NGCP/Panel/Controller/API/PbxDeviceProfilesItem.pm +++ b/lib/NGCP/Panel/Controller/API/PbxDeviceProfilesItem.pm @@ -110,19 +110,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } @@ -157,19 +145,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/PeeringGroupsItem.pm b/lib/NGCP/Panel/Controller/API/PeeringGroupsItem.pm index 4a8b953631..98feea244f 100644 --- a/lib/NGCP/Panel/Controller/API/PeeringGroupsItem.pm +++ b/lib/NGCP/Panel/Controller/API/PeeringGroupsItem.pm @@ -91,19 +91,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } @@ -131,19 +119,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/PeeringInboundRulesItem.pm b/lib/NGCP/Panel/Controller/API/PeeringInboundRulesItem.pm index 72fe7ae7e5..3c68ed6501 100644 --- a/lib/NGCP/Panel/Controller/API/PeeringInboundRulesItem.pm +++ b/lib/NGCP/Panel/Controller/API/PeeringInboundRulesItem.pm @@ -101,19 +101,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } @@ -141,19 +129,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/PeeringRulesItem.pm b/lib/NGCP/Panel/Controller/API/PeeringRulesItem.pm index d23c110305..bc28f57482 100644 --- a/lib/NGCP/Panel/Controller/API/PeeringRulesItem.pm +++ b/lib/NGCP/Panel/Controller/API/PeeringRulesItem.pm @@ -101,19 +101,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } @@ -139,21 +127,7 @@ sub PUT :Allow { $item = $self->update_item($c, $item, $old_resource, $resource, $form); last unless $item; - $guard->commit; - - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $guard->commit; $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/RemindersItem.pm b/lib/NGCP/Panel/Controller/API/RemindersItem.pm index 2caea9a4d6..fefb117911 100644 --- a/lib/NGCP/Panel/Controller/API/RemindersItem.pm +++ b/lib/NGCP/Panel/Controller/API/RemindersItem.pm @@ -111,19 +111,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -152,21 +140,7 @@ sub PUT :Allow { my $hal = $self->hal_from_item($c, $item, $form); last unless $self->add_update_journal_item_hal($c,$hal); - $guard->commit; - - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $guard->commit; $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/SoundFilesItem.pm b/lib/NGCP/Panel/Controller/API/SoundFilesItem.pm index ab564c16e0..e07e5d122c 100644 --- a/lib/NGCP/Panel/Controller/API/SoundFilesItem.pm +++ b/lib/NGCP/Panel/Controller/API/SoundFilesItem.pm @@ -99,19 +99,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/SoundSetsItem.pm b/lib/NGCP/Panel/Controller/API/SoundSetsItem.pm index b61b7c1c00..c841f23885 100644 --- a/lib/NGCP/Panel/Controller/API/SoundSetsItem.pm +++ b/lib/NGCP/Panel/Controller/API/SoundSetsItem.pm @@ -114,19 +114,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -155,21 +143,7 @@ sub PUT :Allow { my $hal = $self->hal_from_item($c, $item, $form); last unless $self->add_update_journal_item_hal($c,$hal); - $guard->commit; - - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $guard->commit; $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/SubscriberProfileSetsItem.pm b/lib/NGCP/Panel/Controller/API/SubscriberProfileSetsItem.pm index ac5a1e06a8..bb0840829a 100644 --- a/lib/NGCP/Panel/Controller/API/SubscriberProfileSetsItem.pm +++ b/lib/NGCP/Panel/Controller/API/SubscriberProfileSetsItem.pm @@ -121,19 +121,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -169,21 +157,7 @@ sub PUT :Allow { my $hal = $self->hal_from_item($c, $item, $form); last unless $self->add_update_journal_item_hal($c,$hal); - $guard->commit; - - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $guard->commit; $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/SubscriberProfilesItem.pm b/lib/NGCP/Panel/Controller/API/SubscriberProfilesItem.pm index 8a353596b0..c05a62c146 100644 --- a/lib/NGCP/Panel/Controller/API/SubscriberProfilesItem.pm +++ b/lib/NGCP/Panel/Controller/API/SubscriberProfilesItem.pm @@ -116,19 +116,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -156,21 +144,7 @@ sub PUT :Allow { my $hal = $self->hal_from_item($c, $item, $form); last unless $self->add_update_journal_item_hal($c,$hal); - $guard->commit; - - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $guard->commit; $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/SystemContactsItem.pm b/lib/NGCP/Panel/Controller/API/SystemContactsItem.pm index f2b450f31f..7c0733aeb6 100644 --- a/lib/NGCP/Panel/Controller/API/SystemContactsItem.pm +++ b/lib/NGCP/Panel/Controller/API/SystemContactsItem.pm @@ -116,19 +116,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_contact($c, $contact, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -159,19 +147,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_contact($c, $contact, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/UpnRewriteSetsItem.pm b/lib/NGCP/Panel/Controller/API/UpnRewriteSetsItem.pm index 799b320f23..37e78e73f4 100644 --- a/lib/NGCP/Panel/Controller/API/UpnRewriteSetsItem.pm +++ b/lib/NGCP/Panel/Controller/API/UpnRewriteSetsItem.pm @@ -115,19 +115,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -158,19 +146,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/VoicemailSettingsItem.pm b/lib/NGCP/Panel/Controller/API/VoicemailSettingsItem.pm index 2b3b717f9e..7130518732 100644 --- a/lib/NGCP/Panel/Controller/API/VoicemailSettingsItem.pm +++ b/lib/NGCP/Panel/Controller/API/VoicemailSettingsItem.pm @@ -111,19 +111,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } @@ -151,21 +139,7 @@ sub PUT :Allow { my $hal = $self->hal_from_item($c, $item, $form); last unless $self->add_update_journal_item_hal($c, $hal); - $guard->commit; - - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - #my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $guard->commit; $self->return_representation($c, 'hal' => $hal, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/VoicemailsItem.pm b/lib/NGCP/Panel/Controller/API/VoicemailsItem.pm index 376c5bbc18..cfe88208f1 100644 --- a/lib/NGCP/Panel/Controller/API/VoicemailsItem.pm +++ b/lib/NGCP/Panel/Controller/API/VoicemailsItem.pm @@ -101,19 +101,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } @@ -141,19 +129,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } diff --git a/lib/NGCP/Panel/Controller/API/VouchersItem.pm b/lib/NGCP/Panel/Controller/API/VouchersItem.pm index e64c0d8696..53dbd9187d 100644 --- a/lib/NGCP/Panel/Controller/API/VouchersItem.pm +++ b/lib/NGCP/Panel/Controller/API/VouchersItem.pm @@ -106,19 +106,7 @@ sub PATCH :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; } @@ -151,19 +139,7 @@ sub PUT :Allow { $guard->commit; - if ('minimal' eq $preference) { - $c->response->status(HTTP_NO_CONTENT); - $c->response->header(Preference_Applied => 'return=minimal'); - $c->response->body(q()); - } else { - my $hal = $self->hal_from_item($c, $item, $form); - my $response = HTTP::Response->new(HTTP_OK, undef, HTTP::Headers->new( - $hal->http_headers, - ), $hal->as_json); - $c->response->headers($response->headers); - $c->response->header(Preference_Applied => 'return=representation'); - $c->response->body($response->content); - } + $self->return_representation($c, 'item' => $item, 'form' => $form, 'preference' => $preference ); } return; }