C# Class MongoDB.Driver.Internal.MultipleInstanceMongoServerProxy

Base class for proxies that maintain multiple server instances.
Inheritance: IMongoServerProxy
Afficher le fichier Open project: CloudMetal/mongo-csharp-driver

Méthodes publiques

Méthode Description
ChooseServerInstance ( ReadPreference readPreference ) : MongoServerInstance

Chooses the server instance.

Connect ( System.TimeSpan timeout, ReadPreference readPreference ) : void

Connects to the instances respecting the timeout and readPreference.

Disconnect ( ) : void

Disconnects the server.

Ping ( ) : void

Checks whether the server is alive (throws an exception if not).

VerifyState ( ) : void

Verifies the state of the server.

Méthodes protégées

Méthode Description
ChooseServerInstance ( ConnectedInstanceCollection connectedInstances, ReadPreference readPreference ) : MongoServerInstance

Chooses the server instance.

DetermineServerState ( MongoServerState currentState, IEnumerable instances ) : MongoServerState

Determines the state of the server.

EnsureInstanceWithAddress ( MongoServerAddress address ) : void

Ensures that an instance with the address exists.

IsValidInstance ( MongoServerInstance instance ) : bool

Determines whether the instance is a valid. If not, the instance is removed.

MakeInstancesMatchAddresses ( IEnumerable addresses ) : void

Ensures that the current instance list has all the addresses provided and does not contain any not provided.

MultipleInstanceMongoServerProxy ( MongoServerSettings settings ) : System

Initializes a new instance of the MultipleInstanceMongoServerProxy class.

MultipleInstanceMongoServerProxy ( MongoServerSettings settings, IEnumerable instances, BlockingQueue connectionQueue, int connectionAttempt ) : System

Initializes a new instance of the MultipleInstanceMongoServerProxy class.

This constructor is used when the instances have already been instructed to connect.

ProcessConnectedInstanceStateChange ( MongoServerInstance instance ) : void

Processes the connected instance state change.

Private Methods

Méthode Description
AddInstance ( MongoServerInstance instance ) : void
ConnectInstance ( MongoServerInstance instance ) : void
InstanceStateChanged ( object sender, EventArgs e ) : void
ProcessInstanceStateChange ( MongoServerInstance instance ) : void
RemoveInstance ( MongoServerInstance instance ) : void
ThrowConnectionException ( ReadPreference readPreference ) : void

Method Details

ChooseServerInstance() protected abstract méthode

Chooses the server instance.
protected abstract ChooseServerInstance ( ConnectedInstanceCollection connectedInstances, ReadPreference readPreference ) : MongoServerInstance
connectedInstances ConnectedInstanceCollection The connected instances.
readPreference ReadPreference The read preference.
Résultat MongoServerInstance

ChooseServerInstance() public méthode

Chooses the server instance.
public ChooseServerInstance ( ReadPreference readPreference ) : MongoServerInstance
readPreference ReadPreference The read preference.
Résultat MongoServerInstance

Connect() public méthode

Connects to the instances respecting the timeout and readPreference.
public Connect ( System.TimeSpan timeout, ReadPreference readPreference ) : void
timeout System.TimeSpan The timeout.
readPreference ReadPreference The read preference.
Résultat void

DetermineServerState() protected abstract méthode

Determines the state of the server.
protected abstract DetermineServerState ( MongoServerState currentState, IEnumerable instances ) : MongoServerState
currentState MongoServerState State of the current.
instances IEnumerable The instances.
Résultat MongoServerState

Disconnect() public méthode

Disconnects the server.
public Disconnect ( ) : void
Résultat void

EnsureInstanceWithAddress() protected méthode

Ensures that an instance with the address exists.
protected EnsureInstanceWithAddress ( MongoServerAddress address ) : void
address MongoServerAddress The address.
Résultat void

IsValidInstance() protected abstract méthode

Determines whether the instance is a valid. If not, the instance is removed.
protected abstract IsValidInstance ( MongoServerInstance instance ) : bool
instance MongoServerInstance The instance.
Résultat bool

MakeInstancesMatchAddresses() protected méthode

Ensures that the current instance list has all the addresses provided and does not contain any not provided.
protected MakeInstancesMatchAddresses ( IEnumerable addresses ) : void
addresses IEnumerable The addresses.
Résultat void

MultipleInstanceMongoServerProxy() protected méthode

Initializes a new instance of the MultipleInstanceMongoServerProxy class.
protected MultipleInstanceMongoServerProxy ( MongoServerSettings settings ) : System
settings MongoServerSettings The settings.
Résultat System

MultipleInstanceMongoServerProxy() protected méthode

Initializes a new instance of the MultipleInstanceMongoServerProxy class.
This constructor is used when the instances have already been instructed to connect.
protected MultipleInstanceMongoServerProxy ( MongoServerSettings settings, IEnumerable instances, BlockingQueue connectionQueue, int connectionAttempt ) : System
settings MongoServerSettings The settings.
instances IEnumerable The instances.
connectionQueue BlockingQueue The state change queue.
connectionAttempt int The connection attempt.
Résultat System

Ping() public méthode

Checks whether the server is alive (throws an exception if not).
public Ping ( ) : void
Résultat void

ProcessConnectedInstanceStateChange() protected méthode

Processes the connected instance state change.
protected ProcessConnectedInstanceStateChange ( MongoServerInstance instance ) : void
instance MongoServerInstance The instance.
Résultat void

VerifyState() public méthode

Verifies the state of the server.
public VerifyState ( ) : void
Résultat void