class UnixDomainSocket implements IOFacade {

    @Override
    public String read() throws IOException {
        CharBuffer response = CharBuffer.allocate(bufferSize);
        String result = "";

        do {
            response.clear();
            reader.read(response);
            result += new String(response.array(), response.arrayOffset(), response.position());
        } while (response.get(response.position() - 1) != '\n');

        return result;
    }

    public  UnixDomainSocket(String ipcSocketPath);
    public  UnixDomainSocket(String ipcSocketPath, int bufferSize);
      UnixDomainSocket(InputStreamReader reader, PrintWriter writer, int bufferSize);

}