Default to 3 datadirs in in-jvm dtests (#13)

Patch by marcuse; reviewed by David Capwell for CASSANDRA-15386
diff --git a/src/main/java/org/apache/cassandra/distributed/shared/AbstractBuilder.java b/src/main/java/org/apache/cassandra/distributed/shared/AbstractBuilder.java
index d601cda..63ceca3 100644
--- a/src/main/java/org/apache/cassandra/distributed/shared/AbstractBuilder.java
+++ b/src/main/java/org/apache/cassandra/distributed/shared/AbstractBuilder.java
@@ -54,6 +54,7 @@
     private ClassLoader sharedClassLoader = Thread.currentThread().getContextClassLoader();
     private int broadcastPort = 7012;
     private BiConsumer<ClassLoader, Integer> instanceInitializer = (cl, id) -> {};
+    private int datadirCount = 3;
 
     public AbstractBuilder(Factory<I, C, B> factory)
     {
@@ -101,6 +102,11 @@
         return instanceInitializer;
     }
 
+    public int getDatadirCount()
+    {
+        return datadirCount;
+    }
+
     public C start() throws IOException
     {
         C cluster = createWithoutStarting();
@@ -268,6 +274,14 @@
         return (B) this;
     }
 
+    public B withDataDirCount(int datadirCount)
+    {
+        assert datadirCount > 0 : "data dir count requires a positive number but given " + datadirCount;
+        this.datadirCount = datadirCount;
+        return (B) this;
+    }
+
+
     static String dcName(int index)
     {
         return "datacenter" + index;