package com.intellij.remoteServer.runtime;
import com.intellij.openapi.components.ServiceManager;
import com.intellij.remoteServer.configuration.RemoteServer;
import com.intellij.remoteServer.configuration.ServerConfiguration;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.Collection;
/**
* @author nik
*/
public abstract class ServerConnectionManager {
@NotNull
public static ServerConnectionManager getInstance() {
return ServiceManager.getService(ServerConnectionManager.class);
}
@NotNull
public abstract <C extends ServerConfiguration> ServerConnection getOrCreateConnection(@NotNull RemoteServer<C> server);
@Nullable
public abstract <C extends ServerConfiguration> ServerConnection getConnection(@NotNull RemoteServer<C> server);
@NotNull
public abstract Collection<ServerConnection> getConnections();
}