### YamlMime:ManagedReference
items:
- uid: adas_core.Domain.Utils.CacheKeyInspector
  commentId: T:adas_core.Domain.Utils.CacheKeyInspector
  id: CacheKeyInspector
  parent: adas_core.Domain.Utils
  children:
  - adas_core.Domain.Utils.CacheKeyInspector.ExtractAppointmentInfo(System.String)
  - adas_core.Domain.Utils.CacheKeyInspector.ExtractGroupedObservationInfo(System.String)
  - adas_core.Domain.Utils.CacheKeyInspector.ExtractPatientId(System.String)
  langs:
  - csharp
  - vb
  name: CacheKeyInspector
  nameWithType: CacheKeyInspector
  fullName: adas_core.Domain.Utils.CacheKeyInspector
  type: Class
  source:
    remote:
      path: adas-core.Domain/Utils/CacheUtils.cs
      branch: document/release/1.0.1
      repo: https://git.teralevel.io/adas/adas-core.git
    id: CacheKeyInspector
    path: ../../adas-core.Domain/Utils/CacheUtils.cs
    startLine: 496
  assemblies:
  - adas-core.Domain
  namespace: adas_core.Domain.Utils
  summary: >-
    Utilidad para extraer información estructurada útil para trazas.

    No usada por la lógica de caché, pero sí por logs y diagnósticos.
  example: []
  syntax:
    content: public static class CacheKeyInspector
    content.vb: Public Module CacheKeyInspector
  inheritance:
  - System.Object
  inheritedMembers:
  - System.Object.Equals(System.Object)
  - System.Object.Equals(System.Object,System.Object)
  - System.Object.GetHashCode
  - System.Object.GetType
  - System.Object.MemberwiseClone
  - System.Object.ReferenceEquals(System.Object,System.Object)
  - System.Object.ToString
- uid: adas_core.Domain.Utils.CacheKeyInspector.ExtractPatientId(System.String)
  commentId: M:adas_core.Domain.Utils.CacheKeyInspector.ExtractPatientId(System.String)
  id: ExtractPatientId(System.String)
  parent: adas_core.Domain.Utils.CacheKeyInspector
  langs:
  - csharp
  - vb
  name: ExtractPatientId(string)
  nameWithType: CacheKeyInspector.ExtractPatientId(string)
  fullName: adas_core.Domain.Utils.CacheKeyInspector.ExtractPatientId(string)
  type: Method
  source:
    remote:
      path: adas-core.Domain/Utils/CacheUtils.cs
      branch: document/release/1.0.1
      repo: https://git.teralevel.io/adas/adas-core.git
    id: ExtractPatientId
    path: ../../adas-core.Domain/Utils/CacheUtils.cs
    startLine: 513
  assemblies:
  - adas-core.Domain
  namespace: adas_core.Domain.Utils
  summary: >-
    Extracts the patient identifier from the given key using a regular expression pattern.

    Returns <code>null</code> if the key does not match the expected patient format.
  example: []
  syntax:
    content: public static string? ExtractPatientId(string key)
    parameters:
    - id: key
      type: System.String
      description: The input string from which to extract the patient identifier.
    return:
      type: System.String
      description: The extracted patient identifier, or <code>null</code> if no match is found.
    content.vb: Public Shared Function ExtractPatientId(key As String) As String
  overload: adas_core.Domain.Utils.CacheKeyInspector.ExtractPatientId*
  nameWithType.vb: CacheKeyInspector.ExtractPatientId(String)
  fullName.vb: adas_core.Domain.Utils.CacheKeyInspector.ExtractPatientId(String)
  name.vb: ExtractPatientId(String)
