コード例 #1
0
ファイル: Composers.cs プロジェクト: bharanijayasuri/umbraco8
        /// <summary>
        /// Instantiates and composes the composers.
        /// </summary>
        public void Compose()
        {
            // make sure it is there
            _composition.WithCollectionBuilder <ComponentCollectionBuilder>();

            IEnumerable <Type> orderedComposerTypes;

            using (_logger.DebugDuration <Composers>("Preparing composer types.", "Prepared composer types."))
            {
                orderedComposerTypes = PrepareComposerTypes();
            }

            var composers = InstantiateComposers(orderedComposerTypes);

            using (_logger.DebugDuration <Composers>($"Composing composers. (log when >{LogThresholdMilliseconds}ms)", "Composed composers."))
            {
                foreach (var composer in composers)
                {
                    var componentType = composer.GetType();
                    using (_logger.DebugDuration <Composers>($"Composing {componentType.FullName}.", $"Composed {componentType.FullName}.", thresholdMilliseconds: LogThresholdMilliseconds))
                    {
                        composer.Compose(_composition);
                    }
                }
            }
        }
コード例 #2
0
 /// <summary>
 /// Gets the package actions collection builder.
 /// </summary>
 /// <param name="composition">The composition.</param>
 internal static PackageActionCollectionBuilder PackageActions(this Composition composition)
 => composition.WithCollectionBuilder <PackageActionCollectionBuilder>();
コード例 #3
0
 /// <summary>
 /// Gets the mappers collection builder.
 /// </summary>
 /// <param name="composition">The composition.</param>
 public static MapperCollectionBuilder Mappers(this Composition composition)
 => composition.WithCollectionBuilder <MapperCollectionBuilder>();
コード例 #4
0
 /// <summary>
 /// Gets the cache refreshers collection builder.
 /// </summary>
 /// <param name="composition">The composition.</param>
 public static CacheRefresherCollectionBuilder CacheRefreshers(this Composition composition)
 => composition.WithCollectionBuilder <CacheRefresherCollectionBuilder>();
コード例 #5
0
 /// <summary>
 /// Gets the components collection builder.
 /// </summary>
 public static ComponentCollectionBuilder Components(this Composition composition)
 => composition.WithCollectionBuilder <ComponentCollectionBuilder>();
コード例 #6
0
 /// <summary>
 /// Gets the post-migrations collection builder.
 /// </summary>
 /// <param name="composition">The composition.</param>
 internal static PostMigrationCollectionBuilder PostMigrations(this Composition composition)
 => composition.WithCollectionBuilder <PostMigrationCollectionBuilder>();
コード例 #7
0
 /// <summary>
 /// Gets the validators collection builder.
 /// </summary>
 /// <param name="composition">The composition.</param>
 internal static ManifestValueValidatorCollectionBuilder Validators(this Composition composition)
 => composition.WithCollectionBuilder <ManifestValueValidatorCollectionBuilder>();
コード例 #8
0
 /// <summary>
 /// Gets the actions collection builder.
 /// </summary>
 /// <param name="composition">The composition.</param>
 /// <returns></returns>
 internal static ActionCollectionBuilder Actions(this Composition composition)
 => composition.WithCollectionBuilder <ActionCollectionBuilder>();
コード例 #9
0
 /// <summary>
 /// Gets the url providers collection builder.
 /// </summary>
 /// <param name="composition">The composition.</param>
 internal static UrlProviderCollectionBuilder UrlProviders(this Composition composition)
 => composition.WithCollectionBuilder <UrlProviderCollectionBuilder>();
コード例 #10
0
 /// <summary>
 /// Gets the TourFilters collection builder.
 /// </summary>
 public static TourFilterCollectionBuilder TourFilters(this Composition composition)
 => composition.WithCollectionBuilder <TourFilterCollectionBuilder>();
コード例 #11
0
 /// <summary>
 /// Gets the health checks collection builder.
 /// </summary>
 /// <param name="composition">The composition.</param>
 public static HealthCheckCollectionBuilder HealthChecks(this Composition composition)
 => composition.WithCollectionBuilder <HealthCheckCollectionBuilder>();
コード例 #12
0
 /// <summary>
 /// Gets the filtered controller factories collection builder.
 /// </summary>
 /// <param name="composition">The composition.</param>
 /// <returns></returns>
 public static FilteredControllerFactoryCollectionBuilder FilderedControllerFactory(this Composition composition)
 => composition.WithCollectionBuilder <FilteredControllerFactoryCollectionBuilder>();
コード例 #13
0
 /// <summary>
 /// Gets the editor validators collection builder.
 /// </summary>
 /// <param name="composition">The composition.</param>
 /// <returns></returns>
 internal static EditorValidatorCollectionBuilder EditorValidators(this Composition composition)
 => composition.WithCollectionBuilder <EditorValidatorCollectionBuilder>();
コード例 #14
0
 /// <summary>
 /// Gets the content finders collection builder.
 /// </summary>
 /// <param name="composition">The composition.</param>
 /// <returns></returns>
 public static ContentFinderCollectionBuilder ContentFinders(this Composition composition)
 => composition.WithCollectionBuilder <ContentFinderCollectionBuilder>();
コード例 #15
0
 /// <summary>
 /// Gets the content apps collection builder.
 /// </summary>
 /// <param name="composition">The composition.</param>
 /// <returns></returns>
 public static ContentAppFactoryCollectionBuilder ContentApps(this Composition composition)
 => composition.WithCollectionBuilder <ContentAppFactoryCollectionBuilder>();
コード例 #16
0
 /// <summary>
 /// Gets the data editor collection builder.
 /// </summary>
 /// <param name="composition">The composition.</param>
 public static DataEditorCollectionBuilder DataEditors(this Composition composition)
 => composition.WithCollectionBuilder <DataEditorCollectionBuilder>();
コード例 #17
0
 /// <summary>
 /// Gets the property value converters collection builder.
 /// </summary>
 /// <param name="composition">The composition.</param>
 public static PropertyValueConverterCollectionBuilder PropertyValueConverters(this Composition composition)
 => composition.WithCollectionBuilder <PropertyValueConverterCollectionBuilder>();
コード例 #18
0
 /// <summary>
 /// Gets the url segment providers collection builder.
 /// </summary>
 /// <param name="composition">The composition.</param>
 public static UrlSegmentProviderCollectionBuilder UrlSegmentProviders(this Composition composition)
 => composition.WithCollectionBuilder <UrlSegmentProviderCollectionBuilder>();