2012-05-21 5 views
0

Pour mon programme, j'ai une classe Server et une classe Protocols.Établir la bonne relation entre deux classes

Lorsque mon serveur reçoit un message du client, je souhaite que le serveur envoie le message aux protocoles. Les protocoles déterminent ensuite ce qui doit être fait avec le message et invoquent les méthodes appropriées. Maintenant, les méthodes qui doivent être invoquées sont à l'intérieur du serveur. Donc, essentiellement, le serveur doit avoir accès aux protocoles et les protocoles doivent avoir accès au serveur.

Quelle est la meilleure façon d'établir une telle relation? Comment je le ferais? Je ne veux pas de référence circulaire, mais y a-t-il un autre moyen? Qu'en est-il de suivre le modèle de servlet des objets de demande/réponse?

+0

élaborer quelles sont ces méthodes dans le serveur? –

Répondre

1

Chaque fois que vous recevez un message, vous l'empaquetez dans un objet de requête, vous créez un objet de réponse et vous l'envoyez à votre gestionnaire de protocole (agissant comme une sorte de servlet).

Votre gestionnaire traite la requête, et tout ce dont il a besoin pour la renvoyer, il la place dans l'objet de réponse, qui est finalement utilisé par le serveur pour envoyer la réponse réelle au client. Si le serveur doit prendre des décisions, il peut le faire sur la base des informations déjà fournies dans l'objet de réponse après que la demande a été traitée par votre gestionnaire de protocole.

Vous pouvez ultérieurement ajouter des concepts similaires à ceux du modèle de servlet, tels que des filtres ou des gestionnaires d'événements pour répondre à des exigences similaires.

Questions connexes