private static void StoreInDictionnary(PaireReaderConnection myPaire) { //Dans tous les cas, on ajoute la nouvelle paire myDico.Add(myPaire.Reader.GetHashCode()+1, myPaire); }
private static PaireReaderConnection SelectAPair() { //Si il y a dans le dictionnaire un connection associé à l'index null, //alors cette paire reader // connexion est libre. PaireReaderConnection maPaire; if (myDico.ContainsKey(0)) { maPaire = myDico[0]; myDico.Remove(0); } else { maPaire = new PaireReaderConnection(null, GetNewOpenSQLConnection()); } return maPaire; }
//Initialisation du Connecteur SQL Serveur : on remplit le dico d'une connection associée à aucun Reader. public static void InitConnector() { PaireReaderConnection maPaire = new PaireReaderConnection(null, GetNewOpenSQLConnection()); myDico.Add(0, maPaire); }
private static void RemoveFromDictionnary(SqlDataReader ReaderRef) { if (myDico.ContainsKey(ReaderRef.GetHashCode() + 1)) { if (myDico.Count > 1) { myDico[ReaderRef.GetHashCode() + 1].Connection.Close(); myDico[ReaderRef.GetHashCode() + 1].Connection.Dispose(); myDico.Remove(ReaderRef.GetHashCode() + 1); } else { SqlConnection tempConnectionSQL = myDico[ReaderRef.GetHashCode() + 1].Connection; myDico.Remove(ReaderRef.GetHashCode() + 1); PaireReaderConnection maPaire = new PaireReaderConnection(null, tempConnectionSQL); myDico.Add(0, maPaire); } } }
public static bool TryToConnect() { // Si pas d'information sur le serveur mysql, pas de connexion possible if (!dOnuts_InterfaceTablette.Properties.Settings.Default.connectionInformationProvided) return false; MySqlConnection FirstConnectionToMySQL = GetNewOpenedMySQLConnection(); if (FirstConnectionToMySQL == null) { return false; } else { PaireReaderConnection maPaire = new PaireReaderConnection(null, FirstConnectionToMySQL); if (myDico.ContainsKey(0)) { myDico[0] = maPaire; } else { myDico.Add(0, maPaire); } return true; } }