コード例 #1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ProviderBootstrapper"/> class if sufficient configuration information has been supplied by the user.
        /// </summary>
        /// <param name="existingConfig">The existing config.</param>
        /// <param name="frameworkContext"></param>
        /// <remarks></remarks>
        public ProviderBootstrapper(ProviderConfigurationSection existingConfig, IFrameworkContext frameworkContext)
        {
            _existingConfig = existingConfig;
            _frameworkContext = frameworkContext;

        
        }
コード例 #2
0
 protected ReadonlyProviderSetup(ProviderMetadata providerMetadata, IFrameworkContext frameworkContext, AbstractProviderBootstrapper bootstrapper, int priorityOrdinal) 
     : base(providerMetadata, frameworkContext, bootstrapper, priorityOrdinal)
 {
     Mandate.ParameterNotNull(frameworkContext, "frameworkContext");
     Mandate.ParameterNotNull(bootstrapper, "bootstrapper");
     Mandate.ParameterNotNull(providerMetadata, "providerMetadata");
 }
コード例 #3
0
        public ProviderSetup(ProviderUnitFactory unitFactory, ProviderMetadata providerMetadata, IFrameworkContext frameworkContext, AbstractProviderBootstrapper bootstrapper, int priorityOrdinal)
            : base(providerMetadata, frameworkContext, bootstrapper, priorityOrdinal)
        {
            Mandate.ParameterNotNull(unitFactory, "unitFactory");

            UnitFactory = unitFactory;
        }
コード例 #4
0
 public IndexController(IndexConfiguration configuration, IFrameworkContext frameworkContext)
 {
     Configuration = configuration;
     FrameworkContext = frameworkContext;
     _manualResetter = new ManualResetEvent(false);
     Queue = new IndexModificationQueue();
 }
コード例 #5
0
 public EnsureCoreDataTask(IFrameworkContext context, IHiveManager coreManager, IEnumerable<Lazy<Permission, PermissionMetadata>> permissions,
     ISecurityService securityService)
     : base(context, coreManager)
 {
     _permissions = permissions;
     _securityService = securityService;
 }
コード例 #6
0
 /// <summary>
 /// Initializes a new instance of the <see cref="EntityRepositoryFactory"/> class. This constructor is used internally for unit testing where a single session must be used
 /// irrespective of the NHibernate session factory mechanisms.
 /// </summary>
 /// <param name="providerMetadata">The provider metadata.</param>
 /// <param name="revisionRepositoryFactory">The revision repository factory.</param>
 /// <param name="schemaRepositoryFactory">The schema repository factory.</param>
 /// <param name="frameworkContext">The framework context.</param>
 /// <param name="singleProvidedSession">The single provided session.</param>
 /// <param name="leaveSessionOpenOnDispose">if set to <c>true</c> [leave session open on dispose].</param>
 /// <remarks></remarks>
 internal EntityRepositoryFactory(ProviderMetadata providerMetadata, 
     AbstractRevisionRepositoryFactory<TypedEntity> revisionRepositoryFactory, 
     AbstractSchemaRepositoryFactory schemaRepositoryFactory, 
     IFrameworkContext frameworkContext, ISession singleProvidedSession, bool leaveSessionOpenOnDispose)
     : base(providerMetadata, revisionRepositoryFactory, schemaRepositoryFactory, frameworkContext, new DependencyHelper(new NhFactoryHelper(null, singleProvidedSession, leaveSessionOpenOnDispose, false, frameworkContext), providerMetadata))
 {
 }
コード例 #7
0
        /// <summary>
        /// Creates the test data types
        /// </summary>
        public List<DataType> InitDataTypes(IFrameworkContext frameworkContext)
        {
            // much neater :)
            _dataTypes = CoreFakeCmsData.RequiredCoreUserAttributeTypes()
                            .Select(x => frameworkContext.TypeMappers.Map<DataType>(x))
                            .ToList();

            //_dataTypes = new List<DataType>();
            //foreach (var v in CoreCmsData.RequiredCoreUserAttributeTypes())
            //{
            //    var a = frameworkContext.TypeMappers.Map<DataType>(v);
            //    _dataTypes.Add(a);
            //}

            //get the data types from the CoreCmsData
            //var dataTypes = new List<DataType>()
            //        {
            //            frameworkContext.TypeMappers.Map<DataType>(CoreCmsData.RequiredCoreUserAttributeTypes().Single(x => x.Id == new HiveId("rte-pe".EncodeAsGuid()))),
            //            frameworkContext.TypeMappers.Map<DataType>(CoreCmsData.RequiredCoreUserAttributeTypes().Single(x => x.Id == new HiveId("sltb-pe".EncodeAsGuid()))),
            //            frameworkContext.TypeMappers.Map<DataType>(CoreCmsData.RequiredCoreUserAttributeTypes().Single(x => x.Id == new HiveId("csp-pe".EncodeAsGuid()))),
            //            frameworkContext.TypeMappers.Map<DataType>(CoreCmsData.RequiredCoreUserAttributeTypes().Single(x => x.Id == new HiveId("tag-pe".EncodeAsGuid()))),
            //            frameworkContext.TypeMappers.Map<DataType>(CoreCmsData.RequiredCoreUserAttributeTypes().Single(x => x.Id == new HiveId("mltb-pe".EncodeAsGuid()))),
            //            frameworkContext.TypeMappers.Map<DataType>(CoreCmsData.RequiredCoreUserAttributeTypes().Single(x => x.Id == new HiveId("media-picker-pe".EncodeAsGuid()))),
            //            frameworkContext.TypeMappers.Map<DataType>(CoreCmsData.RequiredCoreUserAttributeTypes().Single(x => x.Id == new HiveId("integer-pe".EncodeAsGuid()))),
            //            frameworkContext.TypeMappers.Map<DataType>(CoreCmsData.RequiredCoreUserAttributeTypes().Single(x => x.Id == new HiveId("uploader-pe".EncodeAsGuid())))
            //        };

            //_dataTypes = dataTypes;
            LogHelper.Error<UmbracoXmlImportHelper>(String.Format("There were {0} data types found", _dataTypes.Count), new Exception());
            return _dataTypes;
        }
