コード例 #1
0
ファイル: DefaultTests.cs プロジェクト: NDWX/Pug.Tensible
        public void SubsequentEntityRegistrationWithSettingsInheritanceShouldSucceed()
        {
            IUnifier unifier = context.Unifier;

            unifier.AddEntity <OrganizationUnitInfo>("Department")
            .With(
                new Settings <OrganizationUnitInfo, OrgUnitInterfaceSettings>(
                    (department, serviceProvider) =>
                    (serviceProvider.GetService(typeof(SettingsStore)) as SettingsStore).GetOrgUnitInterfaceSettings(department.Identifier)
                    )
                .BasedOn <OrganizationInfo, InterfaceSettings>(
                    (department, serviceProvider) =>
                    new OrganizationInfo(department.Organization, string.Empty),
                    true,
                    (settings, orgSettings, serviceProvider) =>
            {
                settings.Layout = string.IsNullOrEmpty(settings.Layout)? orgSettings.Layout:settings.Layout;
                settings.Theme  =
                    string.IsNullOrEmpty(settings.Theme)
                                                                                                        ? orgSettings.Theme
                                                                                                        : settings.Theme;

                return(settings);
            }
                    )
                );
        }
コード例 #2
0
ファイル: DefaultTests.cs プロジェクト: NDWX/Pug.Tensible
        public void EntityRegistrationWithDoubleInheritanceSettingShouldSucceed()
        {
            IUnifier unifier = context.Unifier;

            unifier.AddEntity <UserInfo>()
            .With <UserInterfaceSettings>(
                (user, serviceProvider) => null,
                (settings) =>
            {
                settings
                .BasedOn <OrganizationUnitInfo, OrgUnitInterfaceSettings>(
                    "Department",
                    (user, provider) =>
                    new OrganizationUnitInfo(user.Department, string.Empty),
                    false,
                    (userSettings, orgSettings, serviceProvider) =>
                {
                    userSettings.Avatar =
                        string.IsNullOrEmpty(userSettings.Avatar)
                                                                                                                ? orgSettings.Logo
                                                                                                                : userSettings.Avatar;

                    userSettings.Layout =
                        string.IsNullOrEmpty(userSettings.Layout)
                                                                                                                ? orgSettings.Layout
                                                                                                                : userSettings.Layout;

                    userSettings.Theme =
                        string.IsNullOrEmpty(userSettings.Theme)
                                                                                                                ? orgSettings.Theme
                                                                                                                : userSettings.Theme;

                    return(userSettings);
                }
                    )
                .BasedOn <OrganizationInfo, InterfaceSettings>(
                    (user, provider) =>
                    new OrganizationInfo(user.Organization, string.Empty),
                    (organization, serviceProvider) =>
                {
                    return((serviceProvider.GetService(typeof(SettingsStore)) as SettingsStore)
                           .GetOrgInterfaceSettings(organization.Identifier));
                },
                    (userSettings, orgSettings, serviceProvider) =>
                {
                    userSettings.LandingPage =
                        string.IsNullOrEmpty(userSettings.LandingPage)
                                                                                                                ? orgSettings.LandingPage
                                                                                                                : userSettings.LandingPage;

                    return(userSettings);
                }
                    );
            }
                );
        }
コード例 #3
0
ファイル: DefaultTests.cs プロジェクト: NDWX/Pug.Tensible
        public void FirstEntityRegistrationShouldSucceed()
        {
            IUnifier unifier = context.Unifier;

            unifier.AddEntity <OrganizationInfo>()
            .With(
                new Settings <OrganizationInfo, InterfaceSettings>(
                    (organization, serviceProvider) =>
                    (serviceProvider.GetService(typeof(SettingsStore)) as SettingsStore).GetOrgInterfaceSettings(organization.Identifier)
                    )
                );
        }
コード例 #4
0
ファイル: TraceUnifier.cs プロジェクト: Logicalshift/Reason
 public TraceUnifier(IUnifier unifier)
 {
     _unifier = unifier;
 }
コード例 #5
0
ファイル: TraceUnifier.cs プロジェクト: Logicalshift/Reason
 public TraceUnifier(IUnifier unifier)
 {
     _unifier = unifier;
 }