コード例 #1
0
 public override void Serialize(BinaryWriter writer, IDefinitionManager definitionManager = null)
 {
     writer.Write(Issuer);
     writer.Write(Property);
     writer.Write(Value.Length);
     writer.Write(Value);
 }
コード例 #2
0
        public ControllerMapper(ITypeFinder typeFinder, IDefinitionManager definitionManager)
        {
            IList <ControlsAttribute> controllerDefinitions = FindControllers(typeFinder);

            foreach (ItemDefinition id in definitionManager.GetDefinitions())
            {
                IAdapterDescriptor controllerDefinition = GetControllerFor(id, controllerDefinitions);
                if (controllerDefinition != null)
                {
                    ControllerMap[id.ItemType] = controllerDefinition.ControllerName;

                    // interacting with static context is tricky, here I made the assumtion that the last
                    // finder is the most relevat and takes the place of previous ones, this makes a few
                    // tests pass and doesn't seem to be called in production
                    foreach (var finder in PathDictionary.GetFinders(id.ItemType).Where(f => f is ActionResolver))
                    {
                        PathDictionary.RemoveFinder(id.ItemType, finder);
                    }

                    // Use MVC's ReflectedControllerDescriptor to find all actions on the Controller
                    var methods = new ReflectedControllerDescriptor(controllerDefinition.AdapterType)
                                  .GetCanonicalActions()
                                  .Select(m => m.ActionName).ToArray();
                    var actionResolver = new ActionResolver(this, methods);

                    _controllerActionMap[controllerDefinition.ControllerName] = methods;

                    PathDictionary.PrependFinder(id.ItemType, actionResolver);
                }
            }
        }
コード例 #3
0
 public DirectUrlInjector(IHost host, IUrlParser parser, IContentItemRepository repository, IDefinitionManager definitions)
 {
     this.host        = host;
     this.parser      = parser;
     this.repository  = repository;
     this.definitions = definitions;
 }
コード例 #4
0
ファイル: ItemXmlReader.cs プロジェクト: meixger/n2cms
		public ItemXmlReader(IDefinitionManager definitions, ContentActivator activator, IRepository<ContentItem> repository)
		{
			this.definitions = definitions;
			this.activator = activator;
			this.readers = DefaultReaders();
			this.repository = repository;
		}
コード例 #5
0
        public override void Deserialize(BinaryReader reader, IDefinitionManager definitionManager)
        {
            base.Deserialize(reader, definitionManager);

            var count = reader.ReadInt32();

            for (int i = 0; i < count; i++)
            {
                string name       = reader.ReadString();
                var    definition = definitionManager.GetDefinitions().FirstOrDefault(d => d.GetType().FullName == name);
                var    amount     = reader.ReadDecimal();

                if (definition == null || !(definition is IInventoryableDefinition))
                {
                    continue;
                }

                var slot = new InventorySlot()
                {
                    Amount     = amount,
                    Definition = (IInventoryableDefinition)definition,
                };

                Inventory.Add(slot);
            }
        }
コード例 #6
0
		public PopularityReordererScheduledAction(IDefinitionManager definitions, IPersister persister, IHost host, PopularityChildrenSorter sorter)
		{
			this.definitions = definitions;
			this.persister = persister;
			this.host = host;
			this.sorter = sorter;
		}
