Rational Developer for i
7.5.0

com.ibm.etools.systems.as400.debug.launchconfig
Class IDEALLaunchConfigurationBaseDelegate

java.lang.Object
  extended by com.ibm.etools.systems.as400.debug.launchconfig.IDEALLaunchConfigurationBaseDelegate
All Implemented Interfaces:
IISeriesAuthorityConstants, IDEALConfigurationConstants
Direct Known Subclasses:
IDEALLaunchConfigurationAttachDelegate, IDEALLaunchConfigurationBatchDelegate, IDEALLaunchConfigurationBCIDelegate, IDEALLaunchConfigurationInteractiveDelegate, IDEALLaunchConfigurationRSEJobDelegate

public abstract class IDEALLaunchConfigurationBaseDelegate
extends Object
implements IDEALConfigurationConstants, IISeriesAuthorityConstants


Field Summary
protected  IDEALCommandValidator commandValidator
           
static String copyright
           
protected  ILaunchConfiguration currentConfig
           
protected  String debuggeeJobName
           
protected  String debuggeeModuleName
           
protected  String debuggeeProcedureName
           
protected  String debuggeeProgramName
           
protected  String debuggeeProgramType
           
protected  PICLDebugTarget debugTarget
           
protected  String errorMessage
           
static String IDEAL_STARTUP_ELEMENT_NAME
           
protected  int key
           
protected  ILaunch launch
           
protected  int LAUNCH_DONE
           
protected  int LAUNCH_FAIL
           
protected  int LAUNCH_SUCCESS
           
protected  int launchType
           
static int MAXNUMBER_ENGINE_ARGUMENTS
           
protected  String mode
           
