using System; using System.Collections; namespace Kreta.Framework.Logging { /// /// Az interfész alapértelmezett implementációja /// public class LogMessage : ILogMessage { private string m_LogEntryId; private Events m_EventType = 0; private string m_SessionId = ""; private LogLevel m_Level; private Hashtable m_Parameters = new Hashtable(); private string m_UserId; private bool m_IsLogged; int? intezmenyid; // TODO: kezelni értelmesen int? tanevid; // TODO: kezelni értelmesen /// /// Az osztály alapértelmezett konstruktora. /// public LogMessage() : this(Guid.NewGuid().ToString()) { } /// /// Az osztály konstruktora. /// /// A bejegyzés azonosítója internal LogMessage(string logEntryId) { if (string.IsNullOrWhiteSpace(logEntryId)) { logEntryId = Guid.NewGuid().ToString(); } m_LogEntryId = logEntryId; } /// /// /// public string LogEntryId { get { return this.m_LogEntryId; } } /// /// /// public Events EventType { get { return this.m_EventType; } set { this.m_EventType = value; } } /// /// /// public LogLevel Level { get { return this.m_Level; } set { this.m_Level = value; } } /// /// /// public string SessionId { get { return this.m_SessionId; } set { this.m_SessionId = value; } } /// /// A felhasználó azonosítója. /// public string UserId { get { return m_UserId; } set { m_UserId = value; } } /// /// A bejegyzés naplóba lett-e már írva, vagy sem. /// public bool IsLogged { get { return m_IsLogged; } set { m_IsLogged = value; } } /// /// Az üzenet paraméterei. /// public IDictionary Parameters { get { return m_Parameters; } } public int? IntezmenyId { get { return intezmenyid; } set { this.intezmenyid = value; } } public int? TanevId { get { return tanevid; } set { this.tanevid = value; } } /// /// Beállítja egy paraméter értékét. /// /// A paraméter típusa /// A paraméter értéke public void SetParameter(LogParameter parameterName, object value) { this.m_Parameters[parameterName] = value; } /// /// Lásd . /// /// Lásd public IEnumerator GetEnumerator() { return m_Parameters.GetEnumerator(); } } }