AdapterHubClient
Namespace: Meshmakers.Octo.Sdk.ServiceClient.CommunicationControllerServices
Implementation the adapter hub client proxy using SignalR of IAdapterHubClient.
public class AdapterHubClient : SignalRClient<AdapterHubClientOptions>, ISignalRClient<AdapterHubClientOptions>, IAdapterHubClient, IAdapterHub
Inheritance Object → SignalRClient<AdapterHubClientOptions> → AdapterHubClient
Implements ISignalRClient<AdapterHubClientOptions>, IAdapterHubClient, IAdapterHub
Properties
IsAlive
public bool IsAlive { get; }
Property Value
ClientAccessToken
public IServiceClientAccessToken ClientAccessToken { get; }
Property Value
Options
public AdapterHubClientOptions Options { get; }
Property Value
ServiceUri
public Uri ServiceUri { get; }
Property Value
Uri
Constructors
AdapterHubClient(IOptions<AdapterHubClientOptions>, ILogger<AdapterHubClient>, IServiceClientAccessToken, IAdapterHubCallbacks)
Constructor
public AdapterHubClient(IOptions<AdapterHubClientOptions> options, ILogger<AdapterHubClient> logger, IServiceClientAccessToken serviceClientAccessToken, IAdapterHubCallbacks adapterHubCallbacks)
Parameters
options IOptions<AdapterHubClientOptions>
Options for configuration of the client proxy.
logger ILogger<AdapterHubClient>
Logger instance
serviceClientAccessToken IServiceClientAccessToken
The access token management object
adapterHubCallbacks IAdapterHubCallbacks
Callbacks for signalr communication
AdapterHubClient(AdapterHubClientOptions, ILogger<AdapterHubClient>, IServiceClientAccessToken, IAdapterHubCallbacks)
Constructor
public AdapterHubClient(AdapterHubClientOptions adapterHubServiceClientOptions, ILogger<AdapterHubClient> logger, IServiceClientAccessToken serviceClientAccessToken, IAdapterHubCallbacks adapterHubCallbacks)
Parameters
adapterHubServiceClientOptions AdapterHubClientOptions
Options for configuration of the client proxy.
logger ILogger<AdapterHubClient>
Instance of the logger
serviceClientAccessToken IServiceClientAccessToken
The access token management object
adapterHubCallbacks IAdapterHubCallbacks
Callbacks for signalr communication
Methods
RegisterServerCallbacks(HubConnection)
Binds the server-to-client callbacks on every (re-)created connection. Registering these in the constructor only bound them to the first connection; a StopAsync/StartAsync cycle (e.g. a PreUpdateTenant-triggered restart) built a fresh connection without them, so pipeline deploys were silently dropped until the process restarted.
protected void RegisterServerCallbacks(HubConnection hubConnection)
Parameters
hubConnection HubConnection
RegisterAdapterAsync(RtEntityId)
public Task<AdapterConfigurationDto> RegisterAdapterAsync(RtEntityId adapterRtEntityId)
Parameters
adapterRtEntityId RtEntityId
Returns
RegisterAdapterWithNodesAsync(RtEntityId, IReadOnlyList<NodeDescriptorDto>)
public Task<AdapterConfigurationDto> RegisterAdapterWithNodesAsync(RtEntityId adapterRtEntityId, IReadOnlyList<NodeDescriptorDto> nodeDescriptors)
Parameters
adapterRtEntityId RtEntityId
nodeDescriptors IReadOnlyList<NodeDescriptorDto>
Returns
RegisterAdapterWithSchemaAsync(RtEntityId, IReadOnlyList<NodeDescriptorDto>, String)
public Task<AdapterConfigurationDto> RegisterAdapterWithSchemaAsync(RtEntityId adapterRtEntityId, IReadOnlyList<NodeDescriptorDto> nodeDescriptors, string pipelineSchemaJson)
Parameters
adapterRtEntityId RtEntityId
nodeDescriptors IReadOnlyList<NodeDescriptorDto>
pipelineSchemaJson String
Returns
UnRegisterAdapterAsync(RtEntityId)
public Task UnRegisterAdapterAsync(RtEntityId adapterRtEntityId)
Parameters
adapterRtEntityId RtEntityId
Returns
SendDebugDataAsync(RtEntityId, Guid, DebugPointDto)
public Task SendDebugDataAsync(RtEntityId pipelineRtEntityId, Guid pipelineExecutionId, DebugPointDto debugPoint)
Parameters
pipelineRtEntityId RtEntityId
pipelineExecutionId Guid
debugPoint DebugPointDto
Returns
SendDeploymentUpdateResultAsync(RtEntityId, DeploymentResult)
public Task SendDeploymentUpdateResultAsync(RtEntityId adapterRtEntityId, DeploymentResult deploymentResult)
Parameters
adapterRtEntityId RtEntityId
deploymentResult DeploymentResult
Returns
ReportExecutionStartAsync(PipelineExecutionStartDto)
public Task ReportExecutionStartAsync(PipelineExecutionStartDto startDto)
Parameters
startDto PipelineExecutionStartDto
Returns
ReportPipelineStatusAsync(PipelineStatusReportDto)
public Task ReportPipelineStatusAsync(PipelineStatusReportDto status)
Parameters
status PipelineStatusReportDto
Returns
ReportExecutionEndAsync(PipelineExecutionEndDto)
public Task ReportExecutionEndAsync(PipelineExecutionEndDto endDto)
Parameters
endDto PipelineExecutionEndDto
Returns
ReportInterruptedExecutionResultAsync(PipelineExecutionEndDto)
public Task ReportInterruptedExecutionResultAsync(PipelineExecutionEndDto endDto)
Parameters
endDto PipelineExecutionEndDto
Returns
GetInterruptedExecutionIdsAsync()
public Task<IReadOnlyList<string>> GetInterruptedExecutionIdsAsync()
Returns
FailOrphanedExecutionsAsync(DateTime)
public Task<int> FailOrphanedExecutionsAsync(DateTime processStartUtc)
Parameters
processStartUtc DateTime
Returns
EnsurePipelineWorkloadRunningAsync(RtEntityId)
public Task EnsurePipelineWorkloadRunningAsync(RtEntityId pipelineRtEntityId)
Parameters
pipelineRtEntityId RtEntityId
Returns
ReportAdapterMetricsAsync(AdapterMetricsSampleDto)
public Task ReportAdapterMetricsAsync(AdapterMetricsSampleDto sample)
Parameters
sample AdapterMetricsSampleDto