Class SqlServerE2eConnectionResolutionOptions
- Namespace
- ItTiger.TigerQuery.Core
- Assembly
- ItTiger.TigerQuery.Core.dll
The inputs that select and qualify a TigerQuery E2E bootstrap connection profile.
public sealed class SqlServerE2eConnectionResolutionOptions
- Inheritance
-
SqlServerE2eConnectionResolutionOptions
- Inherited Members
Remarks
A bootstrap profile is always chosen by name: ConnectionName from
the caller, otherwise DefaultConnectionName from host configuration. When
neither is supplied nothing is selected, however many authorized profiles the store
holds. The selected profile must also carry
Bootstrap=true; the name identifies the
expected profile and metadata authorizes it as bootstrap, so neither works alone.
The two names are separate rather than one pre-merged value because they fail differently. A caller who names a profile that does not exist made a mistake and gets Invalid; a host convention name that does not exist yet is just an unconfigured machine and gets NotConfigured.
Properties
ConnectionName
Gets the profile name the caller asked for — a command-line option, a test-fixture
setting, an API argument. Null when the caller named nothing.
public string? ConnectionName { get; init; }
Property Value
Remarks
Matched ordinally and case-sensitively, like every other profile-name lookup. Wins
over DefaultConnectionName.
DefaultConnectionName
Gets the host application's configured bootstrap-connection convention, used when
ConnectionName is null. Null means the host configured none.
public string? DefaultConnectionName { get; init; }
Property Value
Remarks
This is host configuration such as
tiger-sqlcmd-e2e, not a value TigerQuery
invents. Core defines no default name, because a default name TigerQuery chose
would make an unrelated profile eligible on somebody else's machine.RequireDatabaseCreationPermission
Gets whether the resolved profile must also carry
AllowDatabaseCreation
=true.public bool RequireDatabaseCreationPermission { get; init; }
Property Value
Remarks
Defaults to false, so a caller only performing reads never
demands a permission it does not need. Database-creating workflows set it, and the
permission is never implied by
Enabled.
ValidationPolicy
Gets the policy the candidate profile is structurally validated against;
DatabaseOptional when null.
public SqlServerConnectionValidationPolicy? ValidationPolicy { get; init; }
Property Value
Remarks
The default is deliberately the permissive one: a bootstrap profile normally names
a server rather than a database, because the databases it works with do not exist
yet. A caller that needs an initial catalog asks for
DatabaseRequired.