add disabledLocation functionality back, remove setting DS status

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

Branch: refs/heads/master
Commit: 31b022edd14e8cae9d578fac3bb41a608c49d9a6
Parents: a326d64
Author: David Neuman <david.neuma...@gmail.com>
Authored: Fri Feb 3 09:48:22 2017 -0700
Committer: Jeff Elsloo <jeffrey_els...@cable.comcast.com>
Committed: Fri Feb 3 11:17:37 2017 -0700

----------------------------------------------------------------------
 .../traffic_monitor/health/cache.go             | 38 +++++++++-----------
 1 file changed, 17 insertions(+), 21 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/31b022ed/traffic_monitor_golang/traffic_monitor/health/cache.go
----------------------------------------------------------------------
diff --git a/traffic_monitor_golang/traffic_monitor/health/cache.go 
b/traffic_monitor_golang/traffic_monitor/health/cache.go
index 0014f90..9c30d12 100644
--- a/traffic_monitor_golang/traffic_monitor/health/cache.go
+++ b/traffic_monitor_golang/traffic_monitor/health/cache.go
@@ -201,7 +201,7 @@ func CalcAvailability(results []cache.Result, pollerName 
string, statResultHisto
 
                localStates.SetCache(result.ID, peer.IsAvailable{IsAvailable: 
isAvailable})
        }
-       // calculateDeliveryServiceState(toData.DeliveryServiceServers, 
localStates)
+       calculateDeliveryServiceState(toData.DeliveryServiceServers, 
localStates)
        localCacheStatusThreadsafe.Set(localCacheStatuses)
 }
 
@@ -250,23 +250,19 @@ func eventDesc(status enum.CacheStatus, message string) 
string {
        return fmt.Sprintf("%s - %s", status, message)
 }
 
-// calculateDeliveryServiceState calculates the state of delivery services 
from the new cache state data `cacheState` and the CRConfig data 
`deliveryServiceServers` and puts the calculated state in the outparam 
`deliveryServiceStates`
-// func calculateDeliveryServiceState(deliveryServiceServers 
map[enum.DeliveryServiceName][]enum.CacheName, states peer.CRStatesThreadsafe) {
-//     deliveryServices := states.GetDeliveryServices()
-//     for deliveryServiceName, deliveryServiceState := range deliveryServices 
{
-//             if _, ok := deliveryServiceServers[deliveryServiceName]; !ok {
-//                     // log.Errorf("CRConfig does not have delivery service 
%s, but traffic monitor poller does; skipping\n", deliveryServiceName)
-//                     continue
-//             }
-//             deliveryServiceState.IsAvailable = false
-//             deliveryServiceState.DisabledLocations = []enum.CacheName{} // 
it's important this isn't nil, so it serialises to the JSON `[]` instead of 
`null`
-//             for _, server := range 
deliveryServiceServers[deliveryServiceName] {
-//                     if available, _ := states.GetCache(server); 
available.IsAvailable {
-//                             deliveryServiceState.IsAvailable = true
-//                     } else {
-//                             deliveryServiceState.DisabledLocations = 
append(deliveryServiceState.DisabledLocations, server)
-//                     }
-//             }
-//             states.SetDeliveryService(deliveryServiceName, 
deliveryServiceState)
-//     }
-// }
+//calculateDeliveryServiceState calculates the state of delivery services from 
the new cache state data `cacheState` and the CRConfig data 
`deliveryServiceServers` and puts the calculated state in the outparam 
`deliveryServiceStates`
+func calculateDeliveryServiceState(deliveryServiceServers 
map[enum.DeliveryServiceName][]enum.CacheName, states peer.CRStatesThreadsafe) {
+       deliveryServices := states.GetDeliveryServices()
+       for deliveryServiceName, deliveryServiceState := range deliveryServices 
{
+               if _, ok := deliveryServiceServers[deliveryServiceName]; !ok {
+                       log.Infof("CRConfig does not have delivery service %s, 
but traffic monitor poller does; skipping\n", deliveryServiceName)
+                       continue
+               }
+               deliveryServiceState.DisabledLocations = []enum.CacheName{} // 
it's important this isn't nil, so it serialises to the JSON `[]` instead of 
`null`
+               for _, server := range 
deliveryServiceServers[deliveryServiceName] {
+                               deliveryServiceState.DisabledLocations = 
append(deliveryServiceState.DisabledLocations, server)
+                       }
+               }
+               states.SetDeliveryService(deliveryServiceName, 
deliveryServiceState)
+       }
+}

Reply via email to