NHibernateBoxTransformation <G, GE> CreateNestedTransformer <G, GE>(BoxImporterStrategy strat)
            where G : EntityBoxMap
            where GE : Entity
        {
            var transformer = new NHibernateBoxTransformation <G, GE>(_context, _repoFinder, _log, _tree);

            transformer.ImportStrategy = strat;
            return(transformer);
        }
        public NHibernateBoxTransformation(IDbContext context, RepositoryFinder repoFinder, ILog log,
                                           TaxonomyTree tree, BoxImporterStrategy strategy)
        {
            _context    = context;
            _repoFinder = repoFinder;
            _log        = log;
            _tree       = tree;

            ImportStrategy     = strategy;
            FindExistingEntity = new Func <IRepository <TE>, TE, TE>((r, e) => r.Get(e.Id));
        }