Class ConnectionRequest
- Namespace
- Cratis.Arc.Connections
- Assembly
- Cratis.Arc.Core.dll
Represents a request for resolving a connection.
public record ConnectionRequest : IEquatable<ConnectionRequest>
- Inheritance
-
ConnectionRequest
- Implements
- Inherited Members
- Extension Methods
Constructors
ConnectionRequest(ConnectionRequest)
protected ConnectionRequest(ConnectionRequest original)
Parameters
originalConnectionRequest
ConnectionRequest(string, ConnectionPurpose, IReadOnlyDictionary<string, string>)
Represents a request for resolving a connection.
public ConnectionRequest(string Storage, ConnectionPurpose Purpose, IReadOnlyDictionary<string, string> Scope)
Parameters
StoragestringThe kind of storage to connect to, one of WellKnownConnectionStorage.
PurposeConnectionPurposeThe ConnectionPurpose of the connection.
ScopeIReadOnlyDictionary<string, string>The values identifying what is being connected, for instance the tenant.
Properties
EqualityContract
protected virtual Type EqualityContract { get; }
Property Value
Purpose
The ConnectionPurpose of the connection.
public ConnectionPurpose Purpose { get; init; }
Property Value
Scope
The values identifying what is being connected, for instance the tenant.
public IReadOnlyDictionary<string, string> Scope { get; init; }
Property Value
Storage
The kind of storage to connect to, one of WellKnownConnectionStorage.
public string Storage { get; init; }
Property Value
Methods
Deconstruct(out string, out ConnectionPurpose, out IReadOnlyDictionary<string, string>)
public void Deconstruct(out string Storage, out ConnectionPurpose Purpose, out IReadOnlyDictionary<string, string> Scope)
Parameters
StoragestringPurposeConnectionPurposeScopeIReadOnlyDictionary<string, string>
Equals(ConnectionRequest?)
public virtual bool Equals(ConnectionRequest? other)
Parameters
otherConnectionRequest
Returns
Equals(object?)
public override bool Equals(object? obj)
Parameters
objobject
Returns
ForTenant(string, ConnectionPurpose, TenantId)
Creates a ConnectionRequest for a tenant.
public static ConnectionRequest ForTenant(string storage, ConnectionPurpose purpose, TenantId tenantId)
Parameters
storagestringThe kind of storage to connect to.
purposeConnectionPurposeThe ConnectionPurpose.
tenantIdTenantIdThe TenantId to connect for.
Returns
Remarks
An unset tenant and the default tenant address the same data, so both are sent as Default.
GetHashCode()
public override int GetHashCode()
Returns
PrintMembers(StringBuilder)
protected virtual bool PrintMembers(StringBuilder builder)
Parameters
builderStringBuilder
Returns
ToKey()
Gets a key that identifies the request, independent of the order of the scope values.
public string ToKey()
Returns
- string
The key.
ToString()
public override string ToString()
Returns
Operators
operator ==(ConnectionRequest?, ConnectionRequest?)
public static bool operator ==(ConnectionRequest? left, ConnectionRequest? right)
Parameters
leftConnectionRequestrightConnectionRequest
Returns
operator !=(ConnectionRequest?, ConnectionRequest?)
public static bool operator !=(ConnectionRequest? left, ConnectionRequest? right)
Parameters
leftConnectionRequestrightConnectionRequest