コード例 #7
0
		public ControllerMapper(ITypeFinder typeFinder, IDefinitionManager definitionManager)
		{
			IList<ControlsAttribute> controllerDefinitions = FindControllers(typeFinder);
			foreach (ItemDefinition id in definitionManager.GetDefinitions())
			{
				IAdapterDescriptor controllerDefinition = GetControllerFor(id, controllerDefinitions);
				if(controllerDefinition != null)
				{
					ControllerMap[id.ItemType] = controllerDefinition.ControllerName;

					// interacting with static context is tricky, here I made the assumtion that the last
					// finder is the most relevat and takes the place of previous ones, this makes a few 
					// tests pass and doesn't seem to be called in production
					foreach (var finder in PathDictionary.GetFinders(id.ItemType).Where(f => f is ActionResolver))
						PathDictionary.RemoveFinder(id.ItemType, finder);

					// Use MVC's ReflectedControllerDescriptor to find all actions on the Controller
					var methods = new ReflectedControllerDescriptor(controllerDefinition.AdapterType)
						.GetCanonicalActions()
						.Select(m => m.ActionName).ToArray();
					var actionResolver = new ActionResolver(this, methods);

					_controllerActionMap[controllerDefinition.ControllerName] = methods;

					PathDictionary.PrependFinder(id.ItemType, actionResolver);
				}
			}
		}
コード例 #8
0
 public ItemXmlReader(IDefinitionManager definitions, ContentActivator activator, IRepository <ContentItem> repository)
 {
     this.definitions = definitions;
     this.activator   = activator;
     this.readers     = DefaultReaders();
     this.repository  = repository;
 }
コード例 #9
0
        /// <summary>Creates a new instance of the <see cref="ConfigurationBuilder"/>.</summary>
        public ConfigurationBuilder(IDefinitionManager definitions, ClassMappingGenerator generator, IWebContext webContext, ConfigurationBuilderParticipator[] participators, DatabaseSection config, ConnectionStringsSection connectionStrings)
        {
            this.definitions   = definitions;
            this.generator     = generator;
            this.webContext    = webContext;
            this.participators = participators;

            if (config == null)
            {
                config = new DatabaseSection();
            }

            if (!string.IsNullOrEmpty(config.HibernateMapping))
            {
                DefaultMapping = config.HibernateMapping;
            }

            SetupProperties(config, connectionStrings);
            SetupMappings(config);

            TryLocatingHbmResources = config.TryLocatingHbmResources;
            tablePrefix             = config.TablePrefix;
            batchSize        = config.BatchSize;
            childrenLaziness = config.ChildrenLaziness;
        }
コード例 #10
0
        protected virtual void OnItemCreating(ItemEventArgs e)
        {
            EventHandler <ItemEventArgs> handler = base.Events[EventItemCreating] as EventHandler <ItemEventArgs>;

            if (handler != null)
            {
                handler.Invoke(this, e);
            }

            if (e.AffectedItem != null)
            {
                IDefinitionManager definitions      = Engine.Definitions;
                ISecurityManager   security         = Engine.SecurityManager;
                ContentActivator   activator        = Engine.Resolve <ContentActivator>();
                ItemDefinition     parentDefinition = definitions.GetDefinition(parentItem);

                if (parentDefinition.IsChildAllowed(definitions, parentItem, parentDefinition))
                {
                    e.AffectedItem = Engine.Resolve <ContentActivator>().CreateInstance(parentItem.GetContentType(), parentItem);
                    return;
                }
                foreach (ItemDefinition definition in definitions.GetAllowedChildren(parentItem, null).WhereAuthorized(security, HttpContext.Current.User, parentItem))
                {
                    e.AffectedItem = activator.CreateInstance(definition.ItemType, parentItem);
                    return;
                }
                throw new N2.Definitions.NoItemAllowedException(parentItem);
            }
        }
コード例 #11
0
        public DiagnosticController(IContentItemRepository repository, IHost host, IDefinitionManager definitions,
                                    ILinkGenerator linkGenerator, IUrlParser parser, DatabaseSection config, IFlushable flushable, IReplicationStorage repstore,
                                    IFileSystemFactory fileSystemFactory)
        {
            _repository    = repository;
            _host          = host;
            _definitions   = definitions;
            _linkGenerator = linkGenerator;
            _parser        = parser;
            _flushable     = flushable;
            _tablePrefix   = config.TablePrefix;

            _repstore = repstore;

            if (_forceWriteLockManager != null)
            {
                return;
            }

            // Create Force Write Lock Manager
            var storageConfig = (FileSystemNamespace)Enum.Parse(typeof(FileSystemNamespace),
                                                                ConfigurationManager.AppSettings["AzureReplicationStorageContainerName"] ??
                                                                "ReplicationStorageDebug");

            var fileSystem = fileSystemFactory.Create(storageConfig);

            _forceWriteLockManager = new ReplicationForceWriteLockManager(fileSystem);
            _writeLockManager      = new ReplicationWriteLockManager(fileSystem);
        }
