in src/main/java/org/apache/sling/testing/mock/sling/oak/impl/ComparableVersion.java [209:235]
public int compareTo( Item item )
{
if ( item == null )
{
return ( value == 0 ) ? 0 : 1; // 1.0 == 1, 1.1 > 1
}
switch ( item.getType() )
{
case INT_ITEM:
return 1;
case LONG_ITEM:
long itemValue = ( (LongItem) item ).value;
return Long.compare( value, itemValue );
case BIGINTEGER_ITEM:
return -1;
case STRING_ITEM:
return 1; // 1.1 > 1-sp
case LIST_ITEM:
return 1; // 1.1 > 1-1
default:
throw new IllegalStateException( "invalid item: " + item.getClass() );
}
}