<div dir="ltr">Matthias, thanks for the very clear answer. <br><br>I don&#39;t have any attachment to or need for realms, so as far as I am concerned, they can disappear and won&#39;t be missed. I will definitely remove realm-related items from my code once they become NOOPs.<br>
<br>Regards,<br>Edwin<br><br><div class="gmail_quote">On Tue, Aug 5, 2008 at 1:20 PM, Matthias Radestock <span dir="ltr">&lt;<a href="mailto:matthias@lshift.net">matthias@lshift.net</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Edwin,<div class="Ih2E3d"><br>
<br>
Edwin Fine wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
setup_channel(Connection, Realm) -&gt;<br>
 &nbsp; &nbsp;Channel = amqp_connection:open_channel(Connection),<br>
 &nbsp; &nbsp;Access = #&#39;access.request&#39;{realm = Realm,<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; exclusive = false,<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; passive = true,<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; active = true,<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; write = true,<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; read = true},<br>
 &nbsp; &nbsp;#&#39;access.request_ok&#39;{ticket = Ticket} = amqp_channel:call(Channel, Access),<br>
 &nbsp; &nbsp;{Channel, Ticket}.<br>
<br>
This is used in a few places, which pass Realm around, so they will have to be changed.<br>
</blockquote>
<br></div>
The above will continue to work until realms &amp; tickets are removed from the protocol.<br>
<br>
We are going to be removing realms &amp; tickets in the following stages:<br>
<br>
1) Removal from the server internals and admin interface. Application code using the APIs of the various clients, and code that uses the AMQ protocol directly, will largely be unaffected since the protocol methods haven&#39;t changed and the server continues to respond to access.request method. Only code that that actively relies on the access control provided by realms will break with this change. I don&#39;t think there is much of that about.<br>

<br>
2) Removal from the high-level client APIs. This will require some changes to application code, but these should all be very straightforward. Also note that there is nothing forcing you to upgrade to the new versions of the client; the old clients will continue to function. And code that uses the AMQP protocol more directly, such as the code above, will remain unaffected.<br>

<br>
3) Removal from the protocol. At this point all application code must use the new client APIs and code that uses the AMQP protocol more directly will need to be changed. Again, the changes should be straightforward.<br>
<br>
<br>
We are about to carry out step 1. Step 2 is still a few weeks off. And step 3 won&#39;t happen until after the AMQP Working Group has published a spec which removes realms &amp; tickets.<br>
<br>
<br>
Hope the above is ok with everybody; if, otoh, you are really fond of tickets and realms and don&#39;t want to live without them then please let us know :)<br><font color="#888888">
<br>
<br>
Matthias.<br>
<br>
</font></blockquote></div><br><br clear="all"><br>-- <br>For every expert there is an equal and opposite expert - Arthur C. Clarke<br>
</div>