- uid: adas_core.Domain.Utils.CacheKeyInspector.ExtractGroupedObservationInfo(System.String)
  commentId: M:adas_core.Domain.Utils.CacheKeyInspector.ExtractGroupedObservationInfo(System.String)
  id: ExtractGroupedObservationInfo(System.String)
  parent: adas_core.Domain.Utils.CacheKeyInspector
  langs:
  - csharp
  - vb
  name: ExtractGroupedObservationInfo(string)
  nameWithType: CacheKeyInspector.ExtractGroupedObservationInfo(string)
  fullName: adas_core.Domain.Utils.CacheKeyInspector.ExtractGroupedObservationInfo(string)
  type: Method
  source:
    remote:
      path: adas-core.Domain/Utils/CacheUtils.cs
      branch: document/release/1.0.1
      repo: https://git.teralevel.io/adas/adas-core.git
    id: ExtractGroupedObservationInfo
    path: ../../adas-core.Domain/Utils/CacheUtils.cs
    startLine: 524
  assemblies:
  - adas-core.Domain
  namespace: adas_core.Domain.Utils
  summary: Extracts the observation field name and patient identifier from a grouped observation key using a regular expression pattern. Returns a tuple of <code>null</code> values when the key does not match the expected grouped format.
  example: []
  syntax:
    content: public static (string? Field, string? PatientId) ExtractGroupedObservationInfo(string key)
    parameters:
    - id: key
      type: System.String
      description: The grouped observation key to parse.
    return:
      type: System.ValueTuple{System.String,System.String}
      description: A tuple containing the extracted field name and patient identifier, or <code>(null, null)</code> if the key does not match the pattern.
    content.vb: Public Shared Function ExtractGroupedObservationInfo(key As String) As (Field As String, PatientId As String)
  overload: adas_core.Domain.Utils.CacheKeyInspector.ExtractGroupedObservationInfo*
  nameWithType.vb: CacheKeyInspector.ExtractGroupedObservationInfo(String)
  fullName.vb: adas_core.Domain.Utils.CacheKeyInspector.ExtractGroupedObservationInfo(String)
  name.vb: ExtractGroupedObservationInfo(String)
- uid: adas_core.Domain.Utils.CacheKeyInspector.ExtractAppointmentInfo(System.String)
  commentId: M:adas_core.Domain.Utils.CacheKeyInspector.ExtractAppointmentInfo(System.String)
  id: ExtractAppointmentInfo(System.String)
  parent: adas_core.Domain.Utils.CacheKeyInspector
  langs:
  - csharp
  - vb
  name: ExtractAppointmentInfo(string)
  nameWithType: CacheKeyInspector.ExtractAppointmentInfo(string)
  fullName: adas_core.Domain.Utils.CacheKeyInspector.ExtractAppointmentInfo(string)
  type: Method
  source:
    remote:
      path: adas-core.Domain/Utils/CacheUtils.cs
      branch: document/release/1.0.1
      repo: https://git.teralevel.io/adas/adas-core.git
    id: ExtractAppointmentInfo
    path: ../../adas-core.Domain/Utils/CacheUtils.cs
    startLine: 538
  assemblies:
  - adas-core.Domain
  namespace: adas_core.Domain.Utils
  summary: >-
    Extracts appointment location and date information from the provided key by matching against a predefined appointment-day pattern.

    Returns a null location and null date if the key does not match the expected pattern, and returns the matched location with a null date if the date portion cannot be parsed using the <code>yyyyMMdd</code> format.
  example: []
  syntax:
    content: public static (string? Location, DateTime? Date) ExtractAppointmentInfo(string key)
    parameters:
    - id: key
      type: System.String
      description: The input string expected to contain a location and a date in <code>yyyyMMdd</code> format.
    return:
      type: System.ValueTuple{System.String,System.Nullable{System.DateTime}}
      description: A tuple containing the extracted <code>Location</code> string and the parsed <code>Date</code>; either value may be <code>null</code> when extraction or parsing fails.
    content.vb: Public Shared Function ExtractAppointmentInfo(key As String) As (Location As String, [Date] As Date?)
  overload: adas_core.Domain.Utils.CacheKeyInspector.ExtractAppointmentInfo*
  nameWithType.vb: CacheKeyInspector.ExtractAppointmentInfo(String)
  fullName.vb: adas_core.Domain.Utils.CacheKeyInspector.ExtractAppointmentInfo(String)
  name.vb: ExtractAppointmentInfo(String)
references:
- uid: adas_core.Domain.Utils
  commentId: N:adas_core.Domain.Utils
  href: adas_core.html
  name: adas_core.Domain.Utils
  nameWithType: adas_core.Domain.Utils
  fullName: adas_core.Domain.Utils
  spec.csharp:
  - uid: adas_core
    name: adas_core
    href: adas_core.html
  - name: .
  - uid: adas_core.Domain
    name: Domain
    href: adas_core.Domain.html
  - name: .
  - uid: adas_core.Domain.Utils
    name: Utils
    href: adas_core.Domain.Utils.html
  spec.vb:
  - uid: adas_core
    name: adas_core
    href: adas_core.html
  - name: .
  - uid: adas_core.Domain
    name: Domain
    href: adas_core.Domain.html
  - name: .
  - uid: adas_core.Domain.Utils
    name: Utils
    href: adas_core.Domain.Utils.html