protected  int rseDaemonKey
           
 
Fields inherited from interface com.ibm.etools.systems.as400.debug.launchconfig.IDEALConfigurationConstants
ADVANCED_FILTER_PREFIX, ALL, ANY, ATTACH, BATCH, CALL, CALLPGM, CHECKBACKENDVERSION, CHECKBOX_FILTER_PREFIX, CMD, COMPATIBLE, CONNECTION_FILTER_PREFIX, Copyright, CURLIB, DAEMON, DAEMONKEY, DEBBUGROUTER_ALREADYSTARTED, DEBBUGROUTER_CANNOTSTART, DEBBUGROUTER_CANNOTSTOP, DEBBUGROUTER_ERROR_PREFIX, DEBBUGROUTER_JOBNAME, DEBBUGROUTER_NOTSTARTED, DEBBUGROUTER_PORTNOTAVAILABLE, DEBBUGROUTER_SUBSYSTEMNAME, DEBUG_MODE, DEBUG_PERSPECTIVE_ID, DEFAULT_ROUTER_PORT, DEFAULT_ROUTER_PORT_STRING, ENDDBGSVR, ENGINE_LIB, ENGINE_PGM, ENGINE_SRVPGM, EPDC_SEP_REFRESH, ERROR_FILTER_PREFIX, ERROR_STATUS_CODE, FRONTEND_VERSION, GENERIC_FILTER_PREFIX, HIGHER_BACKENDVERSION_PREFERRED, HIGHER_BACKENDVERSION_REQUIRED, HIGHER_FRONTENDVERSION_REQUIRED, HIGHER_OS400VERSION_REQUIRED, HISTORY_ADD_PROGRAMS, HISTORY_PREFIX, HISTORY_PROGRAM_NAME, HISTORY_PROGRAM_TYPE, ICON_RELATIVE_PATH_FULL, IDEAL_DEBUG_ATTACH, IDEAL_DEBUG_BATCH, IDEAL_DEBUG_BCI, IDEAL_DEBUG_INTERACTIVE, IDEAL_GENERIC_PREFIX, IDEAL_ICON_SBREAK_DISABLE, IDEAL_ICON_SBREAK_ENABLE, IDEAL_ICON_SBREAK_VIEW_DISABLE, IDEAL_ICON_SBREAK_VIEW_ENABLE, IDEAL_ICON_SBREAK_VIEW_FILTER, IDEAL_ICON_SBREAK_VIEW_MODIFY, IDEAL_ICON_SBREAK_VIEW_REFRESH, IDEAL_ICON_SBREAK_VIEW_REMOVE, IDEAL_ICON_SBREAK_VIEW_SET, IDEAL_ICON_SEP_SET_ERROR, IDEAL_ICON_SEP_SET_WARNING, IDEAL_ICONFILE_PATH, IDEAL_ICONFILE_SBREAK_DISABLE, IDEAL_ICONFILE_SBREAK_ENABLE, IDEAL_ICONFILE_SBREAK_VIEW_DISABLE, IDEAL_ICONFILE_SBREAK_VIEW_ENABLE, IDEAL_ICONFILE_SBREAK_VIEW_FILTER, IDEAL_ICONFILE_SBREAK_VIEW_MODIFY, IDEAL_ICONFILE_SBREAK_VIEW_PATH, IDEAL_ICONFILE_SBREAK_VIEW_REFRESH, IDEAL_ICONFILE_SBREAK_VIEW_REMOVE, IDEAL_ICONFILE_SBREAK_VIEW_SET, IDEAL_ICONFILE_SEP_SET_ERROR, IDEAL_ICONFILE_SEP_SET_WARNING, IDEAL_RUN_BATCH, IDEAL_RUN_INTERACTIVE, IDEAL_RUN_MULTITHREAD, IDEAL_RUN_RSEJOB, IDEAL_SERVER_NOTEXIST, INTERACTIVE, ISERIES_MEMBER_LABEL, ISERIES_MEMBER_PREFIX, ISERIES_MEMBER_TITLE, ISERIES_WORKSPACE_LABEL, ISERIES_WORKSPACE_PREFIX, ISERIES_WORKSPACE_TITLE, JOB_FILTER_PREFIX, JOBLIST_FILTER_PREFIX, LAUNCHCMD_FILTER_PREFIX, LAUNCHCONFIG_NAME_PREFIX, LAUNCHTYPE_ATTACH, LAUNCHTYPE_UNKNOWN, LIBL, LOWEST_BACKEND_VERSION_REQUIRED, LOWEST_BACKEND_VERSION_SUPPORT_PROMPT, MODULE, MSG_FORMATTER_NAME, MULTITHREAD, NEW_CONFIG, PGM, PGM_SEPERATOR, PHANTOM_ENGINE_NAME, PHANTOM_ENGINE_PGM, PLUGIN_ID, PREFERRED_BACKEND_VERSION, PREFIX, PROCEDURE, PROGRAM_FILTER_PREFIX, PROGRAM_SEPERATOR, PROGRESS_FILTER_PREFIX, RAC_PREFIX, RAC_PREFPAGE_PREFIX, RAC_PREFPAGE_SBMJOBCMD, RESID_ADVANCED_IPADDRESS, RESID_ADVANCED_IPAUTOMATIC, RESID_ADVANCED_IPGROUPTITLE, RESID_ADVANCED_IPSPECIFY, RESID_ADVANCED_SOURCEPATH, RESID_ADVANCED_STOPATENTRY, RESID_BUTTON_ADD, RESID_BUTTON_CONTINUE, RESID_CHECKBOX_STEPINTO, RESID_CHECKBOX_UPDPRODFILES, RESID_CONNECTION_NAME, RESID_ENGINEJOB_PREFERENCE, RESID_ENGINEJOB_PREFERENCE_ROOT, RESID_ERROR_ACCEPTFAILED, RESID_ERROR_ADVANCED_TAB, RESID_ERROR_BCIFAILEDTOLAUNCHFULL, RESID_ERROR_BCIFAILEDTOLAUNCHSHORT, RESID_ERROR_BUSYINTERACTIVEJOB, RESID_ERROR_BUSYRSESERVERJOB, RESID_ERROR_CALLPGMDOESNOTEXIST, RESID_ERROR_CHECKREQUIREDPTFS, RESID_ERROR_CMDNOTAUTHORIZED, RESID_ERROR_COULDNOTATTACH, RESID_ERROR_COULDNOTCREATESOCKET, RESID_ERROR_COULDNOTRESOLVEIP, RESID_ERROR_COULDNOTSTARTDAEMON, RESID_ERROR_DEBUGGEINFO_TAB, RESID_ERROR_DROPPEDCONNECTION, RESID_ERROR_EMPTYIPADDRESS, RESID_ERROR_EMPTYLAUNCHCOMMAND, RESID_ERROR_EMPTYPROGRAMNAME, RESID_ERROR_EMPTYSERVICEPROGRAM, RESID_ERROR_FAILEDCALL, RESID_ERROR_FAILEDSBMJOB, RESID_ERROR_FAILEDSTARTAPPLICATION, RESID_ERROR_FAILEDUSERCOMMAND, RESID_ERROR_INCOMPLETECALLCOMMAND, RESID_ERROR_INCOMPLETESBMJOBCOMMAND, RESID_ERROR_INTRFAILEDTOLAUNCHFULL, RESID_ERROR_INTRFAILEDTOLAUNCHSHORT, RESID_ERROR_INVALID_BACKEND_VERSION, RESID_ERROR_INVALID_DEBUG_BACKEND_VERSION, RESID_ERROR_INVALID_EXCEPTION_VERSION, RESID_ERROR_INVALID_PLUGIN_VERSION, RESID_ERROR_INVALIDCONNECTION, RESID_ERROR_INVALIDCONNECTIONJOB, RESID_ERROR_INVALIDIPADDRESS, RESID_ERROR_INVALIDJOBNAME, RESID_ERROR_INVALIDJOBNUMBER, RESID_ERROR_INVALIDLAUNCHCOMMAND, RESID_ERROR_INVALIDPROGRAM, RESID_ERROR_INVALIDPROGRAMTYPE, RESID_ERROR_INVALIDSBMJOBCOMMAND, RESID_ERROR_INVALIDSERVICEPROGRAM, RESID_ERROR_INVALIDSOURCEPATH, RESID_ERROR_INVALIDSOURCEPATHENTRY, RESID_ERROR_INVALIDUSERNAME, RESID_ERROR_JOBDOESNOTEXIST, RESID_ERROR_LAUNCHINFO_TAB, RESID_ERROR_LOSTCONNECTION, RESID_ERROR_MESSAGE_SEP_NOTSET_GENERAL, RESID_ERROR_MESSAGE_SEP_NOTSET_GENERAL_ERROR, RESID_ERROR_MESSAGE_SEP_NOTSET_GENERAL_ERROR_WARNING, RESID_ERROR_MESSAGE_SEP_NOTSET_GENERAL_ERROR_WARNINGS, RESID_ERROR_MESSAGE_SEP_NOTSET_GENERAL_ERRORS, RESID_ERROR_MESSAGE_SEP_NOTSET_GENERAL_ERRORS_WARNING, RESID_ERROR_MESSAGE_SEP_NOTSET_GENERAL_ERRORS_WARNINGS, RESID_ERROR_MESSAGE_SEP_NOTSET_GENERAL_WARNING, RESID_ERROR_MESSAGE_SEP_NOTSET_GENERAL_WARNINGS, RESID_ERROR_MESSAGE_SEP_NOTSET_NOTDEBUG, RESID_ERROR_MESSAGE_SEP_NOTSET_NOTDEBUG_PGM, RESID_ERROR_MESSAGE_SEP_NOTSET_NOTDEBUG_PGM_MOD, RESID_ERROR_MESSAGE_SEP_NOTSET_NOTDEBUG_PGM_MOD_PRD, RESID_ERROR_MESSAGE_SEP_NOTSET_NOTDEBUG_SRVPGM, RESID_ERROR_MESSAGE_SEP_NOTSET_NOTDEBUG_SRVPGM_MOD, RESID_ERROR_MESSAGE_SEP_NOTSET_NOTDEBUG_SRVPGM_MOD_PRD, RESID_ERROR_MESSAGE_SEP_NOTSET_OPM_PGM, RESID_ERROR_NOINTERACTIVEJOB, RESID_ERROR_NONEXISTPROGRAM, RESID_ERROR_NONEXISTSERVICEPROGRAM, RESID_ERROR_NOTALLOWEDSBMJOBCOMMAND, RESID_ERROR_NOTCONNECTED, RESID_ERROR_NOTUNIQUEJOBNAME, RESID_ERROR_PGMNOTAUTHORIZED, RESID_ERROR_PGMWITHOUTDEBUGDATA, RESID_ERROR_SBMJOBPGMDOESNOTEXIST, RESID_ERROR_SEPALREDYEXISTSPGM, RESID_ERROR_SEPALREDYEXISTSPGMMODULE, RESID_ERROR_SEPALREDYEXISTSPGMPROC, RESID_ERROR_SEPALREDYEXISTSSRVPGM, RESID_ERROR_SEPALREDYEXISTSSRVPGMMODULE, RESID_ERROR_SEPALREDYEXISTSSRVPGMPROC, RESID_ERROR_SEPENGINECOMMDROP, RESID_ERROR_SEPINVALIDINFOPGM, RESID_ERROR_SEPINVALIDINFOSRVPGM, RESID_ERROR_SEPNOTAUTHORIZEDPGM, RESID_ERROR_SEPNOTAUTHORIZEDSRVPGM, RESID_ERROR_SEPNOTAUTHORIZEDUSER, RESID_ERROR_SRVPGMNOTAUTHORIZED, RESID_ERROR_SRVPGMWITHOUTDEBUGDATA, RESID_GLOBAL_LIBRARY, RESID_GLOBAL_PGMTYPE, RESID_GLOBAL_PREFIX, RESID_GLOBAL_PROGRAM, RESID_GLOBAL_SRVPGM, RESID_INFO_APP_COMPLETED_SUCCESS, RESID_INFO_APP_STARTED_SUCCESS, RESID_INFO_IDEAL_HAVE_RUN_INJOB, RESID_INFO_IDEAL_WILL_RUN_INJOB, RESID_INFO_INVOKE_APPINJOB, RESID_INFO_INVOKE_APPINJOB_ADDPGM, RESID_INFO_INVOKE_APPINJOB_NOADDPGM, RESID_INFO_INVOKE_APPINJOBDETAILS, RESID_INFO_INVOKE_APPLICAITON, RESID_INFO_INVOKE_APPLICAITON_INJOB, RESID_INFO_MESSAGE_DIALOG_TITLE, RESID_INFO_MESSAGE_SEP_CONFLICT_MODIFY_SP, RESID_INFO_MESSAGE_SEP_CONFLICT_MODIFY_SS, RESID_INFO_MESSAGE_SEP_CONFLICT_PP, RESID_INFO_MESSAGE_SEP_CONFLICT_PS, RESID_INFO_MESSAGE_SEP_CONFLICT_SP, RESID_INFO_MESSAGE_SEP_CONFLICT_SS, RESID_INFO_RUN_MESSAGE_DIALOG_TITLE, RESID_ISERIES_MEMBER_SOURCE_FILES, RESID_JOB_JOBNAME, RESID_JOB_JOBNUMBER, RESID_JOB_TITLE, RESID_JOB_USERNAME, RESID_JOBLIST_BUTTON, RESID_LAUNCHCMD_CMDNAME, RESID_LAUNCHCMD_CONFIGID, RESID_LAUNCHCMD_PROMPTBUTTON, RESID_LAUNCHCONFIGNAME_JOB, RESID_LAUNCHCONFIGNAME_PROGRAM, RESID_LAUNCHCONFIGNAME_PROGRAM_RUN, RESID_LOCAL_SOURCEPATH_ADD_TITLE, RESID_LOCAL_SOURCEPATH_ADD_TOOLTIP, RESID_LOCAL_SOURCEPATH_CHANGE_TITLE, RESID_LOCAL_SOURCEPATH_CHANGE_TOOLTIP, RESID_LOCAL_SOURCEPATH_CONFIGID, RESID_LOCAL_SOURCEPATH_DESCRIPTION, RESID_LOCAL_SOURCEPATH_MOVEDOWN_TOOLTIP, RESID_LOCAL_SOURCEPATH_MOVEUP_TOOLTIP, RESID_LOCAL_SOURCEPATH_REMOVE_TOOLTIP, RESID_LOCAL_SOURCEPATH_ROOT, RESID_LOCAL_SOURCEPATH_TITLE, RESID_LOCAL_SOURCEPATH_TOOLTIP, RESID_LOCAL_SOURCEPATH_VALUE_TOOLTIP, RESID_PREFIX, RESID_PROFILE_NAME, RESID_PROGRAM_BROWSEBUTTON, RESID_PROGRAM_DEBUG_BLOCK, RESID_PROGRAM_DEBUG_BLOCK_ADD_ROOT, RESID_PROGRAM_DEBUG_BLOCK_ADD_TITLE, RESID_PROGRAM_DEBUG_BLOCK_EDIT_ROOT, RESID_PROGRAM_DEBUG_BLOCK_EDIT_TITLE, RESID_PROGRAM_DEBUG_BLOCK_PROGRAM_DUPLICATED, RESID_PROGRAM_DEBUG_BLOCK_PROGRAM_INVALID, RESID_PROGRAM_DEBUG_BLOCK_REMOVE_ROOT, RESID_PROGRAM_DEBUG_BLOCK_REMOVE_TITLE, RESID_PROGRAM_DEBUGGEES, RESID_PROGRAM_LIBRARYNAME, RESID_PROGRAM_PROGRAMNAME, RESID_PROGRAM_PROGRAMTYPE, RESID_PROGRAM_TERMINATE, RESID_PROGRAM_TITLE, RESID_PROGRESS_STARTING, RESID_PROGRESS_STARTINGISERIES, RESID_SBREAK_ADD_TITLE, RESID_SBREAK_CONNECTION, RESID_SBREAK_CONNECTION_LABEL, RESID_SBREAK_CONNECTION_TOOLTIP, RESID_SBREAK_EDIT_TITLE, RESID_SBREAK_ENABLEMENT_LABEL, RESID_SBREAK_ENABLEMENT_TOOLTIP, RESID_SBREAK_FILENAME_LABEL, RESID_SBREAK_FILENAME_TOOLTIP, RESID_SBREAK_HIT_ALL, RESID_SBREAK_HIT_ALWAYS, RESID_SBREAK_HIT_MODULE, RESID_SBREAK_HIT_PROCEDURE, RESID_SBREAK_HIT_ROOT, RESID_SBREAK_HIT_SRVPGM_ALL, RESID_SBREAK_HIT_SRVPGM_MODULE, RESID_SBREAK_HIT_SRVPGM_PROCEDURE, RESID_SBREAK_HIT_SRVPGM_ROOT, RESID_SBREAK_LIBRARY, RESID_SBREAK_LIBRARY_LABEL, RESID_SBREAK_LIBRARY_TOOLTIP, RESID_SBREAK_LINENUMBER_LABEL, RESID_SBREAK_LINENUMBER_TOOLTIP, RESID_SBREAK_MODULE_LABEL, RESID_SBREAK_MODULE_TOOLTIP, RESID_SBREAK_PROCEDURE_LABEL, RESID_SBREAK_PROCEDURE_TOOLTIP, RESID_SBREAK_PROGRAM, RESID_SBREAK_PROGRAM_LABEL, RESID_SBREAK_PROGRAM_TOOLTIP, RESID_SBREAK_PROGRAMTYPE, RESID_SBREAK_PROGRAMTYPE_LABEL, RESID_SBREAK_PROGRAMTYPE_TOOLTIP, RESID_SBREAK_ROOT, RESID_SBREAK_SETTERUSERPROFILE, RESID_SBREAK_SETTERUSERPROFILE_LABEL, RESID_SBREAK_SETTERUSERPROFILE_TOOLTIP, RESID_SBREAK_USERPROFILE, RESID_SBREAK_USERPROFILE_LABEL, RESID_SBREAK_USERPROFILE_TOOLTIP, RESID_SBREAK_VIEW, RESID_SBREAK_VIEW_ACTION, RESID_SBREAK_VIEW_ACTION_DISABLE_LABEL, RESID_SBREAK_VIEW_ACTION_DISABLE_TOOLTIP, RESID_SBREAK_VIEW_ACTION_DISABLEALL_LABEL, RESID_SBREAK_VIEW_ACTION_DISABLEALL_TOOLTIP, RESID_SBREAK_VIEW_ACTION_ENABLE_LABEL, RESID_SBREAK_VIEW_ACTION_ENABLE_TOOLTIP, RESID_SBREAK_VIEW_ACTION_ENABLEALL_LABEL, RESID_SBREAK_VIEW_ACTION_ENABLEALL_TOOLTIP, RESID_SBREAK_VIEW_ACTION_ERROR, RESID_SBREAK_VIEW_ACTION_ERROR_DISABLE, RESID_SBREAK_VIEW_ACTION_ERROR_DISABLE_PLURAL, RESID_SBREAK_VIEW_ACTION_ERROR_DISABLE_SINGLE, RESID_SBREAK_VIEW_ACTION_ERROR_ENABLE, RESID_SBREAK_VIEW_ACTION_ERROR_ENABLE_PLURAL, RESID_SBREAK_VIEW_ACTION_ERROR_ENABLE_SINGLE, RESID_SBREAK_VIEW_ACTION_ERROR_MODIFY, RESID_SBREAK_VIEW_ACTION_ERROR_NOCONNECTION, RESID_SBREAK_VIEW_ACTION_ERROR_NOPGMFOUND, RESID_SBREAK_VIEW_ACTION_ERROR_NOPGMMODULEFOUND, RESID_SBREAK_VIEW_ACTION_ERROR_NOPGMPROCEDUREFOUND, RESID_SBREAK_VIEW_ACTION_ERROR_NOSRVPGMFOUND, RESID_SBREAK_VIEW_ACTION_ERROR_NOSRVPGMMODULEFOUND, RESID_SBREAK_VIEW_ACTION_ERROR_NOSRVPGMPROCEDUREFOUND, RESID_SBREAK_VIEW_ACTION_ERROR_OSVERSION, RESID_SBREAK_VIEW_ACTION_ERROR_REFRESH, RESID_SBREAK_VIEW_ACTION_ERROR_REMOVE, RESID_SBREAK_VIEW_ACTION_ERROR_REMOVE_PLURAL, RESID_SBREAK_VIEW_ACTION_ERROR_REMOVE_SINGLE, RESID_SBREAK_VIEW_ACTION_ERROR_SET, RESID_SBREAK_VIEW_ACTION_ERROR_SET_NONDEBUGGABLE_MODULE, RESID_SBREAK_VIEW_ACTION_ERROR_SET_NONDEBUGGABLE_PGM, RESID_SBREAK_VIEW_ACTION_ERROR_SET_NONDEBUGGABLE_SRVPGM, RESID_SBREAK_VIEW_ACTION_FILTER_LABEL, RESID_SBREAK_VIEW_ACTION_FILTER_TOOLTIP, RESID_SBREAK_VIEW_ACTION_INFO, RESID_SBREAK_VIEW_ACTION_INFO_SET, RESID_SBREAK_VIEW_ACTION_INFO_SET_TOGGLE, RESID_SBREAK_VIEW_ACTION_MODIFY_LABEL, RESID_SBREAK_VIEW_ACTION_MODIFY_TOOLTIP, RESID_SBREAK_VIEW_ACTION_REFRESH_LABEL, RESID_SBREAK_VIEW_ACTION_REFRESH_TOOLTIP, RESID_SBREAK_VIEW_ACTION_REMOVE_LABEL, RESID_SBREAK_VIEW_ACTION_REMOVE_TOOLTIP, RESID_SBREAK_VIEW_ACTION_REMOVEALL_LABEL, RESID_SBREAK_VIEW_ACTION_REMOVEALL_TOOLTIP, RESID_SBREAK_VIEW_ACTION_SELECTALL_LABEL, RESID_SBREAK_VIEW_ACTION_SELECTALL_TOOLTIP, RESID_SBREAK_VIEW_ACTION_SET_LABEL, RESID_SBREAK_VIEW_ACTION_SET_TOOLTIP, RESID_SBREAK_VIEW_ACTION_STOPENGINE, RESID_SBREAK_VIEW_ACTION_STOPENGINE_ALL, RESID_SBREAK_VIEW_ACTION_STOPENGINE_ALL_LABEL, RESID_SBREAK_VIEW_ACTION_STOPENGINE_ALL_TOOLTIP, RESID_SBREAK_VIEW_ACTION_STOPENGINE_LABEL, RESID_SBREAK_VIEW_ACTION_STOPENGINE_PROMPT_LABEL, RESID_SBREAK_VIEW_ACTION_STOPENGINE_TOOLTIP, RESID_SBREAK_VIEW_FILTER, RESID_SBREAK_VIEW_FILTER_ALL, RESID_SBREAK_VIEW_FILTER_ALL_LABEL, RESID_SBREAK_VIEW_FILTER_ALL_TOOLTIP, RESID_SBREAK_VIEW_FILTER_ON, RESID_SBREAK_VIEW_FILTER_ON_LABEL, RESID_SBREAK_VIEW_FILTER_TITLE, RESID_SBREAK_VIEW_GENERIC_NAME_MODULE, RESID_SBREAK_VIEW_GENERIC_NAME_PROCEDURE, RESID_SBREAK_VIEW_HOST, RESID_SBREAK_VIEW_HOST_LABEL, RESID_SBREAK_VIEW_HOST_TOOLTIP, RESID_SBREAK_VIEW_ID, RESID_SBREAK_VIEW_LABEL, RESID_SBREAK_VIEW_MODULE_PROMPT_PREFIX, RESID_SBREAK_VIEW_NAME_MODULE, RESID_SBREAK_VIEW_NAME_PROCEDURE, RESID_SBREAK_VIEW_NO_LABEL, RESID_SBREAK_VIEW_PROCEDURE_PROMPT_PREFIX, RESID_SBREAK_VIEW_PROMPT_MODULE_BROWSEBUTTON_ROOT, RESID_SBREAK_VIEW_PROMPT_MODULE_ROOT, RESID_SBREAK_VIEW_PROMPT_MODULE_SIMPLE_ROOT, RESID_SBREAK_VIEW_PROMPT_MODULE_SIMPLE_ROOT_TOOLTIP, RESID_SBREAK_VIEW_PROMPT_PREFIX, RESID_SBREAK_VIEW_PROMPT_PROCEDURE_BROWSEBUTTON_ROOT, RESID_SBREAK_VIEW_PROMPT_PROCEDURE_ROOT, RESID_SBREAK_VIEW_PROMPT_PROCEDURE_SIMPLE_ROOT, RESID_SBREAK_VIEW_PROMPT_PROCEDURE_SIMPLE_ROOT_TOOLTIP, RESID_SBREAK_VIEW_REFRESH_DIALOG_PREFIX, RESID_SBREAK_VIEW_REFRESH_DIALOG_SEPINVALID, RESID_SBREAK_VIEW_STOP_CONNECTION, RESID_SBREAK_VIEW_STOP_CONNECTION_LABEL, RESID_SBREAK_VIEW_STOP_CONNECTION_TOOLTIP, RESID_SBREAK_VIEW_STOPENGINE_TITLE, RESID_SBREAK_VIEW_STOPPING_EXPLAIN_LABEL, RESID_SBREAK_VIEW_STOPPING_LABEL, RESID_SBREAK_VIEW_YES_LABEL, RESID_SEP_PREFERENCE_DSPLCDSEPHIT, RESID_SEP_PREFERENCE_HIT, RESID_SEP_PREFERENCE_ROOT, RESID_SEP_PREFERENCE_SETPROMPT, RESID_SOURCELOCATOR_LABEL, RESID_SOURCELOCATOR_ROOT, RESID_SOURCELOCATOR_TABLE_HEADER_LOCATION, RESID_SOURCELOCATOR_TABLE_HEADER_PATH, RESID_SOURCELOCATOR_TABLE_HEADER_PROJECT, RESID_SOURCELOCATOR_TABLE_LABEL, RESID_SOURCELOCATOR_TABLE_TOOLTIP, RESID_SOURCELOCATOR_TITLE, RESID_SOURCEPATH_ADD_LABEL, RESID_SOURCEPATH_ADD_TITLE, RESID_SOURCEPATH_ADD_TOOLTIP, RESID_SOURCEPATH_CHANGE_LABEL, RESID_SOURCEPATH_CHANGE_TITLE, RESID_SOURCEPATH_CHANGE_TOOLTIP, RESID_SOURCEPATH_CONFIGID, RESID_SOURCEPATH_DESCRIPTION, RESID_SOURCEPATH_MOVEDOWN_LABEL, RESID_SOURCEPATH_MOVEDOWN_TOOLTIP, RESID_SOURCEPATH_MOVEUP_LABEL, RESID_SOURCEPATH_MOVEUP_TOOLTIP, RESID_SOURCEPATH_NAME_LABEL, RESID_SOURCEPATH_NAME_TITLE, RESID_SOURCEPATH_NAME_TOOLTIP, RESID_SOURCEPATH_REMOVE_LABEL, RESID_SOURCEPATH_REMOVE_TOOLTIP, RESID_SOURCEPATH_ROOT, RESID_SOURCEPATH_TITLE, RESID_SOURCEPATH_TOOLTIP, RESID_SOURCEPATH_VALUE_LABEL, RESID_SOURCEPATH_VALUE_TITLE, RESID_SOURCEPATH_VALUE_TOOLTIP, RESID_TABS_ADVANCEDTAB, RESID_TABS_DEBUGGEETAB, RESID_TABS_LAUNCHTAB, RESID_TERMINATE_PREFERENCE, RESID_TRACE_LAUNCH, RESID_TRACE_LAUNCH_DIALOG_TITLE, RESID_TRACE_LAUNCH_ENDENGINEJOB, RESID_TRACE_LAUNCH_STARTENGINEJOB, RESID_TRACE_PREFIX, RESID_USE_SRVPGM_FOR_SRCBP_CHECKBOX, RESID_USE_SRVPGM_FOR_SRCBP_EXCLUDELIB, RESID_USE_SRVPGM_FOR_SRCBP_ROOT, RESID_WARNING_OUTDATED_BACKEND_VERSION, RESID_WARNING_OUTDATED_BACKEND_VERSION_DETAILS, RESID_WARNING_OUTDATED_BACKEND_VERSION_MAIN, RSEJOB, RUN_MODE, RUN_WITH_PROMPT, SBMJOB, SBMJOBCALLPGM, SEP_CONFLICT_PREFIX, SEP_NOTSET_PREFIX, SEP_REMOVE_MENU, SEP_SET_MENU, SEP_SET_PROMPT_SUCC_NOPROMPT, SEP_SET_PROMPT_SUCC_PREFIX, SEP_SET_PROMPT_SUCC_PURPLE, SEP_SET_PROMPT_SUCC_SINGLE, SPACE_SEPERATOR, SRVPGM, SRVTABL_ENTRY, STRDBGSVR, TAB_ADVANCED, TAB_COMMON, TAB_DEBUGGEINFO, TAB_FILTER_PREFIX, TAB_LAUNCHINFO, TAB_NONE, TAB_RUN_LAUNCHINFO, TABGROUP_IDEAL_ATTACH, TABGROUP_IDEAL_BATCH, TABGROUP_IDEAL_BCI, TABGROUP_IDEAL_INTERACTIVE, TABGROUP_IDEAL_RUN_BCI, TABGROUP_IDEAL_RUN_RSEJOB, VERSION, VERSION_MATCHED, WARNING_FILTER_PREFIX, WRONG_STATUS_CODE
 
