static Properties getRouterProperties(String routerDatacenter) {
    // Change delete parallelism to 2 to make sure all delete requests are handled by ambry server.
    // NotificationSystem and latch won't guarantee that since replication and frontend request both could count down
    // the latch. When then parallelism is 3, there is a chance that two of delete requests reaches the ambry servers
    // and count the delete latch down in notification system, at the same time, the third ambry server would replicate
    // this particular delete record from one of these two ambry server, which would count the latch down even without
    // handling the last delete request from frontend.
    // In this case, if we are doing undelete after delete, undelete would proceeded since the latch count is 0 now. And
    // there is a chance that the dangling delete request would arrive after undelete.
    // Change the parallelism to 2 would prevent this issue.
    Properties properties = new Properties();
    properties.setProperty("router.hostname", "localhost");
    properties.setProperty("router.datacenter.name", routerDatacenter);
    properties.setProperty("router.connection.checkout.timeout.ms", "5000");
    properties.setProperty("router.request.timeout.ms", "10000");
    properties.setProperty("router.max.put.chunk.size.bytes", Integer.toString(CHUNK_SIZE));
    properties.setProperty("router.delete.request.parallelism", "2");
    properties.setProperty("clustermap.cluster.name", "test");
    properties.setProperty("clustermap.datacenter.name", routerDatacenter);
    properties.setProperty("clustermap.host.name", "localhost");
    properties.setProperty("kms.default.container.key", TestUtils.getRandomKey(32));
    properties.setProperty("clustermap.default.partition.class", MockClusterMap.DEFAULT_PARTITION_CLASS);
    return properties;
  }
Generate the properties needed by the router.  NOTE: Properties for SSL interaction need
to be added manually.
@param routerDatacenter the datacenter name where the router will be running.
@return a {@link Properties} object with the properties needed to instantiate the router.
ambry-server/src/integration-test/java/com/github/ambry/server/RouterServerTestFramework.java