From 168929e38379ce783ca8b24e52abcfe399afd56a Mon Sep 17 00:00:00 2001 From: Jeremy Mitchell Date: Mon, 10 Apr 2017 20:44:11 -0600 Subject: [PATCH 1/2] adds ability to filter delivery services by profile --- .../traffic_ops_api/v12/deliveryservice.rst | 2 ++ traffic_ops/app/lib/API/Deliveryservice.pm | 16 ++++++++++------ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/docs/source/development/traffic_ops_api/v12/deliveryservice.rst b/docs/source/development/traffic_ops_api/v12/deliveryservice.rst index b1176e2104..c157dd8f0d 100644 --- a/docs/source/development/traffic_ops_api/v12/deliveryservice.rst +++ b/docs/source/development/traffic_ops_api/v12/deliveryservice.rst @@ -39,6 +39,8 @@ Delivery Service +=================+==========+===================================================+ | ``cdn`` | no | Filter delivery services by CDN ID. | +-----------------+----------+---------------------------------------------------+ + | ``profile`` | no | Filter delivery services by Profile ID. | + +-----------------+----------+---------------------------------------------------+ | ``type`` | no | Filter delivery services by Type ID. | +-----------------+----------+---------------------------------------------------+ | ``logsEnabled`` | no | Filter by logs enabled (true|false). | diff --git a/traffic_ops/app/lib/API/Deliveryservice.pm b/traffic_ops/app/lib/API/Deliveryservice.pm index 0dd09ed8b7..311a6a5e7d 100644 --- a/traffic_ops/app/lib/API/Deliveryservice.pm +++ b/traffic_ops/app/lib/API/Deliveryservice.pm @@ -30,18 +30,22 @@ use UI::DeliveryService; use Validate::Tiny ':all'; sub index { - my $self = shift; - my $orderby = $self->param('orderby') || "xml_id"; - my $cdn_id = $self->param('cdn'); - my $type_id = $self->param('type'); - my $logs_enabled = $self->param('logsEnabled'); - my $current_user = $self->current_user()->{username}; + my $self = shift; + my $orderby = $self->param('orderby') || "xml_id"; + my $cdn_id = $self->param('cdn'); + my $profile_id = $self->param('profile'); + my $type_id = $self->param('type'); + my $logs_enabled = $self->param('logsEnabled'); + my $current_user = $self->current_user()->{username}; my @data; my %criteria; if ( defined $cdn_id ) { $criteria{'cdn_id'} = $cdn_id; } + if ( defined $profile_id ) { + $criteria{'profile'} = $profile_id; + } if ( defined $type_id ) { $criteria{'type'} = $type_id; } From d6db9cc55a040d13300fb33d5e815144d1fc18ff Mon Sep 17 00:00:00 2001 From: Jeremy Mitchell Date: Mon, 10 Apr 2017 20:52:02 -0600 Subject: [PATCH 2/2] formats file with perltidy --- traffic_ops/app/lib/API/Deliveryservice.pm | 867 +++++++++++---------- 1 file changed, 434 insertions(+), 433 deletions(-) diff --git a/traffic_ops/app/lib/API/Deliveryservice.pm b/traffic_ops/app/lib/API/Deliveryservice.pm index 311a6a5e7d..75c7007c5c 100644 --- a/traffic_ops/app/lib/API/Deliveryservice.pm +++ b/traffic_ops/app/lib/API/Deliveryservice.pm @@ -30,13 +30,13 @@ use UI::DeliveryService; use Validate::Tiny ':all'; sub index { - my $self = shift; - my $orderby = $self->param('orderby') || "xml_id"; - my $cdn_id = $self->param('cdn'); - my $profile_id = $self->param('profile'); - my $type_id = $self->param('type'); - my $logs_enabled = $self->param('logsEnabled'); - my $current_user = $self->current_user()->{username}; + my $self = shift; + my $orderby = $self->param('orderby') || "xml_id"; + my $cdn_id = $self->param('cdn'); + my $profile_id = $self->param('profile'); + my $type_id = $self->param('type'); + my $logs_enabled = $self->param('logsEnabled'); + my $current_user = $self->current_user()->{username}; my @data; my %criteria; @@ -67,59 +67,59 @@ sub index { push( @data, { - "active" => \$row->active, - "cacheurl" => $row->cacheurl, - "ccrDnsTtl" => $row->ccr_dns_ttl, - "cdnId" => $row->cdn->id, - "cdnName" => $row->cdn->name, - "checkPath" => $row->check_path, - "displayName" => $row->display_name, - "dnsBypassCname" => $row->dns_bypass_cname, - "dnsBypassIp" => $row->dns_bypass_ip, - "dnsBypassIp6" => $row->dns_bypass_ip6, - "dnsBypassTtl" => $row->dns_bypass_ttl, - "dscp" => $row->dscp, - "edgeHeaderRewrite" => $row->edge_header_rewrite, - "exampleURLs" => \@example_urls, - "geoLimitRedirectURL" => $row->geolimit_redirect_url, - "geoLimit" => $row->geo_limit, - "geoLimitCountries" => $row->geo_limit_countries, - "geoProvider" => $row->geo_provider, - "globalMaxMbps" => $row->global_max_mbps, - "globalMaxTps" => $row->global_max_tps, - "httpBypassFqdn" => $row->http_bypass_fqdn, - "id" => $row->id, - "infoUrl" => $row->info_url, - "initialDispersion" => $row->initial_dispersion, - "ipv6RoutingEnabled" => \$row->ipv6_routing_enabled, - "lastUpdated" => $row->last_updated, - "logsEnabled" => \$row->logs_enabled, - "longDesc" => $row->long_desc, - "longDesc1" => $row->long_desc_1, - "longDesc2" => $row->long_desc_2, - "maxDnsAnswers" => $row->max_dns_answers, - "midHeaderRewrite" => $row->mid_header_rewrite, - "missLat" => defined($row->miss_lat) ? 0.0 + $row->miss_lat : undef, - "missLong" => defined($row->miss_long) ? 0.0 + $row->miss_long : undef, - "multiSiteOrigin" => \$row->multi_site_origin, - "orgServerFqdn" => $row->org_server_fqdn, - "originShield" => $row->origin_shield, - "profileId" => defined($row->profile) ? $row->profile->id : undef, - "profileName" => defined($row->profile) ? $row->profile->name : undef, - "profileDescription" => defined($row->profile) ? $row->profile->description : undef, - "protocol" => $row->protocol, - "qstringIgnore" => $row->qstring_ignore, - "rangeRequestHandling" => $row->range_request_handling, - "regexRemap" => $row->regex_remap, - "regionalGeoBlocking" => \$row->regional_geo_blocking, - "remapText" => $row->remap_text, - "signed" => \$row->signed, - "sslKeyVersion" => $row->ssl_key_version, - "trRequestHeaders" => $row->tr_request_headers, - "trResponseHeaders" => $row->tr_response_headers, - "type" => $row->type->name, - "typeId" => $row->type->id, - "xmlId" => $row->xml_id + "active" => \$row->active, + "cacheurl" => $row->cacheurl, + "ccrDnsTtl" => $row->ccr_dns_ttl, + "cdnId" => $row->cdn->id, + "cdnName" => $row->cdn->name, + "checkPath" => $row->check_path, + "displayName" => $row->display_name, + "dnsBypassCname" => $row->dns_bypass_cname, + "dnsBypassIp" => $row->dns_bypass_ip, + "dnsBypassIp6" => $row->dns_bypass_ip6, + "dnsBypassTtl" => $row->dns_bypass_ttl, + "dscp" => $row->dscp, + "edgeHeaderRewrite" => $row->edge_header_rewrite, + "exampleURLs" => \@example_urls, + "geoLimitRedirectURL" => $row->geolimit_redirect_url, + "geoLimit" => $row->geo_limit, + "geoLimitCountries" => $row->geo_limit_countries, + "geoProvider" => $row->geo_provider, + "globalMaxMbps" => $row->global_max_mbps, + "globalMaxTps" => $row->global_max_tps, + "httpBypassFqdn" => $row->http_bypass_fqdn, + "id" => $row->id, + "infoUrl" => $row->info_url, + "initialDispersion" => $row->initial_dispersion, + "ipv6RoutingEnabled" => \$row->ipv6_routing_enabled, + "lastUpdated" => $row->last_updated, + "logsEnabled" => \$row->logs_enabled, + "longDesc" => $row->long_desc, + "longDesc1" => $row->long_desc_1, + "longDesc2" => $row->long_desc_2, + "maxDnsAnswers" => $row->max_dns_answers, + "midHeaderRewrite" => $row->mid_header_rewrite, + "missLat" => defined( $row->miss_lat ) ? 0.0 + $row->miss_lat : undef, + "missLong" => defined( $row->miss_long ) ? 0.0 + $row->miss_long : undef, + "multiSiteOrigin" => \$row->multi_site_origin, + "orgServerFqdn" => $row->org_server_fqdn, + "originShield" => $row->origin_shield, + "profileId" => defined( $row->profile ) ? $row->profile->id : undef, + "profileName" => defined( $row->profile ) ? $row->profile->name : undef, + "profileDescription" => defined( $row->profile ) ? $row->profile->description : undef, + "protocol" => $row->protocol, + "qstringIgnore" => $row->qstring_ignore, + "rangeRequestHandling" => $row->range_request_handling, + "regexRemap" => $row->regex_remap, + "regionalGeoBlocking" => \$row->regional_geo_blocking, + "remapText" => $row->remap_text, + "signed" => \$row->signed, + "sslKeyVersion" => $row->ssl_key_version, + "trRequestHeaders" => $row->tr_request_headers, + "trResponseHeaders" => $row->tr_response_headers, + "type" => $row->type->name, + "typeId" => $row->type->id, + "xmlId" => $row->xml_id } ); } @@ -162,60 +162,60 @@ sub show { push( @data, { - "active" => \$row->active, - "cacheurl" => $row->cacheurl, - "ccrDnsTtl" => $row->ccr_dns_ttl, - "cdnId" => $row->cdn->id, - "cdnName" => $row->cdn->name, - "checkPath" => $row->check_path, - "displayName" => $row->display_name, - "dnsBypassCname" => $row->dns_bypass_cname, - "dnsBypassIp" => $row->dns_bypass_ip, - "dnsBypassIp6" => $row->dns_bypass_ip6, - "dnsBypassTtl" => $row->dns_bypass_ttl, - "dscp" => $row->dscp, - "edgeHeaderRewrite" => $row->edge_header_rewrite, - "exampleURLs" => \@example_urls, - "geoLimitRedirectURL" => $row->geolimit_redirect_url, - "geoLimit" => $row->geo_limit, - "geoLimitCountries" => $row->geo_limit_countries, - "geoProvider" => $row->geo_provider, - "globalMaxMbps" => $row->global_max_mbps, - "globalMaxTps" => $row->global_max_tps, - "httpBypassFqdn" => $row->http_bypass_fqdn, - "id" => $row->id, - "infoUrl" => $row->info_url, - "initialDispersion" => $row->initial_dispersion, - "ipv6RoutingEnabled" => \$row->ipv6_routing_enabled, - "lastUpdated" => $row->last_updated, - "logsEnabled" => \$row->logs_enabled, - "longDesc" => $row->long_desc, - "longDesc1" => $row->long_desc_1, - "longDesc2" => $row->long_desc_2, - "matchList" => \@matchlist, - "maxDnsAnswers" => $row->max_dns_answers, - "midHeaderRewrite" => $row->mid_header_rewrite, - "missLat" => defined($row->miss_lat) ? 0.0 + $row->miss_lat : undef, - "missLong" => defined($row->miss_long) ? 0.0 + $row->miss_long : undef, - "multiSiteOrigin" => \$row->multi_site_origin, - "orgServerFqdn" => $row->org_server_fqdn, - "originShield" => $row->origin_shield, - "profileId" => defined($row->profile) ? $row->profile->id : undef, - "profileName" => defined($row->profile) ? $row->profile->name : undef, - "profileDescription" => defined($row->profile) ? $row->profile->description : undef, - "protocol" => $row->protocol, - "qstringIgnore" => $row->qstring_ignore, - "rangeRequestHandling" => $row->range_request_handling, - "regexRemap" => $row->regex_remap, - "regionalGeoBlocking" => \$row->regional_geo_blocking, - "remapText" => $row->remap_text, - "signed" => \$row->signed, - "sslKeyVersion" => $row->ssl_key_version, - "trRequestHeaders" => $row->tr_request_headers, - "trResponseHeaders" => $row->tr_response_headers, - "type" => $row->type->name, - "typeId" => $row->type->id, - "xmlId" => $row->xml_id + "active" => \$row->active, + "cacheurl" => $row->cacheurl, + "ccrDnsTtl" => $row->ccr_dns_ttl, + "cdnId" => $row->cdn->id, + "cdnName" => $row->cdn->name, + "checkPath" => $row->check_path, + "displayName" => $row->display_name, + "dnsBypassCname" => $row->dns_bypass_cname, + "dnsBypassIp" => $row->dns_bypass_ip, + "dnsBypassIp6" => $row->dns_bypass_ip6, + "dnsBypassTtl" => $row->dns_bypass_ttl, + "dscp" => $row->dscp, + "edgeHeaderRewrite" => $row->edge_header_rewrite, + "exampleURLs" => \@example_urls, + "geoLimitRedirectURL" => $row->geolimit_redirect_url, + "geoLimit" => $row->geo_limit, + "geoLimitCountries" => $row->geo_limit_countries, + "geoProvider" => $row->geo_provider, + "globalMaxMbps" => $row->global_max_mbps, + "globalMaxTps" => $row->global_max_tps, + "httpBypassFqdn" => $row->http_bypass_fqdn, + "id" => $row->id, + "infoUrl" => $row->info_url, + "initialDispersion" => $row->initial_dispersion, + "ipv6RoutingEnabled" => \$row->ipv6_routing_enabled, + "lastUpdated" => $row->last_updated, + "logsEnabled" => \$row->logs_enabled, + "longDesc" => $row->long_desc, + "longDesc1" => $row->long_desc_1, + "longDesc2" => $row->long_desc_2, + "matchList" => \@matchlist, + "maxDnsAnswers" => $row->max_dns_answers, + "midHeaderRewrite" => $row->mid_header_rewrite, + "missLat" => defined( $row->miss_lat ) ? 0.0 + $row->miss_lat : undef, + "missLong" => defined( $row->miss_long ) ? 0.0 + $row->miss_long : undef, + "multiSiteOrigin" => \$row->multi_site_origin, + "orgServerFqdn" => $row->org_server_fqdn, + "originShield" => $row->origin_shield, + "profileId" => defined( $row->profile ) ? $row->profile->id : undef, + "profileName" => defined( $row->profile ) ? $row->profile->name : undef, + "profileDescription" => defined( $row->profile ) ? $row->profile->description : undef, + "protocol" => $row->protocol, + "qstringIgnore" => $row->qstring_ignore, + "rangeRequestHandling" => $row->range_request_handling, + "regexRemap" => $row->regex_remap, + "regionalGeoBlocking" => \$row->regional_geo_blocking, + "remapText" => $row->remap_text, + "signed" => \$row->signed, + "sslKeyVersion" => $row->ssl_key_version, + "trRequestHeaders" => $row->tr_request_headers, + "trResponseHeaders" => $row->tr_response_headers, + "type" => $row->type->name, + "typeId" => $row->type->id, + "xmlId" => $row->xml_id } ); } @@ -250,56 +250,57 @@ sub update { } my $values = { - active => $params->{active}, - cacheurl => $params->{cacheurl}, - ccr_dns_ttl => $params->{ccrDnsTtl}, - cdn_id => $params->{cdnId}, - check_path => $params->{checkPath}, - display_name => $params->{displayName}, - dns_bypass_cname => $params->{dnsBypassCname}, - dns_bypass_ip => $params->{dnsBypassIp}, - dns_bypass_ip6 => $params->{dnsBypassIp6}, - dns_bypass_ttl => $params->{dnsBypassTtl}, - dscp => $params->{dscp}, - edge_header_rewrite => $params->{edgeHeaderRewrite}, - geolimit_redirect_url => $params->{geoLimitRedirectURL}, - geo_limit => $params->{geoLimit}, - geo_limit_countries => sanitize_geo_limit_countries($params->{geoLimitCountries}), - geo_provider => $params->{geoProvider}, - global_max_mbps => $params->{globalMaxMbps}, - global_max_tps => $params->{globalMaxTps}, - http_bypass_fqdn => $params->{httpBypassFqdn}, - info_url => $params->{infoUrl}, - initial_dispersion => $params->{initialDispersion}, - ipv6_routing_enabled => $params->{ipv6RoutingEnabled}, - logs_enabled => $params->{logsEnabled}, - long_desc => $params->{longDesc}, - long_desc_1 => $params->{longDesc1}, - long_desc_2 => $params->{longDesc2}, - max_dns_answers => $params->{maxDnsAnswers}, - mid_header_rewrite => $params->{midHeaderRewrite}, - miss_lat => $params->{missLat}, - miss_long => $params->{missLong}, - multi_site_origin => $params->{multiSiteOrigin}, - org_server_fqdn => $params->{orgServerFqdn}, - origin_shield => $params->{originShield}, - profile => $params->{profileId}, - protocol => $params->{protocol}, - qstring_ignore => $params->{qstringIgnore}, - range_request_handling => $params->{rangeRequestHandling}, - regex_remap => $params->{regexRemap}, - regional_geo_blocking => $params->{regionalGeoBlocking}, - remap_text => $params->{remapText}, - signed => $params->{signed}, - ssl_key_version => $params->{sslKeyVersion}, - tr_request_headers => $params->{trRequestHeaders}, - tr_response_headers => $params->{trResponseHeaders}, - type => $params->{typeId}, - xml_id => $params->{xmlId}, + active => $params->{active}, + cacheurl => $params->{cacheurl}, + ccr_dns_ttl => $params->{ccrDnsTtl}, + cdn_id => $params->{cdnId}, + check_path => $params->{checkPath}, + display_name => $params->{displayName}, + dns_bypass_cname => $params->{dnsBypassCname}, + dns_bypass_ip => $params->{dnsBypassIp}, + dns_bypass_ip6 => $params->{dnsBypassIp6}, + dns_bypass_ttl => $params->{dnsBypassTtl}, + dscp => $params->{dscp}, + edge_header_rewrite => $params->{edgeHeaderRewrite}, + geolimit_redirect_url => $params->{geoLimitRedirectURL}, + geo_limit => $params->{geoLimit}, + geo_limit_countries => sanitize_geo_limit_countries( $params->{geoLimitCountries} ), + geo_provider => $params->{geoProvider}, + global_max_mbps => $params->{globalMaxMbps}, + global_max_tps => $params->{globalMaxTps}, + http_bypass_fqdn => $params->{httpBypassFqdn}, + info_url => $params->{infoUrl}, + initial_dispersion => $params->{initialDispersion}, + ipv6_routing_enabled => $params->{ipv6RoutingEnabled}, + logs_enabled => $params->{logsEnabled}, + long_desc => $params->{longDesc}, + long_desc_1 => $params->{longDesc1}, + long_desc_2 => $params->{longDesc2}, + max_dns_answers => $params->{maxDnsAnswers}, + mid_header_rewrite => $params->{midHeaderRewrite}, + miss_lat => $params->{missLat}, + miss_long => $params->{missLong}, + multi_site_origin => $params->{multiSiteOrigin}, + org_server_fqdn => $params->{orgServerFqdn}, + origin_shield => $params->{originShield}, + profile => $params->{profileId}, + protocol => $params->{protocol}, + qstring_ignore => $params->{qstringIgnore}, + range_request_handling => $params->{rangeRequestHandling}, + regex_remap => $params->{regexRemap}, + regional_geo_blocking => $params->{regionalGeoBlocking}, + remap_text => $params->{remapText}, + signed => $params->{signed}, + ssl_key_version => $params->{sslKeyVersion}, + tr_request_headers => $params->{trRequestHeaders}, + tr_response_headers => $params->{trResponseHeaders}, + type => $params->{typeId}, + xml_id => $params->{xmlId}, }; my $rs = $ds->update($values); if ($rs) { + # create location parameters for header_rewrite*, regex_remap* and cacheurl* config files if necessary &UI::DeliveryService::header_rewrite( $self, $rs->id, $params->{profileId}, $params->{xmlId}, $params->{edgeHeaderRewrite}, "edge" ); &UI::DeliveryService::header_rewrite( $self, $rs->id, $params->{profileId}, $params->{xmlId}, $params->{midHeaderRewrite}, "mid" ); @@ -309,58 +310,58 @@ sub update { my @response; push( @response, { - "active" => $rs->active, - "cacheurl" => $rs->cacheurl, - "ccrDnsTtl" => $rs->ccr_dns_ttl, - "cdnId" => $rs->cdn->id, - "cdnName" => $rs->cdn->name, - "checkPath" => $rs->check_path, - "displayName" => $rs->display_name, - "dnsBypassCname" => $rs->dns_bypass_cname, - "dnsBypassIp" => $rs->dns_bypass_ip, - "dnsBypassIp6" => $rs->dns_bypass_ip6, - "dnsBypassTtl" => $rs->dns_bypass_ttl, - "dscp" => $rs->dscp, - "edgeHeaderRewrite" => $rs->edge_header_rewrite, - "geoLimitRedirectURL" => $rs->geolimit_redirect_url, - "geoLimit" => $rs->geo_limit, - "geoLimitCountries" => $rs->geo_limit_countries, - "geoProvider" => $rs->geo_provider, - "globalMaxMbps" => $rs->global_max_mbps, - "globalMaxTps" => $rs->global_max_tps, - "httpBypassFqdn" => $rs->http_bypass_fqdn, - "id" => $rs->id, - "infoUrl" => $rs->info_url, - "initialDispersion" => $rs->initial_dispersion, - "ipv6RoutingEnabled" => $rs->ipv6_routing_enabled, - "lastUpdated" => $rs->last_updated, - "logsEnabled" => $rs->logs_enabled, - "longDesc" => $rs->long_desc, - "longDesc1" => $rs->long_desc_1, - "longDesc2" => $rs->long_desc_2, - "maxDnsAnswers" => $rs->max_dns_answers, - "midHeaderRewrite" => $rs->mid_header_rewrite, - "missLat" => defined($rs->miss_lat) ? 0.0 + $rs->miss_lat : undef, - "missLong" => defined($rs->miss_long) ? 0.0 + $rs->miss_long : undef, - "multiSiteOrigin" => $rs->multi_site_origin, - "orgServerFqdn" => $rs->org_server_fqdn, - "originShield" => $rs->origin_shield, - "profileId" => defined($rs->profile) ? $rs->profile->id : undef, - "profileName" => defined($rs->profile) ? $rs->profile->name : undef, - "profileDescription" => defined($rs->profile) ? $rs->profile->description : undef, - "protocol" => $rs->protocol, - "qstringIgnore" => $rs->qstring_ignore, - "rangeRequestHandling" => $rs->range_request_handling, - "regexRemap" => $rs->regex_remap, - "regionalGeoBlocking" => $rs->regional_geo_blocking, - "remapText" => $rs->remap_text, - "signed" => $rs->signed, - "sslKeyVersion" => $rs->ssl_key_version, - "trRequestHeaders" => $rs->tr_request_headers, - "trResponseHeaders" => $rs->tr_response_headers, - "type" => $rs->type->name, - "typeId" => $rs->type->id, - "xmlId" => $rs->xml_id + "active" => $rs->active, + "cacheurl" => $rs->cacheurl, + "ccrDnsTtl" => $rs->ccr_dns_ttl, + "cdnId" => $rs->cdn->id, + "cdnName" => $rs->cdn->name, + "checkPath" => $rs->check_path, + "displayName" => $rs->display_name, + "dnsBypassCname" => $rs->dns_bypass_cname, + "dnsBypassIp" => $rs->dns_bypass_ip, + "dnsBypassIp6" => $rs->dns_bypass_ip6, + "dnsBypassTtl" => $rs->dns_bypass_ttl, + "dscp" => $rs->dscp, + "edgeHeaderRewrite" => $rs->edge_header_rewrite, + "geoLimitRedirectURL" => $rs->geolimit_redirect_url, + "geoLimit" => $rs->geo_limit, + "geoLimitCountries" => $rs->geo_limit_countries, + "geoProvider" => $rs->geo_provider, + "globalMaxMbps" => $rs->global_max_mbps, + "globalMaxTps" => $rs->global_max_tps, + "httpBypassFqdn" => $rs->http_bypass_fqdn, + "id" => $rs->id, + "infoUrl" => $rs->info_url, + "initialDispersion" => $rs->initial_dispersion, + "ipv6RoutingEnabled" => $rs->ipv6_routing_enabled, + "lastUpdated" => $rs->last_updated, + "logsEnabled" => $rs->logs_enabled, + "longDesc" => $rs->long_desc, + "longDesc1" => $rs->long_desc_1, + "longDesc2" => $rs->long_desc_2, + "maxDnsAnswers" => $rs->max_dns_answers, + "midHeaderRewrite" => $rs->mid_header_rewrite, + "missLat" => defined( $rs->miss_lat ) ? 0.0 + $rs->miss_lat : undef, + "missLong" => defined( $rs->miss_long ) ? 0.0 + $rs->miss_long : undef, + "multiSiteOrigin" => $rs->multi_site_origin, + "orgServerFqdn" => $rs->org_server_fqdn, + "originShield" => $rs->origin_shield, + "profileId" => defined( $rs->profile ) ? $rs->profile->id : undef, + "profileName" => defined( $rs->profile ) ? $rs->profile->name : undef, + "profileDescription" => defined( $rs->profile ) ? $rs->profile->description : undef, + "protocol" => $rs->protocol, + "qstringIgnore" => $rs->qstring_ignore, + "rangeRequestHandling" => $rs->range_request_handling, + "regexRemap" => $rs->regex_remap, + "regionalGeoBlocking" => $rs->regional_geo_blocking, + "remapText" => $rs->remap_text, + "signed" => $rs->signed, + "sslKeyVersion" => $rs->ssl_key_version, + "trRequestHeaders" => $rs->tr_request_headers, + "trResponseHeaders" => $rs->tr_response_headers, + "type" => $rs->type->name, + "typeId" => $rs->type->id, + "xmlId" => $rs->xml_id } ); @@ -394,56 +395,57 @@ sub create { } my $values = { - active => $params->{active}, - cacheurl => $params->{cacheurl}, - ccr_dns_ttl => $params->{ccrDnsTtl}, - cdn_id => $params->{cdnId}, - check_path => $params->{checkPath}, - display_name => $params->{displayName}, - dns_bypass_cname => $params->{dnsBypassCname}, - dns_bypass_ip => $params->{dnsBypassIp}, - dns_bypass_ip6 => $params->{dnsBypassIp6}, - dns_bypass_ttl => $params->{dnsBypassTtl}, - dscp => $params->{dscp}, - edge_header_rewrite => $params->{edgeHeaderRewrite}, - geolimit_redirect_url => $params->{geoLimitRedirectURL}, - geo_limit => $params->{geoLimit}, - geo_limit_countries => sanitize_geo_limit_countries($params->{geoLimitCountries}), - geo_provider => $params->{geoProvider}, - global_max_mbps => $params->{globalMaxMbps}, - global_max_tps => $params->{globalMaxTps}, - http_bypass_fqdn => $params->{httpBypassFqdn}, - info_url => $params->{infoUrl}, - initial_dispersion => $params->{initialDispersion}, - ipv6_routing_enabled => $params->{ipv6RoutingEnabled}, - logs_enabled => $params->{logsEnabled}, - long_desc => $params->{longDesc}, - long_desc_1 => $params->{longDesc1}, - long_desc_2 => $params->{longDesc2}, - max_dns_answers => $params->{maxDnsAnswers}, - mid_header_rewrite => $params->{midHeaderRewrite}, - miss_lat => $params->{missLat}, - miss_long => $params->{missLong}, - multi_site_origin => $params->{multiSiteOrigin}, - org_server_fqdn => $params->{orgServerFqdn}, - origin_shield => $params->{originShield}, - profile => $params->{profileId}, - protocol => $params->{protocol}, - qstring_ignore => $params->{qstringIgnore}, - range_request_handling => $params->{rangeRequestHandling}, - regex_remap => $params->{regexRemap}, - regional_geo_blocking => $params->{regionalGeoBlocking}, - remap_text => $params->{remapText}, - signed => $params->{signed}, - ssl_key_version => $params->{sslKeyVersion}, - tr_request_headers => $params->{trRequestHeaders}, - tr_response_headers => $params->{trResponseHeaders}, - type => $params->{typeId}, - xml_id => $params->{xmlId}, + active => $params->{active}, + cacheurl => $params->{cacheurl}, + ccr_dns_ttl => $params->{ccrDnsTtl}, + cdn_id => $params->{cdnId}, + check_path => $params->{checkPath}, + display_name => $params->{displayName}, + dns_bypass_cname => $params->{dnsBypassCname}, + dns_bypass_ip => $params->{dnsBypassIp}, + dns_bypass_ip6 => $params->{dnsBypassIp6}, + dns_bypass_ttl => $params->{dnsBypassTtl}, + dscp => $params->{dscp}, + edge_header_rewrite => $params->{edgeHeaderRewrite}, + geolimit_redirect_url => $params->{geoLimitRedirectURL}, + geo_limit => $params->{geoLimit}, + geo_limit_countries => sanitize_geo_limit_countries( $params->{geoLimitCountries} ), + geo_provider => $params->{geoProvider}, + global_max_mbps => $params->{globalMaxMbps}, + global_max_tps => $params->{globalMaxTps}, + http_bypass_fqdn => $params->{httpBypassFqdn}, + info_url => $params->{infoUrl}, + initial_dispersion => $params->{initialDispersion}, + ipv6_routing_enabled => $params->{ipv6RoutingEnabled}, + logs_enabled => $params->{logsEnabled}, + long_desc => $params->{longDesc}, + long_desc_1 => $params->{longDesc1}, + long_desc_2 => $params->{longDesc2}, + max_dns_answers => $params->{maxDnsAnswers}, + mid_header_rewrite => $params->{midHeaderRewrite}, + miss_lat => $params->{missLat}, + miss_long => $params->{missLong}, + multi_site_origin => $params->{multiSiteOrigin}, + org_server_fqdn => $params->{orgServerFqdn}, + origin_shield => $params->{originShield}, + profile => $params->{profileId}, + protocol => $params->{protocol}, + qstring_ignore => $params->{qstringIgnore}, + range_request_handling => $params->{rangeRequestHandling}, + regex_remap => $params->{regexRemap}, + regional_geo_blocking => $params->{regionalGeoBlocking}, + remap_text => $params->{remapText}, + signed => $params->{signed}, + ssl_key_version => $params->{sslKeyVersion}, + tr_request_headers => $params->{trRequestHeaders}, + tr_response_headers => $params->{trResponseHeaders}, + type => $params->{typeId}, + xml_id => $params->{xmlId}, }; my $insert = $self->db->resultset('Deliveryservice')->create($values)->insert(); if ($insert) { + # create location parameters for header_rewrite*, regex_remap* and cacheurl* config files if necessary &UI::DeliveryService::header_rewrite( $self, $insert->id, $params->{profileId}, $params->{xmlId}, $params->{edgeHeaderRewrite}, "edge" ); &UI::DeliveryService::header_rewrite( $self, $insert->id, $params->{profileId}, $params->{xmlId}, $params->{midHeaderRewrite}, "mid" ); @@ -453,68 +455,68 @@ sub create { # create dnssec keys if necessary my $cdn = $self->db->resultset('Cdn')->search( { id => $params->{cdnId} } )->single(); my $dnssec_enabled = $cdn->dnssec_enabled; - if ( $dnssec_enabled ) { + if ($dnssec_enabled) { &UI::DeliveryService::create_dnssec_keys( $self, $cdn->name, $params->{xmlId}, $insert->id ); } # create a default deliveryservice_regex in the format .*\.xml-id\..* - $self->create_default_ds_regex($insert->id, '.*\.' . $insert->xml_id . '\..*'); + $self->create_default_ds_regex( $insert->id, '.*\.' . $insert->xml_id . '\..*' ); my @response; push( @response, { - "active" => $insert->active, - "cacheurl" => $insert->cacheurl, - "ccrDnsTtl" => $insert->ccr_dns_ttl, - "cdnId" => $insert->cdn->id, - "cdnName" => $insert->cdn->name, - "checkPath" => $insert->check_path, - "displayName" => $insert->display_name, - "dnsBypassCname" => $insert->dns_bypass_cname, - "dnsBypassIp" => $insert->dns_bypass_ip, - "dnsBypassIp6" => $insert->dns_bypass_ip6, - "dnsBypassTtl" => $insert->dns_bypass_ttl, - "dscp" => $insert->dscp, - "edgeHeaderRewrite" => $insert->edge_header_rewrite, - "geoLimitRedirectURL" => $insert->geolimit_redirect_url, - "geoLimit" => $insert->geo_limit, - "geoLimitCountries" => $insert->geo_limit_countries, - "geoProvider" => $insert->geo_provider, - "globalMaxMbps" => $insert->global_max_mbps, - "globalMaxTps" => $insert->global_max_tps, - "httpBypassFqdn" => $insert->http_bypass_fqdn, - "id" => $insert->id, - "infoUrl" => $insert->info_url, - "initialDispersion" => $insert->initial_dispersion, - "ipv6RoutingEnabled" => $insert->ipv6_routing_enabled, - "lastUpdated" => $insert->last_updated, - "logsEnabled" => $insert->logs_enabled, - "longDesc" => $insert->long_desc, - "longDesc1" => $insert->long_desc_1, - "longDesc2" => $insert->long_desc_2, - "maxDnsAnswers" => $insert->max_dns_answers, - "midHeaderRewrite" => $insert->mid_header_rewrite, - "missLat" => defined($insert->miss_lat) ? 0.0 + $insert->miss_lat : undef, - "missLong" => defined($insert->miss_long) ? 0.0 + $insert->miss_long : undef, - "multiSiteOrigin" => $insert->multi_site_origin, - "orgServerFqdn" => $insert->org_server_fqdn, - "originShield" => $insert->origin_shield, - "profileId" => defined($insert->profile) ? $insert->profile->id : undef, - "profileName" => defined($insert->profile) ? $insert->profile->name : undef, - "profileDescription" => defined($insert->profile) ? $insert->profile->description : undef, - "protocol" => $insert->protocol, - "qstringIgnore" => $insert->qstring_ignore, - "rangeRequestHandling" => $insert->range_request_handling, - "regexRemap" => $insert->regex_remap, - "regionalGeoBlocking" => $insert->regional_geo_blocking, - "remapText" => $insert->remap_text, - "signed" => $insert->signed, - "sslKeyVersion" => $insert->ssl_key_version, - "trRequestHeaders" => $insert->tr_request_headers, - "trResponseHeaders" => $insert->tr_response_headers, - "type" => $insert->type->name, - "typeId" => $insert->type->id, - "xmlId" => $insert->xml_id + "active" => $insert->active, + "cacheurl" => $insert->cacheurl, + "ccrDnsTtl" => $insert->ccr_dns_ttl, + "cdnId" => $insert->cdn->id, + "cdnName" => $insert->cdn->name, + "checkPath" => $insert->check_path, + "displayName" => $insert->display_name, + "dnsBypassCname" => $insert->dns_bypass_cname, + "dnsBypassIp" => $insert->dns_bypass_ip, + "dnsBypassIp6" => $insert->dns_bypass_ip6, + "dnsBypassTtl" => $insert->dns_bypass_ttl, + "dscp" => $insert->dscp, + "edgeHeaderRewrite" => $insert->edge_header_rewrite, + "geoLimitRedirectURL" => $insert->geolimit_redirect_url, + "geoLimit" => $insert->geo_limit, + "geoLimitCountries" => $insert->geo_limit_countries, + "geoProvider" => $insert->geo_provider, + "globalMaxMbps" => $insert->global_max_mbps, + "globalMaxTps" => $insert->global_max_tps, + "httpBypassFqdn" => $insert->http_bypass_fqdn, + "id" => $insert->id, + "infoUrl" => $insert->info_url, + "initialDispersion" => $insert->initial_dispersion, + "ipv6RoutingEnabled" => $insert->ipv6_routing_enabled, + "lastUpdated" => $insert->last_updated, + "logsEnabled" => $insert->logs_enabled, + "longDesc" => $insert->long_desc, + "longDesc1" => $insert->long_desc_1, + "longDesc2" => $insert->long_desc_2, + "maxDnsAnswers" => $insert->max_dns_answers, + "midHeaderRewrite" => $insert->mid_header_rewrite, + "missLat" => defined( $insert->miss_lat ) ? 0.0 + $insert->miss_lat : undef, + "missLong" => defined( $insert->miss_long ) ? 0.0 + $insert->miss_long : undef, + "multiSiteOrigin" => $insert->multi_site_origin, + "orgServerFqdn" => $insert->org_server_fqdn, + "originShield" => $insert->origin_shield, + "profileId" => defined( $insert->profile ) ? $insert->profile->id : undef, + "profileName" => defined( $insert->profile ) ? $insert->profile->name : undef, + "profileDescription" => defined( $insert->profile ) ? $insert->profile->description : undef, + "protocol" => $insert->protocol, + "qstringIgnore" => $insert->qstring_ignore, + "rangeRequestHandling" => $insert->range_request_handling, + "regexRemap" => $insert->regex_remap, + "regionalGeoBlocking" => $insert->regional_geo_blocking, + "remapText" => $insert->remap_text, + "signed" => $insert->signed, + "sslKeyVersion" => $insert->ssl_key_version, + "trRequestHeaders" => $insert->tr_request_headers, + "trResponseHeaders" => $insert->tr_response_headers, + "type" => $insert->type->name, + "typeId" => $insert->type->id, + "xmlId" => $insert->xml_id } ); @@ -561,72 +563,71 @@ sub delete { } sub get_deliveryservices_by_serverId { - my $self = shift; - my $server_id = $self->param('id'); + my $self = shift; + my $server_id = $self->param('id'); my $server_ds_ids = $self->db->resultset('DeliveryserviceServer')->search( { server => $server_id } ); - my $deliveryservices = $self->db->resultset('Deliveryservice')->search( - { 'me.id' => { -in => $server_ds_ids->get_column('deliveryservice')->as_query } }, { prefetch => [ 'cdn', 'profile', 'type' ]} - ); + my $deliveryservices = $self->db->resultset('Deliveryservice') + ->search( { 'me.id' => { -in => $server_ds_ids->get_column('deliveryservice')->as_query } }, { prefetch => [ 'cdn', 'profile', 'type' ] } ); my @data; if ( defined($deliveryservices) ) { while ( my $row = $deliveryservices->next ) { push( @data, { - "active" => \$row->active, - "cacheurl" => $row->cacheurl, - "ccrDnsTtl" => $row->ccr_dns_ttl, - "cdnId" => $row->cdn->id, - "cdnName" => $row->cdn->name, - "checkPath" => $row->check_path, - "displayName" => $row->display_name, - "dnsBypassCname" => $row->dns_bypass_cname, - "dnsBypassIp" => $row->dns_bypass_ip, - "dnsBypassIp6" => $row->dns_bypass_ip6, - "dnsBypassTtl" => $row->dns_bypass_ttl, - "dscp" => $row->dscp, - "edgeHeaderRewrite" => $row->edge_header_rewrite, - "geoLimitRedirectURL" => $row->geolimit_redirect_url, - "geoLimit" => $row->geo_limit, - "geoLimitCountries" => $row->geo_limit_countries, - "geoProvider" => $row->geo_provider, - "globalMaxMbps" => $row->global_max_mbps, - "globalMaxTps" => $row->global_max_tps, - "httpBypassFqdn" => $row->http_bypass_fqdn, - "id" => $row->id, - "infoUrl" => $row->info_url, - "initialDispersion" => $row->initial_dispersion, - "ipv6RoutingEnabled" => \$row->ipv6_routing_enabled, - "lastUpdated" => $row->last_updated, - "logsEnabled" => \$row->logs_enabled, - "longDesc" => $row->long_desc, - "longDesc1" => $row->long_desc_1, - "longDesc2" => $row->long_desc_2, - "maxDnsAnswers" => $row->max_dns_answers, - "midHeaderRewrite" => $row->mid_header_rewrite, - "missLat" => defined($row->miss_lat) ? 0.0 + $row->miss_lat : undef, - "missLong" => defined($row->miss_long) ? 0.0 + $row->miss_long : undef, - "multiSiteOrigin" => \$row->multi_site_origin, - "orgServerFqdn" => $row->org_server_fqdn, - "originShield" => $row->origin_shield, - "profileId" => defined($row->profile) ? $row->profile->id : undef, - "profileName" => defined($row->profile) ? $row->profile->name : undef, - "profileDescription" => defined($row->profile) ? $row->profile->description : undef, - "protocol" => $row->protocol, - "qstringIgnore" => $row->qstring_ignore, - "rangeRequestHandling" => $row->range_request_handling, - "regexRemap" => $row->regex_remap, - "regionalGeoBlocking" => \$row->regional_geo_blocking, - "remapText" => $row->remap_text, - "signed" => \$row->signed, - "sslKeyVersion" => $row->ssl_key_version, - "trRequestHeaders" => $row->tr_request_headers, - "trResponseHeaders" => $row->tr_response_headers, - "type" => $row->type->name, - "typeId" => $row->type->id, - "xmlId" => $row->xml_id + "active" => \$row->active, + "cacheurl" => $row->cacheurl, + "ccrDnsTtl" => $row->ccr_dns_ttl, + "cdnId" => $row->cdn->id, + "cdnName" => $row->cdn->name, + "checkPath" => $row->check_path, + "displayName" => $row->display_name, + "dnsBypassCname" => $row->dns_bypass_cname, + "dnsBypassIp" => $row->dns_bypass_ip, + "dnsBypassIp6" => $row->dns_bypass_ip6, + "dnsBypassTtl" => $row->dns_bypass_ttl, + "dscp" => $row->dscp, + "edgeHeaderRewrite" => $row->edge_header_rewrite, + "geoLimitRedirectURL" => $row->geolimit_redirect_url, + "geoLimit" => $row->geo_limit, + "geoLimitCountries" => $row->geo_limit_countries, + "geoProvider" => $row->geo_provider, + "globalMaxMbps" => $row->global_max_mbps, + "globalMaxTps" => $row->global_max_tps, + "httpBypassFqdn" => $row->http_bypass_fqdn, + "id" => $row->id, + "infoUrl" => $row->info_url, + "initialDispersion" => $row->initial_dispersion, + "ipv6RoutingEnabled" => \$row->ipv6_routing_enabled, + "lastUpdated" => $row->last_updated, + "logsEnabled" => \$row->logs_enabled, + "longDesc" => $row->long_desc, + "longDesc1" => $row->long_desc_1, + "longDesc2" => $row->long_desc_2, + "maxDnsAnswers" => $row->max_dns_answers, + "midHeaderRewrite" => $row->mid_header_rewrite, + "missLat" => defined( $row->miss_lat ) ? 0.0 + $row->miss_lat : undef, + "missLong" => defined( $row->miss_long ) ? 0.0 + $row->miss_long : undef, + "multiSiteOrigin" => \$row->multi_site_origin, + "orgServerFqdn" => $row->org_server_fqdn, + "originShield" => $row->origin_shield, + "profileId" => defined( $row->profile ) ? $row->profile->id : undef, + "profileName" => defined( $row->profile ) ? $row->profile->name : undef, + "profileDescription" => defined( $row->profile ) ? $row->profile->description : undef, + "protocol" => $row->protocol, + "qstringIgnore" => $row->qstring_ignore, + "rangeRequestHandling" => $row->range_request_handling, + "regexRemap" => $row->regex_remap, + "regionalGeoBlocking" => \$row->regional_geo_blocking, + "remapText" => $row->remap_text, + "signed" => \$row->signed, + "sslKeyVersion" => $row->ssl_key_version, + "trRequestHeaders" => $row->tr_request_headers, + "trResponseHeaders" => $row->tr_response_headers, + "type" => $row->type->name, + "typeId" => $row->type->id, + "xmlId" => $row->xml_id } ); } @@ -634,73 +635,73 @@ sub get_deliveryservices_by_serverId { return $self->success( \@data ); } + sub get_deliveryservices_by_userId { - my $self = shift; - my $user_id = $self->param('id'); + my $self = shift; + my $user_id = $self->param('id'); my $user_ds_ids = $self->db->resultset('DeliveryserviceTmuser')->search( { tm_user_id => $user_id } ); - my $deliveryservices = $self->db->resultset('Deliveryservice')->search( - { 'me.id' => { -in => $user_ds_ids->get_column('deliveryservice')->as_query } }, { prefetch => [ 'cdn', 'profile', 'type' ]} - ); + my $deliveryservices = $self->db->resultset('Deliveryservice') + ->search( { 'me.id' => { -in => $user_ds_ids->get_column('deliveryservice')->as_query } }, { prefetch => [ 'cdn', 'profile', 'type' ] } ); my @data; if ( defined($deliveryservices) ) { while ( my $row = $deliveryservices->next ) { push( @data, { - "active" => \$row->active, - "cacheurl" => $row->cacheurl, - "ccrDnsTtl" => $row->ccr_dns_ttl, - "cdnId" => $row->cdn->id, - "cdnName" => $row->cdn->name, - "checkPath" => $row->check_path, - "displayName" => $row->display_name, - "dnsBypassCname" => $row->dns_bypass_cname, - "dnsBypassIp" => $row->dns_bypass_ip, - "dnsBypassIp6" => $row->dns_bypass_ip6, - "dnsBypassTtl" => $row->dns_bypass_ttl, - "dscp" => $row->dscp, - "edgeHeaderRewrite" => $row->edge_header_rewrite, - "geoLimitRedirectURL" => $row->geolimit_redirect_url, - "geoLimit" => $row->geo_limit, - "geoLimitCountries" => $row->geo_limit_countries, - "geoProvider" => $row->geo_provider, - "globalMaxMbps" => $row->global_max_mbps, - "globalMaxTps" => $row->global_max_tps, - "httpBypassFqdn" => $row->http_bypass_fqdn, - "id" => $row->id, - "infoUrl" => $row->info_url, - "initialDispersion" => $row->initial_dispersion, - "ipv6RoutingEnabled" => \$row->ipv6_routing_enabled, - "lastUpdated" => $row->last_updated, - "logsEnabled" => \$row->logs_enabled, - "longDesc" => $row->long_desc, - "longDesc1" => $row->long_desc_1, - "longDesc2" => $row->long_desc_2, - "maxDnsAnswers" => $row->max_dns_answers, - "midHeaderRewrite" => $row->mid_header_rewrite, - "missLat" => defined($row->miss_lat) ? 0.0 + $row->miss_lat : undef, - "missLong" => defined($row->miss_long) ? 0.0 + $row->miss_long : undef, - "multiSiteOrigin" => \$row->multi_site_origin, - "orgServerFqdn" => $row->org_server_fqdn, - "originShield" => $row->origin_shield, - "profileId" => defined($row->profile) ? $row->profile->id : undef, - "profileName" => defined($row->profile) ? $row->profile->name : undef, - "profileDescription" => defined($row->profile) ? $row->profile->description : undef, - "protocol" => $row->protocol, - "qstringIgnore" => $row->qstring_ignore, - "rangeRequestHandling" => $row->range_request_handling, - "regexRemap" => $row->regex_remap, - "regionalGeoBlocking" => \$row->regional_geo_blocking, - "remapText" => $row->remap_text, - "signed" => \$row->signed, - "sslKeyVersion" => $row->ssl_key_version, - "trRequestHeaders" => $row->tr_request_headers, - "trResponseHeaders" => $row->tr_response_headers, - "type" => $row->type->name, - "typeId" => $row->type->id, - "xmlId" => $row->xml_id + "active" => \$row->active, + "cacheurl" => $row->cacheurl, + "ccrDnsTtl" => $row->ccr_dns_ttl, + "cdnId" => $row->cdn->id, + "cdnName" => $row->cdn->name, + "checkPath" => $row->check_path, + "displayName" => $row->display_name, + "dnsBypassCname" => $row->dns_bypass_cname, + "dnsBypassIp" => $row->dns_bypass_ip, + "dnsBypassIp6" => $row->dns_bypass_ip6, + "dnsBypassTtl" => $row->dns_bypass_ttl, + "dscp" => $row->dscp, + "edgeHeaderRewrite" => $row->edge_header_rewrite, + "geoLimitRedirectURL" => $row->geolimit_redirect_url, + "geoLimit" => $row->geo_limit, + "geoLimitCountries" => $row->geo_limit_countries, + "geoProvider" => $row->geo_provider, + "globalMaxMbps" => $row->global_max_mbps, + "globalMaxTps" => $row->global_max_tps, + "httpBypassFqdn" => $row->http_bypass_fqdn, + "id" => $row->id, + "infoUrl" => $row->info_url, + "initialDispersion" => $row->initial_dispersion, + "ipv6RoutingEnabled" => \$row->ipv6_routing_enabled, + "lastUpdated" => $row->last_updated, + "logsEnabled" => \$row->logs_enabled, + "longDesc" => $row->long_desc, + "longDesc1" => $row->long_desc_1, + "longDesc2" => $row->long_desc_2, + "maxDnsAnswers" => $row->max_dns_answers, + "midHeaderRewrite" => $row->mid_header_rewrite, + "missLat" => defined( $row->miss_lat ) ? 0.0 + $row->miss_lat : undef, + "missLong" => defined( $row->miss_long ) ? 0.0 + $row->miss_long : undef, + "multiSiteOrigin" => \$row->multi_site_origin, + "orgServerFqdn" => $row->org_server_fqdn, + "originShield" => $row->origin_shield, + "profileId" => defined( $row->profile ) ? $row->profile->id : undef, + "profileName" => defined( $row->profile ) ? $row->profile->name : undef, + "profileDescription" => defined( $row->profile ) ? $row->profile->description : undef, + "protocol" => $row->protocol, + "qstringIgnore" => $row->qstring_ignore, + "rangeRequestHandling" => $row->range_request_handling, + "regexRemap" => $row->regex_remap, + "regionalGeoBlocking" => \$row->regional_geo_blocking, + "remapText" => $row->remap_text, + "signed" => \$row->signed, + "sslKeyVersion" => $row->ssl_key_version, + "trRequestHeaders" => $row->tr_request_headers, + "trResponseHeaders" => $row->tr_response_headers, + "type" => $row->type->name, + "typeId" => $row->type->id, + "xmlId" => $row->xml_id } ); } @@ -1025,7 +1026,7 @@ sub is_valid_long { sub sanitize_geo_limit_countries { my $geo_limit_countries = shift; - if (!defined($geo_limit_countries)) { + if ( !defined($geo_limit_countries) ) { return ""; } @@ -1035,19 +1036,20 @@ sub sanitize_geo_limit_countries { } sub create_default_ds_regex { - my $self = shift; - my $ds_id = shift; - my $pattern = shift; + my $self = shift; + my $ds_id = shift; + my $pattern = shift; my $type_id = $self->db->resultset('Type')->find( { name => 'HOST_REGEXP' } ); my $values = { - type => $type_id, - pattern => $pattern, + type => $type_id, + pattern => $pattern, }; my $rs_regex = $self->db->resultset('Regex')->create($values)->insert(); if ($rs_regex) { + # now insert the regex into the deliveryservice_regex table with set number = 0 $self->db->resultset('DeliveryserviceRegex')->create( { deliveryservice => $ds_id, regex => $rs_regex->id, set_number => 0 } )->insert(); &log( $self, "Default regex created [ " . $rs_regex->pattern . " ] for deliveryservice: " . $ds_id, "APICHANGE" ); @@ -1055,5 +1057,4 @@ sub create_default_ds_regex { } - 1;