Fields inherited from interface com.ibm.etools.iseries.comm.interfaces.IISeriesAuthorityConstants
AUTHORITY_ADD, AUTHORITY_ALL, AUTHORITY_CHANGE, AUTHORITY_COPY, AUTHORITY_COPY_MEMBER, AUTHORITY_DELETE, AUTHORITY_EDIT, AUTHORITY_EXECUTE, AUTHORITY_MANAGE, AUTHORITY_OBJ_OPERATE, AUTHORITY_OBJ_OPERATE_MGMT, AUTHORITY_READ, AUTHORITY_UPDATE, AUTHORITY_USE
 
Constructor Summary
IDEALLaunchConfigurationBaseDelegate()
           
 
Method Summary
abstract  void addCommunicationsDaemonHandler(int rseDaemonKey)
          Method to register this RSE Communications Daemon handler with the RSE Communications Daemon
protected abstract  boolean attachCompletionNotificationRequired()
          attachCompletionNotificationRequired() Determines whether this type of launch configuration requires debug engine to notify front-end about the fact that debug engine attached successfully.
abstract  IIDEALNotificationHandler createNotificationHandler()
           
 String getErrorMessage()
          Getter method for errorMessage
 Shell getShell()
          This is a callback method that is invoked when an ISystemResourceChangeEvent event occurs
