private void InitializeDIManager() { diManager = new DbIniManager(); diManager.ReadIni(); }
public void SetDBINI(DbIniManager dimanager) { diManager = dimanager; }
public virtual Task Execute(IJobExecutionContext context) { JobKey jobKey = context.JobDetail.Key; // 로그 lock (ThisLock) { L4Logger l4Logger = new L4Logger(jobKey.Name + ".log"); l4Logger.Add("Start Task : " + jobKey.Name); l4Logger.Close(); } JobDataMap dataMap = context.JobDetail.JobDataMap; string address = dataMap.GetString("address"); string nx = dataMap.GetString("nx"); string ny = dataMap.GetString("ny"); Console.WriteLine("IJob says: {0}, address:{1}, nx:{2}, ny:{3}, executing at {4}", jobKey, address, nx, ny, DateTime.Now.ToString("r")); WeatherCrawlerData wcd = new WeatherCrawlerData(); // db.ini 파일을 읽어서 수집서버 DB 연결 DbIniManager dbIniManager = new DbIniManager(); dbIniManager.ReadIni(); DbManager dm = new DbManager(dbIniManager.IpAddress, dbIniManager.DbName, dbIniManager.CollectionName, dbIniManager.Id, dbIniManager.Pw); if (dm.Connect()) { // 이미 같은 주소의 데이터가 있는지 체크 if (dm.IsExistAddress(address)) { Console.WriteLine("이미 같은 주소의 데이터가 DB에 존재합니다"); // 기존 데이터 중 currentData만 보존 List <CurrentData> existCD = dm.GetCurrentData(address); // 기존 currentData를 포함하여 데이터 생성 wcd = GetAssembledWCD(address, nx, ny, true, existCD); if (null != wcd) { // 기존 데이터 삭제 dm.DeleteDocumentByAddress(address); // 수집서버 DB에 데이터 INSERT dm.InsertWeatherData(wcd); } } else { Console.WriteLine("같은 주소의 데이터가 DB에 존재하지 않습니다"); wcd = GetAssembledWCD(address, nx, ny, false, null); if (null != wcd) { // 수집서버 DB에 데이터 INSERT dm.InsertWeatherData(wcd); } } } else { MessageBox.Show("수집서버 DB에 접속할 수 없습니다"); } // 로그 lock (ThisLock) { L4Logger l4Logger = new L4Logger(jobKey.Name + ".log"); l4Logger.Add("End Task : " + jobKey.Name); l4Logger.Close(); } return(Task.FromResult(0)); }