#
# Copyright 2007 Google Inc. Released under the GPL v2

"""This is a convenience module to import all available types of hosts.

Implementation details:
You should 'import hosts' instead of importing every available host module.
"""

try:
    # host abstract classes
    from autotest_lib.server.hosts.base_classes import Host
    from autotest_lib.server.hosts.remote import RemoteHost

    # host implementation classes
    from autotest_lib.server.hosts.ssh_host import SSHHost
    from autotest_lib.server.hosts.cros_host import CrosHost
    from autotest_lib.server.hosts.chameleon_host import ChameleonHost
    from autotest_lib.server.hosts.servo_host import ServoHost
    from autotest_lib.server.hosts.labstation_host import LabstationHost

    # factory function
    from autotest_lib.server.hosts.factory import create_host
    from autotest_lib.server.hosts.factory import create_target_machine
except ImportError:
    # host abstract classes
    from base_classes import Host
    from remote import RemoteHost

    # host implementation classes
    from ssh_host import SSHHost
    from cros_host import CrosHost
    from chameleon_host import ChameleonHost
    from servo_host import ServoHost
    from labstation_host import LabstationHost

    # factory function
    from factory import create_host
    from factory import create_target_machine