- uid: System.Object
  commentId: T:System.Object
  parent: System
  isExternal: true
  href: https://learn.microsoft.com/dotnet/api/system.object
  name: object
  nameWithType: object
  fullName: object
  nameWithType.vb: Object
  fullName.vb: Object
  name.vb: Object
- uid: System.Object.Equals(System.Object)
  commentId: M:System.Object.Equals(System.Object)
  parent: System.Object
  isExternal: true
  href: https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)
  name: Equals(object)
  nameWithType: object.Equals(object)
  fullName: object.Equals(object)
  nameWithType.vb: Object.Equals(Object)
  fullName.vb: Object.Equals(Object)
  name.vb: Equals(Object)
  spec.csharp:
  - uid: System.Object.Equals(System.Object)
    name: Equals
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)
  - name: (
  - uid: System.Object
    name: object
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object
  - name: )
  spec.vb:
  - uid: System.Object.Equals(System.Object)
    name: Equals
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)
  - name: (
  - uid: System.Object
    name: Object
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object
  - name: )
- uid: System.Object.Equals(System.Object,System.Object)
  commentId: M:System.Object.Equals(System.Object,System.Object)
  parent: System.Object
  isExternal: true
  href: https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)
  name: Equals(object, object)
  nameWithType: object.Equals(object, object)
  fullName: object.Equals(object, object)
  nameWithType.vb: Object.Equals(Object, Object)
  fullName.vb: Object.Equals(Object, Object)
  name.vb: Equals(Object, Object)
  spec.csharp:
  - uid: System.Object.Equals(System.Object,System.Object)
    name: Equals
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)
  - name: (
  - uid: System.Object
    name: object
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object
  - name: ','
  - name: " "
  - uid: System.Object
    name: object
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object
  - name: )
  spec.vb:
  - uid: System.Object.Equals(System.Object,System.Object)
    name: Equals
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)
  - name: (
  - uid: System.Object
    name: Object
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object
  - name: ','
  - name: " "
  - uid: System.Object
    name: Object
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object
  - name: )
- uid: System.Object.GetHashCode
  commentId: M:System.Object.GetHashCode
  parent: System.Object
  isExternal: true
  href: https://learn.microsoft.com/dotnet/api/system.object.gethashcode
  name: GetHashCode()
  nameWithType: object.GetHashCode()
  fullName: object.GetHashCode()
  nameWithType.vb: Object.GetHashCode()
  fullName.vb: Object.GetHashCode()
  spec.csharp:
  - uid: System.Object.GetHashCode
    name: GetHashCode
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object.gethashcode
  - name: (
  - name: )
  spec.vb:
  - uid: System.Object.GetHashCode
    name: GetHashCode
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object.gethashcode
  - name: (
  - name: )
- uid: System.Object.GetType
  commentId: M:System.Object.GetType
  parent: System.Object
  isExternal: true
  href: https://learn.microsoft.com/dotnet/api/system.object.gettype
  name: GetType()
  nameWithType: object.GetType()
  fullName: object.GetType()
  nameWithType.vb: Object.GetType()
  fullName.vb: Object.GetType()
  spec.csharp:
  - uid: System.Object.GetType
    name: GetType
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object.gettype
  - name: (
  - name: )
  spec.vb:
  - uid: System.Object.GetType
    name: GetType
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object.gettype
  - name: (
  - name: )
- uid: System.Object.MemberwiseClone
  commentId: M:System.Object.MemberwiseClone
  parent: System.Object
  isExternal: true
  href: https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone
  name: MemberwiseClone()
  nameWithType: object.MemberwiseClone()
  fullName: object.MemberwiseClone()
  nameWithType.vb: Object.MemberwiseClone()
  fullName.vb: Object.MemberwiseClone()
  spec.csharp:
  - uid: System.Object.MemberwiseClone
    name: MemberwiseClone
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone
  - name: (
  - name: )
  spec.vb:
  - uid: System.Object.MemberwiseClone
    name: MemberwiseClone
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone
  - name: (
  - name: )