protected abstract  String getUserApplicationJobName(IBMiConnection iSeriesConnection)
          Child classes implementing this method must either submit/start user application and figure out its job name, or get user to provide the job number manually.
 void launch(ILaunchConfiguration config, String mode, ILaunch launch, IProgressMonitor monitor)
           
protected abstract  void performCleanup(IBMiConnection connection)
          performCleanup() If startup sequence failed for whatever reason, we might want to do some cleanup based on individual launch configuratoin
protected  void removeLaunch(ILaunch launch)
          Remove launch and process.
protected  String reverseQualifiedJobName(String qualifiedJobName)
          Given a valid job name in the following format: jobName/userName/jobNumber reverses job name order and returns job name in the format: jobNumber/userName/jobName
protected abstract  String runUserApplication(IBMiConnection iSeriesConnection)
          Child classes implementing this method must know how to submit/start user application.
protected  void setErrorMessage(String errorMessage)
          Setter method for errorMessage
protected  void startDebugEngine(String[] arguments, int totalNumberOfArguments, AS400 as400ToolboxObject)
          startDebugEngine() Then build up a command string to invoke Debug Engine program (QB5SERVER) on iSeries.
protected  boolean startDebugEngine(String[] arguments, int totalNumberOfArguments, IBMiConnection iSeriesConnection, PICLDebugTarget debugTarget, IIDEALNotificationHandler notificationHandler, int routerPortNumber)
          startDebugEngine() Then build up a command string to invoke Debug Engine program (QB5SERVER) on iSeries.
 void systemResourceChanged(ISystemResourceChangeEvent event)
          This is a callback method that is invoked when an ISystemResourceChangeEvent event occurs.
