API Reference
Class
GroupGraphSnapshot
Represents a reusable in-memory group membership graph snapshot for a selected root set.
Inheritance
- Object
- GroupGraphSnapshot
Constructors
GroupGraphSnapshot(System.DateTimeOffset createdAtUtc, System.Collections.Generic.IReadOnlyDictionary{System.String,ADPlayground.GroupMembershipEntry} rootMemberships, System.Collections.Generic.IReadOnlyDictionary{System.String,ADPlayground.GroupMembershipEntry} flattenedEntries) #Initializes a new instance of the GroupGraphSnapshot class.
Parameters
- createdAtUtc System.DateTimeOffset
- Timestamp when the snapshot was created.
- rootMemberships System.Collections.Generic.IReadOnlyDictionary{System.String,ADPlayground.GroupMembershipEntry}
- Root group memberships keyed by distinguished name.
- flattenedEntries System.Collections.Generic.IReadOnlyDictionary{System.String,ADPlayground.GroupMembershipEntry}
- Flattened membership entries keyed by distinguished name.
Methods
public static async Task<GroupGraphSnapshot> BuildAsync(IEnumerable<String> groupIdentities, Int32 maxParallel = 3, Int32 maxDepth = 256, Int32 maxCacheSize = 10000, CancellationToken cancellationToken = null) #Returns:
Task<GroupGraphSnapshot>Builds a reusable group membership graph snapshot for the provided root identities.
Parameters
- groupIdentities System.Collections.Generic.IEnumerable{System.String}
- Group distinguished names or supported identities.
- maxParallel System.Int32 = 3
- Maximum resolver concurrency.
- maxDepth System.Int32 = 256
- Maximum recursion depth.
- maxCacheSize System.Int32 = 10000
- Maximum resolver cache size (minimum effective value: 10000).
- cancellationToken System.Threading.CancellationToken = null
- Cancellation token.
Returns
Snapshot with root and flattened membership maps.
Inherited Methods
Properties
public DateTimeOffset CreatedAtUtc { get; } #Gets the snapshot creation timestamp in UTC.
public IReadOnlyDictionary<String, GroupMembershipEntry> RootMemberships { get; } #Gets root group memberships keyed by distinguished name.
public IReadOnlyDictionary<String, GroupMembershipEntry> FlattenedEntries { get; } #Gets flattened membership entries keyed by distinguished name.