summaryrefslogtreecommitdiffstats
path: root/nova/api
diff options
context:
space:
mode:
Diffstat (limited to 'nova/api')
-rw-r--r--nova/api/openstack/servers.py43
1 files changed, 0 insertions, 43 deletions
diff --git a/nova/api/openstack/servers.py b/nova/api/openstack/servers.py
index 24fd5000c..497a04ae3 100644
--- a/nova/api/openstack/servers.py
+++ b/nova/api/openstack/servers.py
@@ -17,7 +17,6 @@
import logging
import traceback
-import functools
from webob import exc
@@ -36,41 +35,6 @@ LOG = logging.getLogger('server')
LOG.setLevel(logging.DEBUG)
-def checks_instance_lock(function):
- """
- decorator used for preventing action against locked instances
- unless, of course, you happen to be admin
-
- """
-
- @functools.wraps(function)
- def decorated_function(*args, **kwargs):
-
- # grab args to function
- try:
- if 'req' in kwargs:
- req = kwargs['req']
- else:
- req = args[1]
- if 'id' in kwargs:
- _id = kwargs['id']
- else:
- req = args[2]
- context = req.environ['nova.context']
- except:
- logging.error(_("check_lock: argument error: |%s|, |%s|"), args,
- kwargs)
- # if admin or unlocked call function, otherwise 404
- locked = compute_api.ComputeAPI().get_lock(context, _id)
- admin = req.environ['nova.context'].is_admin
- if admin or not locked:
- return function(*args, **kwargs)
-
- return faults.Fault(exc.HTTPMethodNotAllowed())
-
- return decorated_function
-
-
def _translate_detail_keys(inst):
""" Coerces into dictionary format, mapping everything to Rackspace-like
attributes for return"""
@@ -147,7 +111,6 @@ class Controller(wsgi.Controller):
except exception.NotFound:
return faults.Fault(exc.HTTPNotFound())
- @checks_instance_lock
def delete(self, req, id):
""" Destroys a server """
try:
@@ -175,7 +138,6 @@ class Controller(wsgi.Controller):
key_data=key_pair['public_key'])
return _translate_keys(instances[0])
- @checks_instance_lock
def update(self, req, id):
""" Updates the server name or password """
inst_dict = self._deserialize(req.body, req)
@@ -197,7 +159,6 @@ class Controller(wsgi.Controller):
return faults.Fault(exc.HTTPNotFound())
return exc.HTTPNoContent()
- @checks_instance_lock
def action(self, req, id):
""" Multi-purpose method used to reboot, rebuild, and
resize a server """
@@ -258,7 +219,6 @@ class Controller(wsgi.Controller):
return faults.Fault(exc.HTTPUnprocessableEntity())
return exc.HTTPAccepted()
- @checks_instance_lock
def pause(self, req, id):
""" Permit Admins to Pause the server. """
ctxt = req.environ['nova.context']
@@ -270,7 +230,6 @@ class Controller(wsgi.Controller):
return faults.Fault(exc.HTTPUnprocessableEntity())
return exc.HTTPAccepted()
- @checks_instance_lock
def unpause(self, req, id):
""" Permit Admins to Unpause the server. """
ctxt = req.environ['nova.context']
@@ -282,7 +241,6 @@ class Controller(wsgi.Controller):
return faults.Fault(exc.HTTPUnprocessableEntity())
return exc.HTTPAccepted()
- @checks_instance_lock
def suspend(self, req, id):
"""permit admins to suspend the server"""
context = req.environ['nova.context']
@@ -294,7 +252,6 @@ class Controller(wsgi.Controller):
return faults.Fault(exc.HTTPUnprocessableEntity())
return exc.HTTPAccepted()
- @checks_instance_lock
def resume(self, req, id):
"""permit admins to resume the server from suspend"""
context = req.environ['nova.context']