コード例 #8
0
        //public EntityRepositoryFactory(ProviderMetadata providerMetadata, 
        //    ProviderRevisionSessionFactory<TypedEntity> revisionRepositoryFactory, 
        //    ProviderSchemaSessionFactory schemaRepositoryFactory,
        //    IFrameworkContext frameworkContext, global::NHibernate.Cfg.Configuration nhConfig)
        //    : base(providerMetadata, revisionRepositoryFactory, schemaRepositoryFactory, frameworkContext)
        //{
        //    Helper = new NhFactoryHelper(nhConfig, null, false, false, frameworkContext);
        //}

        public EntityRepositoryFactory(ProviderMetadata providerMetadata,
            AbstractRevisionRepositoryFactory<TypedEntity> revisionRepositoryFactory,
            AbstractSchemaRepositoryFactory schemaRepositoryFactory,
            IFrameworkContext frameworkContext, ProviderDependencyHelper dependencyHelper)
            : base(providerMetadata, revisionRepositoryFactory, schemaRepositoryFactory, frameworkContext, dependencyHelper)
        {
        }
コード例 #9
0
 internal EntityRepositoryFactory(ProviderMetadata providerMetadata,
     AbstractRevisionRepositoryFactory<TypedEntity> revisionRepositoryFactory,
     AbstractSchemaRepositoryFactory schemaRepositoryFactory, Settings settings,
     IFrameworkContext frameworkContext)
     : base(providerMetadata, revisionRepositoryFactory, schemaRepositoryFactory, frameworkContext, new DependencyHelper(settings, providerMetadata))
 {
 }
コード例 #10
0
 public AbstractProviderSetup(ProviderMetadata providerMetadata, IFrameworkContext frameworkContext, AbstractProviderBootstrapper bootstrapper, int priorityOrdinal)
 {
     ProviderMetadata = providerMetadata;
     FrameworkContext = frameworkContext;
     Bootstrapper = bootstrapper;
     PriorityOrdinal = priorityOrdinal;
 }
コード例 #11
0
 public NhFactoryHelper(Configuration config, ISession singleProvidedSession, bool leaveSessionOpenOnDispose, bool isSingleSessionFinalized, IFrameworkContext frameworkContext)
 {
     Config = config;
     SingleProvidedSession = singleProvidedSession;
     LeaveSessionOpenOnDispose = leaveSessionOpenOnDispose;
     IsSingleSessionFinalized = isSingleSessionFinalized;
     FrameworkContext = frameworkContext;
 }
コード例 #12
0
 /// <summary>
 /// Constructor used for testing
 /// </summary>
 /// <param name="providerMetadata"></param>
 /// <param name="revisionRepositoryFactory"></param>
 /// <param name="frameworkContext"></param>
 /// <param name="helper"></param>
 internal SchemaRepositoryFactory(
     ProviderMetadata providerMetadata,
     AbstractRevisionRepositoryFactory<EntitySchema> revisionRepositoryFactory,
     IFrameworkContext frameworkContext,
     ExamineHelper helper)
     : base(providerMetadata, revisionRepositoryFactory, frameworkContext, new DependencyHelper(helper, providerMetadata))
 {
 }
コード例 #13
0
 public DataContext(IHiveProvider hiveProvider, string supportedExtensions, string rootPath, string applicationRelativeRoot, string excludeExtensions)
     : base(hiveProvider)
 {
     _frameworkContext = hiveProvider.FrameworkContext;
     _supportedExtensions = supportedExtensions;
     _rootPath = rootPath;
     _applicationRelativeRoot = applicationRelativeRoot;
     _excludeExtensions = excludeExtensions;
 }
コード例 #14
0
 public DevDatasetInstallTask(
     IFrameworkContext frameworkContext,
     IPropertyEditorFactory propertyEditorFactory,
     IHiveManager hiveManager,
     IAttributeTypeRegistry attributeTypeRegistry)
     : base(frameworkContext, hiveManager)
 {
     _devDataSet = new DevDataset(propertyEditorFactory, frameworkContext, attributeTypeRegistry);
 }
