protected void possiblyLaunchGwtSuperDevModeCodeServer(DebugEvent event){
  IProcess runtimeProcess=(IProcess)event.getSource();
  ILaunch launch=runtimeProcess.getLaunch();
  ILaunchConfiguration launchConfig=launch.getLaunchConfiguration();
  String launchMode=launch.getLaunchMode();
  IServer server=null;
  try {
    server=ServerUtil.getServer(launchConfig);
  }
 catch (  CoreException e) {
    logError("possiblyLaunchGwtSuperDevModeCodeServer: Could get the WTP server.",e);
    return;
  }
  if (server == null) {
    logMessage("possiblyLaunchGwtSuperDevModeCodeServer: No WTP server runtime found.");
    return;
  }
  IFacetedProject gwtFacetedProject=GwtFacetUtils.getGwtFacetedProject(server);
  if (gwtFacetedProject == null) {
    logMessage("possiblyLaunchGwtSuperDevModeCodeServer: Does not have a GWT Facet.");
    return;
  }
  if (!GWTProjectProperties.getFacetSyncCodeServer(gwtFacetedProject.getProject())) {
    logMessage("possiblyLaunchGwtSuperDevModeCodeServer: GWT Facet project properties, the code server sync is off.");
    return;
  }
  String launcherDir=getLauncherDirectory(server,launchConfig,gwtFacetedProject);
  String launcherId=setLauncherIdToWtpRunTimeLaunchConfig(launchConfig);
  logMessage("possiblyLaunchGwtSuperDevModeCodeServer: Launching GWT Super Dev Mode CodeServer. launcherId=" + launcherId + " launcherDir="+ launcherDir);
  if (launchMode == null) {
    launchMode="run";
  }
  if (launcherId == null) {
    logMessage("possiblyLaunchGwtSuperDevModeCodeServer: No launcherId.");
  }
  addServerUrlsToDevModeView(launch);
  GwtSuperDevModeCodeServerLaunchUtil.launch(gwtFacetedProject.getProject(),launchMode,launcherDir,launcherId);
}

protected void possiblyLaunchGwtSuperDevModeCodeServer ( DebugEvent event ) { IProcess runtimeProcess = ( IProcess ) event . getSource ( ) ; ILaunch launch = runtimeProcess . getLaunch ( ) ; ILaunchConfiguration launchConfig = launch . getLaunchConfiguration ( ) ; String launchMode = launch . getLaunchMode ( ) ; IServer server = null ; try { server = ServerUtil . getServer ( launchConfig ) ; } catch ( CoreException e ) { logError ( "possiblyLaunchGwtSuperDevModeCodeServer: Could get the WTP server." , e ) ; return ; } if ( server == null ) { logMessage ( "possiblyLaunchGwtSuperDevModeCodeServer: No WTP server runtime found." ) ; return ; } IFacetedProject gwtFacetedProject = GwtFacetUtils . getGwtFacetedProject ( server ) ; if ( gwtFacetedProject == null ) { logMessage ( "possiblyLaunchGwtSuperDevModeCodeServer: Does not have a GWT Facet." ) ; return ; } if ( ! GWTProjectProperties . getFacetSyncCodeServer ( gwtFacetedProject . getProject ( ) ) ) { logMessage ( "possiblyLaunchGwtSuperDevModeCodeServer: GWT Facet project properties, the code server sync is off." ) ; return ; } String launcherDir = getLauncherDirectory ( server , launchConfig , gwtFacetedProject ) ; String launcherId = setLauncherIdToWtpRunTimeLaunchConfig ( launchConfig ) ; logMessage ( "possiblyLaunchGwtSuperDevModeCodeServer: Launching GWT Super Dev Mode CodeServer. launcherId=" + launcherId + " launcherDir=" + launcherDir ) ; if ( launchMode == null ) { launchMode = "run" ; } if ( launcherId == null ) { logMessage ( "possiblyLaunchGwtSuperDevModeCodeServer: No launcherId." ) ; } addServerUrlsToDevModeView ( launch ) ; GwtSuperDevModeCodeServerLaunchUtil . launch ( gwtFacetedProject . getProject ( ) , launchMode , launcherDir , launcherId ) ; }
possibly start the gwt super dev mode codeserver . < br / > < br / > this starts as separate process , which allows for custom args modification . it adds a launcher id to both processes for reference . 1 . get it from classic launch config 2 . get it from server vm properties
