blob: 75ad3215de056071238d0f8ef43da625dc505eae [file] [log] [blame]
mblighdcd57a82007-07-11 23:06:47 +00001#!/usr/bin/python
2#
3# Copyright 2007 Google Inc. Released under the GPL v2
4
mblighdc735a22007-08-02 16:54:37 +00005"""
6This module defines the Hypervisor class
mblighdcd57a82007-07-11 23:06:47 +00007
jadmanski0afbb632008-06-06 21:10:57 +00008 Hypervisor: a virtual machine monitor
mblighdcd57a82007-07-11 23:06:47 +00009"""
10
mblighdc735a22007-08-02 16:54:37 +000011__author__ = """
12mbligh@google.com (Martin J. Bligh),
mblighdcd57a82007-07-11 23:06:47 +000013poirier@google.com (Benjamin Poirier),
mblighdc735a22007-08-02 16:54:37 +000014stutsman@google.com (Ryan Stutsman)
15"""
mblighdcd57a82007-07-11 23:06:47 +000016
17
18import installable_object
19
20
21class Hypervisor(installable_object.InstallableObject):
jadmanski0afbb632008-06-06 21:10:57 +000022 """
23 This class represents a virtual machine monitor.
mblighdc735a22007-08-02 16:54:37 +000024
jadmanski0afbb632008-06-06 21:10:57 +000025 Implementation details:
26 This is an abstract class, leaf subclasses must implement the methods
27 listed here and in parent classes which have no implementation. They
28 may reimplement methods which already have an implementation. You
29 must not instantiate this class but should instantiate one of those
30 leaf subclasses.
31 """
mblighdc735a22007-08-02 16:54:37 +000032
jadmanski0afbb632008-06-06 21:10:57 +000033 host = None
34 guests = None
mblighdc735a22007-08-02 16:54:37 +000035
jadmanski0afbb632008-06-06 21:10:57 +000036 def __init__(self, host):
37 super(Hypervisor, self).__init__()
38 self.host= host
mblighdc735a22007-08-02 16:54:37 +000039
40
jadmanski0afbb632008-06-06 21:10:57 +000041 def new_guest(self):
42 pass
mblighdc735a22007-08-02 16:54:37 +000043
44
jadmanski0afbb632008-06-06 21:10:57 +000045 def delete_guest(self, guest_hostname):
46 pass
mblighdc735a22007-08-02 16:54:37 +000047
48
jadmanski0afbb632008-06-06 21:10:57 +000049 def reset_guest(self, guest_hostname):
50 pass