def get(self, loadbalancer):
        """
        Get a loadbalancer.

        :param loadbalancer: ID of the :class:`Loadbalancer` to get.
        :rtype: :class:`Loadbalancer`
        """
        return self._get("/loadbalancers/%s" % base.getid(loadbalancer), "loadBalancer")
 def _action(self, action, loadbalancer, info=None, **kwargs):
     """
     Perform a loadbalancer "action" -- reboot/rebuild/resize/etc.
     """
     body = {action: info}
     self.run_hooks('modify_body_for_action', body, **kwargs)
     url = '/loadbalancers/%s/action' % base.getid(loadbalancer)
     return self.api.client.post(url, body=body)
    def update(self, loadbalancer, name=None):
        """
        Update the name or the password for a loadbalancer.

        :param loadbalancer: The :class:`Loadbalancer` (or its ID) to update.
        :param name: Update the loadbalancer's name.
        """
        if name is None:
            return

        body = {
            "loadbalancer": {
                "name": name,
            },
        }

        return self._update("/loadbalancers/%s" % base.getid(loadbalancer), body, "loadbalancer")
 def delete(self, loadbalancer):
     """
     Delete (i.e. shut down and delete the image) this loadbalancer.
     """
     self._delete("/loadbalancers/%s" % base.getid(loadbalancer))
    def test_getid(self):
        self.assertEqual(base.getid(4), 4)

        class TmpObject(object):
            id = 4
        self.assertEqual(base.getid(TmpObject), 4)