blob: 81dd094f6d4d431b177310033e53b37803d318e2 [file] [log] [blame]
package com.webank.wedatasphere.linkis.engine.shell.executor
import com.webank.wedatasphere.linkis.common.utils.Logging
import com.webank.wedatasphere.linkis.engine.execute.{EngineExecutor, EngineExecutorFactory}
import com.webank.wedatasphere.linkis.engine.shell.exception.NoCorrectUserException
import com.webank.wedatasphere.linkis.server.JMap
import org.apache.commons.lang.StringUtils
import org.springframework.stereotype.Component
/**
* created by cooperyang on 2019/5/14
* Description:
*/
@Component
class ShellEngineExecutorFactory extends EngineExecutorFactory with Logging{
override def createExecutor(options: JMap[String, String]): EngineExecutor = {
//todo 可能会有一些设置环境变量的操作
import scala.collection.JavaConverters._
options.asScala foreach {
case (k, v) => info(s"key is $k, value is $v")
}
val user:String = System.getProperty("user.name")
if (StringUtils.isEmpty(user)) throw NoCorrectUserException()
new ShellEngineExecutor(user)
}
}