コード例 #12
0
ファイル: DirectUrlInjector.cs プロジェクト: Biswo/n2cms
 public DirectUrlInjector(IHost host, IUrlParser parser, IContentItemRepository repository, IDefinitionManager definitions)
 {
     this.host = host;
     this.parser = parser;
     this.repository = repository;
     this.definitions = definitions;
 }
コード例 #13
0
        public void NonThrowableItem_IsNotMovedToTrashcan_LegacyAttribute()
        {
            IDefinitionManager definitions = mocks.Stub <IDefinitionManager>();

            IPersister persister = mocks.Stub <IPersister>();

            Expect.Call(persister.Get(1)).Return(root).Repeat.Any();
            persister.ItemDeleting += null;
            IEventRaiser invokeDelete = LastCall.IgnoreArguments().GetEventRaiser();

            mocks.ReplayAll();

            var          host = new Host(webContext, 1, 1);
            TrashHandler th   = new TrashHandler(persister, null, null, new ContainerRepository <TrashContainerItem>(persister, null, host, null))
            {
                UseNavigationMode = true
            };
            DeleteInterceptor interceptor = new DeleteInterceptor(persister, th);

            interceptor.Start();

            CancellableItemEventArgs deleteArgs = new CancellableItemEventArgs(nonThrowable2);

            invokeDelete.Raise(persister, deleteArgs);

            Assert.That(deleteArgs.Cancel, Is.False);
            Assert.That(trash.Children.Count, Is.EqualTo(0));
        }
コード例 #14
0
ファイル: MagicLocation.cs プロジェクト: brianmatic/n2cms
 public virtual ItemDefinition GetDefinition(IDefinitionManager definitions)
 {
     foreach (ItemDefinition definition in definitions.GetDefinitions())
         if (definition.Discriminator == ItemDiscriminator)
             return definition;
     return null;
 }
コード例 #15
0
        public override void Populate(IDefinitionManager definitionManager, IPlanet planet, IChunkColumn column00, IChunkColumn column10, IChunkColumn column01, IChunkColumn column11)
        {
            // Tree Definitions initialisieren
            if (treeDefinitions == null)
            {
                treeDefinitions = definitionManager.GetDefinitions<ITreeDefinition>().OrderBy(d => d.Order).ToArray();
                foreach (var treeDefinition in treeDefinitions)
                    treeDefinition.Init(definitionManager);
            }

            int salt = (column00.Index.X & 0xffff) + ((column00.Index.Y & 0xffff) << 16);
            Random random = new Random(planet.Seed + salt);

            Index3 sample = new Index3(column00.Index.X * Chunk.CHUNKSIZE_X, column00.Index.Y * Chunk.CHUNKSIZE_Y, column00.Heights[0, 0]);
            foreach (var treeDefinition in treeDefinitions)
            {
                int density = treeDefinition.GetDensity(planet, sample);
                if (density <= 0) continue;

                for (int i = 0; i < density; i++)
                {
                    int x = random.Next(Chunk.CHUNKSIZE_X / 2, Chunk.CHUNKSIZE_X * 3 / 2);
                    int y = random.Next(Chunk.CHUNKSIZE_Y / 2, Chunk.CHUNKSIZE_Y * 3 / 2);
                    int z = LocalBuilder.GetSurfaceHeight(column00, column10, column01, column11, x, y);

                    LocalBuilder builder = new LocalBuilder(x, y, z + 1, column00, column10, column01, column11);
                    treeDefinition.PlantTree(definitionManager, planet, new Index3(x, y, z), builder, random.Next(int.MaxValue));
                }
            }
        }
 public TrackerService(IDefinitionManager <IPageEventDefinition> pageEventDefinitionManager, IDefinitionManager <IOutcomeDefinition> outcomeDefinitionManager, IDefinitionManager <IGoalDefinition> goalDefinitionManager)
 {
     this.PageEventDefinitionManager = pageEventDefinitionManager;
     this.OutcomeDefinitionManager   = outcomeDefinitionManager;
     this.GoalDefinitionManager      = goalDefinitionManager;
     this.ContactManager             = Factory.CreateObject("tracking/contactManager", true) as ContactManager;
 }