- uid: System.Object.ReferenceEquals(System.Object,System.Object)
  commentId: M:System.Object.ReferenceEquals(System.Object,System.Object)
  parent: System.Object
  isExternal: true
  href: https://learn.microsoft.com/dotnet/api/system.object.referenceequals
  name: ReferenceEquals(object, object)
  nameWithType: object.ReferenceEquals(object, object)
  fullName: object.ReferenceEquals(object, object)
  nameWithType.vb: Object.ReferenceEquals(Object, Object)
  fullName.vb: Object.ReferenceEquals(Object, Object)
  name.vb: ReferenceEquals(Object, Object)
  spec.csharp:
  - uid: System.Object.ReferenceEquals(System.Object,System.Object)
    name: ReferenceEquals
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object.referenceequals
  - name: (
  - uid: System.Object
    name: object
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object
  - name: ','
  - name: " "
  - uid: System.Object
    name: object
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object
  - name: )
  spec.vb:
  - uid: System.Object.ReferenceEquals(System.Object,System.Object)
    name: ReferenceEquals
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object.referenceequals
  - name: (
  - uid: System.Object
    name: Object
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object
  - name: ','
  - name: " "
  - uid: System.Object
    name: Object
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object
  - name: )
- uid: System.Object.ToString
  commentId: M:System.Object.ToString
  parent: System.Object
  isExternal: true
  href: https://learn.microsoft.com/dotnet/api/system.object.tostring
  name: ToString()
  nameWithType: object.ToString()
  fullName: object.ToString()
  nameWithType.vb: Object.ToString()
  fullName.vb: Object.ToString()
  spec.csharp:
  - uid: System.Object.ToString
    name: ToString
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object.tostring
  - name: (
  - name: )
  spec.vb:
  - uid: System.Object.ToString
    name: ToString
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.object.tostring
  - name: (
  - name: )
- uid: System
  commentId: N:System
  isExternal: true
  href: https://learn.microsoft.com/dotnet/api/system
  name: System
  nameWithType: System
  fullName: System
- uid: adas_core.Domain.Utils.CacheKeyInspector.ExtractPatientId*
  commentId: Overload:adas_core.Domain.Utils.CacheKeyInspector.ExtractPatientId
  href: adas_core.Domain.Utils.CacheKeyInspector.html#adas_core_Domain_Utils_CacheKeyInspector_ExtractPatientId_System_String_
  name: ExtractPatientId
  nameWithType: CacheKeyInspector.ExtractPatientId
  fullName: adas_core.Domain.Utils.CacheKeyInspector.ExtractPatientId
- uid: System.String
  commentId: T:System.String
  parent: System
  isExternal: true
  href: https://learn.microsoft.com/dotnet/api/system.string
  name: string
  nameWithType: string
  fullName: string
  nameWithType.vb: String
  fullName.vb: String
  name.vb: String
- uid: adas_core.Domain.Utils.CacheKeyInspector.ExtractGroupedObservationInfo*
  commentId: Overload:adas_core.Domain.Utils.CacheKeyInspector.ExtractGroupedObservationInfo
  href: adas_core.Domain.Utils.CacheKeyInspector.html#adas_core_Domain_Utils_CacheKeyInspector_ExtractGroupedObservationInfo_System_String_
  name: ExtractGroupedObservationInfo
  nameWithType: CacheKeyInspector.ExtractGroupedObservationInfo
  fullName: adas_core.Domain.Utils.CacheKeyInspector.ExtractGroupedObservationInfo