コード例 #15
0
        protected AbstractProviderRepository(ProviderMetadata providerMetadata, IFrameworkContext frameworkContext)
        {
            CanRead = true;
            ProviderMetadata = providerMetadata;
            FrameworkContext = frameworkContext;
            RepositoryScopedCache = new DictionaryScopedCache();

            //HiveContext = new RepositoryContext(RuntimeCacheProvider.Default, PerHttpRequestCacheProvider.Default, frameworkContext);
        }
コード例 #16
0
        public PublicAccessService(IHiveManager hive, IMembershipService<Member> membersMembershipService,
            IFrameworkContext framework)
        {
            Mandate.That<NullReferenceException>(hive != null);
            Mandate.That<NullReferenceException>(membersMembershipService != null);

            _hive = hive;
            _members = membersMembershipService;
            _framework = framework;
        }
コード例 #17
0
 public ProviderMappingGroup(string key,
     WildcardUriMatch singleMatch,
     ReadonlyProviderSetup singleReader,
     ProviderSetup singleWriter,
     IFrameworkContext frameworkContext)
     : this(key, Enumerable.Repeat(singleMatch, 1), Enumerable.Repeat(singleReader, 1), Enumerable.Repeat(singleWriter, 1), frameworkContext)
 {
     Mandate.ParameterNotNull(singleReader, "singleReader");
     Mandate.ParameterNotNull(singleWriter, "singleWriter");
 }
コード例 #18
0
        //public SchemaRepositoryFactory MembershipSchemaRepositoryFactory { get { return base.SchemaRepositoryFactory as SchemaRepositoryFactory; } }

        /// <summary>
        /// Internal constructor for testing
        /// </summary>
        /// <param name="providerMetadata"></param>
        /// <param name="revisionRepositoryFactory"></param>
        /// <param name="schemaRepositoryFactory"></param>
        /// <param name="frameworkContext"></param>
        /// <param name="membershipProviders"></param>
        /// <param name="configuredProviders"></param>
        internal EntityRepositoryFactory(
            ProviderMetadata providerMetadata,
            AbstractRevisionRepositoryFactory<TypedEntity> revisionRepositoryFactory,
            AbstractSchemaRepositoryFactory schemaRepositoryFactory,
            IFrameworkContext frameworkContext,
            Lazy<IEnumerable<MembershipProvider>> membershipProviders,
            IEnumerable<ProviderElement> configuredProviders)
            : base(providerMetadata, revisionRepositoryFactory, schemaRepositoryFactory, frameworkContext, new DependencyHelper(configuredProviders, membershipProviders, providerMetadata))
        {
        }
コード例 #19
0
        public DevDataset(IPropertyEditorFactory propertyEditorFactory, IFrameworkContext frameworkContext, IAttributeTypeRegistry attributeTypeRegistry)
        {
            _frameworkContext = frameworkContext;
            _attributeTypeRegistry = attributeTypeRegistry;
            PropertyEditorFactory = propertyEditorFactory;
            InitCreators();
            InitDataTypes();
            InitTemplates();
            InitDocTypes();
            _nodeData = XDocument.Parse(Files.umbraco);

        }
コード例 #20
0
        /// <summary>
        /// Initializes a new instance of the <see cref="T:System.Object"/> class.
        /// </summary>
        public MapResolverContext(
            IFrameworkContext frameworkContext,
            IHiveManager hive, 
            IPropertyEditorFactory propertyEditorFactory,
            IParameterEditorFactory parameterEditorFactory)
        {
            ApplicationId = Guid.NewGuid();
            FrameworkContext = frameworkContext;
            Hive = hive;

            PropertyEditorFactory = propertyEditorFactory;
            ParameterEditorFactory = parameterEditorFactory;
        }
コード例 #21
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ProviderBootstrapper"/> class if sufficient configuration information has been supplied by the user.
        /// </summary>
        /// <param name="existingConfig">The existing config.</param>
        /// <param name="examineManager"></param>
        /// <param name="frameworkContext"></param>
        /// <remarks></remarks>
        public ProviderBootstrapper(ProviderConfigurationSection existingConfig, ExamineManager examineManager, IFrameworkContext frameworkContext)
        {
            _existingConfig = existingConfig;
            _examineManager = examineManager;
            _frameworkContext = frameworkContext;

            //bind to all of the Examine events
            foreach (var i in _examineManager.IndexProviderCollection.OfType<BaseIndexProvider>())
            {
                i.IndexingError += (sender, e) => LogHelper.Error<Exception>("[Examine] " + e.Message, e.InnerException);
                i.IndexDeleted += (sender, e) => LogHelper.TraceIfEnabled<ExamineManager>("[Examine] Item {0} has been removed from the index", () => e.DeletedTerm.Value);
                i.NodeIndexed += (sender, e) => LogHelper.TraceIfEnabled<ExamineManager>("[Examine] Item {0} has been indexed", () => e.Item.Id);
            }
        }