コード例 #17
0
ファイル: LanguageInterceptor.cs プロジェクト: spmason/n2cms
 public LanguageInterceptor(IPersister persister, IDefinitionManager definitions, IWebContext context, ILanguageGateway gateway)
 {
     this.persister = persister;
     this.definitions = definitions;
     this.context = context;
     this.gateway = gateway;
 }
コード例 #18
0
 public PopularityReordererScheduledAction(IDefinitionManager definitions, IPersister persister, IHost host, PopularityChildrenSorter sorter)
 {
     this.definitions = definitions;
     this.persister   = persister;
     this.host        = host;
     this.sorter      = sorter;
 }
コード例 #19
0
        public DiagnosticController(IContentItemRepository repository, IHost host, IDefinitionManager definitions,
            ILinkGenerator linkGenerator, IUrlParser parser, DatabaseSection config, IFlushable flushable, IReplicationStorage repstore, 
            IFileSystemFactory fileSystemFactory)
        {
            _repository = repository;
            _host = host;
            _definitions = definitions;
            _linkGenerator = linkGenerator;
            _parser = parser;
            _flushable = flushable;
            _tablePrefix = config.TablePrefix;

            _repstore = repstore;

            if (_forceWriteLockManager != null) return;

            // Create Force Write Lock Manager
            var storageConfig = (FileSystemNamespace) Enum.Parse(typeof (FileSystemNamespace),
                ConfigurationManager.AppSettings["AzureReplicationStorageContainerName"] ??
                "ReplicationStorageDebug");

            var fileSystem = fileSystemFactory.Create(storageConfig);
            _forceWriteLockManager = new ReplicationForceWriteLockManager(fileSystem);
            _writeLockManager = new ReplicationWriteLockManager(fileSystem);
        }
コード例 #20
0
        public IChunkColumn GenerateColumn(Stream stream, IDefinitionManager definitionManager, int planetId, Index2 index)
        {
            IChunkColumn column = new ChunkColumn();

            column.Deserialize(stream, definitionManager, planetId, index);
            return(column);
        }
コード例 #21
0
 public ContainerResourceManager(IUpdateHub updateHub, IExtensionResolver extensionResolver, IDefinitionManager definitionManager, ISettings settings)
 {
     UpdateHub = updateHub;
     this.extensionResolver = extensionResolver;
     this.definitionManager = definitionManager;
     this.settings          = settings;
 }
        private void TriggerGoal(SubscribeModel subscription)
        {
            var             goalId         = Guid.Empty;
            IGoalDefinition goalDefinition = null;

            if (Guid.TryParse(subscription.GoalId, out goalId))
            {
                using (new Sitecore.SecurityModel.SecurityDisabler())
                {
                    IDefinitionManager <IGoalDefinition> goalDefinitionManager = ServiceLocator.ServiceProvider.GetDefinitionManagerFactory().GetDefinitionManager <Sitecore.Marketing.Definitions.Goals.IGoalDefinition>();
                    goalDefinition = goalDefinitionManager.Get(goalId, System.Globalization.CultureInfo.InvariantCulture);

                    if (goalDefinition != null)
                    {
                        //Trigger Goal on last page in the tracker. (May be incorrect if visitor is in multiple tabs)
                        var page = Tracker.Current.Interaction.PreviousPage;
                        page.RegisterGoal(goalDefinition);
                    }
                    else
                    {
                        Sitecore.Diagnostics.Log.Warn("Goal: [" + subscription.GoalId + "] Not Defined", this);
                    }
                }
            }
            else
            {
                Sitecore.Diagnostics.Log.Warn("Goal: [" + subscription.GoalId + "] Can Not be Parsed", this);
            }
        }
