From: Tony Mack Date: Thu, 1 Dec 2011 20:27:44 +0000 (-0500) Subject: raise InvalidRSpec exception if request rspec has no slivers X-Git-Tag: sfa-2.0-2~25 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=70f2959fa524d59d366b52a3210d58e97a8e391d;p=sfa.git raise InvalidRSpec exception if request rspec has no slivers --- diff --git a/sfa/methods/CreateSliver.py b/sfa/methods/CreateSliver.py index fb1a2920..75463d7b 100644 --- a/sfa/methods/CreateSliver.py +++ b/sfa/methods/CreateSliver.py @@ -1,12 +1,9 @@ -from sfa.util.faults import SfaInvalidArgument +from sfa.util.faults import SfaInvalidArgument, InvalidRSpec from sfa.util.xrn import urn_to_hrn from sfa.util.method import Method from sfa.util.sfatablesRuntime import run_sfatables - from sfa.trust.credential import Credential - from sfa.storage.parameter import Parameter, Mixed - from sfa.rspecs.rspec import RSpec class CreateSliver(Method): @@ -54,8 +51,7 @@ class CreateSliver(Method): self.api.logger.debug("CreateSliver: sfatables on chain %s"%chain_name) rspec = run_sfatables(chain_name, hrn, origin_hrn, rspec) slivers = RSpec(rspec).version.get_nodes_with_slivers() - if slivers: - result = self.api.manager.CreateSliver(self.api, slice_xrn, creds, rspec, users, options) - else: - result = rspec + if not slivers: + raise InvalidRSpec("Missing or element. Request rspec must explicitly allocate slivers") + result = self.api.manager.CreateSliver(self.api, slice_xrn, creds, rspec, users, options) return result