コード例 #22
0
        public NHibernateInMemoryRepository(IFrameworkContext fakeFrameworkContext, ISessionFactory sessionFactory = null, ISession sessionForTest = null)
        {
            using (DisposableTimer.TraceDuration<NHibernateInMemoryRepository>("Start setup", "End setup"))
            {
                if (sessionFactory == null && sessionForTest == null)
                {
                    var builder = new NHibernateConfigBuilder("data source=:memory:", "unit-tester",
                                                              SupportedNHDrivers.SqlLite, "thread_static", false);
                    var config = builder.BuildConfiguration();
                    _sessionFactory = config.BuildSessionFactory();
                    SessionForTest = _sessionFactory.OpenSession();

                    // See http://stackoverflow.com/questions/4325800/testing-nhibernate-with-sqlite-no-such-table-schema-is-generated
                    // and also http://nhforge.org/doc/nh/en/index.html#architecture-current-session
                    // regarding contextual sessions and GetCurrentSession()

                    // We pass in our own TextWriter because a bug in VS's testing framework means directly passing in Console.Out causes an ObjectDisposedException
                    new SchemaExport(config).Execute(false, true, false, SessionForTest.Connection, _schemaWriter);
                }
                else
                {
                    _sessionFactory = sessionFactory;
                    SessionForTest = sessionForTest;
                }

                _dataContextFactory = new DataContextFactory(fakeFrameworkContext, SessionForTest, true);

                // Create reader
                ReadOnlyUnitOfWorkFactory = new ReadOnlyUnitOfWorkFactory();
                _hiveReadProvider = new HiveReadProvider(new HiveProviderSetup(fakeFrameworkContext, "r-unit-tester", new FakeHiveProviderBootstrapper(), ReadOnlyUnitOfWorkFactory, null, _dataContextFactory));

                // Create writer
                ReadWriteUnitOfWorkFactory = new ReadWriteUnitOfWorkFactory();
                _writeProvider = new HiveReadWriteProvider(new HiveProviderSetup(fakeFrameworkContext, "rw-unit-tester", new FakeHiveProviderBootstrapper(), ReadOnlyUnitOfWorkFactory, ReadWriteUnitOfWorkFactory, _dataContextFactory));

                //setup nhibernate mappers
                var manualMapper = new ManualMapper(new NhLookupHelper(_dataContextFactory), _writeProvider);
                fakeFrameworkContext.TypeMappers.Add(new Lazy<AbstractTypeMapper, TypeMapperMetadata>(() => manualMapper, new TypeMapperMetadata(true)));


                // Create hive wrappers for the readers and writers
                var governorRUowFactory = new ReadOnlyUnitOfWorkFactoryWrapper(new[] { _hiveReadProvider });

                var governorRWUowFactory = new ReadWriteUnitOfWorkFactoryWrapper(new[] { _writeProvider });

                _hiveReadProviderViaGovernor = new Framework.Hive.PersistenceGovernor.HiveReadProvider(new HiveProviderSetup(fakeFrameworkContext, "r-unit-wrapper", new FakeHiveProviderBootstrapper(), governorRUowFactory, null, null), new[] { _hiveReadProvider });
                _hiveReadWriteProviderViaGovernor = new Framework.Hive.PersistenceGovernor.HiveReadWriteProvider(new HiveProviderSetup(fakeFrameworkContext, "rw-unit-wrapper", new FakeHiveProviderBootstrapper(), governorRUowFactory, governorRWUowFactory, null), new[] { _writeProvider });
            }
        }
コード例 #23
0
        public PugpigDataset(IPropertyEditorFactory propertyEditorFactory, IFrameworkContext frameworkContext, IAttributeTypeRegistry attributeTypeRegistry)
        {
            _frameworkContext = frameworkContext;
            PropertyEditorFactory = propertyEditorFactory;
            //InitCreators();

            // Anthony's code
            var helper = new UmbracoXmlImportHelper(attributeTypeRegistry, propertyEditorFactory);
            _templates = helper.InitTemplates();
            _dataTypes = helper.InitDataTypes(_frameworkContext);
            _docTypes = helper.InitDocTypes();

            // get content node xml
            _nodeData = XDocument.Parse(Files.umbraco);
        }
コード例 #24
0
        public UmbracoApplicationContext(
            //ICmsHiveManager hive, 
            //HiveManager hive, 
            UmbracoSettings settings, 
            IFrameworkContext frameworkContext,
            ISecurityService securityService)
        {
            //Hive = hive;
            Settings = settings;
            FrameworkContext = frameworkContext;
            Security = securityService;
            //Hive2 = hive2;
            //Hive2 = DependencyResolver.Current.GetService<HiveManager>();

            //TODO: Use this cache mechanism! But in order to do so , we need triggers working from Hive providers, currently they are not setup

            //clear our status cache when any hive install status changes
            frameworkContext.TaskManager.AddDelegateTask(
                TaskTriggers.Hive.InstallStatusChanged, 
                x => _installStatuses = null);
        }