コード例 #23
0
 public void Deserialize(BinaryReader reader, IDefinitionManager definitionManager)
 {
     foreach (var item in this)
     {
         item.Deserialize(reader, definitionManager);
     }
 }
コード例 #24
0
 public void Serialize(BinaryWriter writer, IDefinitionManager definitionManager)
 {
     foreach (var item in this)
     {
         item.Serialize(writer, definitionManager);
     }
 }
コード例 #25
0
        public override void Deserialize(BinaryReader reader, IDefinitionManager definitionManager)
        {
            base.Deserialize(reader, definitionManager);

            Mass   = reader.ReadSingle();
            Radius = reader.ReadSingle();
            Height = reader.ReadSingle();
        }
コード例 #26
0
        public EditableItemMigration(IDefinitionManager definitions, IRepository <ContentItem> itemRepository)
        {
            this.definitions    = definitions;
            this.itemRepository = itemRepository;

            Title       = "Upgrade parts and pages using [EditableItem]";
            Description = "This migration will change the name of sub-items and remove the reference from the containing page.";
        }
コード例 #27
0
		public FixZoneNamePartsMigration(IContentItemRepository repository, IDefinitionManager definitions)
		{
			this.repository = repository;
			this.definitions = definitions;

			Title = "Fixes zone name on parts with null zone name";
			Description = "In the database parts are defined by having a non-null ZoneName property. This migrations updates parts which have a null zone name and changes it to empty string.";
		}
コード例 #28
0
ファイル: CreateUrlProvider.cs プロジェクト: amarwadi/n2cms
 public CreateUrlProvider(IPersister persister, IEditUrlManager editUrlManager, IDefinitionManager definitions, ContentActivator activator, Navigator navigator)
 {
     this.persister       = persister;
     this.managementPaths = editUrlManager;
     this.definitions     = definitions;
     this.activator       = activator;
     this.navigator       = navigator;
 }
コード例 #29
0
 public static IEnumerable<TemplateDefinition> AllowedBelow(this IEnumerable<TemplateDefinition> allTemplates, ItemDefinition parentDefinition, ContentItem parentItem, IDefinitionManager definitions)
 {
     foreach (var template in allTemplates)
     {
         if (IsAllowed(template.Definition, parentItem, parentDefinition, definitions))
             yield return template;
     }
 }
コード例 #30
0
        public NetworkPersistenceManager(Client client, IDefinitionManager definitionManager)
        {
            this.client  = client;
            subscription = client.Subscribe(this);

            packages = new Dictionary <uint, Awaiter>();
            this.definitionManager = definitionManager;
        }
コード例 #31
0
 public DirectUrlInjector(IHost host, IUrlParser parser, IContentItemRepository repository, IDefinitionManager definitions, Configuration.EngineSection config)
 {
     this.host        = host;
     this.parser      = parser;
     this.repository  = repository;
     this.definitions = definitions;
     this.enabled     = config.DirectUrlInjector.Enabled;
 }
コード例 #32
0
ファイル: CreateUrlProvider.cs プロジェクト: spmason/n2cms
 public CreateUrlProvider(IPersister persister, IEditUrlManager editUrlManager, IDefinitionManager definitions, AjaxRequestDispatcher dispatcher, Navigator navigator)
     : base(dispatcher)
 {
     this.persister = persister;
     this.editUrlManager = editUrlManager;
     this.definitions = definitions;
     this.navigator = navigator;
 }
