private static void UpdatePrimeDnsMapRow(string pDomain, int pUpdatedTtl) { var updateCommand = "UPDATE " + AppConfig.ConstTableNamePrimeDnsMap + $" SET TimeToLiveInSeconds={pUpdatedTtl}" + $" WHERE HostName={pDomain}"; try { SqliteConnect.ExecuteNonQuery(updateCommand, _mapConnectionString); //PrimeDns.logger._LogInformation("Updated PrimeDNSMap table successfully", Logger.Logger.CSqliteExecuteNonQuery, null); } catch (Exception error) { PrimeDns.Log._LogError("Error occured while updating PrimeDNSMap table for TTL Updater", Logger.Logger.ConstSqliteExecuteNonQuery, error); } }
/* * UpdatePrimeDnsState() updates any given flag in the PrimeDns State table */ public static void UpdatePrimeDnsState(string pFlagName, int pFlagValue) { var updateCommand = "UPDATE " + AppConfig.ConstTableNamePrimeDnsState + " " + $"SET FlagValue={pFlagValue} WHERE FlagName=\"{pFlagName}\""; try { var numberOfRowsUpdated = SqliteConnect.ExecuteNonQuery(updateCommand, _stateConnectionString); PrimeDns.Log._LogInformation("PrimeDNSState table updated - # of rows updated - " + numberOfRowsUpdated, Logger.ConstSqliteExecuteNonQuery, null); } catch (Exception error) { PrimeDns.Log._LogError("Error occured while updating PrimeDNSState table on Database", Logger.ConstSqliteExecuteNonQuery, error); } }
/* * CreateTable_PrimeDNSState() creates the table PrimeDNSState. */ private static void CreateTable_PrimeDNSState() { var createCommand = "Create table " + AppConfig.ConstTableNamePrimeDnsState + " ( FlagName varchar(100), FlagValue boolean )"; try { var query = SqliteConnect.ExecuteNonQuery(createCommand, _stateConnectionString); PrimeDns.Log._LogInformation("Table PrimeDNSState created successfully", Logger.ConstSqliteExecuteNonQuery, null); } catch (Exception error) { PrimeDns.Log._LogError("Error occured while creating table PrimeDNSState.", Logger.ConstSqliteExecuteNonQuery, error); } }
/* * CreateTable_PrimeDNSMap() creates the table PrimeDNSMap. */ private static void CreateTable_PrimeDNSMap() { var createCommand = "Create table " + AppConfig.ConstTableNamePrimeDnsMap + " ( HostName varchar(100), IPAddressList varchar(200), LastUpdatedTime datetime, LastCheckedTime datetime, TimeToLiveInSeconds int )"; try { var query = SqliteConnect.ExecuteNonQuery(createCommand, _mapConnectionString); PrimeDns.Log._LogInformation("Table PrimeDnsMap created successfully", Logger.ConstSqliteExecuteNonQuery, null); } catch (Exception error) { PrimeDns.Log._LogError("Error occured while creating table PrimeDNSMap.", Logger.ConstSqliteExecuteNonQuery, error); } }
/* * DeletePrimeDnsMapRow() deletes row with pHostName from PrimeDNSMap Table. */ private static void DeletePrimeDnsMapRow(string pHostName) { PrimeDns.Semaphore.Wait(); var deleteCommand = "DELETE FROM " + AppConfig.ConstTableNamePrimeDnsMap + $" WHERE HostName=\"{pHostName}\""; try { var query = SqliteConnect.ExecuteNonQuery(deleteCommand, _mapConnectionString); //PrimeDns.logger._LogInformation("Deleted Row from PrimeDNSMap successfully", Logger.CSqliteExecuteNonQuery, null); } catch (Exception error) { PrimeDns.Log._LogError("Error occured while deleting row from PrimeDNSMap table", Logger.ConstSqliteExecuteNonQuery, error); } PrimeDns.Semaphore.Release(); }
/* * WriteToPrimeDnsMap() inserts a given row data into PrimeDNSMap Table. */ public static void WriteToPrimeDnsMap(PrimeDnsMapRow pMapRowToBeInserted) { PrimeDns.Semaphore.Wait(); var insertSql = "Insert into " + AppConfig.ConstTableNamePrimeDnsMap + $" ( HostName, IPAddressList, LastUpdatedTime, LastCheckedTime, TimeToLiveInSeconds) values (\"{pMapRowToBeInserted.HostName}\", \"{pMapRowToBeInserted.GetStringOfIpAddressList()}\", \"{pMapRowToBeInserted.LastUpdatedTime}\", \"{pMapRowToBeInserted.LastCheckedTime}\", {pMapRowToBeInserted.TimeToLiveInSeconds})"; try { var query = SqliteConnect.ExecuteNonQuery(insertSql, _mapConnectionString); //PrimeDns.logger._LogInformation("Data inserted into PrimeDNSMap table successfully", Logger.CSqliteExecuteNonQuery, null); } catch (Exception error) { PrimeDns.Log._LogError("Error occured while inserting data into PrimeDNSMap table", Logger.ConstSqliteExecuteNonQuery, error); } PrimeDns.Semaphore.Release(); }
/* * UpdatePrimeDnsMapRow() updates the row containing the mentioned hostName to newly passed values in PrimeDNSMap Table. */ private static void UpdateLastCheckedTime(PrimeDnsMapRow pUpdatedMapRow) { PrimeDns.Semaphore.Wait(); var updateCommand = "UPDATE " + AppConfig.ConstTableNamePrimeDnsMap + $" SET LastCheckedTime=\"{pUpdatedMapRow.LastCheckedTime}\" " + $" WHERE HostName=\"{pUpdatedMapRow.HostName}\""; try { var query = SqliteConnect.ExecuteNonQuery(updateCommand, _mapConnectionString); //PrimeDns.logger._LogInformation("Updated PrimeDNSMap table successfully", Logger.CSqliteExecuteNonQuery, null); } catch (Exception error) { PrimeDns.Log._LogError("Error occured while updating PrimeDNSMap table for Last Checked Time", Logger.ConstSqliteExecuteNonQuery, error); } PrimeDns.Semaphore.Release(); }
/* * CreateAndInitializePrimeDnsState() does exactly what it says. Initializes all flags in PrimeDNSState. */ internal static void CreateAndInitializePrimeDnsState(int pSectionCreatedFlag, int pMapCreatedFlag, int pCriticalDomainsUpdatedFlag, int pMapUpdatedFlag, int pHostFileUpdatedFromOutsideFlag) { CreateTable_PrimeDNSState(); var insertCommand = "Insert into " + AppConfig.ConstTableNamePrimeDnsState + $" values (\"{AppConfig.ConstPrimeDnsSectionCreated}\", {pSectionCreatedFlag})"; try { SqliteConnect.ExecuteNonQuery(insertCommand, _stateConnectionString); PrimeDns.Log._LogInformation("Successfully Initialized PrimeDNSSectionCreated in the PrimeDNSState", Logger.ConstPrimeDnsStateIntegrity, null); } catch (Exception error) { PrimeDns.Log._LogError("Error occured while Initializing PrimeDNSSectionCreated in the PrimeDNSState", Logger.ConstPrimeDnsStateIntegrity, error); } insertCommand = "Insert into " + AppConfig.ConstTableNamePrimeDnsState + $" values (\"{AppConfig.ConstPrimeDnsMapCreated}\", {pMapCreatedFlag})"; try { SqliteConnect.ExecuteNonQuery(insertCommand, _stateConnectionString); PrimeDns.Log._LogInformation("Successfully Initialized PrimeDNSMapCreated in the PrimeDNSState", Logger.ConstPrimeDnsStateIntegrity, null); } catch (Exception error) { PrimeDns.Log._LogError("Error occured while Initializing PrimeDNSMapCreated in the PrimeDNSState", Logger.ConstPrimeDnsStateIntegrity, error); } insertCommand = "Insert into " + AppConfig.ConstTableNamePrimeDnsState + $" values (\"{AppConfig.ConstPrimeDnsCriticalDomainsUpdated}\", {pCriticalDomainsUpdatedFlag})"; try { SqliteConnect.ExecuteNonQuery(insertCommand, _stateConnectionString); PrimeDns.Log._LogInformation("Successfully Initialized PrimeDNSCriticalDomainsUpdated in the PrimeDNSState", Logger.ConstPrimeDnsStateIntegrity, null); } catch (Exception error) { PrimeDns.Log._LogError("Error occured while Initializing PrimeDNSCriticalDomainsUpdated in the PrimeDNSState", Logger.ConstPrimeDnsStateIntegrity, error); } insertCommand = "Insert into " + AppConfig.ConstTableNamePrimeDnsState + $" values (\"{AppConfig.ConstPrimeDnsMapUpdated}\", {pMapUpdatedFlag})"; try { SqliteConnect.ExecuteNonQuery(insertCommand, _stateConnectionString); PrimeDns.Log._LogInformation("Successfully Initialized PrimeDNSMapUpdated in the PrimeDNSState", Logger.ConstPrimeDnsStateIntegrity, null); } catch (Exception error) { PrimeDns.Log._LogError("Error occured while Initializing PrimeDNSMapUpdated in the PrimeDNSState", Logger.ConstPrimeDnsStateIntegrity, error); } insertCommand = "Insert into " + AppConfig.ConstTableNamePrimeDnsState + $" values (\"{AppConfig.ConstPrimeDnsHostFileUpdatedFromOutside}\", {pHostFileUpdatedFromOutsideFlag})"; try { SqliteConnect.ExecuteNonQuery(insertCommand, _stateConnectionString); PrimeDns.Log._LogInformation("Successfully Initialized PrimeDnsHostFileUpdatedFromOutside in the PrimeDNSState", Logger.ConstPrimeDnsStateIntegrity, null); } catch (Exception error) { PrimeDns.Log._LogError("Error occured while Initializing PrimeDnsHostFileUpdatedFromOutside in the PrimeDNSState", Logger.ConstPrimeDnsStateIntegrity, error); } }