public IdentityMapOptions GetOptions(Type interfaceType)
        {
            bool skip = DoNotStore.Contains(interfaceType);
            bool storeInfinitely = DoNotExpire.Contains(interfaceType);

            var options = new IdentityMapOptions(skip, storeInfinitely);
            if (!options.IsValid())
            {
                throw new ApplicationException($"Bad identity map options specified for type {interfaceType.Name}");
            }

            return options;
        }
        public IdentityMapOptions GetOptions(Type interfaceType)
        {
            bool skip            = DoNotStore.Contains(interfaceType);
            bool storeInfinitely = DoNotExpire.Contains(interfaceType);

            var options = new IdentityMapOptions(skip, storeInfinitely);

            if (!options.IsValid())
            {
                throw new ApplicationException($"Bad identity map options specified for type {interfaceType.Name}");
            }

            return(options);
        }