コード例 #33
0
        public FixZoneNamePartsMigration(IContentItemRepository repository, IDefinitionManager definitions)
        {
            this.repository  = repository;
            this.definitions = definitions;

            Title       = "Fixes zone name on parts with null zone name";
            Description = "In the database parts are defined by having a non-null ZoneName property. This migrations updates parts which have a null zone name and changes it to empty string.";
        }
コード例 #34
0
        public IChunkColumn GenerateColumn(Stream stream, IDefinitionManager definitionManager, int planetId, Index2 index)
        {
            IChunkColumn column = new ChunkColumn();

            using (var reader = new BinaryReader(stream))
                column.Deserialize(reader, definitionManager);
            return(column);
        }
コード例 #35
0
 public static IEnumerable<ItemDefinition> AllowedBelow(this IEnumerable<ItemDefinition> allDefinitions, ItemDefinition parentDefinition, ContentItem parentItem, IDefinitionManager definitions)
 {
     foreach (var definition in allDefinitions)
     {
         if (IsAllowed(definition, parentItem, parentDefinition, definitions))
             yield return definition;
     }
 }
コード例 #36
0
 protected PartsModifyingAjaxService(Navigator navigator, IIntegrityManager integrity, IVersionManager versions, ContentVersionRepository versionRepository, IDefinitionManager definitionManager)
 {
     this.navigator = navigator;
     this.integrity = integrity;
     this.versions = versions;
     this.versionRepository = versionRepository;
     this.definitionManager = definitionManager;
 }
コード例 #37
0
        public override void Serialize(BinaryWriter writer, IDefinitionManager definitionManager)
        {
            base.Serialize(writer, definitionManager);

            writer.Write(Mass);
            writer.Write(Radius);
            writer.Write(Height);
        }
コード例 #38
0
        public static void Setup(out IDefinitionManager definitions, out ContentActivator activator, out IItemNotifier notifier, out FakeSessionProvider sessionProvider, out ItemFinder finder, out SchemaExport schemaCreator, out InterceptingProxyFactory proxyFactory, params Type[] itemTypes)
        {
            var participators             = new ConfigurationBuilderParticipator[0];
            FakeWebContextWrapper context = new Fakes.FakeWebContextWrapper();
            DatabaseSection       config  = (DatabaseSection)ConfigurationManager.GetSection("n2/database");

            Setup(out definitions, out activator, out notifier, out sessionProvider, out finder, out schemaCreator, out proxyFactory, context, config, participators, itemTypes);
        }
コード例 #39
0
        public void SetUp()
        {
            parentDefinition = new ItemDefinition(typeof(DefinitionControllingParent)) { TemplateKey = "List" };
            childDefinition = new ItemDefinition(typeof(DefinitionOppressedChild)) { TemplateKey = "Wide" };

            definitions = MockRepository.GenerateStub<IDefinitionManager>();
            definitions.Expect(d => d.GetDefinitions()).Return(new[] { parentDefinition, childDefinition }).Repeat.Any();
        }
コード例 #40
0
 protected PartsModifyingAjaxService(Navigator navigator, IIntegrityManager integrity, IVersionManager versions, ContentVersionRepository versionRepository, IDefinitionManager definitionManager)
 {
     this.navigator         = navigator;
     this.integrity         = integrity;
     this.versions          = versions;
     this.versionRepository = versionRepository;
     this.definitionManager = definitionManager;
 }
コード例 #41
0
		protected override void OnPreInit(EventArgs e)
		{
			base.OnPreInit(e);

			Definitions = Engine.Definitions;
			Edits = Engine.ManagementPaths;
			Wizard = Engine.Resolve<LocationWizard>();
		}
コード例 #42
0
 public override void Deserialize(BinaryReader reader, IDefinitionManager definitionManager)
 {
     Name          = reader.ReadString();
     ModelName     = reader.ReadString();
     TextureName   = reader.ReadString();
     BaseZRotation = reader.ReadSingle();
     base.Deserialize(reader, definitionManager);
 }
