| IGLib 1.5 The IGLib base library for development of numerical, technical and business applications.

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events
Public Member Functions | Protected Member Functions | Properties | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
IG.Lib.Copy.NamedPipeClientBase Class Reference

Client to the pipe server (classes derived from ClientServerStreamBase2). More...

Inheritance diagram for IG.Lib.Copy.NamedPipeClientBase:
[legend]
Collaboration diagram for IG.Lib.Copy.NamedPipeClientBase:
[legend]

## Public Member Functions
| NamedPipeClientBase (string pipeName)
| Constructs a new named pipe client with the specified pipe name, default server address (DefaultServerAddress) and default values for other paramters. More...
| NamedPipeClientBase (string pipeName, string serverAddress)
| Constructs a new named pipe client with the specified pipe name, server address (DefaultServerAddress) and default values for other paramters. More...
| NamedPipeClientBase (string pipeName, string serverAddress, string requestEnd, string responseEnd, string errorBegin)
| Constructs a new named pipe client with the specified pipe name, server address (DefaultServerAddress) and other paramters. More...
override void | ClosePipe ()
| Closes the Server's pipe and the associated streams. More...
override void | Connect (double timeOutSeconds=0)
| Connects with the server. More...
override string | ToString ()
| Returns a stirng containing the server data. More...
Public Member Functions inherited from IG.Lib.Copy.ClientStreamBase
override void | CloseInput ()
| Closes the inpt stream. More...
override void | CloseOutput ()
| Closes the outut stream. More...
string | GetServerResponse (string requestString)
| Sends a request to the server and returns its response. More...
override void | ClearData ()
| Clears all the data related to servig requests (i.e. request and response strings, error flags, exceptions, etc.). More...
Public Member Functions inherited from IG.Lib.Copy.ClientServerStreamBase2
virtual bool | IsErrorResponse (string responseString)
| Returns true if the specified response string represents an error response (exception), false if not. More...
virtual string | GetErrorMessage (string responseString)
| Returns error message that corresponds to the specified response string. More...
Public Member Functions inherited from IG.Lib.Copy.ClienServerStreamBase
delegate string | ResponseDelegate (string request)
| Provides an answer string to the specified request string. More...
void | SetMessagePreix (string messagePrefix)
| Changes message prefix for the current object. More...
void | SetMessageSeparator (char messageSeparator)
| Changes message separator for the current object. More...
void | SetMessageFalseSeparator (char messageFalseSeparator)
| Changes message false separator for the current object. More...
string | CreateMessage (string messageName, string[] messageArguments)
| Creates a built-in message (possibly with arguments) that is to be interpreted directly by the receiver (stream client or server) and is not executed via ordinary path. More...
string | createResponseOrRequestString (string originalResponseOrRequestString)
| Generates request and response string in such a way that it can not be mixed up with a message. More...
void | GetRequestOrResponse (ref string responseOrRequestString, out bool isMessage, out string messageOrCommandName, out string[] messageArguments)
| Returns the (eventually decoded) request or response string corresponding to the stirng that is read form the communication pipeline, and also parameters that specify whether the request string represents a message or not. Eventual command or message parameters are also returned. More...

## Protected Member Functions
virtual void | Connect (NamedPipeClientStream pipe, double timeOutSeconds=0)
| Connects the specified pype with the server. More...
Protected Member Functions inherited from IG.Lib.Copy.ClientStreamBase
virtual string | GetErrorMessage (Exception ex)
| Returns error message corresponding to the specified exception. More...
virtual void | SendRequest (string requestString)
| Send specified request to server through a named pipe. More...
virtual void | SentRequest ()
| Sends the current request string (the RequestString property) to the server through a named pipe. More...
virtual string | ReadResponse ()
| Reads response from the server and stores it. More...

