Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(352)

Side by Side Diff: editor/tools/plugins/com.google.dart.tools.ui/src/com/google/dart/tools/ui/DartUIStartup.java

Issue 14322008: Version 0.4.7.3 . (Closed) Base URL: http://dart.googlecode.com/svn/trunk/dart/
Patch Set: Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2012, the Dart project authors. 2 * Copyright (c) 2012, the Dart project authors.
3 * 3 *
4 * Licensed under the Eclipse Public License v1.0 (the "License"); you may not u se this file except 4 * Licensed under the Eclipse Public License v1.0 (the "License"); you may not u se this file except
5 * in compliance with the License. You may obtain a copy of the License at 5 * in compliance with the License. You may obtain a copy of the License at
6 * 6 *
7 * http://www.eclipse.org/legal/epl-v10.html 7 * http://www.eclipse.org/legal/epl-v10.html
8 * 8 *
9 * Unless required by applicable law or agreed to in writing, software distribut ed under the License 9 * Unless required by applicable law or agreed to in writing, software distribut ed under the License
10 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY K IND, either express 10 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY K IND, either express
(...skipping 20 matching lines...) Expand all
31 import com.google.dart.tools.ui.internal.text.editor.AutoSaveHelper; 31 import com.google.dart.tools.ui.internal.text.editor.AutoSaveHelper;
32 32
33 import org.eclipse.core.runtime.IProgressMonitor; 33 import org.eclipse.core.runtime.IProgressMonitor;
34 import org.eclipse.core.runtime.IStatus; 34 import org.eclipse.core.runtime.IStatus;
35 import org.eclipse.core.runtime.Status; 35 import org.eclipse.core.runtime.Status;
36 import org.eclipse.core.runtime.jobs.Job; 36 import org.eclipse.core.runtime.jobs.Job;
37 import org.eclipse.swt.widgets.Display; 37 import org.eclipse.swt.widgets.Display;
38 import org.eclipse.ui.IStartup; 38 import org.eclipse.ui.IStartup;
39 import org.eclipse.ui.PlatformUI; 39 import org.eclipse.ui.PlatformUI;
40 40
41 import java.io.File;
42
41 /** 43 /**
42 * This early startup class is called after the main workbench window opens, and is used to warm up 44 * This early startup class is called after the main workbench window opens, and is used to warm up
43 * various bits of compiler infrastructure. 45 * various bits of compiler infrastructure.
44 */ 46 */
45 public class DartUIStartup implements IStartup { 47 public class DartUIStartup implements IStartup {
46 48
47 private class StartupJob extends Job { 49 private class StartupJob extends Job {
48 private CmdLineOptions options; 50 private CmdLineOptions options;
49 51
50 public StartupJob() { 52 public StartupJob() {
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after
204 */ 206 */
205 private void waitForAnalysis() { 207 private void waitForAnalysis() {
206 AnalysisServer server = PackageLibraryManagerProvider.getDefaultAnalysisSe rver(); 208 AnalysisServer server = PackageLibraryManagerProvider.getDefaultAnalysisSe rver();
207 // Wait up to 2 minutes for the server to be idle 209 // Wait up to 2 minutes for the server to be idle
208 if (!server.waitForIdle(120000)) { 210 if (!server.waitForIdle(120000)) {
209 System.err.println("Stopped waiting for the analysis server."); 211 System.err.println("Stopped waiting for the analysis server.");
210 } 212 }
211 } 213 }
212 } 214 }
213 215
216 private static final String DART_INSTRUMENTATION_FLAGS_FILE_NAME = "dart_instr umentation_flags.txt";
217
214 private static StartupJob startupJob; 218 private static StartupJob startupJob;
215 219
216 private static final Object startupSync = new Object(); 220 private static final Object startupSync = new Object();
217 221
218 public static void cancelStartup() { 222 public static void cancelStartup() {
219 synchronized (startupSync) { 223 synchronized (startupSync) {
220 if (startupJob != null) { 224 if (startupJob != null) {
221 startupJob.cancel(); 225 startupJob.cancel();
222 } 226 }
223 } 227 }
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
255 259
256 } catch (Throwable throwable) { 260 } catch (Throwable throwable) {
257 // Catch any runtime exceptions that occur during warmup and log them. 261 // Catch any runtime exceptions that occur during warmup and log them.
258 DartToolsPlugin.log("Exception occured during editor warmup", throwable); 262 DartToolsPlugin.log("Exception occured during editor warmup", throwable);
259 263
260 } finally { 264 } finally {
261 instrumentation.log(); 265 instrumentation.log();
262 } 266 }
263 } 267 }
264 268
269 /**
270 * Determine if the {@value #DART_INSTRUMENTATION_FLAGS_FILE_NAME} file exists in the user's dart
271 * directory.
272 *
273 * @return {@code true} if the file exists, else false
274 */
275 private boolean IsInstrumentationFlagFilePresent() {
276 File dartDir = new File(DartCore.getUserDefaultDartFolder());
277 return new File(dartDir, DART_INSTRUMENTATION_FLAGS_FILE_NAME).exists();
278 }
279
265 private void reportDartCoreDebug() { 280 private void reportDartCoreDebug() {
266 InstrumentationBuilder instrumentation = Instrumentation.builder("DartUIStar tup.reportDartCoreDebug"); 281 InstrumentationBuilder instrumentation = Instrumentation.builder("DartUIStar tup.reportDartCoreDebug");
267 try { 282 try {
268 DartCoreDebug.record(instrumentation); 283 DartCoreDebug.record(instrumentation);
269 } finally { 284 } finally {
270 instrumentation.log(); 285 instrumentation.log();
271 } 286 }
272 } 287 }
273 288
274 /** 289 /**
275 * Report core statistics about the executing platform to instrumentation syst em 290 * Report core statistics about the executing platform to instrumentation syst em
276 */ 291 */
277 private void reportPlatformStatistics() { 292 private void reportPlatformStatistics() {
278 InstrumentationBuilder instrumentation = Instrumentation.builder("DartUIStar tup.reportPlatformStatistics"); 293 InstrumentationBuilder instrumentation = Instrumentation.builder("DartUIStar tup.reportPlatformStatistics");
279 try { 294 try {
280 instrumentation.metric("BuildDate", DartCore.getBuildDate()); 295 instrumentation.metric("BuildDate", DartCore.getBuildDate());
281 instrumentation.metric("BuildID", DartCore.getBuildId()); 296 instrumentation.metric("BuildID", DartCore.getBuildId());
282 instrumentation.metric("Version", DartCore.getVersion()); 297 instrumentation.metric("Version", DartCore.getVersion());
283 instrumentation.metric("SDKVersion", DartSdkManager.getManager().getSdk(). getSdkVersion()); 298 instrumentation.metric("SDKVersion", DartSdkManager.getManager().getSdk(). getSdkVersion());
284 instrumentation.metric("OSVersion", FeedbackUtils.getOSName()); 299 instrumentation.metric("OSVersion", FeedbackUtils.getOSName());
300 instrumentation.metric("IsInstrumentationFlagFilePresent", IsInstrumentati onFlagFilePresent());
285 } finally { 301 } finally {
286 instrumentation.log(); 302 instrumentation.log();
287 } 303 }
288 } 304 }
289 } 305 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698