InternalEntity.cs 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #region --------------- Copyright Dresser Wayne Pignone -------------
  2. /*
  3. * $Log: /Wrk/WayneLibraries/Wrk/Log/InternalEntity.cs $
  4. *
  5. * 2 08-02-13 9:27 Mattias.larsson
  6. * FxCop fixes.
  7. */
  8. #endregion
  9. using System.Xml;
  10. namespace Wayne.Lib.Log
  11. {
  12. internal class InternalEntity : IIdentifiableEntity
  13. {
  14. #region Fields
  15. private int id;
  16. private string entityType;
  17. private string entitySubType;
  18. private IIdentifiableEntity parentEntity;
  19. #endregion
  20. #region Construction
  21. public InternalEntity(XmlElement entityNode)
  22. {
  23. this.id = XmlConvert.ToInt32(entityNode.Attributes["Id"].InnerText);
  24. this.entityType = entityNode.Attributes["EntityType"].InnerText;
  25. this.entitySubType = entityNode.Attributes["EntitySubType"].InnerText;
  26. XmlElement parentElement = entityNode["Parent", EventLogXml.Ns];
  27. if (parentElement != null)
  28. {
  29. XmlElement parentEntityElement = parentElement["Entity", EventLogXml.Ns];
  30. if (parentEntityElement != null)
  31. this.parentEntity = new InternalEntity(parentEntityElement);
  32. }
  33. }
  34. #endregion
  35. #region IIdentifiableEntity Members
  36. public int Id
  37. {
  38. get { return id; }
  39. }
  40. public string EntityType
  41. {
  42. get { return entityType; }
  43. }
  44. /// <summary>
  45. /// This is used by the logger and should never be set by inheriting classes
  46. /// </summary>
  47. public string FullEntityName { get; set; }
  48. public string EntitySubType
  49. {
  50. get { return entitySubType; }
  51. }
  52. public IIdentifiableEntity ParentEntity
  53. {
  54. get { return parentEntity; }
  55. }
  56. #endregion
  57. }
  58. }