Files
xen/tools/python/xen/xend/server/SrvNode.py
T
mjw@wray-m-3.hpl.hp.com 084b3e366e bitkeeper revision 1.1327.2.9 (426f9bfcIjY9QAFCPqWBbFw35vclow)
Add support for unix-domain sockets on xend.
Remove some dead code.
Signed-off-by: Mike Wray <mike.wray@hp.com>
2005-04-27 14:04:44 +00:00

57 lines
1.6 KiB
Python

# Copyright (C) 2004 Mike Wray <mike.wray@hp.com>
import os
from xen.web.SrvDir import SrvDir
from xen.xend import sxp
from xen.xend import XendNode
from xen.xend.Args import FormFn
class SrvNode(SrvDir):
"""Information about the node.
"""
def __init__(self):
SrvDir.__init__(self)
self.xn = XendNode.instance()
self.add('dmesg', 'SrvDmesg')
self.add('log', 'SrvXendLog')
def op_shutdown(self, op, req):
val = self.xn.shutdown()
return val
def op_reboot(self, op, req):
val = self.xn.reboot()
return val
def op_cpu_bvt_slice_set(self, op, req):
fn = FormFn(self.xn.cpu_bvt_slice_set,
[['ctx_allow', 'int']])
val = fn(req.args, {})
return val
def render_POST(self, req):
return self.perform(req)
def render_GET(self, req):
if self.use_sxp(req):
req.setHeader("Content-Type", sxp.mime_type)
sxp.show(['node'] + self.info(), out=req)
else:
url = req.prePathURL()
if not url.endswith('/'):
url += '/'
req.write('<html><head></head><body>')
self.print_path(req)
req.write('<ul>')
for d in self.info():
req.write('<li> %10s: %s' % (d[0], str(d[1])))
req.write('<li><a href="%sdmesg">Xen dmesg output</a>' % url)
req.write('<li><a href="%slog>Xend log</a>' % url)
req.write('</ul>')
req.write('</body></html>')
def info(self):
return self.xn.info()