public void Register(IJsonImporter importer)
 {
     if (importer == null)
         throw new ArgumentNullException("importer");
     
     Register(importer.OutputType, importer);
 }
        public void Register(Type type, IJsonImporter importer)
        {
            if (type == null)
                throw new ArgumentNullException("type");

            if (importer == null)
                throw new ArgumentNullException("importer");
            
            _importerByType.Add(type, importer);
        }
        static void Main()
        {
            Database.SetInitializer(new MigrateDatabaseToLatestVersion <SuperheroesUniverseDbContext, Configuration>());
            new SuperheroesUniverseDbContext().Database.Initialize(true);

            IKernel kernel = new StandardKernel();

            kernel.Bind <DbContext>().To <SuperheroesUniverseDbContext>();
            kernel.Bind(typeof(IGenericRepository <>)).To(typeof(GenericRepository <>));
            kernel.Bind <IUnitOfWork>().To <UnitOfWork>();
            kernel.Bind <IJsonImporter>().To <JsonImporter>();

            IJsonImporter jsonImporter = kernel.Get <IJsonImporter>();

            jsonImporter.Import();
        }
 public TestImporterFamily(IJsonImporter importer)
 {
     _importer = importer;
 }