protected Properties getNonBlockingRouterPropertiesForRepairRequests(String routerDataCenter, boolean enableODR,
      boolean enableOfflineRepair, boolean enableForceDelete) {
    Properties properties =
        super.getNonBlockingRouterProperties(routerDataCenter, PUT_REQUEST_PARALLELISM, DELETE_REQUEST_PARALLELISM);
    properties.setProperty("router.operation.controller", "com.github.ambry.router.QuotaAwareOperationController");

    if (enableODR) {
      // enable replicate blob on TtlUpdate
      properties.setProperty("router.repair.with.replicate.blob.enabled", "true");
      // enable replicate blob on Delete
      properties.setProperty("router.repair.with.replicate.blob.on.delete.enabled", "true");
    }
    if (enableOfflineRepair) {
      // set up the RepairRequestsDbFactory
      properties.setProperty("router.repair.requests.db.factory",
          "com.github.ambry.repair.MysqlRepairRequestsDbFactory");
      String dbInfo = "["
          + "{\"url\":\"jdbc:mysql://localhost/AmbryRepairRequests?serverTimezone=UTC\",\"datacenter\":\"DC1\",\"isWriteable\":\"true\",\"username\":\"travis\",\"password\":\"\"},"
          + "{\"url\":\"jdbc:mysql://localhost/AmbryRepairRequests?serverTimezone=UTC\",\"datacenter\":\"DC2\",\"isWriteable\":\"true\",\"username\":\"travis\",\"password\":\"\"},"
          + "{\"url\":\"jdbc:mysql://localhost/AmbryRepairRequests?serverTimezone=UTC\",\"datacenter\":\"DC3\",\"isWriteable\":\"true\",\"username\":\"travis\",\"password\":\"\"}"
          + "]";
      properties.setProperty("mysql.repair.requests.db.info", dbInfo);
      // enable offline repair for delete and ttlupdate
      properties.setProperty("router.delete.offline.repair.enabled", "true");
      properties.setProperty("router.ttlupdate.offline.repair.enabled", "true");
    }
    if (enableForceDelete) {
      properties.setProperty(RouterConfig.ROUTER_FORCE_DELETE_ENABLED, "true");
    }

    return properties;
  }
Constructs and returns a VerifiableProperties instance with the defaults required for instantiating
@param enableODR enable On demand replication
@param enableOfflineRepair enable the offline repair
@param enableForceDelete enable force delete for delete operations
@return the created VerifiableProperties instance.
ambry-router/src/test/java/com/github/ambry/router/NonBlockingRouterTest.java