- uid: System.ValueTuple{System.String,System.String}
  commentId: T:System.ValueTuple{System.String,System.String}
  parent: System
  definition: System.ValueTuple`2
  href: https://learn.microsoft.com/dotnet/api/system.string
  name: (string Field, string PatientId)
  nameWithType: (string Field, string PatientId)
  fullName: (string Field, string PatientId)
  nameWithType.vb: (Field As String, PatientId As String)
  fullName.vb: (Field As String, PatientId As String)
  name.vb: (Field As String, PatientId As String)
  spec.csharp:
  - name: (
  - uid: System.String
    name: string
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.string
  - name: " "
  - uid: System.ValueTuple{System.String,System.String}.Field
    name: Field
    href: https://learn.microsoft.com/dotnet/api/system.valuetuple-system.string,system.string-.field
  - name: ','
  - name: " "
  - uid: System.String
    name: string
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.string
  - name: " "
  - uid: System.ValueTuple{System.String,System.String}.PatientId
    name: PatientId
    href: https://learn.microsoft.com/dotnet/api/system.valuetuple-system.string,system.string-.patientid
  - name: )
  spec.vb:
  - name: (
  - uid: System.ValueTuple{System.String,System.String}.Field
    name: Field
    href: https://learn.microsoft.com/dotnet/api/system.valuetuple-system.string,system.string-.field
  - name: " "
  - name: As
  - name: " "
  - uid: System.String
    name: String
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.string
  - name: ','
  - name: " "
  - uid: System.ValueTuple{System.String,System.String}.PatientId
    name: PatientId
    href: https://learn.microsoft.com/dotnet/api/system.valuetuple-system.string,system.string-.patientid
  - name: " "
  - name: As
  - name: " "
  - uid: System.String
    name: String
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.string
  - name: )
- uid: System.ValueTuple`2
  commentId: T:System.ValueTuple`2
  name: (T1, T2)
  nameWithType: (T1, T2)
  fullName: (T1, T2)
  spec.csharp:
  - name: (
  - name: T1
  - name: ','
  - name: " "
  - name: T2
  - name: )
  spec.vb:
  - name: (
  - name: T1
  - name: ','
  - name: " "
  - name: T2
  - name: )
- uid: adas_core.Domain.Utils.CacheKeyInspector.ExtractAppointmentInfo*
  commentId: Overload:adas_core.Domain.Utils.CacheKeyInspector.ExtractAppointmentInfo
  href: adas_core.Domain.Utils.CacheKeyInspector.html#adas_core_Domain_Utils_CacheKeyInspector_ExtractAppointmentInfo_System_String_
  name: ExtractAppointmentInfo
  nameWithType: CacheKeyInspector.ExtractAppointmentInfo
  fullName: adas_core.Domain.Utils.CacheKeyInspector.ExtractAppointmentInfo
- uid: System.ValueTuple{System.String,System.Nullable{System.DateTime}}
  commentId: T:System.ValueTuple{System.String,System.Nullable{System.DateTime}}
  parent: System
  definition: System.ValueTuple`2
  href: https://learn.microsoft.com/dotnet/api/system.string
  name: (string Location, DateTime? Date)
  nameWithType: (string Location, DateTime? Date)
  fullName: (string Location, System.DateTime? Date)
  nameWithType.vb: (Location As String, Date As Date?)
  fullName.vb: (Location As String, Date As Date?)
  name.vb: (Location As String, Date As Date?)
  spec.csharp:
  - name: (
  - uid: System.String
    name: string
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.string
  - name: " "
  - uid: System.ValueTuple{System.String,System.Nullable{System.DateTime}}.Location
    name: Location
    href: https://learn.microsoft.com/dotnet/api/system.valuetuple-system.string,system.nullable-system.datetime--.location
  - name: ','
  - name: " "
  - uid: System.DateTime
    name: DateTime
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.datetime
  - name: '?'
  - name: " "
  - uid: System.ValueTuple{System.String,System.Nullable{System.DateTime}}.Date
    name: Date
    href: https://learn.microsoft.com/dotnet/api/system.valuetuple-system.string,system.nullable-system.datetime--.date
  - name: )
  spec.vb:
  - name: (
  - uid: System.ValueTuple{System.String,System.Nullable{System.DateTime}}.Location
    name: Location
    href: https://learn.microsoft.com/dotnet/api/system.valuetuple-system.string,system.nullable-system.datetime--.location
  - name: " "
  - name: As
  - name: " "
  - uid: System.String
    name: String
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.string
  - name: ','
  - name: " "
  - uid: System.ValueTuple{System.String,System.Nullable{System.DateTime}}.Date
    name: Date
    href: https://learn.microsoft.com/dotnet/api/system.valuetuple-system.string,system.nullable-system.datetime--.date
  - name: " "
  - name: As
  - name: " "
  - uid: System.DateTime
    name: Date
    isExternal: true
    href: https://learn.microsoft.com/dotnet/api/system.datetime
  - name: '?'
  - name: )
