Skip to content

Modification de disconnect() du Manager #21

Closed

Description

@choomz

Actuellement on ne peut pas détruire une connection entre deux NodeInterface à l'aide de disconnect().

Il faut d'abord récupérer toutes les connections d'une node, puis iterer sur la collection pour voir si notre deuxieme node est présente, puis enfin détruire la connection.

Je pense qu'on pourrait conserver la notion de destruction d'une connection dans une méthode destroyConnection(ConnectionInterface $connection); et modifier disconnect() vers

public function disconnect(NodeInterface $souce, NodeInterface $destination);

Activity

  1. armetiz commented on Mar 22, 2013

    @armetiz
    Contributor

    Pas faux,
    Et puis avoir le prototype suivant pour disconnect

    public function disconnect(NodeInterface $souce, NodeInterface $destination);

    C'est plus cohérent vis-à-vis de la méthode connect.

    Du coups, je suis pour cette modification 👍

    Au niveau de destroyConnection, pourquoi ne pas directement faire destroy() ?
    Si on modifie disconnect, l'ensemble des méthodes du Manager s'appliquera avec des NodeInterface en entrée.. Du coups, cela peut justifier d'appeler destroyConnection afin de contextualisé l'utilisation de cette méthode..
    Maintenant, au niveau perso, je prefere destroy.. 🌴

    @benjamindulau ?

  2. benjamindulau commented on Mar 22, 2013

    @benjamindulau
    Member

    👍 pour l'idée générale
    et 👍 pour le destroy tout simple ;-)

    On pourrait aussi ajouter une option dans la méthode disconnect pour destroy les connections automatiquement suite au disconnect.

    public function disconnect(NodeInterface $souce, NodeInterface $destination, $destroyConnection = false);
  3. choomz commented on Mar 22, 2013

    @choomz
    MemberAuthor

    Ok vendu, cool ! Par contre pour le $destroyConnection, je ne sais pas si c'est utile, car l'idée derriere c'est effectivement de détruire la connection, avec ou sans parametre :)

  4. armetiz commented on Mar 22, 2013

    @armetiz
    Contributor

    @benjamindulau on avait décidé de ne plus conserver l'état d'une connexion.
    Quand on déconnecter deux objets, on détruit la connexion.

  5. benjamindulau commented on Mar 22, 2013

    @benjamindulau
    Member

    Ok ! :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions