break;
case 8:
// is compatible
- break;
+ boolean c1 = d1.isDataSourceCompatible();
+ boolean c2 = d2.isDataSourceCompatible();
+ if (c1 == c2){
+ result = 0;
+ }else if (c1 == true){
+ result = -1;
+ }else{
+ result = 1;
+ }
+ break;
case 7:
result = d1.getMetaData(MetaDataPropertyName.DB_SCHEMA_VERSION).compareTo(d2.getMetaData(MetaDataPropertyName.DB_SCHEMA_VERSION));
break;
result = d1.getMetaData(MetaDataPropertyName.DB_CREATE_DATE).compareTo(d2.getMetaData(MetaDataPropertyName.DB_CREATE_DATE));
break;
case 5:
- // is running
- break;
- case 4:
if(cs1 instanceof ICdmDataSource && cs2 instanceof ICdmDataSource) {
result = ((ICdmDataSource)cs1).getDatabase().compareTo(((ICdmDataSource)cs2).getDatabase());
}
break;
- case 3:
+ case 4:
if(cs1 instanceof ICdmDataSource && cs2 instanceof ICdmDataSource) {
result = ((ICdmDataSource)cs1).getDatabaseType().getName().compareTo(((ICdmDataSource)cs2).getDatabaseType().getName());
}
break;
+ case 3:
+ // is running
+ boolean r1 = d1.isRunning();
+ boolean r2 = d2.isRunning();
+ if (r1 == r2){
+ result = 0;
+ }else if (r1 == true){
+ result = -1;
+ }else{
+ result = 1;
+ }
+ break;
case 2:
String server1 = d1.getCdmSource().getServer();
String server2 = d2.getCdmSource().getServer();
- if(server1 != null && server2 != null){
- result = server1.compareTo(server2);
- }
// h2 databases do not have server entries
+ server1 = server1 == null? "local" : server1;
+ server2 = server2 == null? "local" : server2;
+ result = server1.compareTo(server2);
break;
default:
result = d1.getCdmSource().getName().compareTo(d2.getCdmSource().getName());