Change folder structure
This commit is contained in:
119
Source/LogDashboard/Model/LogMessage.cs
Normal file
119
Source/LogDashboard/Model/LogMessage.cs
Normal file
@@ -0,0 +1,119 @@
|
||||
//******************************************************************************//
|
||||
// LogMessage.cs
|
||||
// 12/4/2023
|
||||
//
|
||||
// RAYTHEON PROPRIETARY: THIS DOCUMENT CONTAINS DATA OR INFORMATION
|
||||
// PROPRIETARY TO RAYTHEON COMPANY AND IS RESTRICTED TO USE ONLY BY PERSONS
|
||||
// AUTHORIZED BY RAYTHEON COMPANY IN WRITING TO USE IT. DISCLOSURE TO
|
||||
// UNAUTHORIZED PERSONS WOULD LIKELY CAUSE SUBSTANTIAL COMPETITIVE HARM TO
|
||||
// RAYTHEON COMPANY'S BUSINESS POSITION. NEITHER SAID DOCUMENT NOR ITS
|
||||
// CONTENTS SHALL BE FURNISHED OR DISCLOSED TO OR COPIED OR USED BY PERSONS
|
||||
// OUTSIDE RAYTHEON COMPANY WITHOUT THE EXPRESS WRITTEN APPROVAL OF RAYTHEON
|
||||
// COMPANY.
|
||||
//
|
||||
// THIS PROPRIETARY NOTICE IS NOT APPLICABLE IF DELIVERED TO THE U.S. GOVERNMENT
|
||||
//
|
||||
// UNPUBLISHED WORK - COPYRIGHT RAYTHEON COMPANY.
|
||||
//
|
||||
// WARNING: THIS DOCUMENT CONTAINS TECHNICAL DATA AND / OR TECHNOLOGY WHOSE
|
||||
// EXPORT OR DISCLOSURE TO NON-U.S. PERSONS, WHEREVER LOCATED, IS RESTRICTED
|
||||
// BY THE INTERNATIONAL TRAFFIC IN ARMS REGULATIONS (ITAR) (22 C.F.R. SECTION
|
||||
// 120-130) OR THE EXPORT ADMINISTRATION REGULATIONS (EAR) (15 C.F.R. SECTION
|
||||
// 730-774). THIS DOCUMENT CANNOT BE EXPORTED (E.G., PROVIDED TO A SUPPLIER
|
||||
// OUTSIDE OF THE UNITED STATES) OR DISCLOSED TO A NON-U.S. PERSON, WHEREVER
|
||||
// LOCATED, UNTIL A FINAL JURISDICTION AND CLASSIFICATION DETERMINATION HAS
|
||||
// BEEN COMPLETED AND APPROVED BY RAYTHEON, AND ANY REQUIRED U.S. GOVERNMENT
|
||||
// APPROVALS HAVE BEEN OBTAINED. VIOLATIONS ARE SUBJECT TO SEVERE CRIMINAL
|
||||
// PENALTIES.
|
||||
//
|
||||
// DOD 5220.22-M, INDUSTRIAL SECURITY MANUAL, CHAPTER 5, SECTION 1 THROUGH 9 :
|
||||
// FOR CLASSIFIED DOCUMENTS FOLLOW THE PROCEDURES IN OR DOD 5200.1-R,
|
||||
// INFORMATION SECURITY PROGRAM, CHAPTER 6. FOR UNCLASSIFIED, LIMITED DOCUMENTS
|
||||
// DESTROY BY ANY METHOD THAT WILL PREVENT DISCLOSURE OF CONTENTS OR
|
||||
// RECONSTRUCTION OF THE DOCUMENT.
|
||||
// POC: Alex Kravchenko (1118268)
|
||||
//******************************************************************************//
|
||||
using GalaSoft.MvvmLight;
|
||||
using System;
|
||||
using System.Windows.Media;
|
||||
|
||||
namespace Raytheon.LogDashboard.Model
|
||||
{
|
||||
public class LogMessage : ViewModelBase, ICloneable
|
||||
{
|
||||
public LogMessage()
|
||||
{
|
||||
toggleMark.Freeze();
|
||||
}
|
||||
|
||||
public ulong SequenceNumber { get; set; }
|
||||
|
||||
public DateTime Time { get; set; }
|
||||
|
||||
public DashboardLogLevel Level { get; set; }
|
||||
|
||||
public string Logger { get; set; } = string.Empty;
|
||||
|
||||
public int Thread { get; set; }
|
||||
|
||||
public string ThreadName { get; set; }
|
||||
|
||||
public string Message { get; set; }
|
||||
|
||||
public string ExecutableName { get; set; }
|
||||
|
||||
public string Address { get; set; }
|
||||
|
||||
public int Port { get; set; }
|
||||
|
||||
public string ExceptionString { get; set; }
|
||||
|
||||
public int? ProcessID { get; set; }
|
||||
|
||||
public SolidColorBrush Color { get; set; }
|
||||
|
||||
public string FullPath
|
||||
{
|
||||
get
|
||||
{
|
||||
if(string.IsNullOrEmpty(ExecutableName))
|
||||
{
|
||||
return Address + "." + Logger;
|
||||
}
|
||||
|
||||
return Address + "." + ExecutableName + "." + Logger;
|
||||
}
|
||||
}
|
||||
|
||||
private SolidColorBrush toggleMark = new SolidColorBrush(Colors.Transparent);
|
||||
public SolidColorBrush ToggleMark
|
||||
{
|
||||
get => toggleMark;
|
||||
set
|
||||
{
|
||||
Set(() => ToggleMark, ref toggleMark, value);
|
||||
toggleMark.Freeze();
|
||||
}
|
||||
}
|
||||
|
||||
public object Clone()
|
||||
{
|
||||
return new LogMessage
|
||||
{
|
||||
SequenceNumber = SequenceNumber,
|
||||
Address = Address,
|
||||
Port = Port,
|
||||
ExecutableName = ExecutableName,
|
||||
Level = Level,
|
||||
Logger = Logger,
|
||||
Message = Message,
|
||||
Thread = Thread,
|
||||
ThreadName = ThreadName,
|
||||
Time = Time,
|
||||
ExceptionString = ExceptionString,
|
||||
Color = Color,
|
||||
ProcessID = ProcessID,
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user