+ creds = [slice_cred]
+ if opts.delegate:
+ delegated_cred = self.delegate_cred(slice_cred, get_authority(self.authority))
+ creds.append(delegated_cred)
+ return server.reset_slice(creds, slice_urn)
+
+ def renew(self, opts, args):
+ slice_hrn = args[0]
+ slice_urn = hrn_to_urn(slice_hrn, 'slice')
+ server = self.get_server_from_opts(opts)
+ slice_cred = self.get_slice_cred(args[0]).save_to_string(save_parents=True)
+ creds = [slice_cred]
+ if opts.delegate:
+ delegated_cred = self.delegate_cred(slice_cred, get_authority(self.authority))
+ creds.append(delegated_cred)
+ time = args[1]
+
+ call_args = [slice_urn, creds, time]
+ if self.server_supports_call_id_arg(server):
+ call_args.append(unique_call_id())
+ return server.RenewSliver(*call_args)
+
+
+ def status(self, opts, args):
+ slice_hrn = args[0]
+ slice_urn = hrn_to_urn(slice_hrn, 'slice')
+ slice_cred = self.get_slice_cred(slice_hrn).save_to_string(save_parents=True)
+ creds = [slice_cred]
+ if opts.delegate:
+ delegated_cred = self.delegate_cred(slice_cred, get_authority(self.authority))
+ creds.append(delegated_cred)
+ server = self.get_server_from_opts(opts)
+ call_args = [slice_urn, creds]
+ if self.server_supports_call_id_arg(server):
+ call_args.append(unique_call_id())
+ print server.SliverStatus(*call_args)
+
+
+ def shutdown(self, opts, args):
+ slice_hrn = args[0]
+ slice_urn = hrn_to_urn(slice_hrn, 'slice')
+ slice_cred = self.get_slice_cred(slice_hrn).save_to_string(save_parents=True)
+ creds = [slice_cred]
+ if opts.delegate:
+ delegated_cred = self.delegate_cred(slice_cred, get_authority(self.authority))
+ creds.append(delegated_cred)
+ server = self.get_server_from_opts(opts)
+ return server.Shutdown(slice_urn, creds)