## Properties
override string | Name`[get, set]`
| Client name. The same as pipe name. More...
string | PipeName`[get, set]`
static string | DefaultServerAddress`[get, set]`
| Default server address. Setting to null sets it to "." (i.e. the local machine). More...
string | ServerAddress`[get, set]`
| Server address. More...
NamedPipeClientStream | ClientPipe`[get, protected set]`
| Named pipe used for communication by the server. More...
override StreamReader | InputStream`[get, protected set]`
| Input stream of the server's named pipe. More...
override StreamWriter | OutputStream`[get, protected set]`
| Output stream of the server's named pipe. More...
Properties inherited from IG.Lib.Copy.ClientStreamBase
bool | IsResponseReceived`[get, protected set]`
| Auxiliary flag telling whether response to a request has already been received from the server. Used for synchronization of diffeeent parts of the request sending process, which enables e.g special handling of Exceptions. More...
Properties inherited from IG.Lib.Copy.ClientServerStreamBase2
abstract string | Name`[get, set]`
static string | DefaultPipeName`[get, set]`
| Default pipe name. More...
static bool | DefaultIsMultilineRequest`[get]`
| Default pipe name. More...
static string | DefaultRequestEnd`[get]`
| Default string (line) that ends any multiline request. More...
static bool | DefaultIsMultilineResponse`[get]`
| Default pipe name. More...
static string | DefaultResponseEnd`[get]`
| Default string (line) that ends any multiline response. More...
virtual bool | IsMultilineRequest`[get, protected set]`
| Whether or not multi line requests are allowed. More...
string | RequestEnd`[get, protected set]`
virtual bool | IsMultilineResponse`[get, protected set]`
| Whether or not multi line responses are allowed. More...
string | ResponseEnd`[get, protected set]`
static string | DefaultErrorBegin`[get]`
| Default string that begins an error report. More...
string | ErrorBegin`[get, protected set]`
abstract StreamReader | InputStream`[get, protected set]`
| Input stream writer of the server's named pipe. More...
abstract StreamWriter | OutputStream`[get, protected set]`
| Output stream reader of the server's named pipe. More...
bool | IsError`[get, protected set]`
string | RequestString`[get, protected set]`
| The last request string that was read from the pipe. More...
string | ResponseString`[get, protected set]`
| The last answer string that was written to the pipe. More...
static string | DefaultStopRequest`[get, set]`
| Default stop request string - request string that will stop the server. More...
string | StopRequest`[get, set]`
| Request that causes the server stop listening and closing the pipe. More...
static string | DefaultGenericResponse`[get, set]`
| Default generic response (sent in absence of any other method to generate the response). More...
string | GenericResponse`[get, protected set]`
| Generic response that is sent back to the client in abscence of any method generating responses to specific requests. More...
static string | DefaultStoppedResponse`[get, set]`
| Default stopped response (sent after the srver has sttopped on request). More...
string | StoppedResponse`[get, protected set]`
| Stopped response that is sent back to the client after the server stops on its request. More...
Exception | LastException`[get, protected set]`
| Returns the last exception thrown when serving request. More...
string | LastErrorMessage`[get, protected set]`
| Returns the last error message. More...
string | LastRequestString`[get, protected set]`
| Returns the last request string. More...
string | LastResponseString`[get, protected set]`
| Returns the last response string. More...
Properties inherited from IG.Lib.Copy.ClienServerStreamBase
object | Lock`[get]`
| Objectt for locking the current object. More...
static object | LockGlobal`[get]`
| Static lock object used by all instances of this class (and possibly by other classes). More...
static string | DefaultMessagePrefix`[get, set]`
static char | DefaultMessageSeparator`[get, set]`
static char | DefaultMessageFalseSeparator`[get, set]`
string | MessagePrefix`[get, protected set]`
char | MessageSeparator`[get, protected set]`
char | MessageFalseSeparator`[get, protected set]`
string | MessagePrefixWithSeparator`[get, protected set]`
| Gets the mesage prefix with separator. If some string is a message, everything that follows this string until the first separator is a message name. More...
StringBuilder | StringBuilderInternal`[get]`
static int | DefaultOutputLevel`[get, set]`
| Default level of output for this kind of class. More...
virtual int | OutputLevel`[get, set]`
| Level of output generated by operatins. More...
Properties inherited from IG.Lib.ILockable
object | Lock`[get]`

## Private Member Functions
| NamedPipeClientBase ()

## Private Attributes
string | _pipeName = DefaultPipeName
string | _serverAddress = DefaultServerAddress
NamedPipeClientStream | _clientPipe = null
StreamReader | _inputStream = null
StreamWriter | _outputStream = null

## Static Private Attributes
static string | _defaultServerAddress = "."

## Additional Inherited Members
Public Attributes inherited from IG.Lib.Copy.ClienServerStreamBase
const int | MinimalMessagePreffixLength = 3
Protected Attributes inherited from IG.Lib.Copy.ClienServerStreamBase
object | _lock = new object()

## Detailed Description

Client to the pipe server (classes derived from ClientServerStreamBase2).

$A Igor xx Mar14;

## Constructor & Destructor Documentation

IG.Lib.Copy.NamedPipeClientBase.NamedPipeClientBase | ( |  | ) |
| inline private

