Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 8 additions & 6 deletions acp/api/acp.api
Original file line number Diff line number Diff line change
Expand Up @@ -206,15 +206,21 @@ public final class com/agentclientprotocol/common/SessionParameters {
public final fun get_meta ()Lkotlinx/serialization/json/JsonElement;
}

public final class com/agentclientprotocol/protocol/AcpExpectedError : java/lang/Exception {
public final class com/agentclientprotocol/protocol/AcpExpectedError : java/lang/Exception, kotlinx/coroutines/CopyableThrowable {
public fun <init> (Ljava/lang/String;)V
public fun createCopy ()Lcom/agentclientprotocol/protocol/AcpExpectedError;
public synthetic fun createCopy ()Ljava/lang/Throwable;
public fun getMessage ()Ljava/lang/String;
}

public final class com/agentclientprotocol/protocol/JsonRpcException : java/lang/Exception {
public final class com/agentclientprotocol/protocol/JsonRpcException : java/lang/Exception, kotlinx/coroutines/CopyableThrowable {
public fun <init> (ILjava/lang/String;Lkotlinx/serialization/json/JsonElement;)V
public synthetic fun <init> (ILjava/lang/String;Lkotlinx/serialization/json/JsonElement;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public fun createCopy ()Lcom/agentclientprotocol/protocol/JsonRpcException;
public synthetic fun createCopy ()Ljava/lang/Throwable;
public final fun getCode ()I
public final fun getData ()Lkotlinx/serialization/json/JsonElement;
public fun getMessage ()Ljava/lang/String;
}

public final class com/agentclientprotocol/protocol/Protocol : com/agentclientprotocol/protocol/RpcMethodsOperations {
Expand Down Expand Up @@ -262,10 +268,6 @@ public final class com/agentclientprotocol/protocol/Protocol_extensionsKt {
public static synthetic fun setRequestHandler$default (Lcom/agentclientprotocol/protocol/RpcMethodsOperations;Lcom/agentclientprotocol/model/AcpMethod$AcpRequestResponseMethod;Lkotlin/coroutines/CoroutineContext;Lkotlin/jvm/functions/Function2;ILjava/lang/Object;)V
}

public final class com/agentclientprotocol/protocol/RequestTimeoutException : java/lang/Exception {
public fun <init> (Ljava/lang/String;)V
}

public abstract interface class com/agentclientprotocol/protocol/RpcMethodsOperations {
public abstract fun sendNotificationRaw (Lcom/agentclientprotocol/model/AcpMethod$AcpNotificationMethod;Lkotlinx/serialization/json/JsonElement;)V
public static synthetic fun sendNotificationRaw$default (Lcom/agentclientprotocol/protocol/RpcMethodsOperations;Lcom/agentclientprotocol/model/AcpMethod$AcpNotificationMethod;Lkotlinx/serialization/json/JsonElement;ILjava/lang/Object;)V
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,10 @@ internal value class OutgoingRequestId(val id: RequestId)
/**
* An exception that gracefully handled and passed to the counterpart.
*/
public class AcpExpectedError(message: String) : Exception(message)
@OptIn(ExperimentalCoroutinesApi::class)
public class AcpExpectedError(override val message: String) : Exception(message), CopyableThrowable<AcpExpectedError> {
override fun createCopy(): AcpExpectedError = AcpExpectedError(message).also { it.addSuppressed(this) }
}

/**
* Throws [AcpExpectedError] that gracefully handled and passed to the counterpart.
Expand All @@ -42,19 +45,17 @@ public fun acpFail(message: String): Nothing = throw AcpExpectedError(message)
public fun jsonRpcMethodNotFound(message: String): Nothing =
throw JsonRpcException(JsonRpcErrorCode.METHOD_NOT_FOUND, message)

/**
* Exception thrown when a request times out.
*/
public class RequestTimeoutException(message: String) : Exception(message)

/**
* Exception thrown for JSON-RPC protocol errors.
*/
@OptIn(ExperimentalCoroutinesApi::class)
public class JsonRpcException(
public val code: Int,
message: String,
public override val message: String,
public val data: JsonElement? = null
) : Exception(message)
) : Exception(message), CopyableThrowable<JsonRpcException> {
override fun createCopy(): JsonRpcException = JsonRpcException(code, message, data).also { it.addSuppressed(this) }
}

/**
* Exception thrown when a request is cancelled explicitly by invoking [AcpMethod.MetaMethods.CancelRequest] from the calling site
Expand Down
Loading