コード例 #25
0
        public static ProviderMappingGroup GenerateProviderGroup(int numberOfProviders, int numberOfPassthroughProviders, int numberOfMockedEntities, IFrameworkContext frameworkContext)
        {
            Func<int, bool, IEnumerable<Tuple<ProviderSetup, ReadonlyProviderSetup>>> generate = (count, isPassthrough) =>
                {
                    var generateProviders = new List<Tuple<ProviderSetup, ReadonlyProviderSetup>>();
                    for (int i = 0; i < count; i++)
                    {
                        var mockKey = "test" + (isPassthrough ? "_passthrough" : String.Empty) + i;
                        var metadata = new ProviderMetadata(mockKey, new Uri("content://"), true, isPassthrough);
                        var factory = MockEntityRepositoryFactory(numberOfMockedEntities, metadata, frameworkContext);
                        var setup = new ProviderSetup(new ProviderUnitFactory(factory), metadata, frameworkContext, null, 0);
                        var readonlySetup = new ReadonlyProviderSetup(new ReadonlyProviderUnitFactory(factory), metadata, frameworkContext, null, 0);
                        generateProviders.Add(new Tuple<ProviderSetup, ReadonlyProviderSetup>(setup, readonlySetup));
                    }
                    return generateProviders;
                };

            var uris = new[] { "content://boots/", "content://bags/", "content://shoes/" };
            var uriMatches = EnumerableExtensions.Range(count => new WildcardUriMatch(new Uri(uris[count])), 3);
            var injectMockedProviders = generate.Invoke(numberOfProviders, false)
                .Concat(generate.Invoke(numberOfPassthroughProviders, true));
            return new ProviderMappingGroup("test", uriMatches, injectMockedProviders.Select(x => x.Item2), injectMockedProviders.Select(x => x.Item1), new FakeFrameworkContext());
        }
コード例 #26
0
        public ProviderMappingGroup(string key,
            IEnumerable<WildcardUriMatch> matches,
            IEnumerable<ReadonlyProviderSetup> readers,
            IEnumerable<ProviderSetup> writers,
            IFrameworkContext frameworkContext)
        {
            Mandate.ParameterNotNullOrEmpty(key, "key");
            Mandate.ParameterNotNull(readers, "readers");
            Mandate.ParameterNotNull(writers, "writers");
            var readerCount = readers.Count();
            var writerCount = writers.Count();
            Mandate.That(readerCount > 0 || writerCount > 0,
                x => new ArgumentOutOfRangeException("readers / writers",
                    "ProviderMappingGroup '{0}' must be supplied with at least one reader or writer. Given Readers: {1}, Writers: {2}"
                    .InvariantFormat(key, readerCount, writerCount)));

            Mandate.ParameterNotNull(frameworkContext, "frameworkContext");

            Key = key;
            FrameworkContext = frameworkContext;
            WildcardUriMatches = matches;
            Readers = readers;
            Writers = writers;
        }
コード例 #27
0
 public EntityRepository(ProviderMetadata providerMetadata, IProviderTransaction providerTransaction, IFrameworkContext frameworkContext, DependencyHelper helper)
     : base(providerMetadata, providerTransaction, frameworkContext)
 {
     _helper = helper;
 }
コード例 #28
0
 internal HiveManager(ProviderMappingGroup singleProvider, IFrameworkContext frameworkContext)
     : this(Enumerable.Repeat(singleProvider, 1), frameworkContext)
 {
 }
コード例 #29
0
 protected AbstractReadonlySchemaRepository(ProviderMetadata providerMetadata, AbstractReadonlyRevisionRepository <EntitySchema> revisions, IFrameworkContext frameworkContext)
     : base(providerMetadata, frameworkContext)
 {
     Revisions = revisions;
     EntitiesAddedOrUpdated = new HashSet <AbstractSchemaPart>();
 }
コード例 #30
0
        /// <summary>
        /// TEMPORARY method to install all data required for dev data set excluding all of the core data
        /// </summary>
        /// <param name="manager"></param>
        /// <param name="framework"></param>
        internal void InstallDevDataset(IHiveManager manager, IFrameworkContext framework)
        {
            //a list of all the schemas we've added
            var schemas = new List <EntitySchema>();

            using (var writer = manager.OpenWriter <IContentStore>())
            {
                //create all of the document type's and their associated tabs first
                //foreach (var d in _devDataSet.ContentData.Select(x => x.DocumentType).DistinctBy(x => x.Id))
                foreach (var d in DocTypes)
                {
                    var schema = new EntitySchema(d.Alias, d.Name);
                    schema.Id = d.Id;
                    schema.AttributeGroups.AddRange(
                        framework.TypeMappers.Map <IEnumerable <Tab>, IEnumerable <AttributeGroup> >(
                            d.DefinedTabs));
                    writer.Repositories.Schemas.AddOrUpdate(schema);
                    schemas.Add(schema);

                    foreach (var parentId in d.InheritFrom.Where(x => x.Selected).Select(x => HiveId.Parse(x.Value)))
                    {
                        writer.Repositories.AddRelation(new Relation(FixedRelationTypes.DefaultRelationType, parentId, d.Id));
                    }
                }
                writer.Complete();
            }

            using (var writer = manager.OpenWriter <IContentStore>())
            {
                //now we can hopefully just map the schema and re-save it so it maps all properties
                //foreach (var d in _devDataSet.ContentData.Select(x => x.DocumentType).DistinctBy(x => x.Id))
                foreach (var d in DocTypes)
                {
                    var schema = framework.TypeMappers.Map <DocumentTypeEditorModel, EntitySchema>(d);
                    writer.Repositories.Schemas.AddOrUpdate(schema);
                }
                writer.Complete();
            }

            using (var writer = manager.OpenWriter <IContentStore>())
            {
                //now just map the entire content entities and persist them, since the attribution definitions and attribution
                //groups are created these should just map up to the entities in the database.

                var mappedCollection = framework
                                       .TypeMappers.Map <IEnumerable <ContentEditorModel>, IEnumerable <Revision <TypedEntity> > >(ContentData)
                                       .ToArray();
                mappedCollection.ForEach(x => x.MetaData.StatusType = FixedStatusTypes.Published);

                //var allAttribTypes = AllAttribTypes(mappedCollection);

                writer.Repositories.Revisions.AddOrUpdate(mappedCollection);

                writer.Complete();
            }

            ////now that the data is in there, we need to setup some structure... probably a nicer way to do this but whatevs... its just for testing
            //using (var writer = mappingGroup.CreateReadWriteUnitOfWork())
            //{
            //    var homeSchema = writer.ReadWriteRepository.GetEntity<EntitySchema>(HiveId.ConvertIntToGuid(1045));
            //    var contentSchema = writer.ReadWriteRepository.GetEntity<EntitySchema>(HiveId.ConvertIntToGuid(1045));
            //    var faqContainerSchema = writer.ReadWriteRepository.GetEntity<EntitySchema>(HiveId.ConvertIntToGuid(1055));
            //    var faqCatSchema = writer.ReadWriteRepository.GetEntity<EntitySchema>(HiveId.ConvertIntToGuid(1056));
            //    var faqSchema = writer.ReadWriteRepository.GetEntity<EntitySchema>(HiveId.ConvertIntToGuid(1057));

            //}
        }
