def METHOD_NAME(self):
    """
    Tries to shutdown the computer
    """
    self.countdown = None
    if self.counter > 0:
        self.message.set_secondary_text(
            _('The computer will be shut down in %d seconds.') % self.counter
        )
        self.message.show()
        self.counter -= 1
        return True
    self.do_shutdown = False
    bus = dbus.SystemBus()
    try:
        proxy = bus.get_object('org.freedesktop.login1', '/org/freedesktop/login1')
        proxy.PowerOff(False, dbus_interface='org.freedesktop.login1.Manager')
    except dbus.exceptions.DBusException:
        try:
            proxy = bus.get_object(
                'org.freedesktop.ConsoleKit', '/org/freedesktop/ConsoleKit/Manager'
            )
            proxy.Stop(dbus_interface='org.freedesktop.ConsoleKit.Manager')
        except dbus.exceptions.DBusException:
            try:
                proxy = bus.get_object(
                    'org.freedesktop.Hal', '/org/freedesktop/Hal/devices/computer'
                )
                proxy.Shutdown(
                    dbus_interface='org.freedesktop.Hal.Device.SystemPowerManagement'
                )
            except dbus.exceptions.DBusException:
                self.message.show_warning(
                    _('Shutdown failed'),
                    _('Computer could not be shutdown using D-Bus.'),
                )