Skip to content

Commit

Permalink
Agent: add automatically generated bindings for Java
Browse files Browse the repository at this point in the history
Previously, we only generated bindings for Kotlin. The Eclipse plugin is
written in Java so this PR adds support to generate Java bindings as
well. Java and Kotlin are very similar so required diff is minimal.

I would normally not commit the Java files into the repo but I'm failing
to run the codegen tool on Windows so I'm committing it here to make it
easy to copy-paste changes.
  • Loading branch information
olafurpg committed Jun 19, 2024
1 parent b9e58cb commit ece4749
Show file tree
Hide file tree
Showing 176 changed files with 556 additions and 333 deletions.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class AttributionParams(
val repositoryNames: List<String>,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class Attribution_SearchParams(
val id: String,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class Attribution_SearchResult(
val error: String? = null,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

typealias AuthMethod = String // One of: dotcom, github, gitlab, google

Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class AuthStatus(
val username: String,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class AutocompleteItem(
val id: String,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

import com.google.gson.annotations.SerializedName
import com.google.gson.annotations.SerializedName;

data class AutocompleteParams(
val uri: String,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class AutocompleteResult(
val items: List<AutocompleteItem>,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class CancelParams(
val id: String,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

import com.google.gson.annotations.SerializedName
import com.google.gson.annotations.SerializedName;

data class ChatError(
val kind: String? = null,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class ChatExportResult(
val chatID: String,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class ChatHistory(
val chatID: String,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

typealias ChatSubmitType = String // One of: user, user-newchat

Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class Chat_EditMessageParams(
val id: String,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class Chat_ModelsParams(
val modelUsage: ModelUsage, // Oneof: chat, edit
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class Chat_ModelsResult(
val models: List<Model>,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class Chat_RemoteReposParams(
val id: String,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class Chat_RemoteReposResult(
val remoteRepos: List<Repo>? = null,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class Chat_RestoreParams(
val modelID: String? = null,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class Chat_SubmitMessageParams(
val id: String,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

import com.google.gson.annotations.SerializedName
import com.google.gson.annotations.SerializedName;

data class ClientCapabilities(
val completions: CompletionsEnum? = null, // Oneof: none
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class ClientInfo(
val name: String,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class ClientStateForWebview(
val initialContext: List<ContextItem>,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

typealias CodeActionTriggerKind = String // One of: Invoke, Automatic

Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class CodeActions_ProvideParams(
val location: ProtocolLocation,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class CodeActions_ProvideResult(
val codeActions: List<ProtocolCodeAction>,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class CodeActions_TriggerParams(
val id: String,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
@file:Suppress("FunctionName", "ClassName")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

import org.eclipse.lsp4j.jsonrpc.services.JsonNotification
import org.eclipse.lsp4j.jsonrpc.services.JsonRequest
import java.util.concurrent.CompletableFuture
import org.eclipse.lsp4j.jsonrpc.services.JsonNotification;
import org.eclipse.lsp4j.jsonrpc.services.JsonRequest;
import java.util.concurrent.CompletableFuture;

@Suppress("unused")
interface CodyAgentClient {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
@file:Suppress("FunctionName", "ClassName")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

import org.eclipse.lsp4j.jsonrpc.services.JsonNotification
import org.eclipse.lsp4j.jsonrpc.services.JsonRequest
import java.util.concurrent.CompletableFuture
import org.eclipse.lsp4j.jsonrpc.services.JsonNotification;
import org.eclipse.lsp4j.jsonrpc.services.JsonRequest;
import java.util.concurrent.CompletableFuture;

@Suppress("unused")
interface CodyAgentServer {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class CodyContextFilterItem(
val repoNamePattern: String,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class CodyError(
val message: String,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class CodyLLMSiteConfiguration(
val chatModel: String? = null,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

typealias CodyTaskState = String // One of: Idle, Working, Inserting, Applying, Formatting, Applied, Finished, Error, Pending

Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class Commands_CustomParams(
val key: String,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class CompletionBookkeepingEvent(
val id: CompletionLogID,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

import com.google.gson.annotations.SerializedName
import com.google.gson.annotations.SerializedName;

data class CompletionItemInfo(
val parseErrorCount: Int? = null,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class CompletionItemParams(
val completionID: String,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

typealias CompletionLogID = String // One of:

Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class ConfigFeaturesParams(
val chat: Boolean,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class ConfigParams(
val experimentalNoodle: Boolean,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("unused", "ConstPropertyName")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

object Constants {
const val paused = "paused"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class ContextFilters(
val include: List<CodyContextFilterItem>? = null,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class ContextGroup(
val dir: Uri? = null,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

import com.google.gson.annotations.SerializedName
import com.google.gson.Gson
import com.google.gson.JsonDeserializationContext
import com.google.gson.JsonDeserializer
import com.google.gson.JsonElement
import java.lang.reflect.Type
import com.google.gson.annotations.SerializedName;
import com.google.gson.Gson;
import com.google.gson.JsonDeserializationContext;
import com.google.gson.JsonDeserializer;
import com.google.gson.JsonElement;
import java.lang.reflect.Type;

sealed class ContextItem {
companion object {
val deserializer: JsonDeserializer<ContextItem> =
JsonDeserializer { element: JsonElement, _: Type, context: JsonDeserializationContext ->
when (element.asJsonObject.get("type").asString) {
when (element.getAsJsonObject().get("type").getAsString()) {
"file" -> context.deserialize<ContextItemFile>(element, ContextItemFile::class.java)
"repository" -> context.deserialize<ContextItemRepository>(element, ContextItemRepository::class.java)
"tree" -> context.deserialize<ContextItemTree>(element, ContextItemTree::class.java)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

typealias ContextItemSource = String // One of: embeddings, user, editor, search, initial, unified, selection, terminal, uri, history

Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

typealias ContextMentionProviderID = String // One of:

Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@file:Suppress("FunctionName", "ClassName", "unused", "EnumEntryName", "UnusedImport")
package com.sourcegraph.cody.protocol_generated
package com.sourcegraph.cody.protocol_generated;

data class ContextMentionProviderMetadata(
val id: String,
Expand Down
Loading

0 comments on commit ece4749

Please sign in to comment.