You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datasketches.apache.org by le...@apache.org on 2022/11/03 02:29:29 UTC

[datasketches-memory] 01/01: Fix interaction between DefaultMemoryFactory and DefaultMemoryRequestServer

This is an automated email from the ASF dual-hosted git repository.

leerho pushed a commit to branch refactorInterfaces_fixBug
in repository https://gitbox.apache.org/repos/asf/datasketches-memory.git

commit 044df003279f3c504214a78b9bf807de6c21f754
Author: Lee Rhodes <le...@users.noreply.github.com>
AuthorDate: Wed Nov 2 19:29:21 2022 -0700

    Fix interaction between DefaultMemoryFactory and
    DefaultMemoryRequestServer
---
 .../datasketches/memory/DefaultMemoryFactory.java  | 371 +++++++++++----------
 .../memory/DefaultMemoryRequestServer.java         |  24 +-
 .../apache/datasketches/memory/MemoryFactory.java  |  12 +-
 .../datasketches/memory/internal/MemoryTest.java   |   2 +-
 4 files changed, 208 insertions(+), 201 deletions(-)

diff --git a/src/main/java/org/apache/datasketches/memory/DefaultMemoryFactory.java b/src/main/java/org/apache/datasketches/memory/DefaultMemoryFactory.java
index 11619d3..e0239cf 100644
--- a/src/main/java/org/apache/datasketches/memory/DefaultMemoryFactory.java
+++ b/src/main/java/org/apache/datasketches/memory/DefaultMemoryFactory.java
@@ -18,197 +18,204 @@
  */
 package org.apache.datasketches.memory;
 
-import org.apache.datasketches.memory.internal.BaseWritableMemoryImpl;
-import org.apache.datasketches.memory.internal.unsafe.Prim;
-import org.apache.datasketches.memory.internal.unsafe.UnsafeUtil;
+import static org.apache.datasketches.memory.internal.Util.negativeCheck;
 
 import java.io.File;
 import java.nio.ByteBuffer;
 import java.nio.ByteOrder;
 import java.util.Objects;
 
