<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Jan 13, 2009, at 1:03 AM, Matthias Radestock wrote:</div><div><br></div><blockquote type="cite"><div>The above *is* part of the client api.<br><br>Should lib_amqp contain a separate function for every conceivable combination of flags and exchange types, e.g.<br> declare_durabe_auto_delete_topic_exchange(...)<br> ...<br>?<br><br>If not, where do you draw the line?<br></div></blockquote><div><br></div><div>It seems to me that what declare_queue and publish do is a step</div><div>in the right direction, maybe what I would change still is to avoid having</div><div>to pass a structure and instead pass a list of tuples that will be used to</div><div>construct the structure that will be sent.</div><div><br></div><div>declare_exchange(X, [{durable, true}, {auto_delete, false}]).</div><div><br></div><div>But yes, I see your point and I&nbsp;wish erlang had default&nbsp;arguments</div><div>without the need to overload the&nbsp;function several times&nbsp;because</div><div>essentially this is a non existent&nbsp;problem in python libraries.</div><br><blockquote type="cite"><div>lib_amqp predates the use of defaults in the record definitions. With those defaults in place, creating small wrappers in lib_amqp saves no more than a couple of tokens. And on the downside you then have to remember what all those different functions are called and in which order they take their arguments.<br></div></blockquote><div><br></div><div>Sure, but it also means that every time you don't use a single</div><div>default you have to write those wrappers and those wrappers</div><div>will be only in your code and won't be shared.<br></div><div><br></div><blockquote type="cite"><div>Well, it does concern me when you are seeing apparently non-sensical behaviour in your tests. If you do run into this again, could you perhaps post step-by-step instructions to reproduce the results from a fresh broker install?<br></div></blockquote></div><div><br></div><div>Yes I will.</div><br><div apple-content-edited="true"> <span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div><span class="Apple-style-span" style="border-collapse: collapse; font-family: arial; font-size: 13px; white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; ">-- </span></div><div><span class="Apple-style-span" style="border-collapse: collapse; font-family: arial; font-size: 13px; white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; ">Valentino Volonghi aka Dialtone</span></div><div><span class="Apple-style-span" style="border-collapse: collapse; font-family: arial; font-size: 13px; white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; ">Now&nbsp;running MacOS X 10.5</span></div><div><span class="Apple-style-span" style="border-collapse: collapse; font-family: arial; font-size: 13px; white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; ">Home Page: <a href="http://www.twisted.it">http://www.twisted.it</a> </span></div><div><span class="Apple-style-span" style="border-collapse: collapse; font-family: arial; font-size: 13px; white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; "><a href="http://www.adroll.com">http://www.adroll.com</a></span></div></div></div></span></div></span></div></span> </div><br></body></html>