Add live process management commands to vscode

This commit is contained in:
Kris De Volder
2019-10-02 11:38:58 -07:00
parent 6a2c1026fb
commit f102f2cfe7
6 changed files with 83 additions and 7 deletions

View File

@@ -43,4 +43,8 @@ public class LiveProcessCommand {
this.action = action;
}
@Override
public String toString() {
return "LiveProcessCommand [processKey=" + processKey + ", label=" + label + ", action=" + action + "]";
}
}

View File

@@ -18,7 +18,10 @@ import java.util.Set;
import java.util.concurrent.CompletableFuture;
import org.eclipse.lsp4j.ExecuteCommandParams;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.ide.vscode.boot.java.livehover.v2.SpringProcessConnectorRemote.RemoteBootAppData;
import org.springframework.ide.vscode.commons.languageserver.completion.DocumentEdits;
import org.springframework.ide.vscode.commons.languageserver.util.SimpleLanguageServer;
import com.google.gson.JsonElement;
@@ -29,6 +32,8 @@ import com.google.gson.JsonObject;
*/
public class SpringProcessCommandHandler {
private static final Logger log = LoggerFactory.getLogger(SpringProcessCommandHandler.class);
private static final String COMMAND_LIST_PROCESSES = "sts/livedata/listProcesses";
private static final String COMMAND_CONNECT = "sts/livedata/connect";
private static final String COMMAND_REFRESH = "sts/livedata/refresh";
@@ -47,19 +52,22 @@ public class SpringProcessCommandHandler {
server.onCommand(COMMAND_LIST_PROCESSES, (params) -> {
return getProcessCommands();
});
log.info("Registered command handler: {}",COMMAND_LIST_PROCESSES);
server.onCommand(COMMAND_CONNECT, (params) -> {
return connect(params);
});
log.info("Registered command handler: {}",COMMAND_CONNECT);
server.onCommand(COMMAND_REFRESH, (params) -> {
return refresh(params);
});
log.info("Registered command handler: {}",COMMAND_REFRESH);
server.onCommand(COMMAND_DISCONNECT, (params) -> {
return disconnect(params);
});
log.info("Registered command handler: {}",COMMAND_DISCONNECT);
}
private CompletableFuture<Object> connect(ExecuteCommandParams params) {
@@ -166,7 +174,7 @@ public class SpringProcessCommandHandler {
result.add(command);
}
}
log.info("getProcessCommands => {}", result);
return CompletableFuture.completedFuture((Object[]) result.toArray(new Object[result.size()]));
}