コード例 #31
0
 public RevisionRepositoryFactory(ProviderMetadata providerMetadata, IFrameworkContext frameworkContext, ProviderDependencyHelper dependencyHelper)
     : base(providerMetadata, frameworkContext, dependencyHelper)
 {
 }
コード例 #32
0
        public GroupUnit(IEnumerable <ProviderUnit> providerUnits, Uri idRoot, AbstractScopedCache scopedCache, bool canDisposeCache, IFrameworkContext frameworkContext, RepositoryContext hiveContext)
        {
            // Only check that providerUnits is not null, it's OK if it's empty - might be a group unit for a group that can't do anything :)
            Mandate.ParameterNotNull(providerUnits, "providerUnits");
            Mandate.ParameterNotNull(idRoot, "idRoot");
            Mandate.ParameterNotNull(scopedCache, "scopedCache");

            ProviderUnits = providerUnits;
            IdRoot        = idRoot;

            _canDisposeCache = canDisposeCache;
            UnitScopedCache  = scopedCache;

            FrameworkContext = frameworkContext ?? providerUnits.First().EntityRepository.FrameworkContext;

            WasAbandoned = false;

            var enumerable         = ProviderUnits.ToArray();
            var entityRepositories = enumerable.Select(y =>
            {
                y.EntityRepository.HiveContext = hiveContext;
                return(y.EntityRepository);
            }).ToList();

            var providerEntityRevisionRepositories = enumerable.Select(y =>
            {
                y.EntityRepository.Revisions.HiveContext = hiveContext;
                return(y.EntityRepository.Revisions);
            }).ToList();

            var schemaRepositories = enumerable.Select(y =>
            {
                y.EntityRepository.Schemas.HiveContext = hiveContext;
                return(y.EntityRepository.Schemas);
            }).ToList();

            var providerSchemaRevisionRepositories = enumerable.Select(y =>
            {
                y.EntityRepository.Schemas.Revisions.HiveContext = hiveContext;
                return(y.EntityRepository.Schemas.Revisions);
            }).ToList();

            _entityRepository = new EntityRepositoryGroup <TFilter>(entityRepositories,
                                                                    providerEntityRevisionRepositories,
                                                                    schemaRepositories,
                                                                    providerSchemaRevisionRepositories,
                                                                    IdRoot,
                                                                    UnitScopedCache,
                                                                    FrameworkContext,
                                                                    hiveContext);
        }
コード例 #33
0
 protected AbstractReadonlyRevisionRepositoryFactory(ProviderMetadata providerMetadata, IFrameworkContext frameworkContext, ProviderDependencyHelper dependencyHelper)
     : base(providerMetadata, frameworkContext, dependencyHelper)
 {
 }
コード例 #34
0
 public SchemaRepositoryFactory(ProviderMetadata providerMetadata, AbstractRevisionRepositoryFactory <EntitySchema> revisionRepositoryFactory, IFrameworkContext frameworkContext, ProviderDependencyHelper dependencyHelper) : base(providerMetadata, revisionRepositoryFactory, frameworkContext, dependencyHelper)
 {
 }
コード例 #35
0
 protected AbstractFluentMappingEngine(IFrameworkContext frameworkContext)
 {
     FrameworkContext = frameworkContext;
 }
