SteeringTarget API - removing redundent parameters

Project: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/commit/51240cd6
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/tree/51240cd6
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/diff/51240cd6

Branch: refs/heads/master
Commit: 51240cd6abd4624eb32db7294ce85fb5a3a0a0a6
Parents: 5cd1e75
Author: nir-sopher <n...@qwilt.com>
Authored: Tue Jul 18 00:21:45 2017 +0300
Committer: Jeremy Mitchell <mitchell...@gmail.com>
Committed: Mon Jul 31 08:40:07 2017 -0600

----------------------------------------------------------------------
 .../lib/API/DeliveryService/SteeringTarget.pm   | 26 ++++++++++----------
 traffic_ops/app/t/api/1.2/steering_target.t     |  5 ----
 2 files changed, 13 insertions(+), 18 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/51240cd6/traffic_ops/app/lib/API/DeliveryService/SteeringTarget.pm
----------------------------------------------------------------------
diff --git a/traffic_ops/app/lib/API/DeliveryService/SteeringTarget.pm 
b/traffic_ops/app/lib/API/DeliveryService/SteeringTarget.pm
index a1601a6..d6ccdfc 100644
--- a/traffic_ops/app/lib/API/DeliveryService/SteeringTarget.pm
+++ b/traffic_ops/app/lib/API/DeliveryService/SteeringTarget.pm
@@ -102,8 +102,8 @@ sub update {
        }
 
        my $values = {
-               deliveryservice => $params->{deliveryServiceId},
-               target          => $params->{targetId},
+               deliveryservice => $steering_ds_id,
+               target          => $target_ds_id,
                value           => $params->{value},
                type            => $params->{typeId},
        };
@@ -113,10 +113,10 @@ sub update {
        if ($update) {
 
                my $response;
-               $response->{deliveryServiceId} = $params->{deliveryServiceId};
-               $response->{targetId}          = $params->{targetId};
-               $response->{value}             = $params->{value};
-               $response->{typeId}            = $params->{typeId};
+               $response->{deliveryServiceId} = $update->deliveryservice->id;
+               $response->{targetId}          = $update->target->id;
+               $response->{value}             = $update->value;
+               $response->{typeId}            = $update->type->id;
 
                &log( $self, "Updated steering target [ " . $target_ds_id . " ] 
for deliveryservice: " . $steering_ds_id, "APICHANGE" );
 
@@ -131,6 +131,8 @@ sub update {
 sub create {
        my $self   = shift;
        my $params = $self->req->json;
+       my $steering_ds_id = $self->param('id');
+       my $target_ds_id   = $params->{targetId};
 
        if ( !&is_admin($self) ) {
                return $self->forbidden();
@@ -143,8 +145,8 @@ sub create {
        }
 
        my %criteria;
-       $criteria{'deliveryservice'} = $params->{deliveryservice};
-       $criteria{'target'}          = $params->{target};
+       $criteria{'deliveryservice'} = $steering_ds_id;
+       $criteria{'target'}          = $target_ds_id;
 
        my $existing = $self->db->resultset('SteeringTarget')->search( 
\%criteria )->single();
        if ( defined($existing) ) {
@@ -152,8 +154,8 @@ sub create {
        }
 
        my $values = {
-               deliveryservice => $params->{deliveryServiceId},
-               target          => $params->{targetId},
+               deliveryservice => $steering_ds_id,
+               target          => $target_ds_id,
                value           => $params->{value},
                type            => $params->{typeId},
        };
@@ -214,12 +216,10 @@ sub is_target_valid {
        }
 
        my $rules = {
-               fields => [qw/deliveryServiceId targetId value typeId/],
+               fields => [qw/value typeId/],
 
                # Validation checks to perform
                checks => [
-                       deliveryServiceId => [ is_required("is required") ],
-                       targetId          => [ is_required("is required") ],
                        value             => [ is_required("is required") ],
                        typeId            => [ is_required("is required") ],
                ]

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/51240cd6/traffic_ops/app/t/api/1.2/steering_target.t
----------------------------------------------------------------------
diff --git a/traffic_ops/app/t/api/1.2/steering_target.t 
b/traffic_ops/app/t/api/1.2/steering_target.t
index 4a3607f..91ce8d8 100644
--- a/traffic_ops/app/t/api/1.2/steering_target.t
+++ b/traffic_ops/app/t/api/1.2/steering_target.t
@@ -40,7 +40,6 @@ ok $t->post_ok( '/api/1.1/user/login', json => { u => 
Test::TestHelper::ADMIN_US
     'Log into the admin user?';
 
 ok $t->post_ok('/api/1.2/steering/900/targets' => {Accept => 
'application/json'} => json => {
-            "deliveryServiceId" => 900,
             "targetId" => 1000,
             "value" => 852,
             "typeId" => 40
@@ -59,15 +58,11 @@ ok 
$t->get_ok("/api/1.2/steering/900/targets")->status_is(200)->or( sub { diag $
     , 'Are steering targets returned?';
 
 $t->get_ok("/api/1.2/steering/900/targets/1000")->status_is(200)->or( sub { 
diag $t->tx->res->content->asset->{content}; } )
-    ->json_is( "/response/0/deliveryServiceId" => 900 )
-    ->json_is( "/response/0/targetId" => 1000 )
     ->json_is( "/response/0/value" => 852 )
     ->json_is( "/response/0/typeId" => 40 )
     , 'Is the steering target returned?';
 
 ok $t->put_ok('/api/1.2/steering/900/targets/1000' => {Accept => 
'application/json'} => json => {
-            "deliveryServiceId" => 900,
-            "targetId" => 1000,
             "value" => 999,
             "typeId" => 40
         })

Reply via email to