# BaseDataClient
Base client of data.

## Properties

### `ServerState`
[`EnumValue`](../enumerations/EnumValue.md)<br/>
State of server in this client, all values from [`ServerState`](../enumerations/ServerState.md).
This property is **readonly**.

### `OnServerStateChanged`
`Observer<`[`ServerState`](../enumerations/ServerState.md)`>`<br/>
Triggers when client connection state was changed.

### `OnAuthenticationSuccessResponse`
`Observer<`[`AuthenticationSuccessResponse`](../messages/authentication/AuthenticationSuccessResponse.md)`>`<br/>
Triggers when authentication was successful for current client.

### `OnAuthenticationFailedResponse`
`Observer<`[`AuthenticationFailedResponse`](../messages/authentication/AuthenticationFailedResponse.md)`>`<br/>
Triggers when authentication was failed for current client.

### `OnRequestResult`
`Observer<`[`RequestResult`](../messages/requestAndResults/RequestResult.md)`>`<br/>
Notify that message of type [`RequestResult`](../messages/requestAndResults/RequestResult.md) was received.

### `OnClientException`
`Observer<Error>`<br/>
Triggers when exception was thrown during receive or send action.

## Methods

### `Connect(url: String)`
Connects current client to server with full URL.

### `Disconnect()`
Disconnects current client from server.

### `UpdateUserCredentials(userCredentials: UserCredentials)`
Updates user credentials for current data client, type of parameter is [`UserCredentials`](../messages/user/UserCredentials.md).
