Establishing the right relationship between two classes
<p>For my program I have a <code>Server</code> class and a <code>Protocols</code> class.</p>

<p>When my Server receives a message from the Client I want the Server to send the message to the Protocols. The Protocols then figure out what needs to be done with the message and invokes the proper methods. Now, the methods that need to be invoked are inside the Server.</p>

<p>So essentially, the Server needs to have access to the Protocols and the Protocols needs to have access to the Server.</p>

<p>What is the best way to establish such a relationship? How would I do it?
I don't want a circular reference, but is there another way?</p>
