You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficcontrol.apache.org by de...@apache.org on 2016/11/04 20:28:00 UTC

[2/6] incubator-trafficcontrol git commit: resolves conflict

resolves conflict


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

Branch: refs/heads/master
Commit: 49da9a834be68f778699524ea20558a7107e60fa
Parents: de10f93
Author: Dewayne Richardson <de...@apache.org>
Authored: Wed Nov 2 14:20:56 2016 -0600
Committer: Dewayne Richardson <de...@apache.org>
Committed: Fri Nov 4 14:25:40 2016 -0600

----------------------------------------------------------------------
 traffic_ops/app/lib/API/Cdn.pm | 37 ++++++++++++++++++++++++++++++++++---
 1 file changed, 34 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/49da9a83/traffic_ops/app/lib/API/Cdn.pm
----------------------------------------------------------------------
diff --git a/traffic_ops/app/lib/API/Cdn.pm b/traffic_ops/app/lib/API/Cdn.pm
index e3a8b73..e8cfd8c 100644
--- a/traffic_ops/app/lib/API/Cdn.pm
+++ b/traffic_ops/app/lib/API/Cdn.pm
@@ -108,7 +108,7 @@ sub create {
 
 	my $value = { name => $params->{name}, };
 	if ( defined( $params->{dnssecEnabled} ) ) {
-		$value->{dnssec_enabled} = $params->{dnssecEnabled};
+		$value->{dnssec_enabled} = lc( $params->{dnssecEnabled} ) ne 'false' ? 1 : 0;
 	}
 
 	my $insert = $self->db->resultset('Cdn')->create($value);
@@ -119,7 +119,7 @@ sub create {
 		my $response;
 		$response->{id}            = $rs->id;
 		$response->{name}          = $rs->name;
-		$response->{dnssecEnabled} = $rs->dnssec_enabled;
+		$response->{dnssecEnabled} = \$rs->dnssec_enabled;
 		&log( $self, "Created CDN with id: " . $rs->id . " and name: " . $rs->name, "APICHANGE" );
 		return $self->success( $response, "cdn was created." );
 	}
@@ -156,7 +156,7 @@ sub update {
 
 	my $value = { name => $params->{name}, };
 	if ( defined( $params->{dnssecEnabled} ) ) {
-		$value->{dnssec_enabled} = $params->{dnssecEnabled};
+		$value->{dnssec_enabled} = lc( $params->{dnssecEnabled} ) ne 'false' ? 1 : 0;
 	}
 
 	my $rs = $cdn->update($value);
@@ -202,6 +202,37 @@ sub delete {
 	return $self->success_message("cdn was deleted.");
 }
 
+sub delete_by_name {
+	my $self = shift;
+	my $cdn_name   = $self->param('name');
+
+	if ( !&is_oper($self) ) {
+		return $self->forbidden();
+	}
+
+	my $cdn = $self->db->resultset('Cdn')->find( { name => $cdn_name } );
+	if ( !defined($cdn) ) {
+		return $self->not_found();
+	}
+	my $id = $cdn->id;
+
+	my $rs = $self->db->resultset('Server')->search( { cdn_id => $id } );
+	if ( $rs->count() > 0 ) {
+		$self->app->log->error("Failed to delete cdn id = $id has servers");
+		return $self->alert("Failed to delete cdn id = $id has servers");
+	}
+
+	$rs = $self->db->resultset('Deliveryservice')->search( { cdn_id => $id } );
+	if ( $rs->count() > 0 ) {
+		$self->app->log->error("Failed to delete cdn id = $id has delivery services");
+		return $self->alert("Failed to delete cdn id = $id has delivery services");
+	}
+
+	$cdn->delete();
+	&log( $self, "Delete cdn " . $cdn_name, "APICHANGE" );
+	return $self->success_message("cdn was deleted.");
+}
+
 sub configs_monitoring {
 	my $self      = shift;
 	my $cdn_name  = $self->param('name');