remoteServer API Alternative

You have market remoteServer API as internal but doesn’t show the alternative to use this API my plugin use this API, how could I deal with that? do you have any intentions to publish any alternative?

1 Like

Please clarify with class name(s) what you mean by “remoteServer API”.

#Internal method com.intellij.remoteServer.util.CloudApplicationRuntime.getAgentTaskExecutor() is overridden
#Internal method com.intellij.remoteServer.impl.runtime.ui.tree.ServersTreeStructure.DeploymentNodeImpl.getDeployment() invocation
#Internal class com.intellij.remoteServer.util.CloudConfigurationBase reference
#Internal interface com.intellij.remoteServer.impl.runtime.ui.tree.DeploymentNode reference
#Internal method com.intellij.remoteServer.impl.runtime.ui.RemoteServersServiceViewContributor.addNewRemoteServer(Project, ServerType, Class) invocation
#Internal class com.intellij.remoteServer.util.CloudApplicationRuntime reference
#Internal method com.intellij.remoteServer.impl.runtime.ui.tree.ServersTreeStructure.DeploymentNodeImpl.update(PresentationData) is overridden
#Internal method com.intellij.remoteServer.impl.runtime.ui.tree.ServersTreeStructure.DeploymentNodeImpl.getChildren() is overridden
#Internal class com.intellij.remoteServer.impl.runtime.ui.tree.ServersTreeStructure.DeploymentNodeImpl reference
#Internal interface com.intellij.remoteServer.impl.runtime.ui.tree.ServersTreeStructure.DeploymentNodeProducer reference
#Internal method com.intellij.remoteServer.util.CloudApplicationRuntime.setDeploymentModel(Deployment) invocation
#Internal method com.intellij.remoteServer.util.CloudApplicationRuntime.getApplicationName() invocation
#Internal method com.intellij.remoteServer.util.CloudApplicationRuntime.getStatus() invocation
#Internal class com.intellij.remoteServer.impl.runtime.ui.tree.ServersTreeStructure.RemoteServerNode reference
#Internal method com.intellij.remoteServer.util.CloudApplicationRuntime.getTaskExecutor() is overridden
#Internal constructor com.intellij.remoteServer.util.CloudConfigurationBase.<init>() invocation
#Internal method com.intellij.remoteServer.impl.runtime.ui.RemoteServersServiceViewContributor.selectLog(AbstractTreeNode, String) is overridden
#Internal constructor com.intellij.remoteServer.util.CloudApplicationRuntime.<init>(String) invocation
#Internal constructor com.intellij.remoteServer.impl.runtime.ui.tree.ServersTreeStructure.DeploymentNodeImpl.<init>(Project, ServerConnection, ServersTreeStructure.RemoteServerNode, Deployment, ServersTreeStructure.DeploymentNodeProducer) invocation
#Internal method com.intellij.remoteServer.util.CloudApplicationRuntime.getCloudType() is overridden
#Internal class com.intellij.remoteServer.impl.runtime.ui.RemoteServersServiceViewContributor reference
#Internal constructor com.intellij.remoteServer.impl.runtime.ui.RemoteServersServiceViewContributor.<init>() invocation
#Internal constructor com.intellij.remoteServer.impl.runtime.ui.RemoteServersServiceViewContributor.ActionGroups.<init>(String, String, String) invocation
#Internal class com.intellij.remoteServer.util.AgentTaskExecutor reference
#Internal method com.intellij.remoteServer.util.CloudApplicationRuntime.getStatusText() invocation
#Internal method com.intellij.remoteServer.impl.runtime.ui.tree.ServersTreeNode.getValue() invocation
#Internal method com.intellij.remoteServer.impl.runtime.ui.tree.ServersTreeStructure.DeploymentNodeImpl.collectDeploymentChildren(List) invocation
#Internal method com.intellij.remoteServer.impl.runtime.ui.tree.ServersTreeStructure.DeploymentNodeProducer.createDeploymentNode(ServerConnection, ServersTreeStructure.RemoteServerNode, Deployment) is overridden
#Internal method com.intellij.remoteServer.impl.runtime.ui.RemoteServersServiceViewContributor.getActionGroups() is overridden
#Internal method com.intellij.remoteServer.impl.runtime.ui.tree.ServersTreeStructure.DeploymentNodeImpl.getComponent() is overridden
#Internal class com.intellij.remoteServer.impl.runtime.ui.RemoteServersServiceViewContributor.ActionGroups reference
#Internal method com.intellij.remoteServer.impl.runtime.ui.RemoteServersServiceViewContributor.accept(RemoteServer) is overridden

All this classes and methods were public before and with new updates those classes and methods change to internal and there is no any alternative.

We want to minimize api surface here.

Is the above the full list of the reported problems?

Could you describe what your code is trying to achieve? If the code is open source, could I take a look?

This would help to find some modern alternative without exposing too much.

@michael.golubev yes it’s open source. this is the repo

yes, it’s the full list of reported problems.

Also I don’t want to create a new toolWindows to show my plugin, there is a toolbar service I want to add my plugin to services toolbar.