Un écouteur pour tous les paquets vs écouteurs distincts pour traiter des types spécifiques

StackOverflow https://stackoverflow.com/questions/736802

  •  09-09-2019
  •  | 
  •  

Question

Le XMPPConnection Smack met en œuvre de façon évènementielle de recevoir des réponses XMPP à partir d'un serveur Jabber. Procédé addPacketListener (org.jivesoftware.smack.PacketListener, org.jivesoftware.smack.filter.PacketFilter) vous permet de spécifier votre propre écouteur personnalisé. Je maintiens le code dans lequel on PacketListener gère tous les types de messages entrants. Dans l'intérêt d'améliorer la conception, (avec un clin d'œil à la responsabilité unique Principe ), je plan visant à créer des auditeurs indépendants qui gèrent certains types de paquets. Est-ce une bonne idée ? Un autre problème est que les Messages paquets peuvent provenir de plusieurs systèmes de messagerie instantanée par exemple yahoo, google etc ...? Est-ce que je crée un des processeurs séparés pour chaque Yahoo, les services google?

Était-ce utile?

La solution

J'ai décidé d'utiliser l'option plusieurs PacketListeners. Un PacketListener unique serait en train de faire trop de travail, avec tous les if-else déclarations.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top