tgstation-server 6.3.2
The /tg/station 13 server suite
Loading...
Searching...
No Matches
ChatBotsClient.cs
Go to the documentation of this file.
1using System;
2using System.Collections.Generic;
3using System.Threading;
4using System.Threading.Tasks;
5
10
12{
15 {
20
27 : base(apiClient)
28 {
29 this.instance = instance ?? throw new ArgumentNullException(nameof(instance));
30 }
31
33 public ValueTask<ChatBotResponse> Create(ChatBotCreateRequest settings, CancellationToken cancellationToken) => ApiClient.Create<ChatBotCreateRequest, ChatBotResponse>(Routes.Chat, settings ?? throw new ArgumentNullException(nameof(settings)), instance.Id!.Value, cancellationToken);
34
36 public ValueTask Delete(EntityId settingsId, CancellationToken cancellationToken) => ApiClient.Delete(Routes.SetID(Routes.Chat, settingsId?.Id ?? throw new ArgumentNullException(nameof(settingsId))), instance.Id!.Value, cancellationToken);
37
39 public ValueTask<List<ChatBotResponse>> List(PaginationSettings? paginationSettings, CancellationToken cancellationToken)
40 => ReadPaged<ChatBotResponse>(paginationSettings, Routes.ListRoute(Routes.Chat), instance.Id!.Value, cancellationToken);
41
43 public ValueTask<ChatBotResponse> Update(ChatBotUpdateRequest settings, CancellationToken cancellationToken) => ApiClient.Update<ChatBotUpdateRequest, ChatBotResponse>(Routes.Chat, settings ?? throw new ArgumentNullException(nameof(settings)), instance.Id!.Value, cancellationToken);
44
46 public ValueTask<ChatBotResponse> GetId(EntityId settingsId, CancellationToken cancellationToken) => ApiClient.Read<ChatBotResponse>(Routes.SetID(Routes.Chat, settingsId?.Id ?? throw new ArgumentNullException(nameof(settingsId))), instance.Id!.Value, cancellationToken);
47 }
48}
Common base of entities with IDs.
Definition: EntityId.cs:7
virtual ? long Id
The ID of the entity.
Definition: EntityId.cs:13
Metadata about a server instance.
Definition: Instance.cs:9
Represents a request to update a chat bot.
Represents a request to update a chat bot.
Routes to a server actions.
Definition: Routes.cs:9
static string SetID(string route, long id)
Apply an id postfix to a route .
static string ListRoute(string route)
Get the /List postfix for a route .
const string Chat
The chat bot controller.
Definition: Routes.cs:88
ValueTask Delete(string route, CancellationToken cancellationToken)
Run an HTTP DELETE request. A ValueTask representing the running operation.
ValueTask< ChatBotResponse > GetId(EntityId settingsId, CancellationToken cancellationToken)
Get a specific chat bot's settings. A ValueTask<TResult> resulting in the ChatBotResponse.
ChatBotsClient(IApiClient apiClient, Instance instance)
Initializes a new instance of the ChatBotsClient class.
ValueTask< ChatBotResponse > Update(ChatBotUpdateRequest settings, CancellationToken cancellationToken)
Updates a chat bot's setttings. A ValueTask<TResult> resulting in the updated chat bot's ChatBotRespo...
ValueTask< List< ChatBotResponse > > List(PaginationSettings? paginationSettings, CancellationToken cancellationToken)
List the chat bots. A ValueTask<TResult> resulting in a List<T> of the ChatBotResponses.
ValueTask Delete(EntityId settingsId, CancellationToken cancellationToken)
Delete a chat bot. A ValueTask representing the running operation.
ValueTask< ChatBotResponse > Create(ChatBotCreateRequest settings, CancellationToken cancellationToken)
Create a chat bot. A ValueTask<TResult> resulting in the ChatBotResponse of the newly created chat bo...
readonly Instance instance
The Instance for the ChatBotsClient.
Client that deals with getting paginated results.
Settings for a paginated request.
Web interface for the API.
Definition: IApiClient.cs:19