anchor.diff:         GOTO :EOF
       )
       IF "!CARG!"=="-stop" (
  -       for /F "TOKENS=1" %%G in ('%JAVA_HOME%\bin\jps.exe -lvV ^| find /I "opendaylight"') do (
  +       for /F "TOKENS=1" %%G in ('""!JAVA_H!" -lvV ^| find /I "opendaylight""') do (
              set PID=%%G
          )
          if "!PID!" NEQ "" (
  
positive.code:        GOTO :LOOP
      )
      IF "!CARG:~0,2!"=="-D" (
         SET extraJVMOpts=%extraJVMOpts% !CARG!
         SHIFT
         GOTO :LOOP
      )
      IF "!CARG:~0,2!"=="-X" (
         SET extraJVMOpts=%extraJVMOpts% !CARG!
         SHIFT
         GOTO :LOOP
      )
      IF "!CARG!"=="-help" (
          ECHO "Usage: %0 [-jmx] [-jmxport <num>] [-debug] [-debugsuspend] [-debugport <num>] [-start] [-consoleport <num>]] [-stop] [-status] [-console] [-help] [<other args will automatically be used for the JVM>]"
          ECHO Note: Enclose any JVM or System properties within double quotes.
          GOTO :EOF
      )
  
  
negative.code: REM       Now set framework classpath
  SET fwcp="file:\%basedir%lib\org.eclipse.osgi-3.8.1.v20120830-144521.jar,file:\%basedir%lib\org.eclipse.virgo.kernel.equinox.extensions-3.6.0.RELEASE.jar,file:\%basedir%lib\org.eclipse.equinox.launcher-1.3.0.v20120522-1813.jar"
  
  SET RUN_CMD="%JAVA_HOME%\bin\java.exe" -Dopendaylight.controller !extraJVMOpts! -Djava.io.tmpdir="%basedir%work\tmp" -Djava.awt.headless=true -Dosgi.install.area=%basedir% -Dosgi.configuration.area="%basedir%configuration" -Dosgi.frameworkClassPath=%fwcp% -Dosgi.framework="file:\%basedir%lib\org.eclipse.osgi-3.8.1.v20120830-144521.jar" -classpath %cp% org.eclipse.equinox.launcher.Main %consoleOpts%
  
  ECHO !RUN_CMD!
  
  if "%startEnabled%" NEQ "" (
      START /B cmd /C CALL !RUN_CMD! > %basedir%\logs\controller.out 2>&1
      ECHO Running controller in the background.
      EXIT /B 1
  ) else (
      !RUN_CMD!
      EXIT /B %ERRORLEVEL%
  )
  
  :helper
  echo. For more information on a specific command, type -help command-name.
  echo.
  echo   jmx              ^[-jmx^]
  echo   jmxport          ^[-jmxport ^<num^>^] - DEFAULT is 1088
  echo   debug            ^[-debug^]
  echo   debugsuspend     ^[-debugsuspend^]
  echo   debugport        ^[-debugport ^<num^>^] - DEFAULT is 8000
  echo   start            ^[-start ^[^<console port^>^]^] - DEFAULT port is 2400
  echo   stop             ^[-stop^]
  echo   status           ^[-status^]
  echo   console          ^[-console^]
  echo   agentpath        ^[-agentpath:^<path to lib^>^]
  exit/B 1
  
  :debugsuspend
  ECHO.
  ECHO. debugsuspend     ^[-debugsuspend^]
  ECHO.
  ECHO. This command sets suspend on true in runjdwp in extra JVM options. If its true, VMStartEvent has a suspendPolicy of SUSPEND_ALL. If its false, VMStartEvent has a suspendPolicy of SUSPEND_NONE.
  ECHO.
  EXIT /B 1
  
  :debugport
  ECHO.
  ECHO. debugport        ^[-debugport ^<num^>^] - DEFAULT is 8000
  ECHO.
  ECHO. Set address for settings in runjdwp in extra JVM options.
  ECHO. The address is transport address for the connection.
  ECHO. The address has to be in the range ^[1024,65535^]. If the option was not call, port will be set to default value.
  ECHO.
  EXIT /B 1
  
  :jmxport
  ECHO.
  ECHO. jmxport          ^[-jmxport ^<num^>^] - DEFAULT is 1088
  ECHO.
  ECHO.    Set jmx port for com.sun.management.jmxremote.port in JMX support. Port has to be in the range ^[1024,65535^]. If this option was not call, port will be set to default value.
  ECHO.
  EXIT /B 1
  
  :debug
  ECHO.
  ECHO. debug            [-debug]
  ECHO.
  ECHO. Run ODL controller with -Xdebug and -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=^$^{debugport^}
  ECHO.
  ECHO.    -Xdebug enables debugging capabilities in the JVM which are used by the Java Virtual Machine Tools Interface (JVMTI). JVMTI is a low-level debugging interface used by debuggers and profiling tools.
  ECHO.
  ECHO.    -Xrunjdwp option loads the JPDA reference implementation of JDWP. This library resides in the target VM and uses JVMDI and JNI to interact with it. It uses a transport and the JDWP protocol to communicate with a separate debugger application.
  ECHO.
  ECHO. settings for -Xrunjdwp:
  ECHO.            transport -  name of the transport to use in connecting to debugger application
  ECHO.            server    -  if 'y', listen for a debugger application to attach; otherwise, attach to the debugger application at the specified address
  ECHO.                      -  if 'y' and no address is specified, choose a transport address at which to listen for a debugger application, and print the address to the standard output stream
  ECHO.            suspend   -  if 'y', VMStartEvent has a suspend Policy of SUSPEND_ALL
  ECHO.                      -  if 'n', VMStartEvent has a suspend policy of SUSPEND_NONE
  ECHO.            address   -  transport address for the connection
  ECHO.                      -  if server=n, attempt to attach to debugger application at this address
  ECHO.          -  if server=y, listen for a connection at this address
  ECHO.
  EXIT /B 1
  
  :jmx
  ECHO.
  ECHO. jmx              [-jmx]
  ECHO.
  ECHO. Add JMX support. With settings for extra JVM options: -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=^$^{jmxport^} -Dcom.sun.management.jmxremote
  ECHO. jmxport can by set with option -jmxport ^<num^>. Default num for the option is 1088.
  ECHO.
  EXIT /B 1
  
  :stop
  ECHO.
  ECHO. stop             ^[-stop^]
  ECHO.
  ECHO. If a controller is running, the command stop controller. Pid will be clean.
  ECHO.
  EXIT /B 1
  
  :status
  ECHO.
  ECHO. status           ^[-status^]
  ECHO.
  ECHO. Find out whether a controller is running and print it.
  ECHO.
  EXIT /B 1
  
  :start
  ECHO.
  ECHO. start            ^[-start ^[^<console port^>^]^]
  ECHO.
  ECHO.    If controller is not running, the command with argument^(for set port, where controller has start^) will start new controller on a port. The port has to be in the range ^[1024,65535^]. If this option was not call, port will be set to default value. Pid will be create.
  EXIT /B 1
  
  :console
  ECHO.
  ECHO. console          [-console]
  ECHO.     Default option.
  EXIT /B 1
  
  :agentpath
  ECHO.
  ECHO. agentpath        ^[-agentpath:^<path to lib^>^]
  ECHO.
  ECHO.    Agentpath option passes path to agent to jvm in order to load native agent library, e.g. yourkit profiler agent.
  EXIT /B 1
  
  
  