Github user chiwanpark commented on a diff in the pull request:

    https://github.com/apache/flink/pull/1106#discussion_r41503795
  
    --- Diff: 
flink-staging/flink-scala-shell/src/main/scala/org/apache/flink/api/scala/FlinkShell.scala
 ---
    @@ -68,38 +94,62 @@ object FlinkShell {
     
       def startShell(
           userHost : String, 
    -      userPort : Int, 
    +      userPort : Int,
    +      executionMode : ExecutionMode.Value,
           externalJars : Option[Array[String]] = None): Unit ={
         
         println("Starting Flink Shell:")
     
    -    var cluster: LocalFlinkMiniCluster = null
    -
         // either port or userhost not specified by user, create new 
minicluster
    -    val (host,port) = if (userHost == "none" || userPort == -1 ) {
    -      println("Creating new local server")
    -      cluster = new LocalFlinkMiniCluster(new Configuration, false)
    -      cluster.start()
    -      ("localhost",cluster.getLeaderRPCPort)
    -    } else {
    -      println(s"Connecting to remote server (host: $userHost, port: 
$userPort).")
    -      (userHost, userPort)
    +    val (host : String, port : Int, cluster :  
Option[LocalFlinkMiniCluster]) =
    +
    +    executionMode match {
    +      case ExecutionMode.LOCAL =>
    +        val miniCluster = new LocalFlinkMiniCluster(new Configuration, 
false)
    +        miniCluster.start()
    +        val port = miniCluster.getLeaderRPCPort
    +        println(s"\nStarting local Flink cluster (host: localhost, port: 
$port).\n")
    +        ("localhost",port, Some(miniCluster))
    +
    +      case ExecutionMode.REMOTE =>
    +        if (userHost == "none" || userPort == -1) {
    +          println("Error: <host> or <port> not specified!")
    +          return
    +        } else {
    +          println(s"\nConnecting to Flink cluster (host: $userHost, port: 
$userPort).\n")
    +          (userHost, userPort, None)
    +        }
    +
    +      case ExecutionMode.UNDEFINED =>
    +        println("Error: please specify execution mode:")
    +        println("[local | remote <host> <port>]")
    +        return
         }
    --- End diff --
    
    I think that this block should be indented more because the result of this 
block is assigned to (host, port, cluster).


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to