//------------------------------------------------------------- public static CResultAErreur InitUsagePolling(string strHotelURL) { CResultAErreur result = CResultAErreur.True; try { m_strHotelURL = strHotelURL; CDataHotelClient hotelClient = new CDataHotelClient(); hotelClient.Init(strHotelURL); CMemoryDb db = hotelClient.GetRoomServer().GetConfig(); if (db == null) { return(result); } CDataHotel hotel = new CDataHotel(db); if (!hotel.ReadIfExist(new CFiltreMemoryDb("1=1"))) { hotel.CreateNew(); hotel.Label = "Timos hotel"; } CDataHotelTable table = new CDataHotelTable(db); if (!table.ReadIfExist(new CFiltreMemoryDb(CDataHotelTable.c_champId + "=@1", c_LicenceUsagePollingTableId))) { table.CreateNew(c_LicenceUsagePollingTableId); table.TableName = c_LicenceUsagePollingTable; table.Hotel = hotel; } bool bFieldExists = false; foreach (CDataHotelField field in table.Fields) { if (field.Id == c_LicenceUsagePollingNbUsedFieldId) { bFieldExists = true; break; } } if (!bFieldExists) { CDataHotelField field = new CDataHotelField(db); field.CreateNew(c_LicenceUsagePollingNbUsedFieldId); field.FieldName = c_LicenceUsagePollingNbUsedField; field.HotelTable = table; } hotelClient.GetRoomServer().UpdateConfig(db); if (m_timer == null) { m_timer = new Timer(5 * 60 * 1000); m_timer.Elapsed += m_timer_Elapsed; m_timer.Start(); } } catch (Exception e) { result.EmpileErreur(new CErreurException(e)); } return(result); }
//--------------------------------------------------------------- public CDataRoomOptimizedDataBase(CDataHotel dataHotel) { if (dataHotel != null) { foreach (CDataHotelTable table in dataHotel.Tables) { COptimizedDataRoomTable ot = new COptimizedDataRoomTable(table); m_dicNomTableToTable[ot.TableName] = ot; m_dicIdTableToTable[ot.TableId] = ot; } } }
//---------------------------------------------------------------- private static void UpdateOptimizedDb() { CDataHotel hotel = null; if (m_database != null) { CListeEntitesDeMemoryDb <CDataHotel> lst = new CListeEntitesDeMemoryDb <CDataHotel>(m_database); if (lst.Count() > 0) { hotel = lst.ElementAt(0); } } m_optimizedDb = new CDataRoomOptimizedDataBase(hotel); }