xworkmate-app/lib/runtime/go_task_service_desktop_service.dart
2026-04-08 18:14:26 +08:00

62 lines
1.7 KiB
Dart

import 'gateway_runtime.dart';
import 'go_task_service_client.dart';
import 'runtime_models.dart';
class DesktopGoTaskService implements GoTaskServiceClient {
DesktopGoTaskService({
required GatewayRuntime gateway,
required ExternalCodeAgentAcpTransport acpTransport,
}) : _acpTransport = acpTransport;
final ExternalCodeAgentAcpTransport _acpTransport;
@override
Future<void> syncExternalProviders(
List<ExternalCodeAgentAcpSyncedProvider> providers,
) => _acpTransport.syncExternalProviders(providers);
@override
Future<ExternalCodeAgentAcpCapabilities> loadExternalAcpCapabilities({
required AssistantExecutionTarget target,
bool forceRefresh = false,
}) => _acpTransport.loadExternalAcpCapabilities(
target: target,
forceRefresh: forceRefresh,
);
@override
Future<GoTaskServiceResult> executeTask(
GoTaskServiceRequest request, {
required void Function(GoTaskServiceUpdate update) onUpdate,
}) => _acpTransport.executeTask(request, onUpdate: onUpdate);
@override
Future<void> cancelTask({
required GoTaskServiceRoute route,
required AssistantExecutionTarget target,
required String sessionId,
required String threadId,
}) => _acpTransport.cancelTask(
target: target,
sessionId: sessionId,
threadId: threadId,
);
@override
Future<void> closeTask({
required GoTaskServiceRoute route,
required AssistantExecutionTarget target,
required String sessionId,
required String threadId,
}) => _acpTransport.closeTask(
target: target,
sessionId: sessionId,
threadId: threadId,
);
@override
Future<void> dispose() async {
await _acpTransport.dispose();
}
}