Disco.Services.Interop.ActiveDirectory.ActiveDirectoryGroupCache.TrySecurityIdentifierCache C# (CSharp) Method

TrySecurityIdentifierCache() private method

private TrySecurityIdentifierCache ( System.Security.Principal.SecurityIdentifier SecurityIdentifier ) : DateTime>.Tuple
SecurityIdentifier System.Security.Principal.SecurityIdentifier
return DateTime>.Tuple
        private Tuple<ADGroup, DateTime> TrySecurityIdentifierCache(SecurityIdentifier SecurityIdentifier)
        {
            Tuple<ADGroup, DateTime> groupRecord;
            if (securityIdentifierCache.TryGetValue(SecurityIdentifier, out groupRecord))
            {
                if (groupRecord.Item2 > DateTime.Now)
                    return groupRecord;
                else
                {
                    if (securityIdentifierCache.TryRemove(SecurityIdentifier, out groupRecord))
                        distinguishedNameCache.TryRemove(groupRecord.Item1.DistinguishedName, out groupRecord);
                }
            }
            return null;
        }