I am planning on using RabbitMQ as the AMQP implementation in my project. But I would like to restrict myself to using only the AMQP spec and not use any RabbitMQ extensions to AMQP.
Is there a way I can leave this 'spec-safety' check to the compiler ? For ex: if there was a AMQP-spec-only library of RabbitMQ, then by including only this library, I can leave it to the compiler to complain everytime I try to use an extension (as it cannot find the definition/implementation for that extension in the AMQP-spec-only library).
I want to do this so that if I try to switch to a different AMQP implementation, It will be easier ! (I am planning to use Spring Integration to abstract from the underlying AMQP implementation).