File tree Expand file tree Collapse file tree 2 files changed +29
-8
lines changed
Core/Sources/CodeiumService Expand file tree Collapse file tree 2 files changed +29
-8
lines changed Original file line number Diff line number Diff line change @@ -48,12 +48,25 @@ enum CodeiumRequest {
4848 }
4949 }
5050
51- struct AcceptCompletion : CodeiumRequestType {
52- struct Response : Codable {
53- var state : State
54- var completionItems : [ CodeiumCompletionItem ] ?
51+ struct CancelRequest : CodeiumRequestType {
52+ struct Response : Codable { }
53+
54+ struct RequestBody : Codable {
55+ var request_id : UInt64
56+ var session_id : String
5557 }
5658
59+ var requestBody : RequestBody
60+
61+ func makeURLRequest( server: String ) -> URLRequest {
62+ let data = ( try ? JSONEncoder ( ) . encode ( requestBody) ) ?? Data ( )
63+ return assembleURLRequest ( server: server, method: " CancelRequest " , body: data)
64+ }
65+ }
66+
67+ struct AcceptCompletion : CodeiumRequestType {
68+ struct Response : Codable { }
69+
5770 struct RequestBody : Codable {
5871 var metadata : Metadata
5972 var completion_id : String
Original file line number Diff line number Diff line change @@ -257,13 +257,13 @@ extension CodeiumSuggestionService: CodeiumSuggestionServiceType {
257257 )
258258 }
259259 ) )
260-
260+
261261 if request. requestBody. metadata. request_id <= cancellationCounter {
262262 throw CancellationError ( )
263263 }
264264
265265 let result = try await ( try await setupServerIfNeeded ( ) ) . sendRequest ( request)
266-
266+
267267 if request. requestBody. metadata. request_id <= cancellationCounter {
268268 throw CancellationError ( )
269269 }
@@ -292,8 +292,16 @@ extension CodeiumSuggestionService: CodeiumSuggestionServiceType {
292292 )
293293 } ?? [ ]
294294 }
295-
295+
296296 public func cancelRequest( ) async {
297+ Task {
298+ try await server? . sendRequest (
299+ CodeiumRequest . CancelRequest ( requestBody: . init(
300+ request_id: requestCounter,
301+ session_id: CodeiumSuggestionService . sessionId
302+ ) )
303+ )
304+ }
297305 cancellationCounter = requestCounter
298306 }
299307
@@ -326,7 +334,7 @@ extension CodeiumSuggestionService: CodeiumSuggestionServiceType {
326334 public func notifyCloseTextDocument( fileURL: URL ) async throws {
327335 await openedDocumentPool. closeDocument ( url: fileURL)
328336 }
329-
337+
330338 public func terminate( ) {
331339 server? . terminate ( )
332340 server = nil
You can’t perform that action at this time.
0 commit comments