コード例 #36
0
        public static AbstractEntityRepositoryFactory MockEntityRepositoryFactory(int allItemCount, ProviderMetadata metadata, IFrameworkContext frameworkContext)
        {
            var entitySession = Substitute.For <AbstractEntityRepository>(metadata, new TransactionMock(), frameworkContext);

            entitySession.CanReadRelations.Returns(true);
            entitySession.CanWriteRelations.Returns(true);

            entitySession
            .PerformGet <TypedEntity>(Arg.Any <bool>(), Arg.Any <HiveId[]>())
            .Returns(x => EnumerableExtensions.Range(count => HiveModelCreationHelper.MockTypedEntity(HiveId.ConvertIntToGuid(count + 1)), 3));

            entitySession
            .PerformGetAll <TypedEntity>()
            .Returns(x => EnumerableExtensions.Range(count => HiveModelCreationHelper.MockTypedEntity(HiveId.ConvertIntToGuid(count + 5)), allItemCount));

            entitySession
            .PerformGetAncestorRelations(Arg.Any <HiveId>(), Arg.Any <RelationType>())
            .Returns(MockRelations(MockRelationCount));

            entitySession
            .PerformGetDescendentRelations(Arg.Any <HiveId>(), Arg.Any <RelationType>())
            .Returns(MockRelations(MockRelationCount));

            entitySession
            .PerformGetParentRelations(Arg.Any <HiveId>(), Arg.Any <RelationType>())
            .Returns(MockRelations(MockRelationCount));

            entitySession
            .PerformGetChildRelations(Arg.Any <HiveId>(), Arg.Any <RelationType>())
            .Returns(MockRelations(MockRelationCount));

            var factory = Substitute.For <AbstractEntityRepositoryFactory>(null, null, null, frameworkContext, null);

            factory.GetRepository().Returns(entitySession);
            return(factory);
        }
コード例 #37
0
        public static ProviderMappingGroup GenerateProviderGroup(int numberOfProviders, int numberOfPassthroughProviders, int numberOfMockedEntities, IFrameworkContext frameworkContext)
        {
            Func <int, bool, IEnumerable <Tuple <ProviderSetup, ReadonlyProviderSetup> > > generate = (count, isPassthrough) =>
            {
                var generateProviders = new List <Tuple <ProviderSetup, ReadonlyProviderSetup> >();
                for (int i = 0; i < count; i++)
                {
                    var mockKey       = "test" + (isPassthrough ? "_passthrough" : String.Empty) + i;
                    var metadata      = new ProviderMetadata(mockKey, new Uri("content://"), true, isPassthrough);
                    var factory       = MockEntityRepositoryFactory(numberOfMockedEntities, metadata, frameworkContext);
                    var setup         = new ProviderSetup(new ProviderUnitFactory(factory), metadata, frameworkContext, null, 0);
                    var readonlySetup = new ReadonlyProviderSetup(new ReadonlyProviderUnitFactory(factory), metadata, frameworkContext, null, 0);
                    generateProviders.Add(new Tuple <ProviderSetup, ReadonlyProviderSetup>(setup, readonlySetup));
                }
                return(generateProviders);
            };

            var uris                  = new[] { "content://boots/", "content://bags/", "content://shoes/" };
            var uriMatches            = EnumerableExtensions.Range(count => new WildcardUriMatch(new Uri(uris[count])), 3);
            var injectMockedProviders = generate.Invoke(numberOfProviders, false)
                                        .Concat(generate.Invoke(numberOfPassthroughProviders, true));

            return(new ProviderMappingGroup("test", uriMatches, injectMockedProviders.Select(x => x.Item2), injectMockedProviders.Select(x => x.Item1), new FakeFrameworkContext()));
        }
コード例 #38
0
 protected ProviderInstallTask(IFrameworkContext context) : base(context)
 {
 }
コード例 #39
0
 public HiveManager(IEnumerable <ProviderMappingGroup> providerGroups, HiveCounterManager perfCounterManager, IFrameworkContext frameworkContext)
     : this(providerGroups, frameworkContext)
 {
     PerfCounterManager = perfCounterManager;
 }
コード例 #40
0
 public HiveManager(IEnumerable <ProviderMappingGroup> providerGroups, IFrameworkContext frameworkContext)
     : this()
 {
     ProviderGroups   = providerGroups;
     FrameworkContext = frameworkContext;
 }
コード例 #41
0
 public ExamineModelMapper(ExamineHelper helper, IFrameworkContext frameworkContext)
     : base(frameworkContext)
 {
     _helper = helper;
 }
コード例 #42
0
 protected AbstractSchemaRepository(ProviderMetadata providerMetadata, AbstractRevisionRepository <EntitySchema> revisions, IProviderTransaction providerTransaction, IFrameworkContext frameworkContext)
     : base(providerMetadata, revisions, frameworkContext)
 {
     CanWrite    = true;
     Transaction = providerTransaction;
     Revisions   = revisions;
     Revisions.RelatedEntitiesLoader = x => ProviderRepositoryHelper.CreateRelationLazyLoadDelegate(this, x).Invoke(x);
 }
コード例 #43
0
 protected AbstractRevisionRepository(ProviderMetadata providerMetadata, IProviderTransaction providerTransaction, IFrameworkContext frameworkContext)
     : base(providerMetadata, frameworkContext)
 {
     CanWrite    = true;
     Transaction = providerTransaction;
     RevisionDataAddedOrUpdated = new HashSet <RevisionData>();
     EntityDataAddedOrUpdated   = new HashSet <T>();
 }
コード例 #44
0
 internal RevisionRepositoryFactory(ProviderMetadata providerMetadata, IFrameworkContext frameworkContext, ISession singleProvidedSession, bool leaveSessionOpenOnDispose)
     : base(providerMetadata, frameworkContext, new DependencyHelper(new NhFactoryHelper(null, singleProvidedSession, leaveSessionOpenOnDispose, false, frameworkContext), providerMetadata))
 {
 }
