/** Generate the XML for a tool and add it to the toolbox */ public void compile() { final Tool[] ts = GUIEnv.getApplicationFrame().getSelectedTools(); if (ts == null || ts.length == 0) { JOptionPane.showMessageDialog( GUIEnv.getApplicationFrame(), "Please Select a Tool from the workspace", "Select", JOptionPane.INFORMATION_MESSAGE, GUIEnv.getTrianaIcon()); } else { final CompileHandler compiler = new CompileHandler(true, tools); Thread thread = new Thread() { public void run() { for (int i = 0; i < ts.length; i++) { Tool selectedTool = ts[i]; if ((selectedTool != null) && (!(selectedTool instanceof TaskGraph))) { compiler.compileTargetTool(selectedTool); } } } }; thread.setName("Build Tools Thread"); thread.setPriority(Thread.MIN_PRIORITY); thread.start(); } }
/** * constructor * * @param writable boolean */ public ProbeButton(SessionShare sshare, ButtonIF vif, String typ) { super(sshare, vif, typ); setHorizontalTextPosition(CENTER); setVerticalTextPosition(BOTTOM); setState(WRONG_PROBE); setProbeName("probe 3"); probeThread = new Thread(this); probeThread.setName("ProbeButton"); probeThread.start(); } // ProbeButton()
public void startConsole(boolean jLine) { this.jLine = jLine; sender = new ColoredCommandSender(); Thread thread = new ConsoleCommandThread(); thread.setName("ConsoleCommandThread"); thread.setDaemon(true); thread.start(); /*logger.removeHandler(consoleHandler); consoleHandler = new FancyConsoleHandler(); consoleHandler.setFormatter(new DateOutputFormatter(CONSOLE_DATE)); logger.addHandler(consoleHandler);*/ }
public void restart() { log.fatal("robonobo restarting"); Thread restartThread = new Thread( new CatchingRunnable() { public void doRun() throws Exception { // Show a message that we're restarting SwingUtilities.invokeLater( new CatchingRunnable() { public void doRun() throws Exception { String[] butOpts = {"Quit"}; int result = JOptionPane.showOptionDialog( RobonoboFrame.this, "robonobo is restarting, please wait...", "robonobo restarting", JOptionPane.DEFAULT_OPTION, JOptionPane.INFORMATION_MESSAGE, null, butOpts, "Force Quit"); if (result >= 0) { // They pressed the button... just kill everything log.fatal("Emergency shutdown during restart... pressing Big Red Switch"); System.exit(1); } } }); // Shut down the controller - this will block until the // controller exits control.shutdown(); // Hide this frame - don't dispose of it yet as this might make // the jvm exit SwingUtilities.invokeLater( new CatchingRunnable() { public void doRun() throws Exception { RobonoboFrame.this.setVisible(false); } }); // Startup a new frame and controller Robonobo.startup(null, cmdLineArgs, false); // Dispose of the old frame RobonoboFrame.this.dispose(); } }); restartThread.setName("Restart"); restartThread.start(); }
private void rebuildAllTools() { final CompileHandler compiler = new CompileHandler(true, tools); Thread thread = new Thread() { public void run() { Tool[] toolsByName = tools.getTools(); for (int j = 0; j < toolsByName.length; j++) { Tool tool = toolsByName[j]; compiler.compileTargetTool(tool); } } }; thread.setName("Toolbox Rebuild Thread"); thread.setPriority(Thread.MIN_PRIORITY); thread.start(); }
private void loadState(Element parentNode) { Element versionElement = parentNode.getChild(ELEMENT_VERSION); if (versionElement != null) { myMajorVersion = versionElement.getAttributeValue(ATTRIBUTE_MAJOR); myMinorVersion = versionElement.getAttributeValue(ATTRIBUTE_MINOR); myMicroVersion = versionElement.getAttributeValue(ATTRIBUTE_MICRO); myPatchVersion = versionElement.getAttributeValue(ATTRIBUTE_PATCH); myFullVersionFormat = versionElement.getAttributeValue(ATTRIBUTE_FULL); myCodeName = versionElement.getAttributeValue(ATTRIBUTE_CODENAME); myEAP = Boolean.parseBoolean(versionElement.getAttributeValue(ATTRIBUTE_EAP)); } Element companyElement = parentNode.getChild(ELEMENT_COMPANY); if (companyElement != null) { myCompanyName = companyElement.getAttributeValue(ATTRIBUTE_NAME, myCompanyName); myShortCompanyName = companyElement.getAttributeValue("shortName", shortenCompanyName(myCompanyName)); myCompanyUrl = companyElement.getAttributeValue(ATTRIBUTE_URL, myCompanyUrl); } Element buildElement = parentNode.getChild(ELEMENT_BUILD); if (buildElement != null) { myBuildNumber = buildElement.getAttributeValue(ATTRIBUTE_NUMBER); myApiVersion = buildElement.getAttributeValue(ATTRIBUTE_API_VERSION); setBuildNumber(myApiVersion, myBuildNumber); String dateString = buildElement.getAttributeValue(ATTRIBUTE_DATE); if (dateString.equals("__BUILD_DATE__")) { myBuildDate = new GregorianCalendar(); try { final JarFile bootJar = new JarFile( PathManager.getHomePath() + File.separator + "lib" + File.separator + "boot.jar"); try { final JarEntry jarEntry = bootJar.entries().nextElement(); // /META-INF is always updated on build myBuildDate.setTime(new Date(jarEntry.getTime())); } finally { bootJar.close(); } } catch (Exception ignore) { } } else { myBuildDate = parseDate(dateString); } String majorReleaseDateString = buildElement.getAttributeValue(ATTRIBUTE_MAJOR_RELEASE_DATE); if (majorReleaseDateString != null) { myMajorReleaseBuildDate = parseDate(majorReleaseDateString); } } Thread currentThread = Thread.currentThread(); currentThread.setName( currentThread.getName() + " " + myMajorVersion + "." + myMinorVersion + "#" + myBuildNumber + " " + ApplicationNamesInfo.getInstance().getProductName() + ", eap:" + myEAP + ", os:" + SystemInfoRt.OS_NAME + " " + SystemInfoRt.OS_VERSION + ", java-version:" + SystemProperties.getJavaVendor() + " " + SystemInfo.JAVA_RUNTIME_VERSION); Element logoElement = parentNode.getChild(ELEMENT_LOGO); if (logoElement != null) { mySplashImageUrl = logoElement.getAttributeValue(ATTRIBUTE_URL); mySplashTextColor = parseColor(logoElement.getAttributeValue(ATTRIBUTE_TEXT_COLOR)); String v = logoElement.getAttributeValue(ATTRIBUTE_PROGRESS_COLOR); if (v != null) { myProgressColor = parseColor(v); } v = logoElement.getAttributeValue(ATTRIBUTE_PROGRESS_TAIL_ICON); if (v != null) { myProgressTailIconName = v; } v = logoElement.getAttributeValue(ATTRIBUTE_PROGRESS_HEIGHT); if (v != null) { myProgressHeight = Integer.parseInt(v); } v = logoElement.getAttributeValue(ATTRIBUTE_PROGRESS_X); if (v != null) { myProgressX = Integer.parseInt(v); } v = logoElement.getAttributeValue(ATTRIBUTE_PROGRESS_Y); if (v != null) { myProgressY = Integer.parseInt(v); } v = logoElement.getAttributeValue(ATTRIBUTE_LICENSE_TEXT_OFFSET_Y); if (v != null) { myLicenseOffsetY = Integer.parseInt(v); } } Element aboutLogoElement = parentNode.getChild(ELEMENT_ABOUT); if (aboutLogoElement != null) { myAboutImageUrl = aboutLogoElement.getAttributeValue(ATTRIBUTE_URL); String v = aboutLogoElement.getAttributeValue(ATTRIBUTE_ABOUT_FOREGROUND_COLOR); if (v != null) { myAboutForeground = parseColor(v); } v = aboutLogoElement.getAttributeValue(ATTRIBUTE_ABOUT_COPYRIGHT_FOREGROUND_COLOR); if (v != null) { myCopyrightForeground = parseColor(v); } String c = aboutLogoElement.getAttributeValue(ATTRIBUTE_ABOUT_LINK_COLOR); if (c != null) { myAboutLinkColor = parseColor(c); } String logoX = aboutLogoElement.getAttributeValue("logoX"); String logoY = aboutLogoElement.getAttributeValue("logoY"); String logoW = aboutLogoElement.getAttributeValue("logoW"); String logoH = aboutLogoElement.getAttributeValue("logoH"); if (logoX != null && logoY != null && logoW != null && logoH != null) { try { myAboutLogoRect = new Rectangle( Integer.parseInt(logoX), Integer.parseInt(logoY), Integer.parseInt(logoW), Integer.parseInt(logoH)); } catch (NumberFormatException nfe) { // ignore } } } Element iconElement = parentNode.getChild(ELEMENT_ICON); if (iconElement != null) { myIconUrl = iconElement.getAttributeValue(ATTRIBUTE_SIZE32); mySmallIconUrl = iconElement.getAttributeValue(ATTRIBUTE_SIZE16); myBigIconUrl = iconElement.getAttributeValue(ATTRIBUTE_SIZE128, (String) null); final String toolWindowIcon = iconElement.getAttributeValue(ATTRIBUTE_SIZE12); if (toolWindowIcon != null) { myToolWindowIconUrl = toolWindowIcon; } } Element packageElement = parentNode.getChild(ELEMENT_PACKAGE); if (packageElement != null) { myPackageCode = packageElement.getAttributeValue(ATTRIBUTE_CODE); } Element showLicensee = parentNode.getChild(ELEMENT_LICENSEE); if (showLicensee != null) { myShowLicensee = Boolean.valueOf(showLicensee.getAttributeValue(ATTRIBUTE_SHOW)).booleanValue(); } Element welcomeScreen = parentNode.getChild(WELCOME_SCREEN_ELEMENT_NAME); if (welcomeScreen != null) { myWelcomeScreenLogoUrl = welcomeScreen.getAttributeValue(LOGO_URL_ATTR); } Element wizardSteps = parentNode.getChild(CUSTOMIZE_IDE_WIZARD_STEPS); if (wizardSteps != null) { myCustomizeIDEWizardStepsProvider = wizardSteps.getAttributeValue(STEPS_PROVIDER); } Element editor = parentNode.getChild(ELEMENT_EDITOR); if (editor != null) { myEditorBackgroundImageUrl = editor.getAttributeValue(BACKGROUND_URL_ATTR); } Element helpElement = parentNode.getChild(HELP_ELEMENT_NAME); if (helpElement != null) { myHelpFileName = helpElement.getAttributeValue(ATTRIBUTE_HELP_FILE); myHelpRootName = helpElement.getAttributeValue(ATTRIBUTE_HELP_ROOT); final String webHelpUrl = helpElement.getAttributeValue(ATTRIBUTE_WEBHELP_URL); if (webHelpUrl != null) { myWebHelpUrl = webHelpUrl; } String attValue = helpElement.getAttributeValue(ATTRIBUTE_HAS_HELP); myHasHelp = attValue == null || Boolean.parseBoolean(attValue); // Default is true attValue = helpElement.getAttributeValue(ATTRIBUTE_HAS_CONTEXT_HELP); myHasContextHelp = attValue == null || Boolean.parseBoolean(attValue); // Default is true } Element updateUrls = parentNode.getChild(UPDATE_URLS_ELEMENT_NAME); myUpdateUrls = new UpdateUrlsImpl(updateUrls); Element documentationElement = parentNode.getChild(ELEMENT_DOCUMENTATION); if (documentationElement != null) { myDocumentationUrl = documentationElement.getAttributeValue(ATTRIBUTE_URL); } Element supportElement = parentNode.getChild(ELEMENT_SUPPORT); if (supportElement != null) { mySupportUrl = supportElement.getAttributeValue(ATTRIBUTE_URL); } Element feedbackElement = parentNode.getChild(ELEMENT_FEEDBACK); if (feedbackElement != null) { myEAPFeedbackUrl = feedbackElement.getAttributeValue(ATTRIBUTE_EAP_URL); myReleaseFeedbackUrl = feedbackElement.getAttributeValue(ATTRIBUTE_RELEASE_URL); } Element whatsnewElement = parentNode.getChild(ELEMENT_WHATSNEW); if (whatsnewElement != null) { myWhatsNewUrl = whatsnewElement.getAttributeValue(ATTRIBUTE_URL); } Element pluginsElement = parentNode.getChild(ELEMENT_PLUGINS); if (pluginsElement != null) { String url = pluginsElement.getAttributeValue(ATTRIBUTE_URL); myPluginManagerUrl = url != null ? url : DEFAULT_PLUGINS_HOST; boolean closed = StringUtil.endsWith(myPluginManagerUrl, "/"); String listUrl = pluginsElement.getAttributeValue(ATTRIBUTE_LIST_URL); myPluginsListUrl = listUrl != null ? listUrl : myPluginManagerUrl + (closed ? "" : "/") + "plugins/list/"; String channelListUrl = pluginsElement.getAttributeValue(ATTRIBUTE_CHANNEL_LIST_URL); myChannelsListUrl = channelListUrl != null ? channelListUrl : myPluginManagerUrl + (closed ? "" : "/") + "channels/list/"; String downloadUrl = pluginsElement.getAttributeValue(ATTRIBUTE_DOWNLOAD_URL); myPluginsDownloadUrl = downloadUrl != null ? downloadUrl : myPluginManagerUrl + (closed ? "" : "/") + "pluginManager/"; if (!getBuild().isSnapshot()) { myBuiltinPluginsUrl = pluginsElement.getAttributeValue(ATTRIBUTE_BUILTIN_URL); } } else { myPluginManagerUrl = DEFAULT_PLUGINS_HOST; myPluginsListUrl = DEFAULT_PLUGINS_HOST + "/plugins/list/"; myChannelsListUrl = DEFAULT_PLUGINS_HOST + "/channels/list/"; myPluginsDownloadUrl = DEFAULT_PLUGINS_HOST + "/pluginManager/"; } final String pluginsHost = System.getProperty("idea.plugins.host"); if (pluginsHost != null) { myPluginsListUrl = myPluginsListUrl.replace(DEFAULT_PLUGINS_HOST, pluginsHost); myChannelsListUrl = myChannelsListUrl.replace(DEFAULT_PLUGINS_HOST, pluginsHost); myPluginsDownloadUrl = myPluginsDownloadUrl.replace(DEFAULT_PLUGINS_HOST, pluginsHost); } Element keymapElement = parentNode.getChild(ELEMENT_KEYMAP); if (keymapElement != null) { myWinKeymapUrl = keymapElement.getAttributeValue(ATTRIBUTE_WINDOWS_URL); myMacKeymapUrl = keymapElement.getAttributeValue(ATTRIBUTE_MAC_URL); } myPluginChooserPages = new ArrayList<PluginChooserPage>(); final List children = parentNode.getChildren(PLUGINS_PAGE_ELEMENT_NAME); for (Object child : children) { myPluginChooserPages.add(new PluginChooserPageImpl((Element) child)); } List<Element> essentialPluginsElements = JDOMUtil.getChildren(parentNode, ESSENTIAL_PLUGIN); Collection<String> essentialPluginsIds = ContainerUtil.mapNotNull( essentialPluginsElements, new Function<Element, String>() { @Override public String fun(Element element) { String id = element.getTextTrim(); return StringUtil.isNotEmpty(id) ? id : null; } }); myEssentialPluginsIds = ArrayUtil.toStringArray(essentialPluginsIds); Element statisticsElement = parentNode.getChild(ELEMENT_STATISTICS); if (statisticsElement != null) { myStatisticsSettingsUrl = statisticsElement.getAttributeValue(ATTRIBUTE_STATISTICS_SETTINGS); myStatisticsServiceUrl = statisticsElement.getAttributeValue(ATTRIBUTE_STATISTICS_SERVICE); myStatisticsServiceKey = statisticsElement.getAttributeValue(ATTRIBUTE_STATISTICS_SERVICE_KEY); } else { myStatisticsSettingsUrl = "https://www.jetbrains.com/idea/statistics/stat-assistant.xml"; myStatisticsServiceUrl = "https://www.jetbrains.com/idea/statistics/index.jsp"; myStatisticsServiceKey = null; } Element thirdPartyElement = parentNode.getChild(ELEMENT_THIRD_PARTY); if (thirdPartyElement != null) { myThirdPartySoftwareUrl = thirdPartyElement.getAttributeValue(ATTRIBUTE_URL); } Element tvElement = parentNode.getChild(ELEMENT_JB_TV); if (tvElement != null) { myJetbrainsTvUrl = tvElement.getAttributeValue(ATTRIBUTE_URL); } Element evaluationElement = parentNode.getChild(ELEMENT_EVALUATION); if (evaluationElement != null) { final String url = evaluationElement.getAttributeValue(ATTRIBUTE_EVAL_LICENSE_URL); if (url != null && !url.isEmpty()) { myEvalLicenseUrl = url.trim(); } } Element licensingElement = parentNode.getChild(ELEMENT_LICENSING); if (licensingElement != null) { final String url = licensingElement.getAttributeValue(ATTRIBUTE_KEY_CONVERSION_URL); if (url != null && !url.isEmpty()) { myKeyConversionUrl = url.trim(); } } Element subscriptionsElement = parentNode.getChild(ELEMENT_SUBSCRIPTIONS); if (subscriptionsElement != null) { mySubscriptionFormId = subscriptionsElement.getAttributeValue(ATTRIBUTE_SUBSCRIPTIONS_FORM_ID); mySubscriptionNewsKey = subscriptionsElement.getAttributeValue(ATTRIBUTE_SUBSCRIPTIONS_NEWS_KEY); mySubscriptionNewsValue = subscriptionsElement.getAttributeValue(ATTRIBUTE_SUBSCRIPTIONS_NEWS_VALUE, "yes"); mySubscriptionTipsKey = subscriptionsElement.getAttributeValue(ATTRIBUTE_SUBSCRIPTIONS_TIPS_KEY); mySubscriptionTipsAvailable = Boolean.parseBoolean( subscriptionsElement.getAttributeValue(ATTRIBUTE_SUBSCRIPTIONS_TIPS_AVAILABLE)); mySubscriptionAdditionalFormData = subscriptionsElement.getAttributeValue(ATTRIBUTE_SUBSCRIPTIONS_ADDITIONAL_FORM_DATA); } }
public void start() { thread = new Thread(this); thread.setPriority(Thread.MIN_PRIORITY); thread.setName("MemoryMonitor"); thread.start(); }