use of org.erlide.backend.api.IBackend in project erlide_eclipse by erlang.
the class BackendManager method dispose.
@Override
public void dispose() {
synchronized (this) {
final Collection<IBackend> bb = Lists.newArrayList(buildBackends.values());
buildBackends.clear();
for (final IBackend b : bb) {
b.dispose();
}
if (ideBackend != null) {
ideBackend.dispose();
ideBackend = null;
}
final ILaunch[] launches = DebugPlugin.getDefault().getLaunchManager().getLaunches();
launchListener.launchesTerminated(launches);
launchListener.dispose();
}
}
use of org.erlide.backend.api.IBackend in project erlide_eclipse by erlang.
the class BackendManager method addExecutionBackend.
@Override
public synchronized void addExecutionBackend(final IProject project, final IBackend b) {
final Set<IBackend> list = executionBackends.computeIfAbsent(project, k -> Sets.newHashSet());
list.add(b);
final IErlModel model = ErlangEngine.getInstance().getModel();
b.addProjectPath(model.findProject(project));
}
use of org.erlide.backend.api.IBackend in project erlide_eclipse by erlang.
the class BackendManager method removeExecutionBackend.
@Override
public synchronized void removeExecutionBackend(final IProject project, final IProjectCodeLoader b) {
final IErlModel model = ErlangEngine.getInstance().getModel();
b.removeProjectPath(model.findProject(project));
final Set<IBackend> list = executionBackends.computeIfAbsent(project, k -> Sets.newHashSet());
list.remove(b);
}
use of org.erlide.backend.api.IBackend in project erlide_eclipse by erlang.
the class OtpRpcProvider method get.
@Override
public IOtpRpc get() {
try {
final IBackendManager backendManager = BackendCore.getBackendManager();
final IBackend ideBackend = backendManager.getIdeBackend();
return ideBackend.getOtpRpc();
} catch (final Exception e) {
ErlLogger.error("No Erlang runtime is installed! (" + e.getMessage() + ")");
return null;
}
}
use of org.erlide.backend.api.IBackend in project erlide_eclipse by erlang.
the class ErlangLineBreakpoint method createRequest.
private void createRequest(final int request) {
final IBackend b = target.getBackend();
int line = -1;
try {
line = getLineNumber();
} catch (final CoreException e) {
ErlLogger.warn(e);
}
final IResource r = getMarker().getResource();
final String module = r.getLocation().toPortableString();
if (line != -1) {
ErlideDebug.addDeleteLineBreakpoint(b, module, line, request);
}
}
Aggregations