public void AddAuxiliaryAncestorProvider(Type entityTokenType, IAuxiliarySecurityAncestorProvider auxiliarySecurityAncestorProvider, bool flushPersistent) { Dictionary<Type, List<IAuxiliarySecurityAncestorProvider>> providers; if (!flushPersistent) { providers = _auxiliarySecurityAncestorProviders; } else { providers = _flushPersistentAuxiliarySecurityAncestorProviders; } List<IAuxiliarySecurityAncestorProvider> auxiliarySecurityAncestorProviders; if (providers.TryGetValue(entityTokenType, out auxiliarySecurityAncestorProviders) == false) { auxiliarySecurityAncestorProviders = new List<IAuxiliarySecurityAncestorProvider>(); providers.Add(entityTokenType, auxiliarySecurityAncestorProviders); } if (auxiliarySecurityAncestorProviders.Contains(auxiliarySecurityAncestorProvider)) { throw new ArgumentNullException("The given auxiliarySecurityAncestorProvider has already been added with the given entity token"); } auxiliarySecurityAncestorProviders.Add(auxiliarySecurityAncestorProvider); }
public void AddAuxiliaryAncestorProvider(Type entityTokenType, IAuxiliarySecurityAncestorProvider auxiliarySecurityAncestorProvider, bool flushPersistent) { Dictionary <Type, List <IAuxiliarySecurityAncestorProvider> > providers; if (!flushPersistent) { providers = _auxiliarySecurityAncestorProviders; } else { providers = _flushPersistentAuxiliarySecurityAncestorProviders; } List <IAuxiliarySecurityAncestorProvider> auxiliarySecurityAncestorProviders; if (providers.TryGetValue(entityTokenType, out auxiliarySecurityAncestorProviders) == false) { auxiliarySecurityAncestorProviders = new List <IAuxiliarySecurityAncestorProvider>(); providers.Add(entityTokenType, auxiliarySecurityAncestorProviders); } if (auxiliarySecurityAncestorProviders.Contains(auxiliarySecurityAncestorProvider)) { throw new ArgumentNullException("The given auxiliarySecurityAncestorProvider has already been added with the given entity token"); } auxiliarySecurityAncestorProviders.Add(auxiliarySecurityAncestorProvider); }
public void RemoveAuxiliaryAncestorProvider(Type entityTokenType, IAuxiliarySecurityAncestorProvider auxiliarySecurityAncestorProvider) { List <IAuxiliarySecurityAncestorProvider> auxiliarySecurityAncestorProviders; if (_auxiliarySecurityAncestorProviders.TryGetValue(entityTokenType, out auxiliarySecurityAncestorProviders)) { auxiliarySecurityAncestorProviders.Remove(auxiliarySecurityAncestorProvider); } if (_flushPersistentAuxiliarySecurityAncestorProviders.TryGetValue(entityTokenType, out auxiliarySecurityAncestorProviders)) { auxiliarySecurityAncestorProviders.Remove(auxiliarySecurityAncestorProvider); } }
public void AddAuxiliaryAncestorProvider(Type entityTokenType, IAuxiliarySecurityAncestorProvider auxiliarySecurityAncestorProvider, bool flushPersistent) { var providers = !flushPersistent ? _auxiliarySecurityAncestorProviders : _flushPersistentAuxiliarySecurityAncestorProviders; List <IAuxiliarySecurityAncestorProvider> auxiliarySecurityAncestorProviders; if (!providers.TryGetValue(entityTokenType, out auxiliarySecurityAncestorProviders)) { auxiliarySecurityAncestorProviders = new List <IAuxiliarySecurityAncestorProvider>(); providers.Add(entityTokenType, auxiliarySecurityAncestorProviders); } if (auxiliarySecurityAncestorProviders.Contains(auxiliarySecurityAncestorProvider)) { throw new ArgumentException("The given provider has already been added with the given entity token", nameof(auxiliarySecurityAncestorProvider)); } auxiliarySecurityAncestorProviders.Add(auxiliarySecurityAncestorProvider); }
public void RemoveAuxiliaryAncestorProvider(Type entityTokenType, IAuxiliarySecurityAncestorProvider auxiliarySecurityAncestorProvider) { List<IAuxiliarySecurityAncestorProvider> auxiliarySecurityAncestorProviders; if (_auxiliarySecurityAncestorProviders.TryGetValue(entityTokenType, out auxiliarySecurityAncestorProviders)) { auxiliarySecurityAncestorProviders.Remove(auxiliarySecurityAncestorProvider); } if (_flushPersistentAuxiliarySecurityAncestorProviders.TryGetValue(entityTokenType, out auxiliarySecurityAncestorProviders)) { auxiliarySecurityAncestorProviders.Remove(auxiliarySecurityAncestorProvider); } }
/// <summary> /// Providers will get flushed on flushes /// </summary> /// <param name="entityTokenType"></param> /// <param name="auxiliarySecurityAncestorProvider"></param> /// <param name="flushPersistent"></param> public static void AddAuxiliaryAncestorProvider(Type entityTokenType, IAuxiliarySecurityAncestorProvider auxiliarySecurityAncestorProvider, bool flushPersistent) { _implementation.AddAuxiliaryAncestorProvider(entityTokenType, auxiliarySecurityAncestorProvider, flushPersistent); }
/// <summary> /// Providers will get flushed on flushes /// </summary> /// <param name="entityTokenType"></param> /// <param name="auxiliarySecurityAncestorProvider"></param> public static void AddAuxiliaryAncestorProvider(Type entityTokenType, IAuxiliarySecurityAncestorProvider auxiliarySecurityAncestorProvider) { _implementation.AddAuxiliaryAncestorProvider(entityTokenType, auxiliarySecurityAncestorProvider, false); }
// Overload /// <summary> /// </summary> /// <typeparam name="T"></typeparam> /// <param name="auxiliarySecurityAncestorProvider"></param> /// <param name="flushPersistent"></param> public static void AddAuxiliaryAncestorProvider <T>(IAuxiliarySecurityAncestorProvider auxiliarySecurityAncestorProvider, bool flushPersistent) where T : EntityToken { AddAuxiliaryAncestorProvider(typeof(T), auxiliarySecurityAncestorProvider, flushPersistent); }
// Overload /// <summary> /// Providers will get flushed on flushes /// </summary> /// <typeparam name="T"></typeparam> /// <param name="auxiliarySecurityAncestorProvider"></param> public static void AddAuxiliaryAncestorProvider <T>(IAuxiliarySecurityAncestorProvider auxiliarySecurityAncestorProvider) where T : EntityToken { AddAuxiliaryAncestorProvider(typeof(T), auxiliarySecurityAncestorProvider); }