blob: e0927b4a3d1a786641f81287c72f20b52562130c [file] [log] [blame]
Scott Bakeraf599eb2017-03-21 12:43:26 -07001from synchronizers.new_base.modelaccessor import *
Scott Baker46a3ee92017-05-30 16:44:56 -07002from synchronizers.new_base.policy import Policy
Scott Bakeraf599eb2017-03-21 12:43:26 -07003
Scott Baker46a3ee92017-05-30 16:44:56 -07004class ControllerSitePolicy(Policy):
5 model_name = "ControllerSite"
6
7 def handle_create(self, controller_site):
8 return self.handle_update(controller_site)
9
10 def handle_update(self, controller_site):
Scott Bakerb63ea792016-08-11 10:24:48 -070011 my_status_code = int(controller_site.backend_status[0])
12 try:
13 his_status_code = int(controller_site.site.backend_status[0])
14 except:
15 his_status_code = 0
Scott Baker46a3ee92017-05-30 16:44:56 -070016
Scott Bakerb63ea792016-08-11 10:24:48 -070017 if (my_status_code not in [0,his_status_code]):
18 controller_site.site.backend_status = controller_site.backend_status
19 controller_site.site.save(update_fields = ['backend_status'])