public TextRandomAccessNetworkFileSystemStream(TextNetworkFileSystemClient client, FileAccess fileAccess, FileShare fileShare, bool canSeek, long length)
            {
                this.client     = client;
                this.canSeek    = canSeek;
                this.fileShare  = fileShare;
                this.fileAccess = fileAccess;
                this.length     = length;

                this.writeResponsesQueue = new InvocationQueue();
            }
            internal CommandContext(TextNetworkFileSystemClient client, bool readReady, bool aquire)
            {
                this.client    = client;
                this.readReady = readReady;

                if (aquire)
                {
                    Aquire();
                }
            }
			public TextRandomAccessNetworkFileSystemStream(TextNetworkFileSystemClient client, FileAccess fileAccess, FileShare fileShare, bool canSeek, long length)
			{
				this.client = client;
				this.canSeek = canSeek;
				this.fileShare = fileShare;
				this.fileAccess = fileAccess;
				this.length = length;

				this.writeResponsesQueue = new InvocationQueue();
			}
			internal DeterministicBinaryReadContext(TextNetworkFileSystemClient client)
			{
				this.acquired = false;
				this.client = client;
			}
			internal CommandContext(TextNetworkFileSystemClient client, bool readReady, bool aquire)
			{
				this.client = client;
				this.readReady = readReady;

				if (aquire)
				{
					Aquire();
				}
			}
 internal DeterministicBinaryReadContext(TextNetworkFileSystemClient client)
 {
     this.acquired = false;
     this.client   = client;
 }