protected  ILaunchConfiguration updateConfigErrorMessage(IBMiConnection iSeriesConnection, String errorMessage, String tabInError)
          Update currentConfig LaunchConfiguraiton file with the supplied error message for the specified tab
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

copyright

public static final String copyright
See Also:
Constant Field Values

IDEAL_STARTUP_ELEMENT_NAME

public static final String IDEAL_STARTUP_ELEMENT_NAME
See Also:
Constant Field Values

MAXNUMBER_ENGINE_ARGUMENTS

public static final int MAXNUMBER_ENGINE_ARGUMENTS
See Also:
Constant Field Values

currentConfig

protected ILaunchConfiguration currentConfig

debugTarget

protected PICLDebugTarget debugTarget

commandValidator

protected IDEALCommandValidator commandValidator

errorMessage

protected String errorMessage

debuggeeJobName

protected String debuggeeJobName

debuggeeProgramName

protected String debuggeeProgramName

debuggeeModuleName

protected String debuggeeModuleName

debuggeeProcedureName

protected String debuggeeProcedureName

debuggeeProgramType

protected String debuggeeProgramType

key

protected int key

rseDaemonKey

protected int rseDaemonKey

LAUNCH_FAIL

protected int LAUNCH_FAIL

LAUNCH_SUCCESS

