def serve(self): self.__connect_to_zookeeper() # Load our configuration and register ourselves. self.manager_register() # Watch all managers and endpoints. self.manager_change(self.zk_conn.watch_children(paths.managers(), self.manager_change)) self.endpoint_change(self.zk_conn.watch_children(paths.endpoints(), self.endpoint_change)) # Watch all IPs. self.register_ip(self.zk_conn.watch_children(paths.new_ips(), self.register_ip)) self.unregister_ip(self.zk_conn.watch_children(paths.drop_ips(), self.unregister_ip))
def list_managed_endpoints(self): return self.zk_conn.list_children(paths.endpoints())