Get-EulandaRegistryCacheEntries #
ÜBERSICHT #
Listet alle populated Subtrees in der Hive-Datei mit FetchedAt, TTL, ExpiresAt, Remaining und Status. Für Ops, Debugging und Tests.
SYNTAX #
Get-EulandaRegistryCacheEntries [[-Conn] <__ComObject>] [[-Udl] <string>] [[-ConnStr] <string>]
[-IncludeValues] [<CommonParameters>]
BESCHREIBUNG #
Läuft rekursiv durch die Hive und findet jeden Subkey, der einen __EULXT_FetchedAt__-Metadatenwert trägt - das sind genau die Populate-Roots. Pro Treffer wird der Pfad (wie in der SQL-Registry), der FetchedAt-Timestamp, die TTL-Stunden, der berechnete ExpiresAt, die Remaining-TimeSpan und ein Status-Text (‘Fresh’ oder ‘Expired’) geliefert.
Der interne _stats-Subkey wird übersprungen. Nur Root-Subtrees mit echten FetchedAt-Markern kommen ins Ergebnis - verschachtelte Unter-Subkeys, die beim Populate mit gezogen wurden, erscheinen nicht als separate Einträge.
Wenn-IncludeValuesgesetzt ist, wird pro Subtree zusätzlich die Liste der Value-Namen (ohne Metadaten) mitgeliefert. Nützlich um zu finden, in welchem Subtree ein bestimmter Wert (z.B.CreditorID) gecachet ist.
Die Funktion arbeitet read-only auf der Hive. Sie löst keine Populate-Operationen aus und ruft keine DB-Queries auf.
PARAMETER #
-Conn #
Type: __ComObject
Offene ADODB.Connection zur Ziel-Datenbank. Alternativ -Udl oder -ConnStr. Wird benötigt, um den DbKey und damit die richtige Hive-Datei zu finden.
-Udl #
Type: string
Pfad zu einer UDL-Datei (Alternative zu Conn).
-ConnStr #
Type: string
OLEDB-ConnectionString (Alternative zu Conn).
-IncludeValues #
Type: switch
Liefert pro Subtree zusätzlich das Feld Values - eine Liste der Value-Namen (ohne Metadaten). Kostet einen zusätzlichen Enum-Durchlauf pro Subtree, daher optional.
AUSGABEN #
[pscustomobject[]] mit Feldern Path, FetchedAt, TtlHours, ExpiresAt,
Remaining (TimeSpan), Status (‘Fresh’|‘Expired’) und optional Values.
BEISPIELE #
# Voller Überblick, kompakt:
Get-EulandaRegistryCacheEntries -Conn $conn | Format-Table
# Nur Subtrees, die CreditorID enthalten:
Get-EulandaRegistryCacheEntries -Conn $conn -IncludeValues |
Where-Object { 'CreditorID' -in $_.Values } |
Select-Object Path, ExpiresAt, Remaining
# Abgelaufene Eintraege finden (sollte eigentlich nicht vorkommen,
# da abgelaufene Subtrees beim nächsten Read neu populated werden):
Get-EulandaRegistryCacheEntries -Conn $conn |
Where-Object Status -eq 'Expired'
HINWEISE #
Nutzt die privaten HiveApi-Helfer (Get-EulRegHiveHandle, Open-EulRegSubKey, Read-EulRegValue, Get-EulRegSubKeyNames). Keine direkte P/Invoke, keine Connection-Owner-Übernahme über das Lifetime-Metadatum hinaus.