protected int LAUNCH_SUCCESS

LAUNCH_DONE

protected int LAUNCH_DONE

mode

protected String mode

launchType

protected int launchType

launch

protected ILaunch launch
Constructor Detail

IDEALLaunchConfigurationBaseDelegate

public IDEALLaunchConfigurationBaseDelegate()
Method Detail

launch

public void launch(ILaunchConfiguration config,
                   String mode,
                   ILaunch launch,
                   IProgressMonitor monitor)
            throws CoreException
Throws:
CoreException
See Also:
ILaunchConfigurationDelegate#launch(ILaunchConfiguration, String, ILaunch, IProgressMonitor)

getUserApplicationJobName

protected abstract String getUserApplicationJobName(IBMiConnection iSeriesConnection)
Child classes implementing this method must either submit/start user application and figure out its job name, or get user to provide the job number manually. Fully qualified job name must be returned in the following format: JobName/UserName/JobNumber. If an error occurs, null is returned and errorMessage must be set. This method is intended for used in the DEBUG launch configuration mode.


runUserApplication

protected abstract String runUserApplication(IBMiConnection iSeriesConnection)
Child classes implementing this method must know how to submit/start user application. This method is intended for used in the RUN launch configuration mode.


performCleanup

protected abstract void performCleanup(IBMiConnection connection)
performCleanup() If startup sequence failed for whatever reason, we might want to do some cleanup based on individual launch configuratoin


