summaryrefslogtreecommitdiff
path: root/platform/remote-servers/impl/src/com/intellij/remoteServer/util/CloudLoggingHandlerImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/remote-servers/impl/src/com/intellij/remoteServer/util/CloudLoggingHandlerImpl.java')
-rw-r--r--platform/remote-servers/impl/src/com/intellij/remoteServer/util/CloudLoggingHandlerImpl.java39
1 files changed, 39 insertions, 0 deletions
diff --git a/platform/remote-servers/impl/src/com/intellij/remoteServer/util/CloudLoggingHandlerImpl.java b/platform/remote-servers/impl/src/com/intellij/remoteServer/util/CloudLoggingHandlerImpl.java
index 346bd0af3046..89535ab6b8e6 100644
--- a/platform/remote-servers/impl/src/com/intellij/remoteServer/util/CloudLoggingHandlerImpl.java
+++ b/platform/remote-servers/impl/src/com/intellij/remoteServer/util/CloudLoggingHandlerImpl.java
@@ -15,11 +15,14 @@
*/
package com.intellij.remoteServer.util;
+import com.intellij.execution.process.ProcessHandler;
import com.intellij.remoteServer.agent.util.CloudAgentLoggingHandler;
import com.intellij.remoteServer.agent.util.log.LogListener;
import com.intellij.remoteServer.runtime.deployment.DeploymentLogManager;
import com.intellij.remoteServer.runtime.log.LoggingHandler;
+import org.jetbrains.annotations.Nullable;
+import java.io.OutputStream;
import java.util.HashMap;
/**
@@ -60,4 +63,40 @@ public class CloudLoggingHandlerImpl implements CloudAgentLoggingHandler {
}
return logListener;
}
+
+ @Override
+ public LogListener createConsole(String pipeName, final OutputStream consoleInput) {
+ final LoggingHandler loggingHandler = myLogManager.addAdditionalLog(pipeName);
+ loggingHandler.attachToProcess(new ProcessHandler() {
+
+ @Override
+ protected void destroyProcessImpl() {
+
+ }
+
+ @Override
+ protected void detachProcessImpl() {
+
+ }
+
+ @Override
+ public boolean detachIsDefault() {
+ return false;
+ }
+
+ @Nullable
+ @Override
+ public OutputStream getProcessInput() {
+ return consoleInput;
+ }
+ });
+
+ return new LogListener() {
+
+ @Override
+ public void lineLogged(String line) {
+ loggingHandler.print(line);
+ }
+ };
+ }
}