From 6ace34474562ccafe590b639beff907c36bed75c Mon Sep 17 00:00:00 2001 From: David Shiflet Date: Thu, 10 Mar 2022 14:34:53 -0500 Subject: [PATCH 1/2] initial public version --- .editorconfig | 156 + .gitattributes | 22 + .gitignore | 123 +- .gitmodules | 0 Directory.Build.props | 22 + Directory.Build.rsp | 8 + Packages.props | 45 + SmoBuild/AssemblyInfo.props | 12 + SmoBuild/CSharp.NetCore.props | 4 + SmoBuild/CSharp.NetFx.props | 4 + SmoBuild/CSharp.NetStandard.props | 5 + SmoBuild/DdlEvents.targets | 39 + SmoBuild/DdlEvents/class_template.cs | 209 + SmoBuild/DdlEvents/classenum_template.cs | 223 + SmoBuild/DdlEvents/eventsdef.cpp | 3503 +++++++ SmoBuild/DdlEvents/evtenum_template.cs | 67 + SmoBuild/DdlEvents/evtschema.pl | 57 + SmoBuild/DdlEvents/smoevt.pl | 1102 ++ SmoBuild/DdlEvents/smoevt_template.cs | 198 + SmoBuild/DdlEvents/trc2evt.pl | 890 ++ SmoBuild/DdlEvents/trccomn.h | 1387 +++ SmoBuild/DdlEvents/trcdef.cpp | 1562 +++ SmoBuild/DisableStrongName.ps1 | 18 + SmoBuild/SqlClientReference.props | 19 + SmoBuild/Version.props | 21 + azurepipelines-coverage.yml | 5 + dirs.proj | 6 + docs/README.md | 81 + global.json | 10 + init.cmd | 67 + src/Codegen/CodeGen.cs | 2643 +++++ src/Codegen/ExecuteSqlFake.cs | 263 + src/Codegen/ModelGen.cs | 442 + src/Codegen/README.md | 384 + src/Codegen/SmoCodeGen.csproj | 148 + src/Codegen/StringEnumerator.cs | 20 + src/Codegen/cfg.xml | 2576 +++++ src/Codegen/collections_codegen.proj | 1014 ++ src/Codegen/gen.xml | 802 ++ src/Directory.Build.props | 103 + src/Directory.Build.targets | 94 + src/FunctionalTest/Directory.Build.props | 21 + .../Dockerfiles/150Linux/dockerfile | 20 + .../Framework/Helpers/AzureKeyVaultHelper.cs | 148 + .../Framework/Helpers/ConnectionHelpers.cs | 242 + .../Framework/Helpers/ConnectionMetrics.cs | 130 + .../Framework/Helpers/DataExtensions.cs | 48 + .../Helpers/DatabaseObjectHelpers.cs | 707 ++ .../Framework/Helpers/DirectoryHelpers.cs | 40 + .../Framework/Helpers/ExceptionHelpers.cs | 75 + .../Framework/Helpers/GenericSqlProxy.cs | 255 + .../Framework/Helpers/PolicyStoreHelpers.cs | 190 + .../Framework/Helpers/PropertyClasses.cs | 125 + .../Framework/Helpers/RetryHelper.cs | 77 + .../Framework/Helpers/ScriptHelpers.cs | 74 + .../Helpers/ScriptSchemaObjectBaseHelpers.cs | 25 + .../Framework/Helpers/ScriptTokenizer.cs | 451 + .../Framework/Helpers/ServerObjectHelpers.cs | 625 ++ .../Framework/Helpers/SmoObjectHelpers.cs | 195 + .../Framework/Helpers/SqlTestRandom.cs | 72 + .../Helpers/SqlTypeConverterHelpers.cs | 30 + .../Helpers/StringCollectionHelpers.cs | 31 + .../Framework/Helpers/StringExtensions.cs | 192 + .../Framework/Helpers/TSqlScriptingHelper.cs | 38 + .../Framework/Helpers/TableObjectHelpers.cs | 87 + .../Helpers/TestContextExtensions.cs | 30 + .../Framework/Helpers/TraceHelper.cs | 50 + .../Framework/Helpers/XmlHelper.cs | 62 + ....SqlServer.Test.Manageability.Utils.csproj | 32 + .../Framework/PRVerification.runsettings | 10 + ...ataRetention_DataRetentionPeriodOption.sql | 9 + .../Framework/Sql2017Linux.runsettings | 7 + src/FunctionalTest/Framework/SqlVersion.cs | 24 + .../Framework/Sqlv150Linux.runsettings | 7 + .../Framework/Sqlv160Linux.runsettings | 7 + .../DisconnectedTestAttribute.cs | 20 + .../Framework/TestFramework/SqlFeature.cs | 42 + .../SqlRequiredFeatureAttribute.cs | 31 + .../TestFramework/SqlTestAreaAttribute.cs | 56 + .../Framework/TestFramework/SqlTestBase.cs | 787 ++ .../TestFramework/SqlTestCategoryAttribute.cs | 66 + .../SqlTestDimensionAttribute.cs | 63 + .../Framework/TestFramework/SqlTestHelpers.cs | 139 + .../Framework/TestFramework/SqlTestResult.cs | 105 + .../SupportedServerVersionRange.cs | 226 + .../SupportedTargetServerFriendlyName.cs | 47 + .../TestFramework/TestServerDescriptor.cs | 203 + .../TestFramework/TestServerPoolManager.cs | 95 + ...supportedDatabaseEngineEditionAttribute.cs | 59 + .../UnsupportedDatabaseEngineTypeAttribute.cs | 45 + .../UnsupportedHostPlatformAttribute.cs | 58 + .../Framework/azuresql.runsettings | 93 + .../Framework/azuresqldwgen3.runsettings | 128 + .../Framework/azuresqledge.runsettings | 128 + .../Framework/functionaltest.runsettings | 134 + .../Framework/linux.runsettings | 96 + .../Framework/ondemand.runsettings | 93 + .../Framework/sql2008.runsettings | 91 + .../Framework/sql2012.runsettings | 91 + .../Framework/sql2014.runsettings | 91 + .../Framework/sql2016.runsettings | 91 + .../Framework/sql2017.runsettings | 91 + .../Framework/sqlexpress.runsettings | 132 + .../Framework/sqlmi.runsettings | 131 + .../Framework/sqlv150.runsettings | 7 + .../Framework/sqlv160.runsettings | 7 + .../Smo/BackupRestore/BackupRestoreTests.cs | 147 + .../BackupRestore/LongFullBackupCleanup.sql | 16 + .../Smo/BackupRestore/LongFullBackupPlan.sql | 3 + .../Smo/BackupRestore/LongFullBackupSetup.sql | 114 + .../NewerOutOfSequenceCleanup.sql | 17 + .../NewerOutOfSequencePointInTimePlan.sql | 5 + .../BackupRestore/NewerOutOfSequenceSetup.sql | 116 + .../OlderOutOfSequenceCleanup.sql | 16 + .../OlderOutOfSequencePointInTimePlan.sql | 5 + .../BackupRestore/OlderOutOfSequenceSetup.sql | 114 + .../Smo/DMF/ExecutionHistoryTests.cs | 376 + src/FunctionalTest/Smo/DMF/PolicyTests.cs | 420 + src/FunctionalTest/Smo/DMF/SfcXmlHelper.cs | 40 + .../Smo/GeneralFunctionality/AuditSmoTests.cs | 451 + .../DataClassificationSmoTests.cs | 557 + .../GeneralFunctionality/DatabaseSmoTests.cs | 1220 +++ .../GeneralFunctionality/DifferencingTests.cs | 48 + .../Smo/GeneralFunctionality/DwSmoTests.cs | 72 + .../ServerConnectionTests.cs | 277 + .../GeneralFunctionality/ServerSmoTests.cs | 494 + .../SmoInitializingTests.cs | 64 + .../GeneralFunctionality/SmoTestsUtility.cs | 51 + .../MetadataProvider/MetadataProviderTests.cs | 52 + .../Smo/Microsoft.SqlServer.Test.Smo.csproj | 92 + src/FunctionalTest/Smo/README.md | 34 + .../Smo/ScriptingTests/Alert_SmoTestSuite.cs | 118 + .../ApplicationRole_SmoTestSuite.cs | 68 + .../Smo/ScriptingTests/Audit_SmoTestSuite.cs | 82 + .../AvailabilityGroupListener_SmoTestSuite.cs | 130 + .../AvailabilityGroup_SmoTestSuite.cs | 578 ++ .../BackupDevice_SmoTestSuite.cs | 75 + .../BrokerPriority_SmoTestSuite.cs | 66 + .../BrokerService_SmoTestSuite.cs | 71 + .../ScriptingTests/Category_SmoTestSuite.cs | 89 + .../Smo/ScriptingTests/Check_SmoTestSuite.cs | 65 + .../ColumnEncryptionKeyValue_SmoTestSuite.cs | 88 + .../ColumnEncryptionKey_SmoTestSuite.cs | 71 + .../ColumnMasterKey_SmoTestSuite.cs | 84 + .../Smo/ScriptingTests/Column_SmoTestSuite.cs | 264 + .../ScriptingTests/Credential_SmoTestSuite.cs | 72 + .../CryptographicProvider_SmoTestSuite.cs | 105 + .../Smo/ScriptingTests/Data/qatest/bands.dat | 6 + ...DatabaseAuditSpecification_SmoTestSuite.cs | 76 + .../DatabaseDdlTrigger_SmoTestSuite.cs | 64 + .../DatabaseEncryptionKey_SmoTestSuite.cs | 110 + .../DatabaseOptions_SmoTestSuite.cs | 104 + .../DatabaseRole_SmoTestSuite.cs | 59 + .../DatabaseScopedCredential_SmoTestSuite.cs | 63 + .../ScriptingTests/Database_SmoTestSuite.cs | 1649 +++ .../DefaultConstraint_SmoTestSuite.cs | 127 + .../DefaultRule_SmoTestSuite.cs | 96 + .../EdgeConstraint_SmoTestSuite.cs | 183 + .../ScriptingTests/Endpoint_SmoTestSuite.cs | 76 + .../ExtendedProperty_SmoTestSuite.cs | 83 + .../ExternalDataSource_SmoTestSuite.cs | 1114 ++ .../ExternalFileFormat_SmoTestSuite.cs | 1123 +++ .../ExternalLanguage_SmoTestSuite.cs | 376 + .../ExternalLibrary_SmoTestSuite.cs | 284 + .../ExternalResourcePool_SmoTestSuite.cs | 771 ++ .../ExternalStream_SmoTestSuite.cs | 188 + .../ExternalStreamingJob_SmoTestSuite.cs | 165 + .../Smo/ScriptingTests/File_SmoTestSuite.cs | 142 + .../ScriptingTests/ForeignKey_SmoTestSuite.cs | 75 + .../FullTextCatalog_SmoTestSuite.cs | 57 + .../FullTextIndex_SmoTestSuite.cs | 90 + .../FullTextStopList_SmoTestSuite.cs | 57 + .../Smo/ScriptingTests/Index_SmoTestSuite.cs | 1931 ++++ .../JobSchedule_SmoTestSuite.cs | 83 + .../ScriptingTests/JobStep_SmoTestSuite.cs | 76 + .../Smo/ScriptingTests/Job_SmoTestSuite.cs | 101 + .../LinkedServerLogin_SmoTestSuite.cs | 74 + .../LinkedServer_SmoTestSuite.cs | 73 + .../Smo/ScriptingTests/Login_SmoTestSuite.cs | 311 + .../MailAccount_SmoTestSuite.cs | 74 + .../MailProfile_SmoTestSuite.cs | 72 + .../MessageType_SmoTestSuite.cs | 60 + .../ScriptingTests/Operator_SmoTestSute.cs | 72 + .../PartitionFunction_SmoTestSuite.cs | 65 + .../PartitionScheme_SmoTestSuite.cs | 77 + .../PhysicalPartition_SmoTestSuite.cs | 219 + .../ScriptingTests/PlanGuide_SmoTestSuite.cs | 61 + .../ProxyAccount_SmoTestSuite.cs | 89 + .../ScriptingTests/QueryStore_SmoTestSuite.cs | 256 + .../Smo/ScriptingTests/RegressionTests.cs | 114 + .../RemoteServiceBinding_SmoTestSuite.cs | 79 + .../ResourcePool_SmoTestSuite.cs | 72 + .../Smo/ScriptingTests/Schema_SmoTestSuite.cs | 58 + .../Smo/ScriptingTests/ScriptMakerTests.cs | 371 + .../Smo/ScriptingTests/ScripterTests.cs | 110 + .../Smo/ScriptingTests/ScriptingTestSuite.cs | 2751 +++++ ...cryptionKey_SmoTestSuite_SQL2016_Setup.sql | 36 + .../Scripts/DependencyOrderScriptingDb.sql | Bin 0 -> 15354 bytes .../ExternalLibrary_SmoTestSuite_Setup.sql | 7 + ...SqlAssembly_SmoTestSuite_SQL2016_Setup.sql | 57 + .../SearchPropertyList_SmoTestSuite.cs | 58 + .../SecurityPolicy_SmoTestSuite.cs | 514 + .../SecurityPredicate_SmoTestSuite.cs | 90 + .../ScriptingTests/Sequence_SmoTestSuite.cs | 63 + .../ServerAuditSpecification_SmoTestSuite.cs | 83 + .../ServerDdlTrigger_SmoTestSuite.cs | 77 + .../ScriptingTests/ServerRole_SmoTestSuite.cs | 71 + .../Smo/ScriptingTests/Server_SmoTestSuite.cs | 221 + .../ServiceContract_SmoTestSuite.cs | 67 + .../ServiceQueue_SmoTestSuite.cs | 60 + .../ServiceRoute_SmoTestSuite.cs | 62 + .../SmoTestFramework/SmoTestBase.cs | 343 + .../SqlAssembly_SmoTestSuite.cs | 111 + .../ScriptingTests/Statistic_SmoTestSuite.cs | 163 + .../StoredProcedure_SmoTestSuite.cs | 318 + .../ScriptingTests/Synonym_SmoTestSuite.cs | 64 + .../Smo/ScriptingTests/Table_SmoTestSuite.cs | 4958 +++++++++ .../TargetServerGroup_SmoTestSuite.cs | 72 + .../TestHelpers/AlwaysOnTestHelper.cs | 92 + .../TestHelpers/SmoObjectTestBase.cs | 252 + .../ScriptingTests/Trigger_SmoTestSuite.cs | 149 + .../UserDefinedAggregate_SmoTestSuite.cs | 110 + .../UserDefinedDataType_SmoTestSuite.cs | 63 + .../UserDefinedFunction_SmoTestSuite.cs | 209 + .../UserDefinedTableType_SmoTestSuite.cs | 64 + .../UserDefinedType_SmoTestSuite.cs | 105 + .../Smo/ScriptingTests/User_SmoTestSuite.cs | 98 + ...ataRetention_DataRetentionPeriodOption.sql | 9 + .../Smo/ScriptingTests/View_SmoTestSuite.cs | 135 + .../WorkloadGroup_SmoTestSuite.cs | 186 + ...nagementWorkloadClassifier_SmoTestSuite.cs | 99 + ...oadManagementWorkloadGroup_SmoTestSuite.cs | 139 + .../XmlSchemaCollection_SmoTestSuite.cs | 60 + src/FunctionalTest/Smo/Sfc/AlienTests.cs | 62 + .../Smo/Sfc/SfcEnumeratorTests.cs | 63 + .../Smo/SqlAssessment/SqlAssessmentTests.cs | 176 + .../Smo/ToolsConnectionInfo.xml | 181 + .../Smo/WMI/ServerEventsTests.cs | 13 + .../Smo/XEvent/ActionInfoUnitTest.cs | 121 + .../Smo/XEvent/ActionUnitTest.cs | 318 + .../Smo/XEvent/DataEventColumnInfoUnitTest.cs | 43 + .../Smo/XEvent/DbScopedXEventTestBase.cs | 132 + .../Smo/XEvent/EnumeratorUnitTest.cs | 483 + .../Smo/XEvent/EventColumnInfoUnitTest.cs | 48 + .../Smo/XEvent/EventFieldUnitTest.cs | 148 + .../Smo/XEvent/EventInfoUnitTest.cs | 82 + .../Smo/XEvent/EventUnitTest.cs | 830 ++ .../Smo/XEvent/MapInfoUnitTest.cs | 110 + .../Smo/XEvent/MapValueInfoUnitTest.cs | 55 + .../Smo/XEvent/PackageUnitTest.cs | 196 + .../Smo/XEvent/PredCompareExprUnitTest.cs | 75 + .../Smo/XEvent/PredCompareUnitTest.cs | 100 + .../Smo/XEvent/PredFunctionExprUnitTest.cs | 81 + .../Smo/XEvent/PredLogicalExprUnitTest.cs | 129 + .../Smo/XEvent/PredOperandUnitTest.cs | 86 + .../Smo/XEvent/PredSourceInfoUnitTest.cs | 37 + .../Smo/XEvent/PredValueUnitTest.cs | 28 + .../XEvent/ReadOnlyEventColumnInfoUnitTest.cs | 46 + .../Smo/XEvent/SessionUnitTest.cs | 483 + .../Smo/XEvent/TargetColumnInfoUnitTest.cs | 124 + .../Smo/XEvent/TargetFieldUnitTest.cs | 153 + .../Smo/XEvent/TargetInfoUnitTest.cs | 32 + .../Smo/XEvent/TargetUnitTest.cs | 328 + .../Smo/XEvent/TypeInfoUnitTest.cs | 55 + src/FunctionalTest/Smo/XEvent/Util.cs | 20 + .../Smo/XEvent/XEStoreUnitTest.cs | 180 + .../Smo/XEvent/XEventSessionTests.cs | 320 + src/FunctionalTest/dirs.proj | 6 + .../Data/Tools.Sql.BatchParser/BatchParser.cs | 158 + .../BatchParserAction.cs | 11 + .../BatchParserException.cs | 43 + .../Data/Tools.Sql.BatchParser/ErrorCode.cs | 25 + .../Tools.Sql.BatchParser/ICommandHandler.cs | 15 + .../IVariableResolver.cs | 11 + .../Data/Tools.Sql.BatchParser/Lexer.cs | 728 ++ .../Data/Tools.Sql.BatchParser/LexerInput.cs | 151 + .../Tools.Sql.BatchParser/LexerTokenType.cs | 38 + .../Data/Tools.Sql.BatchParser/LineInfo.cs | 106 + ...icrosoft.Data.Tools.Sql.BatchParser.csproj | 16 + .../Tools.Sql.BatchParser/OnErrorAction.cs | 11 + .../Data/Tools.Sql.BatchParser/Parser.cs | 685 ++ .../Tools.Sql.BatchParser/PositionStruct.cs | 26 + .../Data/Tools.Sql.BatchParser/TextBlock.cs | 57 + .../Tools.Sql.BatchParser/TextRuleFlags.cs | 18 + .../Data/Tools.Sql.BatchParser/Token.cs | 27 + .../VariableReference.cs | 24 + .../Data/Tools.Sql.BatchParser/sr.strings | 29 + src/Microsoft/Directory.Build.props | 37 + src/Microsoft/Directory.Build.targets | 17 + .../Management/ConnectionInfo/AssemblyInfo.cs | 10 + .../ConnectionInfo/ConnectionEnums.cs | 383 + .../ConnectionInfo/ConnectionException.CS | 381 + .../ConnectionInfo/ConnectionInfoBase.cs | 78 + .../ConnectionInfo/ConnectionInfoHelper.cs | 56 + .../ConnectionInfo/ConnectionManager.cs | 1048 ++ .../ConnectionInfo/ConnectionSettings.cs | 1288 +++ .../DatabaseEngineTypeExtensionClass.cs | 24 + .../ConnectionInfo/DtsConnectionInfo.cs | 109 + .../ConnectionInfo/EncryptionUtility.cs | 125 + .../ConnectionInfo/ExecutionCache.cs | 261 + .../ConnectionInfo/FxCopSupressions.cs | 64 + .../ConnectionInfo/IRenewableToken.cs | 41 + .../ConnectionInfo/ISfcConnection.cs | 47 + .../LocalizableTypeConverter.cs | 784 ++ .../Microsoft.SqlServer.ConnectionInfo.csproj | 39 + .../ConnectionInfo/NetCoreHelpers.cs | 60 + .../ConnectionInfo/OlapConnectionInfo.cs | 170 + .../ConnectionInfo/ServerConnection.cs | 2053 ++++ .../ConnectionInfo/ServerInformation.cs | 221 + .../ConnectionInfo/ServerVersion.cs | 78 + .../ConnectionInfo/SqlCeConnectionInfo.cs | 177 + .../ConnectionInfo/SqlConnectionInfo.cs | 511 + .../SqlConnectionInfoWithConnection.cs | 146 + .../Management/ConnectionInfo/SqlContext.cs | 27 + .../ConnectionInfo/SqlDirectConnection.cs | 99 + .../SqlOlapConnectionInfoBase.cs | 417 + .../ConnectionInfo/SqlServerMgmtEx.cs | 64 + .../ConnectionInfo/StatementCapture.cs | 58 + .../ConnectionInfo/StatementEvent.cs | 110 + .../StringConnectionInfo.strings | 100 + .../ConnectionInfo/TransferInterfaces.cs | 154 + .../ConnectionInfo/WindowsCredential.cs | 301 + .../ConnectionInfo/WmiMgmtScopeConnection.cs | 51 + .../Management/ConnectionInfo/interfaces.cs | 86 + .../ConnectionInfo/safenativemethods.cs | 45 + .../Management/Dmf.Common/AssemblyInfo.cs | 9 + .../Management/Dmf.Common/CustomAttributes.cs | 144 + .../Management/Dmf.Common/DmfConstants.cs | 17 + .../Management/Dmf.Common/DmfException.cs | 5065 ++++++++++ .../Dmf.Common/ExceptionTemplates.strings | 38 + .../Management/Dmf.Common/FxCopExclusions.cs | 133 + .../Management/Dmf.Common/ManagementFacet.cs | 43 + .../Microsoft.SqlServer.Dmf.Common.csproj | 17 + .../Management/Dmf.Common/NetCoreHelpers.cs | 54 + .../PostConfigurationActionAttribute.cs | 51 + .../SqlServer/Management/Dmf.Common/Utils.cs | 30 + .../Management/Dmf.Common/enumstructs.cs | 58 + .../SqlServer/Management/Dmf/AssemblyInfo.cs | 12 + .../SqlServer/Management/Dmf/Condition.cs | 1283 +++ .../Management/Dmf/ConditionCollection.cs | 55 + .../Management/Dmf/ConditionExtender.cs | 211 + .../Management/Dmf/ConditionValidation.cs | 372 + .../Dmf/ConnectionEvaluationHistory.cs | 514 + .../ConnectionEvaluationHistoryCollection.cs | 57 + .../Management/Dmf/EvaluationDetail.cs | 506 + .../Dmf/EvaluationDetailCollection.cs | 57 + .../Management/Dmf/EvaluationFactory.cs | 1654 +++ .../Management/Dmf/EvaluationHistory.cs | 541 + .../Dmf/EvaluationHistoryCollection.cs | 59 + .../Management/Dmf/ExceptionTemplates.strings | 187 + .../Management/Dmf/ExpressionTree.cs | 4697 +++++++++ .../SqlServer/Management/Dmf/FacetInfo.cs | 228 + .../Management/Dmf/FacetInfoCollection.cs | 28 + .../Management/Dmf/FacetProperties.strings | 5 + .../Management/Dmf/FacetRepository.cs | 1156 +++ .../Management/Dmf/FxCopExclusions.cs | 1139 +++ .../Dmf/LocalizableResources.strings | 15 + .../Dmf/Microsoft.SqlServer.Dmf.csproj | 34 + .../SqlServer/Management/Dmf/ObjectSet.cs | 1623 +++ .../Management/Dmf/ObjectSetCollection.cs | 56 + .../Management/Dmf/ObjectSetValidation.cs | 261 + .../SqlServer/Management/Dmf/Policy.cs | 2367 +++++ .../Management/Dmf/PolicyCategory.cs | 539 + .../Dmf/PolicyCategoryCollection.cs | 67 + .../Dmf/PolicyCategoryInformation.cs | 189 + .../Dmf/PolicyCategorySubscription.cs | 576 ++ .../PolicyCategorySubscriptionCollection.cs | 71 + .../PolicyCategorySubscriptionValidation.cs | 68 + .../Management/Dmf/PolicyCollection.cs | 72 + .../Dmf/PolicyEvaluationResultsWriter.cs | 155 + .../SqlServer/Management/Dmf/PolicyEvents.cs | 616 ++ .../Management/Dmf/PolicyExtender.cs | 321 + .../SqlServer/Management/Dmf/PolicyStore.cs | 4038 ++++++++ .../Management/Dmf/PolicyStoreValidation.cs | 59 + .../Management/Dmf/PolicyValidation.cs | 530 + .../SqlServer/Management/Dmf/TargetSet.cs | 978 ++ .../Management/Dmf/TargetSetCollection.cs | 98 + .../Management/Dmf/TargetSetLevel.cs | 538 + .../Dmf/TargetSetLevelCollection.cs | 73 + .../SqlServer/Management/Dmf/Utils.cs | 362 + .../HadrData/AGListenerNetworkMode.cs | 14 + .../HadrData/AvailabilityGroupData.cs | 506 + .../AvailabilityGroupListenerConfiguration.cs | 164 + .../AvailabilityGroupListenerSubnet.cs | 31 + .../HadrData/AvailabilityGroupReplica.cs | 640 ++ .../AvailabilityGroupReplicaCollection.cs | 22 + .../HadrData/AvailabilityGroupReplicaData.cs | 248 + .../HadrData/AvailabilityObjectState.cs | 26 + .../HadrData/CollectionsExtensionMethods.cs | 28 + .../Management/HadrData/Constants.cs | 49 + .../HadrData/DataSynchronizationOption.cs | 23 + .../Management/HadrData/FailoverCategory.cs | 21 + .../Management/HadrData/FailoverData.cs | 246 + .../Management/HadrData/FailoverUtilities.cs | 182 + ...osoft.SqlServer.Management.HadrData.csproj | 57 + .../HadrData/PrimaryDatabaseData.cs | 118 + .../HadrData/Properties/AssemblyInfo.cs | 12 + .../Management/HadrData/ReplicaRole.cs | 24 + .../Management/HadrData/Resource.Designer.cs | 81 + .../Management/HadrData/Resource.resx | 126 + .../HadrData/SortableBindingList.cs | 155 + .../Management/HadrData/UserSecurity.cs | 529 + .../HadrModel/AddDBCredentialTask.cs | 141 + ...AddDatabaseToExistingAGScenarioProvider.cs | 164 + ...DatabaseToExistingAvailabilityGroupTask.cs | 124 + .../AddNewAvailabilityGroupListenerTask.cs | 102 + .../AddReplicaDatabaseExistenceValidator.cs | 27 + ...plicaDatabaseFileCompatibilityValidator.cs | 27 + ...ddReplicaDatabaseFileExistenceValidator.cs | 26 + .../Management/HadrModel/AddReplicaTask.cs | 117 + ...istingAvailabilityGroupScenarioProvider.cs | 205 + ...abilityGroupNotJoinedOnReplicaException.cs | 26 + .../AvailabilityGroupQuorumValidationTask.cs | 73 + ...ilityGroupQuorumValidationTaskException.cs | 33 + .../AvailabilityModeIncompatibleException.cs | 23 + .../HadrModel/AvailabilityModeValidator.cs | 64 + .../HadrModel/BackupDatabaseTask.cs | 187 + .../HadrModel/BackupDatabaseTaskException.cs | 30 + .../HadrModel/BackupLocationValidator.cs | 234 + .../Management/HadrModel/BackupLogTask.cs | 155 + .../HadrModel/BackupLogTaskException.cs | 30 + ...cAvailabilityGroupIncompatibleException.cs | 23 + .../BasicAvailabilityGroupValidator.cs | 70 + .../Management/HadrModel/ClusterNodeState.cs | 37 + .../CompatibleEncryptionValidator.cs | 153 + .../HadrModel/ConfigureEndpointsTask.cs | 85 + ...labilityGroupDatabaseExistenceValidator.cs | 27 + ...GroupDatabaseFileCompatibilityValidator.cs | 27 + ...lityGroupDatabaseFileExistenceValidator.cs | 26 + .../CreateAvailabilityGroupListenerTask.cs | 120 + ...CreateAvailabilityGroupScenarioProvider.cs | 211 + .../HadrModel/CreateAvailabilityGroupTask.cs | 123 + .../Management/HadrModel/CreateLoginTask.cs | 77 + .../HadrModel/DBMasterKeyValidator.cs | 70 + .../DatabaseAlreadyExistsException.cs | 27 + .../HadrModel/DatabaseExistenceValidator.cs | 90 + ...baseFileAlreadyExistsOnReplicaException.cs | 26 + .../DatabaseFileCompatibilityValidator.cs | 171 + .../DatabaseFileExistenceValidator.cs | 112 + ...seFileLocationMissingOnReplicaException.cs | 26 + ...abaseFileNotInDefaultDirectoryException.cs | 26 + .../DriveNotFoundOnReplicaException.cs | 28 + ...itExistingAvailabilityGroupListenerTask.cs | 105 + .../EncryptionAlgorithmMismatchException.cs | 22 + .../HadrModel/EncryptionMismatchException.cs | 22 + ...dpointAuthenticationValidationException.cs | 34 + .../EndpointAuthenticationValidator.cs | 79 + ...ailoverQuorumVoteConfigurationValidator.cs | 46 + .../HadrModel/FailoverScenarioProvider.cs | 77 + .../Management/HadrModel/FailoverTask.cs | 81 + .../HadrModel/FailoverValidationException.cs | 40 + .../Management/HadrModel/FailoverValidator.cs | 60 + .../HadrModel/FailoverWaitRoleChangeTask.cs | 50 + .../HadrModel/FeatureInstallationState.cs | 26 + .../HadrModel/FixedRetryCountPolicy.cs | 92 + .../HadrModel/FixedTimeoutRetryPolicy.cs | 108 + .../HadrModel/FreeDiskSpaceValidator.cs | 160 + .../HadrModel/GroupUserMembership.cs | 26 + .../HadrModel/HADRValidationBaseException.cs | 32 + .../HadrModel/HadrModelUtilities.cs | 75 + .../HadrModel/HadrTaskBaseException.cs | 32 + .../HadrModel/HadrTaskErrorException.cs | 32 + .../HadrModel/HadrValidationErrorException.cs | 32 + .../HadrValidationWarningException.cs | 32 + .../Management/HadrModel/IExecutionPolicy.cs | 40 + .../Management/HadrModel/IScriptableTask.cs | 28 + .../Management/HadrModel/ITasksProvider.cs | 19 + .../HadrModel/IValidatorProvider.cs | 20 + ...cientFreeSpaceForDatabaseFilesException.cs | 24 + .../InvalidAvailabilityGroupException.cs | 24 + ...oinDatabaseToAvailabilityGroupException.cs | 22 + .../JoinDatabaseToAvailabilityGroupTask.cs | 163 + .../HadrModel/JoinSecondariesTask.cs | 100 + .../ListenerConfigurationException.cs | 19 + .../ListenerConfigurationValidator.cs | 49 + .../HadrModel/MaxHostedServicesException.cs | 35 + ...soft.SqlServer.Management.HadrModel.csproj | 25 + .../Management/HadrModel/ModelDelegates.cs | 33 + .../HadrModel/PercentCompleteHandler.cs | 64 + .../PrimaryCannotWriteToLocationException.cs | 36 + .../HadrModel/Properties/AssemblyInfo.cs | 11 + .../Management/HadrModel/QuorumHelper.cs | 131 + .../HadrModel/QuorumHelperException.cs | 30 + .../Management/HadrModel/Resource.Designer.cs | 1224 +++ .../Management/HadrModel/Resource.resx | 513 + .../HadrModel/RestartSqlServerException.cs | 24 + .../HadrModel/RestoreDatabaseTask.cs | 213 + .../HadrModel/RestoreDatabaseTaskException.cs | 22 + .../Management/HadrModel/RestoreLogTask.cs | 182 + .../HadrModel/RestoreLogTaskException.cs | 22 + .../Management/HadrModel/RunOncePolicy.cs | 74 + .../Management/HadrModel/ScenarioProvider.cs | 55 + .../SecondaryCannotReadLocationException.cs | 36 + .../ServiceOperationStatusException.cs | 31 + .../HadrModel/ShareValidationException.cs | 34 + .../HadrModel/SqlServerConnectionException.cs | 23 + .../StartAlwaysOnXeventSessionTask.cs | 93 + .../HadrModel/StringExtensionMethods.cs | 82 + .../SqlServer/Management/HadrModel/Task.cs | 247 + .../Management/HadrModel/TaskEventArgs.cs | 64 + .../Management/HadrModel/TaskEventStatus.cs | 39 + .../UpdateAvailabilityGroupListenerTask.cs | 120 + .../Management/HadrModel/Validator.cs | 119 + .../HadrModel/ValidatorEventArgs.cs | 65 + .../WaitForAvailabilityGroupOnlineTask.cs | 67 + .../Management/PolicyEnum/AssemblyInfo.cs | 5 + .../Management/PolicyEnum/FxCopExclusions.cs | 10 + .../Microsoft.SqlServer.PolicyEnum.csproj | 70 + .../Management/PolicyEnum/PolicyEnum.cs | 8 + .../Management/PolicyEnum/PolicyObject.cs | 26 + .../Management/PolicyEnum/xml/Condition.xml | 24 + .../xml/ConnectionEvaluationHistory.xml | 18 + .../PolicyEnum/xml/EvaluationDetail.xml | 19 + .../PolicyEnum/xml/EvaluationHistory.xml | 19 + .../Management/PolicyEnum/xml/ObjectSet.xml | 18 + .../Management/PolicyEnum/xml/Policy.xml | 52 + .../PolicyEnum/xml/PolicyCategory.xml | 12 + .../xml/PolicyCategorySubscription.xml | 14 + .../Management/PolicyEnum/xml/PolicyStore.xml | 23 + .../PolicyEnum/xml/TargetFilter.xml | 17 + .../Management/PolicyEnum/xml/TargetSet.xml | 23 + .../PolicyEnum/xml/TargetSetLevel.xml | 24 + .../Management/PolicyEnum/xml/inc_urn.xml | 14 + .../Management/PolicyEnum/xml/inc_urnByID.xml | 14 + .../RegisteredServers/AssemblyInfo.cs | 4 + .../AzureDataStudioConnection.cs | 45 + .../AzureDataStudioConnectionStore.cs | 74 + .../AzureStudioConnectionGroup.cs | 44 + ...Server.Management.RegisteredServers.csproj | 43 + .../RegisteredServers/RegSvrStrings.strings | 46 + .../RegisteredServers/RegisteredServer.cs | 1313 +++ .../RegisteredServerCollection.cs | 66 + .../RegisteredServerException.cs | 208 + .../RegisteredServersEnumerator.cs | 61 + .../RegisteredServersStore.cs | 1672 +++ .../RegisteredServers/ServerGroup.cs | 1449 +++ .../ServerGroupCollection.cs | 65 + .../xml/RegisteredServer.xml | 20 + .../xml/RegisteredServersStore.xml | 15 + .../RegisteredServers/xml/ServerGroup.xml | 19 + .../RegisteredServers/xml/inc_urn.xml | 14 + .../Management/Sdk/Sfc/AlienSupport.cs | 84 + .../Management/Sdk/Sfc/AssemblyInfo.cs | 11 + .../Management/Sdk/Sfc/CollectionInfo.cs | 37 + .../Management/Sdk/Sfc/CrudInterfaces.cs | 84 + .../Differencing/API/DifferencingService.cs | 161 + .../Sdk/Sfc/Differencing/API/IDifferencer.cs | 93 + .../Sdk/Sfc/Differencing/API/IDiffgram.cs | 82 + .../Sdk/Sfc/Differencing/Differencing.vsmdi | 6 + .../Sdk/Sfc/Differencing/Impl/Differencer.cs | 1472 +++ .../Sdk/Sfc/Differencing/Impl/Diffgram.cs | 169 + .../Differencing/LocalTestRun.testrunconfig | 5 + .../SPI/MetadataNodeItemNamesProvider.cs | 131 + .../Sfc/Differencing/SPI/ProviderRegistry.cs | 329 + .../Sdk/Sfc/Differencing/SPI/Providers.cs | 221 + .../Differencing/StringDifferencing.strings | 39 + .../Management/Sdk/Sfc/Enumerator/AstNode.cs | 42 + .../Management/Sdk/Sfc/Enumerator/Axis.cs | 119 + .../Sdk/Sfc/Enumerator/ConditionedSql.cs | 284 + .../Sdk/Sfc/Enumerator/DataProvider.cs | 769 ++ .../Sdk/Sfc/Enumerator/Depedencies.cs | 180 + .../Sdk/Sfc/Enumerator/EnumObject.CS | 356 + .../Sdk/Sfc/Enumerator/EnumeratorException.CS | 479 + .../Sdk/Sfc/Enumerator/Enviroment.CS | 236 + .../Management/Sdk/Sfc/Enumerator/Filter.cs | 31 + .../Sdk/Sfc/Enumerator/FilterNode.cs | 807 ++ .../Sdk/Sfc/Enumerator/FilterTranslate.cs | 128 + .../Management/Sdk/Sfc/Enumerator/Function.cs | 158 + .../Sdk/Sfc/Enumerator/FxCopExclusions.cs | 40 + .../Management/Sdk/Sfc/Enumerator/Group.cs | 32 + .../Sdk/Sfc/Enumerator/ObjectCache.cs | 534 + .../Sdk/Sfc/Enumerator/ObjectInfo.cs | 73 + .../Sfc/Enumerator/ObjectLoadInfoManager.cs | 370 + .../Sdk/Sfc/Enumerator/ObjectProperty.cs | 249 + .../Management/Sdk/Sfc/Enumerator/Operand.cs | 47 + .../Management/Sdk/Sfc/Enumerator/Operator.cs | 112 + .../Sdk/Sfc/Enumerator/PostProcess.cs | 251 + .../Sdk/Sfc/Enumerator/RequestDependencies.cs | 47 + .../Sdk/Sfc/Enumerator/RequestObjectInfo.cs | 98 + .../Sdk/Sfc/Enumerator/RequestParentSelect.cs | 40 + .../Management/Sdk/Sfc/Enumerator/Root.cs | 18 + .../Sfc/Enumerator/SqlConditionedStatement.cs | 138 + .../Sdk/Sfc/Enumerator/SqlLinkMultiple.cs | 160 + .../Sdk/Sfc/Enumerator/SqlObject.cs | 206 + .../Sdk/Sfc/Enumerator/SqlObjectBase.cs | 1063 ++ .../Sdk/Sfc/Enumerator/SqlObjectProperty.cs | 171 + .../Sdk/Sfc/Enumerator/SqlParentLink.cs | 86 + .../Sdk/Sfc/Enumerator/SqlPostProcess.cs | 118 + .../Sdk/Sfc/Enumerator/SqlPropertyLink.cs | 206 + .../Sdk/Sfc/Enumerator/SqlRequest.cs | 93 + .../Management/Sdk/Sfc/Enumerator/Util.cs | 322 + .../Sdk/Sfc/Enumerator/XPathException.cs | 244 + .../Sdk/Sfc/Enumerator/XPathExpresionBlock.cs | 302 + .../Sdk/Sfc/Enumerator/XPathHandler.cs | 932 ++ .../Sdk/Sfc/Enumerator/XPathNodeType.cs | 20 + .../Sdk/Sfc/Enumerator/XPathScanner.cs | 621 ++ .../Sdk/Sfc/Enumerator/XmlCharType.cs | 305 + .../Management/Sdk/Sfc/Enumerator/XmlRead.cs | 1669 +++ .../Management/Sdk/Sfc/Enumerator/XmlUtil.CS | 227 + .../Sdk/Sfc/Enumerator/enumerator.cs | 395 + .../Sdk/Sfc/Enumerator/enumresult.cs | 184 + .../Sdk/Sfc/Enumerator/executesql.cs | 503 + .../Sdk/Sfc/Enumerator/filterdecoder.cs | 319 + .../Sdk/Sfc/Enumerator/interfaces.cs | 87 + .../Management/Sdk/Sfc/Enumerator/request.cs | 444 + .../Sdk/Sfc/Enumerator/sqlenumresult.cs | 357 + .../Sdk/Sfc/Enumerator/statementbuilder.cs | 592 ++ .../Management/Sdk/Sfc/Enumerator/urn.cs | 554 + .../Sdk/Sfc/Enumerator/xml/Config.xml | 1043 ++ .../Sdk/Sfc/Enumerator/xpathexpresion.cs | 246 + .../SqlServer/Management/Sdk/Sfc/Exception.cs | 1207 +++ .../Management/Sdk/Sfc/FxCopExclusions.cs | 84 + .../Management/Sdk/Sfc/ISfcDomain.cs | 82 + .../Management/Sdk/Sfc/ISfcExecutionEngine.cs | 16 + .../Sdk/Sfc/ISfcNotifyPropertyChanged.cs | 24 + .../Management/Sdk/Sfc/ISfcProperty.cs | 57 + .../Sdk/Sfc/ISfcPropertyProvider.cs | 20 + .../Management/Sdk/Sfc/ISfcPropertySet.cs | 68 + .../Management/Sdk/Sfc/ISfcScriptCollector.cs | 26 + .../Management/Sdk/Sfc/ISfcSimpleNode.cs | 67 + .../Management/Sdk/Sfc/ISfcStorageProvider.cs | 54 + .../Sdk/Sfc/ISfcSupportsDesignMode.cs | 17 + .../Management/Sdk/Sfc/ISfcscript.cs | 18 + .../Sdk/Sfc/LocalizableTypeConverter.cs | 1813 ++++ ...rosoft.SqlServer.Management.Sdk.Sfc.csproj | 38 + .../Management/Sdk/Sfc/NetCoreExtension.cs | 66 + .../Sdk/Sfc/NonSfcObjectIterator.cs | 58 + .../Management/Sdk/Sfc/ReadOnlyDictionary.cs | 221 + .../Management/Sdk/Sfc/ReadOnlyList.cs | 160 + .../Management/Sdk/Sfc/ReadonlyInterfaces.cs | 218 + .../Sfc/SQLToolsOutputDebugStringListener.cs | 64 + .../Sfc/SQLToolsTraceListenerCollection.cs | 235 + .../Management/Sdk/Sfc/Serializer.cs | 1207 +++ .../Management/Sdk/Sfc/SfcApplication.cs | 317 + .../Management/Sdk/Sfc/SfcAttributes.cs | 1516 +++ .../SqlServer/Management/Sdk/Sfc/SfcCache.cs | 568 ++ .../Sdk/Sfc/SfcCollatedDictionaryBase.cs | 291 + .../Management/Sdk/Sfc/SfcCollection.cs | 563 ++ .../Management/Sdk/Sfc/SfcConnection.cs | 229 + .../Management/Sdk/Sfc/SfcDependency.cs | 1468 +++ .../Management/Sdk/Sfc/SfcDictionaryBase.cs | 166 + .../Management/Sdk/Sfc/SfcExecutionEngine.cs | 196 + .../Management/Sdk/Sfc/SfcInstance.cs | 1678 ++++ .../SqlServer/Management/Sdk/Sfc/SfcKey.cs | 1311 +++ .../Management/Sdk/Sfc/SfcListBase.cs | 180 + .../Management/Sdk/Sfc/SfcMetadata.cs | 1660 +++ .../Sdk/Sfc/SfcMetadataException.cs | 56 + .../Management/Sdk/Sfc/SfcObjectExtender.cs | 607 ++ .../Management/Sdk/Sfc/SfcObjectFactory.cs | 40 + .../Management/Sdk/Sfc/SfcObjectIterator.cs | 387 + .../Management/Sdk/Sfc/SfcObjectQuery.cs | 192 + .../SqlServer/Management/Sdk/Sfc/SfcPath.cs | 243 + .../Management/Sdk/Sfc/SfcProperty.cs | 658 ++ .../Management/Sdk/Sfc/SfcQueryExpression.cs | 103 + .../Sdk/Sfc/SfcReferenceCollection.cs | 162 + .../Management/Sdk/Sfc/SfcRegistration.cs | 508 + .../Sdk/Sfc/SfcSerializationAdapter.cs | 30 + .../Sdk/Sfc/SfcSerializerUpgrade.cs | 156 + .../Management/Sdk/Sfc/SfcSimpleNode.cs | 439 + .../Sdk/Sfc/SfcSimpleNodeAdapter.cs | 300 + .../Management/Sdk/Sfc/SfcStrings.strings | 168 + .../Sdk/Sfc/SfcTsqlProcFormatter.cs | 469 + .../Management/Sdk/Sfc/SfcValidation.cs | 340 + .../Management/Sdk/Sfc/SmoManagementUtil.cs | 99 + .../Management/Sdk/Sfc/SqlStoreConnection.cs | 168 + .../Management/Sdk/Sfc/TraceHelper.cs | 125 + .../Management/Sdk/Sfc/TypeMetadata.cs | 14 + .../SqlServer/Management/Sdk/Sfc/Util.cs | 493 + .../Management/Sdk/Sfc/XmlTextReader.cs | 638 ++ .../Management/Sdk/Sfc/connectionhelpers.cs | 193 + .../SqlServer/Management/Sdk/Sfc/dmf.cs | 83 + .../Management/Smo.Broker/AssemblyInfo.cs | 11 + .../Management/Smo.Broker/FxCopExclusions.cs | 12 + ...crosoft.SqlServer.ServiceBrokerEnum.csproj | 75 + .../Smo.Broker/ServiceBrokerEnum.cs | 41 + .../Smo.Broker/ServiceBrokerSqlObject.cs | 131 + .../Smo.Broker/xml/BrokerPriority.xml | 18 + .../Smo.Broker/xml/BrokerService.xml | 26 + .../Management/Smo.Broker/xml/MessageType.xml | 30 + .../Smo.Broker/xml/MessageTypeMapping.xml | 21 + .../Smo.Broker/xml/RemoteServiceBinding.xml | 24 + .../Smo.Broker/xml/ServiceBroker.xml | 25 + .../Smo.Broker/xml/ServiceContract.xml | 22 + .../Smo.Broker/xml/ServiceContractMapping.xml | 16 + .../Smo.Broker/xml/ServiceQueues.xml | 50 + .../Smo.Broker/xml/ServiceRoute.xml | 25 + .../Smo.Broker/xml/inc_ext_prop.xml | 13 + .../xml/inc_policy_health_state.xml | 31 + .../Management/Smo.Broker/xml/inc_urn.xml | 14 + .../Smo.Broker/xml/inc_urn_schema.xml | 15 + .../Management/Smo.Extended/AssemblyInfo.cs | 6 + .../Management/Smo.Extended/Backup.cs | 828 ++ .../Smo.Extended/BackupEncryptionOptions.cs | 220 + .../Smo.Extended/BackupRestoreBase.cs | 1467 +++ .../Smo.Extended/DataTransferBase.cs | 334 + .../Smo.Extended/DatabaseRestorePlanner.cs | 1115 ++ .../DatabaseRestorePlannerSR.strings | 23 + .../Smo.Extended/DependencyObject.cs | 232 + .../Microsoft.SqlServer.SmoExtended.csproj | 28 + .../Management/Smo.Extended/NetCoreHelpers.cs | 55 + .../Smo.Extended/PageRestorePlanner.cs | 354 + .../Management/Smo.Extended/Prefetch.cs | 615 ++ .../Management/Smo.Extended/Restore.cs | 1345 +++ .../Management/Smo.Extended/RestoreOptions.cs | 225 + .../Management/Smo.Extended/RestorePlan.cs | 804 ++ .../Management/Smo.Extended/Transfer.cs | 896 ++ .../Management/Smo.Extended/TransferBase.cs | 1615 +++ .../Management/Smo.Extended/TransferWriter.cs | 338 + .../Management/Smo.Notebook/CellModel.cs | 39 + .../Management/Smo.Notebook/CodeCellModel.cs | 30 + .../Smo.Notebook/MarkdownCellModel.cs | 19 + .../Microsoft.SqlServer.Smo.Notebook.csproj | 15 + .../Smo.Notebook/NotebookFileWriter.cs | 117 + .../Management/Smo.Notebook/NotebookModel.cs | 47 + .../Management/Smo.Notebook/SmoNotebook.cs | 117 + .../Management/Smo.RegSvrEnum/Crypto.cs | 216 + .../Management/Smo.RegSvrEnum/Delegates.cs | 54 + .../Smo.RegSvrEnum/EnumRegisteredServer.cs | 590 ++ .../Smo.RegSvrEnum/FxCopExclusions.cs | 12 + .../Smo.RegSvrEnum/GroupRegistrationInfo.cs | 30 + .../Microsoft.SqlServer.RegSvrEnum.csproj | 17 + .../Smo.RegSvrEnum/ParentRegistrationInfo.cs | 85 + .../Smo.RegSvrEnum/RegServersException.cs | 49 + .../Smo.RegSvrEnum/RegistrationInfo.cs | 365 + .../RegistrationInfoCollection.cs | 215 + .../Smo.RegSvrEnum/RegistrationProvider.cs | 703 ++ .../Management/Smo.RegSvrEnum/SRError.strings | 68 + .../ServerInstanceRegistrationInfo.cs | 70 + .../ServerTypeRegistrationInfo.cs | 34 + .../Management/Smo.RegSvrEnum/Tracing.cs | 20 + .../Smo.RegSvrEnum/UIConnectionGroupInfo.cs | 116 + .../Smo.RegSvrEnum/UIConnectionInfo.cs | 855 ++ .../Management/Smo.RegSvrEnum/Utils.cs | 40 + .../Management/Smo.Wmi/AssemblyInfo.cs | 5 + .../Management/Smo.Wmi/ClientProtocol.cs | 106 + .../Management/Smo.Wmi/ClientProtocolBase.cs | 149 + .../Collections/ClientProtocolCollection.cs | 257 + .../Collections/ServerIPAddressCollection.cs | 257 + .../Collections/ServerInstanceCollection.cs | 257 + .../Collections/ServerProtocolCollection.cs | 257 + .../Collections/ServiceAliasCollection.cs | 257 + .../Smo.Wmi/Collections/ServiceCollection.cs | 257 + .../Management/Smo.Wmi/ManagedComputer.cs | 507 + ...icrosoft.SqlServer.SqlWmiManagement.csproj | 71 + .../Management/Smo.Wmi/ProtocolBase.cs | 134 + .../Smo.Wmi/ProtocolPropertyCollection.cs | 325 + .../Management/Smo.Wmi/ServerAlias.cs | 102 + .../Management/Smo.Wmi/ServerAliasBase.cs | 141 + .../Management/Smo.Wmi/ServerIPAddress.cs | 53 + .../Management/Smo.Wmi/ServerIPAddressBase.cs | 116 + .../Management/Smo.Wmi/ServerInstance.cs | 53 + .../Management/Smo.Wmi/ServerInstanceBase.cs | 34 + .../Management/Smo.Wmi/ServerProtocol.cs | 91 + .../Management/Smo.Wmi/ServerProtocolBase.cs | 112 + .../SqlServer/Management/Smo.Wmi/Service.cs | 229 + .../Management/Smo.Wmi/ServiceBase.cs | 480 + .../Management/Smo.Wmi/WmiCollectionBase.cs | 78 + .../Smo.Wmi/WmiCollectionTemplate.cs | 234 + .../Management/Smo.Wmi/WmiMgmt.strings | 706 ++ .../Management/Smo.Wmi/WmiSmoObject.cs | 809 ++ .../Management/Smo.Wmi/coll_macros.h | 21 + .../Management/Smo.WmiEnum/AssemblyInfo.cs | 5 + .../Management/Smo.WmiEnum/CNetLibInfo.cs | 30 + .../Management/Smo.WmiEnum/ClientProtocol.cs | 46 + .../Smo.WmiEnum/ClientProtocolProperties.cs | 28 + .../Management/Smo.WmiEnum/FxCopExclusions.cs | 6 + .../Management/Smo.WmiEnum/ManagedComputer.cs | 68 + .../Microsoft.SqlServer.WmiEnum.csproj | 20 + .../Smo.WmiEnum/ProtocolPropertiesBase.cs | 83 + .../Management/Smo.WmiEnum/SAlias.cs | 27 + .../Management/Smo.WmiEnum/ServerInstance.cs | 31 + .../Management/Smo.WmiEnum/ServerProtocol.cs | 67 + .../Smo.WmiEnum/ServerProtocolIPAddress.cs | 60 + .../ServerProtocolIPAddressProperty.cs | 26 + .../Smo.WmiEnum/ServerProtocolProperties.cs | 23 + .../Management/Smo.WmiEnum/Service.cs | 99 + .../Smo.WmiEnum/ServiceAdvancedProperty.cs | 64 + .../Smo.WmiEnum/StringWmiEnumerator.strings | 23 + .../Management/Smo.WmiEnum/WmiBase.cs | 223 + .../Management/Smo.WmiEnum/WmiEnum.cs | 57 + .../Management/Smo.WmiEnum/WmiProperty.cs | 50 + .../Management/Smo.WmiEnum/wmienumresult.cs | 30 + .../Management/Smo.WmiEnum/wmirequest.cs | 18 + .../Management/Smo/AbstractCollectionBase.cs | 80 + .../SqlServer/Management/Smo/AffinityInfo.cs | 311 + .../Management/Smo/AffinityInfoBase.cs | 176 + .../Management/Smo/AffinityInfoCollection.cs | 1091 ++ .../SqlServer/Management/Smo/AlertBase.cs | 455 + .../Management/Smo/AlertCategoryBase.cs | 33 + .../Management/Smo/AlertSystemBase.cs | 115 + .../SqlServer/Management/Smo/Application.cs | 823 ++ .../Management/Smo/ApplicationRoleBase.cs | 388 + .../SqlServer/Management/Smo/AssemblyInfo.cs | 11 + .../Management/Smo/AsymmetricKeyBase.cs | 537 + .../SqlServer/Management/Smo/AuditBase.cs | 668 ++ .../SqlServer/Management/Smo/AuditExtender.cs | 52 + .../Management/Smo/AuditSpecification.cs | 688 ++ .../Smo/AvailabilityDatabaseBase.cs | 327 + .../Management/Smo/AvailabilityGroupBase.cs | 1102 ++ .../Smo/AvailabilityGroupListenerBase.cs | 507 + .../AvailabilityGroupListenerIPAddressBase.cs | 348 + ...ityGroupListenerIPAddressCollectionBase.cs | 173 + .../Management/Smo/AvailabilityReplicaBase.cs | 1044 ++ .../Management/Smo/BackupDeviceBase.cs | 192 + .../SqlServer/Management/Smo/BackupMedia.cs | 712 ++ .../SqlServer/Management/Smo/BackupSet.cs | 1439 +++ .../Management/Smo/BackupSetCollection.cs | 191 + .../Smo/BrokerLocalizableResources.strings | 191 + .../Management/Smo/BrokerPriorityBase.cs | 163 + .../Management/Smo/BrokerServiceBase.cs | 276 + .../SqlServer/Management/Smo/CPUBase.cs | 84 + .../SqlServer/Management/Smo/CategoryBase.cs | 168 + .../Management/Smo/CertificateBase.cs | 677 ++ .../SqlServer/Management/Smo/CheckBase.cs | 374 + .../SqlServer/Management/Smo/CollationInfo.cs | 5682 +++++++++++ .../Management/Smo/CollectionBase.cs | 178 + .../Collections/AlertCategoryCollection.cs | 249 + .../Smo/Collections/AlertCollection.cs | 250 + .../Collections/ApplicationRoleCollection.cs | 249 + .../Collections/AsymmetricKeyCollection.cs | 249 + .../Smo/Collections/AuditCollection.cs | 249 + .../AvailabilityDatabaseCollection.cs | 249 + .../AvailabilityGroupCollection.cs | 249 + .../AvailabilityGroupListenerCollection.cs | 249 + ...abilityGroupListenerIPAddressCollection.cs | 120 + .../AvailabilityReplicaCollection.cs | 249 + .../Smo/Collections/BackupDeviceCollection.cs | 249 + .../Collections/BrokerPriorityCollection.cs | 249 + .../Collections/BrokerServiceCollection.cs | 249 + .../Smo/Collections/CertificateCollection.cs | 249 + .../Smo/Collections/CheckCollection.cs | 249 + .../Smo/Collections/ColumnCollection.cs | 148 + .../ColumnEncryptionKeyCollection.cs | 249 + .../ColumnEncryptionKeyValueCollection.cs | 87 + .../Collections/ColumnMasterKeyCollection.cs | 249 + .../ConfigurationValueCollection.cs | 249 + .../Smo/Collections/CredentialCollection.cs | 249 + .../CryptographicProviderCollection.cs | 249 + .../Smo/Collections/DataFileCollection.cs | 249 + .../DatabaseAuditSpecificationCollection.cs | 249 + .../Smo/Collections/DatabaseCollection.cs | 247 + .../DatabaseDdlTriggerCollection.cs | 249 + .../DatabaseReplicaStateCollection.cs | 136 + .../Smo/Collections/DatabaseRoleCollection.cs | 249 + .../DatabaseScopedConfigurationCollection.cs | 138 + .../DatabaseScopedCredentialCollection.cs | 249 + .../Smo/Collections/DefaultCollection.cs | 170 + .../Smo/Collections/EdgeCollection.cs | 253 + .../EdgeConstraintClauseCollection.cs | 249 + .../Collections/EdgeConstraintCollection.cs | 249 + .../Smo/Collections/EndpointCollection.cs | 249 + .../Collections/ExtendedPropertyCollection.cs | 249 + .../ExtendedStoredProcedureCollection.cs | 170 + .../ExternalDataSourceCollection.cs | 249 + .../ExternalFileFormatCollection.cs | 249 + .../Collections/ExternalLanguageCollection.cs | 249 + .../ExternalLanguageFileCollection.cs | 249 + .../Collections/ExternalLibraryCollection.cs | 249 + .../ExternalResourcePoolCollection.cs | 249 + .../Collections/ExternalStreamCollection.cs | 249 + .../ExternalStreamingJobCollection.cs | 249 + .../Smo/Collections/FileGroupCollection.cs | 249 + .../Smo/Collections/ForeignKeyCollection.cs | 249 + .../Collections/ForeignKeyColumnCollection.cs | 148 + .../Collections/FullTextCatalogCollection.cs | 249 + .../FullTextIndexColumnCollection.cs | 249 + .../Collections/FullTextStopListCollection.cs | 249 + .../Smo/Collections/IndexCollection.cs | 249 + .../Collections/IndexedColumnCollection.cs | 148 + .../Collections/IndexedXmlPathCollection.cs | 148 + .../IndexedXmlPathNamespaceCollection.cs | 249 + .../Smo/Collections/JobCategoryCollection.cs | 249 + .../Smo/Collections/JobScheduleCollection.cs | 130 + .../Smo/Collections/JobStepCollection.cs | 148 + .../Smo/Collections/LanguageCollection.cs | 249 + .../Smo/Collections/LinkedServerCollection.cs | 249 + .../LinkedServerLoginCollection.cs | 249 + .../Smo/Collections/LogFileCollection.cs | 249 + .../Smo/Collections/LoginCollection.cs | 249 + .../Smo/Collections/MailAccountCollection.cs | 249 + .../Smo/Collections/MailProfileCollection.cs | 249 + .../Smo/Collections/MailServerCollection.cs | 249 + .../Smo/Collections/MessageTypeCollection.cs | 249 + .../MessageTypeMappingCollection.cs | 249 + .../NumberedStoredProcedureCollection.cs | 111 + ...beredStoredProcedureParameterCollection.cs | 148 + .../OleDbProviderSettingsCollection.cs | 249 + .../Collections/OperatorCategoryCollection.cs | 249 + .../Smo/Collections/OperatorCollection.cs | 250 + .../Smo/Collections/OrderColumnCollection.cs | 148 + .../PartitionFunctionCollection.cs | 249 + .../PartitionFunctionParameterCollection.cs | 148 + .../Collections/PartitionSchemeCollection.cs | 249 + .../PartitionSchemeParameterCollection.cs | 148 + .../PhysicalPartitionCollection.cs | 110 + .../Smo/Collections/PlanGuideCollection.cs | 249 + .../Smo/Collections/ProxyAccountCollection.cs | 249 + .../RemoteServiceBindingCollection.cs | 249 + .../Smo/Collections/ResourcePoolCollection.cs | 249 + .../Collections/ResumableIndexCollection.cs | 249 + .../Smo/Collections/RuleCollection.cs | 170 + .../Smo/Collections/SchemaCollection.cs | 249 + .../Collections/SearchPropertyCollection.cs | 249 + .../SearchPropertyListCollection.cs | 249 + .../Collections/SecurityPolicyCollection.cs | 170 + .../SecurityPredicateCollection.cs | 86 + .../Smo/Collections/SequenceCollection.cs | 170 + .../ServerAuditSpecificationCollection.cs | 249 + .../Collections/ServerDdlTriggerCollection.cs | 249 + .../Smo/Collections/ServerRoleCollection.cs | 249 + .../Collections/ServiceContractCollection.cs | 249 + .../ServiceContractMappingCollection.cs | 249 + .../Smo/Collections/ServiceQueueCollection.cs | 170 + .../Smo/Collections/ServiceRouteCollection.cs | 249 + .../SoapPayloadMethodCollection.cs | 114 + .../Smo/Collections/SqlAssemblyCollection.cs | 249 + .../Collections/SqlAssemblyFileCollection.cs | 249 + .../Smo/Collections/StatisticCollection.cs | 249 + .../Collections/StatisticColumnCollection.cs | 148 + .../Collections/StoredProcedureCollection.cs | 170 + .../StoredProcedureParameterCollection.cs | 148 + .../Smo/Collections/SymmetricKeyCollection.cs | 249 + .../Smo/Collections/SynonymCollection.cs | 170 + .../Collections/SystemDataTypeCollection.cs | 249 + .../Collections/SystemMessageCollection.cs | 123 + .../Smo/Collections/TableCollection.cs | 170 + .../Smo/Collections/TargetServerCollection.cs | 249 + .../TargetServerGroupCollection.cs | 249 + .../Smo/Collections/TriggerCollection.cs | 249 + .../Smo/Collections/UserCollection.cs | 249 + .../UserDefinedAggregateCollection.cs | 170 + ...UserDefinedAggregateParameterCollection.cs | 148 + .../UserDefinedDataTypeCollection.cs | 170 + .../UserDefinedFunctionCollection.cs | 170 + .../UserDefinedFunctionParameterCollection.cs | 148 + .../UserDefinedMessageCollection.cs | 123 + .../UserDefinedTableTypeCollection.cs | 170 + .../Collections/UserDefinedTypeCollection.cs | 170 + .../Smo/Collections/ViewCollection.cs | 170 + .../Collections/WorkloadGroupCollection.cs | 249 + ...dManagementWorkloadClassifierCollection.cs | 249 + ...rkloadManagementWorkloadGroupCollection.cs | 249 + .../XmlSchemaCollectionCollection.cs | 170 + .../SqlServer/Management/Smo/ColumnBase.cs | 2261 +++++ .../Management/Smo/ColumnEncryptionKeyBase.cs | 448 + .../Smo/ColumnEncryptionKeyValueBase.cs | 266 + .../ColumnEncryptionKeyValueCollectionBase.cs | 110 + .../Management/Smo/ColumnMasterKeyBase.cs | 363 + .../Management/Smo/ConfigProperty.cs | 294 + .../SqlServer/Management/Smo/Configuration.cs | 821 ++ .../Management/Smo/ConfigurationBase.cs | 261 + .../Management/Smo/ConfigurationValueBase.cs | 88 + .../Management/Smo/ContractExtender.cs | 40 + .../Management/Smo/CredentialBase.cs | 363 + .../Smo/CryptographicProviderBase.cs | 391 + .../Smo/DataClassificationScriptGenerator.cs | 177 + .../Management/Smo/DataEnumerator.cs | 1060 ++ .../Management/Smo/DataScriptCollection.cs | 86 + .../SqlServer/Management/Smo/DataType.cs | 1692 ++++ .../Smo/DatabaseAuditSpecificationExtender.cs | 167 + .../Smo/DatabaseAuditSpecificationbase.cs | 51 + .../SqlServer/Management/Smo/DatabaseBase.cs | 7044 +++++++++++++ .../Management/Smo/DatabaseDdlTriggerBase.cs | 296 + .../Smo/DatabaseEncryptionKeyBase.cs | 358 + .../Smo/DatabaseEncryptionKeyExtender.cs | 191 + .../Smo/DatabaseFileMappingsDictionary.cs | 65 + .../Smo/DatabaseMirroringPayloadBase.cs | 54 + .../Management/Smo/DatabaseOptionsBase.cs | 561 ++ .../Management/Smo/DatabasePrefetch.cs | 1026 ++ .../Smo/DatabaseReplicaStateBase.cs | 59 + .../Smo/DatabaseReplicaStateCollectionBase.cs | 156 + .../Management/Smo/DatabaseRoleBase.cs | 601 ++ .../Smo/DatabaseScopedConfigurationBase.cs | 54 + .../Smo/DatabaseScopedCredentialBase.cs | 309 + .../Management/Smo/DdlTriggerBase.cs | 478 + .../SqlServer/Management/Smo/DefaultBase.cs | 53 + .../Management/Smo/DefaultConstraintBase.cs | 404 + .../Management/Smo/DefaultRuleBase.cs | 573 ++ .../Management/Smo/DependencyList.cs | 215 + .../Management/Smo/DependencyTree.cs | 418 + .../Management/Smo/DependencyWalker.cs | 403 + .../Management/Smo/DistributionColumnBase.cs | 26 + .../Management/Smo/EdgeConstraintBase.cs | 405 + .../Smo/EdgeConstraintClauseBase.cs | 68 + .../SqlServer/Management/Smo/EndpointBase.cs | 943 ++ .../Management/Smo/EnumerableContainer.cs | 124 + .../Management/Smo/EnumeratorContainer.cs | 191 + .../Management/Smo/ExceptionTemplates.cs | 31 + .../Smo/ExceptionTemplatesImpl.strings | 1324 +++ .../Management/Smo/ExecutionManager.cs | 1046 ++ .../Management/Smo/ExtendedPropertyBase.cs | 640 ++ .../Smo/ExtendedStoredProcedureBase.cs | 182 + .../Management/Smo/ExtensionClass.cs | 41 + .../Management/Smo/ExternalDataSourceBase.cs | 660 ++ .../Management/Smo/ExternalFileFormatBase.cs | 599 ++ .../Management/Smo/ExternalLanguageBase.cs | 592 ++ .../Smo/ExternalLanguageFileBase.cs | 110 + .../Management/Smo/ExternalLibraryBase.cs | 414 + .../Management/Smo/ExternalLibraryFileBase.cs | 134 + .../Smo/ExternalResourcePoolAffinityInfo.cs | 247 + .../Smo/ExternalResourcePoolBase.cs | 329 + .../Management/Smo/ExternalStreamBase.cs | 144 + .../Smo/ExternalStreamingJobBase.cs | 162 + .../SqlServer/Management/Smo/FacetSR.strings | 195 + .../Smo/Facets/AvailabilityGroupState.cs | 307 + .../Management/Smo/Facets/DatabaseAdapter.cs | 263 + .../Smo/Facets/DatabaseMaintenance.cs | 166 + .../Smo/Facets/DatabasePerformance.cs | 151 + .../Management/Smo/Facets/DatabaseSecurity.cs | 108 + .../Management/Smo/Facets/MultiPartName.cs | 144 + .../SqlServer/Management/Smo/Facets/Name.cs | 163 + .../Management/Smo/Facets/ServerAdapter.cs | 1295 +++ .../Management/Smo/Facets/ServerAudit.cs | 57 + .../Smo/Facets/ServerConfiguration.cs | 517 + .../Smo/Facets/ServerPerformance.cs | 128 + .../Management/Smo/Facets/ServerSecurity.cs | 202 + .../Management/Smo/Facets/ServerSelection.cs | 164 + .../Management/Smo/Facets/ServerSetup.cs | 358 + .../Smo/Facets/ServerSurfaceArea.cs | 331 + .../Management/Smo/Facets/SmartAdminState.cs | 315 + .../Management/Smo/FilePerObjectWriter.cs | 374 + .../Management/Smo/ForeignKeyBase.cs | 535 + .../Management/Smo/ForeignKeyColumnBase.cs | 75 + .../Management/Smo/FullTextCatalogBase.cs | 582 ++ .../Management/Smo/FullTextIndexBase.cs | 1122 +++ .../Management/Smo/FullTextIndexColumnBase.cs | 340 + .../Management/Smo/FullTextServiceBase.cs | 337 + .../Management/Smo/FullTextStopListBase.cs | 420 + .../Management/Smo/FxCopExclusions.cs | 844 ++ .../Management/Smo/HttpProtocolBase.cs | 189 + .../Management/Smo/IDatabaseOptions.cs | 239 + .../SqlServer/Management/Smo/ILoginOptions.cs | 85 + .../Management/Smo/IServerInformation.cs | 170 + .../Management/Smo/IServerSettings.cs | 56 + .../SqlServer/Management/Smo/ITableOptions.cs | 98 + .../SqlServer/Management/Smo/IUserOptions.cs | 75 + .../SqlServer/Management/Smo/IViewOptions.cs | 73 + .../SqlServer/Management/Smo/IndexBase.cs | 2680 +++++ .../SqlServer/Management/Smo/IndexScripter.cs | 3317 ++++++ .../Management/Smo/IndexedColumnBase.cs | 76 + .../Management/Smo/IndexedXmlPathBase.cs | 87 + .../Smo/IndexedXmlPathNamespaceBase.cs | 49 + .../Management/Smo/InformationBase.cs | 95 + .../SqlServer/Management/Smo/JobBase.cs | 2013 ++++ .../Management/Smo/JobCategoryBase.cs | 50 + .../Management/Smo/JobScheduleBase.cs | 479 + .../Smo/JobScheduleCollectionBase.cs | 186 + .../SqlServer/Management/Smo/JobServerBase.cs | 1791 ++++ .../SqlServer/Management/Smo/JobStepBase.cs | 363 + .../Management/Smo/KeyEncryptionBase.cs | 202 + .../SqlServer/Management/Smo/LanguageBase.cs | 265 + .../Management/Smo/LinkedServerBase.cs | 616 ++ .../Management/Smo/LinkedServerLoginBase.cs | 189 + .../Smo/LocalizableResources.strings | 4496 +++++++++ .../SqlServer/Management/Smo/LoginBase.cs | 1895 ++++ .../Management/Smo/MailAccountBase.cs | 230 + .../Management/Smo/MailProfileBase.cs | 402 + .../Management/Smo/MailServerBase.cs | 291 + .../SqlServer/Management/Smo/MasterKeyBase.cs | 557 + .../Management/Smo/MessageCollectionBase.cs | 188 + .../Management/Smo/MessageObjectBase.cs | 30 + .../Management/Smo/MessageTypeBase.cs | 196 + .../Management/Smo/MessageTypeMappingBase.cs | 78 + .../Smo/Microsoft.SqlServer.Smo.csproj | 672 ++ .../Management/Smo/ModuleSuppressions.cs | 10 + .../Management/Smo/NetCoreHelpers.cs | 144 + .../SqlServer/Management/Smo/NumaNodeBase.cs | 137 + .../Management/Smo/NumberedCollectionBase.cs | 205 + .../Smo/OleDbProviderSettingsBase.cs | 167 + .../SqlServer/Management/Smo/OperatorBase.cs | 419 + .../Management/Smo/OperatorCategoryBase.cs | 34 + .../Management/Smo/OrderColumnBase.cs | 33 + .../SqlServer/Management/Smo/ParamBase.cs | 463 + .../Management/Smo/ParameterCollectionBase.cs | 84 + .../Management/Smo/PartitionFunctionBase.cs | 382 + .../Smo/PartitionFunctionParameterBase.cs | 119 + .../Management/Smo/PartitionSchemeBase.cs | 318 + .../Smo/PartitionSchemeParameterBase.cs | 43 + .../Management/Smo/PhysicalPartitionBase.cs | 223 + .../Smo/PhysicalPartitionCollectionBase.cs | 669 ++ .../SqlServer/Management/Smo/PlanGuideBase.cs | 395 + .../Management/Smo/PlanGuideExtender.cs | 63 + .../Management/Smo/ProxyAccountBase.cs | 492 + .../Management/Smo/QueryStoreOptions.cs | 537 + .../Smo/RemoteDataArchiveMigrationState.cs | 45 + .../RemoteDataArchiveMigrationStatusReport.cs | 154 + .../Smo/RemoteDatabaseMigrationStatistics.cs | 38 + .../Smo/RemoteServiceBindingBase.cs | 181 + .../Smo/RemoteTableMigrationStatistics.cs | 49 + .../Management/Smo/ResourceGovernorBase.cs | 340 + .../Smo/ResourcePoolAffinityInfo.cs | 275 + .../Management/Smo/ResourcePoolBase.cs | 395 + .../Management/Smo/ResumableIndexBase.cs | 225 + .../SqlServer/Management/Smo/RuleBase.cs | 54 + .../SqlServer/Management/Smo/SchedulerBase.cs | 67 + .../SqlServer/Management/Smo/SchemaBase.cs | 237 + .../Management/Smo/SchemaCollectionBase.cs | 223 + .../Management/Smo/ScriptContainer.cs | 340 + .../Management/Smo/ScriptContainerFactory.cs | 68 + .../SqlServer/Management/Smo/ScriptMaker.cs | 2099 ++++ .../Management/Smo/ScriptNameObjectBase.cs | 1671 +++ .../Management/Smo/ScriptSchemaObjectBase.cs | 290 + .../IScriptStringBuilderParameter.cs | 23 + .../ParameterValueFormat.cs | 26 + .../ScriptStringBuilder.cs | 125 + .../ScriptStringBuilderObjectParameter.cs | 52 + .../ScriptStringBuilderParameter.cs | 70 + .../SqlServer/Management/Smo/Scripter.cs | 805 ++ .../Management/Smo/ScriptingInterfaces.cs | 110 + .../Management/Smo/ScriptingOptions.cs | 2594 +++++ .../Management/Smo/ScriptingPreferences.cs | 956 ++ .../Management/Smo/SearchPropertyBase.cs | 178 + .../Management/Smo/SearchPropertyListBase.cs | 303 + .../Smo/SearchPropertyListConstants.cs | 21 + .../Smo/SearchPropertyListExtender.cs | 405 + .../Smo/SearchPropertyListValidator.cs | 656 ++ .../Management/Smo/SecurityPolicyBase.cs | 455 + .../Management/Smo/SecurityPredicateBase.cs | 332 + .../Smo/SecurityPredicateCollectionBase.cs | 146 + .../SqlServer/Management/Smo/SecurityUtils.cs | 94 + .../SqlServer/Management/Smo/SequenceBase.cs | 549 + .../Management/Smo/SequenceExtender.cs | 548 + .../Management/Smo/SerializationAdapters.cs | 175 + .../Smo/ServerAuditSpecificationExtender.cs | 134 + .../Smo/ServerAuditSpecificationbase.cs | 29 + .../Management/Smo/ServerDdlTriggerBase.cs | 206 + .../Management/Smo/ServerEventsWorker.cs | 1357 +++ .../Management/Smo/ServerProxyAccountBase.cs | 228 + .../Management/Smo/ServerRoleBase.cs | 605 ++ .../Management/Smo/ServerRoleExtender.cs | 381 + .../Management/Smo/ServiceBrokerBase.cs | 253 + .../Management/Smo/ServiceBrokerExtender.cs | 252 + .../Smo/ServiceBrokerPayloadBase.cs | 85 + .../Management/Smo/ServiceContractBase.cs | 215 + .../Smo/ServiceContractMappingBase.cs | 56 + .../Management/Smo/ServiceMasterKeyBase.cs | 220 + .../Management/Smo/ServiceQueueBase.cs | 510 + .../Management/Smo/ServiceRouteBase.cs | 246 + .../SqlServer/Management/Smo/ServiceType.cs | 70 + .../SqlServer/Management/Smo/SettingsBase.cs | 251 + .../SqlServer/Management/Smo/SfcResolver.cs | 197 + .../Management/Smo/SingleFileWriter.cs | 200 + .../Management/Smo/SingleFileWriterBase.cs | 212 + .../Management/Smo/SmartAdminBase.cs | 543 + .../SqlServer/Management/Smo/SmoArrayList.cs | 254 + .../Management/Smo/SmoCollectionBase.cs | 746 ++ .../SqlServer/Management/Smo/SmoComparer.cs | 172 + .../Management/Smo/SmoDependencyDiscoverer.cs | 366 + .../Management/Smo/SmoDependencyOrderer.cs | 1672 +++ .../Management/Smo/SmoDiffAdapters.cs | 653 ++ .../SqlServer/Management/Smo/SmoObjectBase.cs | 127 + .../SqlServer/Management/Smo/SmoSet.cs | 85 + .../SqlServer/Management/Smo/SmoSortedList.cs | 172 + .../Management/Smo/SmoStringWriter.cs | 126 + .../SqlServer/Management/Smo/SmoUrnFilter.cs | 517 + .../SqlServer/Management/Smo/SmoUtility.cs | 639 ++ .../Smo/SoapMethodCollectionBase.cs | 190 + .../Management/Smo/SoapMethodObject.cs | 73 + .../Management/Smo/SoapPayloadBase.cs | 245 + .../Management/Smo/SoapPayloadMethodBase.cs | 247 + .../Management/Smo/SqlAssemblyBase.cs | 633 ++ .../Management/Smo/SqlAssemblyFileBase.cs | 80 + .../SqlServer/Management/Smo/SqlMailBase.cs | 140 + .../SqlServer/Management/Smo/SqlSmoObject.cs | 8934 +++++++++++++++++ .../SqlServer/Management/Smo/StatisticBase.cs | 741 ++ .../Management/Smo/StatisticColumnBase.cs | 63 + .../Management/Smo/SymmetricKeyBase.cs | 933 ++ .../SqlServer/Management/Smo/SynonymBase.cs | 241 + .../Management/Smo/SystemDataTypeBase.cs | 39 + .../Management/Smo/SystemMessageBase.cs | 85 + .../SqlServer/Management/Smo/TableViewBase.cs | 365 + .../Management/Smo/TableViewTableTypeBase.cs | 167 + .../Management/Smo/TargetServerBase.cs | 30 + .../Management/Smo/TargetServerGroupBase.cs | 221 + .../Management/Smo/TcpProtocolBase.cs | 99 + .../SqlServer/Management/Smo/TestModel.cs | 45 + .../SqlServer/Management/Smo/TraceHelper.cs | 319 + .../SqlServer/Management/Smo/TriggerBase.cs | 789 ++ .../SqlServer/Management/Smo/UserBase.cs | 1382 +++ .../Smo/UserDefinedAggregateBase.cs | 370 + .../Smo/UserDefinedAggregateParameterBase.cs | 116 + .../Management/Smo/UserDefinedFunctionBase.cs | 976 ++ .../Management/Smo/UserDefinedMessageBase.cs | 395 + .../Smo/UserDefinedTableTypebase.cs | 390 + .../Management/Smo/UserDefinedTypeBase.cs | 229 + .../Management/Smo/UserOptionBase.cs | 181 + .../Management/Smo/UserPermission.cs | 277 + .../Management/Smo/UserPermissionBase.cs | 86 + .../Smo/UserPermissionCollection.cs | 72 + .../SqlServer/Management/Smo/VersionUtils.cs | 324 + .../SqlServer/Management/Smo/ViewBase.cs | 653 ++ .../Management/Smo/WorkloadGroupBase.cs | 479 + ...orkloadManagementWorkloadClassifierBase.cs | 245 + .../WorkloadManagementWorkloadGroupBase.cs | 313 + .../Management/Smo/XmlSchemaCollectionBase.cs | 300 + ...p_listener_ipaddress_generic_collection.cs | 105 + .../SqlServer/Management/Smo/coll_macros.h | 21 + ...mnencryptionkeyvalue_generic_collection.cs | 90 + ...tabase_replica_state_generic_collection.cs | 121 + .../Smo/databasesnapshotextender.cs | 148 + src/Microsoft/SqlServer/Management/Smo/dmf.cs | 107 + .../SqlServer/Management/Smo/enumerations.cs | 595 ++ .../SqlServer/Management/Smo/exception.cs | 2258 +++++ .../SqlServer/Management/Smo/files.cs | 1144 +++ .../Management/Smo/generic_collection.cs | 236 + .../Smo/message_generic_collection.cs | 108 + .../Smo/numbered_generic_collection.cs | 97 + .../Smo/numberedstoredprocedurebase.cs | 393 + .../Smo/ordinal_generic_collection.cs | 64 + .../Smo/param_generic_collection.cs | 133 + .../Management/Smo/permissionInterfaces.cs | 430 + .../Management/Smo/permissionOptions.cs | 1911 ++++ .../Management/Smo/permissionWorker.cs | 1103 ++ ...icalpartitionsegment_generic_collection.cs | 89 + .../SqlServer/Management/Smo/properties.cs | 239 + .../Management/Smo/propertiesCollection.cs | 815 ++ .../Management/Smo/propertiesMetadata.cs | 862 ++ .../Smo/schedule_generic_collection.cs | 115 + .../Smo/schema_generic_collection.cs | 156 + .../Management/Smo/script_patterns.cs | 525 + .../securitypredicate_generic_collection.cs | 89 + .../SqlServer/Management/Smo/serverbase.cs | 4647 +++++++++ .../Management/Smo/smoobjectextender.cs | 81 + .../Smo/soapmethod_generic_collection.cs | 100 + .../SqlServer/Management/Smo/sqlexec.cs | 344 + .../Management/Smo/storedprocedurebase.cs | 897 ++ .../SqlServer/Management/Smo/tablebase.cs | 5275 ++++++++++ .../SqlServer/Management/Smo/uddtbase.cs | 933 ++ .../SmoMetadataProvider/ApplicationRole.cs | 47 + .../SmoMetadataProvider/AsymmetricKey.cs | 34 + .../SmoMetadataProvider/Certificate.cs | 34 + .../SmoMetadataProvider/CheckConstraint.cs | 89 + .../Management/SmoMetadataProvider/Column.cs | 329 + .../Management/SmoMetadataProvider/Config.cs | 189 + .../ConnectedSmoMetadataProvider.cs | 135 + .../SmoMetadataProvider/Credential.cs | 34 + .../SmoMetadataProvider/Database.cs | 1049 ++ .../SmoMetadataProvider/DatabaseDdlTrigger.cs | 100 + .../SmoMetadataProvider/DatabaseObject.cs | 77 + .../SmoMetadataProvider/DatabaseObjectBase.cs | 389 + .../DatabaseOwnedObject.cs | 49 + .../SmoMetadataProvider/DatabasePermission.cs | 177 + .../SmoMetadataProvider/DatabasePrincipal.cs | 336 + .../SmoMetadataProvider/DatabaseRole.cs | 72 + .../SmoMetadataProvider/DefaultConstraint.cs | 73 + .../DisconnectedSmoMetadataProvider.cs | 42 + .../SmoMetadataProvider/DmlTrigger.cs | 192 + .../ExtendedStoredProcedure.cs | 69 + .../ForeignKeyConstraint.cs | 136 + .../SmoMetadataProvider/ISmoDatabaseObject.cs | 18 + .../Management/SmoMetadataProvider/Index.cs | 103 + .../Management/SmoMetadataProvider/Login.cs | 362 + ...rver.Management.SmoMetadataProvider.csproj | 17 + .../PrimaryKeyConstraint.cs | 29 + .../SmoMetadataProvider/RelationalIndex.cs | 152 + .../ScalarValuedFunction.cs | 138 + .../Management/SmoMetadataProvider/Schema.cs | 465 + .../SmoMetadataProvider/SchemaOwnedModule.cs | 39 + .../SmoMetadataProvider/SchemaOwnedObject.cs | 49 + .../Management/SmoMetadataProvider/Server.cs | 536 + .../SmoMetadataProvider/ServerDdlTrigger.cs | 106 + .../SmoMetadataProvider/ServerOwnedObject.cs | 48 + .../SmoBuiltInFunctionLookup.cs | 33 + .../SmoMetadataProvider/SmoCollationLookup.cs | 33 + .../SmoMetadataProvider/SmoMetadataFactory.cs | 36 + .../SmoMetadataProvider.cs | 91 + .../SmoSystemDataTypeLookup.cs | 238 + .../SmoMetadataProvider/SpatialIndex.cs | 133 + .../SmoMetadataProvider/Statistics.cs | 87 + .../SmoMetadataProvider/StoredProcedure.cs | 171 + .../Management/SmoMetadataProvider/Synonym.cs | 136 + .../Management/SmoMetadataProvider/Table.cs | 73 + .../TableValuedFunction.cs | 106 + .../SmoMetadataProvider/TableViewBase.cs | 69 + .../TableViewTableTypeBase.cs | 57 + .../SmoMetadataProvider/TraceHelper.cs | 98 + .../SmoMetadataProvider/UniqueConstraint.cs | 29 + .../UniqueConstraintBase.cs | 55 + .../Management/SmoMetadataProvider/User.cs | 302 + .../UserDefinedAggregate.cs | 97 + .../SmoMetadataProvider/UserDefinedClrType.cs | 124 + .../UserDefinedDataType.cs | 91 + .../UserDefinedFunction.cs | 144 + .../UserDefinedTableType.cs | 66 + .../Management/SmoMetadataProvider/Utils.cs | 1593 +++ .../Management/SmoMetadataProvider/View.cs | 153 + .../SmoMetadataProvider/XmlIndex.cs | 26 + .../Management/SqlAssessment/AssemblyInfo.cs | 8 + ...oft.SqlServer.Management.Assessment.csproj | 30 + .../SqlAssessment/SqlAssessmentExtensions.cs | 692 ++ .../Management/SqlEnum/AssemblyInfo.cs | 11 + .../Management/SqlEnum/AvailableSQLServers.CS | 145 + .../Management/SqlEnum/ConditionedSql.cs | 284 + .../Management/SqlEnum/DataProvider.cs | 829 ++ .../Management/SqlEnum/DatabaseLevel.CS | 374 + .../Management/SqlEnum/DatabaseOption.cs | 27 + .../SqlServer/Management/SqlEnum/DdlParser.cs | 620 ++ .../Management/SqlEnum/EventSetBase.cs | 122 + .../Management/SqlEnum/FxCopExclusions.cs | 284 + .../Microsoft.SqlServer.SqlEnum.csproj | 1270 +++ .../Management/SqlEnum/PostProcess.cs | 255 + .../SqlEnum/PostProcessAuditProperties.cs | 129 + .../SqlEnum/PostProcessCreateDateTime.cs | 603 ++ .../PostProcessDatabaseInsideAttribs.cs | 732 ++ .../Management/SqlEnum/PostProcessEvents.cs | 135 + .../Management/SqlEnum/PostProcessFile.cs | 96 + .../Management/SqlEnum/PostProcessOwner.cs | 94 + .../Management/SqlEnum/PostProcessParam.cs | 250 + ...cessRemoteDataArchiveDatabaseProperties.cs | 155 + .../Management/SqlEnum/PostProcessTable.cs | 124 + .../Management/SqlEnum/PostProcessText.cs | 239 + .../Management/SqlEnum/PostProcessUser.cs | 101 + .../Management/SqlEnum/PostProcessVersion.cs | 24 + .../SqlEnum/PostProcessWithRowCaching.cs | 111 + .../Management/SqlEnum/PostProcessXml.cs | 41 + .../Management/SqlEnum/QueryIsolation.cs | 103 + .../Management/SqlEnum/RequestParentSelect.cs | 40 + .../SqlServer/Management/SqlEnum/Server.cs | 45 + .../SqlEnum/SqlConditionedStatement.cs | 138 + .../Management/SqlEnum/SqlEnumDependencies.cs | 1045 ++ .../SqlEnum/SqlEnumNetCoreExtension.cs | 101 + .../SqlEnumStatementBuilderTestHook.cs | 62 + .../Management/SqlEnum/SqlLinkMultiple.cs | 160 + .../SqlServer/Management/SqlEnum/SqlObject.cs | 263 + .../Management/SqlEnum/SqlObjectBase.cs | 1110 ++ .../Management/SqlEnum/SqlObjectProperty.cs | 176 + .../Management/SqlEnum/SqlObjectUnion.cs | 104 + .../Management/SqlEnum/SqlParentLink.cs | 86 + .../Management/SqlEnum/SqlPostProcess.cs | 117 + .../Management/SqlEnum/SqlPropertyLink.cs | 206 + .../Management/SqlEnum/SqlRequest.cs | 94 + .../SqlServer/Management/SqlEnum/SqlUtil.cs | 105 + .../SqlEnum/StringSqlEnumerator.strings | 314 + .../Management/SqlEnum/TypeConverters.cs | 769 ++ .../SqlServer/Management/SqlEnum/Util.cs | 544 + .../SqlServer/Management/SqlEnum/XmlRead.CS | 1797 ++++ .../SqlServer/Management/SqlEnum/diskfile.cs | 50 + .../Management/SqlEnum/enumstructs.cs | 4728 +++++++++ .../Management/SqlEnum/executesql.cs | 682 ++ .../SqlServer/Management/SqlEnum/permenum.cs | 636 ++ .../Management/SqlEnum/primaryfile.cs | 31 + .../Management/SqlEnum/restoreplan.cs | 45 + .../Management/SqlEnum/sqlenumresult.cs | 404 + .../Management/SqlEnum/sqlsecurestring.cs | 1761 ++++ .../Management/SqlEnum/statementbuilder.cs | 637 ++ .../SqlEnum/xml/AditionalParameters.xml | 44 + .../Management/SqlEnum/xml/AffinityInfo.xml | 27 + .../Management/SqlEnum/xml/AgentPerfInfo.xml | 115 + .../SqlEnum/xml/AgentSubSystems.xml | 52 + .../SqlEnum/xml/AlertNotification.xml | 46 + .../SqlEnum/xml/ApplicationRole.xml | 48 + .../Management/SqlEnum/xml/AsymmetricKey.xml | 43 + .../Management/SqlEnum/xml/Audit.xml | 60 + .../SqlEnum/xml/AvailabilityDatabase.xml | 58 + .../SqlEnum/xml/AvailabilityGroup.xml | 88 + .../SqlEnum/xml/AvailabilityGroupListener.xml | 24 + .../AvailabilityGroupListenerIPAddress.xml | 48 + .../SqlEnum/xml/AvailabilityReplica.xml | 157 + .../Management/SqlEnum/xml/AvailableMedia.xml | 51 + .../Management/SqlEnum/xml/BackupDevice.xml | 46 + .../Management/SqlEnum/xml/BoundColumn.xml | 28 + .../Management/SqlEnum/xml/CdromDrive.xml | 14 + .../SqlEnum/xml/CloudDependency.sql | 561 ++ .../SqlEnum/xml/ClusterMemberState.xml | 14 + .../SqlEnum/xml/ColumnEncryptionKey.xml | 13 + .../SqlEnum/xml/ColumnEncryptionKeyValue.xml | 29 + .../SqlEnum/xml/ColumnMasterKey.xml | 19 + .../Management/SqlEnum/xml/ComputedText.xml | 18 + .../Management/SqlEnum/xml/Configuration.xml | 38 + .../SqlEnum/xml/ConfigurationValue.xml | 20 + .../Management/SqlEnum/xml/Connection.xml | 22 + .../Management/SqlEnum/xml/Credential.xml | 29 + .../SqlEnum/xml/CryptographicProvider.xml | 27 + .../Management/SqlEnum/xml/Database.xml | 729 ++ .../xml/DatabaseAuditSpecification.xml | 19 + .../xml/DatabaseAuditSpecificationDetail.xml | 26 + .../SqlEnum/xml/DatabaseDdlTrigger.xml | 46 + .../SqlEnum/xml/DatabaseDdlTriggerEvent.xml | 15 + .../SqlEnum/xml/DatabaseDiagram.xml | 27 + .../SqlEnum/xml/DatabaseEncryptionKey.xml | 29 + .../Management/SqlEnum/xml/DatabaseLocks.xml | 154 + .../SqlEnum/xml/DatabaseMappings.xml | 55 + .../SqlEnum/xml/DatabaseMasterKey.xml | 31 + .../xml/DatabaseMirroringWitnessRole.xml | 18 + .../SqlEnum/xml/DatabaseOptions.xml | 133 + .../SqlEnum/xml/DatabaseReplicaState.xml | 142 + .../Management/SqlEnum/xml/DatabaseRole.xml | 57 + .../SqlEnum/xml/DatabaseRoleMember.xml | 130 + .../xml/DatabaseScopedConfiguration.xml | 39 + .../SqlEnum/xml/DatabaseScopedCredential.xml | 28 + .../SqlEnum/xml/DbExtendedProperty.xml | 16 + .../Management/SqlEnum/xml/Default.xml | 23 + .../Management/SqlEnum/xml/DefaultColumn.xml | 25 + .../SqlEnum/xml/DefaultConstrain.xml | 59 + .../SqlEnum/xml/DefaultDatatype.xml | 23 + .../Management/SqlEnum/xml/DiskFile.xml | 89 + .../SqlEnum/xml/DistributionColumn.xml | 19 + .../Management/SqlEnum/xml/Drive.xml | 57 + .../Management/SqlEnum/xml/ErrorLog.xml | 38 + .../Management/SqlEnum/xml/ErrorLogText.xml | 118 + .../SqlEnum/xml/ExternalDataSource.xml | 28 + .../SqlEnum/xml/ExternalFileFormat.xml | 26 + .../SqlEnum/xml/ExternalLanguage.xml | 24 + .../SqlEnum/xml/ExternalLanguageFile.xml | 22 + .../SqlEnum/xml/ExternalLibrary.xml | 23 + .../SqlEnum/xml/ExternalLibraryFile.xml | 17 + .../SqlEnum/xml/ExternalResourcePool.xml | 17 + .../xml/ExternalResourcePoolAffinityInfo.xml | 25 + .../Management/SqlEnum/xml/ExternalStream.xml | 28 + .../SqlEnum/xml/ExternalStreamingJob.xml | 23 + .../Management/SqlEnum/xml/FKColumn.xml | 37 + .../SqlServer/Management/SqlEnum/xml/File.xml | 109 + .../Management/SqlEnum/xml/FileGroup.xml | 41 + .../Management/SqlEnum/xml/FixedDrive.xml | 30 + .../Management/SqlEnum/xml/ForeignKey.xml | 81 + .../SqlEnum/xml/FullTextCatalog.xml | 101 + .../Management/SqlEnum/xml/FullTextFile.xml | 16 + .../Management/SqlEnum/xml/FullTextIndex.xml | 124 + .../SqlEnum/xml/FullTextIndexColumn.xml | 65 + .../SqlEnum/xml/FullTextLanguage.xml | 10 + .../SqlEnum/xml/FullTextService.xml | 62 + .../SqlEnum/xml/FullTextStopList.xml | 24 + .../SqlEnum/xml/FulltextSemanticLanguage.xml | 11 + .../SqlEnum/xml/IndexFragDetail.xml | 41 + .../Management/SqlEnum/xml/IndexFragFast.xml | 43 + .../SqlEnum/xml/IndexFragSampled.xml | 42 + .../Management/SqlEnum/xml/IndexedColumn.xml | 48 + .../Management/SqlEnum/xml/IndexedXmlPath.xml | 46 + .../SqlEnum/xml/IndexedXmlPathNamespace.xml | 22 + .../Management/SqlEnum/xml/Information.xml | 391 + .../SqlServer/Management/SqlEnum/xml/Job.xml | 102 + .../Management/SqlEnum/xml/JobServer.xml | 123 + .../SqlEnum/xml/JobStepOutputLog.xml | 52 + .../SqlEnum/xml/KatmaiDependency.sql | 852 ++ .../Management/SqlEnum/xml/KeyEncryption.xml | 18 + .../SqlServer/Management/SqlEnum/xml/Lock.xml | 161 + .../Management/SqlEnum/xml/LogFile.xml | 24 + .../Management/SqlEnum/xml/LogMarkHistory.xml | 14 + .../SqlServer/Management/SqlEnum/xml/Mail.xml | 12 + .../Management/SqlEnum/xml/MailAccount.xml | 23 + .../Management/SqlEnum/xml/MailProfile.xml | 20 + .../SqlEnum/xml/MailProfileAccounts.xml | 41 + .../SqlEnum/xml/MailProfilePrincipals.xml | 47 + .../Management/SqlEnum/xml/MailServer.xml | 45 + .../Management/SqlEnum/xml/Mail_ErrorLog.xml | 17 + .../SqlEnum/xml/MaintSubPlanLog.xml | 25 + .../SqlEnum/xml/MaintSubPlanLogDetail.xml | 25 + .../SqlEnum/xml/MaintenancePlan.xml | 27 + .../SqlEnum/xml/MaintenancePlanDeprecated.xml | 19 + .../SqlEnum/xml/MaintenanceSubPlan.xml | 28 + .../SqlEnum/xml/MasterKeyEncryption.xml | 27 + .../Management/SqlEnum/xml/Member.xml | 49 + .../Management/SqlEnum/xml/NTGroup.xml | 29 + .../Management/SqlEnum/xml/NTLogin.xml | 19 + .../xml/NotificationServices/Application.xml | 214 + .../ApplicationDatabaseFile.xml | 32 + .../ApplicationDatabaseFileGroup.xml | 31 + .../ApplicationDatabaseLogFile.xml | 28 + .../ApplicationDatabaseOptions.xml | 23 + .../NotificationServices/ContentFormatter.xml | 31 + .../ContentFormatterArgument.xml | 31 + .../NotificationServices/DeliveryChannel.xml | 21 + .../DeliveryChannelArgument.xml | 29 + .../xml/NotificationServices/Distributor.xml | 29 + .../NotificationServices/EventChronicle.xml | 35 + .../EventChronicleRule.xml | 41 + .../xml/NotificationServices/EventClass.xml | 39 + .../xml/NotificationServices/EventField.xml | 33 + .../xml/NotificationServices/Generator.xml | 30 + .../HostedEventProvider.xml | 35 + .../HostedEventProviderArgument.xml | 31 + .../xml/NotificationServices/Instance.xml | 134 + .../InstanceDatabaseFile.xml | 32 + .../InstanceDatabaseFileGroup.xml | 31 + .../InstanceDatabaseLogFile.xml | 28 + .../InstanceDatabaseOptions.xml | 23 + .../NonHostedEventProvider.xml | 29 + .../NotificationClass.xml | 37 + .../NotificationClassProtocol.xml | 39 + .../NotificationComputedField.xml | 33 + .../NotificationField.xml | 33 + .../NotificationServices.xml | 17 + .../ProtocolDefinition.xml | 23 + .../NotificationServices/ProtocolField.xml | 33 + .../ProtocolRetrySchedule.xml | 31 + .../SubscriptionChronicle.xml | 35 + .../SubscriptionClass.xml | 29 + .../SubscriptionConditionEventRule.xml | 45 + .../SubscriptionConditionScheduledRule.xml | 44 + .../SubscriptionEventRule.xml | 41 + .../SubscriptionField.xml | 33 + .../SubscriptionScheduledRule.xml | 41 + .../NotificationServices/VacuumSchedule.xml | 30 + .../SqlEnum/xml/NumberedSPParams.xml | 44 + .../SqlEnum/xml/NumberedStoredProcedure.xml | 49 + .../Management/SqlEnum/xml/OLEDBProvProp.xml | 45 + .../Management/SqlEnum/xml/OLEDBProvider.xml | 15 + .../SqlEnum/xml/OLEDBProviderSetting.xml | 135 + .../SqlEnum/xml/OperatorJobNotification.xml | 44 + .../SqlEnum/xml/OperatorNotification.xml | 46 + .../Management/SqlEnum/xml/OrderColumn.xml | 18 + .../SqlEnum/xml/PartitionFunction.xml | 19 + .../xml/PartitionFunctionParameter.xml | 22 + .../xml/PartitionFunctionRangeValue.xml | 14 + .../SqlEnum/xml/PartitionScheme.xml | 28 + .../SqlEnum/xml/PartitionSchemeFileGroup.xml | 17 + .../SqlEnum/xml/PartitionSchemeParameter.xml | 20 + .../Management/SqlEnum/xml/PerfInfo.xml | 19 + .../SqlEnum/xml/PhysicalPartition.xml | 62 + .../Management/SqlEnum/xml/PlanGuide.xml | 40 + .../Management/SqlEnum/xml/Process.xml | 63 + .../Management/SqlEnum/xml/ProxyAccount.xml | 25 + .../SqlEnum/xml/ProxyAccountPrincipals.xml | 31 + .../SqlEnum/xml/QueryStoreOptions.xml | 34 + .../Management/SqlEnum/xml/README.md | 130 + .../Management/SqlEnum/xml/RemoteDrive.xml | 14 + .../SqlEnum/xml/RemoteMaintenancePlan.xml | 9 + .../Management/SqlEnum/xml/RemotePlanLog.xml | 23 + .../SqlEnum/xml/RemotePlanLogDetail.xml | 25 + .../Management/SqlEnum/xml/RemoteSubPlan.xml | 11 + .../Management/SqlEnum/xml/RemovableDrive.xml | 14 + .../SqlEnum/xml/ReplicaClusterNode.xml | 38 + .../SqlEnum/xml/ResourceGovernor.xml | 29 + .../Management/SqlEnum/xml/ResourcePool.xml | 25 + .../SqlEnum/xml/ResourcePoolAffinityInfo.xml | 35 + .../SqlEnum/xml/ResourcePoolScheduler.xml | 31 + .../SqlServer/Management/SqlEnum/xml/Rule.xml | 23 + .../Management/SqlEnum/xml/RuleColumn.xml | 25 + .../Management/SqlEnum/xml/RuleDatatype.xml | 23 + .../Management/SqlEnum/xml/SPParams.xml | 30 + .../Management/SqlEnum/xml/SPPerm.xml | 13 + .../SqlEnum/xml/SQL11Dependency.sql | 882 ++ .../Management/SqlEnum/xml/Schema.xml | 23 + .../Management/SqlEnum/xml/SearchProperty.xml | 24 + .../SqlEnum/xml/SearchPropertyList.xml | 29 + .../Management/SqlEnum/xml/SecurityPolicy.xml | 14 + .../SqlEnum/xml/SecurityPredicate.xml | 31 + .../SqlEnum/xml/ServerAuditSpecification.xml | 18 + .../xml/ServerAuditSpecificationDetail.xml | 22 + .../SqlEnum/xml/ServerDdlTrigger.xml | 50 + .../SqlEnum/xml/ServerDdlTriggerEvent.xml | 15 + .../SqlEnum/xml/ServerProxyAccount.xml | 51 + .../Management/SqlEnum/xml/ServerRole.xml | 44 + .../Management/SqlEnum/xml/Settings.xml | 138 + .../SqlEnum/xml/ShilohDependency.sql | 328 + .../Management/SqlEnum/xml/SmartAdmin.xml | 25 + .../Management/SqlEnum/xml/SqlAssembly.xml | 31 + .../SqlEnum/xml/SqlAssemblyFile.xml | 16 + .../Management/SqlEnum/xml/SqlBoot.xml | 36 + .../SqlEnum/xml/StatisticColumn.xml | 35 + .../SqlEnum/xml/StoredProcedure.xml | 44 + .../Management/SqlEnum/xml/SymmetricKey.xml | 38 + .../Management/SqlEnum/xml/TablePerm.xml | 18 + .../Management/SqlEnum/xml/TapeDevice.xml | 12 + .../SqlServer/Management/SqlEnum/xml/Text.xml | 17 + .../SqlServer/Management/SqlEnum/xml/UDF.xml | 67 + .../Management/SqlEnum/xml/UDFParams.xml | 22 + .../SqlEnum/xml/UserDefinedAggregate.xml | 21 + .../xml/UserDefinedAggregateParameter.xml | 24 + .../SqlEnum/xml/UserDefinedTableType.xml | 35 + .../SqlEnum/xml/UserDefinedType.xml | 40 + .../Management/SqlEnum/xml/UserMessage.xml | 35 + .../Management/SqlEnum/xml/UserOption.xml | 34 + .../Management/SqlEnum/xml/WorkloadGroup.xml | 36 + .../WorkloadManagementWorkloadClassifier.xml | 32 + .../xml/WorkloadManagementWorkloadGroup.xml | 22 + .../SqlEnum/xml/XStoredProcedure.xml | 32 + .../Management/SqlEnum/xml/XmlNamespace.xml | 23 + .../SqlEnum/xml/XmlSchemaCollection.xml | 28 + .../SqlEnum/xml/YukonDependency.sql | 608 ++ .../SqlEnum/xml/Yukonuserownedobject.xml | 108 + .../xml/YukonuserownedobjectSchema.xml | 77 + .../Management/SqlEnum/xml/agent_ErrorLog.xml | 154 + .../SqlEnum/xml/agent_ErrorLogText.xml | 87 + .../Management/SqlEnum/xml/agent_alert.xml | 67 + .../SqlEnum/xml/agent_alert_categories.xml | 20 + .../SqlEnum/xml/agent_alertsystem.xml | 125 + .../SqlEnum/xml/agent_job_categories.xml | 21 + .../Management/SqlEnum/xml/agent_jobalert.xml | 11 + .../SqlEnum/xml/agent_jobhistory.xml | 39 + .../SqlEnum/xml/agent_jobschedule.xml | 101 + .../SqlEnum/xml/agent_jobtargetservers.xml | 56 + .../Management/SqlEnum/xml/agent_operator.xml | 64 + .../SqlEnum/xml/agent_operator_categories.xml | 20 + .../SqlEnum/xml/agent_targetserver.xml | 27 + .../SqlEnum/xml/agent_targetservergroup.xml | 25 + .../SqlEnum/xml/agent_targetservermember.xml | 51 + .../Management/SqlEnum/xml/backupfile.xml | 24 + .../SqlEnum/xml/backupmediafamily.xml | 20 + .../Management/SqlEnum/xml/backupmediaset.xml | 23 + .../Management/SqlEnum/xml/backupset.xml | 77 + .../Management/SqlEnum/xml/certificate.xml | 40 + .../Management/SqlEnum/xml/check.xml | 29 + .../Management/SqlEnum/xml/clusterSubnet.xml | 17 + .../Management/SqlEnum/xml/collation.xml | 24 + .../Management/SqlEnum/xml/column.xml | 301 + .../Management/SqlEnum/xml/edgeconstraint.xml | 19 + .../SqlEnum/xml/edgeconstraintclause.xml | 23 + .../endpoint/database_mirroring_endpoint.xml | 43 + .../SqlEnum/xml/endpoint/endpoint.xml | 28 + .../SqlEnum/xml/endpoint/http_endpoint.xml | 28 + .../xml/endpoint/service_broker_endpoint.xml | 46 + .../SqlEnum/xml/endpoint/soap_endpoint.xml | 29 + .../xml/endpoint/soap_endpoint_method.xml | 24 + .../SqlEnum/xml/endpoint/tcp_endpoint.xml | 23 + .../SqlEnum/xml/endpoint/via_endpoint.xml | 20 + .../xml/extendedproperty/ExtendedProperty.xml | 31 + .../Level0ExtendedProperty.xml | 23 + .../Level1ExtendedProperty.xml | 61 + .../Level2ExtendedProperty.xml | 67 + .../Level2IndexExtendedProperty.xml | 78 + .../inc_level2SupportProperties.xml | 32 + .../inc_shilohExtendedProperty.xml | 15 + .../SqlEnum/xml/fulltext_ErrorLog.xml | 51 + .../SqlEnum/xml/fulltext_ErrorLogText.xml | 109 + .../Management/SqlEnum/xml/inc_DbFile.xml | 69 + .../SqlEnum/xml/inc_DefaultRule_column.xml | 26 + .../Management/SqlEnum/xml/inc_IndexFrag.xml | 104 + .../SqlEnum/xml/inc_assembly_module_link.xml | 26 + .../SqlEnum/xml/inc_column_reference.xml | 23 + .../Management/SqlEnum/xml/inc_constraint.xml | 30 + .../SqlEnum/xml/inc_ddl_trigger_event.xml | 14 + .../Management/SqlEnum/xml/inc_fulltext.xml | 20 + .../xml/inc_hadr_policy_health_state.xml | 31 + .../SqlEnum/xml/inc_hadr_setting.xml | 59 + .../SqlEnum/xml/inc_named_object.xml | 46 + .../Management/SqlEnum/xml/inc_object.xml | 25 + .../SqlEnum/xml/inc_objprop_table_view.xml | 56 + .../xml/inc_partition_scheme_parent.xml | 15 + .../SqlEnum/xml/inc_policy_health_state.xml | 26 + .../Management/SqlEnum/xml/inc_ruledef80.xml | 25 + .../Management/SqlEnum/xml/inc_server.xml | 589 ++ .../xml/inc_server_sql_module_link.xml | 30 + .../Management/SqlEnum/xml/inc_sql_module.xml | 24 + .../SqlEnum/xml/inc_sql_module_JustText.xml | 23 + .../Management/SqlEnum/xml/inc_storage.xml | 78 + .../SqlEnum/xml/inc_system_object.xml | 17 + .../xml/inc_system_table_view_sp_udf.xml | 39 + .../Management/SqlEnum/xml/inc_text.xml | 19 + .../Management/SqlEnum/xml/inc_type.xml | 64 + .../SqlEnum/xml/inc_type_reference.xml | 26 + .../Management/SqlEnum/xml/inc_urn.xml | 14 + .../SqlEnum/xml/inc_urn_collate_default.xml | 14 + .../SqlEnum/xml/inc_urn_message.xml | 15 + .../Management/SqlEnum/xml/inc_urn_schema.xml | 21 + .../Management/SqlEnum/xml/inc_urn_single.xml | 13 + .../SqlEnum/xml/inc_urn_soapmethod.xml | 16 + .../SqlEnum/xml/include/mixed_module_link.xml | 75 + .../SqlEnum/xml/include/parameter.xml | 66 + .../SqlEnum/xml/include/sql_module_link.xml | 34 + .../Management/SqlEnum/xml/index.xml | 368 + .../Management/SqlEnum/xml/jobstep.xml | 121 + .../Management/SqlEnum/xml/language.xml | 26 + .../Management/SqlEnum/xml/linkedserver.xml | 127 + .../SqlEnum/xml/linkedservercatalog.xml | 145 + .../SqlEnum/xml/linkedserverlogin.xml | 37 + .../SqlEnum/xml/linkedservertable.xml | 95 + .../SqlEnum/xml/linkedserverview.xml | 95 + .../Management/SqlEnum/xml/login.xml | 130 + .../SqlEnum/xml/perm/ColumnPerm.xml | 36 + .../SqlEnum/xml/perm/DBObjectPerm.xml | 128 + .../Management/SqlEnum/xml/perm/DBPerm.xml | 15 + .../SqlEnum/xml/perm/ShilohYukonPerm.xml | 22 + .../SqlEnum/xml/perm/SrvObjectPerm.xml | 74 + .../SqlEnum/xml/perm/SrvYukonObjectPerm.xml | 14 + .../SqlEnum/xml/perm/SrvYukonPerm.xml | 13 + .../Management/SqlEnum/xml/perm/TablePerm.xml | 20 + .../SqlEnum/xml/perm/YukonObjectPerm.xml | 17 + .../xml/perm/YukonSchemaObjectPerm.xml | 16 + .../SqlEnum/xml/perm/dbfixedroleperm.xml | 19 + .../Management/SqlEnum/xml/perm/inc_perm.xml | 96 + .../SqlEnum/xml/primarychildren.xml | 20 + .../Management/SqlEnum/xml/primaryfile.xml | 18 + .../Management/SqlEnum/xml/restore_plan.xml | 977 ++ .../Management/SqlEnum/xml/restorefile.xml | 15 + .../SqlEnum/xml/restorefilegroup.xml | 13 + .../Management/SqlEnum/xml/restorehistory.xml | 23 + .../Management/SqlEnum/xml/resumableindex.xml | 26 + .../Management/SqlEnum/xml/schedule.xml | 46 + .../SqlServer/Management/SqlEnum/xml/sdt.xml | 46 + .../Management/SqlEnum/xml/sequence.xml | 27 + .../Management/SqlEnum/xml/server.xml | 29 + .../SqlEnum/xml/servicemasterkey.xml | 12 + .../Management/SqlEnum/xml/sharedschedule.xml | 41 + .../Management/SqlEnum/xml/statistic.xml | 81 + .../Management/SqlEnum/xml/synonym.xml | 37 + .../Management/SqlEnum/xml/sysmessage.xml | 34 + .../Management/SqlEnum/xml/table.xml | 592 ++ .../Management/SqlEnum/xml/temp_table.xml | 12 + .../Management/SqlEnum/xml/transaction.xml | 54 + .../Management/SqlEnum/xml/trigger.xml | 77 + .../SqlServer/Management/SqlEnum/xml/uddt.xml | 82 + .../Management/SqlEnum/xml/udfcolumn.xml | 11 + .../SqlServer/Management/SqlEnum/xml/user.xml | 111 + .../SqlServer/Management/SqlEnum/xml/view.xml | 61 + .../Management/SqlEnum/xml/xmltype.xml | 38 + .../SqlScriptPublish/IScriptPublishOptions.cs | 67 + ...lServer.Management.SqlScriptPublish.csproj | 21 + .../Management/SqlScriptPublish/SR.strings | 84 + .../SqlScriptPublish/SqlQueryHandler.cs | 359 + .../SqlScriptPublish/SqlScriptGenerator.cs | 553 + .../SqlScriptPublish/SqlScriptOptions.cs | 1180 +++ .../SqlScriptOptionsSR.strings | 376 + .../SqlScriptPublish/SqlScriptPublishEnums.cs | 158 + .../SqlScriptPublishException.cs | 32 + .../SqlScriptPublish/SqlScriptPublishModel.cs | 624 ++ .../SqlScriptPublishModelTraceHelper.cs | 39 + .../SqlScriptPublish/SqlTransferOptions.cs | 57 + .../SqlScriptPublish/TableSelectStatement.cs | 147 + ...crosoft.SqlServer.Management.XEvent.csproj | 19 + .../XEvent/Server/ProviderConstants.cs | 12 + .../XEvent/Server/ServerEventProvider.cs | 113 + .../XEvent/Server/ServerSessionProvider.cs | 27 + .../XEvent/Server/ServerTargetProvider.cs | 116 + .../Management/XEvent/Server/ServerXEStore.cs | 466 + .../XEvent/Server/ServerXEStoreProvider.cs | 119 + .../Management/XEvent/core/Action.cs | 567 ++ .../XEvent/core/ActionCollection.cs | 78 + .../Management/XEvent/core/ActionInfo.cs | 440 + .../XEvent/core/ActionInfoCollection.cs | 62 + .../Management/XEvent/core/AssemblyInfo.cs | 4 + .../Management/XEvent/core/Constants.cs | 11 + .../XEvent/core/DataEventColumnInfo.cs | 449 + .../core/DataEventColumnInfoCollection.cs | 61 + .../SqlServer/Management/XEvent/core/Event.cs | 980 ++ .../Management/XEvent/core/EventCollection.cs | 73 + .../Management/XEvent/core/EventColumnInfo.cs | 467 + .../XEvent/core/EventColumnInfoCollection.cs | 61 + .../Management/XEvent/core/EventField.cs | 505 + .../XEvent/core/EventFieldCollection.cs | 60 + .../Management/XEvent/core/EventInfo.cs | 452 + .../XEvent/core/EventInfoCollection.cs | 62 + .../XEvent/core/ExceptionTemplates.strings | 37 + .../Management/XEvent/core/MapInfo.cs | 415 + .../XEvent/core/MapInfoCollection.cs | 62 + .../Management/XEvent/core/MapValueInfo.cs | 348 + .../XEvent/core/MapValueInfoCollection.cs | 61 + .../Management/XEvent/core/NetCoreHelpers.cs | 55 + .../Management/XEvent/core/Package.cs | 586 ++ .../XEvent/core/PackageCollection.cs | 154 + .../Management/XEvent/core/PredCompareExpr.cs | 103 + .../Management/XEvent/core/PredCompareInfo.cs | 404 + .../XEvent/core/PredCompareInfoCollection.cs | 62 + .../Management/XEvent/core/PredExpr.cs | 98 + .../XEvent/core/PredFunctionExpr.cs | 92 + .../Management/XEvent/core/PredLogicalExpr.cs | 101 + .../Management/XEvent/core/PredOperand.cs | 140 + .../Management/XEvent/core/PredSourceInfo.cs | 390 + .../XEvent/core/PredSourceInfoCollection.cs | 61 + .../Management/XEvent/core/PredValue.cs | 39 + .../Management/XEvent/core/Predicate.cs | 14 + .../XEvent/core/ProviderInterfaces.cs | 126 + .../XEvent/core/ReadOnlyEventColumnInfo.cs | 467 + .../core/ReadOnlyEventColumnInfoCollection.cs | 61 + .../Management/XEvent/core/Session.cs | 1303 +++ .../XEvent/core/SessionCollection.cs | 61 + .../XEvent/core/SessionProviderBase.cs | 327 + .../Management/XEvent/core/Target.cs | 746 ++ .../XEvent/core/TargetCollection.cs | 73 + .../XEvent/core/TargetColumnInfo.cs | 477 + .../XEvent/core/TargetColumnInfoCollection.cs | 60 + .../Management/XEvent/core/TargetField.cs | 516 + .../XEvent/core/TargetFieldCollection.cs | 61 + .../Management/XEvent/core/TargetInfo.cs | 407 + .../XEvent/core/TargetInfoCollection.cs | 59 + .../Management/XEvent/core/TraceHelper.cs | 140 + .../Management/XEvent/core/TypeInfo.cs | 396 + .../XEvent/core/TypeInfoCollection.cs | 60 + .../Management/XEvent/core/XEObjectInfo.cs | 25 + .../XEvent/core/XEObjectInfoCollection.cs | 16 + .../Management/XEvent/core/XEStore.cs | 885 ++ .../XEvent/core/XEStoreObjectMetadata.cs | 223 + .../XEvent/core/XEStoreSessionHelpers.cs | 333 + .../Management/XEvent/core/XEUtils.cs | 92 + .../Management/XEvent/core/XEventException.cs | 141 + .../XEvent/core/XsdResource.Designer.cs | 81 + .../Management/XEvent/core/XsdResource.resx | 124 + .../Management/XEvent/core/xeconfig.xsd | 229 + .../Management/XEventDbScoped/AssemblyInfo.cs | 4 + .../Management/XEventDbScoped/Constants.cs | 10 + .../XEventDbScoped/DatabaseEventProvider.cs | 114 + .../XEventDbScoped/DatabaseSessionProvider.cs | 22 + .../XEventDbScoped/DatabaseTargetProvider.cs | 125 + .../XEventDbScoped/DatabaseXEStore.cs | 434 + .../XEventDbScoped/DatabaseXEStoreProvider.cs | 138 + .../XEventDbScoped/ExceptionTemplates.strings | 37 + ...SqlServer.Management.XEventDbScoped.csproj | 22 + .../XEventDbScoped/NetCoreHelpers.cs | 55 + .../XEventDbScoped/ProviderConstants.cs | 12 + .../XEventDbScoped/XsdResource.Designer.cs | 81 + .../XEventDbScoped/XsdResource.resx | 124 + ...erver.Management.XEventDbScopedEnum.csproj | 97 + .../XEventDbScopedEnum/XEStoreObject.cs | 78 + .../XEventDbScopedEnum/XEventObject.cs | 49 + .../XEventDbScopedEnum/xml/Action.xml | 23 + .../XEventDbScopedEnum/xml/ActionInfo.xml | 25 + .../xml/DataEventColumnInfo.xml | 22 + .../XEventDbScopedEnum/xml/Event.xml | 23 + .../xml/EventColumnInfo.xml | 25 + .../XEventDbScopedEnum/xml/EventField.xml | 16 + .../XEventDbScopedEnum/xml/EventInfo.xml | 19 + .../XEventDbScopedEnum/xml/MapInfo.xml | 20 + .../XEventDbScopedEnum/xml/MapValueInfo.xml | 19 + .../XEventDbScopedEnum/xml/Package.xml | 28 + .../xml/PredCompareInfo.xml | 21 + .../XEventDbScopedEnum/xml/PredSourceInfo.xml | 21 + .../xml/ReadOnlyEventColumnInfo.xml | 24 + .../XEventDbScopedEnum/xml/Session.xml | 21 + .../XEventDbScopedEnum/xml/Target.xml | 21 + .../xml/TargetColumnInfo.xml | 23 + .../XEventDbScopedEnum/xml/TargetField.xml | 18 + .../XEventDbScopedEnum/xml/TargetInfo.xml | 20 + .../XEventDbScopedEnum/xml/TypeInfo.xml | 22 + .../XEventDbScopedEnum/xml/XEStore.xml | 17 + .../XEventDbScopedEnum/xml/inc_urn.xml | 14 + ...oft.SqlServer.Management.XEventEnum.csproj | 96 + .../Management/XEventEnum/XEventObject.cs | 39 + .../Management/XEventEnum/xml/Action.xml | 18 + .../Management/XEventEnum/xml/ActionInfo.xml | 17 + .../XEventEnum/xml/DataEventColumnInfo.xml | 18 + .../Management/XEventEnum/xml/Event.xml | 22 + .../XEventEnum/xml/EventColumnInfo.xml | 19 + .../Management/XEventEnum/xml/EventField.xml | 15 + .../Management/XEventEnum/xml/EventInfo.xml | 13 + .../Management/XEventEnum/xml/MapInfo.xml | 13 + .../XEventEnum/xml/MapValueInfo.xml | 11 + .../Management/XEventEnum/xml/Package.xml | 25 + .../XEventEnum/xml/PredCompareInfo.xml | 15 + .../XEventEnum/xml/PredSourceInfo.xml | 15 + .../xml/ReadOnlyEventColumnInfo.xml | 19 + .../Management/XEventEnum/xml/Session.xml | 21 + .../Management/XEventEnum/xml/Target.xml | 19 + .../XEventEnum/xml/TargetColumnInfo.xml | 19 + .../Management/XEventEnum/xml/TargetField.xml | 15 + .../Management/XEventEnum/xml/TargetInfo.xml | 13 + .../Management/XEventEnum/xml/TypeInfo.xml | 14 + .../Management/XEventEnum/xml/XEStore.xml | 15 + .../Management/XEventEnum/xml/inc_urn.xml | 14 + .../SqlServer/SqlClrProvider/AssemblyInfo.cs | 11 + .../SqlClrProvider/FxCopExclusions.cs | 14 + .../Microsoft.SqlServer.SqlClrProvider.csproj | 17 + .../SqlClrProvider/SqlClrProvider.cs | 148 + src/Microsoft/dirs.proj | 11 + src/TestReferences.proj | 15 + src/UnitTest/Common/UnitTestBase.cs | 40 + .../ConnectionInfo/ConnectionSettingsTests.cs | 83 + .../LocalizableTypeConverterTests.cs | 122 + ...Server.Test.ConnectionInfoUnitTests.csproj | 12 + .../ConnectionInfo/ServerConnectionTests.cs | 145 + .../ConnectionInfo/ServerInformationTests.cs | 142 + .../ConnectionInfo/SqlConnectionInfoTests.cs | 41 + src/UnitTest/Directory.Build.props | 18 + src/UnitTest/Directory.Build.targets | 33 + src/UnitTest/Dmf/ExpressionTreeTests.cs | 263 + src/UnitTest/Dmf/FacetTests.cs | 70 + ...crosoft.SqlServer.Test.DmfUnitTests.csproj | 18 + src/UnitTest/Dmf/PolicyStoreTests.cs | 44 + .../TestData/ExpressionTree_OperatorNodes.xml | 88 + ...SqlServer.Test.SmoNotebookUnitTests.csproj | 13 + src/UnitTest/Notebook/ModelTests.cs | 41 + .../Notebook/NotebookFileWriterTests.cs | 143 + src/UnitTest/Notebook/SmoNotebookTests.cs | 103 + ....SqlServer.Test.RegSvrEnumUnitTests.csproj | 12 + .../RegSvrEnum/RegistrationInfoTests.cs | 251 + .../RegSvrEnum/UIConnectionInfoTests.cs | 351 + src/UnitTest/RegisteredServers/AdsTests.cs | 68 + ...ver.Test.RegisteredServersUnitTests.csproj | 21 + .../RegisteredServersTests.cs | 213 + src/UnitTest/RegisteredServers/TstRegSrvr.xml | 328 + src/UnitTest/RegisteredServers/sample.json | 147 + src/UnitTest/Sfc/FilterNodeTests.cs | 60 + ...crosoft.SqlServer.Test.SfcUnitTests.csproj | 12 + src/UnitTest/Sfc/SfcSerializerTests.cs | 31 + src/UnitTest/Sfc/UrnTests.cs | 134 + src/UnitTest/Smo/AffinityInfoTests.cs | 174 + src/UnitTest/Smo/DataTypeTests.cs | 73 + src/UnitTest/Smo/DatabaseTests.cs | 127 + src/UnitTest/Smo/DdlParserTests.cs | 170 + src/UnitTest/Smo/FacetTests.cs | 112 + ...crosoft.SqlServer.Test.SmoUnitTests.csproj | 14 + src/UnitTest/Smo/PathWrapperTests.cs | 112 + src/UnitTest/Smo/PermissionDecoderTests.cs | 228 + src/UnitTest/Smo/QueryIsolationTests.cs | 120 + src/UnitTest/Smo/ScriptStringBuilderTests.cs | 90 + src/UnitTest/Smo/SerializationTests.cs | 83 + src/UnitTest/Smo/ServerEventsTests.cs | 59 + src/UnitTest/Smo/ServerTests.cs | 39 + src/UnitTest/Smo/SingleFileWriterTEsts.cs | 99 + src/UnitTest/Smo/SqlObjectTests.cs | 216 + src/UnitTest/Smo/SqlSmoObjectTests.cs | 943 ++ src/UnitTest/SqlScriptPublish/EnumTests.cs | 26 + ...qlServer.Test.SqlScriptPublishTests.csproj | 11 + .../SqlScriptPublish/SqlScriptOptionsTests.cs | 124 + .../SqlScriptPublishModelTests.cs | 43 + ...Server.Test.XEventDbScopedUnitTests.csproj | 15 + .../XEventDbScoped/PredValueUnitTest.cs | 29 + .../XEventDbScoped/SessionUnitTest.cs | 72 + src/UnitTest/XEventDbScoped/TargetUnitTest.cs | 43 + src/UnitTest/dirs.proj | 6 + src/UnitTest/unittest.runsettings | 126 + src/dirs.proj | 8 + src/tests.proj | 7 + 1902 files changed, 459120 insertions(+), 80 deletions(-) create mode 100644 .editorconfig create mode 100644 .gitattributes create mode 100644 .gitmodules create mode 100644 Directory.Build.props create mode 100644 Directory.Build.rsp create mode 100644 Packages.props create mode 100644 SmoBuild/AssemblyInfo.props create mode 100644 SmoBuild/CSharp.NetCore.props create mode 100644 SmoBuild/CSharp.NetFx.props create mode 100644 SmoBuild/CSharp.NetStandard.props create mode 100644 SmoBuild/DdlEvents.targets create mode 100644 SmoBuild/DdlEvents/class_template.cs create mode 100644 SmoBuild/DdlEvents/classenum_template.cs create mode 100644 SmoBuild/DdlEvents/eventsdef.cpp create mode 100644 SmoBuild/DdlEvents/evtenum_template.cs create mode 100644 SmoBuild/DdlEvents/evtschema.pl create mode 100644 SmoBuild/DdlEvents/smoevt.pl create mode 100644 SmoBuild/DdlEvents/smoevt_template.cs create mode 100644 SmoBuild/DdlEvents/trc2evt.pl create mode 100644 SmoBuild/DdlEvents/trccomn.h create mode 100644 SmoBuild/DdlEvents/trcdef.cpp create mode 100644 SmoBuild/DisableStrongName.ps1 create mode 100644 SmoBuild/SqlClientReference.props create mode 100644 SmoBuild/Version.props create mode 100644 azurepipelines-coverage.yml create mode 100644 dirs.proj create mode 100644 docs/README.md create mode 100644 global.json create mode 100644 init.cmd create mode 100644 src/Codegen/CodeGen.cs create mode 100644 src/Codegen/ExecuteSqlFake.cs create mode 100644 src/Codegen/ModelGen.cs create mode 100644 src/Codegen/README.md create mode 100644 src/Codegen/SmoCodeGen.csproj create mode 100644 src/Codegen/StringEnumerator.cs create mode 100644 src/Codegen/cfg.xml create mode 100644 src/Codegen/collections_codegen.proj create mode 100644 src/Codegen/gen.xml create mode 100644 src/Directory.Build.props create mode 100644 src/Directory.Build.targets create mode 100644 src/FunctionalTest/Directory.Build.props create mode 100644 src/FunctionalTest/Dockerfiles/150Linux/dockerfile create mode 100644 src/FunctionalTest/Framework/Helpers/AzureKeyVaultHelper.cs create mode 100644 src/FunctionalTest/Framework/Helpers/ConnectionHelpers.cs create mode 100644 src/FunctionalTest/Framework/Helpers/ConnectionMetrics.cs create mode 100644 src/FunctionalTest/Framework/Helpers/DataExtensions.cs create mode 100644 src/FunctionalTest/Framework/Helpers/DatabaseObjectHelpers.cs create mode 100644 src/FunctionalTest/Framework/Helpers/DirectoryHelpers.cs create mode 100644 src/FunctionalTest/Framework/Helpers/ExceptionHelpers.cs create mode 100644 src/FunctionalTest/Framework/Helpers/GenericSqlProxy.cs create mode 100644 src/FunctionalTest/Framework/Helpers/PolicyStoreHelpers.cs create mode 100644 src/FunctionalTest/Framework/Helpers/PropertyClasses.cs create mode 100644 src/FunctionalTest/Framework/Helpers/RetryHelper.cs create mode 100644 src/FunctionalTest/Framework/Helpers/ScriptHelpers.cs create mode 100644 src/FunctionalTest/Framework/Helpers/ScriptSchemaObjectBaseHelpers.cs create mode 100644 src/FunctionalTest/Framework/Helpers/ScriptTokenizer.cs create mode 100644 src/FunctionalTest/Framework/Helpers/ServerObjectHelpers.cs create mode 100644 src/FunctionalTest/Framework/Helpers/SmoObjectHelpers.cs create mode 100644 src/FunctionalTest/Framework/Helpers/SqlTestRandom.cs create mode 100644 src/FunctionalTest/Framework/Helpers/SqlTypeConverterHelpers.cs create mode 100644 src/FunctionalTest/Framework/Helpers/StringCollectionHelpers.cs create mode 100644 src/FunctionalTest/Framework/Helpers/StringExtensions.cs create mode 100644 src/FunctionalTest/Framework/Helpers/TSqlScriptingHelper.cs create mode 100644 src/FunctionalTest/Framework/Helpers/TableObjectHelpers.cs create mode 100644 src/FunctionalTest/Framework/Helpers/TestContextExtensions.cs create mode 100644 src/FunctionalTest/Framework/Helpers/TraceHelper.cs create mode 100644 src/FunctionalTest/Framework/Helpers/XmlHelper.cs create mode 100644 src/FunctionalTest/Framework/Microsoft.SqlServer.Test.Manageability.Utils.csproj create mode 100644 src/FunctionalTest/Framework/PRVerification.runsettings create mode 100644 src/FunctionalTest/Framework/Scripts/ValidateTableDataRetention_DataRetentionPeriodOption.sql create mode 100644 src/FunctionalTest/Framework/Sql2017Linux.runsettings create mode 100644 src/FunctionalTest/Framework/SqlVersion.cs create mode 100644 src/FunctionalTest/Framework/Sqlv150Linux.runsettings create mode 100644 src/FunctionalTest/Framework/Sqlv160Linux.runsettings create mode 100644 src/FunctionalTest/Framework/TestFramework/DisconnectedTestAttribute.cs create mode 100644 src/FunctionalTest/Framework/TestFramework/SqlFeature.cs create mode 100644 src/FunctionalTest/Framework/TestFramework/SqlRequiredFeatureAttribute.cs create mode 100644 src/FunctionalTest/Framework/TestFramework/SqlTestAreaAttribute.cs create mode 100644 src/FunctionalTest/Framework/TestFramework/SqlTestBase.cs create mode 100644 src/FunctionalTest/Framework/TestFramework/SqlTestCategoryAttribute.cs create mode 100644 src/FunctionalTest/Framework/TestFramework/SqlTestDimensionAttribute.cs create mode 100644 src/FunctionalTest/Framework/TestFramework/SqlTestHelpers.cs create mode 100644 src/FunctionalTest/Framework/TestFramework/SqlTestResult.cs create mode 100644 src/FunctionalTest/Framework/TestFramework/SupportedServerVersionRange.cs create mode 100644 src/FunctionalTest/Framework/TestFramework/SupportedTargetServerFriendlyName.cs create mode 100644 src/FunctionalTest/Framework/TestFramework/TestServerDescriptor.cs create mode 100644 src/FunctionalTest/Framework/TestFramework/TestServerPoolManager.cs create mode 100644 src/FunctionalTest/Framework/TestFramework/UnsupportedDatabaseEngineEditionAttribute.cs create mode 100644 src/FunctionalTest/Framework/TestFramework/UnsupportedDatabaseEngineTypeAttribute.cs create mode 100644 src/FunctionalTest/Framework/TestFramework/UnsupportedHostPlatformAttribute.cs create mode 100644 src/FunctionalTest/Framework/azuresql.runsettings create mode 100644 src/FunctionalTest/Framework/azuresqldwgen3.runsettings create mode 100644 src/FunctionalTest/Framework/azuresqledge.runsettings create mode 100644 src/FunctionalTest/Framework/functionaltest.runsettings create mode 100644 src/FunctionalTest/Framework/linux.runsettings create mode 100644 src/FunctionalTest/Framework/ondemand.runsettings create mode 100644 src/FunctionalTest/Framework/sql2008.runsettings create mode 100644 src/FunctionalTest/Framework/sql2012.runsettings create mode 100644 src/FunctionalTest/Framework/sql2014.runsettings create mode 100644 src/FunctionalTest/Framework/sql2016.runsettings create mode 100644 src/FunctionalTest/Framework/sql2017.runsettings create mode 100644 src/FunctionalTest/Framework/sqlexpress.runsettings create mode 100644 src/FunctionalTest/Framework/sqlmi.runsettings create mode 100644 src/FunctionalTest/Framework/sqlv150.runsettings create mode 100644 src/FunctionalTest/Framework/sqlv160.runsettings create mode 100644 src/FunctionalTest/Smo/BackupRestore/BackupRestoreTests.cs create mode 100644 src/FunctionalTest/Smo/BackupRestore/LongFullBackupCleanup.sql create mode 100644 src/FunctionalTest/Smo/BackupRestore/LongFullBackupPlan.sql create mode 100644 src/FunctionalTest/Smo/BackupRestore/LongFullBackupSetup.sql create mode 100644 src/FunctionalTest/Smo/BackupRestore/NewerOutOfSequenceCleanup.sql create mode 100644 src/FunctionalTest/Smo/BackupRestore/NewerOutOfSequencePointInTimePlan.sql create mode 100644 src/FunctionalTest/Smo/BackupRestore/NewerOutOfSequenceSetup.sql create mode 100644 src/FunctionalTest/Smo/BackupRestore/OlderOutOfSequenceCleanup.sql create mode 100644 src/FunctionalTest/Smo/BackupRestore/OlderOutOfSequencePointInTimePlan.sql create mode 100644 src/FunctionalTest/Smo/BackupRestore/OlderOutOfSequenceSetup.sql create mode 100644 src/FunctionalTest/Smo/DMF/ExecutionHistoryTests.cs create mode 100644 src/FunctionalTest/Smo/DMF/PolicyTests.cs create mode 100644 src/FunctionalTest/Smo/DMF/SfcXmlHelper.cs create mode 100644 src/FunctionalTest/Smo/GeneralFunctionality/AuditSmoTests.cs create mode 100644 src/FunctionalTest/Smo/GeneralFunctionality/DataClassificationSmoTests.cs create mode 100644 src/FunctionalTest/Smo/GeneralFunctionality/DatabaseSmoTests.cs create mode 100644 src/FunctionalTest/Smo/GeneralFunctionality/DifferencingTests.cs create mode 100644 src/FunctionalTest/Smo/GeneralFunctionality/DwSmoTests.cs create mode 100644 src/FunctionalTest/Smo/GeneralFunctionality/ServerConnectionTests.cs create mode 100644 src/FunctionalTest/Smo/GeneralFunctionality/ServerSmoTests.cs create mode 100644 src/FunctionalTest/Smo/GeneralFunctionality/SmoInitializingTests.cs create mode 100644 src/FunctionalTest/Smo/GeneralFunctionality/SmoTestsUtility.cs create mode 100644 src/FunctionalTest/Smo/MetadataProvider/MetadataProviderTests.cs create mode 100644 src/FunctionalTest/Smo/Microsoft.SqlServer.Test.Smo.csproj create mode 100644 src/FunctionalTest/Smo/README.md create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Alert_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ApplicationRole_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Audit_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/AvailabilityGroupListener_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/AvailabilityGroup_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/BackupDevice_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/BrokerPriority_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/BrokerService_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Category_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Check_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ColumnEncryptionKeyValue_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ColumnEncryptionKey_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ColumnMasterKey_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Column_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Credential_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/CryptographicProvider_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Data/qatest/bands.dat create mode 100644 src/FunctionalTest/Smo/ScriptingTests/DatabaseAuditSpecification_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/DatabaseDdlTrigger_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/DatabaseEncryptionKey_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/DatabaseOptions_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/DatabaseRole_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/DatabaseScopedCredential_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Database_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/DefaultConstraint_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/DefaultRule_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/EdgeConstraint_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Endpoint_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ExtendedProperty_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ExternalDataSource_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ExternalFileFormat_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ExternalLanguage_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ExternalLibrary_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ExternalResourcePool_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ExternalStream_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ExternalStreamingJob_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/File_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ForeignKey_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/FullTextCatalog_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/FullTextIndex_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/FullTextStopList_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Index_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/JobSchedule_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/JobStep_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Job_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/LinkedServerLogin_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/LinkedServer_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Login_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/MailAccount_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/MailProfile_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/MessageType_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Operator_SmoTestSute.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/PartitionFunction_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/PartitionScheme_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/PhysicalPartition_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/PlanGuide_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ProxyAccount_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/QueryStore_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/RegressionTests.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/RemoteServiceBinding_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ResourcePool_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Schema_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ScriptMakerTests.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ScripterTests.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ScriptingTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Scripts/DatabaseEncryptionKey_SmoTestSuite_SQL2016_Setup.sql create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Scripts/DependencyOrderScriptingDb.sql create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Scripts/ExternalLibrary_SmoTestSuite_Setup.sql create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Scripts/SqlAssembly_SmoTestSuite_SQL2016_Setup.sql create mode 100644 src/FunctionalTest/Smo/ScriptingTests/SearchPropertyList_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/SecurityPolicy_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/SecurityPredicate_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Sequence_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ServerAuditSpecification_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ServerDdlTrigger_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ServerRole_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Server_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ServiceContract_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ServiceQueue_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ServiceRoute_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/SmoTestFramework/SmoTestBase.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/SqlAssembly_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Statistic_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/StoredProcedure_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Synonym_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Table_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/TargetServerGroup_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/TestHelpers/AlwaysOnTestHelper.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/TestHelpers/SmoObjectTestBase.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/Trigger_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/UserDefinedAggregate_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/UserDefinedDataType_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/UserDefinedFunction_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/UserDefinedTableType_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/UserDefinedType_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/User_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/ValidateTableDataRetention_DataRetentionPeriodOption.sql create mode 100644 src/FunctionalTest/Smo/ScriptingTests/View_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/WorkloadGroup_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/WorkloadManagementWorkloadClassifier_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/WorkloadManagementWorkloadGroup_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/ScriptingTests/XmlSchemaCollection_SmoTestSuite.cs create mode 100644 src/FunctionalTest/Smo/Sfc/AlienTests.cs create mode 100644 src/FunctionalTest/Smo/Sfc/SfcEnumeratorTests.cs create mode 100644 src/FunctionalTest/Smo/SqlAssessment/SqlAssessmentTests.cs create mode 100644 src/FunctionalTest/Smo/ToolsConnectionInfo.xml create mode 100644 src/FunctionalTest/Smo/WMI/ServerEventsTests.cs create mode 100644 src/FunctionalTest/Smo/XEvent/ActionInfoUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/ActionUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/DataEventColumnInfoUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/DbScopedXEventTestBase.cs create mode 100644 src/FunctionalTest/Smo/XEvent/EnumeratorUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/EventColumnInfoUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/EventFieldUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/EventInfoUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/EventUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/MapInfoUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/MapValueInfoUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/PackageUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/PredCompareExprUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/PredCompareUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/PredFunctionExprUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/PredLogicalExprUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/PredOperandUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/PredSourceInfoUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/PredValueUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/ReadOnlyEventColumnInfoUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/SessionUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/TargetColumnInfoUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/TargetFieldUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/TargetInfoUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/TargetUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/TypeInfoUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/Util.cs create mode 100644 src/FunctionalTest/Smo/XEvent/XEStoreUnitTest.cs create mode 100644 src/FunctionalTest/Smo/XEvent/XEventSessionTests.cs create mode 100644 src/FunctionalTest/dirs.proj create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/BatchParser.cs create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/BatchParserAction.cs create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/BatchParserException.cs create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/ErrorCode.cs create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/ICommandHandler.cs create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/IVariableResolver.cs create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/Lexer.cs create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/LexerInput.cs create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/LexerTokenType.cs create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/LineInfo.cs create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/Microsoft.Data.Tools.Sql.BatchParser.csproj create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/OnErrorAction.cs create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/Parser.cs create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/PositionStruct.cs create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/TextBlock.cs create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/TextRuleFlags.cs create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/Token.cs create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/VariableReference.cs create mode 100644 src/Microsoft/Data/Tools.Sql.BatchParser/sr.strings create mode 100644 src/Microsoft/Directory.Build.props create mode 100644 src/Microsoft/Directory.Build.targets create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/ConnectionEnums.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/ConnectionException.CS create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/ConnectionInfoBase.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/ConnectionInfoHelper.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/ConnectionManager.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/ConnectionSettings.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/DatabaseEngineTypeExtensionClass.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/DtsConnectionInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/EncryptionUtility.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/ExecutionCache.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/FxCopSupressions.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/IRenewableToken.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/ISfcConnection.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/LocalizableTypeConverter.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/Microsoft.SqlServer.ConnectionInfo.csproj create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/NetCoreHelpers.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/OlapConnectionInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/ServerConnection.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/ServerInformation.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/ServerVersion.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/SqlCeConnectionInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/SqlConnectionInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/SqlConnectionInfoWithConnection.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/SqlContext.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/SqlDirectConnection.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/SqlOlapConnectionInfoBase.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/SqlServerMgmtEx.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/StatementCapture.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/StatementEvent.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/StringConnectionInfo.strings create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/TransferInterfaces.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/WindowsCredential.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/WmiMgmtScopeConnection.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/interfaces.cs create mode 100644 src/Microsoft/SqlServer/Management/ConnectionInfo/safenativemethods.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf.Common/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf.Common/CustomAttributes.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf.Common/DmfConstants.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf.Common/DmfException.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf.Common/ExceptionTemplates.strings create mode 100644 src/Microsoft/SqlServer/Management/Dmf.Common/FxCopExclusions.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf.Common/ManagementFacet.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf.Common/Microsoft.SqlServer.Dmf.Common.csproj create mode 100644 src/Microsoft/SqlServer/Management/Dmf.Common/NetCoreHelpers.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf.Common/PostConfigurationActionAttribute.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf.Common/Utils.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf.Common/enumstructs.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/Condition.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/ConditionCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/ConditionExtender.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/ConditionValidation.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/ConnectionEvaluationHistory.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/ConnectionEvaluationHistoryCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/EvaluationDetail.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/EvaluationDetailCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/EvaluationFactory.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/EvaluationHistory.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/EvaluationHistoryCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/ExceptionTemplates.strings create mode 100644 src/Microsoft/SqlServer/Management/Dmf/ExpressionTree.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/FacetInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/FacetInfoCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/FacetProperties.strings create mode 100644 src/Microsoft/SqlServer/Management/Dmf/FacetRepository.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/FxCopExclusions.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/LocalizableResources.strings create mode 100644 src/Microsoft/SqlServer/Management/Dmf/Microsoft.SqlServer.Dmf.csproj create mode 100644 src/Microsoft/SqlServer/Management/Dmf/ObjectSet.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/ObjectSetCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/ObjectSetValidation.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/Policy.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/PolicyCategory.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/PolicyCategoryCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/PolicyCategoryInformation.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/PolicyCategorySubscription.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/PolicyCategorySubscriptionCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/PolicyCategorySubscriptionValidation.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/PolicyCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/PolicyEvaluationResultsWriter.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/PolicyEvents.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/PolicyExtender.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/PolicyStore.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/PolicyStoreValidation.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/PolicyValidation.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/TargetSet.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/TargetSetCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/TargetSetLevel.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/TargetSetLevelCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Dmf/Utils.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/AGListenerNetworkMode.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/AvailabilityGroupData.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/AvailabilityGroupListenerConfiguration.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/AvailabilityGroupListenerSubnet.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/AvailabilityGroupReplica.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/AvailabilityGroupReplicaCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/AvailabilityGroupReplicaData.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/AvailabilityObjectState.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/CollectionsExtensionMethods.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/Constants.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/DataSynchronizationOption.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/FailoverCategory.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/FailoverData.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/FailoverUtilities.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/Microsoft.SqlServer.Management.HadrData.csproj create mode 100644 src/Microsoft/SqlServer/Management/HadrData/PrimaryDatabaseData.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/Properties/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/ReplicaRole.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/Resource.Designer.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/Resource.resx create mode 100644 src/Microsoft/SqlServer/Management/HadrData/SortableBindingList.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrData/UserSecurity.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/AddDBCredentialTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/AddDatabaseToExistingAGScenarioProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/AddDatabaseToExistingAvailabilityGroupTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/AddNewAvailabilityGroupListenerTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/AddReplicaDatabaseExistenceValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/AddReplicaDatabaseFileCompatibilityValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/AddReplicaDatabaseFileExistenceValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/AddReplicaTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/AddReplicasToExistingAvailabilityGroupScenarioProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/AvailabilityGroupNotJoinedOnReplicaException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/AvailabilityGroupQuorumValidationTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/AvailabilityGroupQuorumValidationTaskException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/AvailabilityModeIncompatibleException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/AvailabilityModeValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/BackupDatabaseTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/BackupDatabaseTaskException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/BackupLocationValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/BackupLogTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/BackupLogTaskException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/BasicAvailabilityGroupIncompatibleException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/BasicAvailabilityGroupValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/ClusterNodeState.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/CompatibleEncryptionValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/ConfigureEndpointsTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/CreateAvailabilityGroupDatabaseExistenceValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/CreateAvailabilityGroupDatabaseFileCompatibilityValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/CreateAvailabilityGroupDatabaseFileExistenceValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/CreateAvailabilityGroupListenerTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/CreateAvailabilityGroupScenarioProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/CreateAvailabilityGroupTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/CreateLoginTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/DBMasterKeyValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/DatabaseAlreadyExistsException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/DatabaseExistenceValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/DatabaseFileAlreadyExistsOnReplicaException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/DatabaseFileCompatibilityValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/DatabaseFileExistenceValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/DatabaseFileLocationMissingOnReplicaException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/DatabaseFileNotInDefaultDirectoryException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/DriveNotFoundOnReplicaException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/EditExistingAvailabilityGroupListenerTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/EncryptionAlgorithmMismatchException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/EncryptionMismatchException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/EndpointAuthenticationValidationException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/EndpointAuthenticationValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/FailoverQuorumVoteConfigurationValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/FailoverScenarioProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/FailoverTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/FailoverValidationException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/FailoverValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/FailoverWaitRoleChangeTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/FeatureInstallationState.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/FixedRetryCountPolicy.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/FixedTimeoutRetryPolicy.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/FreeDiskSpaceValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/GroupUserMembership.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/HADRValidationBaseException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/HadrModelUtilities.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/HadrTaskBaseException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/HadrTaskErrorException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/HadrValidationErrorException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/HadrValidationWarningException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/IExecutionPolicy.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/IScriptableTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/ITasksProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/IValidatorProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/InSufficientFreeSpaceForDatabaseFilesException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/InvalidAvailabilityGroupException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/JoinDatabaseToAvailabilityGroupException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/JoinDatabaseToAvailabilityGroupTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/JoinSecondariesTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/ListenerConfigurationException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/ListenerConfigurationValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/MaxHostedServicesException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/Microsoft.SqlServer.Management.HadrModel.csproj create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/ModelDelegates.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/PercentCompleteHandler.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/PrimaryCannotWriteToLocationException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/Properties/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/QuorumHelper.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/QuorumHelperException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/Resource.Designer.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/Resource.resx create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/RestartSqlServerException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/RestoreDatabaseTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/RestoreDatabaseTaskException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/RestoreLogTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/RestoreLogTaskException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/RunOncePolicy.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/ScenarioProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/SecondaryCannotReadLocationException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/ServiceOperationStatusException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/ShareValidationException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/SqlServerConnectionException.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/StartAlwaysOnXeventSessionTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/StringExtensionMethods.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/Task.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/TaskEventArgs.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/TaskEventStatus.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/UpdateAvailabilityGroupListenerTask.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/Validator.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/ValidatorEventArgs.cs create mode 100644 src/Microsoft/SqlServer/Management/HadrModel/WaitForAvailabilityGroupOnlineTask.cs create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/FxCopExclusions.cs create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/Microsoft.SqlServer.PolicyEnum.csproj create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/PolicyEnum.cs create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/PolicyObject.cs create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/xml/Condition.xml create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/xml/ConnectionEvaluationHistory.xml create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/xml/EvaluationDetail.xml create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/xml/EvaluationHistory.xml create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/xml/ObjectSet.xml create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/xml/Policy.xml create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/xml/PolicyCategory.xml create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/xml/PolicyCategorySubscription.xml create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/xml/PolicyStore.xml create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/xml/TargetFilter.xml create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/xml/TargetSet.xml create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/xml/TargetSetLevel.xml create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/xml/inc_urn.xml create mode 100644 src/Microsoft/SqlServer/Management/PolicyEnum/xml/inc_urnByID.xml create mode 100644 src/Microsoft/SqlServer/Management/RegisteredServers/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/RegisteredServers/AzureDataStudioConnection.cs create mode 100644 src/Microsoft/SqlServer/Management/RegisteredServers/AzureDataStudioConnectionStore.cs create mode 100644 src/Microsoft/SqlServer/Management/RegisteredServers/AzureStudioConnectionGroup.cs create mode 100644 src/Microsoft/SqlServer/Management/RegisteredServers/Microsoft.SqlServer.Management.RegisteredServers.csproj create mode 100644 src/Microsoft/SqlServer/Management/RegisteredServers/RegSvrStrings.strings create mode 100644 src/Microsoft/SqlServer/Management/RegisteredServers/RegisteredServer.cs create mode 100644 src/Microsoft/SqlServer/Management/RegisteredServers/RegisteredServerCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/RegisteredServers/RegisteredServerException.cs create mode 100644 src/Microsoft/SqlServer/Management/RegisteredServers/RegisteredServersEnumerator.cs create mode 100644 src/Microsoft/SqlServer/Management/RegisteredServers/RegisteredServersStore.cs create mode 100644 src/Microsoft/SqlServer/Management/RegisteredServers/ServerGroup.cs create mode 100644 src/Microsoft/SqlServer/Management/RegisteredServers/ServerGroupCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/RegisteredServers/xml/RegisteredServer.xml create mode 100644 src/Microsoft/SqlServer/Management/RegisteredServers/xml/RegisteredServersStore.xml create mode 100644 src/Microsoft/SqlServer/Management/RegisteredServers/xml/ServerGroup.xml create mode 100644 src/Microsoft/SqlServer/Management/RegisteredServers/xml/inc_urn.xml create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/AlienSupport.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/CollectionInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/CrudInterfaces.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Differencing/API/DifferencingService.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Differencing/API/IDifferencer.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Differencing/API/IDiffgram.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Differencing/Differencing.vsmdi create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Differencing/Impl/Differencer.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Differencing/Impl/Diffgram.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Differencing/LocalTestRun.testrunconfig create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Differencing/SPI/MetadataNodeItemNamesProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Differencing/SPI/ProviderRegistry.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Differencing/SPI/Providers.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Differencing/StringDifferencing.strings create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/AstNode.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/Axis.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/ConditionedSql.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/DataProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/Depedencies.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/EnumObject.CS create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/EnumeratorException.CS create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/Enviroment.CS create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/Filter.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/FilterNode.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/FilterTranslate.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/Function.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/FxCopExclusions.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/Group.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/ObjectCache.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/ObjectInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/ObjectLoadInfoManager.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/ObjectProperty.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/Operand.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/Operator.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/PostProcess.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/RequestDependencies.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/RequestObjectInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/RequestParentSelect.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/Root.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/SqlConditionedStatement.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/SqlLinkMultiple.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/SqlObject.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/SqlObjectBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/SqlObjectProperty.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/SqlParentLink.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/SqlPostProcess.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/SqlPropertyLink.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/SqlRequest.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/Util.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/XPathException.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/XPathExpresionBlock.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/XPathHandler.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/XPathNodeType.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/XPathScanner.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/XmlCharType.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/XmlRead.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/XmlUtil.CS create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/enumerator.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/enumresult.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/executesql.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/filterdecoder.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/interfaces.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/request.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/sqlenumresult.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/statementbuilder.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/urn.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/xml/Config.xml create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Enumerator/xpathexpresion.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Exception.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/FxCopExclusions.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/ISfcDomain.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/ISfcExecutionEngine.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/ISfcNotifyPropertyChanged.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/ISfcProperty.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/ISfcPropertyProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/ISfcPropertySet.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/ISfcScriptCollector.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/ISfcSimpleNode.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/ISfcStorageProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/ISfcSupportsDesignMode.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/ISfcscript.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/LocalizableTypeConverter.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Microsoft.SqlServer.Management.Sdk.Sfc.csproj create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/NetCoreExtension.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/NonSfcObjectIterator.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/ReadOnlyDictionary.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/ReadOnlyList.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/ReadonlyInterfaces.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SQLToolsOutputDebugStringListener.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SQLToolsTraceListenerCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Serializer.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcApplication.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcAttributes.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcCache.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcCollatedDictionaryBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcConnection.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcDependency.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcDictionaryBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcExecutionEngine.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcInstance.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcKey.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcListBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcMetadata.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcMetadataException.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcObjectExtender.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcObjectFactory.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcObjectIterator.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcObjectQuery.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcPath.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcProperty.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcQueryExpression.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcReferenceCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcRegistration.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcSerializationAdapter.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcSerializerUpgrade.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcSimpleNode.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcSimpleNodeAdapter.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcStrings.strings create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcTsqlProcFormatter.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SfcValidation.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SmoManagementUtil.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/SqlStoreConnection.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/TraceHelper.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/TypeMetadata.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/Util.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/XmlTextReader.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/connectionhelpers.cs create mode 100644 src/Microsoft/SqlServer/Management/Sdk/Sfc/dmf.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/FxCopExclusions.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/Microsoft.SqlServer.ServiceBrokerEnum.csproj create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/ServiceBrokerEnum.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/ServiceBrokerSqlObject.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/xml/BrokerPriority.xml create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/xml/BrokerService.xml create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/xml/MessageType.xml create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/xml/MessageTypeMapping.xml create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/xml/RemoteServiceBinding.xml create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/xml/ServiceBroker.xml create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/xml/ServiceContract.xml create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/xml/ServiceContractMapping.xml create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/xml/ServiceQueues.xml create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/xml/ServiceRoute.xml create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/xml/inc_ext_prop.xml create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/xml/inc_policy_health_state.xml create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/xml/inc_urn.xml create mode 100644 src/Microsoft/SqlServer/Management/Smo.Broker/xml/inc_urn_schema.xml create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/Backup.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/BackupEncryptionOptions.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/BackupRestoreBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/DataTransferBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/DatabaseRestorePlanner.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/DatabaseRestorePlannerSR.strings create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/DependencyObject.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/Microsoft.SqlServer.SmoExtended.csproj create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/NetCoreHelpers.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/PageRestorePlanner.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/Prefetch.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/Restore.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/RestoreOptions.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/RestorePlan.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/Transfer.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/TransferBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Extended/TransferWriter.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Notebook/CellModel.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Notebook/CodeCellModel.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Notebook/MarkdownCellModel.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Notebook/Microsoft.SqlServer.Smo.Notebook.csproj create mode 100644 src/Microsoft/SqlServer/Management/Smo.Notebook/NotebookFileWriter.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Notebook/NotebookModel.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Notebook/SmoNotebook.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/Crypto.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/Delegates.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/EnumRegisteredServer.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/FxCopExclusions.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/GroupRegistrationInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/Microsoft.SqlServer.RegSvrEnum.csproj create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/ParentRegistrationInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/RegServersException.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/RegistrationInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/RegistrationInfoCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/RegistrationProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/SRError.strings create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/ServerInstanceRegistrationInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/ServerTypeRegistrationInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/Tracing.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/UIConnectionGroupInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/UIConnectionInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.RegSvrEnum/Utils.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/ClientProtocol.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/ClientProtocolBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/Collections/ClientProtocolCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/Collections/ServerIPAddressCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/Collections/ServerInstanceCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/Collections/ServerProtocolCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/Collections/ServiceAliasCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/Collections/ServiceCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/ManagedComputer.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/Microsoft.SqlServer.SqlWmiManagement.csproj create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/ProtocolBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/ProtocolPropertyCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/ServerAlias.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/ServerAliasBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/ServerIPAddress.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/ServerIPAddressBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/ServerInstance.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/ServerInstanceBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/ServerProtocol.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/ServerProtocolBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/Service.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/ServiceBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/WmiCollectionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/WmiCollectionTemplate.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/WmiMgmt.strings create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/WmiSmoObject.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.Wmi/coll_macros.h create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/CNetLibInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/ClientProtocol.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/ClientProtocolProperties.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/FxCopExclusions.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/ManagedComputer.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/Microsoft.SqlServer.WmiEnum.csproj create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/ProtocolPropertiesBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/SAlias.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/ServerInstance.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/ServerProtocol.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/ServerProtocolIPAddress.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/ServerProtocolIPAddressProperty.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/ServerProtocolProperties.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/Service.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/ServiceAdvancedProperty.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/StringWmiEnumerator.strings create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/WmiBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/WmiEnum.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/WmiProperty.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/wmienumresult.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo.WmiEnum/wmirequest.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AbstractCollectionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AffinityInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AffinityInfoBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AffinityInfoCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AlertBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AlertCategoryBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AlertSystemBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Application.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ApplicationRoleBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AsymmetricKeyBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AuditBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AuditExtender.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AuditSpecification.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AvailabilityDatabaseBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AvailabilityGroupBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AvailabilityGroupListenerBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AvailabilityGroupListenerIPAddressBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AvailabilityGroupListenerIPAddressCollectionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/AvailabilityReplicaBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/BackupDeviceBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/BackupMedia.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/BackupSet.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/BackupSetCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/BrokerLocalizableResources.strings create mode 100644 src/Microsoft/SqlServer/Management/Smo/BrokerPriorityBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/BrokerServiceBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/CPUBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/CategoryBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/CertificateBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/CheckBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/CollationInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/CollectionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/AlertCategoryCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/AlertCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ApplicationRoleCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/AsymmetricKeyCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/AuditCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/AvailabilityDatabaseCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/AvailabilityGroupCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/AvailabilityGroupListenerCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/AvailabilityGroupListenerIPAddressCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/AvailabilityReplicaCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/BackupDeviceCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/BrokerPriorityCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/BrokerServiceCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/CertificateCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/CheckCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ColumnCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ColumnEncryptionKeyCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ColumnEncryptionKeyValueCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ColumnMasterKeyCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ConfigurationValueCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/CredentialCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/CryptographicProviderCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/DataFileCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/DatabaseAuditSpecificationCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/DatabaseCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/DatabaseDdlTriggerCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/DatabaseReplicaStateCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/DatabaseRoleCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/DatabaseScopedConfigurationCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/DatabaseScopedCredentialCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/DefaultCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/EdgeCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/EdgeConstraintClauseCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/EdgeConstraintCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/EndpointCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ExtendedPropertyCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ExtendedStoredProcedureCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ExternalDataSourceCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ExternalFileFormatCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ExternalLanguageCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ExternalLanguageFileCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ExternalLibraryCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ExternalResourcePoolCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ExternalStreamCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ExternalStreamingJobCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/FileGroupCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ForeignKeyCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ForeignKeyColumnCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/FullTextCatalogCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/FullTextIndexColumnCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/FullTextStopListCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/IndexCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/IndexedColumnCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/IndexedXmlPathCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/IndexedXmlPathNamespaceCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/JobCategoryCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/JobScheduleCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/JobStepCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/LanguageCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/LinkedServerCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/LinkedServerLoginCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/LogFileCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/LoginCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/MailAccountCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/MailProfileCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/MailServerCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/MessageTypeCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/MessageTypeMappingCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/NumberedStoredProcedureCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/NumberedStoredProcedureParameterCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/OleDbProviderSettingsCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/OperatorCategoryCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/OperatorCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/OrderColumnCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/PartitionFunctionCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/PartitionFunctionParameterCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/PartitionSchemeCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/PartitionSchemeParameterCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/PhysicalPartitionCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/PlanGuideCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ProxyAccountCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/RemoteServiceBindingCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ResourcePoolCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ResumableIndexCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/RuleCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/SchemaCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/SearchPropertyCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/SearchPropertyListCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/SecurityPolicyCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/SecurityPredicateCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/SequenceCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ServerAuditSpecificationCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ServerDdlTriggerCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ServerRoleCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ServiceContractCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ServiceContractMappingCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ServiceQueueCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ServiceRouteCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/SoapPayloadMethodCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/SqlAssemblyCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/SqlAssemblyFileCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/StatisticCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/StatisticColumnCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/StoredProcedureCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/StoredProcedureParameterCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/SymmetricKeyCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/SynonymCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/SystemDataTypeCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/SystemMessageCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/TableCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/TargetServerCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/TargetServerGroupCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/TriggerCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/UserCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/UserDefinedAggregateCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/UserDefinedAggregateParameterCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/UserDefinedDataTypeCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/UserDefinedFunctionCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/UserDefinedFunctionParameterCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/UserDefinedMessageCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/UserDefinedTableTypeCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/UserDefinedTypeCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/ViewCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/WorkloadGroupCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/WorkloadManagementWorkloadClassifierCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/WorkloadManagementWorkloadGroupCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Collections/XmlSchemaCollectionCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ColumnBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ColumnEncryptionKeyBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ColumnEncryptionKeyValueBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ColumnEncryptionKeyValueCollectionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ColumnMasterKeyBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ConfigProperty.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Configuration.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ConfigurationBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ConfigurationValueBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ContractExtender.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/CredentialBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/CryptographicProviderBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DataClassificationScriptGenerator.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DataEnumerator.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DataScriptCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DataType.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DatabaseAuditSpecificationExtender.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DatabaseAuditSpecificationbase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DatabaseBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DatabaseDdlTriggerBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DatabaseEncryptionKeyBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DatabaseEncryptionKeyExtender.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DatabaseFileMappingsDictionary.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DatabaseMirroringPayloadBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DatabaseOptionsBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DatabasePrefetch.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DatabaseReplicaStateBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DatabaseReplicaStateCollectionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DatabaseRoleBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DatabaseScopedConfigurationBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DatabaseScopedCredentialBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DdlTriggerBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DefaultBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DefaultConstraintBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DefaultRuleBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DependencyList.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DependencyTree.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DependencyWalker.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/DistributionColumnBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/EdgeConstraintBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/EdgeConstraintClauseBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/EndpointBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/EnumerableContainer.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/EnumeratorContainer.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ExceptionTemplates.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ExceptionTemplatesImpl.strings create mode 100644 src/Microsoft/SqlServer/Management/Smo/ExecutionManager.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ExtendedPropertyBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ExtendedStoredProcedureBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ExtensionClass.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ExternalDataSourceBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ExternalFileFormatBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ExternalLanguageBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ExternalLanguageFileBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ExternalLibraryBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ExternalLibraryFileBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ExternalResourcePoolAffinityInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ExternalResourcePoolBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ExternalStreamBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ExternalStreamingJobBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/FacetSR.strings create mode 100644 src/Microsoft/SqlServer/Management/Smo/Facets/AvailabilityGroupState.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Facets/DatabaseAdapter.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Facets/DatabaseMaintenance.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Facets/DatabasePerformance.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Facets/DatabaseSecurity.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Facets/MultiPartName.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Facets/Name.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Facets/ServerAdapter.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Facets/ServerAudit.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Facets/ServerConfiguration.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Facets/ServerPerformance.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Facets/ServerSecurity.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Facets/ServerSelection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Facets/ServerSetup.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Facets/ServerSurfaceArea.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Facets/SmartAdminState.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/FilePerObjectWriter.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ForeignKeyBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ForeignKeyColumnBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/FullTextCatalogBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/FullTextIndexBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/FullTextIndexColumnBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/FullTextServiceBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/FullTextStopListBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/FxCopExclusions.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/HttpProtocolBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/IDatabaseOptions.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ILoginOptions.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/IServerInformation.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/IServerSettings.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ITableOptions.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/IUserOptions.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/IViewOptions.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/IndexBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/IndexScripter.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/IndexedColumnBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/IndexedXmlPathBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/IndexedXmlPathNamespaceBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/InformationBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/JobBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/JobCategoryBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/JobScheduleBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/JobScheduleCollectionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/JobServerBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/JobStepBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/KeyEncryptionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/LanguageBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/LinkedServerBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/LinkedServerLoginBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/LocalizableResources.strings create mode 100644 src/Microsoft/SqlServer/Management/Smo/LoginBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/MailAccountBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/MailProfileBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/MailServerBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/MasterKeyBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/MessageCollectionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/MessageObjectBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/MessageTypeBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/MessageTypeMappingBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Microsoft.SqlServer.Smo.csproj create mode 100644 src/Microsoft/SqlServer/Management/Smo/ModuleSuppressions.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/NetCoreHelpers.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/NumaNodeBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/NumberedCollectionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/OleDbProviderSettingsBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/OperatorBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/OperatorCategoryBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/OrderColumnBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ParamBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ParameterCollectionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/PartitionFunctionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/PartitionFunctionParameterBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/PartitionSchemeBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/PartitionSchemeParameterBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/PhysicalPartitionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/PhysicalPartitionCollectionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/PlanGuideBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/PlanGuideExtender.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ProxyAccountBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/QueryStoreOptions.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/RemoteDataArchiveMigrationState.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/RemoteDataArchiveMigrationStatusReport.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/RemoteDatabaseMigrationStatistics.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/RemoteServiceBindingBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/RemoteTableMigrationStatistics.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ResourceGovernorBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ResourcePoolAffinityInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ResourcePoolBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ResumableIndexBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/RuleBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SchedulerBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SchemaBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SchemaCollectionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ScriptContainer.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ScriptContainerFactory.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ScriptMaker.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ScriptNameObjectBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ScriptSchemaObjectBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ScriptStringBuilder/IScriptStringBuilderParameter.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ScriptStringBuilder/ParameterValueFormat.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ScriptStringBuilder/ScriptStringBuilder.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ScriptStringBuilder/ScriptStringBuilderObjectParameter.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ScriptStringBuilder/ScriptStringBuilderParameter.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/Scripter.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ScriptingInterfaces.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ScriptingOptions.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ScriptingPreferences.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SearchPropertyBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SearchPropertyListBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SearchPropertyListConstants.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SearchPropertyListExtender.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SearchPropertyListValidator.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SecurityPolicyBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SecurityPredicateBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SecurityPredicateCollectionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SecurityUtils.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SequenceBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SequenceExtender.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SerializationAdapters.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ServerAuditSpecificationExtender.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ServerAuditSpecificationbase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ServerDdlTriggerBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ServerEventsWorker.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ServerProxyAccountBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ServerRoleBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ServerRoleExtender.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ServiceBrokerBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ServiceBrokerExtender.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ServiceBrokerPayloadBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ServiceContractBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ServiceContractMappingBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ServiceMasterKeyBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ServiceQueueBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ServiceRouteBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ServiceType.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SettingsBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SfcResolver.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SingleFileWriter.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SingleFileWriterBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SmartAdminBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SmoArrayList.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SmoCollectionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SmoComparer.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SmoDependencyDiscoverer.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SmoDependencyOrderer.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SmoDiffAdapters.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SmoObjectBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SmoSet.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SmoSortedList.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SmoStringWriter.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SmoUrnFilter.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SmoUtility.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SoapMethodCollectionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SoapMethodObject.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SoapPayloadBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SoapPayloadMethodBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SqlAssemblyBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SqlAssemblyFileBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SqlMailBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SqlSmoObject.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/StatisticBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/StatisticColumnBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SymmetricKeyBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SynonymBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SystemDataTypeBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/SystemMessageBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/TableViewBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/TableViewTableTypeBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/TargetServerBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/TargetServerGroupBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/TcpProtocolBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/TestModel.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/TraceHelper.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/TriggerBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/UserBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/UserDefinedAggregateBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/UserDefinedAggregateParameterBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/UserDefinedFunctionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/UserDefinedMessageBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/UserDefinedTableTypebase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/UserDefinedTypeBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/UserOptionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/UserPermission.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/UserPermissionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/UserPermissionCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/VersionUtils.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ViewBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/WorkloadGroupBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/WorkloadManagementWorkloadClassifierBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/WorkloadManagementWorkloadGroupBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/XmlSchemaCollectionBase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/availability_group_listener_ipaddress_generic_collection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/coll_macros.h create mode 100644 src/Microsoft/SqlServer/Management/Smo/columnencryptionkeyvalue_generic_collection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/database_replica_state_generic_collection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/databasesnapshotextender.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/dmf.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/enumerations.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/exception.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/files.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/generic_collection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/message_generic_collection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/numbered_generic_collection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/numberedstoredprocedurebase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/ordinal_generic_collection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/param_generic_collection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/permissionInterfaces.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/permissionOptions.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/permissionWorker.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/physicalpartitionsegment_generic_collection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/properties.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/propertiesCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/propertiesMetadata.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/schedule_generic_collection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/schema_generic_collection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/script_patterns.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/securitypredicate_generic_collection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/serverbase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/smoobjectextender.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/soapmethod_generic_collection.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/sqlexec.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/storedprocedurebase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/tablebase.cs create mode 100644 src/Microsoft/SqlServer/Management/Smo/uddtbase.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/ApplicationRole.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/AsymmetricKey.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/Certificate.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/CheckConstraint.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/Column.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/Config.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/ConnectedSmoMetadataProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/Credential.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/Database.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/DatabaseDdlTrigger.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/DatabaseObject.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/DatabaseObjectBase.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/DatabaseOwnedObject.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/DatabasePermission.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/DatabasePrincipal.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/DatabaseRole.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/DefaultConstraint.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/DisconnectedSmoMetadataProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/DmlTrigger.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/ExtendedStoredProcedure.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/ForeignKeyConstraint.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/ISmoDatabaseObject.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/Index.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/Login.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/Microsoft.SqlServer.Management.SmoMetadataProvider.csproj create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/PrimaryKeyConstraint.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/RelationalIndex.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/ScalarValuedFunction.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/Schema.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/SchemaOwnedModule.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/SchemaOwnedObject.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/Server.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/ServerDdlTrigger.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/ServerOwnedObject.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/SmoBuiltInFunctionLookup.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/SmoCollationLookup.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/SmoMetadataFactory.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/SmoMetadataProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/SmoSystemDataTypeLookup.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/SpatialIndex.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/Statistics.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/StoredProcedure.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/Synonym.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/Table.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/TableValuedFunction.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/TableViewBase.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/TableViewTableTypeBase.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/TraceHelper.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/UniqueConstraint.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/UniqueConstraintBase.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/User.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/UserDefinedAggregate.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/UserDefinedClrType.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/UserDefinedDataType.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/UserDefinedFunction.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/UserDefinedTableType.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/Utils.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/View.cs create mode 100644 src/Microsoft/SqlServer/Management/SmoMetadataProvider/XmlIndex.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlAssessment/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlAssessment/Microsoft.SqlServer.Management.Assessment.csproj create mode 100644 src/Microsoft/SqlServer/Management/SqlAssessment/SqlAssessmentExtensions.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/AvailableSQLServers.CS create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/ConditionedSql.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/DataProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/DatabaseLevel.CS create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/DatabaseOption.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/DdlParser.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/EventSetBase.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/FxCopExclusions.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/Microsoft.SqlServer.SqlEnum.csproj create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/PostProcess.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/PostProcessAuditProperties.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/PostProcessCreateDateTime.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/PostProcessDatabaseInsideAttribs.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/PostProcessEvents.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/PostProcessFile.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/PostProcessOwner.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/PostProcessParam.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/PostProcessRemoteDataArchiveDatabaseProperties.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/PostProcessTable.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/PostProcessText.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/PostProcessUser.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/PostProcessVersion.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/PostProcessWithRowCaching.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/PostProcessXml.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/QueryIsolation.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/RequestParentSelect.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/Server.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/SqlConditionedStatement.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/SqlEnumDependencies.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/SqlEnumNetCoreExtension.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/SqlEnumStatementBuilderTestHook.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/SqlLinkMultiple.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/SqlObject.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/SqlObjectBase.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/SqlObjectProperty.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/SqlObjectUnion.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/SqlParentLink.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/SqlPostProcess.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/SqlPropertyLink.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/SqlRequest.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/SqlUtil.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/StringSqlEnumerator.strings create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/TypeConverters.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/Util.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/XmlRead.CS create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/diskfile.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/enumstructs.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/executesql.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/permenum.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/primaryfile.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/restoreplan.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/sqlenumresult.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/sqlsecurestring.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/statementbuilder.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/AditionalParameters.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/AffinityInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/AgentPerfInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/AgentSubSystems.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/AlertNotification.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ApplicationRole.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/AsymmetricKey.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Audit.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/AvailabilityDatabase.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/AvailabilityGroup.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/AvailabilityGroupListener.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/AvailabilityGroupListenerIPAddress.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/AvailabilityReplica.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/AvailableMedia.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/BackupDevice.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/BoundColumn.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/CdromDrive.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/CloudDependency.sql create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ClusterMemberState.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ColumnEncryptionKey.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ColumnEncryptionKeyValue.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ColumnMasterKey.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ComputedText.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Configuration.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ConfigurationValue.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Connection.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Credential.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/CryptographicProvider.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Database.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DatabaseAuditSpecification.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DatabaseAuditSpecificationDetail.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DatabaseDdlTrigger.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DatabaseDdlTriggerEvent.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DatabaseDiagram.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DatabaseEncryptionKey.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DatabaseLocks.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DatabaseMappings.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DatabaseMasterKey.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DatabaseMirroringWitnessRole.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DatabaseOptions.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DatabaseReplicaState.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DatabaseRole.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DatabaseRoleMember.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DatabaseScopedConfiguration.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DatabaseScopedCredential.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DbExtendedProperty.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Default.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DefaultColumn.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DefaultConstrain.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DefaultDatatype.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DiskFile.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/DistributionColumn.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Drive.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ErrorLog.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ErrorLogText.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ExternalDataSource.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ExternalFileFormat.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ExternalLanguage.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ExternalLanguageFile.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ExternalLibrary.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ExternalLibraryFile.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ExternalResourcePool.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ExternalResourcePoolAffinityInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ExternalStream.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ExternalStreamingJob.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/FKColumn.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/File.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/FileGroup.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/FixedDrive.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ForeignKey.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/FullTextCatalog.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/FullTextFile.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/FullTextIndex.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/FullTextIndexColumn.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/FullTextLanguage.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/FullTextService.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/FullTextStopList.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/FulltextSemanticLanguage.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/IndexFragDetail.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/IndexFragFast.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/IndexFragSampled.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/IndexedColumn.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/IndexedXmlPath.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/IndexedXmlPathNamespace.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Information.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Job.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/JobServer.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/JobStepOutputLog.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/KatmaiDependency.sql create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/KeyEncryption.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Lock.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/LogFile.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/LogMarkHistory.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Mail.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/MailAccount.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/MailProfile.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/MailProfileAccounts.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/MailProfilePrincipals.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/MailServer.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Mail_ErrorLog.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/MaintSubPlanLog.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/MaintSubPlanLogDetail.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/MaintenancePlan.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/MaintenancePlanDeprecated.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/MaintenanceSubPlan.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/MasterKeyEncryption.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Member.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NTGroup.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NTLogin.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/Application.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/ApplicationDatabaseFile.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/ApplicationDatabaseFileGroup.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/ApplicationDatabaseLogFile.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/ApplicationDatabaseOptions.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/ContentFormatter.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/ContentFormatterArgument.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/DeliveryChannel.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/DeliveryChannelArgument.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/Distributor.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/EventChronicle.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/EventChronicleRule.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/EventClass.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/EventField.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/Generator.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/HostedEventProvider.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/HostedEventProviderArgument.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/Instance.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/InstanceDatabaseFile.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/InstanceDatabaseFileGroup.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/InstanceDatabaseLogFile.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/InstanceDatabaseOptions.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/NonHostedEventProvider.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/NotificationClass.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/NotificationClassProtocol.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/NotificationComputedField.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/NotificationField.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/NotificationServices.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/ProtocolDefinition.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/ProtocolField.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/ProtocolRetrySchedule.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/SubscriptionChronicle.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/SubscriptionClass.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/SubscriptionConditionEventRule.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/SubscriptionConditionScheduledRule.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/SubscriptionEventRule.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/SubscriptionField.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/SubscriptionScheduledRule.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NotificationServices/VacuumSchedule.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NumberedSPParams.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/NumberedStoredProcedure.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/OLEDBProvProp.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/OLEDBProvider.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/OLEDBProviderSetting.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/OperatorJobNotification.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/OperatorNotification.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/OrderColumn.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/PartitionFunction.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/PartitionFunctionParameter.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/PartitionFunctionRangeValue.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/PartitionScheme.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/PartitionSchemeFileGroup.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/PartitionSchemeParameter.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/PerfInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/PhysicalPartition.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/PlanGuide.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Process.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ProxyAccount.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ProxyAccountPrincipals.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/QueryStoreOptions.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/README.md create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/RemoteDrive.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/RemoteMaintenancePlan.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/RemotePlanLog.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/RemotePlanLogDetail.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/RemoteSubPlan.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/RemovableDrive.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ReplicaClusterNode.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ResourceGovernor.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ResourcePool.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ResourcePoolAffinityInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ResourcePoolScheduler.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Rule.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/RuleColumn.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/RuleDatatype.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/SPParams.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/SPPerm.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/SQL11Dependency.sql create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Schema.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/SearchProperty.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/SearchPropertyList.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/SecurityPolicy.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/SecurityPredicate.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ServerAuditSpecification.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ServerAuditSpecificationDetail.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ServerDdlTrigger.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ServerDdlTriggerEvent.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ServerProxyAccount.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ServerRole.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Settings.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/ShilohDependency.sql create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/SmartAdmin.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/SqlAssembly.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/SqlAssemblyFile.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/SqlBoot.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/StatisticColumn.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/StoredProcedure.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/SymmetricKey.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/TablePerm.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/TapeDevice.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Text.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/UDF.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/UDFParams.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/UserDefinedAggregate.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/UserDefinedAggregateParameter.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/UserDefinedTableType.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/UserDefinedType.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/UserMessage.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/UserOption.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/WorkloadGroup.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/WorkloadManagementWorkloadClassifier.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/WorkloadManagementWorkloadGroup.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/XStoredProcedure.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/XmlNamespace.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/XmlSchemaCollection.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/YukonDependency.sql create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/Yukonuserownedobject.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/YukonuserownedobjectSchema.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/agent_ErrorLog.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/agent_ErrorLogText.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/agent_alert.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/agent_alert_categories.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/agent_alertsystem.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/agent_job_categories.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/agent_jobalert.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/agent_jobhistory.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/agent_jobschedule.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/agent_jobtargetservers.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/agent_operator.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/agent_operator_categories.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/agent_targetserver.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/agent_targetservergroup.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/agent_targetservermember.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/backupfile.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/backupmediafamily.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/backupmediaset.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/backupset.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/certificate.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/check.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/clusterSubnet.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/collation.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/column.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/edgeconstraint.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/edgeconstraintclause.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/endpoint/database_mirroring_endpoint.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/endpoint/endpoint.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/endpoint/http_endpoint.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/endpoint/service_broker_endpoint.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/endpoint/soap_endpoint.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/endpoint/soap_endpoint_method.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/endpoint/tcp_endpoint.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/endpoint/via_endpoint.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/extendedproperty/ExtendedProperty.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/extendedproperty/Level0ExtendedProperty.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/extendedproperty/Level1ExtendedProperty.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/extendedproperty/Level2ExtendedProperty.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/extendedproperty/Level2IndexExtendedProperty.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/extendedproperty/inc_level2SupportProperties.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/extendedproperty/inc_shilohExtendedProperty.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/fulltext_ErrorLog.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/fulltext_ErrorLogText.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_DbFile.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_DefaultRule_column.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_IndexFrag.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_assembly_module_link.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_column_reference.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_constraint.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_ddl_trigger_event.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_fulltext.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_hadr_policy_health_state.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_hadr_setting.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_named_object.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_object.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_objprop_table_view.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_partition_scheme_parent.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_policy_health_state.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_ruledef80.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_server.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_server_sql_module_link.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_sql_module.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_sql_module_JustText.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_storage.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_system_object.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_system_table_view_sp_udf.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_text.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_type.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_type_reference.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_urn.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_urn_collate_default.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_urn_message.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_urn_schema.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_urn_single.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/inc_urn_soapmethod.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/include/mixed_module_link.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/include/parameter.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/include/sql_module_link.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/index.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/jobstep.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/language.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/linkedserver.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/linkedservercatalog.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/linkedserverlogin.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/linkedservertable.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/linkedserverview.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/login.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/perm/ColumnPerm.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/perm/DBObjectPerm.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/perm/DBPerm.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/perm/ShilohYukonPerm.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/perm/SrvObjectPerm.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/perm/SrvYukonObjectPerm.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/perm/SrvYukonPerm.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/perm/TablePerm.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/perm/YukonObjectPerm.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/perm/YukonSchemaObjectPerm.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/perm/dbfixedroleperm.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/perm/inc_perm.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/primarychildren.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/primaryfile.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/restore_plan.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/restorefile.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/restorefilegroup.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/restorehistory.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/resumableindex.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/schedule.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/sdt.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/sequence.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/server.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/servicemasterkey.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/sharedschedule.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/statistic.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/synonym.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/sysmessage.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/table.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/temp_table.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/transaction.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/trigger.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/uddt.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/udfcolumn.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/user.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/view.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlEnum/xml/xmltype.xml create mode 100644 src/Microsoft/SqlServer/Management/SqlScriptPublish/IScriptPublishOptions.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlScriptPublish/Microsoft.SqlServer.Management.SqlScriptPublish.csproj create mode 100644 src/Microsoft/SqlServer/Management/SqlScriptPublish/SR.strings create mode 100644 src/Microsoft/SqlServer/Management/SqlScriptPublish/SqlQueryHandler.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlScriptPublish/SqlScriptGenerator.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlScriptPublish/SqlScriptOptions.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlScriptPublish/SqlScriptOptionsSR.strings create mode 100644 src/Microsoft/SqlServer/Management/SqlScriptPublish/SqlScriptPublishEnums.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlScriptPublish/SqlScriptPublishException.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlScriptPublish/SqlScriptPublishModel.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlScriptPublish/SqlScriptPublishModelTraceHelper.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlScriptPublish/SqlTransferOptions.cs create mode 100644 src/Microsoft/SqlServer/Management/SqlScriptPublish/TableSelectStatement.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/Microsoft.SqlServer.Management.XEvent.csproj create mode 100644 src/Microsoft/SqlServer/Management/XEvent/Server/ProviderConstants.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/Server/ServerEventProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/Server/ServerSessionProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/Server/ServerTargetProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/Server/ServerXEStore.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/Server/ServerXEStoreProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/Action.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/ActionCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/ActionInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/ActionInfoCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/Constants.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/DataEventColumnInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/DataEventColumnInfoCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/Event.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/EventCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/EventColumnInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/EventColumnInfoCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/EventField.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/EventFieldCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/EventInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/EventInfoCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/ExceptionTemplates.strings create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/MapInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/MapInfoCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/MapValueInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/MapValueInfoCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/NetCoreHelpers.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/Package.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/PackageCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/PredCompareExpr.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/PredCompareInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/PredCompareInfoCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/PredExpr.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/PredFunctionExpr.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/PredLogicalExpr.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/PredOperand.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/PredSourceInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/PredSourceInfoCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/PredValue.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/Predicate.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/ProviderInterfaces.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/ReadOnlyEventColumnInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/ReadOnlyEventColumnInfoCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/Session.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/SessionCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/SessionProviderBase.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/Target.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/TargetCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/TargetColumnInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/TargetColumnInfoCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/TargetField.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/TargetFieldCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/TargetInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/TargetInfoCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/TraceHelper.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/TypeInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/TypeInfoCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/XEObjectInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/XEObjectInfoCollection.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/XEStore.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/XEStoreObjectMetadata.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/XEStoreSessionHelpers.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/XEUtils.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/XEventException.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/XsdResource.Designer.cs create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/XsdResource.resx create mode 100644 src/Microsoft/SqlServer/Management/XEvent/core/xeconfig.xsd create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScoped/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScoped/Constants.cs create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScoped/DatabaseEventProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScoped/DatabaseSessionProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScoped/DatabaseTargetProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScoped/DatabaseXEStore.cs create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScoped/DatabaseXEStoreProvider.cs create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScoped/ExceptionTemplates.strings create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScoped/Microsoft.SqlServer.Management.XEventDbScoped.csproj create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScoped/NetCoreHelpers.cs create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScoped/ProviderConstants.cs create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScoped/XsdResource.Designer.cs create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScoped/XsdResource.resx create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/Microsoft.SqlServer.Management.XEventDbScopedEnum.csproj create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/XEStoreObject.cs create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/XEventObject.cs create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/Action.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/ActionInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/DataEventColumnInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/Event.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/EventColumnInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/EventField.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/EventInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/MapInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/MapValueInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/Package.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/PredCompareInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/PredSourceInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/ReadOnlyEventColumnInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/Session.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/Target.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/TargetColumnInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/TargetField.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/TargetInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/TypeInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/XEStore.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventDbScopedEnum/xml/inc_urn.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/Microsoft.SqlServer.Management.XEventEnum.csproj create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/XEventObject.cs create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/Action.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/ActionInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/DataEventColumnInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/Event.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/EventColumnInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/EventField.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/EventInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/MapInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/MapValueInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/Package.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/PredCompareInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/PredSourceInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/ReadOnlyEventColumnInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/Session.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/Target.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/TargetColumnInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/TargetField.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/TargetInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/TypeInfo.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/XEStore.xml create mode 100644 src/Microsoft/SqlServer/Management/XEventEnum/xml/inc_urn.xml create mode 100644 src/Microsoft/SqlServer/SqlClrProvider/AssemblyInfo.cs create mode 100644 src/Microsoft/SqlServer/SqlClrProvider/FxCopExclusions.cs create mode 100644 src/Microsoft/SqlServer/SqlClrProvider/Microsoft.SqlServer.SqlClrProvider.csproj create mode 100644 src/Microsoft/SqlServer/SqlClrProvider/SqlClrProvider.cs create mode 100644 src/Microsoft/dirs.proj create mode 100644 src/TestReferences.proj create mode 100644 src/UnitTest/Common/UnitTestBase.cs create mode 100644 src/UnitTest/ConnectionInfo/ConnectionSettingsTests.cs create mode 100644 src/UnitTest/ConnectionInfo/LocalizableTypeConverterTests.cs create mode 100644 src/UnitTest/ConnectionInfo/Microsoft.SqlServer.Test.ConnectionInfoUnitTests.csproj create mode 100644 src/UnitTest/ConnectionInfo/ServerConnectionTests.cs create mode 100644 src/UnitTest/ConnectionInfo/ServerInformationTests.cs create mode 100644 src/UnitTest/ConnectionInfo/SqlConnectionInfoTests.cs create mode 100644 src/UnitTest/Directory.Build.props create mode 100644 src/UnitTest/Directory.Build.targets create mode 100644 src/UnitTest/Dmf/ExpressionTreeTests.cs create mode 100644 src/UnitTest/Dmf/FacetTests.cs create mode 100644 src/UnitTest/Dmf/Microsoft.SqlServer.Test.DmfUnitTests.csproj create mode 100644 src/UnitTest/Dmf/PolicyStoreTests.cs create mode 100644 src/UnitTest/Dmf/TestData/ExpressionTree_OperatorNodes.xml create mode 100644 src/UnitTest/Notebook/Microsoft.SqlServer.Test.SmoNotebookUnitTests.csproj create mode 100644 src/UnitTest/Notebook/ModelTests.cs create mode 100644 src/UnitTest/Notebook/NotebookFileWriterTests.cs create mode 100644 src/UnitTest/Notebook/SmoNotebookTests.cs create mode 100644 src/UnitTest/RegSvrEnum/Microsoft.SqlServer.Test.RegSvrEnumUnitTests.csproj create mode 100644 src/UnitTest/RegSvrEnum/RegistrationInfoTests.cs create mode 100644 src/UnitTest/RegSvrEnum/UIConnectionInfoTests.cs create mode 100644 src/UnitTest/RegisteredServers/AdsTests.cs create mode 100644 src/UnitTest/RegisteredServers/Microsoft.SqlServer.Test.RegisteredServersUnitTests.csproj create mode 100644 src/UnitTest/RegisteredServers/RegisteredServersTests.cs create mode 100644 src/UnitTest/RegisteredServers/TstRegSrvr.xml create mode 100644 src/UnitTest/RegisteredServers/sample.json create mode 100644 src/UnitTest/Sfc/FilterNodeTests.cs create mode 100644 src/UnitTest/Sfc/Microsoft.SqlServer.Test.SfcUnitTests.csproj create mode 100644 src/UnitTest/Sfc/SfcSerializerTests.cs create mode 100644 src/UnitTest/Sfc/UrnTests.cs create mode 100644 src/UnitTest/Smo/AffinityInfoTests.cs create mode 100644 src/UnitTest/Smo/DataTypeTests.cs create mode 100644 src/UnitTest/Smo/DatabaseTests.cs create mode 100644 src/UnitTest/Smo/DdlParserTests.cs create mode 100644 src/UnitTest/Smo/FacetTests.cs create mode 100644 src/UnitTest/Smo/Microsoft.SqlServer.Test.SmoUnitTests.csproj create mode 100644 src/UnitTest/Smo/PathWrapperTests.cs create mode 100644 src/UnitTest/Smo/PermissionDecoderTests.cs create mode 100644 src/UnitTest/Smo/QueryIsolationTests.cs create mode 100644 src/UnitTest/Smo/ScriptStringBuilderTests.cs create mode 100644 src/UnitTest/Smo/SerializationTests.cs create mode 100644 src/UnitTest/Smo/ServerEventsTests.cs create mode 100644 src/UnitTest/Smo/ServerTests.cs create mode 100644 src/UnitTest/Smo/SingleFileWriterTEsts.cs create mode 100644 src/UnitTest/Smo/SqlObjectTests.cs create mode 100644 src/UnitTest/Smo/SqlSmoObjectTests.cs create mode 100644 src/UnitTest/SqlScriptPublish/EnumTests.cs create mode 100644 src/UnitTest/SqlScriptPublish/Microsoft.SqlServer.Test.SqlScriptPublishTests.csproj create mode 100644 src/UnitTest/SqlScriptPublish/SqlScriptOptionsTests.cs create mode 100644 src/UnitTest/SqlScriptPublish/SqlScriptPublishModelTests.cs create mode 100644 src/UnitTest/XEventDbScoped/Microsoft.SqlServer.Test.XEventDbScopedUnitTests.csproj create mode 100644 src/UnitTest/XEventDbScoped/PredValueUnitTest.cs create mode 100644 src/UnitTest/XEventDbScoped/SessionUnitTest.cs create mode 100644 src/UnitTest/XEventDbScoped/TargetUnitTest.cs create mode 100644 src/UnitTest/dirs.proj create mode 100644 src/UnitTest/unittest.runsettings create mode 100644 src/dirs.proj create mode 100644 src/tests.proj diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 00000000..42fa231b --- /dev/null +++ b/.editorconfig @@ -0,0 +1,156 @@ +# top-most EditorConfig file +root = true + +# Don't use tabs for indentation. +[*] +indent_style = space +# (Please don't specify an indent_size here; that has too many unintended consequences.) + +# IDE0073: File header +file_header_template = Copyright (c) Microsoft.\nLicensed under the MIT license. + +# Code files +[*.{cs, sql}] +indent_size = 4 + +# JSON and XML files +[*.{json,xml} ] +indent_size = 2 + + + +[*.cs] +### Dotnet code style settings ### + +# Organize usings +dotnet_separate_import_directive_groups = false +dotnet_sort_system_directives_first = true + +# Avoid "this." if not necessary +dotnet_style_qualification_for_field = false:silent +dotnet_style_qualification_for_property = false:silent +dotnet_style_qualification_for_method = false:silent +dotnet_style_qualification_for_event = false:silent + +# Use language keywords instead of framework type names for type references +dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion +dotnet_style_predefined_type_for_member_access = true:suggestion + +# Parentheses preferences +dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity:silent +dotnet_style_parentheses_in_other_binary_operators = always_for_clarity:silent +dotnet_style_parentheses_in_other_operators = never_if_unnecessary:silent +dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity:silent + +# Modifier preferences +dotnet_style_require_accessibility_modifiers = for_non_interface_members:suggestion + +# Field preferences +dotnet_style_readonly_field = true:suggestion + +# Parameter preferences +dotnet_code_quality_unused_parameters = all:suggestion + +# Expression-level preferences +dotnet_style_coalesce_expression = true:suggestion +dotnet_style_collection_initializer = true:suggestion +dotnet_style_explicit_tuple_names = true:suggestion +dotnet_style_null_propagation = true:suggestion +dotnet_style_object_initializer = true:suggestion +dotnet_style_prefer_auto_properties = true:silent +dotnet_style_prefer_compound_assignment = true:suggestion +dotnet_style_prefer_conditional_expression_over_assignment = true:silent +dotnet_style_prefer_conditional_expression_over_return = true:silent +dotnet_style_prefer_inferred_anonymous_type_member_names = true:suggestion +dotnet_style_prefer_inferred_tuple_names = true:suggestion +dotnet_style_prefer_is_null_check_over_reference_equality_method = true:suggestion +dotnet_style_prefer_simplified_interpolation = true:suggestion + +#### C# Coding Conventions #### + +# Prefer "var" everywhere +csharp_style_var_for_built_in_types = true:silent +csharp_style_var_when_type_is_apparent = true:silent +csharp_style_var_elsewhere = true:silent + +# Prefer method-like constructs to have a block body, except for lambdas +csharp_style_expression_bodied_methods = false:none +csharp_style_expression_bodied_constructors = false:none +csharp_style_expression_bodied_operators = false:none +csharp_style_expression_bodied_local_functions = false:none +csharp_style_expression_bodied_lambdas = true:none + + +# Pattern matching preferences +csharp_style_pattern_matching_over_as_with_null_check = true:suggestion +csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion +csharp_style_prefer_switch_expression = true:suggestion + +# Null-checking preferences +csharp_style_conditional_delegate_call = true:suggestion + +# Modifier preferences +csharp_prefer_static_local_function = true:suggestion +csharp_preferred_modifier_order = public,private,protected,internal,static,extern,new,virtual,abstract,sealed,override,readonly,unsafe,volatile,async:silent + +# Code-block preferences +csharp_prefer_braces = when_multiline:suggestion +csharp_prefer_simple_using_statement = true:suggestion + +# Expression-level preferences +csharp_style_unused_value_assignment_preference = discard_variable:suggestion +csharp_prefer_simple_default_expression = true:suggestion +csharp_style_deconstructed_variable_declaration = true:suggestion +csharp_style_inlined_variable_declaration = true:suggestion +csharp_style_pattern_local_over_anonymous_function = true:suggestion +csharp_style_prefer_index_operator = true:suggestion +csharp_style_prefer_range_operator = true:suggestion +csharp_style_throw_expression = true:suggestion +csharp_style_unused_value_expression_statement_preference = discard_variable:silent + +# 'using' directive preferences +csharp_using_directive_placement = outside_namespace:silent + +#### C# Formatting Rules #### + +# New line preferences +csharp_new_line_before_open_brace = all +csharp_new_line_before_else = true +csharp_new_line_before_catch = true +csharp_new_line_before_finally = true +csharp_new_line_before_members_in_object_initializers = true +csharp_new_line_before_members_in_anonymous_types = true +csharp_new_line_between_query_expression_clauses = true + +# Indentation preferences +csharp_indent_block_contents = true +csharp_indent_braces = false +csharp_indent_case_contents = true +csharp_indent_case_contents_when_block = true +csharp_indent_labels = no_change +csharp_indent_switch_labels = true + +# Space preferences +csharp_space_after_cast = false +csharp_space_after_colon_in_inheritance_clause = true +csharp_space_after_comma = true +csharp_space_after_dot = false +csharp_space_after_keywords_in_control_flow_statements = true +csharp_space_after_semicolon_in_for_statement = true +csharp_space_around_binary_operators = before_and_after +csharp_space_around_declaration_statements = false +csharp_space_before_colon_in_inheritance_clause = true +csharp_space_before_comma = false +csharp_space_before_dot = false +csharp_space_before_open_square_brackets = false +csharp_space_before_semicolon_in_for_statement = false +csharp_space_between_empty_square_brackets = false +csharp_space_between_method_call_empty_parameter_list_parentheses = false +csharp_space_between_method_call_name_and_opening_parenthesis = false +csharp_space_between_method_call_parameter_list_parentheses = false +csharp_space_between_method_declaration_empty_parameter_list_parentheses = false +csharp_space_between_method_declaration_name_and_open_parenthesis = false +csharp_space_between_method_declaration_parameter_list_parentheses = false +csharp_space_between_parentheses = false +csharp_space_between_square_brackets = false + diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 00000000..96dfaa26 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,22 @@ +# Set the default behavior, in case people don't have core.autocrlf set. +* text=auto + +# Use text conventions for commonly used text extensions. +*.csv text +*.ini text +*.json text +*.txt text +*.xml text + +# Denote all files that are truly binary and should not be modified. +*.dll binary +*.exe binary +*.gz binary +*.ico binary +*.jpg binary +*.lib binary +*.pdb binary +*.pdf binary +*.png binary +*.wim binary +*.zip binary diff --git a/.gitignore b/.gitignore index dfcfd56f..e810d394 100644 --- a/.gitignore +++ b/.gitignore @@ -4,18 +4,17 @@ ## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore # User-specific files -*.rsuser *.suo *.user *.userosscache *.sln.docstates +*.out +.vscode/ +*.binlog # User-specific files (MonoDevelop/Xamarin Studio) *.userprefs -# Mono auto generated files -mono_crash.* - # Build results [Dd]ebug/ [Dd]ebugPublic/ @@ -23,58 +22,51 @@ mono_crash.* [Rr]eleases/ x64/ x86/ -[Aa][Rr][Mm]/ -[Aa][Rr][Mm]64/ bld/ [Bb]in/ [Oo]bj/ +[Oo]bjd/ [Ll]og/ +target/ + +# QuickBuild +[Qq][Ll]ocal/ +[Qq][Ll]ogs/ +__cache[Oo]utput/ [Ll]ogs/ -# Visual Studio 2015/2017 cache/options directory +# Visual Studio 2015 cache/options directory .vs/ # Uncomment if you have tasks that create the project's static files in wwwroot #wwwroot/ -# Visual Studio 2017 auto generated files -Generated\ Files/ - # MSTest test Results [Tt]est[Rr]esult*/ [Bb]uild[Ll]og.* -# NUnit +# NUNIT *.VisualState.xml TestResult.xml -nunit-*.xml # Build Results of an ATL Project [Dd]ebugPS/ [Rr]eleasePS/ dlldata.c -# Benchmark Results -BenchmarkDotNet.Artifacts/ - # .NET Core project.lock.json project.fragment.lock.json artifacts/ +**/Properties/launchSettings.json -# StyleCop -StyleCopReport.xml - -# Files built by Visual Studio *_i.c *_p.c -*_h.h +*_i.h *.ilk *.meta *.obj -*.iobj *.pch *.pdb -*.ipdb *.pgc *.pgd *.rsp @@ -84,7 +76,6 @@ StyleCopReport.xml *.tlh *.tmp *.tmp_proj -*_wpftmp.csproj *.log *.vspscc *.vssscc @@ -106,6 +97,8 @@ ipch/ *.cachefile *.VC.db *.VC.VC.opendb +ndstatus.rc +ndstatus_*.bin # Visual Studio profiler *.psess @@ -113,9 +106,6 @@ ipch/ *.vspx *.sap -# Visual Studio Trace Files -*.e2e - # TFS 2012 Local Workspace $tf/ @@ -127,16 +117,15 @@ _ReSharper*/ *.[Rr]e[Ss]harper *.DotSettings.user +# JustCode is a .NET coding add-in +.JustCode + # TeamCity is a build add-in _TeamCity* # DotCover is a Code Coverage Tool *.dotCover -# AxoCover is a Code Coverage Tool -.axoCover/* -!.axoCover/settings.json - # Visual Studio code coverage results *.coverage *.coveragexml @@ -172,7 +161,7 @@ publish/ # Publish Web Output *.[Pp]ublish.xml *.azurePubxml -# Note: Comment the next line if you want to checkin your web deploy settings, +# TODO: Comment the next line if you want to checkin your web deploy settings # but database connection strings (with potential passwords) will be unencrypted *.pubxml *.publishproj @@ -184,17 +173,20 @@ PublishScripts/ # NuGet Packages *.nupkg -# NuGet Symbol Packages -*.snupkg # The packages folder can be ignored because of Package Restore -**/[Pp]ackages/* +**/packages/* # except build/, which is used as an MSBuild target. -!**/[Pp]ackages/build/ +!**/packages/build/ # Uncomment if necessary however generally it will be regenerated when needed -#!**/[Pp]ackages/repositories.config +#!**/packages/repositories.config # NuGet v3's project.json files produces more ignorable files +*.nuget.cache +*.nuget.dgspec.json *.nuget.props *.nuget.targets +*.nuget.g.props +*.nuget.g.targets +project.assets.json # Microsoft Azure Build Output csx/ @@ -209,15 +201,12 @@ AppPackages/ BundleArtifacts/ Package.StoreAssociation.xml _pkginfo.txt -*.appx -*.appxbundle -*.appxupload # Visual Studio cache files # files ending in .cache can be ignored *.[Cc]ache # but keep track of directories ending in .cache -!?*.[Cc]ache/ +!*.[Cc]ache/ # Others ClientBin/ @@ -230,10 +219,6 @@ ClientBin/ *.publishsettings orleans.codegen.cs -# Including strong name files can present a security risk -# (https://github.com/github/gitignore/pull/2483#issue-259490424) -#*.snk - # Since there are multiple workflows, uncomment next line to ignore bower_components # (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) #bower_components/ @@ -245,11 +230,8 @@ Generated_Code/ # to a newer Visual Studio version. Backup files are not needed, # because we have git ;-) _UpgradeReport_Files/ -Backup*/ UpgradeLog*.XML UpgradeLog*.htm -ServiceFabricBackup/ -*.rptproj.bak # SQL Server files *.mdf @@ -260,10 +242,6 @@ ServiceFabricBackup/ *.rdl.data *.bim.layout *.bim_*.settings -*.rptproj.rsuser -*- [Bb]ackup.rdl -*- [Bb]ackup ([0-9]).rdl -*- [Bb]ackup ([0-9][0-9]).rdl # Microsoft Fakes FakesAssemblies/ @@ -275,6 +253,9 @@ FakesAssemblies/ .ntvs_analysis.dat node_modules/ +# Typescript v1 declaration files +typings/ + # Visual Studio 6 build log *.plg @@ -299,8 +280,12 @@ paket-files/ # FAKE - F# Make .fake/ -# CodeRush personal settings -.cr/personal +# JetBrains Rider +.idea/ +*.sln.iml + +# CodeRush +.cr/ # Python Tools for Visual Studio (PTVS) __pycache__/ @@ -310,9 +295,6 @@ __pycache__/ # tools/** # !tools/packages.config -# Tabs Studio -*.tss - # Telerik's JustMock configuration file *.jmconfig @@ -322,29 +304,10 @@ __pycache__/ *.odx.cs *.xsd.cs -# OpenCover UI analysis results -OpenCover/ - -# Azure Stream Analytics local run output -ASALocalRun/ - -# MSBuild Binary and Structured Log -*.binlog - -# NVidia Nsight GPU debugger configuration file -*.nvuser - -# MFractors (Xamarin productivity tool) working folder -.mfractor/ - -# Local History for Visual Studio -.localhistory/ - -# BeatPulse healthcheck temp database -healthchecksdb +#installed tools +tool/ -# Backup folder for Package Reference Convert tool in Visual Studio 2017 -MigrationBackup/ +# no SLN files, use slngen +*.sln +*.dgspec.json -# Ionide (cross platform F# VS Code tools) working folder -.ionide/ diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 00000000..e69de29b diff --git a/Directory.Build.props b/Directory.Build.props new file mode 100644 index 00000000..724508bc --- /dev/null +++ b/Directory.Build.props @@ -0,0 +1,22 @@ + + + + + + $(MSBuildAllProjects);$(MSBuildThisFileFullPath) + + + $(MSBuildThisFileDirectory.TrimEnd('\\')) + net462 + + + + diff --git a/Directory.Build.rsp b/Directory.Build.rsp new file mode 100644 index 00000000..0c41acac --- /dev/null +++ b/Directory.Build.rsp @@ -0,0 +1,8 @@ +/Restore +/ConsoleLoggerParameters:Verbosity=Minimal;Summary +/FileLoggerParameters:LogFile=msbuild.log;Verbosity=Diagnostic +/MaxCPUCount +/NodeReuse:false +/Property:NuGetInteractive=true +/BinaryLogger + diff --git a/Packages.props b/Packages.props new file mode 100644 index 00000000..6f77836e --- /dev/null +++ b/Packages.props @@ -0,0 +1,45 @@ + + + + 4.7.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SmoBuild/AssemblyInfo.props b/SmoBuild/AssemblyInfo.props new file mode 100644 index 00000000..0de812e8 --- /dev/null +++ b/SmoBuild/AssemblyInfo.props @@ -0,0 +1,12 @@ + + + + + The SQL Server Management Objects (SMO) Framework is a set of objects designed for programmatic management of Microsoft SQL Server and Microsoft Azure SQL Database. + + Microsoft + Microsoft Corporation + Microsoft Sql Server + © Microsoft Corporation. All rights reserved. + + diff --git a/SmoBuild/CSharp.NetCore.props b/SmoBuild/CSharp.NetCore.props new file mode 100644 index 00000000..54016da4 --- /dev/null +++ b/SmoBuild/CSharp.NetCore.props @@ -0,0 +1,4 @@ + + + + diff --git a/SmoBuild/CSharp.NetFx.props b/SmoBuild/CSharp.NetFx.props new file mode 100644 index 00000000..54016da4 --- /dev/null +++ b/SmoBuild/CSharp.NetFx.props @@ -0,0 +1,4 @@ + + + + diff --git a/SmoBuild/CSharp.NetStandard.props b/SmoBuild/CSharp.NetStandard.props new file mode 100644 index 00000000..5a0b7f70 --- /dev/null +++ b/SmoBuild/CSharp.NetStandard.props @@ -0,0 +1,5 @@ + + + $(DefineConstants);NETSTANDARD2_0 + + diff --git a/SmoBuild/DdlEvents.targets b/SmoBuild/DdlEvents.targets new file mode 100644 index 00000000..4102b19a --- /dev/null +++ b/SmoBuild/DdlEvents.targets @@ -0,0 +1,39 @@ + + + $(MSBuildAllProjects);$(MSBuildThisFileFullPath) + $(BaseIntermediateOutputPath)$(Configuration)\$(TargetFramework) + + + + + + $(PkgStrawberryPerl)\bin\perl.exe + + + + + SQLSERVER + enum + classenum_template + evtenum_template + %(filename) + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/SmoBuild/DdlEvents/class_template.cs b/SmoBuild/DdlEvents/class_template.cs new file mode 100644 index 00000000..c562eb59 --- /dev/null +++ b/SmoBuild/DdlEvents/class_template.cs @@ -0,0 +1,209 @@ + + + // + // CLASSNAME + // + public sealed class CLASSNAME + { + private CLASSNAMEValues m_value; + + internal CLASSNAME(CLASSNAMEValues eventValue) + { + m_value = eventValue; + } + + internal CLASSNAMEValues Value + { + get {{ return m_value; }} + } + + static public implicit operator CLASSNAMESet(CLASSNAME eventValue) + { + return new CLASSNAMESet(eventValue); + } + + static public CLASSNAMESet operator +(CLASSNAME eventLeft, CLASSNAME eventRight) + { + CLASSNAMESet eventSet = new CLASSNAMESet(eventLeft); + eventSet.SetBit(eventRight); + return eventSet; + } + + static public CLASSNAMESet Add(CLASSNAME eventLeft, CLASSNAME eventRight) + { + return eventLeft + eventRight; + } + + static public CLASSNAMESet operator |(CLASSNAME eventLeft, CLASSNAME eventRight) + { + CLASSNAMESet eventSet = new CLASSNAMESet(eventLeft); + eventSet.SetBit(eventRight); + return eventSet; + } + + static public CLASSNAMESet BitwiseOr(CLASSNAME eventLeft, CLASSNAME eventRight) + { + return eventLeft | eventRight; + } + + public override string ToString() + { + return m_value.ToString(); + } + + // Satisfies FxCop rule: AddAndSubtractOverrideShouldHaveOperatorEqualsOverride. + public static bool operator ==(CLASSNAME a, CLASSNAME b) + { + if( null == (a as object) && null == (b as object)) + return true; + else if( null == (a as object) || null == (b as object)) + return false; + else + return a.m_value == b.m_value; + } + + // If you implement ==, you must implement !=. + public static bool operator !=(CLASSNAME a, CLASSNAME b) + { + return !(a==b); + } + + // Equals should be consistent with operator ==. + public override bool Equals(Object obj) + { + if (obj == null) + return false; + + return this == (obj as CLASSNAME); + } + + public override int GetHashCode() + { + return m_value.GetHashCode (); + } + + + // Generated code +@@@CLASSNAME_static_props + // End of generated code + + } + + public sealed class CLASSNAMESet : EventSetBase + { + + public CLASSNAMESet() + { + } + + public CLASSNAMESet(CLASSNAMESet eventSet) : base(eventSet) + { + } + + public CLASSNAMESet(CLASSNAME anEvent) + { + SetBit(anEvent); + } + + public CLASSNAMESet(params CLASSNAME[] events) + { + Storage = new BitArray(this.NumberOfElements); + foreach(CLASSNAME evt in events) + { + SetBit(evt); + } + } + + public override EventSetBase Copy() + { + return new CLASSNAMESet(this.Storage); + } + + internal CLASSNAMESet(BitArray storage) + { + Storage = (BitArray) storage.Clone(); + } + + internal void SetBit(CLASSNAME anEvent) + { + Storage[(int)anEvent.Value] = true; + } + + internal void ResetBit(CLASSNAME anEvent) + { + Storage[(int)anEvent.Value] = false; + } + + public CLASSNAMESet Add(CLASSNAME anEvent) + { + SetBit(anEvent); + return this; + } + + public CLASSNAMESet Remove(CLASSNAME anEvent) + { + ResetBit(anEvent); + return this; + } + + static public CLASSNAMESet operator +(CLASSNAMESet eventSet, CLASSNAME anEvent) + { + CLASSNAMESet newEventSet = new CLASSNAMESet(eventSet); + newEventSet.SetBit(anEvent); + return newEventSet; + } + + static public CLASSNAMESet Add(CLASSNAMESet eventSet, CLASSNAME anEvent) + { + return eventSet + anEvent; + } + + static public CLASSNAMESet operator -(CLASSNAMESet eventSet, CLASSNAME anEvent) + { + CLASSNAMESet newEventSet = new CLASSNAMESet(eventSet); + newEventSet.ResetBit(anEvent); + return newEventSet; + } + + static public CLASSNAMESet Subtract(CLASSNAMESet eventSet, CLASSNAME anEvent) + { + return eventSet - anEvent; + } + + public override int NumberOfElements + { +@@@CLASSNAME_count + } + + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + + sb.Append(this.GetType().Name + ": "); + + int i = 0; + bool first = true; + foreach (bool isSet in Storage) + { + if (isSet) + { + if (first) + { + first = false; + } + else + { + sb.Append(", "); + } + sb.Append(((CLASSNAMEValues) i).ToString()); + } + i++; + } + return sb.ToString(); + } + + // Generated code +@@@CLASSNAME_props + // End of generated code + } + diff --git a/SmoBuild/DdlEvents/classenum_template.cs b/SmoBuild/DdlEvents/classenum_template.cs new file mode 100644 index 00000000..4b39617c --- /dev/null +++ b/SmoBuild/DdlEvents/classenum_template.cs @@ -0,0 +1,223 @@ + ///enum for CLASSNAME + internal enum CLASSNAMEValues + { + // Generated code +@@@CLASSNAME_enum + // End of generated code + } + + /// CLASSNAME + public sealed class CLASSNAME + { + private CLASSNAMEValues m_value; + + ///constructor + internal CLASSNAME(CLASSNAMEValues eventValue) + { + m_value = eventValue; + } + + ///get value + internal CLASSNAMEValues Value + { + get { return m_value; } + } + + ///cast operator + static public implicit operator CLASSNAMESet(CLASSNAME eventValue) + { + return new CLASSNAMESet(eventValue); + } + + ///add to events resulting an event set + static public CLASSNAMESet operator +(CLASSNAME eventLeft, CLASSNAME eventRight) + { + CLASSNAMESet eventSet = new CLASSNAMESet(eventLeft); + eventSet.SetBit(eventRight); + return eventSet; + } + + ///add to events resulting an event set + static public CLASSNAMESet Add(CLASSNAME eventLeft, CLASSNAME eventRight) + { + return eventLeft + eventRight; + } + + ///'or' to events resulting an event set + static public CLASSNAMESet operator |(CLASSNAME eventLeft, CLASSNAME eventRight) + { + CLASSNAMESet eventSet = new CLASSNAMESet(eventLeft); + eventSet.SetBit(eventRight); + return eventSet; + } + + ///'or' to events resulting an event set + static public CLASSNAMESet BitwiseOr(CLASSNAME eventLeft, CLASSNAME eventRight) + { + return eventLeft | eventRight; + } + + ///event string representation + public override string ToString() + { + return m_value.ToString(); + } + // Generated code +@@@CLASSNAME_static_props + // End of generated code + + } + ///class CLASSNAMESet + public sealed class CLASSNAMESet : EventSetBase + { + + ///default constructor + public CLASSNAMESet() + { + } + + ///copy constructor + public CLASSNAMESet(CLASSNAMESet eventSet) : base(eventSet) + { + } + + ///constructor initialize with an event + public CLASSNAMESet(CLASSNAME anEvent) + { + SetBit(anEvent); + } + + ///constructor initialize with a list of events + public CLASSNAMESet(params CLASSNAME[] events) + { + Storage = new BitArray(this.NumberOfElements); + foreach(CLASSNAME evt in events) + { + SetBit(evt); + } + } + + ///initialize from BitArray + internal CLASSNAMESet(BitArray storage) + { + Storage = (BitArray) storage.Clone(); + } + + ///copy + public override EventSetBase Copy() + { + return new CLASSNAMESet(this.Storage); + } + + ///set bit for an event + internal void SetBit(CLASSNAME anEvent) + { + Storage[(int)anEvent.Value] = true; + } + + ///reset bit for an event + internal void ResetBit(CLASSNAME anEvent) + { + Storage[(int)anEvent.Value] = false; + } + + ///set bit for an event + public CLASSNAMESet Add(CLASSNAME anEvent) + { + SetBit(anEvent); + return this; + } + + ///reset bit for an event + public CLASSNAMESet Remove(CLASSNAME anEvent) + { + ResetBit(anEvent); + return this; + } + + ///add an event + static public CLASSNAMESet operator +(CLASSNAMESet eventSet, CLASSNAME anEvent) + { + CLASSNAMESet newEventSet = new CLASSNAMESet(eventSet); + newEventSet.SetBit(anEvent); + return newEventSet; + } + + ///add an event + static public CLASSNAMESet Add(CLASSNAMESet eventSet, CLASSNAME anEvent) + { + return eventSet + anEvent; + } + + ///remove an event + static public CLASSNAMESet operator -(CLASSNAMESet eventSet, CLASSNAME anEvent) + { + CLASSNAMESet newEventSet = new CLASSNAMESet(eventSet); + newEventSet.ResetBit(anEvent); + return newEventSet; + } + + ///remove an event + static public CLASSNAMESet Subtract(CLASSNAMESet eventSet, CLASSNAME anEvent) + { + return eventSet - anEvent; + } + + ///return number of elements + public override int NumberOfElements + { +@@@CLASSNAME_elements_count + } + + ///return string representation + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + + sb.Append(this.GetType().Name + ": "); + + int i = 0; + bool first = true; + foreach (bool isSet in Storage) + { + if (isSet) + { + if (first) + { + first = false; + } + else + { + sb.Append(", "); + } + sb.Append(((CLASSNAMEValues) i).ToString()); + } + i++; + } + return sb.ToString(); + } + private bool dirty = false; + ///true if the event set has been modified + public bool Dirty + { + get { return dirty; } + set { dirty = value; } + } + // Generated code +@@@CLASSNAME_props + // End of generated code + + + ///static constructor + /// init here all the static composite bitflags, because we do not want + /// to recreate it every time we will do an operation with it. + static CLASSNAMESet() + { + // Generated code +@@@CLASSNAME_group_static_props_init + // End of generated code + + } + +@@@CLASSNAME_group_static_props + } diff --git a/SmoBuild/DdlEvents/eventsdef.cpp b/SmoBuild/DdlEvents/eventsdef.cpp new file mode 100644 index 00000000..57b5d040 --- /dev/null +++ b/SmoBuild/DdlEvents/eventsdef.cpp @@ -0,0 +1,3503 @@ +//**************************************************************************** +// Copyright (c) Microsoft Corporation. +// +// @File: eventsdef.cpp +// @Owner: ivanpe, ketandu +// @Test: antonk, sshekar +// +// Purpose: This file contains all event type definitions. It's main purpose is +// to be included in eventsshema.cpp. Several perl scripts are parsing +// this file in order to get to the event type definitions. +// +// Note: If you are updating this file then you must also update the events.xsd +// schema, in Sql\Common\xsd\sqlserver\2006\events\events.xsd and +// published at http://schemas.microsoft.com/sqlserver/2006/11/eventdata/events.xsd +// with RTM releases of SQL Server. +// +// A stub for events.xsd can be generated using perl scripts, but must be tweaked +// to ensure ensure backwards compatibility. +// +// Building from sql\ntdbms\sqlwep\dllsrc (from an x86fre razzle) will generate +// the stub events.xsd in %OBJECT_ROOT%\sql\ntdbms\sqlwep\dllsrc\objfre\i386. +// +// Please refer to http://sqlserver/SQLBU/sqlxsd/default.aspx for instructions on +// publishing the events.xsd. +// +// @EndHeader@ +//**************************************************************************** + +#define BitCount1(x)\ + (((x&0xAAAAAAAAAAAAAAAA)>>1) + (x&0x5555555555555555)) +#define BitCount2(x)\ + (((x&0xCCCCCCCCCCCCCCCC)>>2) + (x&0x3333333333333333)) +#define BitCount4(x)\ + (((x&0xF0F0F0F0F0F0F0F0)>>4) + (x&0x0F0F0F0F0F0F0F0F)) +#define BitCount8(x)\ + (((x&0xFF00FF00FF00FF00)>>8) + (x&0x00FF00FF00FF00FF)) +#define BitCount16(x)\ + (((x&0xFFFF0000FFFF0000)>>16) + (x&0x0000FFFF0000FFFF)) +#define BitCount32(x)\ + (((x&0xFFFFFFFF00000000)>>32) + (x&0x00000000FFFFFFFF)) + +#define BitCount64(x)\ + (BitCount32(BitCount16(BitCount8(BitCount4(BitCount2(BitCount1((x)))))))) + + +// The Envelope properties are divided into 3 groups +// The 1st 3 are common for all event types. +// The next 2 are only for non-trace event types. +// The next one is only for event types that are not server level only. +// +//---------------------------------------------------------------- +// Event Envelope Instance Schema (instance parameters schema) +//---------------------------------------------------------------- + +STATIC EVENT_PARAM_INFO_DEF s_rgParamInfoEnvelope[] = +{ + { EnvelopeTag_EventType, L"EventType", 0,0,NULL,XVT_VARWSTR, PrecDefault(XVT_VARWSTR),ScaleDefault(XVT_VARWSTR),x_cbMAXSSWNAME,0}, + { EnvelopeTag_PostTime, L"PostTime", 0,0,NULL,XVT_SSDATE, PrecDefault(XVT_SSDATE), ScaleDefault(XVT_SSDATE), LenDefault(XVT_SSDATE),0}, + { EnvelopeTag_SPID, L"SPID", 0,0,NULL,XVT_I4, PrecDefault(XVT_I4), ScaleDefault(XVT_I4), LenDefault(XVT_I4), 0}, + + //---------------------------------------------------------------- + // Additional Event Envelope Instance Schema for non-trace events (instance parameters schema) + //---------------------------------------------------------------- + + // The server name is of the form "ComputerName\InstanceName" + { EnvelopeTag_ServerName, L"ServerName", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR),ScaleDefault(XVT_VARWSTR),(x_cwchMAXSSWNAME*2 + 1)*sizeof(WCHAR),EVENT_PARAM_NULLABLE}, + { EnvelopeTag_LoginName, L"LoginName", 0,0,NULL,XVT_VARWSTR, PrecDefault(XVT_VARWSTR),ScaleDefault(XVT_VARWSTR),x_cbMAXSSWNAME,0}, + + //---------------------------------------------------------------- + // Additional Event Envelope Instance Schema for non-server level events (instance parameters schema) + //---------------------------------------------------------------- + + { EnvelopeTag_UserName, L"UserName", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR),ScaleDefault(XVT_VARWSTR),x_cbMAXSSWNAME,0}, +}; + +STATIC ULONG s_cParamInfoEnvelope = NUMELEM(s_rgParamInfoEnvelope); + +//================================================= +// Param info for SQLTrace +#include "parinfo.inc" + +// The new param info array. We dont need a param info array per event type. We will just +// have a global one that can be shared by the various event types. +// +STATIC EVENT_PARAM_INFO_DEF s_rgParamInfoDDL[] = +{ + { EventTag_DatabaseName, L"DatabaseName", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, EVENT_PARAM_NULLABLE}, + { EventTag_SchemaName, L"SchemaName", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, EVENT_PARAM_NULLABLE}, + { EventTag_ObjectName, L"ObjectName", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, EVENT_PARAM_NULLABLE}, + { EventTag_ObjectType, L"ObjectType", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, EVENT_PARAM_NULLABLE}, + { EventTag_RoleName, L"RoleName", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, EVENT_PARAM_NULLABLE}, + { EventTag_TSQLCommand, L"TSQLCommand", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), VARTYPE_UNLIMITED_LENGTH, 0}, + { EventTag_TargetServerName, L"TargetServerName",0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR),ScaleDefault(XVT_VARWSTR),x_cbMAXSSWNAME,EVENT_PARAM_NULLABLE}, + { EventTag_TargetDatabaseName, L"TargetDatabaseName", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, EVENT_PARAM_NULLABLE}, + { EventTag_TargetSchemaName, L"TargetSchemaName", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, EVENT_PARAM_NULLABLE}, + { EventTag_TargetObjectName, L"TargetObjectName", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, EVENT_PARAM_NULLABLE}, + { EventTag_TargetObjectType, L"TargetObjectType", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, EVENT_PARAM_NULLABLE}, + { EventTag_OwnerName, L"OwnerName", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, 0}, + { EventTag_DefaultLanguage, L"DefaultLanguage", 0,0,NULL,XVT_VARWSTR,PrecDefault( XVT_VARWSTR ), ScaleDefault( XVT_VARWSTR ), x_cbMAXSSWNAME, EVENT_PARAM_NULLABLE}, + { EventTag_DefaultDatabase, L"DefaultDatabase", 0,0,NULL,XVT_VARWSTR,PrecDefault( XVT_VARWSTR ), ScaleDefault( XVT_VARWSTR ), x_cbMAXSSWNAME, EVENT_PARAM_NULLABLE}, + { EventTag_LoginType, L"LoginType", 0,0,NULL,XVT_VARWSTR,PrecDefault( XVT_VARWSTR ), ScaleDefault( XVT_VARWSTR ), x_cbMAXSSWNAME, 0}, + { EventTag_SID, L"SID", 0,0,NULL,CTypeInfo::tiSID.XvtType(), PrecDefault(CTypeInfo::tiSID.XvtType()),ScaleDefault(CTypeInfo::tiSID.XvtType()),x_cbMaxSID,EVENT_PARAM_NULLABLE}, + { EventTag_RoleSID, L"RoleSID", 0,0,NULL,CTypeInfo::tiSID.XvtType(), PrecDefault(CTypeInfo::tiSID.XvtType()),ScaleDefault(CTypeInfo::tiSID.XvtType()),x_cbMaxSID, EVENT_PARAM_NULLABLE}, + { EventTag_Grantor, L"Grantor", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, 0}, + { EventTag_Permissions, L"Permissions", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), VARTYPE_UNLIMITED_LENGTH, 0}, + { EventTag_Grantees, L"Grantees", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), VARTYPE_UNLIMITED_LENGTH, 0}, + { EventTag_AsGrantor, L"AsGrantor", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, EVENT_PARAM_NULLABLE}, + { EventTag_GrantOption, L"GrantOption", 0,0,NULL,XVT_BIT, PrecDefault(XVT_BIT), ScaleDefault(XVT_BIT), LenDefault(XVT_BIT),0}, + { EventTag_CascadeOption, L"CascadeOption", 0,0,NULL,XVT_BIT, PrecDefault(XVT_BIT), ScaleDefault(XVT_BIT), LenDefault(XVT_BIT),0}, + { EventTag_PrimaryXMLIndexName, L"PrimaryXMLIndexName", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, EVENT_PARAM_NULLABLE}, + { EventTag_SecondaryXMLIndexType, L"SecondaryXMLIndexType", 0,0,NULL,XVT_SSWSTR,PrecDefault(XVT_SSWSTR), ScaleDefault(XVT_SSWSTR), 2, EVENT_PARAM_NULLABLE}, + { EventTag_CertificatePath, L"CertificatePath",0,0,NULL,CTypeInfo::tiMaxPathName.XvtType(),PrecDefault(CTypeInfo::tiMaxPathName.XvtType()), + ScaleDefault(CTypeInfo::tiMaxPathName.XvtType()),sizeof(WCHAR)*MAX_PATH, EVENT_PARAM_NULLABLE}, + { EventTag_PrivateKeyPath, L"PrivateKeyPath",0,0,NULL,CTypeInfo::tiMaxPathName.XvtType(),PrecDefault(CTypeInfo::tiMaxPathName.XvtType()), + ScaleDefault(CTypeInfo::tiMaxPathName.XvtType()),sizeof(WCHAR)*MAX_PATH,EVENT_PARAM_NULLABLE}, + { EventTag_CertificateSubject, L"CertificateSubject", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, EVENT_PARAM_NULLABLE}, + { EventTag_Function, L"Function", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, 0}, + { EventTag_DefaultSchema, L"DefaultSchema",0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR),ScaleDefault(XVT_VARWSTR),x_cbMAXSSWNAME, EVENT_PARAM_NULLABLE}, + { EventTag_ClientHost, L"ClientHost", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, 0}, + { EventTag_IsPooled, L"IsPooled", 0,0,NULL,XVT_BIT, PrecDefault(XVT_BIT), ScaleDefault(XVT_BIT), LenDefault(XVT_BIT),0}, + { EventTag_Parameters, L"Parameters", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), VARTYPE_UNLIMITED_LENGTH, 0}, + { EventTag_PropertyName, L"PropertyName", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, 0}, + { EventTag_PropertyValue, L"PropertyValue", 0,0,NULL,XVT_SSVARIANT,PrecDefault(XVT_SSVARIANT), ScaleDefault(XVT_SSVARIANT), SIZEOFSSVARIANT, EVENT_PARAM_NULLABLE}, + { EventTag_NewObjectName, L"NewObjectName", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), x_cbMAXSSWNAME, 0}, + { EventTag_KeyPath, L"KeyPath",0,0,NULL,CTypeInfo::tiMaxPathName.XvtType(),PrecDefault(CTypeInfo::tiMaxPathName.XvtType()), + ScaleDefault(CTypeInfo::tiMaxPathName.XvtType()),sizeof(WCHAR)*MAX_PATH, EVENT_PARAM_NULLABLE}, + { EventTag_CounterSignature, L"CounterSignature", 0,0,NULL,XVT_BIT, PrecDefault(XVT_BIT), ScaleDefault(XVT_BIT), LenDefault(XVT_BIT),0}, + { EventTag_AlterTableActionList, L"AlterTableActionList", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), VARTYPE_UNLIMITED_LENGTH, 0}, + { EventTag_AlterDatabaseActionList, L"AlterDatabaseActionList", 0,0,NULL,XVT_VARWSTR,PrecDefault(XVT_VARWSTR), ScaleDefault(XVT_VARWSTR), VARTYPE_UNLIMITED_LENGTH, 0}, +}; +STATIC ULONG s_cParamInfoDDL = NUMELEM(s_rgParamInfoDDL); + +// Extended GROUP enum for SQLTrace +#include "grpenum.inc" +//================================================= + +// This array defines groups for all supported synchronous events. The array order should follow +// the order of the EEventGroup enum defined in events.h. +// +EVENT_GROUP g_rgEventGroup[] = +{ + //------------------------------------------------------------------------------------------ + // GROUP ID GROUP PARENT ID Group name For optimization + //------------------------------------------------------------------------------------------ + { EGROUP_ALL, EGROUP_INVALID, L"ALL_EVENTS", x_eet_Group_All, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL, EGROUP_ALL, L"DDL_EVENTS", x_eet_Group_Ddl, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_SERVER_LEVEL, EGROUP_DDL, L"DDL_SERVER_LEVEL_EVENTS", x_eet_Group_Ddl_Server_Level, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_ENDPOINT, EGROUP_DDL_SERVER_LEVEL, L"DDL_ENDPOINT_EVENTS", x_eet_Group_Ddl_Endpoint, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_DATABASE, EGROUP_DDL_SERVER_LEVEL, L"DDL_DATABASE_EVENTS", x_eet_Group_Ddl_Database, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_SERVER_SECURITY, EGROUP_DDL_SERVER_LEVEL, L"DDL_SERVER_SECURITY_EVENTS", x_eet_Group_Ddl_Server_Security, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_LOGIN, EGROUP_DDL_SERVER_SECURITY, L"DDL_LOGIN_EVENTS", x_eet_Group_Ddl_Login, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_GDR_SERVER, EGROUP_DDL_SERVER_SECURITY, L"DDL_GDR_SERVER_EVENTS", x_eet_Group_Ddl_Gdr_Server, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_AUTH_SERVER, EGROUP_DDL_SERVER_SECURITY, L"DDL_AUTHORIZATION_SERVER_EVENTS", x_eet_Group_Ddl_Auth_Server, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_CREDENTIAL, EGROUP_DDL_SERVER_SECURITY, L"DDL_CREDENTIAL_EVENTS", x_eet_Group_Ddl_Credential, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_CRYPTOPROV, EGROUP_DDL_SERVER_SECURITY, L"DDL_CRYPTOGRAPHIC_PROVIDER_EVENTS", x_eet_Group_Ddl_CryptoProv, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_SRVMASTERKEY, EGROUP_DDL_SERVER_SECURITY, L"DDL_SERVICE_MASTER_KEY_EVENTS", x_eet_Group_Ddl_Service_Master_Key, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_SERVERAUDIT, EGROUP_DDL_SERVER_SECURITY, L"DDL_SERVER_AUDIT_EVENTS", x_eet_Group_Ddl_ServerAudit, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_SERVERAUDITSPEC, EGROUP_DDL_SERVER_SECURITY, L"DDL_SERVER_AUDIT_SPECIFICATION_EVENTS", x_eet_Group_Ddl_ServerAuditSpec, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_EXTENDED_PROCEDURE, EGROUP_DDL_SERVER_LEVEL, L"DDL_EXTENDED_PROCEDURE_EVENTS", x_eet_Group_Ddl_Extended_Procedure, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_LINKED_SERVER, EGROUP_DDL_SERVER_LEVEL, L"DDL_LINKED_SERVER_EVENTS", x_eet_Group_Ddl_Linked_Server, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_LINKED_SERVER_LOGIN, EGROUP_DDL_LINKED_SERVER, L"DDL_LINKED_SERVER_LOGIN_EVENTS", x_eet_Group_Ddl_Linked_Server_Login, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_MESSAGE, EGROUP_DDL_SERVER_LEVEL, L"DDL_MESSAGE_EVENTS", x_eet_Group_Ddl_Message, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_REMOTE_SERVER, EGROUP_DDL_SERVER_LEVEL, L"DDL_REMOTE_SERVER_EVENTS", x_eet_Group_Ddl_Remote_Server, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_EVENT_SESSION, EGROUP_DDL_SERVER_LEVEL, L"DDL_EVENT_SESSION_EVENTS", x_eet_Group_Ddl_Event_Session, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_RESOURCE_GOVERNOR, EGROUP_DDL_SERVER_LEVEL, L"DDL_RESOURCE_GOVERNOR_EVENTS",x_eet_Group_Ddl_Resource_Governor, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_RESOURCE_POOL, EGROUP_DDL_RESOURCE_GOVERNOR,L"DDL_RESOURCE_POOL", x_eet_Group_Ddl_Resource_Pool, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_EXTERNAL_RESOURCE_POOL, EGROUP_DDL_RESOURCE_GOVERNOR,L"DDL_EXTERNAL_RESOURCE_POOL_EVENTS", x_eet_Group_Ddl_External_Resource_Pool, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_RESOURCE_GROUP, EGROUP_DDL_RESOURCE_GOVERNOR,L"DDL_WORKLOAD_GROUP", x_eet_Group_Ddl_Resource_Group, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_DATABASE_LEVEL, EGROUP_DDL, L"DDL_DATABASE_LEVEL_EVENTS", x_eet_Group_Ddl_Database_Level, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_TABLEVIEW, EGROUP_DDL_DATABASE_LEVEL, L"DDL_TABLE_VIEW_EVENTS", x_eet_Group_Ddl_Tableview, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_TABLE, EGROUP_DDL_TABLEVIEW, L"DDL_TABLE_EVENTS", x_eet_Group_Ddl_Table, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_VIEW, EGROUP_DDL_TABLEVIEW, L"DDL_VIEW_EVENTS", x_eet_Group_Ddl_View, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_INDEX, EGROUP_DDL_TABLEVIEW, L"DDL_INDEX_EVENTS", x_eet_Group_Ddl_Index, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_STATS, EGROUP_DDL_TABLEVIEW, L"DDL_STATISTICS_EVENTS", x_eet_Group_Ddl_Stats, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_SYNONYM, EGROUP_DDL_DATABASE_LEVEL, L"DDL_SYNONYM_EVENTS", x_eet_Group_Ddl_Synonym, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_FUNCTION, EGROUP_DDL_DATABASE_LEVEL, L"DDL_FUNCTION_EVENTS", x_eet_Group_Ddl_Function, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_STOREDPROC, EGROUP_DDL_DATABASE_LEVEL, L"DDL_PROCEDURE_EVENTS", x_eet_Group_Ddl_Storedproc, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_TRIGGER, EGROUP_DDL_DATABASE_LEVEL, L"DDL_TRIGGER_EVENTS", x_eet_Group_Ddl_Trigger, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_EVTNOTIF, EGROUP_DDL_DATABASE_LEVEL, L"DDL_EVENT_NOTIFICATION_EVENTS", x_eet_Group_Ddl_Evtnotif, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_ASSEMBLY, EGROUP_DDL_DATABASE_LEVEL, L"DDL_ASSEMBLY_EVENTS", x_eet_Group_Ddl_Assembly, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_UDT, EGROUP_DDL_DATABASE_LEVEL, L"DDL_TYPE_EVENTS", x_eet_Group_Ddl_Udt, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_SEQUENCE, EGROUP_DDL_DATABASE_LEVEL, L"DDL_SEQUENCE_EVENTS", x_eet_Group_Ddl_Sequence, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_LIBRARY, EGROUP_DDL_DATABASE_LEVEL, L"DDL_LIBRARY_EVENTS", x_eet_Group_Ddl_Library, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_SENSITIVITY, EGROUP_DDL_DATABASE_LEVEL, L"DDL_SENSITIVITY_EVENTS", x_eet_Group_Ddl_Sensitivity, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_EXTERNAL_LANGUAGE, EGROUP_DDL_DATABASE_LEVEL, L"DDL_EXTERNAL_LANGUAGE_EVENTS", x_eet_Group_Ddl_External_Language, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_DB_SECURITY, EGROUP_DDL_DATABASE_LEVEL, L"DDL_DATABASE_SECURITY_EVENTS", x_eet_Group_Ddl_DB_Security, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_CERTIFICATE, EGROUP_DDL_DB_SECURITY, L"DDL_CERTIFICATE_EVENTS", x_eet_Group_Ddl_Certificate, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_USER, EGROUP_DDL_DB_SECURITY, L"DDL_USER_EVENTS", x_eet_Group_Ddl_User, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_ROLE, EGROUP_DDL_DB_SECURITY, L"DDL_ROLE_EVENTS", x_eet_Group_Ddl_Role, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_APPROLE, EGROUP_DDL_DB_SECURITY, L"DDL_APPLICATION_ROLE_EVENTS", x_eet_Group_Ddl_Approle, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_SCHEMA, EGROUP_DDL_DB_SECURITY, L"DDL_SCHEMA_EVENTS", x_eet_Group_Ddl_Schema, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_GDR_DATABASE, EGROUP_DDL_DB_SECURITY, L"DDL_GDR_DATABASE_EVENTS", x_eet_Group_Ddl_Gdr_Database, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_AUTH_DATABASE, EGROUP_DDL_DB_SECURITY, L"DDL_AUTHORIZATION_DATABASE_EVENTS", x_eet_Group_Ddl_Auth_Database, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_OBFUSKEY, EGROUP_DDL_DB_SECURITY, L"DDL_SYMMETRIC_KEY_EVENTS", x_eet_Group_Ddl_Symmetric, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_ASYMKEY, EGROUP_DDL_DB_SECURITY, L"DDL_ASYMMETRIC_KEY_EVENTS", x_eet_Group_Ddl_Asymmetric, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_CRYPTOSIGN, EGROUP_DDL_DB_SECURITY, L"DDL_CRYPTO_SIGNATURE_EVENTS", x_eet_Group_Ddl_Crypto_Signature, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_DBMASTERKEY, EGROUP_DDL_DB_SECURITY, L"DDL_MASTER_KEY_EVENTS", x_eet_Group_Ddl_Master_Key, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_DEK, EGROUP_DDL_DB_SECURITY, L"DDL_DATABASE_ENCRYPTION_KEY_EVENTS", x_eet_Group_Ddl_DEK, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_DBAUDITSPEC, EGROUP_DDL_DB_SECURITY, L"DDL_DATABASE_AUDIT_SPECIFICATION_EVENTS", x_eet_Group_Ddl_DbAuditSpec, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_DBAUDIT, EGROUP_DDL_DB_SECURITY, L"DDL_DATABASE_AUDIT_EVENTS", x_eet_Group_Ddl_DatabaseAudit_Group, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_SSB, EGROUP_DDL_DATABASE_LEVEL, L"DDL_SSB_EVENTS", x_eet_Group_Ddl_Ssb, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_MSGTYPE, EGROUP_DDL_SSB, L"DDL_MESSAGE_TYPE_EVENTS", x_eet_Group_Ddl_Msgtype, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_CONTRACT, EGROUP_DDL_SSB, L"DDL_CONTRACT_EVENTS", x_eet_Group_Ddl_Contract, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_QUEUE, EGROUP_DDL_SSB, L"DDL_QUEUE_EVENTS", x_eet_Group_Ddl_Queue, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_SERVICE, EGROUP_DDL_SSB, L"DDL_SERVICE_EVENTS", x_eet_Group_Ddl_Service, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_ROUTE, EGROUP_DDL_SSB, L"DDL_ROUTE_EVENTS", x_eet_Group_Ddl_Route, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_BINDING, EGROUP_DDL_SSB, L"DDL_REMOTE_SERVICE_BINDING_EVENTS", x_eet_Group_Ddl_Binding, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_PRIORITY, EGROUP_DDL_SSB, L"DDL_BROKER_PRIORITY_EVENTS", x_eet_Group_Ddl_Priority, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_XML_SCHEMA_COLLECTION, EGROUP_DDL_DATABASE_LEVEL, L"DDL_XML_SCHEMA_COLLECTION_EVENTS", x_eet_Group_Ddl_Xml_Schema_Collection, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_PARTITION, EGROUP_DDL_DATABASE_LEVEL, L"DDL_PARTITION_EVENTS", x_eet_Group_Ddl_Partition, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_PRTFUNCTION, EGROUP_DDL_PARTITION, L"DDL_PARTITION_FUNCTION_EVENTS", x_eet_Group_Ddl_Prtfunction, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_PRTSCHEME, EGROUP_DDL_PARTITION, L"DDL_PARTITION_SCHEME_EVENTS", x_eet_Group_Ddl_Prtscheme, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_DEFAULT, EGROUP_DDL_DATABASE_LEVEL, L"DDL_DEFAULT_EVENTS", x_eet_Group_Ddl_Default, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_EXTENDED_PROPERTY, EGROUP_DDL_DATABASE_LEVEL, L"DDL_EXTENDED_PROPERTY_EVENTS", x_eet_Group_Ddl_Extended_Property, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_FULLTEXT_CATALOG, EGROUP_DDL_DATABASE_LEVEL, L"DDL_FULLTEXT_CATALOG_EVENTS", x_eet_Group_Ddl_Fulltext_Catalog, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_PLAN_GUIDE, EGROUP_DDL_DATABASE_LEVEL, L"DDL_PLAN_GUIDE_EVENTS", x_eet_Group_Ddl_Plan_Guide, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_RULE, EGROUP_DDL_DATABASE_LEVEL, L"DDL_RULE_EVENTS", x_eet_Group_Ddl_Rule, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_FULLTEXT_STOPLIST, EGROUP_DDL_DATABASE_LEVEL, L"DDL_FULLTEXT_STOPLIST_EVENTS", x_eet_Group_Ddl_Fulltext_StopList, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_PROPERTYLIST, EGROUP_DDL_DATABASE_LEVEL, L"DDL_SEARCH_PROPERTY_LIST_EVENTS", x_eet_Group_Ddl_PropertyList, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_AVAILABILITY_GROUP, EGROUP_DDL_SERVER_LEVEL, L"DDL_AVAILABILITY_GROUP_EVENTS", x_eet_Group_Ddl_Availability_Group, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_SECURITY_POLICY, EGROUP_DDL_DATABASE_LEVEL, L"DDL_SECURITY_POLICY_EVENTS", x_eet_Group_Ddl_SecurityPolicy_Group, ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_COL_MASTER_KEY, EGROUP_DDL_DATABASE_LEVEL, L"DDL_COLUMN_MASTER_KEY_EVENTS", x_eet_Group_Ddl_Col_Master_Key_Group , ETYP_ON_INVALID, 0, 0, 0 }, + { EGROUP_DDL_COL_ENCRYPTION_KEY, EGROUP_DDL_DATABASE_LEVEL, L"DDL_COLUMN_ENCRYPTION_KEY_EVENTS", x_eet_Group_Ddl_Col_Encryption_Key_Group, ETYP_ON_INVALID, 0, 0, 0 }, + +// ========= SQLTrace additions. Do not put anything below!!!================================== + { EGROUP_TRCAT_ALL, EGROUP_ALL, L"TRC_ALL_EVENTS", x_eet_Group_Traceat_All, ETYP_ON_INVALID, 0, 0, 0 }, +#include "grpdefs.inc" +//============================================================================= +}; + +STATIC const ULONG s_cEventGroup = ARRAYSIZE(g_rgEventGroup); + +// This array defines schema for all supported synchronous events. The array order should follow +// the order of the EEventType enum defined in events.h. +// +STATIC EVENT_SCHEMA s_rgEventSchema[] = +{ + +//////////////////////////////////////////////////////////////////////////////////////// +// DDL EVENTS +//////////////////////////////////////////////////////////////////////////////////////// + + //----------------------------------------------- + // CREATE TABLE Event Schema + //----------------------------------------------- + { ETYP_ON_CREATETABLE, + x_eet_Create_Table, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_TABLE", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_TABLE, + 0 + }, + + //----------------------------------------------- + // ALTER TABLE Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERTABLE, + x_eet_Alter_Table, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_TABLE", + EventTag_SchemaDDL | EventTag_Parameters | EventTag_AlterTableActionList, + NULL, + BitCount64(EventTag_SchemaDDL | EventTag_Parameters | EventTag_AlterTableActionList), + EGROUP_DDL_TABLE, + 0 + }, + + //----------------------------------------------- + // DROP TABLE Event Schema + //----------------------------------------------- + { ETYP_ON_DROPTABLE, + x_eet_Drop_Table, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_TABLE", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_TABLE, + 0 + }, + + //----------------------------------------------- + // CREATE VIEW Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEVIEW, + x_eet_Create_View, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_VIEW", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_VIEW, + 0 + }, + + //----------------------------------------------- + // ALTER VIEW Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERVIEW, + x_eet_Alter_View, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_VIEW", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_VIEW, + 0 + }, + + //----------------------------------------------- + // DROP VIEW Event Schema + //----------------------------------------------- + { ETYP_ON_DROPVIEW, + x_eet_Drop_View, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_VIEW", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_VIEW, + 0 + }, + + //----------------------------------------------- + // CREATE SYNONYM Event Schema + //----------------------------------------------- + { ETYP_ON_CREATESYNONYM, + x_eet_Create_Synonym, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_SYNONYM", + EventTag_SchemaDDL | EventTag_TargetNames, + NULL, + 9, + EGROUP_DDL_SYNONYM, + 0 + }, + + //----------------------------------------------- + // DROP SYNONYM Event Schema + //----------------------------------------------- + { ETYP_ON_DROPSYNONYM, + x_eet_Drop_Synonym, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_SYNONYM", + EventTag_SchemaDDL | EventTag_TargetNames, + NULL, + 9, + EGROUP_DDL_SYNONYM, + 0 + }, + + //----------------------------------------------- + // CREATE FUNCTION Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEFUNCTION, + x_eet_Create_Function, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_FUNCTION", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_FUNCTION, + 0 + }, + + //----------------------------------------------- + // ALTER FUNCTION Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERFUNCTION, + x_eet_Alter_Function, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_FUNCTION", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_FUNCTION, + 0 + }, + + //----------------------------------------------- + // DROP FUNCTION Event Schema + //----------------------------------------------- + { ETYP_ON_DROPFUNCTION, + x_eet_Drop_Function, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_FUNCTION", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_FUNCTION, + 0 + }, + + //----------------------------------------------- + // CREATE PROCEDURE Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEPROC, + x_eet_Create_Procedure, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_PROCEDURE", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_STOREDPROC, + 0 + }, + + //----------------------------------------------- + // ALTER PROCEDURE Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERPROC, + x_eet_Alter_Procedure, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_PROCEDURE", + EventTag_SchemaDDL | EventTag_Parameters, + NULL, + 6, + EGROUP_DDL_STOREDPROC, + 0 + }, + + //----------------------------------------------- + // DROP PROCEDURE Event Schema + //----------------------------------------------- + { ETYP_ON_DROPPROC, + x_eet_Drop_Procedure, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_PROCEDURE", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_STOREDPROC, + 0 + }, + + //----------------------------------------------- + // CREATE TRIGGER Event Schema + //----------------------------------------------- + { ETYP_ON_CREATETRIGGER, + x_eet_Create_Trigger, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_TRIGGER", + EventTag_SchemaTargetDDL, + NULL, + 7, + EGROUP_DDL_TRIGGER, + 0 + }, + + //----------------------------------------------- + // ALTER TRIGGER Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERTRIGGER, + x_eet_Alter_Trigger, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_TRIGGER", + EventTag_SchemaTargetDDL | EventTag_Parameters, + NULL, + 8, + EGROUP_DDL_TRIGGER, + 0 + }, + + //----------------------------------------------- + // DROP TRIGGER Event Schema + //----------------------------------------------- + { ETYP_ON_DROPTRIGGER, + x_eet_Drop_Trigger, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_TRIGGER", + EventTag_SchemaTargetDDL, + NULL, + 7, + EGROUP_DDL_TRIGGER, + 0 + }, + + //----------------------------------------------- + // CREATE EVENT NOTIFICATION Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEEVTNOTIF, + x_eet_Create_Event_Notification, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_EVENT_NOTIFICATION", + EventTag_SchemaLessFullTargetDDL, + NULL, + 7, + EGROUP_DDL_EVTNOTIF, + 0 + }, + + //----------------------------------------------- + // DROP EVENT NOTIFICATION Event Schema + //----------------------------------------------- + { ETYP_ON_DROPEVTNOTIF, + x_eet_Drop_Event_Notification, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_EVENT_NOTIFICATION", + EventTag_SchemaLessFullTargetDDL, + NULL, + 7, + EGROUP_DDL_EVTNOTIF, + 0 + }, + + //----------------------------------------------- + // CREATE INDEX Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEINDEX, + x_eet_Create_Index, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_INDEX", + EventTag_SchemaTargetDDL, + NULL, + 7, + EGROUP_DDL_INDEX, + 0 + }, + + //----------------------------------------------- + // ALTER INDEX Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERINDEX, + x_eet_Alter_Index, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_INDEX", + EventTag_SchemaTargetDDL | EventTag_Parameters, + NULL, + 8, + EGROUP_DDL_INDEX, + 0 + }, + + //----------------------------------------------- + // DROP INDEX Event Schema + //----------------------------------------------- + { ETYP_ON_DROPINDEX, + x_eet_Drop_Index, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_INDEX", + EventTag_SchemaTargetDDL, + NULL, + 7, + EGROUP_DDL_INDEX, + 0 + }, + + //----------------------------------------------- + // CREATE STATS Event Schema + //----------------------------------------------- + { ETYP_ON_CREATESTATS, + x_eet_Create_Stats, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_STATISTICS", + EventTag_SchemaTargetDDL, + NULL, + 7, + EGROUP_DDL_STATS, + 0 + }, + + //----------------------------------------------- + // UPDATE STATS Event Schema + //----------------------------------------------- + { ETYP_ON_UPDATESTATS, + x_eet_Update_Stats, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"UPDATE_STATISTICS", + EventTag_DatabaseEvent | EventTag_SchemaName | EventTag_ObjectType | EventTag_TargetObjectName | EventTag_TargetObjectType, + NULL, + 6, + EGROUP_DDL_STATS, + 0 + }, + + //----------------------------------------------- + // DROP STATS Event Schema + //----------------------------------------------- + { ETYP_ON_DROPSTATS, + x_eet_Drop_Stats, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_STATISTICS", + EventTag_SchemaTargetDDL, + NULL, + 7, + EGROUP_DDL_STATS, + 0 + }, + + //----------------------------------------------- + // CREATE DATABASE Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEDATABASE, + x_eet_Create_Database, + EOBJTYP_SERVER, + EFLAG_NEW_TRANS, + L"CREATE_DATABASE", + EventTag_DatabaseEvent, + NULL, + 2, + EGROUP_DDL_DATABASE, + 0 + }, + + //----------------------------------------------- + // ALTER DATABASE Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERDATABASE, + x_eet_Alter_Database, + EOBJTYP_SERVER, + EFLAG_NEW_TRANS, + L"ALTER_DATABASE", + EventTag_DatabaseEvent | EventTag_Parameters | EventTag_AlterDatabaseActionList, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_Parameters | EventTag_AlterDatabaseActionList), // 4, + EGROUP_DDL_DATABASE, + 0 + }, + + //----------------------------------------------- + // DROP DATABASE Event Schema + //----------------------------------------------- + { ETYP_ON_DROPDATABASE, + x_eet_Drop_Database, + EOBJTYP_SERVER, + EFLAG_NEW_TRANS, + L"DROP_DATABASE", + EventTag_DatabaseEvent, + NULL, + 2, + EGROUP_DDL_DATABASE, + 0 + }, + + //----------------------------------------------- + // CREATE ASSEMBLY Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEASSEMBLY, + x_eet_Create_Assembly, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_ASSEMBLY", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_ASSEMBLY, + 0 + }, + + //----------------------------------------------- + // ALTER ASSEMBLY Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERASSEMBLY, + x_eet_Alter_Assembly, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_ASSEMBLY", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_ASSEMBLY, + 0 + }, + + //----------------------------------------------- + // DROP ASSEMBLY Event Schema + //----------------------------------------------- + { ETYP_ON_DROPASSEMBLY, + x_eet_Drop_Assembly, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_ASSEMBLY", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_ASSEMBLY, + 0 + }, + + //----------------------------------------------- + // CREATE TYPE Event Schema + //----------------------------------------------- + { ETYP_ON_CREATETYPE, + x_eet_Create_Type, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_TYPE", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_UDT, + 0 + }, + + //----------------------------------------------- + // DROP TYPE Event Schema + //----------------------------------------------- + { ETYP_ON_DROPTYPE, + x_eet_Drop_Type, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_TYPE", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_UDT, + 0 + }, + + //----------------------------------------------- + // CREATE USER Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEUSER, + x_eet_Create_User, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_USER", + EventTag_SchemaLessDDL | EventTag_DefaultSchema | EventTag_SID | EventTag_DefaultLanguage, + NULL, + 7, + EGROUP_DDL_USER, + 0 + }, + + //----------------------------------------------- + // ALTER USER Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERUSER, + x_eet_Alter_User, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_USER", + EventTag_SchemaLessDDL | EventTag_DefaultSchema | EventTag_SID | EventTag_Parameters | EventTag_DefaultLanguage, + NULL, + 8, + EGROUP_DDL_USER, + 0 + }, + + //----------------------------------------------- + // DROP USER Event Schema + //----------------------------------------------- + { ETYP_ON_DROPUSER, + x_eet_Drop_User, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_USER", + EventTag_SchemaLessDDL | EventTag_DefaultSchema | EventTag_SID | EventTag_DefaultLanguage, + NULL, + 7, + EGROUP_DDL_USER, + 0 + }, + + + //----------------------------------------------- + // ADD ROLE MEMBER (sp_AddRoleMember) Event Schema + //----------------------------------------------- + { ETYP_ON_ADDROLEMEMBER, + x_eet_Add_Role_Member, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ADD_ROLE_MEMBER", + EventTag_DatabaseName | EventTag_ObjectEvent | EventTag_DefaultSchema | EventTag_SID | EventTag_RoleName | EventTag_TSQLCommand, + NULL, + BitCount64(EventTag_DatabaseName | EventTag_ObjectEvent | EventTag_DefaultSchema | EventTag_SID | EventTag_RoleName | EventTag_TSQLCommand), + EGROUP_DDL_ROLE, + 0 + }, + + //----------------------------------------------- + // DROP ROLE MEMBER (sp_DropRoleMember) Event Schema + //----------------------------------------------- + { ETYP_ON_DROPROLEMEMBER, + x_eet_Drop_Role_Member, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_ROLE_MEMBER", + EventTag_DatabaseName | EventTag_ObjectEvent | EventTag_DefaultSchema | EventTag_SID | EventTag_RoleName | EventTag_TSQLCommand, + NULL, + BitCount64(EventTag_DatabaseName | EventTag_ObjectEvent | EventTag_DefaultSchema | EventTag_SID | EventTag_RoleName | EventTag_TSQLCommand), + EGROUP_DDL_ROLE, + 0 + }, + + + //----------------------------------------------- + // CREATE ROLE Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEROLE, + x_eet_Create_Role, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_ROLE", + EventTag_SchemaLessDDL | EventTag_SID, + NULL, + 5, + EGROUP_DDL_ROLE, + 0 + }, + + //----------------------------------------------- + // ALTER ROLE Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERROLE, + x_eet_Alter_Role, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_ROLE", + EventTag_SchemaLessDDL | EventTag_SID, + NULL, + 5, + EGROUP_DDL_ROLE, + 0 + }, + + //----------------------------------------------- + // DROP ROLE Event Schema + //----------------------------------------------- + { ETYP_ON_DROPROLE, + x_eet_Drop_Role, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_ROLE", + EventTag_SchemaLessDDL | EventTag_SID, + NULL, + 5, + EGROUP_DDL_ROLE, + 0 + }, + + + //----------------------------------------------- + // CREATE APPROLE Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEAPPROLE, + x_eet_Create_AppRole, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_APPLICATION_ROLE", + EventTag_SchemaLessDDL | EventTag_DefaultSchema | EventTag_SID, + NULL, + 6, + EGROUP_DDL_APPROLE, + 0 + }, + + //----------------------------------------------- + // ALTER APPROLE Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERAPPROLE, + x_eet_Alter_AppRole, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_APPLICATION_ROLE", + EventTag_SchemaLessDDL | EventTag_DefaultSchema | EventTag_SID, + NULL, + 6, + EGROUP_DDL_APPROLE, + 0 + }, + + //----------------------------------------------- + // DROP APPROLE Event Schema + //----------------------------------------------- + { ETYP_ON_DROPAPPROLE, + x_eet_Drop_AppRole, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_APPLICATION_ROLE", + EventTag_SchemaLessDDL | EventTag_DefaultSchema | EventTag_SID, + NULL, + 6, + EGROUP_DDL_APPROLE, + 0 + }, + + + //----------------------------------------------- + // CREATE SCHEMA Event Schema + //----------------------------------------------- + { ETYP_ON_CREATESCHEMA, + x_eet_Create_Schema, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_SCHEMA", + EventTag_DatabaseEvent | EventTag_SchemaName | EventTag_OwnerName | EventTag_ObjectEvent, + NULL, + 6, + EGROUP_DDL_SCHEMA, + 0 + }, + + //----------------------------------------------- + // ALTER SCHEMA Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERSCHEMA, + x_eet_Alter_Schema, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_SCHEMA", + EventTag_SchemaDDL, + NULL, + BitCount64(EventTag_SchemaDDL), + EGROUP_DDL_SCHEMA, + 0 + }, + + //----------------------------------------------- + // DROP SCHEMA Event Schema + //----------------------------------------------- + { ETYP_ON_DROPSCHEMA, + x_eet_Drop_Schema, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_SCHEMA", + EventTag_DatabaseEvent | EventTag_SchemaName | EventTag_OwnerName | EventTag_ObjectEvent, + NULL, + 6, + EGROUP_DDL_SCHEMA, + 0 + }, + + + //----------------------------------------------- + // CREATE LOGIN Event Schema + //----------------------------------------------- + { ETYP_ON_CREATELOGIN, + x_eet_Create_Login, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_LOGIN", + EventTag_LoginEvent, + NULL, + 7, + EGROUP_DDL_LOGIN, + 0 + }, + + //----------------------------------------------- + // ALTER LOGIN Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERLOGIN, + x_eet_Alter_Login, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_LOGIN", + EventTag_LoginEvent, + NULL, + 7, + EGROUP_DDL_LOGIN, + 0 + }, + + //----------------------------------------------- + // DROP LOGIN Event Schema + //----------------------------------------------- + { ETYP_ON_DROPLOGIN, + x_eet_Drop_Login, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_LOGIN", + EventTag_LoginEvent, + NULL, + 7, + EGROUP_DDL_LOGIN, + 0 + }, + + //----------------------------------------------- + // LOGON Event Schema + //----------------------------------------------- + { ETYP_ON_LOGON, + x_eet_Logon, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS | EFLAG_SYNC_ONLY, + L"LOGON", + EventTag_LoginType | EventTag_SID | EventTag_ClientHost | EventTag_IsPooled, + NULL, + 4, + EGROUP_ALL, + 0 + }, + + //----------------------------------------------- + // ADD SERVER ROLE MEMBER (sp_AddSrvRoleMember) Event Schema + //----------------------------------------------- + { ETYP_ON_ADDSRVROLEMEMBER, + x_eet_Add_Server_Role_Member, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ADD_SERVER_ROLE_MEMBER", + EventTag_LoginEvent | EventTag_RoleEvent | EventTag_TSQLCommand, + NULL, + BitCount64(EventTag_LoginEvent | EventTag_RoleEvent | EventTag_TSQLCommand), + EGROUP_DDL_SERVER_SECURITY, + 0 + }, + + //----------------------------------------------- + // DROP SERVER ROLE MEMBER (sp_DropSrvRoleMember) Event Schema + //----------------------------------------------- + { ETYP_ON_DROPSRVROLEMEMBER, + x_eet_Drop_Server_Role_Member, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_SERVER_ROLE_MEMBER", + EventTag_LoginEvent | EventTag_RoleEvent | EventTag_TSQLCommand, + NULL, + BitCount64(EventTag_LoginEvent | EventTag_RoleEvent | EventTag_TSQLCommand), + EGROUP_DDL_SERVER_SECURITY, + 0 + }, + + //----------------------------------------------- + // CREATE SERVERROLE Event Schema + //----------------------------------------------- + { ETYP_ON_CREATESERVERROLE, + x_eet_Create_ServerRole, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_SERVER_ROLE", + EventTag_ServerEvent | EventTag_SID, + NULL, + BitCount64(EventTag_ServerEvent | EventTag_SID), + EGROUP_DDL_SERVER_SECURITY, + 0 + }, + + //----------------------------------------------- + // ALTER SERVERROLE Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERSERVERROLE, + x_eet_Alter_ServerRole, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_SERVER_ROLE", + EventTag_ServerEvent | EventTag_SID, + NULL, + BitCount64(EventTag_ServerEvent | EventTag_SID), + EGROUP_DDL_SERVER_SECURITY, + 0 + }, + + //----------------------------------------------- + // DROP SERVERROLE Event Schema + //----------------------------------------------- + { ETYP_ON_DROPSERVERROLE, + x_eet_Drop_ServerRole, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_SERVER_ROLE", + EventTag_ServerEvent | EventTag_SID, + NULL, + BitCount64(EventTag_ServerEvent | EventTag_SID), + EGROUP_DDL_SERVER_SECURITY, + 0 + }, + + //----------------------------------------------- + // CREATE ENDPOINT Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_ENDPOINT, + x_eet_Create_Endpoint, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_ENDPOINT", + EventTag_ServerEvent, + NULL, + 3, + EGROUP_DDL_ENDPOINT, + 0 + }, + + //----------------------------------------------- + // ALTER ENDPOINT Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_ENDPOINT, + x_eet_Alter_Endpoint, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_ENDPOINT", + EventTag_ServerEvent, + NULL, + 3, + EGROUP_DDL_ENDPOINT, + 0 + }, + + //----------------------------------------------- + // DROP ENDPOINT Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_ENDPOINT, + x_eet_Drop_Endpoint, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_ENDPOINT", + EventTag_ServerEvent, + NULL, + 3, + EGROUP_DDL_ENDPOINT, + 0 + }, + + //*********************************************************************** + // START: Service Broker Events + // + //*********************************************************************** + + //----------------------------------------------- + // CREATE MSGTYPE Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEMSGTYPE, + x_eet_Create_MsgType, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_MESSAGE_TYPE", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_MSGTYPE, + 0 + }, + + //----------------------------------------------- + // ALTER MSGTYPE Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERMSGTYPE, + x_eet_Alter_MsgType, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_MESSAGE_TYPE", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_MSGTYPE, + 0 + }, + + //----------------------------------------------- + // DROP MSGTYPE Event Schema + //----------------------------------------------- + { ETYP_ON_DROPMSGTYPE, + x_eet_Drop_MsgType, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_MESSAGE_TYPE", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_MSGTYPE, + 0 + }, + + + //----------------------------------------------- + // CREATE CONTRACT Event Schema + //----------------------------------------------- + { ETYP_ON_CREATECONTRACT, + x_eet_Create_Contract, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_CONTRACT", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_CONTRACT, + 0 + }, + + //----------------------------------------------- + // DROP CONTRACT Event Schema + //----------------------------------------------- + { ETYP_ON_DROPCONTRACT, + x_eet_Drop_Contract, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_CONTRACT", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_CONTRACT, + 0 + }, + + + //----------------------------------------------- + // CREATE QUEUE Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEQUEUE, + x_eet_Create_Queue, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_QUEUE", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_QUEUE, + 0 + }, + + //----------------------------------------------- + // ALTER QUEUE Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERQUEUE, + x_eet_Alter_Queue, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_QUEUE", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_QUEUE, + 0 + }, + + //----------------------------------------------- + // DROP QUEUE Event Schema + //----------------------------------------------- + { ETYP_ON_DROPQUEUE, + x_eet_Drop_Queue, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_QUEUE", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_QUEUE, + 0 + }, + + + //----------------------------------------------- + // CREATE SERVICE Event Schema + //----------------------------------------------- + { ETYP_ON_CREATESERVICE, + x_eet_Create_Service, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_SERVICE", + EventTag_SchemaLessFullTargetDDL, + NULL, + 7, + EGROUP_DDL_SERVICE, + 0 + }, + + //----------------------------------------------- + // ALTER SERVICE Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERSERVICE, + x_eet_Alter_Service, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_SERVICE", + EventTag_SchemaLessFullTargetDDL, + NULL, + 7, + EGROUP_DDL_SERVICE, + 0 + }, + + //----------------------------------------------- + // DROP SERVICE Event Schema + //----------------------------------------------- + { ETYP_ON_DROPSERVICE, + x_eet_Drop_Service, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_SERVICE", + EventTag_SchemaLessFullTargetDDL, + NULL, + 7, + EGROUP_DDL_SERVICE, + 0 + }, + + //----------------------------------------------- + // CREATE ROUTE Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEROUTE, + x_eet_Create_Route, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_ROUTE", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_ROUTE, + 0 + }, + + //----------------------------------------------- + // ALTER ROUTE Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERROUTE, + x_eet_Alter_Route, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_ROUTE", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_ROUTE, + 0 + }, + + //----------------------------------------------- + // DROP ROUTE Event Schema + //----------------------------------------------- + { ETYP_ON_DROPROUTE, + x_eet_Drop_Route, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_ROUTE", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_ROUTE, + 0 + }, + + //----------------------------------------------- + // CREATE BINDING Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEBINDING, + x_eet_Create_Binding, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_REMOTE_SERVICE_BINDING", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_BINDING, + 0 + }, + + //----------------------------------------------- + // ALTER BINDING Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERBINDING, + x_eet_Alter_Binding, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_REMOTE_SERVICE_BINDING", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_BINDING, + 0 + }, + + //----------------------------------------------- + // DROP BINDING Event Schema + //----------------------------------------------- + { ETYP_ON_DROPBINDING, + x_eet_Drop_Binding, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_REMOTE_SERVICE_BINDING", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_BINDING, + 0 + }, + + //----------------------------------------------- + // CREATE BROKER PRIORITY Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEPRIORITY, + x_eet_Create_Priority, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_BROKER_PRIORITY", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_PRIORITY, + 0 + }, + + //----------------------------------------------- + // ALTER BROKER PRIORITY Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERPRIORITY, + x_eet_Alter_Priority, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_BROKER_PRIORITY", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_PRIORITY, + 0 + }, + + //----------------------------------------------- + // DROP BROKER PRIORITY Event Schema + //----------------------------------------------- + { ETYP_ON_DROPPRIORITY, + x_eet_Drop_Priority, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_BROKER_PRIORITY", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_PRIORITY, + 0 + }, + + //*********************************************************************** + // END: Service Broker Events + // + //*********************************************************************** + + //*********************************************************************** + // START: Grant Deny Revoke Events + // + //*********************************************************************** + + //----------------------------------------------- + // GRANT_SERVER Event Schema + //----------------------------------------------- + { ETYP_ON_GRANT_SERVER, + x_eet_Grant_Server, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"GRANT_SERVER", + EventTag_GDR, + NULL, + 7, + EGROUP_DDL_GDR_SERVER, + 0 + }, + + //----------------------------------------------- + // DENY_SERVER Event Schema + //----------------------------------------------- + { ETYP_ON_DENY_SERVER, + x_eet_Deny_Server, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DENY_SERVER", + EventTag_GDR, + NULL, + 7, + EGROUP_DDL_GDR_SERVER, + 0 + }, + + //----------------------------------------------- + // REVOKE_SERVER Event Schema + //----------------------------------------------- + { ETYP_ON_REVOKE_SERVER, + x_eet_Revoke_Server, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"REVOKE_SERVER", + EventTag_GDR, + NULL, + 7, + EGROUP_DDL_GDR_SERVER, + 0 + }, + + + //----------------------------------------------- + // GRANT_DATABASE Event Schema + //----------------------------------------------- + { ETYP_ON_GRANT_DATABASE, + x_eet_Grant_Database, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"GRANT_DATABASE", + EventTag_GDRDatabase, + NULL, + 11, + EGROUP_DDL_GDR_DATABASE, + 0 + }, + + //----------------------------------------------- + // DENY_DATABASE Event Schema + //----------------------------------------------- + { ETYP_ON_DENY_DATABASE, + x_eet_Deny_Database, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DENY_DATABASE", + EventTag_GDRDatabase, + NULL, + 11, + EGROUP_DDL_GDR_DATABASE, + 0 + }, + + //----------------------------------------------- + // REVOKE_DATABASE Event Schema + //----------------------------------------------- + { ETYP_ON_REVOKE_DATABASE, + x_eet_Revoke_Database, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"REVOKE_DATABASE", + EventTag_GDRDatabase, + NULL, + 11, + EGROUP_DDL_GDR_DATABASE, + 0 + }, + + + //*********************************************************************** + // END: Grant Deny Revoke Events + // + //*********************************************************************** + + //----------------------------------------------- + // CREATE XML SCHEMA COLLECTION Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_XML_SCHEMA_COLLECTION, + x_eet_Create_XmlSchemaCollection, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_XML_SCHEMA_COLLECTION", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_XML_SCHEMA_COLLECTION, + 0 + }, + + //----------------------------------------------- + // ALTER XMLSCHEMA Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_XML_SCHEMA_COLLECTION, + x_eet_Alter_XmlSchemaCollection, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_XML_SCHEMA_COLLECTION", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_XML_SCHEMA_COLLECTION, + 0 + }, + + //----------------------------------------------- + // DROP XMLSCHEMA Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_XML_SCHEMA_COLLECTION, + x_eet_Drop_XmlSchemaCollection, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_XML_SCHEMA_COLLECTION", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_XML_SCHEMA_COLLECTION, + 0 + }, + + + //----------------------------------------------- + // CREATE CERTIFICATE Event Schema + //----------------------------------------------- + { ETYP_ON_CREATECERT, + x_eet_Create_Cert, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_CERTIFICATE", + EventTag_ObjectOwnerKeyEvent | EventTag_CertificatePath | EventTag_PrivateKeyPath | EventTag_CertificateSubject | EventTag_DatabaseEvent, + NULL, + BitCount64(EventTag_ObjectOwnerKeyEvent | EventTag_CertificatePath | EventTag_PrivateKeyPath | EventTag_CertificateSubject | EventTag_DatabaseEvent), + EGROUP_DDL_CERTIFICATE, + 0 + }, + + //----------------------------------------------- + // ALTER CERTIFICATE Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERCERT, + x_eet_Alter_Cert, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_CERTIFICATE", + EventTag_ObjectOwnerKeyEvent | EventTag_DatabaseEvent, + NULL, + BitCount64(EventTag_ObjectOwnerKeyEvent | EventTag_DatabaseEvent), + EGROUP_DDL_CERTIFICATE, + 0 + }, + + //----------------------------------------------- + // DROP CERTIFICATE Event Schema + //----------------------------------------------- + { ETYP_ON_DROPCERT, + x_eet_Drop_Cert, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_CERTIFICATE", + EventTag_ObjectOwnerEvent | EventTag_DatabaseEvent, + NULL, + BitCount64(EventTag_ObjectOwnerEvent | EventTag_DatabaseEvent), + EGROUP_DDL_CERTIFICATE, + 0 + }, + + //----------------------------------------------- + // CREATE SYMMETRIC KEY Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEOBFUSKEY, + x_eet_Create_ObfusKey, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_SYMMETRIC_KEY", + EventTag_ObjectOwnerEvent | EventTag_DatabaseEvent, + NULL, + BitCount64(EventTag_ObjectOwnerEvent | EventTag_DatabaseEvent), + EGROUP_DDL_OBFUSKEY, + 0 + }, + + //----------------------------------------------- + // ALTER SYMMETRIC KEY Event Schema + //----------------------------------------------- + { ETYP_ON_ALTEROBFUSKEY, + x_eet_Alter_ObfusKey, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_SYMMETRIC_KEY", + EventTag_ObjectOwnerEvent | EventTag_DatabaseEvent, + NULL, + BitCount64(EventTag_ObjectOwnerEvent | EventTag_DatabaseEvent), + EGROUP_DDL_OBFUSKEY, + 0 + }, + + //----------------------------------------------- + // DROP SYMMETRIC KEY Event Schema + //----------------------------------------------- + { ETYP_ON_DROPOBFUSKEY, + x_eet_Drop_ObfusKey, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_SYMMETRIC_KEY", + EventTag_ObjectOwnerEvent | EventTag_DatabaseEvent, + NULL, + BitCount64(EventTag_ObjectOwnerEvent | EventTag_DatabaseEvent), + EGROUP_DDL_OBFUSKEY, + 0 + }, + + //----------------------------------------------- + // CREATE ASYMMETRIC KEY Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEASYMKEY, + x_eet_Create_AsymKey, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_ASYMMETRIC_KEY", + EventTag_ObjectOwnerEvent | EventTag_DatabaseEvent | EventTag_KeyPath, + NULL, + BitCount64(EventTag_ObjectOwnerEvent | EventTag_DatabaseEvent | EventTag_KeyPath), + EGROUP_DDL_ASYMKEY, + 0 + }, + + //----------------------------------------------- + // ALTER ASYMMETRIC KEY Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERASYMKEY, + x_eet_Alter_AsymKey, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_ASYMMETRIC_KEY", + EventTag_ObjectOwnerEvent | EventTag_DatabaseEvent, + NULL, + BitCount64(EventTag_ObjectOwnerEvent | EventTag_DatabaseEvent), + EGROUP_DDL_ASYMKEY, + 0 + }, + + //----------------------------------------------- + // DROP ASYMMETRIC KEY Event Schema + //----------------------------------------------- + { ETYP_ON_DROPASYMKEY, + x_eet_Drop_AsymKey, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_ASYMMETRIC_KEY", + EventTag_ObjectOwnerEvent | EventTag_DatabaseEvent, + NULL, + BitCount64(EventTag_ObjectOwnerEvent | EventTag_DatabaseEvent), + EGROUP_DDL_ASYMKEY, + 0 + }, + + //----------------------------------------------- + // ALTER SERVICE MASTER KEY Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERSRVMASTERKEY, + x_eet_Alter_SrvMasterKey, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_SERVICE_MASTER_KEY", + EventTag_ObjectType | EventTag_TSQLCommand, + NULL, + BitCount64(EventTag_ObjectType | EventTag_TSQLCommand), + EGROUP_DDL_SRVMASTERKEY, + 0 + }, + + //----------------------------------------------- + // CREATE MASTER KEY Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEDBMASTERKEY, + x_eet_Create_DbMasterKey, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_MASTER_KEY", + EventTag_DatabaseEvent | EventTag_ObjectType, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectType), + EGROUP_DDL_DBMASTERKEY, + 0 + }, + + //----------------------------------------------- + // ALTER MASTER KEY Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERDBMASTERKEY, + x_eet_Alter_DbMasterKey, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_MASTER_KEY", + EventTag_DatabaseEvent | EventTag_ObjectType, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectType), + EGROUP_DDL_DBMASTERKEY, + 0 + }, + + //----------------------------------------------- + // DROP MASTER KEY Event Schema + //----------------------------------------------- + { ETYP_ON_DROPDBMASTERKEY, + x_eet_Drop_DbMasterKey, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_MASTER_KEY", + EventTag_DatabaseEvent | EventTag_ObjectType, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectType), + EGROUP_DDL_DBMASTERKEY, + 0 + }, + + //----------------------------------------------- + // CREATE DEK Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEDEK, + x_eet_Create_DEK, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_NEW_TRANS, + L"CREATE_DATABASE_ENCRYPTION_KEY", + EventTag_DatabaseEvent | EventTag_ObjectType, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectType), + EGROUP_DDL_DEK, + 0 + }, + + //----------------------------------------------- + // ALTER DEK Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERDEK, + x_eet_Alter_DEK, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_NEW_TRANS, + L"ALTER_DATABASE_ENCRYPTION_KEY", + EventTag_DatabaseEvent | EventTag_ObjectType, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectType), + EGROUP_DDL_DEK, + 0 + }, + + //----------------------------------------------- + // DROP DEK Event Schema + //----------------------------------------------- + { ETYP_ON_DROPDEK, + x_eet_Drop_DEK, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_NEW_TRANS, + L"DROP_DATABASE_ENCRYPTION_KEY", + EventTag_DatabaseEvent | EventTag_ObjectType, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectType), + EGROUP_DDL_DEK, + 0 + }, + + //----------------------------------------------- + // ADD SIGNATURE on Schema Object Event Schema + //----------------------------------------------- + { ETYP_ON_ADDSIGN_SCH_OBJ, + x_eet_Add_Signature_SchObj, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ADD_SIGNATURE_SCHEMA_OBJECT", + EventTag_DatabaseEvent | EventTag_ObjectEvent |EventTag_SchemaName | EventTag_CounterSignature, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectEvent |EventTag_SchemaName | EventTag_CounterSignature), + EGROUP_DDL_CRYPTOSIGN, + 0 + }, + + //----------------------------------------------- + // DROP SIGNATURE on Schema Object Event Schema + //----------------------------------------------- + { ETYP_ON_DROPSIGN_SCH_OBJ, + x_eet_Drop_Signature_SchObj, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_SIGNATURE_SCHEMA_OBJECT", + EventTag_DatabaseEvent | EventTag_ObjectEvent |EventTag_SchemaName | EventTag_CounterSignature, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectEvent |EventTag_SchemaName | EventTag_CounterSignature), + EGROUP_DDL_CRYPTOSIGN, + 0 + }, + + //----------------------------------------------- + // ADD SIGNATURE Event Schema + //----------------------------------------------- + { ETYP_ON_ADDSIGN, + x_eet_Add_Signature, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ADD_SIGNATURE", + EventTag_DatabaseEvent | EventTag_ObjectEvent | EventTag_CounterSignature, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectEvent | EventTag_CounterSignature), + EGROUP_DDL_CRYPTOSIGN, + 0 + }, + + //----------------------------------------------- + // DROP SIGNATURE Event Schema + //----------------------------------------------- + { ETYP_ON_DROPSIGN, + x_eet_Drop_Signature, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_SIGNATURE", + EventTag_DatabaseEvent | EventTag_ObjectEvent | EventTag_CounterSignature, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectEvent | EventTag_CounterSignature), + EGROUP_DDL_CRYPTOSIGN, + 0 + }, + + //----------------------------------------------- + // CREATE CREDENTIAL Event Schema + //----------------------------------------------- + { ETYP_ON_CREATECREDENTIAL, + x_eet_Create_Credential, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_CREDENTIAL", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_CREDENTIAL, + 0 + }, + + //----------------------------------------------- + // ALTER CREDENTIAL Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERCREDENTIAL, + x_eet_Alter_Credential, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_CREDENTIAL", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_CREDENTIAL, + 0 + }, + + //----------------------------------------------- + // DROP CREDENTIAL Event Schema + //----------------------------------------------- + { ETYP_ON_DROPCREDENTIAL, + x_eet_Drop_Credential, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_CREDENTIAL", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_CREDENTIAL, + 0 + }, + + //----------------------------------------------- + // CREATE CRYPTO PROVIDER Event Schema + //----------------------------------------------- + { ETYP_ON_CREATECRYPTOPROV, + x_eet_Create_CryptoProv, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_CRYPTOGRAPHIC_PROVIDER", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_CRYPTOPROV, + 0 + }, + + //----------------------------------------------- + // ALTER CRYPTO PROVIDER Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERCRYPTOPROV, + x_eet_Alter_CryptoProv, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_CRYPTOGRAPHIC_PROVIDER", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_CRYPTOPROV, + 0 + }, + + //----------------------------------------------- + // DROP CRYPTO PROVIDER Event Schema + //----------------------------------------------- + { ETYP_ON_DROPCRYPTOPROV, + x_eet_Drop_CryptoProv, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_CRYPTOGRAPHIC_PROVIDER", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_CRYPTOPROV, + 0 + }, + + //----------------------------------------------- + // ALTER AUTHORIZATION Server Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERAUTH_SERVER, + x_eet_Alter_Auth_Server, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_AUTHORIZATION_SERVER", + EventTag_ObjectOwnerEvent | EventTag_TSQLCommand, + NULL, + 4, + EGROUP_DDL_AUTH_SERVER, + 0 + }, + + //----------------------------------------------- + // ALTER AUTHORIZATION Database Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERAUTH_DATABASE, + x_eet_Alter_Auth_Database, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_AUTHORIZATION_DATABASE", + EventTag_SchemaDDL | EventTag_OwnerName, + NULL, + 6, + EGROUP_DDL_AUTH_DATABASE, + 0 + }, + + //*********************************************************************** + // START START - PARTITION RELATED - START START + // + //*********************************************************************** + + //----------------------------------------------- + // CREATE PARTITION FUNCTION Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEPRTFUNCTION, + x_eet_Create_Partition_Function, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_PARTITION_FUNCTION", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_PRTFUNCTION, + 0 + }, + + //----------------------------------------------- + // ALTER PARTITION FUNCTION Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERPRTFUNCTION, + x_eet_Alter_Partition_Function, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_PARTITION_FUNCTION", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_PRTFUNCTION, + 0 + }, + + //----------------------------------------------- + // DROP PARTITION FUNCTION Event Schema + //----------------------------------------------- + { ETYP_ON_DROPPRTFUNCTION, + x_eet_Drop_Partition_Function, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_PARTITION_FUNCTION", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_PRTFUNCTION, + 0 + }, + + //----------------------------------------------- + // CREATE PARTITION SCHEME Event Schema + //----------------------------------------------- + { ETYP_ON_CREATEPRTSCHEME, + x_eet_Create_Partition_Scheme, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_PARTITION_SCHEME", + EventTag_SchemaLessDDL | EventTag_Function, + NULL, + 5, + EGROUP_DDL_PRTSCHEME, + 0 + }, + + //----------------------------------------------- + // ALTER PARTITION SCHEME Event Schema + //----------------------------------------------- + { ETYP_ON_ALTERPRTSCHEME, + x_eet_Alter_Partition_Scheme, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_PARTITION_SCHEME", + EventTag_SchemaLessDDL | EventTag_Function, + NULL, + 5, + EGROUP_DDL_PRTSCHEME, + 0 + }, + + //----------------------------------------------- + // DROP PARTITION SCHEME Event Schema + //----------------------------------------------- + { ETYP_ON_DROPPRTSCHEME, + x_eet_Drop_Partition_Scheme, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_PARTITION_SCHEME", + EventTag_SchemaLessDDL | EventTag_Function, + NULL, + 5, + EGROUP_DDL_PRTSCHEME, + 0 + }, + + //----------------------------------------------- + // CREATE [PRIMARY] XML INDEX Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_XML_INDEX, + x_eet_Create_XML_Index, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_XML_INDEX", + EventTag_SchemaTargetDDL | EventTag_PrimaryXMLIndexName | EventTag_SecondaryXMLIndexType, + NULL, + 9, + EGROUP_DDL_INDEX, + 0 + }, + + //----------------------------------------------- + // SP_UPDATEEXTENDEDPROPERTY Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_EXTENDED_PROPERTY, + x_eet_Alter_Extended_Property, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_EXTENDED_PROPERTY", + EventTag_SPSchemaTargetDDL | EventTag_ExtendedPropertyEvent, + NULL, + 10, + EGROUP_DDL_EXTENDED_PROPERTY, + 0 + }, + //----------------------------------------------- + // ALTER FULLTEXT CATALOG Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_FULLTEXT_CATALOG, + x_eet_Alter_Fulltext_Catalog, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_FULLTEXT_CATALOG", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_FULLTEXT_CATALOG, + 0 + }, + //----------------------------------------------- + // ALTER FULLTEXT INDEX Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_FULLTEXT_INDEX, + x_eet_Alter_Fulltext_Index, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_FULLTEXT_INDEX", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_INDEX, + 0 + }, + //----------------------------------------------- + // SP_CONFIGURE Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_INSTANCE, + x_eet_Alter_Instance, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_INSTANCE", + EventTag_ExtendedPropertyEvent | EventTag_TSQLCommand | EventTag_Parameters, + NULL, + 4, + EGROUP_DDL_SERVER_LEVEL, + 0 + }, + //----------------------------------------------- + // SP_SERVEROPTION Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_LINKED_SERVER, + x_eet_Alter_Linked_Server, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_LINKED_SERVER", + EventTag_SPObjectEvent, + NULL, + 4, + EGROUP_DDL_LINKED_SERVER, + 0 + }, + //----------------------------------------------- + // SP_ALTERMESSAGE Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_MESSAGE, + x_eet_Alter_Message, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_MESSAGE", + EventTag_SPObjectEvent, + NULL, + 4, + EGROUP_DDL_MESSAGE, + 0 + }, + //----------------------------------------------- + // SP_CONTROL_PLAN_GUIDE Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_PLAN_GUIDE, + x_eet_Alter_Plan_Guide, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_PLAN_GUIDE", + EventTag_SPDatabaseEvent | EventTag_ObjectEvent, + NULL, + 5, + EGROUP_DDL_PLAN_GUIDE, + 0 + }, + //----------------------------------------------- + // SP_SERVEROPTION Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_REMOTE_SERVER, + x_eet_Alter_Remote_Server, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_REMOTE_SERVER", + EventTag_SPObjectEvent, + NULL, + 4, + EGROUP_DDL_REMOTE_SERVER, + 0 + }, + //----------------------------------------------- + // SP_BINDEFAULT Event Schema + //----------------------------------------------- + { ETYP_ON_BIND_DEFAULT, + x_eet_Bind_Default, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"BIND_DEFAULT", + EventTag_SPSchemaDDL, + NULL, + 6, + EGROUP_DDL_DEFAULT, + 0 + }, + //----------------------------------------------- + // SP_BINDRULE Event Schema + //----------------------------------------------- + { ETYP_ON_BIND_RULE, + x_eet_Bind_Rule, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"BIND_RULE", + EventTag_SPSchemaDDL, + NULL, + 6, + EGROUP_DDL_RULE, + 0 + }, + //----------------------------------------------- + // CREATE DEFAULT Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_DEFAULT, + x_eet_Create_Default, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_DEFAULT", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_DEFAULT, + 0 + }, + //----------------------------------------------- + // SP_ADDEXTENDEDPROC Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_EXTENDED_PROCEDURE, + x_eet_Create_Extended_Procedure, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_EXTENDED_PROCEDURE", + EventTag_SPObjectEvent, + NULL, + 4, + EGROUP_DDL_EXTENDED_PROCEDURE, + 0 + }, + //----------------------------------------------- + // SP_ADDEXTENDEDPROPERTY Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_EXTENDED_PROPERTY, + x_eet_Create_Extended_Property, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_EXTENDED_PROPERTY", + EventTag_SPSchemaTargetDDL | EventTag_ExtendedPropertyEvent, + NULL, + 10, + EGROUP_DDL_EXTENDED_PROPERTY, + 0 + }, + //----------------------------------------------- + // CREATE FULLTEXT CATALOG Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_FULLTEXT_CATALOG, + x_eet_Create_Fulltext_Catalog, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_FULLTEXT_CATALOG", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_FULLTEXT_CATALOG, + 0 + }, + //----------------------------------------------- + // CREATE FULLTEXT INDEX Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_FULLTEXT_INDEX, + x_eet_Create_Fulltext_Index, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_FULLTEXT_INDEX", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_INDEX, + 0 + }, + //----------------------------------------------- + // SP_ADDLINKEDSERVER Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_LINKED_SERVER, + x_eet_Create_Linked_Server, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_LINKED_SERVER", + EventTag_SPObjectEvent, + NULL, + 4, + EGROUP_DDL_LINKED_SERVER, + 0 + }, + //----------------------------------------------- + // SP_ADDLINKEDSRVLOGIN Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_LINKED_SERVER_LOGIN, + x_eet_Create_Linked_Server_Login, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_LINKED_SERVER_LOGIN", + EventTag_SPObjectTargetEvent, + NULL, + 6, + EGROUP_DDL_LINKED_SERVER_LOGIN, + 0 + }, + //----------------------------------------------- + // SP_ADDMESSAGE Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_MESSAGE, + x_eet_Create_Message, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_MESSAGE", + EventTag_SPObjectEvent, + NULL, + 4, + EGROUP_DDL_MESSAGE, + 0 + }, + //----------------------------------------------- + // SP_CREATE_PLAN_GUIDE Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_PLAN_GUIDE, + x_eet_Create_Plan_Guide, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_PLAN_GUIDE", + EventTag_SPDatabaseEvent | EventTag_ObjectEvent, + NULL, + 5, + EGROUP_DDL_PLAN_GUIDE, + 0 + }, + //----------------------------------------------- + // SP_ADDSERVER Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_REMOTE_SERVER, + x_eet_Create_Remote_Server, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_REMOTE_SERVER", + EventTag_SPObjectEvent, + NULL, + 4, + EGROUP_DDL_REMOTE_SERVER, + 0 + }, + //----------------------------------------------- + // CREATE RULE Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_RULE, + x_eet_Create_Rule, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_RULE", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_RULE, + 0 + }, + //----------------------------------------------- + // DROP DEFAULT Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_DEFAULT, + x_eet_Drop_Default, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_DEFAULT", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_DEFAULT, + 0 + }, + //----------------------------------------------- + // SP_DROPEXTENDEDPROC Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_EXTENDED_PROCEDURE, + x_eet_Drop_Extended_Procedure, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_EXTENDED_PROCEDURE", + EventTag_SPObjectEvent, + NULL, + 4, + EGROUP_DDL_EXTENDED_PROCEDURE, + 0 + }, + //----------------------------------------------- + // SP_DROPEXTENDEDPROPERTY Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_EXTENDED_PROPERTY, + x_eet_Drop_Extended_Property, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_EXTENDED_PROPERTY", + EventTag_SPSchemaTargetDDL | EventTag_PropertyName, + NULL, + 9, + EGROUP_DDL_EXTENDED_PROPERTY, + 0 + }, + //----------------------------------------------- + // DROP FULLTEXT CATALOG Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_FULLTEXT_CATALOG, + x_eet_Drop_Fulltext_Catalog, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_FULLTEXT_CATALOG", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_FULLTEXT_CATALOG, + 0 + }, + //----------------------------------------------- + // DROP FULLTEXT INDEX Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_FULLTEXT_INDEX, + x_eet_Drop_Fulltext_Index, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_FULLTEXT_INDEX", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_INDEX, + 0 + }, + //----------------------------------------------- + // SP_DROPSERVER Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_LINKED_SERVER, + x_eet_Drop_Linked_Server, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_LINKED_SERVER", + EventTag_SPObjectEvent, + NULL, + 4, + EGROUP_DDL_LINKED_SERVER, + 0 + }, + //----------------------------------------------- + // SP_DROPLINKEDSRVLOGIN Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_LINKED_SERVER_LOGIN, + x_eet_Drop_Linked_Server_Login, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_LINKED_SERVER_LOGIN", + EventTag_SPObjectTargetEvent, + NULL, + 6, + EGROUP_DDL_LINKED_SERVER_LOGIN, + 0 + }, + //----------------------------------------------- + // SP_DROPMESSAGE Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_MESSAGE, + x_eet_Drop_Message, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_MESSAGE", + EventTag_SPObjectEvent, + NULL, + 4, + EGROUP_DDL_MESSAGE, + 0 + }, + //----------------------------------------------- + // SP_CONTROL_PLAN_GUIDE Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_PLAN_GUIDE, + x_eet_Drop_Plan_Guide, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_PLAN_GUIDE", + EventTag_SPDatabaseEvent | EventTag_ObjectEvent, + NULL, + 5, + EGROUP_DDL_PLAN_GUIDE, + 0 + }, + //----------------------------------------------- + // SP_DROPSERVER Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_REMOTE_SERVER, + x_eet_Drop_Remote_Server, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_REMOTE_SERVER", + EventTag_SPObjectEvent, + NULL, + 4, + EGROUP_DDL_REMOTE_SERVER, + 0 + }, + //----------------------------------------------- + // DROP RULE Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_RULE, + x_eet_Drop_Rule, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_RULE", + EventTag_SchemaDDL, + NULL, + 5, + EGROUP_DDL_RULE, + 0 + }, + + //----------------------------------------------- + // SP_RENAME Event Schema + //----------------------------------------------- + { ETYP_ON_RENAME, + x_eet_Rename, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"RENAME", + EventTag_SPSchemaTargetDDL | EventTag_NewObjectName, + NULL, + 9, + EGROUP_DDL_DATABASE_LEVEL, + 0 + }, + //----------------------------------------------- + // SP_UNBINDEFAULT Event Schema + //----------------------------------------------- + { ETYP_ON_UNBIND_DEFAULT, + x_eet_Unbind_Default, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"UNBIND_DEFAULT", + EventTag_SPSchemaDDL, + NULL, + 6, + EGROUP_DDL_DEFAULT, + 0 + }, + //----------------------------------------------- + // SP_UNBINDRULE Event Schema + //----------------------------------------------- + { ETYP_ON_UNBIND_RULE, + x_eet_Unbind_Rule, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"UNBIND_RULE", + EventTag_SPSchemaDDL, + NULL, + 6, + EGROUP_DDL_RULE, + 0 + }, + //*********************************************************************** + // END END - PARTITION RELATED - END END + // + //*********************************************************************** + + //----------------------------------------------- + // CREATE FULLTEXT STOPLIST Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_FULLTEXT_STOPLIST, + x_eet_Create_Fulltext_StopList, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_FULLTEXT_STOPLIST", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_FULLTEXT_STOPLIST, + 0 + }, + //----------------------------------------------- + // ALTER FULLTEXT STOPLIST Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_FULLTEXT_STOPLIST, + x_eet_Alter_Fulltext_StopList, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_FULLTEXT_STOPLIST", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_FULLTEXT_STOPLIST, + 0 + }, + //----------------------------------------------- + // DROP FULLTEXT STOPLIST Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_FULLTEXT_STOPLIST, + x_eet_Drop_Fulltext_StopList, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_FULLTEXT_STOPLIST", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_FULLTEXT_STOPLIST, + 0 + }, + + //----------------------------------------------- + // CREATE PROPERTY LIST Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_PROPERTYLIST, + x_eet_Create_PropertyList, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_SEARCH_PROPERTY_LIST", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_PROPERTYLIST, + 0 + }, + //----------------------------------------------- + // ALTER FULLTEXT PROPERTY LIST Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_PROPERTYLIST, + x_eet_Alter_PropertyList, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_SEARCH_PROPERTY_LIST", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_PROPERTYLIST, + 0 + }, + //----------------------------------------------- + // DROP FULLTEXT PROPERTY LIST Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_PROPERTYLIST, + x_eet_Drop_PropertyList, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_SEARCH_PROPERTY_LIST", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_PROPERTYLIST, + 0 + }, + + //----------------------------------------------- + // CREATE_EVENT_SESSION Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_EVENT_SESSION, + x_eet_Create_Event_Session, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_EVENT_SESSION", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_EVENT_SESSION, + 0 + }, + + //----------------------------------------------- + // ALTER_EVENT_SESSION Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_EVENT_SESSION, + x_eet_Alter_Event_Session, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_EVENT_SESSION", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_EVENT_SESSION, + 0 + }, + + //----------------------------------------------- + // DROP_EVENT_SESSION Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_EVENT_SESSION, + x_eet_Drop_Event_Session, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_EVENT_SESSION", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_EVENT_SESSION, + 0 + }, + + //----------------------------------------------- + // CREATE RESOURCE POOL Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_RES_POOL, + x_eet_Create_Resource_Pool, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_RESOURCE_POOL", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_RESOURCE_POOL, + 0 + }, + + //----------------------------------------------- + // ALTER RESOURCE POOL Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_RES_POOL, + x_eet_Alter_Resource_Pool, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_RESOURCE_POOL", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_RESOURCE_POOL, + 0 + }, + + //----------------------------------------------- + // DROP RESOURCE POOL Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_RES_POOL, + x_eet_Drop_Resource_Pool, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_RESOURCE_POOL", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_RESOURCE_POOL, + 0 + }, + + //----------------------------------------------- + // CREATE WORKLOAD GROUP Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_RES_GROUP, + x_eet_Create_Resource_Group, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_WORKLOAD_GROUP", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_RESOURCE_GROUP, + 0 + }, + + //----------------------------------------------- + // ALTER WORKLOAD GROUP Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_RES_GROUP, + x_eet_Alter_Resource_Group, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_WORKLOAD_GROUP", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_RESOURCE_GROUP, + 0 + }, + + //----------------------------------------------- + // DROP WORKLOAD GROUP Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_RES_GROUP, + x_eet_Drop_Resource_Group, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_WORKLOAD_GROUP", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_RESOURCE_GROUP, + 0 + }, + + //----------------------------------------------- + // ALTER RESOURCE GOVERNOR CONFIGURATION Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_RES_GOVERNOR_CONFIG, + x_eet_Alter_Resource_Governor_Config, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_RESOURCE_GOVERNOR_CONFIG", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_RESOURCE_GOVERNOR, + 0 + }, + + + //----------------------------------------------- + // CREATE SPATIAL INDEX Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_SPATIAL_INDEX, + x_eet_Create_Spatial_Index, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_SPATIAL_INDEX", + EventTag_SchemaTargetDDL, + NULL, + BitCount64( EventTag_SchemaTargetDDL), + EGROUP_DDL_INDEX, + 0 + }, + + // Audit Related Events + // + //----------------------------------------------- + // CREATE SERVER AUDIT Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_SERVER_AUDIT, + x_eet_Create_ServerAudit, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_SERVER_AUDIT", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_SERVERAUDIT, + 0 + }, + + //----------------------------------------------- + // ALTER SERVER AUDIT Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_SERVER_AUDIT, + x_eet_Alter_ServerAudit, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_SERVER_AUDIT", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_SERVERAUDIT, + 0 + }, + + //----------------------------------------------- + // DROP SERVER AUDIT Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_SERVER_AUDIT, + x_eet_Drop_ServerAudit, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_SERVER_AUDIT", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_SERVERAUDIT, + 0 + }, + + //----------------------------------------------- + // CREATE SERVER AUDIT SPEC Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_SERVER_AUDIT_SPEC, + x_eet_Create_ServerAuditSpec, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_SERVER_AUDIT_SPECIFICATION", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_SERVERAUDITSPEC, + 0 + }, + + //----------------------------------------------- + // ALTER SERVER AUDIT SPEC Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_SERVER_AUDIT_SPEC, + x_eet_Alter_ServerAuditSpec, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_SERVER_AUDIT_SPECIFICATION", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_SERVERAUDITSPEC, + 0 + }, + + //----------------------------------------------- + // DROP SERVER AUDIT SPEC Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_SERVER_AUDIT_SPEC, + x_eet_Drop_ServerAuditSpec, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_SERVER_AUDIT_SPECIFICATION", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_SERVERAUDITSPEC, + 0 + }, + + //----------------------------------------------- + // CREATE DB AUDIT SPEC Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_DB_AUDIT_SPEC, + x_eet_Create_DbAuditSpec, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_DATABASE_AUDIT_SPECIFICATION", + EventTag_DatabaseEvent | EventTag_ObjectEvent, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectEvent), + EGROUP_DDL_DBAUDITSPEC, + 0 + }, + + //----------------------------------------------- + // ALTER DB AUDIT SPEC Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_DB_AUDIT_SPEC, + x_eet_Alter_DbAuditSpec, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_DATABASE_AUDIT_SPECIFICATION", + EventTag_DatabaseEvent | EventTag_ObjectEvent, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectEvent), + EGROUP_DDL_DBAUDITSPEC, + 0 + }, + + //----------------------------------------------- + // DROP DB AUDIT SPEC Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_DB_AUDIT_SPEC, + x_eet_Drop_DbAuditSpec, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_DATABASE_AUDIT_SPECIFICATION", + EventTag_DatabaseEvent | EventTag_ObjectEvent, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectEvent), + EGROUP_DDL_DBAUDITSPEC, + 0 + }, + + //----------------------------------------------- + // CREATE SEQUENCE Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_SEQUENCE, + x_eet_Create_Sequence, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_SEQUENCE", + EventTag_SchemaDDL, + NULL, + BitCount64(EventTag_SchemaDDL), + EGROUP_DDL_SEQUENCE, + 0 + }, + + //----------------------------------------------- + // ALTER SEQUENCE Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_SEQUENCE, + x_eet_Alter_Sequence, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_SEQUENCE", + EventTag_SchemaDDL, + NULL, + BitCount64(EventTag_SchemaDDL), + EGROUP_DDL_SEQUENCE, + 0 + }, + + //----------------------------------------------- + // DROP SEQUENCE Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_SEQUENCE, + x_eet_Drop_Sequence, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_SEQUENCE", + EventTag_SchemaDDL, + NULL, + BitCount64(EventTag_SchemaDDL), + EGROUP_DDL_SEQUENCE, + 0 + }, + + //----------------------------------------------- + // CREATE AVAILABILITY GROUP Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_AVAILABILITY_GROUP, + x_eet_Create_Availability_Group, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_AVAILABILITY_GROUP", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_AVAILABILITY_GROUP, + 0 + }, + + //----------------------------------------------- + // ALTER AVAILABILITY GROUP Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_AVAILABILITY_GROUP, + x_eet_Alter_Availability_Group, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_AVAILABILITY_GROUP", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_AVAILABILITY_GROUP, + 0 + }, + + //----------------------------------------------- + // DROP AVAILABILITY GROUP Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_AVAILABILITY_GROUP, + x_eet_Drop_Availability_Group, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_AVAILABILITY_GROUP", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_AVAILABILITY_GROUP, + 0 + }, + + //----------------------------------------------- + // CREATE DATABASE AUDIT Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_DATABASE_AUDIT, + x_eet_Create_Database_Audit, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_AUDIT", + EventTag_DatabaseEvent | EventTag_ObjectEvent, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectEvent), + EGROUP_DDL_DBAUDIT, + 0 + }, + + //----------------------------------------------- + // DROP DATABASE AUDIT Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_DATABASE_AUDIT, + x_eet_Drop_Database_Audit, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_AUDIT", + EventTag_DatabaseEvent | EventTag_ObjectEvent, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectEvent), + EGROUP_DDL_DBAUDIT, + 0 + }, + + //----------------------------------------------- + // ALTER DATABASE AUDIT Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_DATABASE_AUDIT, + x_eet_Alter_Database_Audit, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_AUDIT", + EventTag_DatabaseEvent | EventTag_ObjectEvent, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectEvent), + EGROUP_DDL_DBAUDIT, + 0 + }, + + //----------------------------------------------- + // CREATE SECURITY POLICY Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_SECURITY_POLICY, + x_eet_Create_Security_Policy, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_SECURITY_POLICY", + EventTag_SchemaDDL, + NULL, + BitCount64(EventTag_SchemaDDL), + EGROUP_DDL_SECURITY_POLICY, + 0 + }, + + //----------------------------------------------- + // ALTER SECURITY POLICY Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_SECURITY_POLICY, + x_eet_Alter_Security_Policy, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_SECURITY_POLICY", + EventTag_SchemaDDL, + NULL, + BitCount64(EventTag_SchemaDDL), + EGROUP_DDL_SECURITY_POLICY, + 0 + }, + + //----------------------------------------------- + // DROP SECURITY POLICY Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_SECURITY_POLICY, + x_eet_Drop_Security_Policy, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_SECURITY_POLICY", + EventTag_SchemaDDL, + NULL, + BitCount64(EventTag_SchemaDDL), + EGROUP_DDL_SECURITY_POLICY, + 0 + }, + + //----------------------------------------------- + // CREATE COLUMN MASTER KEY Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_COL_MASTER_KEY, + x_eet_Create_Col_Master_Key, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_COLUMN_MASTER_KEY", + EventTag_DatabaseEvent | EventTag_ObjectEvent, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectEvent), + EGROUP_DDL_COL_MASTER_KEY, + 0 + }, + + //----------------------------------------------- + // DROP COLUMN MASTER KEY Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_COL_MASTER_KEY, + x_eet_Drop_Col_Master_Key, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_COLUMN_MASTER_KEY", + EventTag_DatabaseEvent | EventTag_ObjectEvent, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectEvent), + EGROUP_DDL_COL_MASTER_KEY, + 0 + }, + + //----------------------------------------------- + // CREATE COLUMN ENCRYPTION KEY Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_COL_ENCRYPTION_KEY, + x_eet_Create_Col_Encryption_Key, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_COLUMN_ENCRYPTION_KEY", + EventTag_DatabaseEvent | EventTag_ObjectEvent, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectEvent), + EGROUP_DDL_COL_ENCRYPTION_KEY, + 0 + }, + + //----------------------------------------------- + // ALTER COLUMN ENCRYPTION KEY Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_COL_ENCRYPTION_KEY, + x_eet_Alter_Col_Encryption_Key, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_COLUMN_ENCRYPTION_KEY", + EventTag_DatabaseEvent | EventTag_ObjectEvent, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectEvent), + EGROUP_DDL_COL_ENCRYPTION_KEY, + 0 + }, + + //----------------------------------------------- + // DROP COLUMN ENCRYPTION KEY Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_COL_ENCRYPTION_KEY, + x_eet_Drop_Col_Encryption_Key, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_COLUMN_ENCRYPTION_KEY", + EventTag_DatabaseEvent | EventTag_ObjectEvent, + NULL, + BitCount64(EventTag_DatabaseEvent | EventTag_ObjectEvent), + EGROUP_DDL_COL_ENCRYPTION_KEY, + 0 + }, + + //----------------------------------------------- + // ALTER DATABASE SCOPED CONFIG Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_DB_SCOPED_CONFIG, + x_eet_Alter_DB_Scoped_Config, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_DATABASE_SCOPED_CONFIGURATION", + EventTag_DatabaseEvent, + NULL, + BitCount64(EventTag_DatabaseEvent), + EGROUP_DDL_DATABASE_LEVEL, + 0 + }, + + //----------------------------------------------- + // CREATE EXTERNAL RESOURCE POOL Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_EXTERNAL_RESOURCE_POOL, + x_eet_Create_External_Resource_Pool, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_EXTERNAL_RESOURCE_POOL", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_EXTERNAL_RESOURCE_POOL, + 0 + }, + + //----------------------------------------------- + // ALTER EXTERNAL RESOURCE POOL Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_EXTERNAL_RESOURCE_POOL, + x_eet_Alter_External_Resource_Pool, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_EXTERNAL_RESOURCE_POOL", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_EXTERNAL_RESOURCE_POOL, + 0 + }, + + //----------------------------------------------- + // DROP EXTERNAL RESOURCE POOL Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_EXTERNAL_RESOURCE_POOL, + x_eet_Drop_External_Resource_Pool, + EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_EXTERNAL_RESOURCE_POOL", + EventTag_ServerEvent, + NULL, + BitCount64(EventTag_ServerEvent), + EGROUP_DDL_EXTERNAL_RESOURCE_POOL, + 0 + }, + + //----------------------------------------------- + // CREATE EXTERNAL LIBRARY Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_EXTERNAL_LIBRARY, + x_eet_Create_External_Library, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_EXTERNAL_LIBRARY", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_LIBRARY, + 0 + }, + + //----------------------------------------------- + // ALTER EXTERNAL LIBRARY Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_EXTERNAL_LIBRARY, + x_eet_Alter_External_Library, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_EXTERNAL_LIBRARY", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_LIBRARY, + 0 + }, + + //----------------------------------------------- + // DROP EXTERNAL LIBRARY Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_EXTERNAL_LIBRARY, + x_eet_Drop_External_Library, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_EXTERNAL_LIBRARY", + EventTag_SchemaLessDDL, + NULL, + 4, + EGROUP_DDL_LIBRARY, + 0 + }, + + //----------------------------------------------- + // ADD SENSITIVITY CLASSIFICATION Event Schema + //----------------------------------------------- + { ETYP_ON_ADD_SENSITIVITY_CLASSIFICATION, + x_eet_Add_Sensitivity_Classification, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ADD_SENSITIVITY_CLASSIFICATION", + EventTag_SchemaDDL, + NULL, + BitCount64(EventTag_SchemaDDL), + EGROUP_DDL_SENSITIVITY, + 0 + }, + + //----------------------------------------------- + // DROP SENSITIVITY CLASSIFICATION Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_SENSITIVITY_CLASSIFICATION, + x_eet_Drop_Sensitivity_Classification, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_SENSITIVITY_CLASSIFICATION", + EventTag_SchemaDDL, + NULL, + BitCount64(EventTag_SchemaDDL), + EGROUP_DDL_SENSITIVITY, + 0 + }, + + //----------------------------------------------- + // CREATE EXTERNAL LANGUAGE Event Schema + //----------------------------------------------- + { ETYP_ON_CREATE_EXTERNAL_LANGUAGE, + x_eet_Create_External_Language, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"CREATE_EXTERNAL_LANGUAGE", + EventTag_SchemaLessDDL, + NULL, + BitCount64(EventTag_SchemaLessDDL), + EGROUP_DDL_EXTERNAL_LANGUAGE, + 0 + }, + + //----------------------------------------------- + // ALTER EXTERNAL LANGUAGE Event Schema + //----------------------------------------------- + { ETYP_ON_ALTER_EXTERNAL_LANGUAGE, + x_eet_Alter_External_Language, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"ALTER_EXTERNAL_LANGUAGE", + EventTag_SchemaLessDDL, + NULL, + BitCount64(EventTag_SchemaLessDDL), + EGROUP_DDL_EXTERNAL_LANGUAGE, + 0 + }, + + //----------------------------------------------- + // DROP EXTERNAL LANGUAGE Event Schema + //----------------------------------------------- + { ETYP_ON_DROP_EXTERNAL_LANGUAGE, + x_eet_Drop_External_Language, + EOBJTYP_DATABASE | EOBJTYP_SERVER, + EFLAG_SAME_TRANS, + L"DROP_EXTERNAL_LANGUAGE", + EventTag_SchemaLessDDL, + NULL, + BitCount64(EventTag_SchemaLessDDL), + EGROUP_DDL_EXTERNAL_LANGUAGE, + 0 + }, + + //*********************************************************************** + // START - NON DDL EVENT TYPES - START + //*********************************************************************** + + //----------------------------------------------- + // SERVICE QUEUE ACTIVATION Event Schema + //----------------------------------------------- + { ETYP_ON_ACTIVATION, + x_eet_Activation, + EOBJTYP_SVCQ, + EFLAG_ASYNC_ONLY, + L"QUEUE_ACTIVATION", + EventTag_ObjectEvent | EventTag_DatabaseName | EventTag_SchemaName, + NULL, + 4, + EGROUP_ALL, + 0 + }, + + //----------------------------------------------- + // SERVICE QUEUE DISABLED Event Schema + //----------------------------------------------- + { ETYP_ON_QUEUE_DISABLED, + x_eet_Queue_Disabled, + EOBJTYP_SVCQ, + EFLAG_ASYNC_ONLY | EFLAG_DDLADMN_CAD_PERM, + L"BROKER_QUEUE_DISABLED", + EventTag_ObjectEvent | EventTag_DatabaseName | EventTag_SchemaName, + NULL, + 4, + EGROUP_ALL, + 0 + }, + + //----------------------------------------------- + // ALTER SERVER CONFIGURATION Event Schema + // ALTER SERVER does not support transactional semantics and does not expose a DDL trigger + //----------------------------------------------- + { ETYP_ON_ALTER_SERVER_CONFIG, + x_eet_Alter_Server_Config, + EOBJTYP_SERVER, + EFLAG_ASYNC_ONLY, + L"ALTER_SERVER_CONFIGURATION", + EventTag_ObjectType | EventTag_TSQLCommand, + NULL, + BitCount64(EventTag_ObjectType | EventTag_TSQLCommand), + EGROUP_ALL, + 0 + }, + + //*********************************************************************** + // END - NON DDL EVENT TYPES - END + //*********************************************************************** + + //------------------------------------------------- + // SQL Trace events. Do not add regular events below this!!! + //------------------------------------------------- +#include "schema.inc" +}; + diff --git a/SmoBuild/DdlEvents/evtenum_template.cs b/SmoBuild/DdlEvents/evtenum_template.cs new file mode 100644 index 00000000..ccaa8188 --- /dev/null +++ b/SmoBuild/DdlEvents/evtenum_template.cs @@ -0,0 +1,67 @@ +// ************************************************************************** +// Copyright (c) Microsoft Corporation. +// +// @File: smoevt.txt +// @Owner: macies +// +// Description: +// +// This is a template file used by smoevt.pl to autogenerate smoevt.cs. +// +// Notes: +@@@ autogenerated +// +// History: +// +// @Version: Yukon +// 000000 MJW 09/10/03 ... +// +// @EndHeader@ +// ************************************************************************** + +using System; +using System.Collections; +using System.Collections.Specialized; +using System.Text; + +namespace Microsoft.SqlServer.Management.Smo +{ + // ************************************************************************** + // + // CLASSES + // + // ************************************************************************** + + internal partial class PostProcessServerDdlTriggerEvents : PostProcessDdlEvents + { + + private ServerDdlTriggerEvent ServerDdlTriggerEventOffsetFromEventString(string evtdesc) + { + switch (evtdesc) + { +@@@ServerDdlTriggerEvent_string_offset_mapping + } + return ServerDdlTriggerEvent.CreateEndpoint; + } + } + + internal partial class PostProcessDatabaseDdlTriggerEvents : PostProcessDdlEvents + { + + private DatabaseDdlTriggerEvent DatabaseDdlTriggerEventOffsetFromEventString(string evtdesc) + { + switch (evtdesc) + { +@@@DatabaseDdlTriggerEvent_string_offset_mapping + } + + return DatabaseDdlTriggerEvent.CreateTable; + } + } + + // From here on generated template code +@@@CLASS_TEMPLATE + // End of generated template code + + +} diff --git a/SmoBuild/DdlEvents/evtschema.pl b/SmoBuild/DdlEvents/evtschema.pl new file mode 100644 index 00000000..d40396fa --- /dev/null +++ b/SmoBuild/DdlEvents/evtschema.pl @@ -0,0 +1,57 @@ +#**************************************************************************************** +# Copyright (c) Microsoft Corporation. +# @File: evtschema.pl +# @Owner: jayc +# +# Purpose: +# This script generates the temporary eventsschema.tmp file from eventsschema.cpp and other SQLTrace +# generated files. This new file is used by mofgen.pl. +# +# Usage: +# perl evtschema.pl eventschema.cpp $(O) +# @EndHeader@ +#**************************************************************************************** + +# Get ful path to eventsschema.cpp +$eventsschema_cpp = $ARGV[0]; + +# Get output directory +$OutputDir = $ARGV[1]; + +# Eventsschema.cpp +open(EVTSCHEMACPP, $eventsschema_cpp) || die "Cannot open $eventsschema_cpp\n"; + +# New destination file +open(OUTF, ">" . $OutputDir . "\\eventsschema.tmp") || die "Cannot write to eventsschema.tmp\n"; + +# read and copy +while() +{ + # search for pattern like #include "abc.inc" + if(/^\s*#include\s+\"(\w+\.inc)\"\s*$/) + { + print OUTF "// " , $1, "\n"; + &IncludeFile($1); + } + else + { + print OUTF $_; + } +} + +close(EVTSCHEMACPP); +close(OUTF); + + +sub IncludeFile +{ + local($IncName) = @_; + open(INCFILE, $OutputDir . "\\" . $IncName) || die "Cannot open " . $IncName . "\n"; + while() + { + print OUTF $_; + } + + print OUTF "\n"; + close(INCFILE); +} diff --git a/SmoBuild/DdlEvents/smoevt.pl b/SmoBuild/DdlEvents/smoevt.pl new file mode 100644 index 00000000..ec3d0c6d --- /dev/null +++ b/SmoBuild/DdlEvents/smoevt.pl @@ -0,0 +1,1102 @@ +#!/usr/bin/perl +#**************************************************************************** +# Copyright (c) Microsoft Corporation. +# +# @File: smoevt.pl +# @Owner: macies +# +# Purpose: +# +# This script is used for automatic generation of smoevt.cs +# from eventsschema.cpp +# +# Adapted from mofgen.pl by mwories +# +# History: +# +# @Version: Yukon +# 00000 MJW 09/10/03 This file was created +# +# @EndHeader@ +#**************************************************************************** +use strict; +use warnings "all"; + +######################################################## +# EVENT SCHEMA VARIABLES +######################################################## + +# The result after the parsing will be kept in the following two scalars. +# +my $class_select_list = ""; + +# the events that are defined here are routed events +my @server_events; +my @database_events = ("DROP_DATABASE"); +my @table_events; +my @view_events; +my @function_events; +my @sp_events; +my @asm_events; +my @svcq_events = ("ALTER_QUEUE", "DROP_QUEUE"); +my @object_events = ("ALTER", "DROP"); +my @all_events; +my @trace_events; +my @server_level_triggers; +my @database_level_triggers; + +######################################################## +# EVENT GROUPS' VARIABLES +######################################################## + +# The parse result for the groups will be kept in the following scalar +my $group_def = ""; + +# If 0, then we are outside of the group definition. +my $f_inside_group_def = 0; +my $f_inside_schema_def = 0; + +# The following hash holds the group names +my %h_group_name; +$h_group_name{ "EGROUP_INVALID" } = "Envelope"; +my %h_group_children; +my %h_event_parent; + +# The following hash holds the group-parent relationship +my %h_group_parent; + +# Prototypes +# +sub CamelCase($); +sub CreateEnum(@); +sub CreateStaticProps($@); +sub CreateProps($@); +sub CreateStringFromEvent($@); +sub CreateEventFromString($@); +sub GetEventsInGroupRecurse($); +sub GetGroupsInGroupRecurse($); +sub CreateEventsGroupProp($$); +sub CreateEventsGroupPropInit($$); +sub CreateElementCount(@); + +######################################################## +# +# TEMPLATE GENERATION +# +# The following section generates a template +# file based on a class template file. +# This is done as we do not want to copy/paste +# identical class definitions into the overall +# template file. +# +######################################################## + +my $gen_for_enum_or_main = $ARGV[0]; +my $event_schema = $ARGV[1]; +my $class_template = $ARGV[2]; # class template - class_template.cs +my $template = $ARGV[3]; # overall template - smoevt_template.cs +my $output_template=$ARGV[4] ? $ARGV[4] : "smoevt_gen_template.cs"; + # optional input: generated template temp file + +my @classnames; + +if( $gen_for_enum_or_main eq "main" ) +{ + @classnames = qw(ServerEvent ServerTraceEvent DatabaseEvent TableEvent ViewEvent ServiceQueueEvent ObjectEvent UserDefinedFunctionEvent StoredProcedureEvent SqlAssemblyEvent); +} +else +{ + @classnames = qw(ServerDdlTriggerEvent DatabaseDdlTriggerEvent); +} + +my $template_code; + +# Generate class definitions +open(CLASS_TEMPLATE_FILE, $class_template) || die "Cannot open class template: $class_template $!"; + +foreach my $classname (@classnames) +{ + while () + { + s/CLASSNAME/$classname/g; + $template_code .= $_; + } + seek CLASS_TEMPLATE_FILE, 0, 0; +} +close CLASS_TEMPLATE_FILE || die "Close failed."; + +# Write template file +open(TEMPLATE, $template) || die "Cannot open template: $template $!"; +open(OUTPUT_TEMPLATE, ">$output_template") || die "Cannot open $output_template: $!"; + +while (