summaryrefslogtreecommitdiff
path: root/contrib/bsp/src/mill/contrib/bsp/TaskParameters.scala
diff options
context:
space:
mode:
authorAlexandra Dima <alexandra.dima@jetbrains.com>2019-07-24 16:57:44 +0200
committerSamvel Abrahamyan <samvel1024@gmail.com>2019-10-12 14:33:11 +0200
commit8138acf4911b668b3b15c19fd51c4f5e6aadc083 (patch)
tree8ce53d3b1f5707a7fe0a3826693f3050b8038b84 /contrib/bsp/src/mill/contrib/bsp/TaskParameters.scala
parent0b4bcbbfabe06d549d95efb427e75356287398fb (diff)
downloadmill-8138acf4911b668b3b15c19fd51c4f5e6aadc083.tar.gz
mill-8138acf4911b668b3b15c19fd51c4f5e6aadc083.tar.bz2
mill-8138acf4911b668b3b15c19fd51c4f5e6aadc083.zip
Added docstrigs and comments. Also cleaned unused imports. Changd the printStream connected to the compilation logger sent to the mill evaluator from Bsp from System.out (might interfere with the lsp communication ) to the outputstream of the evaluator's logger.
Diffstat (limited to 'contrib/bsp/src/mill/contrib/bsp/TaskParameters.scala')
-rw-r--r--contrib/bsp/src/mill/contrib/bsp/TaskParameters.scala28
1 files changed, 26 insertions, 2 deletions
diff --git a/contrib/bsp/src/mill/contrib/bsp/TaskParameters.scala b/contrib/bsp/src/mill/contrib/bsp/TaskParameters.scala
index b020b498..29a07f17 100644
--- a/contrib/bsp/src/mill/contrib/bsp/TaskParameters.scala
+++ b/contrib/bsp/src/mill/contrib/bsp/TaskParameters.scala
@@ -1,10 +1,15 @@
package mill.contrib.bsp
-import java.util
import scala.collection.JavaConverters._
-import scala.compat.java8.OptionConverters._
import ch.epfl.scala.bsp4j.{BuildTargetIdentifier, CompileParams, RunParams, TestParams}
+
+/**
+ * Common trait to represent BSP request parameters that
+ * have a specific form: include one or more targetIds,
+ * arguments for the execution of the task, and an optional
+ * origin id generated by the client.
+ */
trait Parameters {
def getTargets: List[BuildTargetIdentifier]
@@ -83,14 +88,33 @@ case class TParams(testParams: TestParams) extends Parameters {
}
object TaskParameters {
+
+ /**
+ * Convert parameters specific to the compile request
+ * to the common trait Parameters.
+ * @param compileParams compile request parameters
+ * @return general task parameters containing compilation info
+ */
def fromCompileParams(compileParams: CompileParams): Parameters = {
CParams(compileParams)
}
+ /**
+ * Convert parameters specific to the run request
+ * to the common trait Parameters.
+ * @param runParams run request parameters
+ * @return general task parameters containing running info
+ */
def fromRunParams(runParams: RunParams): Parameters = {
RParams(runParams)
}
+ /**
+ * Convert parameters specific to the test request
+ * to the common trait Parameters.
+ * @param testParams compile request parameters
+ * @return general task parameters containing testing info
+ */
def fromTestParams(testParams: TestParams): Parameters = {
TParams(testParams)
}