Merge "Possibility to disconnect single input in resource"

This commit is contained in:
Jenkins 2016-04-28 15:01:13 +00:00 committed by Gerrit Code Review
commit 0a29d63404
2 changed files with 13 additions and 5 deletions

View File

@ -123,13 +123,21 @@ def init_cli_connect():
@main.command()
@click.argument('emitter')
@click.argument('receiver')
def disconnect(receiver, emitter):
click.echo('Disconnect {} from {}'.format(emitter, receiver))
@click.option('-i', '--input', multiple=True, default=None)
def disconnect(receiver, emitter, input):
if not input:
click.echo('Disconnect {} from {}'.format(emitter, receiver))
else:
click.echo('Disconnect {} from {} only {}'.format(
emitter,
receiver,
input
))
emitter = sresource.load(emitter)
receiver = sresource.load(receiver)
click.echo(emitter)
click.echo(receiver)
emitter.disconnect(receiver)
emitter.disconnect(receiver, input)
show_emitter_connections(emitter)

View File

@ -348,8 +348,8 @@ class Resource(object):
return self.connect_with_events(
receiver, mapping=mapping, events=events, use_defaults=True)
def disconnect(self, receiver):
inputs = self.db_obj.inputs.keys()
def disconnect(self, receiver, inputs=None):
inputs = inputs or self.db_obj.inputs.keys()
self.db_obj.disconnect(other=receiver.db_obj, inputs=inputs)
receiver.db_obj.save_lazy()
self.db_obj.save_lazy()