private StartupMode checkStartupMode(Configuration config) throws IOException {
  StartupMode bootMode=checkStartupModeOnDisk(config);
  if (bootMode != null) {
    return bootMode;
  }
  if (checkConfigBool(config,Constants.STARTUPMODE_RESTORE_REINIT)) {
    _log.info("Found geodbrestore config: {}",Constants.STARTUPMODE_RESTORE_REINIT);
    GeodbRestoreMode mode=new GeodbRestoreMode(config);
    mode.setCoordinator(_coordinator);
    mode.setSchemaUtil(_schemaUtil);
    mode.setDbDir(dbDir);
    return mode;
  }
  if (checkConfigBool(config,Constants.REINIT_DB)) {
    _log.info("Found reinit config: {}",Constants.REINIT_DB);
    DbReinitMode mode=new DbReinitMode(config);
    mode.setCoordinator(_coordinator);
    mode.setSchemaUtil(_schemaUtil);
    mode.setDbDir(dbDir);
    return mode;
  }
  List<String> obsoletePeers=checkConfigList(config,Constants.OBSOLETE_CASSANDRA_PEERS);
  if (!obsoletePeers.isEmpty()) {
    ObsoletePeersCleanupMode mode=new ObsoletePeersCleanupMode(config);
    mode.setCoordinator(_coordinator);
    mode.setSchemaUtil(_schemaUtil);
    mode.setObsoletePeers(obsoletePeers);
    return mode;
  }
 else {
    NormalMode mode=new NormalMode(config);
    mode.setCoordinator(_coordinator);
    mode.setSchemaUtil(_schemaUtil);
    return mode;
  }
}

private StartupMode checkStartupMode ( Configuration config ) throws IOException { StartupMode bootMode = checkStartupModeOnDisk ( config ) ; if ( bootMode != null ) { return bootMode ; } if ( checkConfigBool ( config , Constants . STARTUPMODE_RESTORE_REINIT ) ) { _log . info ( "Found geodbrestore config: {}" , Constants . STARTUPMODE_RESTORE_REINIT ) ; GeodbRestoreMode mode = new GeodbRestoreMode ( config ) ; mode . setCoordinator ( _coordinator ) ; mode . setSchemaUtil ( _schemaUtil ) ; mode . setDbDir ( dbDir ) ; return mode ; } if ( checkConfigBool ( config , Constants . REINIT_DB ) ) { _log . info ( "Found reinit config: {}" , Constants . REINIT_DB ) ; DbReinitMode mode = new DbReinitMode ( config ) ; mode . setCoordinator ( _coordinator ) ; mode . setSchemaUtil ( _schemaUtil ) ; mode . setDbDir ( dbDir ) ; return mode ; } List < String > obsoletePeers = checkConfigList ( config , Constants . OBSOLETE_CASSANDRA_PEERS ) ; if ( ! obsoletePeers . isEmpty ( ) ) { ObsoletePeersCleanupMode mode = new ObsoletePeersCleanupMode ( config ) ; mode . setCoordinator ( _coordinator ) ; mode . setSchemaUtil ( _schemaUtil ) ; mode . setObsoletePeers ( obsoletePeers ) ; return mode ; } else { NormalMode mode = new NormalMode ( config ) ; mode . setCoordinator ( _coordinator ) ; mode . setSchemaUtil ( _schemaUtil ) ; return mode ; } }
determine current startup mode . see bootmode for detailed explanation of each mode .
