public void InserPIConfigurationDetailsToDB(PIConfigurationInfoModel piConfig) { try { SqlConnection sqlConnection = new SqlConnection(); sqlConnection.ConnectionString = ConfigurationSettings.AzureConnectionString; sqlConnection.Open(); SqlCommand sqlCommandUpdateUTCConversionTime = new SqlCommand("IF NOT EXISTS(Select PiServerName from PiServer where PiServerName = @PiServerName) BEGIN Insert into PiServer(PiServerName, PiServerDesc, PiServerURL, CreatedOn, UTCConversionTime) VALUES(@PiServerName, @PiServerDesc, @PiServerURL, @CreatedOn, @UTCConversionTime) END", sqlConnection); sqlCommandUpdateUTCConversionTime.Parameters.Add(new SqlParameter("@PiServerName", piConfig.PiServerName)); sqlCommandUpdateUTCConversionTime.Parameters.Add(new SqlParameter("@PiServerDesc", piConfig.PiServerDesc)); sqlCommandUpdateUTCConversionTime.Parameters.Add(new SqlParameter("@PiServerURL", piConfig.PiServerURL)); sqlCommandUpdateUTCConversionTime.Parameters.Add(new SqlParameter("@CreatedOn", piConfig.CreatedOn)); sqlCommandUpdateUTCConversionTime.Parameters.Add(new SqlParameter("@UTCConversionTime", piConfig.UTCConversionTime)); sqlCommandUpdateUTCConversionTime.ExecuteNonQuery(); sqlConnection.Close(); } catch (Exception ex) { Console.WriteLine("Exception occured in InserPIConfigurationDetailsToDB", ex.Message); Utility.Log("Exception occured ::InserPIConfigurationDetailsToDB()" + ex.Message); } }
public void ProcessData() { try { Utility.Log("PI server : " + ConfigurationSettings.PiServer); Utility.Log("Azure ConnectionString : " + ConfigurationSettings.AzureConnectionString); Utility.Log("Pi Server ConnectionString : " + ConfigurationSettings.PiServerConnectionString); if (!((string.IsNullOrEmpty(ConfigurationSettings.PiServer)) || (string.IsNullOrEmpty(ConfigurationSettings.AzureConnectionString)) || (string.IsNullOrEmpty(ConfigurationSettings.PiServerConnectionString)) )) { Console.WriteLine("Init ProcessData"); Utility.Log("Init ProcessData"); if (utcConversionTime != GetAndTimezone()) { utcConversionTime = GetAndTimezone(); PIConfigurationInfoModel piConfig = new PIConfigurationInfoModel(); string serverName = ConfigurationSettings.PiServer; piConfig.PiServerDesc = serverName; piConfig.PiServerName = serverName; piConfig.PiServerURL = ConfigurationSettings.PiServerConnectionString; piConfig.UTCConversionTime = utcConversionTime; piConfig.CreatedOn = DateTime.UtcNow; ConnectionManager.Instance().InserPIConfigurationDetailsToDB(piConfig); } ConnectionManager.Instance().Initialize(); Console.WriteLine("Done with Console manager initialization"); string storageConnectionString = ConfigurationSettings.GetCloudConfigDataModel().BlobStorageURL; //patch for now storageConnectionString = ConfigurationSettings.StorageConnectionString; // if (!string.IsNullOrEmpty(storageConnectionString)) { BlobStorageManager.Instance().ConfigureBlobStorage(storageConnectionString); Console.WriteLine("Done with Blob Storage configuration"); Utility.Log("Done with Console manager initialization"); string piServer = ConnectionManager.Instance().GetPIServer(); Thread piThread = new Thread(() => { ProcessDataByPIServer(piServer); }); piThread.Start(); //Thread sensorThread = new Thread(() => { InsertSensorData(piServer); }); //sensorThread.Start(); } else { Utility.Log("Does not have storage connection string "); } } else { Console.WriteLine("Doesn't have sufficient data in app config for connection"); Console.ReadLine(); Utility.Log("Doesn't have sufficient data in app config for connection"); } } catch (Exception e) { Console.WriteLine("Error occured in processData" + e.Message); Utility.Log("Error occured in processData" + e.Message); } }