public PageTypeSynchronizer(IPageTypeDefinitionLocator pageTypeDefinitionLocator, PageTypeBuilderConfiguration configuration, PageDefinitionSynchronizationEngine pageDefinitionSynchronizationEngine, PageTypeDefinitionValidator pageTypeDefinitionValidator, PageTypeResolver pageTypeResolver, IPageTypeLocator pageTypeLocator, PageTypeUpdater pageTypeUpdater, TabDefinitionUpdater tabDefinitionUpdater, TabLocator tabLocator, GlobalPropertySettingsSynchronizer globalPropertySettingsSynchronizer, IHooksHandler hooksHandler) { _configuration = configuration; this.pageTypeResolver = pageTypeResolver; TabLocator = tabLocator; TabDefinitionUpdater = tabDefinitionUpdater; using (new TimingsLogger("Getting page type definitions")) { _pageTypeDefinitions = pageTypeDefinitionLocator.GetPageTypeDefinitions(); } PageTypeUpdater = pageTypeUpdater; PageDefinitionSynchronizationEngine = pageDefinitionSynchronizationEngine; PageTypeDefinitionValidator = pageTypeDefinitionValidator; _pageTypeLocator = pageTypeLocator; this.globalPropertySettingsSynchronizer = globalPropertySettingsSynchronizer; this.hooksHandler = hooksHandler; }
public void GivenPageTypeDefinition_AddPageTypesToResolver_AddsToResolver() { List <PageTypeDefinition> definitions = new List <PageTypeDefinition>(); PageTypeDefinition definition = new PageTypeDefinition { Type = typeof(string), Attribute = new PageTypeAttribute() }; definitions.Add(definition); IPageType pageType = new NativePageType(); pageType.ID = 1; MockRepository fakes = new MockRepository(); IPageTypeLocator pageTypeLocator = fakes.Stub <IPageTypeLocator>(); pageTypeLocator.Stub(locator => locator.GetExistingPageType(definition)).Return(pageType); pageTypeLocator.Replay(); PageTypeResolver resolver = new PageTypeResolver(); PageTypeSynchronizer synchronizer = PageTypeSynchronizerFactory.Create(resolver, pageTypeLocator); synchronizer.AddPageTypesToResolver(definitions); Assert.Equal <Type>(definition.Type, resolver.GetPageTypeType(pageType.ID)); }
public void GivenPageType_UpdatePageTypePropertyDefinitions_CallsPageTypePropertyUpdaterUpdatePageTypePropertyDefinitions() { PageTypeDefinition definition = new PageTypeDefinition(); MockRepository fakes = new MockRepository(); PageTypeUpdater pageTypeUpdater = PageTypeUpdaterFactory.Stub(fakes); IPageType pageType = new NativePageType(); PageTypePropertyUpdater pageTypePropertyUpdater = PageTypePropertyUpdaterFactory.Stub(fakes); pageTypePropertyUpdater.Stub(updater => updater.UpdatePageTypePropertyDefinitions(pageType, definition)); pageTypePropertyUpdater.Replay(); IPageTypeLocator pageTypeLocator = fakes.Stub <IPageTypeLocator>(); pageTypeLocator.Stub(locator => locator.GetExistingPageType(definition)).Return(pageType); pageTypeLocator.Replay(); List <PageTypeDefinition> definitions = new List <PageTypeDefinition> { definition }; PageTypeSynchronizer synchronizer = PageTypeSynchronizerFactory.Create(pageTypePropertyUpdater, pageTypeLocator); synchronizer.PageTypeUpdater = pageTypeUpdater; synchronizer.UpdatePageTypePropertyDefinitions(definitions); pageTypePropertyUpdater.AssertWasCalled(updater => updater.UpdatePageTypePropertyDefinitions(pageType, definition)); }
public PageTypeUpdater(IPageTypeDefinitionLocator pageTypeDefinitionLocator, IPageTypeRepository pageTypeRepository, IPageTypeValueExtractor pageTypeValueExtractor, IPageTypeLocator pageTypeLocator) { _pageTypeDefinitions = pageTypeDefinitionLocator.GetPageTypeDefinitions(); PageTypeRepository = pageTypeRepository; DefaultFilename = DefaultPageTypeFilename; _pageTypeValueExtractor = pageTypeValueExtractor; _pageTypeLocator = pageTypeLocator; }
public PageTypeUpdater(IPageTypeDefinitionLocator pageTypeDefinitionLocator, IPageTypeFactory pageTypeFactory, IPageTypeValueExtractor pageTypeValueExtractor, IPageTypeLocator pageTypeLocator) { _pageTypeDefinitions = pageTypeDefinitionLocator.GetPageTypeDefinitions(); PageTypeFactory = pageTypeFactory; DefaultFilename = DefaultPageTypeFilename; _pageTypeValueExtractor = pageTypeValueExtractor; _pageTypeLocator = pageTypeLocator; }
public PageTypeUpdater(IPageTypeDefinitionLocator pageTypeDefinitionLocator, IPageTypeRepository pageTypeRepository, IPageTypeValueExtractor pageTypeValueExtractor, IPageTypeLocator pageTypeLocator) { _pageTypeDefinitions = pageTypeDefinitionLocator.GetPageTypeDefinitions(); PageTypeRepository = pageTypeRepository; DefaultFilename = DefaultPageTypeFilename; _pageTypeValueExtractor = pageTypeValueExtractor; _pageTypeLocator = pageTypeLocator; NewlyCreatedPageTypes = new List <IPageType>(); }
public PageTypeUpdater(IPageTypeDefinitionLocator pageTypeDefinitionLocator, IPageTypeRepository pageTypeRepository, IPageTypeValueExtractor pageTypeValueExtractor, IPageTypeLocator pageTypeLocator) { _pageTypeDefinitions = pageTypeDefinitionLocator.GetPageTypeDefinitions(); PageTypeRepository = pageTypeRepository; DefaultFilename = DefaultPageTypeFilename; _pageTypeValueExtractor = pageTypeValueExtractor; _pageTypeLocator = pageTypeLocator; NewlyCreatedPageTypes = new List<IPageType>(); UpdatedPageTypeIds = new List<int>(); }
public static PageTypeSynchronizer Create(PageTypePropertyUpdater pageTypePropertyUpdater, IPageTypeLocator pageTypeLocator) { return new PageTypeSynchronizer( PageTypeDefinitionLocatorFactory.Create(), new PageTypeBuilderConfiguration(), pageTypePropertyUpdater, new PageTypeDefinitionValidator(new PageDefinitionTypeMapper(new PageDefinitionTypeFactory())), PageTypeResolver.Instance, pageTypeLocator, PageTypeUpdaterFactory.Create(), TabDefinitionUpdaterFactory.Create(), TabLocatorFactory.Create()); }
public static PageTypeSynchronizer Create(PageTypePropertyUpdater pageTypePropertyUpdater, IPageTypeLocator pageTypeLocator) { return new PageTypeSynchronizer( PageTypeDefinitionLocatorFactory.Create(), new PageTypeBuilderConfiguration(), pageTypePropertyUpdater, new PageTypeDefinitionValidator(new PageDefinitionTypeMapper(new PageDefinitionTypeFactory())), PageTypeResolver.Instance, pageTypeLocator, PageTypeUpdaterFactory.Create(), TabDefinitionUpdaterFactory.Create(), TabLocatorFactory.Create(), new GlobalPropertySettingsSynchronizer(new PropertySettingsRepository(), new GlobalPropertySettingsLocator(new AppDomainAssemblyLocator()))); }
public static PageTypeSynchronizer Create(PageDefinitionSynchronizationEngine pageDefinitionSynchronizationEngine, PageTypeResolver pageTypeResolver, IPageTypeLocator pageTypeLocator) { return new PageTypeSynchronizer( PageTypeDefinitionLocatorFactory.Create(), new PageTypeBuilderConfiguration(), pageDefinitionSynchronizationEngine, new PageTypeDefinitionValidator(new PageDefinitionTypeMapper(new PageDefinitionTypeRepository(), new NativePageDefinitionsMap())), pageTypeResolver, pageTypeLocator, PageTypeUpdaterFactory.Create(), TabDefinitionUpdaterFactory.Create(), TabLocatorFactory.Create(), new GlobalPropertySettingsSynchronizer(new PropertySettingsRepository(), new GlobalPropertySettingsLocator(new AppDomainAssemblyLocator())), new HooksHandler(new AppDomainAssemblyLocator())); }
public void GivenExistingPageTypeFound_CreateNonExistingPageTypes_PageTypeUpdaterCreateNewPageTypeNotCalled() { MockRepository fakes = new MockRepository(); PageTypeUpdater pageTypeUpdater = PageTypeUpdaterFactory.Stub(fakes); PageTypeDefinition definition = new PageTypeDefinition(); List <PageTypeDefinition> definitions = new List <PageTypeDefinition>(); definitions.Add(definition); pageTypeUpdater.Replay(); IPageTypeLocator pageTypeLocator = fakes.Stub <IPageTypeLocator>(); pageTypeLocator.Stub(locator => locator.GetExistingPageType(definition)).Return(new NativePageType()); pageTypeLocator.Replay(); PageTypeSynchronizer synchronizer = CreateSynchronizer(pageTypeLocator); synchronizer.CreateNonExistingPageTypes(definitions); pageTypeUpdater.AssertWasNotCalled(updater => updater.CreateNewPageType(Arg <PageTypeDefinition> .Is.Anything)); }
public PageTypeSynchronizer(IPageTypeDefinitionLocator pageTypeDefinitionLocator, PageTypeBuilderConfiguration configuration, PageTypePropertyUpdater pageTypePropertyUpdater, PageTypeDefinitionValidator pageTypeDefinitionValidator, PageTypeResolver pageTypeResolver, IPageTypeLocator pageTypeLocator, PageTypeUpdater pageTypeUpdater, TabDefinitionUpdater tabDefinitionUpdater, TabLocator tabLocator) { _configuration = configuration; PageTypeResolver = pageTypeResolver; TabLocator = tabLocator; TabDefinitionUpdater = tabDefinitionUpdater; _pageTypeDefinitions = pageTypeDefinitionLocator.GetPageTypeDefinitions(); PageTypeUpdater = pageTypeUpdater; PageTypePropertyUpdater = pageTypePropertyUpdater; PageTypeDefinitionValidator = pageTypeDefinitionValidator; _pageTypeLocator = pageTypeLocator; }
public PageTypeSynchronizer(IPageTypeDefinitionLocator pageTypeDefinitionLocator, PageTypeBuilderConfiguration configuration, PageDefinitionSynchronizationEngine pageDefinitionSynchronizationEngine, PageTypeDefinitionValidator pageTypeDefinitionValidator, PageTypeResolver pageTypeResolver, IPageTypeLocator pageTypeLocator, PageTypeUpdater pageTypeUpdater, TabDefinitionUpdater tabDefinitionUpdater, TabLocator tabLocator, GlobalPropertySettingsSynchronizer globalPropertySettingsSynchronizer, IHooksHandler hooksHandler) { _configuration = configuration; this.pageTypeResolver = pageTypeResolver; TabLocator = tabLocator; TabDefinitionUpdater = tabDefinitionUpdater; _pageTypeDefinitions = pageTypeDefinitionLocator.GetPageTypeDefinitions(); PageTypeUpdater = pageTypeUpdater; PageDefinitionSynchronizationEngine = pageDefinitionSynchronizationEngine; PageTypeDefinitionValidator = pageTypeDefinitionValidator; _pageTypeLocator = pageTypeLocator; this.globalPropertySettingsSynchronizer = globalPropertySettingsSynchronizer; this.hooksHandler = hooksHandler; }
private PageTypeSynchronizer CreateSynchronizer(IPageTypeLocator pageTypeLocator) { return(PageTypeSynchronizerFactory.Create(pageTypeLocator)); }
public static PageTypeSynchronizer Create(PageDefinitionSynchronizationEngine pageDefinitionSynchronizationEngine, PageTypeResolver pageTypeResolver, IPageTypeLocator pageTypeLocator) { return new PageTypeSynchronizer( PageTypeDefinitionLocatorFactory.Create(), new PageTypeBuilderConfiguration(), pageDefinitionSynchronizationEngine, new PageTypeDefinitionValidator(new PageDefinitionTypeMapper(new PageDefinitionTypeRepository(), new NativePageDefinitionsMap())), pageTypeResolver, pageTypeLocator, PageTypeUpdaterFactory.Create(), TabDefinitionUpdaterFactory.Create(), TabLocatorFactory.Create(), new GlobalPropertySettingsSynchronizer(() => new PropertySettingsRepository(), new GlobalPropertySettingsLocator(new AppDomainAssemblyLocator())), new HooksHandler(new AppDomainAssemblyLocator())); }
public static PageTypeSynchronizer Create(PageDefinitionSynchronizationEngine pageDefinitionSynchronizationEngine, IPageTypeLocator pageTypeLocator) { return Create(pageDefinitionSynchronizationEngine, new PageTypeResolver(), pageTypeLocator); }
public static PageTypeSynchronizer Create(PageTypeResolver pageTypeResolver, IPageTypeLocator pageTypeLocator) { return Create(PageDefinitionSynchronizationEngineFactory.Create(), pageTypeResolver, pageTypeLocator); }
public static PageTypeSynchronizer Create(IPageTypeLocator pageTypeLocator) { return Create(PageTypePropertyUpdaterFactory.Create(), pageTypeLocator); }
private PageTypeSynchronizer CreateSynchronizer(IPageTypeLocator pageTypeLocator) { return PageTypeSynchronizerFactory.Create(pageTypeLocator); }
public static PageTypeSynchronizer Create(PageTypePropertyUpdater pageTypePropertyUpdater, IPageTypeLocator pageTypeLocator) { return(new PageTypeSynchronizer( PageTypeDefinitionLocatorFactory.Create(), new PageTypeBuilderConfiguration(), pageTypePropertyUpdater, new PageTypeDefinitionValidator(new PageDefinitionTypeMapper(new PageDefinitionTypeFactory())), PageTypeResolver.Instance, pageTypeLocator, PageTypeUpdaterFactory.Create(), TabDefinitionUpdaterFactory.Create(), TabLocatorFactory.Create())); }
public static PageTypeSynchronizer Create(IPageTypeLocator pageTypeLocator) { return(Create(PageTypePropertyUpdaterFactory.Create(), pageTypeLocator)); }