OSS NAS Tools for C# for 5G for 3GPP Release 16.8.0
Oss.Nas.Diagnostics Class Reference

Represents a list of defects that were detected by the encoder or decoder in a NAS message. More...

Inherits List< Diagnostics.Entry >.

Classes

class  Entry
 Represents an entry in a diagnostic report. More...
 

Public Types

enum  Owner { Encoder, Decoder, Other }
 Enumerates the NAS/C# runtime components that can create a diagnostic report. More...
 
enum  Severity {
  None, Severity.Informational, Severity.Warning, Severity.IgnorableError,
  Severity.RecoverableError, Severity.CriticalError
}
 Enumerates the defect severity levels in a diagnostic report. More...
 

Public Member Functions

 Diagnostics ()
 Constructs an empty diagnostic report. More...
 
 Diagnostics (Owner source)
 Constructs an empty diagnostic report. More...
 
 Diagnostics (Diagnostics source)
 The copy constructor. More...
 
Entry AddEntry (Severity severity, Reason reason, Object details, String location)
 Adds a new entry to a diagnostic report. More...
 
void Reset (Owner source)
 Removes all entries from a diagnostic report and resets the identification of the NAS/C# runtime component to a specified value. This method is provided to facilitate the reuse of the existing Diagnostics object. More...
 
override string ToString ()
 Presents a diagnostic report in human-readable format. More...
 
void Print (TextWriter s)
 Prints a diagnostic report to TextWriter. More...
 

Properties

Owner Source [get, set]
 Identifies the NAS/C# runtime component that created a diagnostic report. More...
 
Severity SeverityLevel [get]
 Determines the highest severity level of the entries contained in a diagnostic report. More...
 

Detailed Description

Represents a list of defects that were detected by the encoder or decoder in a NAS message.

Member Enumeration Documentation

◆ Owner

Enumerates the NAS/C# runtime components that can create a diagnostic report.

◆ Severity

Enumerates the defect severity levels in a diagnostic report.

Enumerator
Informational 

Identifies informational diagnostics. This Severity value is not currently used and is reserved for future use.

Warning 

Identifies a non-critical defect that does not invalidate a NAS message.

IgnorableError 

Serious error in a non-imperative part of a message that does not invalidate a NAS message but causes the decoder to discard the corresponding optional IE.

RecoverableError 

Serious error that invalidates a NAS message but permits further processing so additional diagnostic information can be collected.

CriticalError 

Critical defect that causes the encoder or decoder to abort further message processing.

Constructor & Destructor Documentation

◆ Diagnostics() [1/3]

Oss.Nas.Diagnostics.Diagnostics ( )
inline

Constructs an empty diagnostic report.

◆ Diagnostics() [2/3]

Oss.Nas.Diagnostics.Diagnostics ( Owner  source)
inline

Constructs an empty diagnostic report.

Parameters
sourceIdentifies the NAS/C# runtime component that requested the diagnostic report.

◆ Diagnostics() [3/3]

Oss.Nas.Diagnostics.Diagnostics ( Diagnostics  source)
inline

The copy constructor.

Parameters
sourceThe source for the copy.

Member Function Documentation

◆ AddEntry()

Entry Oss.Nas.Diagnostics.AddEntry ( Severity  severity,
Reason  reason,
Object  details,
String  location 
)
inline

Adds a new entry to a diagnostic report.

Parameters
severityThe severity of the defect.
reasonSpecifies the reason why the entry was created.
detailsProvides more details about the defect (optional, can be null).
locationIdentifies the NAS message component in which the defect was detected.
Returns
The Diagnostics.Entry object that was added.

◆ Print()

void Oss.Nas.Diagnostics.Print ( TextWriter  s)
inline

Prints a diagnostic report to TextWriter.

Parameters
sThe TextWriter.

◆ Reset()

void Oss.Nas.Diagnostics.Reset ( Owner  source)
inline

Removes all entries from a diagnostic report and resets the identification of the NAS/C# runtime component to a specified value. This method is provided to facilitate the reuse of the existing Diagnostics object.

Parameters
sourceIdentifies the NAS/C# runtime component that requested the reset of the diagnostic report.

◆ ToString()

override string Oss.Nas.Diagnostics.ToString ( )
inline

Presents a diagnostic report in human-readable format.

Returns
A string representation of the diagnostic report, suitable for logging.

Property Documentation

◆ SeverityLevel

Severity Oss.Nas.Diagnostics.SeverityLevel
get

Determines the highest severity level of the entries contained in a diagnostic report.

◆ Source

Owner Oss.Nas.Diagnostics.Source
getset

Identifies the NAS/C# runtime component that created a diagnostic report.