-import static org.apache.datasketches.memory.internal.Util.negativeCheck;
+import org.apache.datasketches.memory.internal.BaseWritableMemoryImpl;
+import org.apache.datasketches.memory.internal.unsafe.Prim;
+import org.apache.datasketches.memory.internal.unsafe.UnsafeUtil;
 
 /**
- * 
+ *
  */
 public class DefaultMemoryFactory implements MemoryFactory {
-    
-    public final static MemoryFactory DEFAULT = DefaultMemoryRequestServer.DEFAULT.getFactory();
-    
-    private final MemoryRequestServer memoryRequestServer;
-    
-    public DefaultMemoryFactory(MemoryRequestServer memoryRequestServer) {
-        this.memoryRequestServer = memoryRequestServer;
-    }
-
-    @Override
-    public Memory wrap(ByteBuffer byteBuffer, ByteOrder byteOrder) {
-        Objects.requireNonNull(byteBuffer, "byteBuffer must not be null");
-        Objects.requireNonNull(byteOrder, "byteOrder must not be null");
-        negativeCheck(byteBuffer.capacity(), "byteBuffer");
-        return BaseWritableMemoryImpl.wrapByteBuffer(byteBuffer, true, byteOrder, null);
-    }
-
-    @Override
-    public WritableMemory writableWrap(ByteBuffer byteBuffer, ByteOrder byteOrder, MemoryRequestServer memReqSvr) {
-        Objects.requireNonNull(byteBuffer, "byteBuffer must be non-null");
-        Objects.requireNonNull(byteOrder, "byteOrder must be non-null");
-        negativeCheck(byteBuffer.capacity(), "byteBuffer");
-        if (byteBuffer.isReadOnly()) { throw new IllegalArgumentException("byteBuffer must be writable."); }
-        return BaseWritableMemoryImpl.wrapByteBuffer(byteBuffer, false, byteOrder, memReqSvr);
-      }
-    
-    @Override
-    public MmapHandle map(File file, long fileOffsetBytes, long capacityBytes, ByteOrder byteOrder) {
-        Objects.requireNonNull(file, "file must be non-null.");
-        Objects.requireNonNull(byteOrder, "byteOrder must be non-null.");
-        if (!file.canRead()) { throw new IllegalArgumentException("file must be readable."); }
-        negativeCheck(fileOffsetBytes, "fileOffsetBytes");
-        negativeCheck(capacityBytes, "capacityBytes");
-        return BaseWritableMemoryImpl.wrapMap(file, fileOffsetBytes, capacityBytes, true, byteOrder);
-    }
-
-    @Override
-    public WritableMmapHandle writableMap(File file, long fileOffsetBytes, long capacityBytes, ByteOrder byteOrder) {
-        Objects.requireNonNull(file, "file must be non-null.");
-        Objects.requireNonNull(byteOrder, "byteOrder must be non-null.");
-        if (!file.canWrite()) { throw new IllegalArgumentException("file must be writable."); }
-        negativeCheck(file.length(), "file.length()");
-        negativeCheck(fileOffsetBytes, "fileOffsetBytes");
-        negativeCheck(capacityBytes, "capacityBytes");
-        return BaseWritableMemoryImpl.wrapMap(file, fileOffsetBytes, capacityBytes, false, byteOrder);
-    }
-    
-    @Override
-    public WritableHandle allocateDirect(long capacityBytes, ByteOrder byteOrder, MemoryRequestServer memReqSvr) {
-        Objects.requireNonNull(byteOrder, "byteOrder must be non-null");
-        negativeCheck(capacityBytes, "capacityBytes");
-        return BaseWritableMemoryImpl.wrapDirect(capacityBytes, byteOrder, memReqSvr);
-    }
-    
-    @Override
-    public Memory wrap(byte[] array, int offsetBytes, int lengthBytes, ByteOrder byteOrder) {
-        Objects.requireNonNull(array, "array must be non-null");
-        Objects.requireNonNull(byteOrder, "byteOrder must be non-null");
-        negativeCheck(offsetBytes, "offsetBytes");
-        negativeCheck(lengthBytes, "lengthBytes");
-        UnsafeUtil.checkBounds(offsetBytes, lengthBytes, array.length);
-        return BaseWritableMemoryImpl.wrapHeapArray(array, 0, lengthBytes, true, ByteOrder.nativeOrder(), null);
-    }
-
-    @Override
-    public WritableMemory writableWrap(byte[] array, int offsetBytes, int lengthBytes, ByteOrder byteOrder,
-            MemoryRequestServer memReqSvr) {
-        Objects.requireNonNull(array, "array must be non-null");
-        Objects.requireNonNull(byteOrder, "byteOrder must be non-null");
-        negativeCheck(offsetBytes, "offsetBytes");
-        negativeCheck(lengthBytes, "lengthBytes");
-        UnsafeUtil.checkBounds(offsetBytes, lengthBytes, array.length);
-        return BaseWritableMemoryImpl.wrapHeapArray(array, offsetBytes, lengthBytes, false, byteOrder, memReqSvr);
-      }
-
-    @Override
-    public Memory wrap(boolean[] array) {
-        Objects.requireNonNull(array, "array must be non-null");
-        final long lengthBytes = array.length << Prim.BOOLEAN.shift();
-        return BaseWritableMemoryImpl.wrapHeapArray(array, 0, lengthBytes, true, ByteOrder.nativeOrder(), null);
-    }
-    
-    @Override
-    public WritableMemory writableWrap(boolean[] array) {
-        Objects.requireNonNull(array, "array must be non-null");
-        final long lengthBytes = array.length << Prim.BOOLEAN.shift();
-        return BaseWritableMemoryImpl.wrapHeapArray(array, 0, lengthBytes, false, ByteOrder.nativeOrder(), null);
-    }
-
-    @Override
-    public Memory wrap(char[] array) {
-        Objects.requireNonNull(array, "array must be non-null");
-        final long lengthBytes = array.length << Prim.CHAR.shift();
-        return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, true, ByteOrder.nativeOrder(), null);
-    }
-    
-    @Override
-    public WritableMemory writableWrap(char[] array) {
-        Objects.requireNonNull(array, "array must be non-null");
-        final long lengthBytes = array.length << Prim.CHAR.shift();
-        return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, false, ByteOrder.nativeOrder(), null);
-    }
-
-    @Override
-    public Memory wrap(short[] array) {
-        Objects.requireNonNull(array, "arr must be non-null");
-        final long lengthBytes = array.length << Prim.SHORT.shift();
-        return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, true, ByteOrder.nativeOrder(), null);
-    }
-    
-    @Override
-    public WritableMemory writableWrap(short[] array) {
-        Objects.requireNonNull(array, "arr must be non-null");
-        final long lengthBytes = array.length << Prim.SHORT.shift();
-        return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, false, ByteOrder.nativeOrder(), null);
-    }
-    
-    @Override
-    public Memory wrap(int[] array) {
-        Objects.requireNonNull(array, "arr must be non-null");
-        final long lengthBytes = array.length << Prim.INT.shift();
-        return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, true, ByteOrder.nativeOrder(), null);
-    }
-
-    @Override
-    public WritableMemory writableWrap(int[] array) {
-        Objects.requireNonNull(array, "arr must be non-null");
-        final long lengthBytes = array.length << Prim.INT.shift();
-        return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, false, ByteOrder.nativeOrder(), null);
-    }
-
-    @Override
-    public Memory wrap(long[] array) {
-        Objects.requireNonNull(array, "arr must be non-null");
-        final long lengthBytes = array.length << Prim.LONG.shift();
-        return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, true, ByteOrder.nativeOrder(), null);
-    }
-
-    @Override
-    public WritableMemory writableWrap(long[] array) {
-        Objects.requireNonNull(array, "arr must be non-null");
-        final long lengthBytes = array.length << Prim.LONG.shift();
-        return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, false, ByteOrder.nativeOrder(), null);
-    }
-    
-    @Override
-    public Memory wrap(float[] array) {
-        Objects.requireNonNull(array, "arr must be non-null");
-        final long lengthBytes = array.length << Prim.FLOAT.shift();
-        return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, true, ByteOrder.nativeOrder(), null);
-    }
-    
-    @Override
-    public WritableMemory writableWrap(float[] array) {
-        Objects.requireNonNull(array, "arr must be non-null");
-        final long lengthBytes = array.length << Prim.FLOAT.shift();
-        return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, false, ByteOrder.nativeOrder(), null);
-    }
-
-    @Override
-    public Memory wrap(double[] array) {
-        Objects.requireNonNull(array, "arr must be non-null");
-        final long lengthBytes = array.length << Prim.DOUBLE.shift();
-        return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, true, ByteOrder.nativeOrder(), null);
-    }
-    
-    @Override
-    public WritableMemory writableWrap(double[] array) {
-        Objects.requireNonNull(array, "arr must be non-null");
-        final long lengthBytes = array.length << Prim.DOUBLE.shift();
-        return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, false, ByteOrder.nativeOrder(), null);
-    }
-
-    @Override
-    public MemoryRequestServer getDefaultMemoryRequestServer() {
-        return memoryRequestServer;
-    }
+  public static MemoryRequestServer memReqSvr = new DefaultMemoryRequestServer();
+
+  public static MemoryFactory DEFAULT = new DefaultMemoryFactory(memReqSvr);
+
+  public DefaultMemoryFactory(MemoryRequestServer memoryRequestServer) {
+    Objects.requireNonNull(memoryRequestServer, "Parameter memoryRequestServer must not be null.");
+    memReqSvr = memoryRequestServer;
+    DEFAULT = this;
+  }
+
+  @Override
+  public Memory wrap(ByteBuffer byteBuffer, ByteOrder byteOrder) {
+    Objects.requireNonNull(byteBuffer, "byteBuffer must not be null");
+    Objects.requireNonNull(byteOrder, "byteOrder must not be null");
+    negativeCheck(byteBuffer.capacity(), "byteBuffer");
+    return BaseWritableMemoryImpl.wrapByteBuffer(byteBuffer, true, byteOrder, null);
+  }
+
+  @Override
+  public WritableMemory writableWrap(ByteBuffer byteBuffer, ByteOrder byteOrder, MemoryRequestServer memReqSvr) {
+    Objects.requireNonNull(byteBuffer, "byteBuffer must be non-null");
+    Objects.requireNonNull(byteOrder, "byteOrder must be non-null");
+    negativeCheck(byteBuffer.capacity(), "byteBuffer");
+    if (byteBuffer.isReadOnly()) {
+      throw new IllegalArgumentException("byteBuffer must be writable.");
+    }
+    return BaseWritableMemoryImpl.wrapByteBuffer(byteBuffer, false, byteOrder, memReqSvr);
+  }
+
+  @Override
+  public MmapHandle map(File file, long fileOffsetBytes, long capacityBytes, ByteOrder byteOrder) {
+    Objects.requireNonNull(file, "file must be non-null.");
+    Objects.requireNonNull(byteOrder, "byteOrder must be non-null.");
+    if (!file.canRead()) {
+      throw new IllegalArgumentException("file must be readable.");
+    }
+    negativeCheck(fileOffsetBytes, "fileOffsetBytes");
+    negativeCheck(capacityBytes, "capacityBytes");
+    return BaseWritableMemoryImpl.wrapMap(file, fileOffsetBytes, capacityBytes, true, byteOrder);
+  }
+
+  @Override
+  public WritableMmapHandle writableMap(File file, long fileOffsetBytes, long capacityBytes, ByteOrder byteOrder) {
+    Objects.requireNonNull(file, "file must be non-null.");
+    Objects.requireNonNull(byteOrder, "byteOrder must be non-null.");
+    if (!file.canWrite()) {
+      throw new IllegalArgumentException("file must be writable.");
+    }
+    negativeCheck(file.length(), "file.length()");
+    negativeCheck(fileOffsetBytes, "fileOffsetBytes");
+    negativeCheck(capacityBytes, "capacityBytes");
+    return BaseWritableMemoryImpl.wrapMap(file, fileOffsetBytes, capacityBytes, false, byteOrder);
+  }
+
+  @Override
+  public WritableHandle allocateDirect(long capacityBytes, ByteOrder byteOrder, MemoryRequestServer memReqSvr) {
+    Objects.requireNonNull(byteOrder, "byteOrder must be non-null");
+    negativeCheck(capacityBytes, "capacityBytes");
+    return BaseWritableMemoryImpl.wrapDirect(capacityBytes, byteOrder, memReqSvr);
+  }
+
+  @Override
+  public Memory wrap(byte[] array, int offsetBytes, int lengthBytes, ByteOrder byteOrder) {
+    Objects.requireNonNull(array, "array must be non-null");
+    Objects.requireNonNull(byteOrder, "byteOrder must be non-null");
+    negativeCheck(offsetBytes, "offsetBytes");
+    negativeCheck(lengthBytes, "lengthBytes");
+    UnsafeUtil.checkBounds(offsetBytes, lengthBytes, array.length);
+    return BaseWritableMemoryImpl.wrapHeapArray(array, 0, lengthBytes, true, ByteOrder.nativeOrder(), null);
+  }
+
+  @Override
+  public WritableMemory writableWrap(byte[] array, int offsetBytes, int lengthBytes, ByteOrder byteOrder,
+      MemoryRequestServer memReqSvr) {
+    Objects.requireNonNull(array, "array must be non-null");
+    Objects.requireNonNull(byteOrder, "byteOrder must be non-null");
+    negativeCheck(offsetBytes, "offsetBytes");
+    negativeCheck(lengthBytes, "lengthBytes");
+    UnsafeUtil.checkBounds(offsetBytes, lengthBytes, array.length);
+    return BaseWritableMemoryImpl.wrapHeapArray(array, offsetBytes, lengthBytes, false, byteOrder, memReqSvr);
+  }
+
+  @Override
+  public Memory wrap(boolean[] array) {
+    Objects.requireNonNull(array, "array must be non-null");
+    final long lengthBytes = array.length << Prim.BOOLEAN.shift();
+    return BaseWritableMemoryImpl.wrapHeapArray(array, 0, lengthBytes, true, ByteOrder.nativeOrder(), null);
+  }
+
+  @Override
+  public WritableMemory writableWrap(boolean[] array) {
+    Objects.requireNonNull(array, "array must be non-null");
+    final long lengthBytes = array.length << Prim.BOOLEAN.shift();
+    return BaseWritableMemoryImpl.wrapHeapArray(array, 0, lengthBytes, false, ByteOrder.nativeOrder(), null);
+  }
+
+  @Override
+  public Memory wrap(char[] array) {
+    Objects.requireNonNull(array, "array must be non-null");
+    final long lengthBytes = array.length << Prim.CHAR.shift();
+    return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, true, ByteOrder.nativeOrder(), null);
+  }
+
+  @Override
+  public WritableMemory writableWrap(char[] array) {
+    Objects.requireNonNull(array, "array must be non-null");
+    final long lengthBytes = array.length << Prim.CHAR.shift();
+    return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, false, ByteOrder.nativeOrder(), null);
+  }
+
+  @Override
+  public Memory wrap(short[] array) {
+    Objects.requireNonNull(array, "arr must be non-null");
+    final long lengthBytes = array.length << Prim.SHORT.shift();
+    return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, true, ByteOrder.nativeOrder(), null);
+  }
+
+  @Override
+  public WritableMemory writableWrap(short[] array) {
+    Objects.requireNonNull(array, "arr must be non-null");
+    final long lengthBytes = array.length << Prim.SHORT.shift();
+    return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, false, ByteOrder.nativeOrder(), null);
+  }
+
+  @Override
+  public Memory wrap(int[] array) {
+    Objects.requireNonNull(array, "arr must be non-null");
+    final long lengthBytes = array.length << Prim.INT.shift();
+    return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, true, ByteOrder.nativeOrder(), null);
+  }
+
+  @Override
+  public WritableMemory writableWrap(int[] array) {
+    Objects.requireNonNull(array, "arr must be non-null");
+    final long lengthBytes = array.length << Prim.INT.shift();
+    return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, false, ByteOrder.nativeOrder(), null);
+  }
+
+  @Override
+  public Memory wrap(long[] array) {
+    Objects.requireNonNull(array, "arr must be non-null");
+    final long lengthBytes = array.length << Prim.LONG.shift();
+    return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, true, ByteOrder.nativeOrder(), null);
+  }
+
+  @Override
+  public WritableMemory writableWrap(long[] array) {
+    Objects.requireNonNull(array, "arr must be non-null");
+    final long lengthBytes = array.length << Prim.LONG.shift();
+    return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, false, ByteOrder.nativeOrder(), null);
+  }
+
+  @Override
+  public Memory wrap(float[] array) {
+    Objects.requireNonNull(array, "arr must be non-null");
+    final long lengthBytes = array.length << Prim.FLOAT.shift();
+    return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, true, ByteOrder.nativeOrder(), null);
+  }
+
+  @Override
+  public WritableMemory writableWrap(float[] array) {
+    Objects.requireNonNull(array, "arr must be non-null");
+    final long lengthBytes = array.length << Prim.FLOAT.shift();
+    return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, false, ByteOrder.nativeOrder(), null);
+  }
+
+  @Override
+  public Memory wrap(double[] array) {
+    Objects.requireNonNull(array, "arr must be non-null");
+    final long lengthBytes = array.length << Prim.DOUBLE.shift();
+    return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, true, ByteOrder.nativeOrder(), null);
+  }
+
+  @Override
+  public WritableMemory writableWrap(double[] array) {
+    Objects.requireNonNull(array, "arr must be non-null");
+    final long lengthBytes = array.length << Prim.DOUBLE.shift();
+    return BaseWritableMemoryImpl.wrapHeapArray(array, 0L, lengthBytes, false, ByteOrder.nativeOrder(), null);
+  }
+
+  @Override
+  public MemoryRequestServer getMemoryRequestServer() {
+    return memReqSvr;
+  }
 
 }
