Compares this {@code ServiceReference} with the specified{@code ServiceReference} for order.
If this {@code ServiceReference} and the specified{@code ServiceReference} have the same {@link Constants#SERVICE_ID service id} they are equal. This {@code ServiceReference} is less thanthe specified {@code ServiceReference} if it has a lower{@link Constants#SERVICE_RANKING service ranking} and greater if it has ahigher service ranking. Otherwise, if this {@code ServiceReference} andthe specified {@code ServiceReference} have the same{@link Constants#SERVICE_RANKING service ranking}, this {@code ServiceReference} is less than the specified{@code ServiceReference} if it has a higher {@link Constants#SERVICE_ID service id} and greater if it has a lower service id.
@param reference The {@code ServiceReference} to be compared.
@return Returns a negative integer, zero, or a positive integer if this{@code ServiceReference} is less than, equal to, or greater thanthe specified {@code ServiceReference}.
@throws IllegalArgumentException If the specified{@code ServiceReference} was not created by the same frameworkinstance as this {@code ServiceReference}.
@since 1.4