IG.Lib.Copy.NamedPipeClientBase.NamedPipeClientBase | ( | string | pipeName | ) |
| inline

Constructs a new named pipe client with the specified pipe name, default server address (DefaultServerAddress) and default values for other paramters.

Parameters

  pipeName | Name of the pipe. Must not be null or empty string.

IG.Lib.Copy.NamedPipeClientBase.NamedPipeClientBase | ( | string | pipeName,
|  | string | serverAddress
| ) |  |
| inline

Constructs a new named pipe client with the specified pipe name, server address (DefaultServerAddress) and default values for other paramters.

Parameters

  pipeName | Name of the pipe. Must not be null or empty string.
  serverAddress | Address of the server where named pipe server is run. If null or empty string then the default server address is uesd (DefaultServerAddress), referring to the current computer.

IG.Lib.Copy.NamedPipeClientBase.NamedPipeClientBase | ( | string | pipeName,
|  | string | serverAddress,
|  | string | requestEnd,
|  | string | responseEnd,
|  | string | errorBegin
| ) |  |
| inline

Constructs a new named pipe client with the specified pipe name, server address (DefaultServerAddress) and other paramters.

Parameters

  pipeName | Name of the pipe.
  serverAddress | Address of the server where named pipe server is run. If null or empty string then the default server address is uesd (DefaultServerAddress), referring to the current computer.
  requestEnd | Line that ends each request. If null or empty string then the requests are single line.
  responseEnd | Line that ends each response. If null or empty string then the responses are single line.
  errorBegin | String that begins an error response. If null or empty string then default string remains in use, i.e. DefaultErrorBegin

## Member Function Documentation

override void IG.Lib.Copy.NamedPipeClientBase.ClosePipe | ( |  | ) |
| inline virtual

Closes the Server's pipe and the associated streams.

Implements IG.Lib.Copy.ClientServerStreamBase2.

override void IG.Lib.Copy.NamedPipeClientBase.Connect | ( | double | timeOutSeconds = `0` | ) |
| inline virtual

Connects with the server.

If timeout is not specifies then it tries to connect indefinitely.

Parameters

  timeOutSeconds | Timeout in secconds for establishig connection.

Implements IG.Lib.Copy.ClientStreamBase.

virtual void IG.Lib.Copy.NamedPipeClientBase.Connect | ( | NamedPipeClientStream | pipe,
|  | double | timeOutSeconds = `0`
| ) |  |
| inline protected virtual

Connects the specified pype with the server.

If timeout is not specifies then it tries to connect indefinitely.

Parameters

  pipe | Pipe through which connection with the serverr is achieved.
  timeOutSeconds | Timeout in secconds for establishig connection.

override string IG.Lib.Copy.NamedPipeClientBase.ToString | ( |  | ) |
| inline

Returns a stirng containing the server data.

## Member Data Documentation

string IG.Lib.Copy.NamedPipeClientBase._pipeName = DefaultPipeName
| private

string IG.Lib.Copy.NamedPipeClientBase._defaultServerAddress = "."
| static private

string IG.Lib.Copy.NamedPipeClientBase._serverAddress = DefaultServerAddress
| private

NamedPipeClientStream IG.Lib.Copy.NamedPipeClientBase._clientPipe = null
| private

StreamReader IG.Lib.Copy.NamedPipeClientBase._inputStream = null
| private

StreamWriter IG.Lib.Copy.NamedPipeClientBase._outputStream = null
| private

## Property Documentation

override string IG.Lib.Copy.NamedPipeClientBase.Name
| get set

Client name. The same as pipe name.

string IG.Lib.Copy.NamedPipeClientBase.PipeName
| get set

string IG.Lib.Copy.NamedPipeClientBase.DefaultServerAddress
| static get set

Default server address. Setting to null sets it to "." (i.e. the local machine).

string IG.Lib.Copy.NamedPipeClientBase.ServerAddress
| get set

Server address.

Setting it to null sets it to DefaultServerAddress.

NamedPipeClientStream IG.Lib.Copy.NamedPipeClientBase.ClientPipe
| get protected set

Named pipe used for communication by the server.

override StreamReader IG.Lib.Copy.NamedPipeClientBase.InputStream
| get protected set

Input stream of the server's named pipe.

override StreamWriter IG.Lib.Copy.NamedPipeClientBase.OutputStream
| get protected set

Output stream of the server's named pipe.

The documentation for this class was generated from the following file:

- igbase/data/streams/streams_copy/NamedPipes_Copy.cs