コード例 #43
0
 public override void Serialize(BinaryWriter writer, IDefinitionManager definitionManager)
 {
     writer.Write(Name);
     writer.Write(ModelName);
     writer.Write(TextureName);
     writer.Write(BaseZRotation);
     base.Serialize(writer, definitionManager);
 }
コード例 #44
0
ファイル: CreateUrlProvider.cs プロジェクト: amarwadi/n2cms
 public CreateUrlProvider(IPersister persister, IEditUrlManager editUrlManager, IDefinitionManager definitions, ContentActivator activator, Navigator navigator)
 {
     this.persister = persister;
     this.managementPaths = editUrlManager;
     this.definitions = definitions;
     this.activator = activator;
     this.navigator = navigator;
 }
コード例 #45
0
 public NetworkUpdateManager(Client client, IUpdateHub updateHub, IDefinitionManager manager)
 {
     this.client        = client;
     this.updateHub     = updateHub;
     hubSubscription    = updateHub.Subscribe(this, DefaultChannels.Network);
     clientSubscription = client.Subscribe(this);
     definitionManager  = manager;
 }
コード例 #46
0
		public EditableItemMigration(IDefinitionManager definitions, IRepository<ContentItem> itemRepository)
		{
			this.definitions = definitions;
			this.itemRepository = itemRepository;

			Title = "Upgrade parts and pages using [EditableItem]";
			Description = "This migration will change the name of sub-items and remove the reference from the containing page.";
		}
コード例 #47
0
ファイル: Default.aspx.cs プロジェクト: nikita239/Aspect
        protected override void OnPreInit(EventArgs e)
        {
            base.OnPreInit(e);

            Definitions = Engine.Definitions;
            Edits       = Engine.ManagementPaths;
            Wizard      = Engine.Resolve <LocationWizard>();
        }
コード例 #48
0
		public ItemXmlWriter(IDefinitionManager definitions, IUrlParser parser, IFileSystem fs)
		{
			if (definitions == null)
				throw new ArgumentNullException("definitions");

			this.definitions = definitions;
			this.parser = parser;
			this.fs = fs;
		}
コード例 #49
0
ファイル: Default.aspx.cs プロジェクト: cherylhanlon/Tigers
        protected override void OnPreInit(EventArgs e)
        {
            base.OnPreInit(e);

            Definitions = Engine.Definitions;
            Edits = Engine.EditManager;
            Wizard = Engine.Resolve<LocationWizard>();
            Templates = Engine.Resolve<IContentTemplateRepository>();
        }
コード例 #50
0
		public ConvertEnumsMigration(IRepository<ContentItem> repository, InstallationManager installer, IDefinitionManager definitions)
		{
			this.repository = repository;
			this.installer = installer;
			this.definitions = definitions;

			Title = "Convert enum detail types to new storage format";
			Description = "Enums values are stored as string (+ integer) in this version of N2. To support querying, previously stored enums must be converted.";
		}
コード例 #51
0
ファイル: ItemXmlReader.cs プロジェクト: JohnsonYuan/n2cms
		public ItemXmlReader(IDefinitionManager definitions, ContentActivator activator)
		{
			if (definitions == null)
				throw new ArgumentNullException("definitions");

			this.definitions = definitions;
			this.activator = activator;
			this.readers = DefaultReaders();
		}
コード例 #52
0
        protected override void OnPreInit(EventArgs e)
        {
            base.OnPreInit(e);

            Definitions = Engine.Definitions;
            Edits = Engine.ManagementPaths;
            Wizard = Engine.Resolve<LocationWizard>();
            Templates = Engine.Container.ResolveAll<ITemplateProvider>();
        }
コード例 #53
0
        public override void Execute()
        {
            this.definitions = Engine.Resolve<IDefinitionManager>();
            this.finder = Engine.Resolve<IItemFinder>();

            foreach (var definition in definitions.GetDefinitions())
            {
                definition.NumberOfItems = finder.Where.Type.Eq(definition.ItemType).Count();
            }
        }