attachCompletionNotificationRequired

protected abstract boolean attachCompletionNotificationRequired()
attachCompletionNotificationRequired() Determines whether this type of launch configuration requires debug engine to notify front-end about the fact that debug engine attached successfully.


addCommunicationsDaemonHandler

public abstract void addCommunicationsDaemonHandler(int rseDaemonKey)
Method to register this RSE Communications Daemon handler with the RSE Communications Daemon


createNotificationHandler

public abstract IIDEALNotificationHandler createNotificationHandler()

startDebugEngine

protected void startDebugEngine(String[] arguments,
                                int totalNumberOfArguments,
                                AS400 as400ToolboxObject)
startDebugEngine() Then build up a command string to invoke Debug Engine program (QB5SERVER) on iSeries. This command will take all parameters passed by the user on command line plus RSE daemon IP address (this is not mandatory) and port number. This method is intended for used in the DEBUG launch configuration mode.


startDebugEngine

protected boolean startDebugEngine(String[] arguments,
                                   int totalNumberOfArguments,
                                   IBMiConnection iSeriesConnection,
                                   PICLDebugTarget debugTarget,
                                   IIDEALNotificationHandler notificationHandler,
                                   int routerPortNumber)
startDebugEngine() Then build up a command string to invoke Debug Engine program (QB5SERVER) on iSeries. This command will take all parameters passed by the user on command line plus RSE daemon IP address (this is not mandatory) and port number. This method is intended for used in the DEBUG launch configuration mode.


