* You can set multiple expectations for different header names.
* If you set a value of <tt>null</tt> that means we accept either the header is absent, or its value is <tt>null</tt>
*/
public void expectedHeaderReceived(final String name, final Object value) {
if (expectedHeaderValues == null) {
expectedHeaderValues = new CaseInsensitiveMap();
// we just wants to expects to be called once
expects(new Runnable() {
public void run() {
for (int i = 0; i < getReceivedExchanges().size(); i++) {
Exchange exchange = getReceivedExchange(i);