diff --git a/src/main/java/org/apache/datasketches/memory/DefaultMemoryRequestServer.java b/src/main/java/org/apache/datasketches/memory/DefaultMemoryRequestServer.java
index 1393d7c..6035a68 100644
--- a/src/main/java/org/apache/datasketches/memory/DefaultMemoryRequestServer.java
+++ b/src/main/java/org/apache/datasketches/memory/DefaultMemoryRequestServer.java
@@ -65,9 +65,9 @@ package org.apache.datasketches.memory;
  * @author Lee Rhodes
  */
 public final class DefaultMemoryRequestServer implements MemoryRequestServer {
-    
+
   public static final DefaultMemoryRequestServer DEFAULT = new DefaultMemoryRequestServer();
-    
+
   private MemoryFactory factory = new DefaultMemoryFactory(this);
 
   /**
@@ -92,15 +92,15 @@ public final class DefaultMemoryRequestServer implements MemoryRequestServer {
   public void requestClose(final WritableMemory memToRelease, final WritableMemory newMemory) {
     //do nothing
   }
-  
-  /**
-   * Get the associated {@link MemoryFactory}. This has package level access so that the default
-   * {@link DefaultMemoryFactory} can correctly initialize itself with a cross reference to this.
-   * 
-   * @return The current {@link MemoryFactory}
-   */
-  MemoryFactory getFactory() {
-    return factory;
-  }
+
+//  /**
+//   * Get the associated {@link MemoryFactory}. This has package level access so that the default
+//   * {@link DefaultMemoryFactory} can correctly initialize itself with a cross reference to this.
+//   *
+//   * @return The current {@link MemoryFactory}
+//   */
+//  MemoryFactory getFactory() {
+//    return factory;
+//  }
 
 }