コード例 #54
0
ファイル: Edit.aspx.cs プロジェクト: navneetccna/n2cms
		protected override void OnPreInit(EventArgs e)
		{
			base.OnPreInit(e);
			Security = Engine.SecurityManager;
			Definitions = Engine.Definitions;
			Versions = Engine.Resolve<IVersionManager>();
			Commands = Engine.Resolve<CommandDispatcher>();
			EditManager = Engine.EditManager;
			ManagementPaths = Engine.ManagementPaths;
		}
コード例 #55
0
 private static bool IsAllowed(ItemDefinition definition, ContentItem parentItem, ItemDefinition parentDefinition, IDefinitionManager definitions)
 {
     var ctx = new AllowedDefinitionQuery { Parent = parentItem, ParentDefinition = parentDefinition, ChildDefinition = definition, Definitions = definitions };
     var filters = parentDefinition.AllowedChildFilters.Union(definition.AllowedParentFilters).ToList();
     if (filters.Any(f => f.IsAllowed(ctx) == AllowedDefinitionResult.Allow))
         return true;
     else if (!filters.Any(f => f.IsAllowed(ctx) == AllowedDefinitionResult.Deny))
         return true;
     return false;
 }
コード例 #56
0
ファイル: InstallationManager.cs プロジェクト: spmason/n2cms
 public InstallationManager(IHost host, IDefinitionManager definitions, Importer importer, IPersister persister, ISessionProvider sessionProvider, IConfigurationBuilder configurationBuilder, IWebContext webContext)
 {
     this.host = host;
     this.definitions = definitions;
     this.importer = importer;
     this.persister = persister;
     this.sessionProvider = sessionProvider;
     this.configurationBuilder = configurationBuilder;
     this.webContext = webContext;
 }
コード例 #57
0
 public CreateUrlProvider(IPersister persister, IEditUrlManager editUrlManager, IDefinitionManager definitions, ITemplateProvider[] templates, ContentActivator activator, AjaxRequestDispatcher dispatcher, Navigator navigator)
     : base(dispatcher)
 {
     this.persister = persister;
     this.managementPaths = editUrlManager;
     this.definitions = definitions;
     this.templates = templates;
     this.activator = activator;
     this.navigator = navigator;
 }
コード例 #58
0
        public override void PlantTree(IDefinitionManager definitionManager, IPlanet planet, Index3 index, LocalBuilder builder, int seed)
        {
            ushort ground = builder.GetBlock(0, 0, -1);
            if (ground == water) return;

            Random rand = new Random(seed);
            int height = rand.Next(2, 4);

            for (int i = 0; i < height; i++)
                builder.SetBlock(0, 0, i, cactus);
        }
コード例 #59
0
ファイル: CreateUrlProvider.cs プロジェクト: 4m-world/n2cms
 public CreateUrlProvider(IPersister persister, IEditUrlManager editUrlManager, IDefinitionManager definitions, ITemplateAggregator templates, ContentActivator activator, Navigator navigator, IVersionManager versions, ContentVersionRepository versionRepository)
 {
     this.persister = persister;
     this.managementPaths = editUrlManager;
     this.definitions = definitions;
     this.templates = templates;
     this.activator = activator;
     this.navigator = navigator;
     this.versions = versions;
     this.versionRepository = versionRepository;
 }
コード例 #60
0
 public override void SetUp()
 {
     base.SetUp();
     var changer = new StateChanger();
     definitions = TestSupport.SetupDefinitions(typeof(StatefulPage), typeof(StatefulPart));
     versions = new FakeVersionManager(repository, changer, typeof(StatefulPage), typeof(StatefulPart));
     var editManager = new EditUrlManager(null, new EditSection());
     var security = new SecurityManager(new FakeWebContextWrapper(), new EditSection());
     commands = new CommandFactory(persister, security, versions, editManager, null, changer);
     dispatcher = new CommandDispatcher(commands, persister);
     item = CreateOneItem<StatefulPage>(1, "first", null);
     child = CreateOneItem<StatefulPage>(2, "child", item);
 }