From da1cf259c6be29a81b5baf6f154d13bf1574e042 Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Wed, 18 Dec 2019 10:32:22 +0100 Subject: [PATCH] AB4227 - Moved Services and Migration --- .../Services/IMembershipMemberService.cs | 10 +- .../Services/IUserService.cs | 2 + src/Umbraco.Core/ContentExtensions.cs | 53 ---- src/Umbraco.Core/RuntimeState.cs | 2 +- src/Umbraco.Core/Umbraco.Core.csproj | 227 +----------------- .../ContentExtensions.cs | 61 +++++ .../Expressions/Alter/AlterBuilder.cs | 0 .../Expressions/AlterColumnExpression.cs | 0 .../AlterDefaultConstraintExpression.cs | 0 .../Alter/Expressions/AlterTableExpression.cs | 0 .../Expressions/Alter/IAlterBuilder.cs | 0 .../Alter/Table/AlterTableBuilder.cs | 0 .../Alter/Table/IAlterTableBuilder.cs | 0 .../Table/IAlterTableColumnOptionBuilder.cs | 0 ...bleColumnOptionForeignKeyCascadeBuilder.cs | 0 .../Table/IAlterTableColumnTypeBuilder.cs | 0 .../Expressions/Common/ExecutableBuilder.cs | 0 .../Expressions/CreateColumnExpression.cs | 0 .../Expressions/CreateForeignKeyExpression.cs | 0 .../Expressions/CreateIndexExpression.cs | 0 .../Common/IColumnOptionBuilder.cs | 0 .../Expressions/Common/IColumnTypeBuilder.cs | 0 .../Expressions/Common/IExecutableBuilder.cs | 0 .../Common/IForeignKeyCascadeBuilder.cs | 0 .../Create/Column/CreateColumnBuilder.cs | 0 .../Column/ICreateColumnOnTableBuilder.cs | 0 .../Column/ICreateColumnOptionBuilder.cs | 0 ...ateColumnOptionForeignKeyCascadeBuilder.cs | 0 .../Create/Column/ICreateColumnTypeBuilder.cs | 0 .../Constraint/CreateConstraintBuilder.cs | 0 .../ICreateConstraintColumnsBuilder.cs | 0 .../ICreateConstraintOnTableBuilder.cs | 0 .../Expressions/Create/CreateBuilder.cs | 0 .../Expressions/CreateConstraintExpression.cs | 0 .../Expressions/CreateTableExpression.cs | 0 .../ForeignKey/CreateForeignKeyBuilder.cs | 0 .../ICreateForeignKeyCascadeBuilder.cs | 0 .../ICreateForeignKeyForeignColumnBuilder.cs | 0 .../ICreateForeignKeyFromTableBuilder.cs | 0 .../ICreateForeignKeyPrimaryColumnBuilder.cs | 0 .../ICreateForeignKeyToTableBuilder.cs | 0 .../Expressions/Create/ICreateBuilder.cs | 0 .../Create/Index/CreateIndexBuilder.cs | 0 .../Index/ICreateIndexColumnOptionsBuilder.cs | 0 .../Index/ICreateIndexForTableBuilder.cs | 0 .../Index/ICreateIndexOnColumnBuilder.cs | 0 .../Index/ICreateIndexOptionsBuilder.cs | 0 .../CreateKeysAndIndexesBuilder.cs | 0 .../Create/Table/CreateTableBuilder.cs | 0 .../Create/Table/CreateTableOfDtoBuilder.cs | 0 .../Table/ICreateTableColumnAsTypeBuilder.cs | 0 .../Table/ICreateTableColumnOptionBuilder.cs | 0 ...bleColumnOptionForeignKeyCascadeBuilder.cs | 0 .../Table/ICreateTableWithColumnBuilder.cs | 0 .../Delete/Column/DeleteColumnBuilder.cs | 0 .../Delete/Column/IDeleteColumnBuilder.cs | 0 .../Constraint/DeleteConstraintBuilder.cs | 0 .../Constraint/IDeleteConstraintBuilder.cs | 0 .../Delete/Data/DeleteDataBuilder.cs | 0 .../Delete/Data/IDeleteDataBuilder.cs | 0 .../DeleteDefaultConstraintBuilder.cs | 0 ...IDeleteDefaultConstraintOnColumnBuilder.cs | 0 .../IDeleteDefaultConstraintOnTableBuilder.cs | 0 .../Expressions/Delete/DeleteBuilder.cs | 0 .../Expressions/DeleteColumnExpression.cs | 0 .../Expressions/DeleteConstraintExpression.cs | 0 .../Expressions/DeleteDataExpression.cs | 0 .../DeleteDefaultConstraintExpression.cs | 0 .../Expressions/DeleteForeignKeyExpression.cs | 0 .../Expressions/DeleteIndexExpression.cs | 0 .../Expressions/DeleteTableExpression.cs | 0 .../ForeignKey/DeleteForeignKeyBuilder.cs | 0 .../IDeleteForeignKeyForeignColumnBuilder.cs | 0 .../IDeleteForeignKeyFromTableBuilder.cs | 0 .../IDeleteForeignKeyOnTableBuilder.cs | 0 .../IDeleteForeignKeyPrimaryColumnBuilder.cs | 0 .../IDeleteForeignKeyToTableBuilder.cs | 0 .../Expressions/Delete/IDeleteBuilder.cs | 0 .../Delete/Index/DeleteIndexBuilder.cs | 0 .../Index/IDeleteIndexForTableBuilder.cs | 0 .../Index/IDeleteIndexOnColumnBuilder.cs | 0 .../DeleteKeysAndIndexesBuilder.cs | 0 .../Expressions/Execute/ExecuteBuilder.cs | 0 .../ExecuteSqlStatementExpression.cs | 0 .../Expressions/Execute/IExecuteBuilder.cs | 0 .../Expressions/ExpressionBuilderBase.cs | 0 .../ExpressionBuilderBaseOfNext.cs | 0 .../Migrations/Expressions/IFluentBuilder.cs | 0 .../Expressions/InsertDataExpression.cs | 0 .../Expressions/Insert/IInsertBuilder.cs | 0 .../Expressions/Insert/IInsertIntoBuilder.cs | 0 .../Expressions/Insert/InsertBuilder.cs | 0 .../Expressions/Insert/InsertIntoBuilder.cs | 0 .../Rename/Column/IRenameColumnBuilder.cs | 0 .../Rename/Column/IRenameColumnToBuilder.cs | 0 .../Rename/Column/RenameColumnBuilder.cs | 0 .../Expressions/RenameColumnExpression.cs | 0 .../Expressions/RenameTableExpression.cs | 0 .../Expressions/Rename/IRenameBuilder.cs | 0 .../Expressions/Rename/RenameBuilder.cs | 0 .../Rename/Table/IRenameTableBuilder.cs | 0 .../Rename/Table/RenameTableBuilder.cs | 0 .../Expressions/UpdateDataExpression.cs | 0 .../Expressions/Update/IUpdateBuilder.cs | 0 .../Expressions/Update/IUpdateTableBuilder.cs | 0 .../Expressions/Update/IUpdateWhereBuilder.cs | 0 .../Expressions/Update/UpdateBuilder.cs | 0 .../Expressions/Update/UpdateDataBuilder.cs | 0 .../Migrations/IMigrationBuilder.cs | 0 .../Migrations/IMigrationContext.cs | 0 .../Migrations/IMigrationExpression.cs | 0 .../Migrations/Install/DatabaseBuilder.cs | 15 +- .../Migrations/Install/DatabaseDataCreator.cs | 6 +- .../Install/DatabaseSchemaCreator.cs | 8 +- .../Install/DatabaseSchemaResult.cs | 2 +- .../Migrations/MergeBuilder.cs | 0 .../Migrations/MigrationBase.cs | 0 .../Migrations/MigrationBase_Extra.cs | 0 .../Migrations/MigrationBuilder.cs | 0 .../Migrations/MigrationContext.cs | 0 .../Migrations/MigrationExpressionBase.cs | 0 .../Migrations/MigrationPlan.cs | 0 .../IPublishedSnapshotRebuilder.cs | 0 .../PublishedSnapshotRebuilder.cs | 0 .../RebuildPublishedSnapshot.cs | 0 .../Upgrade/Common/CreateKeysAndIndexes.cs | 0 .../Upgrade/Common/DeleteKeysAndIndexes.cs | 0 .../Migrations/Upgrade/UmbracoPlan.cs | 6 +- .../Migrations/Upgrade/Upgrader.cs | 0 .../Upgrade/V_8_0_0/AddContentNuTable.cs | 0 .../V_8_0_0/AddContentTypeIsElementColumn.cs | 0 .../Upgrade/V_8_0_0/AddLockObjects.cs | 0 .../Upgrade/V_8_0_0/AddLogTableColumns.cs | 0 .../Upgrade/V_8_0_0/AddTypedLabels.cs | 0 .../Upgrade/V_8_0_0/AddVariationTables1A.cs | 0 .../Upgrade/V_8_0_0/AddVariationTables2.cs | 0 .../V_8_0_0/ContentVariationMigration.cs | 0 .../ConvertRelatedLinksToMultiUrlPicker.cs | 0 .../Upgrade/V_8_0_0/DataTypeMigration.cs | 0 .../ContentPickerPreValueMigrator.cs | 0 .../DataTypes/DecimalPreValueMigrator.cs | 0 .../DataTypes/DefaultPreValueMigrator.cs | 0 .../DropDownFlexiblePreValueMigrator.cs | 0 .../V_8_0_0/DataTypes/IPreValueMigrator.cs | 0 .../DataTypes/ListViewPreValueMigrator.cs | 0 .../MarkdownEditorPreValueMigrator.cs | 0 .../DataTypes/MediaPickerPreValueMigrator.cs | 0 .../NestedContentPreValueMigrator.cs | 0 .../Upgrade/V_8_0_0/DataTypes/PreValueDto.cs | 0 .../V_8_0_0/DataTypes/PreValueMigratorBase.cs | 0 .../DataTypes/PreValueMigratorCollection.cs | 0 .../PreValueMigratorCollectionBuilder.cs | 0 .../DataTypes/PreValueMigratorComposer.cs | 0 .../DataTypes/RenamingPreValueMigrator.cs | 0 .../DataTypes/RichTextPreValueMigrator.cs | 0 .../UmbracoSliderPreValueMigrator.cs | 0 .../DataTypes/ValueListPreValueMigrator.cs | 0 .../DropDownPropertyEditorsMigration.cs | 0 .../Upgrade/V_8_0_0/DropMigrationsTable.cs | 0 .../Upgrade/V_8_0_0/DropPreValueTable.cs | 0 .../Upgrade/V_8_0_0/DropTaskTables.cs | 0 .../V_8_0_0/DropTemplateDesignColumn.cs | 0 .../Upgrade/V_8_0_0/DropXmlTables.cs | 0 .../Upgrade/V_8_0_0/FallbackLanguage.cs | 0 .../V_8_0_0/FixLanguageIsoCodeLength.cs | 0 .../Upgrade/V_8_0_0/LanguageColumns.cs | 0 .../Upgrade/V_8_0_0/MakeRedirectUrlVariant.cs | 0 .../Upgrade/V_8_0_0/MakeTagsVariant.cs | 0 .../MergeDateAndDateTimePropertyEditor.cs | 0 .../V_8_0_0/PropertyEditorsMigration.cs | 0 .../V_8_0_0/PropertyEditorsMigrationBase.cs | 0 ...adioAndCheckboxPropertyEditorsMigration.cs | 0 .../Upgrade/V_8_0_0/RefactorMacroColumns.cs | 0 .../Upgrade/V_8_0_0/RefactorVariantsModel.cs | 0 ...meLabelAndRichTextPropertyEditorAliases.cs | 0 .../V_8_0_0/RenameMediaVersionTable.cs | 0 .../V_8_0_0/RenameUmbracoDomainsTable.cs | 0 .../Migrations/Upgrade/V_8_0_0/SuperZero.cs | 0 .../V_8_0_0/TablesForScheduledPublishing.cs | 0 .../Upgrade/V_8_0_0/TagsMigration.cs | 0 .../Upgrade/V_8_0_0/TagsMigrationFix.cs | 0 .../V_8_0_0/UpdateDefaultMandatoryLanguage.cs | 0 .../V_8_0_0/UpdatePickerIntegerValuesToUdi.cs | 0 .../Upgrade/V_8_0_0/UserForeignKeys.cs | 0 .../Upgrade/V_8_0_0/VariantsMigration.cs | 0 .../V_8_0_1/ChangeNuCacheJsonFormat.cs | 0 ...nvertTinyMceAndGridMediaUrlsToLocalLink.cs | 0 .../Upgrade/V_8_1_0/FixContentNuCascade.cs | 0 .../V_8_1_0/RenameUserLoginDtoDateIndex.cs | 0 .../Upgrade/V_8_6_0/AddNewRelationTypes.cs | 0 ...AddPropertyTypeValidationMessageColumns.cs | 0 .../V_8_6_0/UpdateRelationTypeTable.cs | 0 .../Persistence/IDbProviderFactoryCreator.cs | 1 + .../Services/IdkMap.cs | 2 +- .../Services/Implement/AuditService.cs | 0 .../Services/Implement/ConsentService.cs | 0 .../Services/Implement/ContentService.cs | 4 +- .../ContentTypeBaseServiceProvider.cs | 0 .../Services/Implement/ContentTypeService.cs | 0 .../Implement/ContentTypeServiceBase.cs | 0 .../ContentTypeServiceBaseOfTItemTService.cs | 16 +- ...peServiceBaseOfTRepositoryTItemTService.cs | 0 .../Services/Implement/DataTypeService.cs | 0 .../Services/Implement/DomainService.cs | 0 .../Services/Implement/EntityService.cs | 0 .../Services/Implement/EntityXmlSerializer.cs | 15 +- .../Implement/ExternalLoginService.cs | 1 - .../Services/Implement/FileService.cs | 9 +- .../Services/Implement/KeyValueService.cs | 0 .../Services/Implement/LocalizationService.cs | 0 .../Implement/LocalizedTextService.cs | 0 .../LocalizedTextServiceFileSources.cs | 1 + ...lizedTextServiceSupplementaryFileSource.cs | 0 .../Services/Implement/MacroService.cs | 0 .../Services/Implement/MediaService.cs | 0 .../Services/Implement/MediaTypeService.cs | 0 .../Services/Implement/MemberGroupService.cs | 0 .../Services/Implement/MemberService.cs | 17 +- .../Services/Implement/MemberTypeService.cs | 0 .../Services/Implement/NotificationService.cs | 6 +- .../Services/Implement/PackagingService.cs | 0 .../Implement/PropertyValidationService.cs | 0 .../Services/Implement/PublicAccessService.cs | 0 .../Services/Implement/RedirectUrlService.cs | 0 .../Services/Implement/RelationService.cs | 0 .../Services/Implement/RepositoryService.cs | 0 .../Implement/ScopeRepositoryService.cs | 0 .../Implement/ServerRegistrationService.cs | 11 +- .../Services/Implement/TagService.cs | 0 .../Services/Implement/UserService.cs | 6 +- .../BulkInsertBenchmarks.cs | 2 +- .../Migrations/AdvancedMigrationTests.cs | 2 +- .../Migrations/MigrationPlanTests.cs | 2 +- .../Persistence/DatabaseContextTests.cs | 2 +- .../Persistence/SchemaValidationTest.cs | 2 +- .../Persistence/SqlCeTableByTableTest.cs | 70 +++--- src/Umbraco.Tests/Runtimes/StandaloneTests.cs | 2 +- src/Umbraco.Tests/TestHelpers/TestObjects.cs | 8 +- .../TestHelpers/TestWithDatabaseBase.cs | 2 +- .../InstallSteps/DatabaseUpgradeStep.cs | 6 +- .../UmbracoDbProviderFactoryCreator.cs | 8 + 241 files changed, 193 insertions(+), 394 deletions(-) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Alter/AlterBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Alter/Expressions/AlterColumnExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Alter/Expressions/AlterDefaultConstraintExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Alter/Expressions/AlterTableExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Alter/IAlterBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Alter/Table/AlterTableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Alter/Table/IAlterTableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Alter/Table/IAlterTableColumnOptionBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Alter/Table/IAlterTableColumnOptionForeignKeyCascadeBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Alter/Table/IAlterTableColumnTypeBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Common/ExecutableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Common/Expressions/CreateColumnExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Common/Expressions/CreateForeignKeyExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Common/Expressions/CreateIndexExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Common/IColumnOptionBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Common/IColumnTypeBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Common/IExecutableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Common/IForeignKeyCascadeBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Column/CreateColumnBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Column/ICreateColumnOnTableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Column/ICreateColumnOptionBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Column/ICreateColumnOptionForeignKeyCascadeBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Column/ICreateColumnTypeBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Constraint/CreateConstraintBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Constraint/ICreateConstraintColumnsBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Constraint/ICreateConstraintOnTableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/CreateBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Expressions/CreateConstraintExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Expressions/CreateTableExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/ForeignKey/CreateForeignKeyBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyCascadeBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyForeignColumnBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyFromTableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyPrimaryColumnBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyToTableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/ICreateBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Index/CreateIndexBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Index/ICreateIndexColumnOptionsBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Index/ICreateIndexForTableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Index/ICreateIndexOnColumnBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Index/ICreateIndexOptionsBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/KeysAndIndexes/CreateKeysAndIndexesBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Table/CreateTableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Table/CreateTableOfDtoBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Table/ICreateTableColumnAsTypeBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Table/ICreateTableColumnOptionBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Table/ICreateTableColumnOptionForeignKeyCascadeBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Create/Table/ICreateTableWithColumnBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/Column/DeleteColumnBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/Column/IDeleteColumnBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/Constraint/DeleteConstraintBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/Constraint/IDeleteConstraintBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/Data/DeleteDataBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/Data/IDeleteDataBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/DefaultConstraint/DeleteDefaultConstraintBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/DefaultConstraint/IDeleteDefaultConstraintOnColumnBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/DefaultConstraint/IDeleteDefaultConstraintOnTableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/DeleteBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/Expressions/DeleteColumnExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/Expressions/DeleteConstraintExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/Expressions/DeleteDataExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/Expressions/DeleteDefaultConstraintExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/Expressions/DeleteForeignKeyExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/Expressions/DeleteIndexExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/Expressions/DeleteTableExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/ForeignKey/DeleteForeignKeyBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyForeignColumnBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyFromTableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyOnTableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyPrimaryColumnBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyToTableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/IDeleteBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/Index/DeleteIndexBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/Index/IDeleteIndexForTableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/Index/IDeleteIndexOnColumnBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Delete/KeysAndIndexes/DeleteKeysAndIndexesBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Execute/ExecuteBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Execute/Expressions/ExecuteSqlStatementExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Execute/IExecuteBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/ExpressionBuilderBase.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/ExpressionBuilderBaseOfNext.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/IFluentBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Insert/Expressions/InsertDataExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Insert/IInsertBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Insert/IInsertIntoBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Insert/InsertBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Insert/InsertIntoBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Rename/Column/IRenameColumnBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Rename/Column/IRenameColumnToBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Rename/Column/RenameColumnBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Rename/Expressions/RenameColumnExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Rename/Expressions/RenameTableExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Rename/IRenameBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Rename/RenameBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Rename/Table/IRenameTableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Rename/Table/RenameTableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Update/Expressions/UpdateDataExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Update/IUpdateBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Update/IUpdateTableBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Update/IUpdateWhereBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Update/UpdateBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Expressions/Update/UpdateDataBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/IMigrationBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/IMigrationContext.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/IMigrationExpression.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Install/DatabaseBuilder.cs (98%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Install/DatabaseDataCreator.cs (99%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Install/DatabaseSchemaCreator.cs (98%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Install/DatabaseSchemaResult.cs (99%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/MergeBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/MigrationBase.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/MigrationBase_Extra.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/MigrationBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/MigrationContext.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/MigrationExpressionBase.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/MigrationPlan.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/PostMigrations/IPublishedSnapshotRebuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/PostMigrations/PublishedSnapshotRebuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/PostMigrations/RebuildPublishedSnapshot.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/Common/CreateKeysAndIndexes.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/Common/DeleteKeysAndIndexes.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/UmbracoPlan.cs (96%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/Upgrader.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/AddContentNuTable.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/AddContentTypeIsElementColumn.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/AddLockObjects.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/AddLogTableColumns.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/AddTypedLabels.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/AddVariationTables1A.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/AddVariationTables2.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/ContentVariationMigration.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/ConvertRelatedLinksToMultiUrlPicker.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/ContentPickerPreValueMigrator.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/DecimalPreValueMigrator.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/DefaultPreValueMigrator.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/DropDownFlexiblePreValueMigrator.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/IPreValueMigrator.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/ListViewPreValueMigrator.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/MarkdownEditorPreValueMigrator.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/MediaPickerPreValueMigrator.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/NestedContentPreValueMigrator.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueDto.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorBase.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollectionBuilder.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorComposer.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/RenamingPreValueMigrator.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/RichTextPreValueMigrator.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/UmbracoSliderPreValueMigrator.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DataTypes/ValueListPreValueMigrator.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DropMigrationsTable.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DropPreValueTable.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DropTaskTables.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DropTemplateDesignColumn.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/DropXmlTables.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/FallbackLanguage.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/FixLanguageIsoCodeLength.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/LanguageColumns.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/MakeRedirectUrlVariant.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/MakeTagsVariant.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigration.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/RefactorMacroColumns.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/RefactorVariantsModel.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/RenameLabelAndRichTextPropertyEditorAliases.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/RenameMediaVersionTable.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/RenameUmbracoDomainsTable.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/SuperZero.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/TablesForScheduledPublishing.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/TagsMigration.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/TagsMigrationFix.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/UpdateDefaultMandatoryLanguage.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/UpdatePickerIntegerValuesToUdi.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/UserForeignKeys.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_0/VariantsMigration.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_0_1/ChangeNuCacheJsonFormat.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_1_0/ConvertTinyMceAndGridMediaUrlsToLocalLink.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_1_0/FixContentNuCascade.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_1_0/RenameUserLoginDtoDateIndex.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_6_0/AddNewRelationTypes.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_6_0/AddPropertyTypeValidationMessageColumns.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Migrations/Upgrade/V_8_6_0/UpdateRelationTypeTable.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/IdkMap.cs (99%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/AuditService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/ConsentService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/ContentService.cs (99%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/ContentTypeBaseServiceProvider.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/ContentTypeService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/ContentTypeServiceBase.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/ContentTypeServiceBaseOfTItemTService.cs (96%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/ContentTypeServiceBaseOfTRepositoryTItemTService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/DataTypeService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/DomainService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/EntityService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/EntityXmlSerializer.cs (98%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/ExternalLoginService.cs (98%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/FileService.cs (99%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/KeyValueService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/LocalizationService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/LocalizedTextService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/LocalizedTextServiceFileSources.cs (99%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/LocalizedTextServiceSupplementaryFileSource.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/MacroService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/MediaService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/MediaTypeService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/MemberGroupService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/MemberService.cs (99%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/MemberTypeService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/NotificationService.cs (99%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/PackagingService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/PropertyValidationService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/PublicAccessService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/RedirectUrlService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/RelationService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/RepositoryService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/ScopeRepositoryService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/ServerRegistrationService.cs (94%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/TagService.cs (100%) rename src/{Umbraco.Core => Umbraco.Infrastructure}/Services/Implement/UserService.cs (99%) diff --git a/src/Umbraco.Abstractions/Services/IMembershipMemberService.cs b/src/Umbraco.Abstractions/Services/IMembershipMemberService.cs index 448b0c761a..d3ca954de8 100644 --- a/src/Umbraco.Abstractions/Services/IMembershipMemberService.cs +++ b/src/Umbraco.Abstractions/Services/IMembershipMemberService.cs @@ -124,15 +124,7 @@ namespace Umbraco.Core.Services /// Optional parameter to raise events. /// Default is True otherwise set to False to not raise events void Save(IEnumerable entities, bool raiseEvents = true); - - /// - /// Gets the default MemberType alias - /// - /// By default we'll return the 'writer', but we need to check it exists. If it doesn't we'll - /// return the first type that is not an admin, otherwise if there's only one we will return that one. - /// Alias of the default MemberType - string GetDefaultMemberType(); - + /// /// Finds a list of objects by a partial email string /// diff --git a/src/Umbraco.Abstractions/Services/IUserService.cs b/src/Umbraco.Abstractions/Services/IUserService.cs index 950b4f548d..6d1e8f82ac 100644 --- a/src/Umbraco.Abstractions/Services/IUserService.cs +++ b/src/Umbraco.Abstractions/Services/IUserService.cs @@ -203,6 +203,8 @@ namespace Umbraco.Core.Services /// IEnumerable GetAllNotInGroup(int groupId); + IEnumerable GetNextUsers(int id, int count); + #region User groups /// diff --git a/src/Umbraco.Core/ContentExtensions.cs b/src/Umbraco.Core/ContentExtensions.cs index 29520d0b20..16a86a1527 100644 --- a/src/Umbraco.Core/ContentExtensions.cs +++ b/src/Umbraco.Core/ContentExtensions.cs @@ -21,38 +21,6 @@ namespace Umbraco.Core private static IMediaFileSystem _mediaFileSystem; private static IMediaFileSystem MediaFileSystem => _mediaFileSystem ?? (_mediaFileSystem = Current.MediaFileSystem); - #region IContent - - /// - /// Gets the current status of the Content - /// - public static ContentStatus GetStatus(this IContent content, string culture = null) - { - if (content.Trashed) - return ContentStatus.Trashed; - - if (!content.ContentType.VariesByCulture()) - culture = string.Empty; - else if (culture.IsNullOrWhiteSpace()) - throw new ArgumentNullException($"{nameof(culture)} cannot be null or empty"); - - var expires = content.ContentSchedule.GetSchedule(culture, ContentScheduleAction.Expire); - if (expires != null && expires.Any(x => x.Date > DateTime.MinValue && DateTime.Now > x.Date)) - return ContentStatus.Expired; - - var release = content.ContentSchedule.GetSchedule(culture, ContentScheduleAction.Release); - if (release != null && release.Any(x => x.Date > DateTime.MinValue && x.Date > DateTime.Now)) - return ContentStatus.AwaitingRelease; - - if (content.Published) - return ContentStatus.Published; - - return ContentStatus.Unpublished; - } - - - - #endregion @@ -207,13 +175,6 @@ namespace Umbraco.Core return Current.Services.UserService.GetProfileById(content.CreatorId); } - /// - /// Gets the for the Creator of this content item. - /// - public static IProfile GetCreatorProfile(this IContentBase content, IUserService userService) - { - return userService.GetProfileById(content.CreatorId); - } [Obsolete("Use the overload that declares the IUserService to use")] [EditorBrowsable(EditorBrowsableState.Never)] @@ -222,21 +183,7 @@ namespace Umbraco.Core return Current.Services.UserService.GetProfileById(content.WriterId); } - /// - /// Gets the for the Writer of this content. - /// - public static IProfile GetWriterProfile(this IContent content, IUserService userService) - { - return userService.GetProfileById(content.WriterId); - } - /// - /// Gets the for the Writer of this content. - /// - public static IProfile GetWriterProfile(this IMedia content, IUserService userService) - { - return userService.GetProfileById(content.WriterId); - } #endregion diff --git a/src/Umbraco.Core/RuntimeState.cs b/src/Umbraco.Core/RuntimeState.cs index 8b639fdaec..8c860743a5 100644 --- a/src/Umbraco.Core/RuntimeState.cs +++ b/src/Umbraco.Core/RuntimeState.cs @@ -257,7 +257,7 @@ namespace Umbraco.Core protected virtual bool EnsureUmbracoUpgradeState(IUmbracoDatabaseFactory databaseFactory, ILogger logger) { - var upgrader = new Upgrader(new UmbracoPlan(_umbracoVersion)); + var upgrader = new Upgrader(new UmbracoPlan(_umbracoVersion, _globalSettings)); var stateValueKey = upgrader.StateValueKey; // no scope, no service - just directly accessing the database diff --git a/src/Umbraco.Core/Umbraco.Core.csproj b/src/Umbraco.Core/Umbraco.Core.csproj index 7cc8ebd928..f6ca9a19be 100755 --- a/src/Umbraco.Core/Umbraco.Core.csproj +++ b/src/Umbraco.Core/Umbraco.Core.csproj @@ -153,37 +153,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -193,10 +162,8 @@ - - @@ -221,49 +188,9 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -272,121 +199,7 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -403,42 +216,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -465,9 +242,7 @@ - - - + \ No newline at end of file diff --git a/src/Umbraco.Infrastructure/ContentExtensions.cs b/src/Umbraco.Infrastructure/ContentExtensions.cs index 6bff40e306..f3341c9c8e 100644 --- a/src/Umbraco.Infrastructure/ContentExtensions.cs +++ b/src/Umbraco.Infrastructure/ContentExtensions.cs @@ -1,4 +1,8 @@ +using System; +using System.Linq; using Umbraco.Core.Models; +using Umbraco.Core.Models.Membership; +using Umbraco.Core.Services; namespace Umbraco.Core { @@ -27,5 +31,62 @@ namespace Umbraco.Core } } } + + + #region IContent + + /// + /// Gets the current status of the Content + /// + public static ContentStatus GetStatus(this IContent content, string culture = null) + { + if (content.Trashed) + return ContentStatus.Trashed; + + if (!content.ContentType.VariesByCulture()) + culture = string.Empty; + else if (culture.IsNullOrWhiteSpace()) + throw new ArgumentNullException($"{nameof(culture)} cannot be null or empty"); + + var expires = content.ContentSchedule.GetSchedule(culture, ContentScheduleAction.Expire); + if (expires != null && expires.Any(x => x.Date > DateTime.MinValue && DateTime.Now > x.Date)) + return ContentStatus.Expired; + + var release = content.ContentSchedule.GetSchedule(culture, ContentScheduleAction.Release); + if (release != null && release.Any(x => x.Date > DateTime.MinValue && x.Date > DateTime.Now)) + return ContentStatus.AwaitingRelease; + + if (content.Published) + return ContentStatus.Published; + + return ContentStatus.Unpublished; + } + + + + #endregion + + /// + /// Gets the for the Creator of this content item. + /// + public static IProfile GetCreatorProfile(this IContentBase content, IUserService userService) + { + return userService.GetProfileById(content.CreatorId); + } + /// + /// Gets the for the Writer of this content. + /// + public static IProfile GetWriterProfile(this IContent content, IUserService userService) + { + return userService.GetProfileById(content.WriterId); + } + + /// + /// Gets the for the Writer of this content. + /// + public static IProfile GetWriterProfile(this IMedia content, IUserService userService) + { + return userService.GetProfileById(content.WriterId); + } } } diff --git a/src/Umbraco.Core/Migrations/Expressions/Alter/AlterBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Alter/AlterBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Alter/AlterBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Alter/AlterBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Alter/Expressions/AlterColumnExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Alter/Expressions/AlterColumnExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Alter/Expressions/AlterColumnExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Alter/Expressions/AlterColumnExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Alter/Expressions/AlterDefaultConstraintExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Alter/Expressions/AlterDefaultConstraintExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Alter/Expressions/AlterDefaultConstraintExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Alter/Expressions/AlterDefaultConstraintExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Alter/Expressions/AlterTableExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Alter/Expressions/AlterTableExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Alter/Expressions/AlterTableExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Alter/Expressions/AlterTableExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Alter/IAlterBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Alter/IAlterBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Alter/IAlterBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Alter/IAlterBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Alter/Table/AlterTableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Alter/Table/AlterTableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Alter/Table/AlterTableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Alter/Table/AlterTableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Alter/Table/IAlterTableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Alter/Table/IAlterTableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Alter/Table/IAlterTableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Alter/Table/IAlterTableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Alter/Table/IAlterTableColumnOptionBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Alter/Table/IAlterTableColumnOptionBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Alter/Table/IAlterTableColumnOptionBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Alter/Table/IAlterTableColumnOptionBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Alter/Table/IAlterTableColumnOptionForeignKeyCascadeBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Alter/Table/IAlterTableColumnOptionForeignKeyCascadeBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Alter/Table/IAlterTableColumnOptionForeignKeyCascadeBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Alter/Table/IAlterTableColumnOptionForeignKeyCascadeBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Alter/Table/IAlterTableColumnTypeBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Alter/Table/IAlterTableColumnTypeBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Alter/Table/IAlterTableColumnTypeBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Alter/Table/IAlterTableColumnTypeBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Common/ExecutableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Common/ExecutableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Common/ExecutableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Common/ExecutableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Common/Expressions/CreateColumnExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Common/Expressions/CreateColumnExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Common/Expressions/CreateColumnExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Common/Expressions/CreateColumnExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Common/Expressions/CreateForeignKeyExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Common/Expressions/CreateForeignKeyExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Common/Expressions/CreateForeignKeyExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Common/Expressions/CreateForeignKeyExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Common/Expressions/CreateIndexExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Common/Expressions/CreateIndexExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Common/Expressions/CreateIndexExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Common/Expressions/CreateIndexExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Common/IColumnOptionBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Common/IColumnOptionBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Common/IColumnOptionBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Common/IColumnOptionBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Common/IColumnTypeBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Common/IColumnTypeBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Common/IColumnTypeBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Common/IColumnTypeBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Common/IExecutableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Common/IExecutableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Common/IExecutableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Common/IExecutableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Common/IForeignKeyCascadeBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Common/IForeignKeyCascadeBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Common/IForeignKeyCascadeBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Common/IForeignKeyCascadeBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Column/CreateColumnBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Column/CreateColumnBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Column/CreateColumnBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Column/CreateColumnBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Column/ICreateColumnOnTableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Column/ICreateColumnOnTableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Column/ICreateColumnOnTableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Column/ICreateColumnOnTableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Column/ICreateColumnOptionBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Column/ICreateColumnOptionBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Column/ICreateColumnOptionBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Column/ICreateColumnOptionBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Column/ICreateColumnOptionForeignKeyCascadeBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Column/ICreateColumnOptionForeignKeyCascadeBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Column/ICreateColumnOptionForeignKeyCascadeBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Column/ICreateColumnOptionForeignKeyCascadeBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Column/ICreateColumnTypeBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Column/ICreateColumnTypeBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Column/ICreateColumnTypeBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Column/ICreateColumnTypeBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Constraint/CreateConstraintBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Constraint/CreateConstraintBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Constraint/CreateConstraintBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Constraint/CreateConstraintBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Constraint/ICreateConstraintColumnsBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Constraint/ICreateConstraintColumnsBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Constraint/ICreateConstraintColumnsBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Constraint/ICreateConstraintColumnsBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Constraint/ICreateConstraintOnTableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Constraint/ICreateConstraintOnTableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Constraint/ICreateConstraintOnTableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Constraint/ICreateConstraintOnTableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/CreateBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/CreateBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/CreateBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/CreateBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Expressions/CreateConstraintExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Expressions/CreateConstraintExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Expressions/CreateConstraintExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Expressions/CreateConstraintExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Expressions/CreateTableExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Expressions/CreateTableExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Expressions/CreateTableExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Expressions/CreateTableExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/ForeignKey/CreateForeignKeyBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/ForeignKey/CreateForeignKeyBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/ForeignKey/CreateForeignKeyBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/ForeignKey/CreateForeignKeyBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyCascadeBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyCascadeBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyCascadeBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyCascadeBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyForeignColumnBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyForeignColumnBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyForeignColumnBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyForeignColumnBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyFromTableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyFromTableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyFromTableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyFromTableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyPrimaryColumnBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyPrimaryColumnBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyPrimaryColumnBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyPrimaryColumnBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyToTableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyToTableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyToTableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/ForeignKey/ICreateForeignKeyToTableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/ICreateBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/ICreateBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/ICreateBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/ICreateBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Index/CreateIndexBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Index/CreateIndexBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Index/CreateIndexBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Index/CreateIndexBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Index/ICreateIndexColumnOptionsBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Index/ICreateIndexColumnOptionsBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Index/ICreateIndexColumnOptionsBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Index/ICreateIndexColumnOptionsBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Index/ICreateIndexForTableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Index/ICreateIndexForTableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Index/ICreateIndexForTableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Index/ICreateIndexForTableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Index/ICreateIndexOnColumnBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Index/ICreateIndexOnColumnBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Index/ICreateIndexOnColumnBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Index/ICreateIndexOnColumnBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Index/ICreateIndexOptionsBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Index/ICreateIndexOptionsBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Index/ICreateIndexOptionsBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Index/ICreateIndexOptionsBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/KeysAndIndexes/CreateKeysAndIndexesBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/KeysAndIndexes/CreateKeysAndIndexesBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/KeysAndIndexes/CreateKeysAndIndexesBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/KeysAndIndexes/CreateKeysAndIndexesBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Table/CreateTableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Table/CreateTableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Table/CreateTableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Table/CreateTableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Table/CreateTableOfDtoBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Table/CreateTableOfDtoBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Table/CreateTableOfDtoBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Table/CreateTableOfDtoBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Table/ICreateTableColumnAsTypeBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Table/ICreateTableColumnAsTypeBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Table/ICreateTableColumnAsTypeBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Table/ICreateTableColumnAsTypeBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Table/ICreateTableColumnOptionBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Table/ICreateTableColumnOptionBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Table/ICreateTableColumnOptionBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Table/ICreateTableColumnOptionBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Table/ICreateTableColumnOptionForeignKeyCascadeBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Table/ICreateTableColumnOptionForeignKeyCascadeBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Table/ICreateTableColumnOptionForeignKeyCascadeBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Table/ICreateTableColumnOptionForeignKeyCascadeBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Create/Table/ICreateTableWithColumnBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Create/Table/ICreateTableWithColumnBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Create/Table/ICreateTableWithColumnBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Create/Table/ICreateTableWithColumnBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/Column/DeleteColumnBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Column/DeleteColumnBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/Column/DeleteColumnBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Column/DeleteColumnBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/Column/IDeleteColumnBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Column/IDeleteColumnBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/Column/IDeleteColumnBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Column/IDeleteColumnBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/Constraint/DeleteConstraintBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Constraint/DeleteConstraintBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/Constraint/DeleteConstraintBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Constraint/DeleteConstraintBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/Constraint/IDeleteConstraintBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Constraint/IDeleteConstraintBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/Constraint/IDeleteConstraintBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Constraint/IDeleteConstraintBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/Data/DeleteDataBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Data/DeleteDataBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/Data/DeleteDataBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Data/DeleteDataBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/Data/IDeleteDataBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Data/IDeleteDataBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/Data/IDeleteDataBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Data/IDeleteDataBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/DefaultConstraint/DeleteDefaultConstraintBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/DefaultConstraint/DeleteDefaultConstraintBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/DefaultConstraint/DeleteDefaultConstraintBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/DefaultConstraint/DeleteDefaultConstraintBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/DefaultConstraint/IDeleteDefaultConstraintOnColumnBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/DefaultConstraint/IDeleteDefaultConstraintOnColumnBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/DefaultConstraint/IDeleteDefaultConstraintOnColumnBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/DefaultConstraint/IDeleteDefaultConstraintOnColumnBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/DefaultConstraint/IDeleteDefaultConstraintOnTableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/DefaultConstraint/IDeleteDefaultConstraintOnTableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/DefaultConstraint/IDeleteDefaultConstraintOnTableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/DefaultConstraint/IDeleteDefaultConstraintOnTableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/DeleteBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/DeleteBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/DeleteBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/DeleteBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/Expressions/DeleteColumnExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Expressions/DeleteColumnExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/Expressions/DeleteColumnExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Expressions/DeleteColumnExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/Expressions/DeleteConstraintExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Expressions/DeleteConstraintExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/Expressions/DeleteConstraintExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Expressions/DeleteConstraintExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/Expressions/DeleteDataExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Expressions/DeleteDataExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/Expressions/DeleteDataExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Expressions/DeleteDataExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/Expressions/DeleteDefaultConstraintExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Expressions/DeleteDefaultConstraintExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/Expressions/DeleteDefaultConstraintExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Expressions/DeleteDefaultConstraintExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/Expressions/DeleteForeignKeyExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Expressions/DeleteForeignKeyExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/Expressions/DeleteForeignKeyExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Expressions/DeleteForeignKeyExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/Expressions/DeleteIndexExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Expressions/DeleteIndexExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/Expressions/DeleteIndexExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Expressions/DeleteIndexExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/Expressions/DeleteTableExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Expressions/DeleteTableExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/Expressions/DeleteTableExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Expressions/DeleteTableExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/ForeignKey/DeleteForeignKeyBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/ForeignKey/DeleteForeignKeyBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/ForeignKey/DeleteForeignKeyBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/ForeignKey/DeleteForeignKeyBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyForeignColumnBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyForeignColumnBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyForeignColumnBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyForeignColumnBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyFromTableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyFromTableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyFromTableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyFromTableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyOnTableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyOnTableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyOnTableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyOnTableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyPrimaryColumnBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyPrimaryColumnBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyPrimaryColumnBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyPrimaryColumnBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyToTableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyToTableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyToTableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/ForeignKey/IDeleteForeignKeyToTableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/IDeleteBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/IDeleteBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/IDeleteBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/IDeleteBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/Index/DeleteIndexBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Index/DeleteIndexBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/Index/DeleteIndexBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Index/DeleteIndexBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/Index/IDeleteIndexForTableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Index/IDeleteIndexForTableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/Index/IDeleteIndexForTableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Index/IDeleteIndexForTableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/Index/IDeleteIndexOnColumnBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Index/IDeleteIndexOnColumnBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/Index/IDeleteIndexOnColumnBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/Index/IDeleteIndexOnColumnBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Delete/KeysAndIndexes/DeleteKeysAndIndexesBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Delete/KeysAndIndexes/DeleteKeysAndIndexesBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Delete/KeysAndIndexes/DeleteKeysAndIndexesBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Delete/KeysAndIndexes/DeleteKeysAndIndexesBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Execute/ExecuteBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Execute/ExecuteBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Execute/ExecuteBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Execute/ExecuteBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Execute/Expressions/ExecuteSqlStatementExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Execute/Expressions/ExecuteSqlStatementExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Execute/Expressions/ExecuteSqlStatementExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Execute/Expressions/ExecuteSqlStatementExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Execute/IExecuteBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Execute/IExecuteBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Execute/IExecuteBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Execute/IExecuteBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/ExpressionBuilderBase.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/ExpressionBuilderBase.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/ExpressionBuilderBase.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/ExpressionBuilderBase.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/ExpressionBuilderBaseOfNext.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/ExpressionBuilderBaseOfNext.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/ExpressionBuilderBaseOfNext.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/ExpressionBuilderBaseOfNext.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/IFluentBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/IFluentBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/IFluentBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/IFluentBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Insert/Expressions/InsertDataExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Insert/Expressions/InsertDataExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Insert/Expressions/InsertDataExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Insert/Expressions/InsertDataExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Insert/IInsertBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Insert/IInsertBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Insert/IInsertBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Insert/IInsertBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Insert/IInsertIntoBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Insert/IInsertIntoBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Insert/IInsertIntoBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Insert/IInsertIntoBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Insert/InsertBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Insert/InsertBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Insert/InsertBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Insert/InsertBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Insert/InsertIntoBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Insert/InsertIntoBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Insert/InsertIntoBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Insert/InsertIntoBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Rename/Column/IRenameColumnBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Rename/Column/IRenameColumnBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Rename/Column/IRenameColumnBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Rename/Column/IRenameColumnBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Rename/Column/IRenameColumnToBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Rename/Column/IRenameColumnToBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Rename/Column/IRenameColumnToBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Rename/Column/IRenameColumnToBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Rename/Column/RenameColumnBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Rename/Column/RenameColumnBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Rename/Column/RenameColumnBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Rename/Column/RenameColumnBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Rename/Expressions/RenameColumnExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Rename/Expressions/RenameColumnExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Rename/Expressions/RenameColumnExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Rename/Expressions/RenameColumnExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Rename/Expressions/RenameTableExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Rename/Expressions/RenameTableExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Rename/Expressions/RenameTableExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Rename/Expressions/RenameTableExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Rename/IRenameBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Rename/IRenameBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Rename/IRenameBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Rename/IRenameBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Rename/RenameBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Rename/RenameBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Rename/RenameBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Rename/RenameBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Rename/Table/IRenameTableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Rename/Table/IRenameTableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Rename/Table/IRenameTableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Rename/Table/IRenameTableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Rename/Table/RenameTableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Rename/Table/RenameTableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Rename/Table/RenameTableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Rename/Table/RenameTableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Update/Expressions/UpdateDataExpression.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Update/Expressions/UpdateDataExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Update/Expressions/UpdateDataExpression.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Update/Expressions/UpdateDataExpression.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Update/IUpdateBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Update/IUpdateBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Update/IUpdateBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Update/IUpdateBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Update/IUpdateTableBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Update/IUpdateTableBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Update/IUpdateTableBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Update/IUpdateTableBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Update/IUpdateWhereBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Update/IUpdateWhereBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Update/IUpdateWhereBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Update/IUpdateWhereBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Update/UpdateBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Update/UpdateBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Update/UpdateBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Update/UpdateBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Expressions/Update/UpdateDataBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Expressions/Update/UpdateDataBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Expressions/Update/UpdateDataBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Expressions/Update/UpdateDataBuilder.cs diff --git a/src/Umbraco.Core/Migrations/IMigrationBuilder.cs b/src/Umbraco.Infrastructure/Migrations/IMigrationBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/IMigrationBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/IMigrationBuilder.cs diff --git a/src/Umbraco.Core/Migrations/IMigrationContext.cs b/src/Umbraco.Infrastructure/Migrations/IMigrationContext.cs similarity index 100% rename from src/Umbraco.Core/Migrations/IMigrationContext.cs rename to src/Umbraco.Infrastructure/Migrations/IMigrationContext.cs diff --git a/src/Umbraco.Core/Migrations/IMigrationExpression.cs b/src/Umbraco.Infrastructure/Migrations/IMigrationExpression.cs similarity index 100% rename from src/Umbraco.Core/Migrations/IMigrationExpression.cs rename to src/Umbraco.Infrastructure/Migrations/IMigrationExpression.cs diff --git a/src/Umbraco.Core/Migrations/Install/DatabaseBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs similarity index 98% rename from src/Umbraco.Core/Migrations/Install/DatabaseBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs index 06d78d1318..8b1e6d741b 100644 --- a/src/Umbraco.Core/Migrations/Install/DatabaseBuilder.cs +++ b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs @@ -1,9 +1,7 @@ using System; -using System.Data.SqlServerCe; using System.IO; using System.Linq; using System.Xml.Linq; -using Umbraco.Core.Composing; using Umbraco.Core.Configuration; using Umbraco.Core.IO; using Umbraco.Core.Logging; @@ -106,7 +104,7 @@ namespace Umbraco.Core.Migrations.Install return DbConnectionExtensions.IsConnectionAvailable(connectionString, factory); } - internal bool HasSomeNonDefaultUser() + public bool HasSomeNonDefaultUser() { using (var scope = _scopeProvider.CreateScope()) { @@ -143,7 +141,7 @@ namespace Umbraco.Core.Migrations.Install ConfigureEmbeddedDatabaseConnection(_databaseFactory, _ioHelper, _logger); } - private static void ConfigureEmbeddedDatabaseConnection(IUmbracoDatabaseFactory factory, IIOHelper ioHelper, ILogger logger) + private void ConfigureEmbeddedDatabaseConnection(IUmbracoDatabaseFactory factory, IIOHelper ioHelper, ILogger logger) { SaveConnectionString(EmbeddedDatabaseConnectionString, Constants.DbProviderNames.SqlCe, ioHelper, logger); @@ -153,8 +151,7 @@ namespace Umbraco.Core.Migrations.Install // this should probably be in a "using (new SqlCeEngine)" clause but not sure // of the side effects and it's been like this for quite some time now - var engine = new SqlCeEngine(EmbeddedDatabaseConnectionString); - engine.CreateDatabase(); + _dbProviderFactoryCreator.CreateDatabase(); } factory.Configure(EmbeddedDatabaseConnectionString, Constants.DbProviderNames.SqlCe); @@ -366,7 +363,7 @@ namespace Umbraco.Core.Migrations.Install /// This assumes that the database exists and the connection string is /// configured and it is possible to connect to the database. /// - internal DatabaseSchemaResult ValidateSchema() + public DatabaseSchemaResult ValidateSchema() { using (var scope = _scopeProvider.CreateScope()) { @@ -385,7 +382,7 @@ namespace Umbraco.Core.Migrations.Install return _databaseSchemaValidationResult; var database = scope.Database; - var dbSchema = new DatabaseSchemaCreator(database, _logger, _umbracoVersion); + var dbSchema = new DatabaseSchemaCreator(database, _logger, _umbracoVersion, _globalSettings); _databaseSchemaValidationResult = dbSchema.ValidateSchema(); scope.Complete(); return _databaseSchemaValidationResult; @@ -435,7 +432,7 @@ namespace Umbraco.Core.Migrations.Install if (_runtime.Level == RuntimeLevel.Run) throw new Exception("Umbraco is already configured!"); - var creator = new DatabaseSchemaCreator(database, _logger, _umbracoVersion); + var creator = new DatabaseSchemaCreator(database, _logger, _umbracoVersion, _globalSettings); creator.InitializeDatabaseSchema(); message = message + "

Installation completed!

"; diff --git a/src/Umbraco.Core/Migrations/Install/DatabaseDataCreator.cs b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseDataCreator.cs similarity index 99% rename from src/Umbraco.Core/Migrations/Install/DatabaseDataCreator.cs rename to src/Umbraco.Infrastructure/Migrations/Install/DatabaseDataCreator.cs index 41aceb8a69..bd0b733623 100644 --- a/src/Umbraco.Core/Migrations/Install/DatabaseDataCreator.cs +++ b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseDataCreator.cs @@ -16,12 +16,14 @@ namespace Umbraco.Core.Migrations.Install private readonly IDatabase _database; private readonly ILogger _logger; private readonly IUmbracoVersion _umbracoVersion; + private readonly IGlobalSettings _globalSettings; - public DatabaseDataCreator(IDatabase database, ILogger logger, IUmbracoVersion umbracoVersion) + public DatabaseDataCreator(IDatabase database, ILogger logger, IUmbracoVersion umbracoVersion, IGlobalSettings globalSettings) { _database = database; _logger = logger; _umbracoVersion = umbracoVersion; + _globalSettings = globalSettings; } /// @@ -336,7 +338,7 @@ namespace Umbraco.Core.Migrations.Install { // on install, initialize the umbraco migration plan with the final state - var upgrader = new Upgrader(new UmbracoPlan(_umbracoVersion)); + var upgrader = new Upgrader(new UmbracoPlan(_umbracoVersion, _globalSettings)); var stateValueKey = upgrader.StateValueKey; var finalState = upgrader.Plan.FinalState; diff --git a/src/Umbraco.Core/Migrations/Install/DatabaseSchemaCreator.cs b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs similarity index 98% rename from src/Umbraco.Core/Migrations/Install/DatabaseSchemaCreator.cs rename to src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs index 7181460eeb..8a79cca403 100644 --- a/src/Umbraco.Core/Migrations/Install/DatabaseSchemaCreator.cs +++ b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs @@ -20,12 +20,14 @@ namespace Umbraco.Core.Migrations.Install private readonly IUmbracoDatabase _database; private readonly ILogger _logger; private readonly IUmbracoVersion _umbracoVersion; + private readonly IGlobalSettings _globalSettings; - public DatabaseSchemaCreator(IUmbracoDatabase database, ILogger logger, IUmbracoVersion umbracoVersion) + public DatabaseSchemaCreator(IUmbracoDatabase database, ILogger logger, IUmbracoVersion umbracoVersion, IGlobalSettings globalSettings) { _database = database; _logger = logger; _umbracoVersion = umbracoVersion; + _globalSettings = globalSettings; } private ISqlSyntaxProvider SqlSyntax => _database.SqlContext.SqlSyntax; @@ -128,7 +130,7 @@ namespace Umbraco.Core.Migrations.Install if (e.Cancel == false) { - var dataCreation = new DatabaseDataCreator(_database, _logger,_umbracoVersion); + var dataCreation = new DatabaseDataCreator(_database, _logger,_umbracoVersion, _globalSettings); foreach (var table in OrderedTables) CreateTable(false, table, dataCreation); } @@ -398,7 +400,7 @@ namespace Umbraco.Core.Migrations.Install where T : new() { var tableType = typeof(T); - CreateTable(overwrite, tableType, new DatabaseDataCreator(_database, _logger, _umbracoVersion)); + CreateTable(overwrite, tableType, new DatabaseDataCreator(_database, _logger, _umbracoVersion, _globalSettings)); } /// diff --git a/src/Umbraco.Core/Migrations/Install/DatabaseSchemaResult.cs b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaResult.cs similarity index 99% rename from src/Umbraco.Core/Migrations/Install/DatabaseSchemaResult.cs rename to src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaResult.cs index f21216fde3..e7b7b479ec 100644 --- a/src/Umbraco.Core/Migrations/Install/DatabaseSchemaResult.cs +++ b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaResult.cs @@ -10,7 +10,7 @@ namespace Umbraco.Core.Migrations.Install /// /// Represents ... /// - internal class DatabaseSchemaResult + public class DatabaseSchemaResult { public DatabaseSchemaResult(ISqlSyntaxProvider sqlSyntax) { diff --git a/src/Umbraco.Core/Migrations/MergeBuilder.cs b/src/Umbraco.Infrastructure/Migrations/MergeBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/MergeBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/MergeBuilder.cs diff --git a/src/Umbraco.Core/Migrations/MigrationBase.cs b/src/Umbraco.Infrastructure/Migrations/MigrationBase.cs similarity index 100% rename from src/Umbraco.Core/Migrations/MigrationBase.cs rename to src/Umbraco.Infrastructure/Migrations/MigrationBase.cs diff --git a/src/Umbraco.Core/Migrations/MigrationBase_Extra.cs b/src/Umbraco.Infrastructure/Migrations/MigrationBase_Extra.cs similarity index 100% rename from src/Umbraco.Core/Migrations/MigrationBase_Extra.cs rename to src/Umbraco.Infrastructure/Migrations/MigrationBase_Extra.cs diff --git a/src/Umbraco.Core/Migrations/MigrationBuilder.cs b/src/Umbraco.Infrastructure/Migrations/MigrationBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/MigrationBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/MigrationBuilder.cs diff --git a/src/Umbraco.Core/Migrations/MigrationContext.cs b/src/Umbraco.Infrastructure/Migrations/MigrationContext.cs similarity index 100% rename from src/Umbraco.Core/Migrations/MigrationContext.cs rename to src/Umbraco.Infrastructure/Migrations/MigrationContext.cs diff --git a/src/Umbraco.Core/Migrations/MigrationExpressionBase.cs b/src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs similarity index 100% rename from src/Umbraco.Core/Migrations/MigrationExpressionBase.cs rename to src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs diff --git a/src/Umbraco.Core/Migrations/MigrationPlan.cs b/src/Umbraco.Infrastructure/Migrations/MigrationPlan.cs similarity index 100% rename from src/Umbraco.Core/Migrations/MigrationPlan.cs rename to src/Umbraco.Infrastructure/Migrations/MigrationPlan.cs diff --git a/src/Umbraco.Core/Migrations/PostMigrations/IPublishedSnapshotRebuilder.cs b/src/Umbraco.Infrastructure/Migrations/PostMigrations/IPublishedSnapshotRebuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/PostMigrations/IPublishedSnapshotRebuilder.cs rename to src/Umbraco.Infrastructure/Migrations/PostMigrations/IPublishedSnapshotRebuilder.cs diff --git a/src/Umbraco.Core/Migrations/PostMigrations/PublishedSnapshotRebuilder.cs b/src/Umbraco.Infrastructure/Migrations/PostMigrations/PublishedSnapshotRebuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/PostMigrations/PublishedSnapshotRebuilder.cs rename to src/Umbraco.Infrastructure/Migrations/PostMigrations/PublishedSnapshotRebuilder.cs diff --git a/src/Umbraco.Core/Migrations/PostMigrations/RebuildPublishedSnapshot.cs b/src/Umbraco.Infrastructure/Migrations/PostMigrations/RebuildPublishedSnapshot.cs similarity index 100% rename from src/Umbraco.Core/Migrations/PostMigrations/RebuildPublishedSnapshot.cs rename to src/Umbraco.Infrastructure/Migrations/PostMigrations/RebuildPublishedSnapshot.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/Common/CreateKeysAndIndexes.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/Common/CreateKeysAndIndexes.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/Common/CreateKeysAndIndexes.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/Common/CreateKeysAndIndexes.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/Common/DeleteKeysAndIndexes.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/Common/DeleteKeysAndIndexes.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/Common/DeleteKeysAndIndexes.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/Common/DeleteKeysAndIndexes.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/UmbracoPlan.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/UmbracoPlan.cs similarity index 96% rename from src/Umbraco.Core/Migrations/Upgrade/UmbracoPlan.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/UmbracoPlan.cs index 7e27a857c5..b702730a40 100644 --- a/src/Umbraco.Core/Migrations/Upgrade/UmbracoPlan.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/UmbracoPlan.cs @@ -16,15 +16,17 @@ namespace Umbraco.Core.Migrations.Upgrade public class UmbracoPlan : MigrationPlan { private readonly IUmbracoVersion _umbracoVersion; + private readonly IGlobalSettings _globalSettings; private const string InitPrefix = "{init-"; private const string InitSuffix = "}"; /// /// Initializes a new instance of the class. /// - public UmbracoPlan(IUmbracoVersion umbracoVersion) + public UmbracoPlan(IUmbracoVersion umbracoVersion, IGlobalSettings globalSettings) : base(Constants.System.UmbracoUpgradePlanName) { _umbracoVersion = umbracoVersion; + _globalSettings = globalSettings; DefinePlan(); } @@ -63,7 +65,7 @@ namespace Umbraco.Core.Migrations.Upgrade get { // no state in database yet - assume we have something in web.config that makes some sense - if (!SemVersion.TryParse(Current.Configs.Global().ConfigurationStatus, out var currentVersion)) + if (!SemVersion.TryParse(_globalSettings.ConfigurationStatus, out var currentVersion)) throw new InvalidOperationException($"Could not get current version from web.config {Constants.AppSettings.ConfigurationStatus} appSetting."); // cannot go back in time diff --git a/src/Umbraco.Core/Migrations/Upgrade/Upgrader.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/Upgrader.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/Upgrader.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/Upgrader.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/AddContentNuTable.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/AddContentNuTable.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/AddContentNuTable.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/AddContentNuTable.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/AddContentTypeIsElementColumn.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/AddContentTypeIsElementColumn.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/AddContentTypeIsElementColumn.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/AddContentTypeIsElementColumn.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/AddLockObjects.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/AddLockObjects.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/AddLockObjects.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/AddLockObjects.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/AddLogTableColumns.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/AddLogTableColumns.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/AddLogTableColumns.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/AddLogTableColumns.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/AddTypedLabels.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/AddTypedLabels.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/AddTypedLabels.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/AddTypedLabels.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/AddVariationTables1A.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/AddVariationTables1A.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/AddVariationTables1A.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/AddVariationTables1A.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/AddVariationTables2.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/AddVariationTables2.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/AddVariationTables2.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/AddVariationTables2.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/ContentVariationMigration.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/ContentVariationMigration.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/ContentVariationMigration.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/ContentVariationMigration.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/ConvertRelatedLinksToMultiUrlPicker.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/ConvertRelatedLinksToMultiUrlPicker.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/ConvertRelatedLinksToMultiUrlPicker.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/ConvertRelatedLinksToMultiUrlPicker.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/ContentPickerPreValueMigrator.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/ContentPickerPreValueMigrator.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/ContentPickerPreValueMigrator.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/ContentPickerPreValueMigrator.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/DecimalPreValueMigrator.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/DecimalPreValueMigrator.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/DecimalPreValueMigrator.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/DecimalPreValueMigrator.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/DefaultPreValueMigrator.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/DefaultPreValueMigrator.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/DefaultPreValueMigrator.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/DefaultPreValueMigrator.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/DropDownFlexiblePreValueMigrator.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/DropDownFlexiblePreValueMigrator.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/DropDownFlexiblePreValueMigrator.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/DropDownFlexiblePreValueMigrator.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/IPreValueMigrator.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/IPreValueMigrator.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/IPreValueMigrator.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/IPreValueMigrator.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/ListViewPreValueMigrator.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/ListViewPreValueMigrator.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/ListViewPreValueMigrator.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/ListViewPreValueMigrator.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/MarkdownEditorPreValueMigrator.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/MarkdownEditorPreValueMigrator.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/MarkdownEditorPreValueMigrator.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/MarkdownEditorPreValueMigrator.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/MediaPickerPreValueMigrator.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/MediaPickerPreValueMigrator.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/MediaPickerPreValueMigrator.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/MediaPickerPreValueMigrator.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/NestedContentPreValueMigrator.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/NestedContentPreValueMigrator.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/NestedContentPreValueMigrator.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/NestedContentPreValueMigrator.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueDto.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueDto.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueDto.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueDto.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorBase.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorBase.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorBase.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorBase.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollectionBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollectionBuilder.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollectionBuilder.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollectionBuilder.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorComposer.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorComposer.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorComposer.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorComposer.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/RenamingPreValueMigrator.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/RenamingPreValueMigrator.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/RenamingPreValueMigrator.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/RenamingPreValueMigrator.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/RichTextPreValueMigrator.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/RichTextPreValueMigrator.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/RichTextPreValueMigrator.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/RichTextPreValueMigrator.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/UmbracoSliderPreValueMigrator.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/UmbracoSliderPreValueMigrator.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/UmbracoSliderPreValueMigrator.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/UmbracoSliderPreValueMigrator.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/ValueListPreValueMigrator.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/ValueListPreValueMigrator.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DataTypes/ValueListPreValueMigrator.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/ValueListPreValueMigrator.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DropMigrationsTable.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropMigrationsTable.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DropMigrationsTable.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropMigrationsTable.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DropPreValueTable.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropPreValueTable.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DropPreValueTable.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropPreValueTable.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DropTaskTables.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropTaskTables.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DropTaskTables.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropTaskTables.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DropTemplateDesignColumn.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropTemplateDesignColumn.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DropTemplateDesignColumn.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropTemplateDesignColumn.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DropXmlTables.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropXmlTables.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/DropXmlTables.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropXmlTables.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/FallbackLanguage.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/FallbackLanguage.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/FallbackLanguage.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/FallbackLanguage.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/FixLanguageIsoCodeLength.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/FixLanguageIsoCodeLength.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/FixLanguageIsoCodeLength.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/FixLanguageIsoCodeLength.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/LanguageColumns.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/LanguageColumns.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/LanguageColumns.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/LanguageColumns.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/MakeRedirectUrlVariant.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MakeRedirectUrlVariant.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/MakeRedirectUrlVariant.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MakeRedirectUrlVariant.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/MakeTagsVariant.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MakeTagsVariant.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/MakeTagsVariant.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MakeTagsVariant.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigration.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigration.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigration.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigration.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/RefactorMacroColumns.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RefactorMacroColumns.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/RefactorMacroColumns.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RefactorMacroColumns.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/RefactorVariantsModel.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RefactorVariantsModel.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/RefactorVariantsModel.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RefactorVariantsModel.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/RenameLabelAndRichTextPropertyEditorAliases.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RenameLabelAndRichTextPropertyEditorAliases.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/RenameLabelAndRichTextPropertyEditorAliases.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RenameLabelAndRichTextPropertyEditorAliases.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/RenameMediaVersionTable.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RenameMediaVersionTable.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/RenameMediaVersionTable.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RenameMediaVersionTable.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/RenameUmbracoDomainsTable.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RenameUmbracoDomainsTable.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/RenameUmbracoDomainsTable.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RenameUmbracoDomainsTable.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/SuperZero.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/SuperZero.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/SuperZero.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/SuperZero.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/TablesForScheduledPublishing.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/TablesForScheduledPublishing.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/TablesForScheduledPublishing.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/TablesForScheduledPublishing.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/TagsMigration.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/TagsMigration.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/TagsMigration.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/TagsMigration.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/TagsMigrationFix.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/TagsMigrationFix.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/TagsMigrationFix.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/TagsMigrationFix.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/UpdateDefaultMandatoryLanguage.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/UpdateDefaultMandatoryLanguage.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/UpdateDefaultMandatoryLanguage.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/UpdateDefaultMandatoryLanguage.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/UpdatePickerIntegerValuesToUdi.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/UpdatePickerIntegerValuesToUdi.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/UpdatePickerIntegerValuesToUdi.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/UpdatePickerIntegerValuesToUdi.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/UserForeignKeys.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/UserForeignKeys.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/UserForeignKeys.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/UserForeignKeys.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/VariantsMigration.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/VariantsMigration.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_0/VariantsMigration.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/VariantsMigration.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_0_1/ChangeNuCacheJsonFormat.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_1/ChangeNuCacheJsonFormat.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_0_1/ChangeNuCacheJsonFormat.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_1/ChangeNuCacheJsonFormat.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_1_0/ConvertTinyMceAndGridMediaUrlsToLocalLink.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_1_0/ConvertTinyMceAndGridMediaUrlsToLocalLink.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_1_0/ConvertTinyMceAndGridMediaUrlsToLocalLink.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_1_0/ConvertTinyMceAndGridMediaUrlsToLocalLink.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_1_0/FixContentNuCascade.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_1_0/FixContentNuCascade.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_1_0/FixContentNuCascade.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_1_0/FixContentNuCascade.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_1_0/RenameUserLoginDtoDateIndex.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_1_0/RenameUserLoginDtoDateIndex.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_1_0/RenameUserLoginDtoDateIndex.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_1_0/RenameUserLoginDtoDateIndex.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_6_0/AddNewRelationTypes.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_6_0/AddNewRelationTypes.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_6_0/AddNewRelationTypes.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_6_0/AddNewRelationTypes.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_6_0/AddPropertyTypeValidationMessageColumns.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_6_0/AddPropertyTypeValidationMessageColumns.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_6_0/AddPropertyTypeValidationMessageColumns.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_6_0/AddPropertyTypeValidationMessageColumns.cs diff --git a/src/Umbraco.Core/Migrations/Upgrade/V_8_6_0/UpdateRelationTypeTable.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_6_0/UpdateRelationTypeTable.cs similarity index 100% rename from src/Umbraco.Core/Migrations/Upgrade/V_8_6_0/UpdateRelationTypeTable.cs rename to src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_6_0/UpdateRelationTypeTable.cs diff --git a/src/Umbraco.Infrastructure/Persistence/IDbProviderFactoryCreator.cs b/src/Umbraco.Infrastructure/Persistence/IDbProviderFactoryCreator.cs index cda69480ae..b91be4c1e6 100644 --- a/src/Umbraco.Infrastructure/Persistence/IDbProviderFactoryCreator.cs +++ b/src/Umbraco.Infrastructure/Persistence/IDbProviderFactoryCreator.cs @@ -9,5 +9,6 @@ namespace Umbraco.Core.Persistence DbProviderFactory CreateFactory(); DbProviderFactory CreateFactory(string providerName); ISqlSyntaxProvider GetSqlSyntaxProvider(string providerName); + void CreateDatabase(); } } diff --git a/src/Umbraco.Core/Services/IdkMap.cs b/src/Umbraco.Infrastructure/Services/IdkMap.cs similarity index 99% rename from src/Umbraco.Core/Services/IdkMap.cs rename to src/Umbraco.Infrastructure/Services/IdkMap.cs index 3b719f31d1..f7790ba76b 100644 --- a/src/Umbraco.Core/Services/IdkMap.cs +++ b/src/Umbraco.Infrastructure/Services/IdkMap.cs @@ -47,7 +47,7 @@ namespace Umbraco.Core.Services private readonly ConcurrentDictionary id2key, Func key2id)> _dictionary = new ConcurrentDictionary id2key, Func key2id)>(); - internal void SetMapper(UmbracoObjectTypes umbracoObjectType, Func id2key, Func key2id) + public void SetMapper(UmbracoObjectTypes umbracoObjectType, Func id2key, Func key2id) { _dictionary[umbracoObjectType] = (id2key, key2id); } diff --git a/src/Umbraco.Core/Services/Implement/AuditService.cs b/src/Umbraco.Infrastructure/Services/Implement/AuditService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/AuditService.cs rename to src/Umbraco.Infrastructure/Services/Implement/AuditService.cs diff --git a/src/Umbraco.Core/Services/Implement/ConsentService.cs b/src/Umbraco.Infrastructure/Services/Implement/ConsentService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/ConsentService.cs rename to src/Umbraco.Infrastructure/Services/Implement/ConsentService.cs diff --git a/src/Umbraco.Core/Services/Implement/ContentService.cs b/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs similarity index 99% rename from src/Umbraco.Core/Services/Implement/ContentService.cs rename to src/Umbraco.Infrastructure/Services/Implement/ContentService.cs index 8287c071f1..f386f22f39 100644 --- a/src/Umbraco.Core/Services/Implement/ContentService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs @@ -28,7 +28,7 @@ namespace Umbraco.Core.Services.Implement private readonly ILanguageRepository _languageRepository; private readonly Lazy _propertyValidationService; private IQuery _queryNotTrashed; - + #region Constructors public ContentService(IScopeProvider provider, ILogger logger, @@ -2552,7 +2552,7 @@ namespace Umbraco.Core.Services.Implement /// /// Occurs after change. /// - internal static event TypedEventHandler.EventArgs> TreeChanged; + public static event TypedEventHandler.EventArgs> TreeChanged; /// /// Occurs after a blueprint has been saved. diff --git a/src/Umbraco.Core/Services/Implement/ContentTypeBaseServiceProvider.cs b/src/Umbraco.Infrastructure/Services/Implement/ContentTypeBaseServiceProvider.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/ContentTypeBaseServiceProvider.cs rename to src/Umbraco.Infrastructure/Services/Implement/ContentTypeBaseServiceProvider.cs diff --git a/src/Umbraco.Core/Services/Implement/ContentTypeService.cs b/src/Umbraco.Infrastructure/Services/Implement/ContentTypeService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/ContentTypeService.cs rename to src/Umbraco.Infrastructure/Services/Implement/ContentTypeService.cs diff --git a/src/Umbraco.Core/Services/Implement/ContentTypeServiceBase.cs b/src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBase.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/ContentTypeServiceBase.cs rename to src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBase.cs diff --git a/src/Umbraco.Core/Services/Implement/ContentTypeServiceBaseOfTItemTService.cs b/src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBaseOfTItemTService.cs similarity index 96% rename from src/Umbraco.Core/Services/Implement/ContentTypeServiceBaseOfTItemTService.cs rename to src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBaseOfTItemTService.cs index 3a1ad64483..a08bc3cd96 100644 --- a/src/Umbraco.Core/Services/Implement/ContentTypeServiceBaseOfTItemTService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBaseOfTItemTService.cs @@ -17,7 +17,7 @@ namespace Umbraco.Core.Services.Implement protected abstract TService This { get; } // that one must be dispatched - internal static event TypedEventHandler.EventArgs> Changed; + public static event TypedEventHandler.EventArgs> Changed; // that one is always immediate (transactional) public static event TypedEventHandler.EventArgs> ScopedRefreshedEntity; @@ -39,7 +39,7 @@ namespace Umbraco.Core.Services.Implement public static event TypedEventHandler> SavedContainer; public static event TypedEventHandler> DeletingContainer; public static event TypedEventHandler> DeletedContainer; - + protected void OnChanged(IScope scope, ContentTypeChange.EventArgs args) { scope.Events.Dispatch(Changed, This, args, nameof(Changed)); @@ -50,7 +50,7 @@ namespace Umbraco.Core.Services.Implement // that one is always immediate (not dispatched, transactional) ScopedRefreshedEntity.RaiseEvent(args, This); } - + protected bool OnSavingCancelled(IScope scope, SaveEventArgs args) { return scope.Events.DispatchCancelable(Saving, This, args); @@ -60,17 +60,17 @@ namespace Umbraco.Core.Services.Implement { scope.Events.Dispatch(Saved, This, args); } - + protected bool OnDeletingCancelled(IScope scope, DeleteEventArgs args) { return scope.Events.DispatchCancelable(Deleting, This, args, nameof(Deleting)); } - + protected void OnDeleted(IScope scope, DeleteEventArgs args) { scope.Events.Dispatch(Deleted, This, args); } - + protected bool OnMovingCancelled(IScope scope, MoveEventArgs args) { return scope.Events.DispatchCancelable(Moving, This, args); @@ -80,7 +80,7 @@ namespace Umbraco.Core.Services.Implement { scope.Events.Dispatch(Moved, This, args); } - + protected bool OnSavingContainerCancelled(IScope scope, SaveEventArgs args) { return scope.Events.DispatchCancelable(SavingContainer, This, args, nameof(SavingContainer)); @@ -100,7 +100,7 @@ namespace Umbraco.Core.Services.Implement { scope.Events.Dispatch(SavedContainer, This, args, nameof(SavedContainer)); } - + protected bool OnDeletingContainerCancelled(IScope scope, DeleteEventArgs args) { return scope.Events.DispatchCancelable(DeletingContainer, This, args); diff --git a/src/Umbraco.Core/Services/Implement/ContentTypeServiceBaseOfTRepositoryTItemTService.cs b/src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBaseOfTRepositoryTItemTService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/ContentTypeServiceBaseOfTRepositoryTItemTService.cs rename to src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBaseOfTRepositoryTItemTService.cs diff --git a/src/Umbraco.Core/Services/Implement/DataTypeService.cs b/src/Umbraco.Infrastructure/Services/Implement/DataTypeService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/DataTypeService.cs rename to src/Umbraco.Infrastructure/Services/Implement/DataTypeService.cs diff --git a/src/Umbraco.Core/Services/Implement/DomainService.cs b/src/Umbraco.Infrastructure/Services/Implement/DomainService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/DomainService.cs rename to src/Umbraco.Infrastructure/Services/Implement/DomainService.cs diff --git a/src/Umbraco.Core/Services/Implement/EntityService.cs b/src/Umbraco.Infrastructure/Services/Implement/EntityService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/EntityService.cs rename to src/Umbraco.Infrastructure/Services/Implement/EntityService.cs diff --git a/src/Umbraco.Core/Services/Implement/EntityXmlSerializer.cs b/src/Umbraco.Infrastructure/Services/Implement/EntityXmlSerializer.cs similarity index 98% rename from src/Umbraco.Core/Services/Implement/EntityXmlSerializer.cs rename to src/Umbraco.Infrastructure/Services/Implement/EntityXmlSerializer.cs index c8212fc265..e8fea4c0e1 100644 --- a/src/Umbraco.Core/Services/Implement/EntityXmlSerializer.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/EntityXmlSerializer.cs @@ -5,8 +5,10 @@ using System.Linq; using System.Net; using System.Xml.Linq; using Newtonsoft.Json; +using Umbraco.Composing; using Umbraco.Core.Composing; using Umbraco.Core.Models; +using Umbraco.Core.PropertyEditors; using Umbraco.Core.Strings; namespace Umbraco.Core.Services.Implement @@ -24,6 +26,7 @@ namespace Umbraco.Core.Services.Implement private readonly ILocalizationService _localizationService; private readonly UrlSegmentProviderCollection _urlSegmentProviders; private readonly IShortStringHelper _shortStringHelper; + private readonly PropertyEditorCollection _propertyEditors; public EntityXmlSerializer( IContentService contentService, @@ -33,7 +36,8 @@ namespace Umbraco.Core.Services.Implement ILocalizationService localizationService, IContentTypeService contentTypeService, UrlSegmentProviderCollection urlSegmentProviders, - IShortStringHelper shortStringHelper) + IShortStringHelper shortStringHelper, + PropertyEditorCollection propertyEditors) { _contentTypeService = contentTypeService; _mediaService = mediaService; @@ -43,6 +47,7 @@ namespace Umbraco.Core.Services.Implement _localizationService = localizationService; _urlSegmentProviders = urlSegmentProviders; _shortStringHelper = shortStringHelper; + _propertyEditors = propertyEditors; } /// @@ -54,7 +59,7 @@ namespace Umbraco.Core.Services.Implement { if (content == null) throw new ArgumentNullException(nameof(content)); - var nodeName = content.ContentType.Alias.ToSafeAlias(); + var nodeName = content.ContentType.Alias.ToSafeAlias(_shortStringHelper); var xml = SerializeContentBase(content, content.GetUrlSegment(_shortStringHelper, _urlSegmentProviders), nodeName, published); @@ -100,7 +105,7 @@ namespace Umbraco.Core.Services.Implement if (media == null) throw new ArgumentNullException(nameof(media)); if (_urlSegmentProviders == null) throw new ArgumentNullException(nameof(_urlSegmentProviders)); - var nodeName = media.ContentType.Alias.ToSafeAlias(); + var nodeName = media.ContentType.Alias.ToSafeAlias(_shortStringHelper); const bool published = false; // always false for media var xml = SerializeContentBase(media, media.GetUrlSegment(_shortStringHelper, _urlSegmentProviders), nodeName, published); @@ -135,7 +140,7 @@ namespace Umbraco.Core.Services.Implement /// public XElement Serialize(IMember member) { - var nodeName = member.ContentType.Alias.ToSafeAlias(); + var nodeName = member.ContentType.Alias.ToSafeAlias(_shortStringHelper); const bool published = false; // always false for member var xml = SerializeContentBase(member, "", nodeName, published); @@ -564,7 +569,7 @@ namespace Umbraco.Core.Services.Implement var propertyType = property.PropertyType; // get the property editor for this property and let it convert it to the xml structure - var propertyEditor = Current.PropertyEditors[propertyType.PropertyEditorAlias]; + var propertyEditor = _propertyEditors[propertyType.PropertyEditorAlias]; return propertyEditor == null ? Array.Empty() : propertyEditor.GetValueEditor().ConvertDbToXml(property, _dataTypeService, _localizationService, published); diff --git a/src/Umbraco.Core/Services/Implement/ExternalLoginService.cs b/src/Umbraco.Infrastructure/Services/Implement/ExternalLoginService.cs similarity index 98% rename from src/Umbraco.Core/Services/Implement/ExternalLoginService.cs rename to src/Umbraco.Infrastructure/Services/Implement/ExternalLoginService.cs index 0d6a345e90..c872cf6abb 100644 --- a/src/Umbraco.Core/Services/Implement/ExternalLoginService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ExternalLoginService.cs @@ -1,6 +1,5 @@ using System.Collections.Generic; using System.Linq; -using Microsoft.AspNet.Identity; using Umbraco.Core.Events; using Umbraco.Core.Logging; using Umbraco.Core.Models.Identity; diff --git a/src/Umbraco.Core/Services/Implement/FileService.cs b/src/Umbraco.Infrastructure/Services/Implement/FileService.cs similarity index 99% rename from src/Umbraco.Core/Services/Implement/FileService.cs rename to src/Umbraco.Infrastructure/Services/Implement/FileService.cs index ebfc82c50c..25f2c619d2 100644 --- a/src/Umbraco.Core/Services/Implement/FileService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/FileService.cs @@ -4,6 +4,7 @@ using System.IO; using System.Linq; using System.Text.RegularExpressions; using Umbraco.Core.Composing; +using Umbraco.Core.Configuration; using Umbraco.Core.Events; using Umbraco.Core.IO; using Umbraco.Core.Logging; @@ -28,6 +29,7 @@ namespace Umbraco.Core.Services.Implement private readonly IPartialViewMacroRepository _partialViewMacroRepository; private readonly IAuditRepository _auditRepository; private readonly IShortStringHelper _shortStringHelper; + private readonly IGlobalSettings _globalSettings; private const string PartialViewHeader = "@inherits Umbraco.Web.Mvc.UmbracoViewPage"; private const string PartialViewMacroHeader = "@inherits Umbraco.Web.Macros.PartialViewMacroPage"; @@ -35,7 +37,7 @@ namespace Umbraco.Core.Services.Implement public FileService(IScopeProvider uowProvider, IIOHelper ioHelper, ILogger logger, IEventMessagesFactory eventMessagesFactory, IStylesheetRepository stylesheetRepository, IScriptRepository scriptRepository, ITemplateRepository templateRepository, IPartialViewRepository partialViewRepository, IPartialViewMacroRepository partialViewMacroRepository, - IAuditRepository auditRepository, IShortStringHelper shortStringHelper) + IAuditRepository auditRepository, IShortStringHelper shortStringHelper, IGlobalSettings globalSettings) : base(uowProvider, logger, eventMessagesFactory) { _ioHelper = ioHelper; @@ -46,6 +48,7 @@ namespace Umbraco.Core.Services.Implement _partialViewMacroRepository = partialViewMacroRepository; _auditRepository = auditRepository; _shortStringHelper = shortStringHelper; + _globalSettings = globalSettings; } #region Stylesheets @@ -669,7 +672,7 @@ namespace Umbraco.Core.Services.Implement public IEnumerable GetPartialViewSnippetNames(params string[] filterNames) { - var snippetPath = _ioHelper.MapPath($"{Current.Configs.Global().UmbracoPath}/PartialViewMacros/Templates/"); + var snippetPath = _ioHelper.MapPath($"{_globalSettings.UmbracoPath}/PartialViewMacros/Templates/"); var files = Directory.GetFiles(snippetPath, "*.cshtml") .Select(Path.GetFileNameWithoutExtension) .Except(filterNames, StringComparer.InvariantCultureIgnoreCase) @@ -903,7 +906,7 @@ namespace Umbraco.Core.Services.Implement fileName += ".cshtml"; } - var snippetPath = _ioHelper.MapPath($"{Current.Configs.Global().UmbracoPath}/PartialViewMacros/Templates/{fileName}"); + var snippetPath = _ioHelper.MapPath($"{_globalSettings.UmbracoPath}/PartialViewMacros/Templates/{fileName}"); return System.IO.File.Exists(snippetPath) ? Attempt.Succeed(snippetPath) : Attempt.Fail(); diff --git a/src/Umbraco.Core/Services/Implement/KeyValueService.cs b/src/Umbraco.Infrastructure/Services/Implement/KeyValueService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/KeyValueService.cs rename to src/Umbraco.Infrastructure/Services/Implement/KeyValueService.cs diff --git a/src/Umbraco.Core/Services/Implement/LocalizationService.cs b/src/Umbraco.Infrastructure/Services/Implement/LocalizationService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/LocalizationService.cs rename to src/Umbraco.Infrastructure/Services/Implement/LocalizationService.cs diff --git a/src/Umbraco.Core/Services/Implement/LocalizedTextService.cs b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/LocalizedTextService.cs rename to src/Umbraco.Infrastructure/Services/Implement/LocalizedTextService.cs diff --git a/src/Umbraco.Core/Services/Implement/LocalizedTextServiceFileSources.cs b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs similarity index 99% rename from src/Umbraco.Core/Services/Implement/LocalizedTextServiceFileSources.cs rename to src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs index 86913071fd..8507744fa7 100644 --- a/src/Umbraco.Core/Services/Implement/LocalizedTextServiceFileSources.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs @@ -5,6 +5,7 @@ using System.IO; using System.Linq; using System.Xml; using System.Xml.Linq; +using Umbraco.Composing; using Umbraco.Core.Cache; using Umbraco.Core.Composing; using Umbraco.Core.Logging; diff --git a/src/Umbraco.Core/Services/Implement/LocalizedTextServiceSupplementaryFileSource.cs b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceSupplementaryFileSource.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/LocalizedTextServiceSupplementaryFileSource.cs rename to src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceSupplementaryFileSource.cs diff --git a/src/Umbraco.Core/Services/Implement/MacroService.cs b/src/Umbraco.Infrastructure/Services/Implement/MacroService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/MacroService.cs rename to src/Umbraco.Infrastructure/Services/Implement/MacroService.cs diff --git a/src/Umbraco.Core/Services/Implement/MediaService.cs b/src/Umbraco.Infrastructure/Services/Implement/MediaService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/MediaService.cs rename to src/Umbraco.Infrastructure/Services/Implement/MediaService.cs diff --git a/src/Umbraco.Core/Services/Implement/MediaTypeService.cs b/src/Umbraco.Infrastructure/Services/Implement/MediaTypeService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/MediaTypeService.cs rename to src/Umbraco.Infrastructure/Services/Implement/MediaTypeService.cs diff --git a/src/Umbraco.Core/Services/Implement/MemberGroupService.cs b/src/Umbraco.Infrastructure/Services/Implement/MemberGroupService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/MemberGroupService.cs rename to src/Umbraco.Infrastructure/Services/Implement/MemberGroupService.cs diff --git a/src/Umbraco.Core/Services/Implement/MemberService.cs b/src/Umbraco.Infrastructure/Services/Implement/MemberService.cs similarity index 99% rename from src/Umbraco.Core/Services/Implement/MemberService.cs rename to src/Umbraco.Infrastructure/Services/Implement/MemberService.cs index 8295d3ee55..e551017295 100644 --- a/src/Umbraco.Core/Services/Implement/MemberService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/MemberService.cs @@ -22,12 +22,13 @@ namespace Umbraco.Core.Services.Implement private readonly IMemberTypeRepository _memberTypeRepository; private readonly IMemberGroupRepository _memberGroupRepository; private readonly IAuditRepository _auditRepository; + private readonly IMemberTypeService _memberTypeService; private readonly IMemberGroupService _memberGroupService; #region Constructor - public MemberService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, IMemberGroupService memberGroupService, + public MemberService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, IMemberGroupService memberGroupService, IMemberRepository memberRepository, IMemberTypeRepository memberTypeRepository, IMemberGroupRepository memberGroupRepository, IAuditRepository auditRepository) : base(provider, logger, eventMessagesFactory) { @@ -64,7 +65,7 @@ namespace Umbraco.Core.Services.Implement { case MemberCountType.All: query = Query(); - break; + break; case MemberCountType.LockedOut: query = Query().Where(x => ((Member) x).PropertyTypeAlias == Constants.Conventions.Member.IsLockedOut && ((Member) x).BoolPropertyValue); break; @@ -545,7 +546,7 @@ namespace Umbraco.Core.Services.Implement return _memberRepository.GetPage(query, pageIndex, pageSize, out totalRecords, null, Ordering.By("Name")); } } - + /// /// Finds a list of objects by a partial email string /// @@ -803,8 +804,8 @@ namespace Umbraco.Core.Services.Implement { //trimming username and email to make sure we have no trailing space member.Username = member.Username.Trim(); - member.Email = member.Email.Trim(); - + member.Email = member.Email.Trim(); + using (var scope = ScopeProvider.CreateScope()) { var saveEventArgs = new SaveEventArgs(member); @@ -1127,7 +1128,7 @@ namespace Umbraco.Core.Services.Implement /// This is internal for now and is used to export a member in the member editor, /// it will raise an event so that auditing logs can be created. /// - internal MemberExportModel ExportMember(Guid key) + public MemberExportModel ExportMember(Guid key) { using (var scope = ScopeProvider.CreateScope(autoComplete: true)) { @@ -1244,10 +1245,6 @@ namespace Umbraco.Core.Services.Implement } } - public string GetDefaultMemberType() - { - return Current.Services.MemberTypeService.GetDefault(); - } #endregion } diff --git a/src/Umbraco.Core/Services/Implement/MemberTypeService.cs b/src/Umbraco.Infrastructure/Services/Implement/MemberTypeService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/MemberTypeService.cs rename to src/Umbraco.Infrastructure/Services/Implement/MemberTypeService.cs diff --git a/src/Umbraco.Core/Services/Implement/NotificationService.cs b/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs similarity index 99% rename from src/Umbraco.Core/Services/Implement/NotificationService.cs rename to src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs index c89cb27623..c8b8e617c9 100644 --- a/src/Umbraco.Core/Services/Implement/NotificationService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs @@ -92,7 +92,7 @@ namespace Umbraco.Core.Services.Implement do { // users are returned ordered by id, notifications are returned ordered by user id - var users = ((UserService)_userService).GetNextUsers(id, pagesz).Where(x => x.IsApproved).ToList(); + var users = _userService.GetNextUsers(id, pagesz).Where(x => x.IsApproved).ToList(); var notifications = GetUsersNotifications(users.Select(x => x.Id), action, Enumerable.Empty(), Constants.ObjectTypes.Document).ToList(); if (notifications.Count == 0) break; @@ -386,7 +386,7 @@ namespace Umbraco.Core.Services.Implement var protocol = _globalSettings.UseHttps ? "https" : "http"; var subjectVars = new NotificationEmailSubjectParams( - string.Concat(siteUri.Authority, _ioHelper.ResolveUrl(Current.Configs.Global().UmbracoPath)), + string.Concat(siteUri.Authority, _ioHelper.ResolveUrl(_globalSettings.UmbracoPath)), actionName, content.Name); @@ -402,7 +402,7 @@ namespace Umbraco.Core.Services.Implement string.Concat(content.Id, ".aspx"), protocol), performingUser.Name, - string.Concat(siteUri.Authority, _ioHelper.ResolveUrl(Current.Configs.Global().UmbracoPath)), + string.Concat(siteUri.Authority, _ioHelper.ResolveUrl(_globalSettings.UmbracoPath)), summary.ToString()); // create the mail message diff --git a/src/Umbraco.Core/Services/Implement/PackagingService.cs b/src/Umbraco.Infrastructure/Services/Implement/PackagingService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/PackagingService.cs rename to src/Umbraco.Infrastructure/Services/Implement/PackagingService.cs diff --git a/src/Umbraco.Core/Services/Implement/PropertyValidationService.cs b/src/Umbraco.Infrastructure/Services/Implement/PropertyValidationService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/PropertyValidationService.cs rename to src/Umbraco.Infrastructure/Services/Implement/PropertyValidationService.cs diff --git a/src/Umbraco.Core/Services/Implement/PublicAccessService.cs b/src/Umbraco.Infrastructure/Services/Implement/PublicAccessService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/PublicAccessService.cs rename to src/Umbraco.Infrastructure/Services/Implement/PublicAccessService.cs diff --git a/src/Umbraco.Core/Services/Implement/RedirectUrlService.cs b/src/Umbraco.Infrastructure/Services/Implement/RedirectUrlService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/RedirectUrlService.cs rename to src/Umbraco.Infrastructure/Services/Implement/RedirectUrlService.cs diff --git a/src/Umbraco.Core/Services/Implement/RelationService.cs b/src/Umbraco.Infrastructure/Services/Implement/RelationService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/RelationService.cs rename to src/Umbraco.Infrastructure/Services/Implement/RelationService.cs diff --git a/src/Umbraco.Core/Services/Implement/RepositoryService.cs b/src/Umbraco.Infrastructure/Services/Implement/RepositoryService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/RepositoryService.cs rename to src/Umbraco.Infrastructure/Services/Implement/RepositoryService.cs diff --git a/src/Umbraco.Core/Services/Implement/ScopeRepositoryService.cs b/src/Umbraco.Infrastructure/Services/Implement/ScopeRepositoryService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/ScopeRepositoryService.cs rename to src/Umbraco.Infrastructure/Services/Implement/ScopeRepositoryService.cs diff --git a/src/Umbraco.Core/Services/Implement/ServerRegistrationService.cs b/src/Umbraco.Infrastructure/Services/Implement/ServerRegistrationService.cs similarity index 94% rename from src/Umbraco.Core/Services/Implement/ServerRegistrationService.cs rename to src/Umbraco.Infrastructure/Services/Implement/ServerRegistrationService.cs index 1c582953ec..97bf76e672 100644 --- a/src/Umbraco.Core/Services/Implement/ServerRegistrationService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ServerRegistrationService.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Linq; using Umbraco.Core.Composing; using Umbraco.Core.Events; +using Umbraco.Core.Hosting; using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories; @@ -18,9 +19,7 @@ namespace Umbraco.Core.Services.Implement public sealed class ServerRegistrationService : ScopeRepositoryService, IServerRegistrationService { private readonly IServerRegistrationRepository _serverRegistrationRepository; - - private static readonly string CurrentServerIdentityValue = NetworkHelper.MachineName // eg DOMAIN\SERVER - + "/" + Current.HostingEnvironment.ApplicationId; // eg /LM/S3SVC/11/ROOT + private readonly IHostingEnvironment _hostingEnvironment; private ServerRole _currentServerRole = ServerRole.Unknown; @@ -31,10 +30,11 @@ namespace Umbraco.Core.Services.Implement /// A logger. /// public ServerRegistrationService(IScopeProvider scopeProvider, ILogger logger, IEventMessagesFactory eventMessagesFactory, - IServerRegistrationRepository serverRegistrationRepository) + IServerRegistrationRepository serverRegistrationRepository, IHostingEnvironment hostingEnvironment) : base(scopeProvider, logger, eventMessagesFactory) { _serverRegistrationRepository = serverRegistrationRepository; + _hostingEnvironment = hostingEnvironment; } /// @@ -148,7 +148,8 @@ namespace Umbraco.Core.Services.Implement /// /// Gets the local server identity. /// - public string CurrentServerIdentity => CurrentServerIdentityValue; + public string CurrentServerIdentity => NetworkHelper.MachineName // eg DOMAIN\SERVER + + "/" + _hostingEnvironment.ApplicationId; // eg /LM/S3SVC/11/ROOT; /// /// Gets the role of the current server. diff --git a/src/Umbraco.Core/Services/Implement/TagService.cs b/src/Umbraco.Infrastructure/Services/Implement/TagService.cs similarity index 100% rename from src/Umbraco.Core/Services/Implement/TagService.cs rename to src/Umbraco.Infrastructure/Services/Implement/TagService.cs diff --git a/src/Umbraco.Core/Services/Implement/UserService.cs b/src/Umbraco.Infrastructure/Services/Implement/UserService.cs similarity index 99% rename from src/Umbraco.Core/Services/Implement/UserService.cs rename to src/Umbraco.Infrastructure/Services/Implement/UserService.cs index 2bc9caaba8..1d79cfb88b 100644 --- a/src/Umbraco.Core/Services/Implement/UserService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/UserService.cs @@ -604,7 +604,7 @@ namespace Umbraco.Core.Services.Implement } } - internal IEnumerable GetNextUsers(int id, int count) + public IEnumerable GetNextUsers(int id, int count) { using (var scope = ScopeProvider.CreateScope(autoComplete: true)) { @@ -1185,7 +1185,7 @@ namespace Umbraco.Core.Services.Implement /// /// Occurs after Save /// - internal static event TypedEventHandler> SavedUserGroup; + public static event TypedEventHandler> SavedUserGroup; /// /// Occurs before Delete @@ -1199,6 +1199,6 @@ namespace Umbraco.Core.Services.Implement // TODO: still don't know if we need this yet unless we start caching permissions, but that also means we'll need another // event on the ContentService since there's a method there to modify node permissions too, or we can proxy events if needed. - internal static event TypedEventHandler> UserGroupPermissionsAssigned; + public static event TypedEventHandler> UserGroupPermissionsAssigned; } } diff --git a/src/Umbraco.Tests.Benchmarks/BulkInsertBenchmarks.cs b/src/Umbraco.Tests.Benchmarks/BulkInsertBenchmarks.cs index 775bec75f0..01fd1de080 100644 --- a/src/Umbraco.Tests.Benchmarks/BulkInsertBenchmarks.cs +++ b/src/Umbraco.Tests.Benchmarks/BulkInsertBenchmarks.cs @@ -107,7 +107,7 @@ namespace Umbraco.Tests.Benchmarks //use the db to create the initial schema so we can reuse in each bench using (_dbSqlCe = GetSqlCeDatabase(sqlCeConnectionString, logger)) { - var creation = new DatabaseSchemaCreator(_dbSqlCe, logger, umbracoVersion); + var creation = new DatabaseSchemaCreator(_dbSqlCe, logger, umbracoVersion, SettingsForTests.GenerateMockGlobalSettings()); creation.InitializeDatabaseSchema(); } _initDbBytes = File.ReadAllBytes(_dbFile); diff --git a/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs b/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs index 82ccd21b80..966c4109c6 100644 --- a/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs +++ b/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs @@ -42,7 +42,7 @@ namespace Umbraco.Tests.Migrations upgrader.Execute(ScopeProvider, builder, Mock.Of(), logger); - var helper = new DatabaseSchemaCreator(scope.Database, logger, UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, logger, UmbracoVersion, TestObjects.GetGlobalSettings()); var exists = helper.TableExists("umbracoUser"); Assert.IsTrue(exists); diff --git a/src/Umbraco.Tests/Migrations/MigrationPlanTests.cs b/src/Umbraco.Tests/Migrations/MigrationPlanTests.cs index 3241f78b62..b87270327d 100644 --- a/src/Umbraco.Tests/Migrations/MigrationPlanTests.cs +++ b/src/Umbraco.Tests/Migrations/MigrationPlanTests.cs @@ -138,7 +138,7 @@ namespace Umbraco.Tests.Migrations [Test] public void ValidateUmbracoPlan() { - var plan = new UmbracoPlan(TestHelper.GetUmbracoVersion()); + var plan = new UmbracoPlan(TestHelper.GetUmbracoVersion(), SettingsForTests.GenerateMockGlobalSettings()); plan.Validate(); Console.WriteLine(plan.FinalState); Assert.IsFalse(plan.FinalState.IsNullOrWhiteSpace()); diff --git a/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs b/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs index 382d717761..17dbe431d9 100644 --- a/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs +++ b/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs @@ -91,7 +91,7 @@ namespace Umbraco.Tests.Persistence using (var database = _databaseFactory.CreateDatabase()) using (var transaction = database.GetTransaction()) { - schemaHelper = new DatabaseSchemaCreator(database, _logger, _umbracoVersion); + schemaHelper = new DatabaseSchemaCreator(database, _logger, _umbracoVersion, SettingsForTests.GenerateMockGlobalSettings()); schemaHelper.InitializeDatabaseSchema(); transaction.Complete(); } diff --git a/src/Umbraco.Tests/Persistence/SchemaValidationTest.cs b/src/Umbraco.Tests/Persistence/SchemaValidationTest.cs index 99254edd77..0648e3bc21 100644 --- a/src/Umbraco.Tests/Persistence/SchemaValidationTest.cs +++ b/src/Umbraco.Tests/Persistence/SchemaValidationTest.cs @@ -22,7 +22,7 @@ namespace Umbraco.Tests.Persistence using (var scope = ScopeProvider.CreateScope()) { - var schema = new DatabaseSchemaCreator(scope.Database, Logger, UmbracoVersion); + var schema = new DatabaseSchemaCreator(scope.Database, Logger, UmbracoVersion, TestObjects.GetGlobalSettings()); result = schema.ValidateSchema( //TODO: When we remove the xml cache from tests we can remove this too DatabaseSchemaCreator.OrderedTables.Concat(new []{typeof(ContentXmlDto), typeof(PreviewXmlDto)})); diff --git a/src/Umbraco.Tests/Persistence/SqlCeTableByTableTest.cs b/src/Umbraco.Tests/Persistence/SqlCeTableByTableTest.cs index 660783c784..207e595598 100644 --- a/src/Umbraco.Tests/Persistence/SqlCeTableByTableTest.cs +++ b/src/Umbraco.Tests/Persistence/SqlCeTableByTableTest.cs @@ -16,12 +16,14 @@ namespace Umbraco.Tests.Persistence [UmbracoTest(Database = UmbracoTestOptions.Database.NewSchemaPerTest)] public class SqlCeTableByTableTest : TestWithDatabaseBase { + public IGlobalSettings GlobalSettings => SettingsForTests.GenerateMockGlobalSettings(); + [Test] public void Can_Create_umbracoNode_Table() { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); @@ -34,7 +36,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -48,7 +50,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -63,7 +65,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -77,7 +79,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -92,7 +94,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -106,7 +108,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -122,7 +124,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -138,7 +140,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -152,7 +154,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); @@ -165,7 +167,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -180,7 +182,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -194,7 +196,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -211,7 +213,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -227,7 +229,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -241,7 +243,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); @@ -254,7 +256,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); @@ -267,7 +269,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); @@ -280,7 +282,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -296,7 +298,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -313,7 +315,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -328,7 +330,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -345,7 +347,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -363,7 +365,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -380,7 +382,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -395,7 +397,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -410,7 +412,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); @@ -423,7 +425,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); @@ -436,7 +438,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -457,7 +459,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); @@ -470,7 +472,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -484,7 +486,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -498,7 +500,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -513,7 +515,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); diff --git a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs index 9fc695cc3a..64b45d41bf 100644 --- a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs +++ b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs @@ -156,7 +156,7 @@ namespace Umbraco.Tests.Runtimes var scopeProvider = factory.GetInstance(); using (var scope = scopeProvider.CreateScope()) { - var creator = new DatabaseSchemaCreator(scope.Database, logger, umbracoVersion); + var creator = new DatabaseSchemaCreator(scope.Database, logger, umbracoVersion, SettingsForTests.GetDefaultGlobalSettings()); creator.InitializeDatabaseSchema(); scope.Complete(); } diff --git a/src/Umbraco.Tests/TestHelpers/TestObjects.cs b/src/Umbraco.Tests/TestHelpers/TestObjects.cs index 649c1e1f1e..73b09fb1f0 100644 --- a/src/Umbraco.Tests/TestHelpers/TestObjects.cs +++ b/src/Umbraco.Tests/TestHelpers/TestObjects.cs @@ -161,13 +161,13 @@ namespace Umbraco.Tests.TestHelpers var propertyValidationService = new Lazy(() => new PropertyValidationService(propertyEditorCollection, dataTypeService.Value)); var contentService = GetLazyService(factory, c => new ContentService(scopeProvider, logger, eventMessagesFactory, GetRepo(c), GetRepo(c), GetRepo(c), GetRepo(c), GetRepo(c), GetRepo(c), propertyValidationService)); var notificationService = GetLazyService(factory, c => new NotificationService(scopeProvider, userService.Value, contentService.Value, localizationService.Value, logger, ioHelper, GetRepo(c), globalSettings, umbracoSettings.Content)); - var serverRegistrationService = GetLazyService(factory, c => new ServerRegistrationService(scopeProvider, logger, eventMessagesFactory, GetRepo(c))); + var serverRegistrationService = GetLazyService(factory, c => new ServerRegistrationService(scopeProvider, logger, eventMessagesFactory, GetRepo(c), TestHelper.GetHostingEnvironment())); var memberGroupService = GetLazyService(factory, c => new MemberGroupService(scopeProvider, logger, eventMessagesFactory, GetRepo(c))); var memberService = GetLazyService(factory, c => new MemberService(scopeProvider, logger, eventMessagesFactory, memberGroupService.Value, GetRepo(c), GetRepo(c), GetRepo(c), GetRepo(c))); var mediaService = GetLazyService(factory, c => new MediaService(scopeProvider, mediaFileSystem, logger, eventMessagesFactory, GetRepo(c), GetRepo(c), GetRepo(c), GetRepo(c))); var contentTypeService = GetLazyService(factory, c => new ContentTypeService(scopeProvider, logger, eventMessagesFactory, contentService.Value, GetRepo(c), GetRepo(c), GetRepo(c), GetRepo(c))); var mediaTypeService = GetLazyService(factory, c => new MediaTypeService(scopeProvider, logger, eventMessagesFactory, mediaService.Value, GetRepo(c), GetRepo(c), GetRepo(c), GetRepo(c))); - var fileService = GetLazyService(factory, c => new FileService(scopeProvider, ioHelper, logger, eventMessagesFactory, GetRepo(c), GetRepo(c), GetRepo(c), GetRepo(c), GetRepo(c), GetRepo(c), TestHelper.ShortStringHelper)); + var fileService = GetLazyService(factory, c => new FileService(scopeProvider, ioHelper, logger, eventMessagesFactory, GetRepo(c), GetRepo(c), GetRepo(c), GetRepo(c), GetRepo(c), GetRepo(c), TestHelper.ShortStringHelper, globalSettings)); var memberTypeService = GetLazyService(factory, c => new MemberTypeService(scopeProvider, logger, eventMessagesFactory, memberService.Value, GetRepo(c), GetRepo(c), GetRepo(c))); var entityService = GetLazyService(factory, c => new EntityService(scopeProvider, logger, eventMessagesFactory, idkMap, GetRepo(c))); @@ -179,9 +179,9 @@ namespace Umbraco.Tests.TestHelpers return new PackagingService( auditService.Value, new PackagesRepository(contentService.Value, contentTypeService.Value, dataTypeService.Value, fileService.Value, macroService.Value, localizationService.Value, ioHelper, - new EntityXmlSerializer(contentService.Value, mediaService.Value, dataTypeService.Value, userService.Value, localizationService.Value, contentTypeService.Value, urlSegmentProviders, TestHelper.ShortStringHelper), logger, umbracoVersion, globalSettings, "createdPackages.config"), + new EntityXmlSerializer(contentService.Value, mediaService.Value, dataTypeService.Value, userService.Value, localizationService.Value, contentTypeService.Value, urlSegmentProviders, TestHelper.ShortStringHelper, propertyEditorCollection), logger, umbracoVersion, globalSettings, "createdPackages.config"), new PackagesRepository(contentService.Value, contentTypeService.Value, dataTypeService.Value, fileService.Value, macroService.Value, localizationService.Value, ioHelper, - new EntityXmlSerializer(contentService.Value, mediaService.Value, dataTypeService.Value, userService.Value, localizationService.Value, contentTypeService.Value, urlSegmentProviders, TestHelper.ShortStringHelper), logger, umbracoVersion, globalSettings, "installedPackages.config"), + new EntityXmlSerializer(contentService.Value, mediaService.Value, dataTypeService.Value, userService.Value, localizationService.Value, contentTypeService.Value, urlSegmentProviders, TestHelper.ShortStringHelper, propertyEditorCollection), logger, umbracoVersion, globalSettings, "installedPackages.config"), new PackageInstallation( new PackageDataInstallation(logger, fileService.Value, macroService.Value, localizationService.Value, dataTypeService.Value, entityService.Value, contentTypeService.Value, contentService.Value, propertyEditorCollection, scopeProvider, shortStringHelper, GetGlobalSettings(), localizedTextService.Value), new PackageFileInstallation(compiledPackageXmlParser, ioHelper, new ProfilingLogger(logger, new TestProfiler())), diff --git a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs index ef8a0bc599..56da2bfe4e 100644 --- a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs +++ b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs @@ -305,7 +305,7 @@ namespace Umbraco.Tests.TestHelpers { using (var scope = ScopeProvider.CreateScope()) { - var schemaHelper = new DatabaseSchemaCreator(scope.Database, Logger, UmbracoVersion); + var schemaHelper = new DatabaseSchemaCreator(scope.Database, Logger, UmbracoVersion, TestObjects.GetGlobalSettings()); //Create the umbraco database and its base data schemaHelper.InitializeDatabaseSchema(); diff --git a/src/Umbraco.Web/Install/InstallSteps/DatabaseUpgradeStep.cs b/src/Umbraco.Web/Install/InstallSteps/DatabaseUpgradeStep.cs index ec4cc9ea85..34d630c6b6 100644 --- a/src/Umbraco.Web/Install/InstallSteps/DatabaseUpgradeStep.cs +++ b/src/Umbraco.Web/Install/InstallSteps/DatabaseUpgradeStep.cs @@ -19,13 +19,15 @@ namespace Umbraco.Web.Install.InstallSteps private readonly IRuntimeState _runtime; private readonly ILogger _logger; private readonly IUmbracoVersion _umbracoVersion; + private readonly IGlobalSettings _globalSettings; - public DatabaseUpgradeStep(DatabaseBuilder databaseBuilder, IRuntimeState runtime, ILogger logger, IUmbracoVersion umbracoVersion) + public DatabaseUpgradeStep(DatabaseBuilder databaseBuilder, IRuntimeState runtime, ILogger logger, IUmbracoVersion umbracoVersion, IGlobalSettings globalSettings) { _databaseBuilder = databaseBuilder; _runtime = runtime; _logger = logger; _umbracoVersion = umbracoVersion; + _globalSettings = globalSettings; } public override Task ExecuteAsync(object model) @@ -38,7 +40,7 @@ namespace Umbraco.Web.Install.InstallSteps { _logger.Info("Running 'Upgrade' service"); - var plan = new UmbracoPlan(_umbracoVersion); + var plan = new UmbracoPlan(_umbracoVersion, _globalSettings); plan.AddPostMigration(); // needed when running installer (back-office) var result = _databaseBuilder.UpgradeSchemaAndData(plan); diff --git a/src/Umbraco.Web/UmbracoDbProviderFactoryCreator.cs b/src/Umbraco.Web/UmbracoDbProviderFactoryCreator.cs index 99358f990b..3051e6df09 100644 --- a/src/Umbraco.Web/UmbracoDbProviderFactoryCreator.cs +++ b/src/Umbraco.Web/UmbracoDbProviderFactoryCreator.cs @@ -1,6 +1,8 @@ using System; using System.Data.Common; +using System.Data.SqlServerCe; using Umbraco.Core; +using Umbraco.Core.Migrations.Install; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.SqlSyntax; @@ -40,5 +42,11 @@ namespace Umbraco.Web throw new InvalidOperationException($"Unknown provider name \"{providerName}\""); } } + + public void CreateDatabase() + { + var engine = new SqlCeEngine(DatabaseBuilder.EmbeddedDatabaseConnectionString); + engine.CreateDatabase(); + } } }