Example #1
0
            public SupplierRegistration(IDataSupplier supplier, Type type)
            {
                Supplier          = supplier;
                CanSupplyScoped   = supplier.CanSupplyScoped(type);
                CanSupplyUnscoped = supplier.CanSupplyUnscoped(type);

                var consumer = supplier as IDataConsumer;

                if (consumer != null)
                {
                    var needs = consumer.GetConsumerNeeds();
                    if (needs != null)
                    {
                        if (needs.DataSupplyDependencies != null)
                        {
                            DependencyScore += needs.DataSupplyDependencies.Count;
                        }

                        if (needs.DataSupplierDependencies != null)
                        {
                            DependencyScore += needs.DataSupplierDependencies.Count * 2;
                        }

                        if (needs.DataDependencies != null)
                        {
                            DependencyScore += needs.DataDependencies.Count * 3;
                        }
                    }
                }

                if (CanSupplyScoped && CanSupplyUnscoped)
                {
                    DependencyScore += 1;
                }
            }
Example #2
0
 bool IDataSupplier.CanSupplyUnscoped(Type type)
 {
     return(DataSupplier.CanSupplyUnscoped(type));
 }