reverseQualifiedJobName

protected String reverseQualifiedJobName(String qualifiedJobName)
Given a valid job name in the following format: jobName/userName/jobNumber reverses job name order and returns job name in the format: jobNumber/userName/jobName


removeLaunch

protected void removeLaunch(ILaunch launch)
Remove launch and process. Used as part of clean up.


systemResourceChanged

public void systemResourceChanged(ISystemResourceChangeEvent event)
This is a callback method that is invoked when an ISystemResourceChangeEvent event occurs. NOTES: If job name of the completed job indicated in the ISystemRemoteCommand matches the job name of debuggee job, then we need to terminate debug target if one is active.

See Also:
ISystemResourceChangeListener#systemResourceChanged(ISystemResourceChangeEvent event)

getShell

public Shell getShell()
This is a callback method that is invoked when an ISystemResourceChangeEvent event occurs

See Also:
ISystemResourceChangeListener#getShell()

updateConfigErrorMessage

protected ILaunchConfiguration updateConfigErrorMessage(IBMiConnection iSeriesConnection,
                                                        String errorMessage,
                                                        String tabInError)
Update currentConfig LaunchConfiguraiton file with the supplied error message for the specified tab


getErrorMessage

public String getErrorMessage()
Getter method for errorMessage


setErrorMessage

protected void setErrorMessage(String errorMessage)
Setter method for errorMessage


Rational Developer for i
7.5.0

Copyright 2009 IBM Corp. All Rights Reserved.

Note: This documentation is for part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.