in broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/messaging/Source.java [320:399]
public boolean equals(final Object o)
{
if (this == o)
{
return true;
}
if (o == null || getClass() != o.getClass())
{
return false;
}
final Source source = (Source) o;
if (_address != null ? !_address.equals(source._address) : source._address != null)
{
return false;
}
if (_durable != null ? !_durable.equals(source._durable) : source._durable != null)
{
return false;
}
if (_expiryPolicy != null ? !_expiryPolicy.equals(source._expiryPolicy) : source._expiryPolicy != null)
{
return false;
}
if (_timeout != null ? !_timeout.equals(source._timeout) : source._timeout != null)
{
return false;
}
if (_dynamic != null ? !_dynamic.equals(source._dynamic) : source._dynamic != null)
{
return false;
}
if (_dynamicNodeProperties != null
? !_dynamicNodeProperties.equals(source._dynamicNodeProperties)
: source._dynamicNodeProperties != null)
{
return false;
}
if (_distributionMode != null
? !_distributionMode.equals(source._distributionMode)
: source._distributionMode != null)
{
return false;
}
if (_filter != null ? !_filter.equals(source._filter) : source._filter != null)
{
return false;
}
if (_defaultOutcome != null)
{
if (source._defaultOutcome == null)
{
return false;
}
if (_defaultOutcome.getSymbol() != null)
{
if (source._defaultOutcome.getSymbol() == null)
{
return false;
}
if (!_defaultOutcome.getSymbol().equals(source._defaultOutcome.getSymbol()))
{
return false;
}
}
else if (source._defaultOutcome.getSymbol() != null)
{
return false;
}
}
else if (source._defaultOutcome != null)
{
return false;
}
return Arrays.equals(_outcomes, source._outcomes) && Arrays.equals(_capabilities, source._capabilities);
}