コード例 #45
0
 public UninstalledReadonlyProviderSetup(ProviderMetadata providerMetadata, IFrameworkContext frameworkContext, AbstractProviderBootstrapper bootstrapper, int priorityOrdinal)
     : base(providerMetadata, frameworkContext, bootstrapper, priorityOrdinal)
 {
 }
コード例 #46
0
 /// <summary>
 /// Initializes a new instance of the <see cref="T:System.EventArgs"/> class.
 /// </summary>
 public TaskEventArgs(IFrameworkContext frameworkContext, EventArgs callerEventArgs)
 {
     FrameworkContext = frameworkContext;
     CallerEventArgs  = callerEventArgs;
 }
コード例 #47
0
 public ReadonlyProviderSetup(ReadonlyProviderUnitFactory unitFactory, ProviderMetadata providerMetadata, IFrameworkContext frameworkContext, AbstractProviderBootstrapper bootstrapper, int priorityOrdinal)
     : base(providerMetadata, frameworkContext, bootstrapper, priorityOrdinal)
 {
     ReadonlyUnitFactory = unitFactory;
 }
コード例 #48
0
 public NullProviderSchemaRepositoryFactory(ProviderMetadata providerMetadata, AbstractRevisionRepositoryFactory<EntitySchema> revisionRepositoryFactory, IFrameworkContext frameworkContext) 
     : base(providerMetadata, revisionRepositoryFactory, frameworkContext, new NullProviderDependencyHelper(providerMetadata))
 {
 }
コード例 #49
0
 public MembershipWrapperModelMapper(IAttributeTypeRegistry attributeTypeRegistry, IFrameworkContext frameworkContext)
     : base(frameworkContext)
 {
     _attributeTypeRegistry = attributeTypeRegistry;
 }
コード例 #50
0
 public GroupUnitFactory(IEnumerable <ProviderSetup> providers, Uri idRoot, RepositoryContext hiveContext, IFrameworkContext frameworkContext)
     : base(providers, idRoot, hiveContext, frameworkContext)
 {
 }
コード例 #51
0
 protected AbstractSchemaRepository(ProviderMetadata providerMetadata, IProviderTransaction providerTransaction, IFrameworkContext frameworkContext)
     : this(providerMetadata, new NullProviderRevisionRepository <EntitySchema>(providerMetadata, frameworkContext), providerTransaction, frameworkContext)
 {
     Transaction = providerTransaction;
 }
コード例 #52
0
 public NullProviderRevisionRepositoryFactory(ProviderMetadata providerMetadata, IFrameworkContext frameworkContext)
     : base(providerMetadata, frameworkContext, new NullProviderDependencyHelper(providerMetadata))
 {
 }
コード例 #53
0
 public static RepositoryContext CreateFakeRepositoryContext(IFrameworkContext frameworkContext)
 {
     return(new RepositoryContext(new NullCachingProvider(), new NullCachingProvider(), frameworkContext));
 }
コード例 #54
0
 protected AbstractSchemaRepository(ProviderMetadata providerMetadata, IFrameworkContext frameworkContext)
     : this(providerMetadata, new NullProviderTransaction(), frameworkContext)
 {
 }
コード例 #55
0
ファイル: AbstractTask.cs プロジェクト: RebelCMS/rebelcmsxu5
 protected AbstractTask(IFrameworkContext context)
 {
     Context = context;
 }
コード例 #56
0
 public EntityRepository(ProviderMetadata providerMetadata, AbstractSchemaRepository schemas, IFrameworkContext frameworkContext, DependencyHelper helper)
     : base(providerMetadata, schemas, frameworkContext)
 {
     _helper = helper;
 }
コード例 #57
0
 public NullProviderSchemaRepositoryFactory(ProviderMetadata providerMetadata, IFrameworkContext frameworkContext)
     : this(providerMetadata, new NullProviderRevisionRepositoryFactory<EntitySchema>(providerMetadata, frameworkContext), frameworkContext)
 {
     
 }
コード例 #58
0
 public EntityRepository(ProviderMetadata providerMetadata, IProviderTransaction providerTransaction, AbstractRevisionRepository <TypedEntity> revisions, AbstractSchemaRepository schemas, IFrameworkContext frameworkContext, DependencyHelper helper)
     : base(providerMetadata, providerTransaction, revisions, schemas, frameworkContext)
 {
     _helper = helper;
 }
コード例 #59
0
 /// <summary>
 /// Initializes a new instance of the <see cref="T:System.EventArgs"/> class.
 /// </summary>
 public TaskEventArgs(IFrameworkContext frameworkContext, EventArgs callerEventArgs)
 {
     FrameworkContext = frameworkContext;
     CallerEventArgs = callerEventArgs;
 }
コード例 #60
0
 protected AbstractReadonlySchemaRepository(ProviderMetadata providerMetadata, IFrameworkContext frameworkContext)
     : this(providerMetadata, new NullProviderRevisionRepository <EntitySchema>(providerMetadata, frameworkContext), frameworkContext)
 {
 }