public void seek(long pos) throws IOException {
        if (input instanceof RandomAccessFile) {
            ((RandomAccessFile) input).seek(pos);
        } else if (input instanceof DataInputStream) {
            throw new UnsupportedOperationException("Can not seek on Hollow Blob Input of type DataInputStream");
        } else {
            throw new UnsupportedOperationException("Unknown Hollow Blob Input type");
        }
    }
@Test
    public void testSeek() throws IOException {
        try (HollowBlobInput inStream = HollowBlobInput.modeBasedSelector(MemoryMode.ON_HEAP, mockBlob)) {
            inStream.seek(3);
            fail();
        } catch (UnsupportedOperationException e) {
            // pass
        } catch (Exception e) {
            fail();
        }

        HollowBlobInput inBuffer = HollowBlobInput.modeBasedSelector(MemoryMode.SHARED_MEMORY_LAZY, mockBlob);
        inBuffer.seek(3);
        assertEquals(3, inBuffer.getFilePointer()); // first byte is 0
    }