1) For NIO, the write executor is in NIOSequentialFile, but for AIO it is in the AsynchronousFileImpl.
If the functionality is the same now, shouldn't this be in a common superclass
2) When creating an AIOSequentialFile the constructor specifies a directory and a file name, but for the NIOSequentialFile only the file name is required.
This is confusing and inconsistent.
1) It has to be different. On AIO I need to release the semaphore out of the native callback. That needs to be done on the callbackDone or callbackError at AsynchronousfileImpl
2) I will take a look