class_docstr: Server class for hosting Courier RPCs.
  
  This provides a convenience wrapper around the CLIF bindings. The thread pool
  size determines how many method handlers can be executed concurrently.
  
  Server start and termination. No RPCs are served before a call of Start is
  entered or after a call of Join or Stop has returned. A server may be started
  at most once. The functions Stop and Join may block if they need to wait for
  a concurrent Start to complete.
class_docstr_tok: ["Server","class","for","hosting","Courier","RPCs",".","This","provides","a","convenience","wrapper","around","the","CLIF","bindings",".","The","thread","pool","size","determines","how","many","method","handlers","can","be","executed","concurrently",".","Server","start","and","termination",".","No","RPCs","are","served","before","a","call","of","Start","is","entered","or","after","a","call","of","Join","or","Stop","has","returned",".","A","server","may","be","started","at","most","once",".","The","functions","Stop","and","Join","may","block","if","they","need","to","wait","for","a","concurrent","Start","to","complete","."]
docstr: Changes the health status of the server.
  
  A server, which reports as unhealthy still accepts and serves incoming
  requests, but it prefers not to receive any. This is useful in the following
  scenarios:
   - Before the server is terminated, it starts reporting as unhealthy. This
     lets clients know not to send any further requests to this server.
   - When load-balancing requests over several servers and this server is
     experiencing problems (e.g. high disk latency). This lets the
     load-balancer know not to send any traffic until the problems have been
     resolved.
  
  Args:
    is_healthy: A boolean that indicates whether or not the server reports as
      healthy.
docstr_tok: ["Changes","the","health","status","of","the","server",".","A","server",",","which","reports","as","unhealthy","still","accepts","and","serves","incoming","requests",",","but","it","prefers","not","to","receive","any",".","This","is","useful","in","the","following","scenarios",":","-","Before","the","server","is","terminated",",","it","starts","reporting","as","unhealthy",".","This","lets","clients","know","not","to","send","any","further","requests","to","this","server",".","-","When","load-balancing","requests","over","several","servers","and","this","server","is","experiencing","problems","(","e.g",".","high","disk","latency",")",".","This","lets","the","load-balancer","know","not","to","send","any","traffic","until","the","problems","have","been","resolved",".","Args",":","is_healthy",":","A","boolean","that","indicates","whether","or","not","the","server","reports","as","healthy","."]
code: def SetIsHealthy(self, is_healthy):
      """Changes the health status of the server.
  
      A server, which reports as unhealthy still accepts and serves incoming
      requests, but it prefers not to receive any. This is useful in the following
      scenarios:
       - Before the server is terminated, it starts reporting as unhealthy. This
         lets clients know not to send any further requests to this server.
       - When load-balancing requests over several servers and this server is
         experiencing problems (e.g. high disk latency). This lets the
         load-balancer know not to send any traffic until the problems have been
         resolved.
  
      Args:
        is_healthy: A boolean that indicates whether or not the server reports as
          healthy.
      """
      if not self._server:
          raise ValueError(
              "Cannot set health status; server not started."
          )
      self._server.SetIsHealthy(is_healthy)
  
file_path: launchpad/courier/python/py_server.py
imports: from typing import Optional
  from courier.handlers.python import pybind
  from courier.python import router
  from courier.python import server
  import numpy
  import portpicker
  from six.moves import map
  import tree
label_desc: Use image node_id 10 for calling the Server obj's underlying member method code with example usage: obj.SetIsHealthy(is_healthy) without return types