예제 #1
0
        private bool HasDependency(Type inType, Type inOnType)
        {
            TypeCache cache        = GetCache(inType, true);
            var       dependencies = cache.Dependencies();

            if (dependencies == null || dependencies.Length == 0)
            {
                return(false);
            }

            return(Array.IndexOf(dependencies, inOnType) >= 0);
        }
예제 #2
0
        private bool HasSatisfiedDependencies(Type inType)
        {
            TypeCache cache        = GetCache(inType, true);
            var       dependencies = cache.Dependencies();

            if (dependencies == null || dependencies.Length == 0)
            {
                return(true);
            }

            TypeCache depCache;

            foreach (var type in dependencies)
            {
                depCache = GetCache(type, false);
                if (depCache == null || !depCache.Has())
                {
                    return(false);
                }
            }

            return(true);
        }