diff --git a/src/main/java/org/apache/datasketches/memory/MemoryFactory.java b/src/main/java/org/apache/datasketches/memory/MemoryFactory.java
index f00f1a5..20491f0 100644
--- a/src/main/java/org/apache/datasketches/memory/MemoryFactory.java
+++ b/src/main/java/org/apache/datasketches/memory/MemoryFactory.java
@@ -30,7 +30,7 @@ import java.util.Objects;
  */
 public interface MemoryFactory {
     
-    MemoryRequestServer getDefaultMemoryRequestServer();
+    MemoryRequestServer getMemoryRequestServer();
     
     //BYTE BUFFER
 
@@ -72,7 +72,7 @@ public interface MemoryFactory {
      * @return a new <i>WritableMemory</i> for write operations on the given <i>ByteBuffer</i>.
      */
     default WritableMemory writableWrap(ByteBuffer byteBuffer, ByteOrder byteOrder) {
-        return writableWrap(byteBuffer, byteOrder, getDefaultMemoryRequestServer());
+        return writableWrap(byteBuffer, byteOrder, getMemoryRequestServer());
     }
     
     /**
@@ -154,7 +154,7 @@ public interface MemoryFactory {
       * @return a new WritableMemory for write operations on a new byte array.
       */
      default WritableMemory allocate(int capacityBytes, ByteOrder byteOrder) {
-       return allocate(capacityBytes, byteOrder, getDefaultMemoryRequestServer());
+       return allocate(capacityBytes, byteOrder, getMemoryRequestServer());
      }
 
      /**
@@ -186,7 +186,7 @@ public interface MemoryFactory {
       * Please read Javadocs for {@link Handle}.
       */
      default WritableHandle allocateDirect(long capacityBytes) {
-       return allocateDirect(capacityBytes, ByteOrder.nativeOrder(), getDefaultMemoryRequestServer());
+       return allocateDirect(capacityBytes, ByteOrder.nativeOrder(), getMemoryRequestServer());
      }
 
      /**
@@ -249,7 +249,7 @@ public interface MemoryFactory {
      * @return a new WritableMemory for write operations on the given primitive array.
      */
     default WritableMemory writableWrap(byte[] array, ByteOrder byteOrder) {
-      return writableWrap(array, 0, array.length, byteOrder, getDefaultMemoryRequestServer());
+      return writableWrap(array, 0, array.length, byteOrder, getMemoryRequestServer());
     }
 
     /**
@@ -274,7 +274,7 @@ public interface MemoryFactory {
      * @return a new WritableMemory for write operations on the given primitive array.
      */
     default WritableMemory writableWrap(byte[] array, int offsetBytes, int lengthBytes, ByteOrder byteOrder) {
-      return writableWrap(array, offsetBytes, lengthBytes, byteOrder, getDefaultMemoryRequestServer());
+      return writableWrap(array, offsetBytes, lengthBytes, byteOrder, getMemoryRequestServer());
     }
 
     /**
diff --git a/src/test/java/org/apache/datasketches/memory/internal/MemoryTest.java b/src/test/java/org/apache/datasketches/memory/internal/MemoryTest.java
index 6128e36..0bc4816 100644
--- a/src/test/java/org/apache/datasketches/memory/internal/MemoryTest.java
+++ b/src/test/java/org/apache/datasketches/memory/internal/MemoryTest.java
@@ -35,10 +35,10 @@ import java.nio.ByteBuffer;
 import java.nio.ByteOrder;
 import java.util.List;
 
-import org.apache.datasketches.memory.MmapHandle;
 import org.apache.datasketches.memory.DefaultMemoryFactory;
 import org.apache.datasketches.memory.DefaultMemoryRequestServer;
 import org.apache.datasketches.memory.Memory;
+import org.apache.datasketches.memory.MmapHandle;
 import org.apache.datasketches.memory.WritableBuffer;
 import org.apache.datasketches.memory.WritableHandle;
 import org.apache.datasketches.memory.WritableMemory;


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datasketches.apache.org
For additional commands, e-mail: commits-help@datasketches.apache.org