Class ServerToCloudMigrationPlanBuilder
Default IServerToCloudMigrationPlanBuilder implementation.
Namespace: Tableau.Migration.Engine
Assembly: Tableau.Migration.dll
Syntax
public class ServerToCloudMigrationPlanBuilder : IServerToCloudMigrationPlanBuilder, IMigrationPlanBuilder
Constructors
ServerToCloudMigrationPlanBuilder(ISharedResourcesLocalizer, IMigrationPlanBuilder)
Creates a new ServerToCloudMigrationPlanBuilder object.
Declaration
public ServerToCloudMigrationPlanBuilder(ISharedResourcesLocalizer localizer, IMigrationPlanBuilder innerBuilder)
Parameters
Type | Name | Description |
---|---|---|
ISharedResourcesLocalizer | localizer | The string localizer. |
IMigrationPlanBuilder | innerBuilder | A general plan builder to wrap. |
Methods
AppendDefaultServerToCloudExtensions()
Appends default hooks, filters, mappings, and transformations for server-to-cloud migrations. This method is intended for upgrading existing plan builders - new plan builders should use ForServerToCloud() instead.
Declaration
public IServerToCloudMigrationPlanBuilder AppendDefaultServerToCloudExtensions()
Returns
Type | Description |
---|---|
IServerToCloudMigrationPlanBuilder | The same plan builder object for fluent API calls. |
ValidateServerToCloud()
Validates the plan's server-to-cloud specific validation rules.
Declaration
public IResult ValidateServerToCloud()
Returns
Type | Description |
---|---|
IResult | The validation result. |
WithAuthenticationType(string, Func<ContentMappingContext<IUsernameContent>, CancellationToken, Task<string?>>)
Adds an object to map user and group domains based on the destination authentication type.
Declaration
public IServerToCloudMigrationPlanBuilder WithAuthenticationType(string authenticationType, Func<ContentMappingContext<IUsernameContent>, CancellationToken, Task<string?>> callback)
Parameters
Type | Name | Description |
---|---|---|
string | authenticationType | An authentication type to assign to users. |
Func<ContentMappingContext<IUsernameContent>, CancellationToken, Task<string>> | callback | A callback to call for the mapping. |
Returns
Type | Description |
---|---|
IServerToCloudMigrationPlanBuilder | The same plan builder object for fluent API calls. |
WithAuthenticationType(string, string, string)
Adds an object to map user and group domains based on the destination authentication type.
Declaration
public IServerToCloudMigrationPlanBuilder WithAuthenticationType(string authType, string userDomain, string groupDomain)
Parameters
Type | Name | Description |
---|---|---|
string | authType | |
string | userDomain | The domain to map users to. |
string | groupDomain | The domain to map groups to. |
Returns
Type | Description |
---|---|
IServerToCloudMigrationPlanBuilder | The same plan builder object for fluent API calls. |
WithAuthenticationType(string, IAuthenticationTypeDomainMapping)
Adds an object to map user and group domains based on the destination authentication type.
Declaration
public IServerToCloudMigrationPlanBuilder WithAuthenticationType(string authenticationType, IAuthenticationTypeDomainMapping authenticationTypeMapping)
Parameters
Type | Name | Description |
---|---|---|
string | authenticationType | An authentication type to assign to users. |
IAuthenticationTypeDomainMapping | authenticationTypeMapping | The mapping to execute. |
Returns
Type | Description |
---|---|
IServerToCloudMigrationPlanBuilder | The same plan builder object for fluent API calls. |
WithAuthenticationType<TMapping>(string, Func<IServiceProvider, TMapping>?)
Adds an object to map user and group domains based on the destination authentication type.
Declaration
public IServerToCloudMigrationPlanBuilder WithAuthenticationType<TMapping>(string authenticationType, Func<IServiceProvider, TMapping>? authenticationTypeMappingFactory = null) where TMapping : IAuthenticationTypeDomainMapping
Parameters
Type | Name | Description |
---|---|---|
string | authenticationType | An authentication type to assign to users. |
Func<IServiceProvider, TMapping> | authenticationTypeMappingFactory | An initializer function to create the object from, potentially from the migration-scoped dependency injection container. |
Returns
Type | Description |
---|---|
IServerToCloudMigrationPlanBuilder | The same plan builder object for fluent API calls. |
Type Parameters
Name | Description |
---|---|
TMapping | The mapping type. |
WithSamlAuthenticationType(string)
Adds an object to map user and group domains based on the SAML authentication type.
Declaration
public IServerToCloudMigrationPlanBuilder WithSamlAuthenticationType(string domain)
Parameters
Type | Name | Description |
---|---|---|
string | domain | The domain to map users and groups to. |
Returns
Type | Description |
---|---|
IServerToCloudMigrationPlanBuilder | The same plan builder object for fluent API calls. |
WithTableauCloudUsernames(Func<ContentMappingContext<IUser>, CancellationToken, Task<ContentMappingContext<IUser>?>>)
Adds an object to map usernames to be in the form of an email.
Declaration
public IServerToCloudMigrationPlanBuilder WithTableauCloudUsernames(Func<ContentMappingContext<IUser>, CancellationToken, Task<ContentMappingContext<IUser>?>> callback)
Parameters
Type | Name | Description |
---|---|---|
Func<ContentMappingContext<IUser>, CancellationToken, Task<ContentMappingContext<IUser>>> | callback | A callback to call for the mapping. |
Returns
Type | Description |
---|---|
IServerToCloudMigrationPlanBuilder | The same plan builder object for fluent API calls. |
WithTableauCloudUsernames(string, bool)
Adds an object to map usernames to be in the form of an email.
Declaration
public IServerToCloudMigrationPlanBuilder WithTableauCloudUsernames(string mailDomain, bool useExistingEmail = true)
Parameters
Type | Name | Description |
---|---|---|
string | mailDomain | A domain name to use to build email usernames for users that lack emails.
Usernames will be generated as "@ |
bool | useExistingEmail | Whether or not existing user emails should be used when available, defaults to true. |
Returns
Type | Description |
---|---|
IServerToCloudMigrationPlanBuilder | The same plan builder object for fluent API calls. |
WithTableauCloudUsernames(ITableauCloudUsernameMapping)
Adds an object to map usernames to be in the form of an email.
Declaration
public IServerToCloudMigrationPlanBuilder WithTableauCloudUsernames(ITableauCloudUsernameMapping usernameMapping)
Parameters
Type | Name | Description |
---|---|---|
ITableauCloudUsernameMapping | usernameMapping | The mapping to execute. |
Returns
Type | Description |
---|---|
IServerToCloudMigrationPlanBuilder | The same plan builder object for fluent API calls. |
WithTableauCloudUsernames<TMapping>(Func<IServiceProvider, TMapping>?)
Adds an object to map usernames to be in the form of an email.
Declaration
public IServerToCloudMigrationPlanBuilder WithTableauCloudUsernames<TMapping>(Func<IServiceProvider, TMapping>? usernameMappingFactory = null) where TMapping : ITableauCloudUsernameMapping
Parameters
Type | Name | Description |
---|---|---|
Func<IServiceProvider, TMapping> | usernameMappingFactory | An initializer function to create the object from, potentially from the migration-scoped dependency injection container. |
Returns
Type | Description |
---|---|
IServerToCloudMigrationPlanBuilder | The same plan builder object for fluent API calls. |
Type Parameters
Name | Description |
---|---|
TMapping | The mapping type. |
WithTableauIdAuthenticationType(bool)
Adds an object to map user and group domains based on the Tableau ID authentication type.
Declaration
public IServerToCloudMigrationPlanBuilder WithTableauIdAuthenticationType(bool mfa = true)
Parameters
Type | Name | Description |
---|---|---|
bool | mfa | Whether or not MFA is used, defaults to true. |
Returns
Type | Description |
---|---|
IServerToCloudMigrationPlanBuilder | The same plan builder object for fluent API calls. |