author | Eugene Ostroukhov <eugeneo@symbian.org> |
Thu, 02 Sep 2010 16:31:16 -0700 | |
changeset 485 | df4f55e8569e |
permissions | -rw-r--r-- |
485
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
1 |
/******************************************************************************* |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
2 |
* Copyright (c) 2010 Symbian Foundation and/or its subsidiary(-ies). |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
3 |
* All rights reserved. |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
4 |
* This component and the accompanying materials are made available |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
5 |
* under the terms of the License "Eclipse Public License v1.0" |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
6 |
* which accompanies this distribution, and is available |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
7 |
* at the URL "http://www.eclipse.org/legal/epl-v10.html". |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
8 |
* |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
9 |
* Initial Contributors: |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
10 |
* Symbian Foundation - initial contribution. |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
11 |
* Contributors: |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
12 |
* Description: |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
13 |
* Overview: |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
14 |
* Details: |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
15 |
* Platforms/Drives/Compatibility: |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
16 |
* Assumptions/Requirement/Pre-requisites: |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
17 |
* Failures and causes: |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
18 |
*******************************************************************************/ |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
19 |
package org.symbian.tools.tmw.debug.internal.launch; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
20 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
21 |
import java.util.ArrayList; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
22 |
import java.util.Collection; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
23 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
24 |
import org.chromium.debug.core.model.BreakpointSynchronizer.Callback; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
25 |
import org.chromium.debug.core.model.BreakpointSynchronizer.Direction; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
26 |
import org.chromium.debug.core.model.ChromiumLineBreakpoint; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
27 |
import org.chromium.debug.core.model.DebugTargetImpl; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
28 |
import org.chromium.debug.core.model.VmResource; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
29 |
import org.chromium.debug.core.model.VmResourceId; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
30 |
import org.chromium.debug.core.model.WorkspaceBridge; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
31 |
import org.chromium.sdk.CallFrame; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
32 |
import org.chromium.sdk.JavascriptVm; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
33 |
import org.chromium.sdk.JavascriptVm.ScriptsCallback; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
34 |
import org.chromium.sdk.Script; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
35 |
import org.eclipse.core.resources.IFile; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
36 |
import org.eclipse.core.resources.IMarker; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
37 |
import org.eclipse.core.resources.IProject; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
38 |
import org.eclipse.core.resources.IResource; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
39 |
import org.eclipse.core.runtime.CoreException; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
40 |
import org.eclipse.debug.core.DebugPlugin; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
41 |
import org.eclipse.debug.core.ILaunch; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
42 |
import org.eclipse.debug.core.sourcelookup.ISourceContainer; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
43 |
import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
44 |
import org.eclipse.debug.core.sourcelookup.containers.DirectorySourceContainer; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
45 |
import org.eclipse.debug.core.sourcelookup.containers.ProjectSourceContainer; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
46 |
import org.symbian.tools.tmw.debug.internal.Activator; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
47 |
import org.symbian.tools.tmw.debug.internal.model.ResourceManager; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
48 |
import org.symbian.tools.tmw.debug.internal.model.WorkspaceBreakpointHandler; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
49 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
50 |
public class ChromeToolsWorkspaceBridge implements WorkspaceBridge { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
51 |
public static final class Factory implements WorkspaceBridge.Factory { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
52 |
private final IProject project; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
53 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
54 |
public Factory(IProject workspaceProject) { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
55 |
this.project = workspaceProject; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
56 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
57 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
58 |
public WorkspaceBridge attachedToVm(DebugTargetImpl debugTargetImpl, JavascriptVm javascriptVm) { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
59 |
return new ChromeToolsWorkspaceBridge(debugTargetImpl, javascriptVm, project); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
60 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
61 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
62 |
public String getDebugModelIdentifier() { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
63 |
return DEBUG_MODEL_ID; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
64 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
65 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
66 |
public JsLabelProvider getLabelProvider() { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
67 |
return new TmwLabelProvider(); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
68 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
69 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
70 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
71 |
public static final String DEBUG_MODEL_ID = "org.symbian.debug"; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
72 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
73 |
private final BreakpointHandler breakpointHandler; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
74 |
private final JavascriptVm javascriptVm; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
75 |
private final IProject project; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
76 |
private final ResourceManager resourceManager; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
77 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
78 |
public ChromeToolsWorkspaceBridge(DebugTargetImpl debugTargetImpl, JavascriptVm vm, IProject workspaceProject) { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
79 |
this.javascriptVm = vm; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
80 |
this.project = workspaceProject; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
81 |
this.resourceManager = new ResourceManager(); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
82 |
this.sourceLocator = new WebApplicationSourceLocator(resourceManager); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
83 |
breakpointHandler = new WorkspaceBreakpointHandler(debugTargetImpl); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
84 |
ILaunch launch = debugTargetImpl.getLaunch(); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
85 |
try { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
86 |
sourceLocator.initializeDefaults(launch.getLaunchConfiguration()); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
87 |
sourceLocator.setSourceContainers(new ISourceContainer[] { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
88 |
new ProjectSourceContainer(workspaceProject, false), |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
89 |
new DirectorySourceContainer(Activator.getDefault().getStateLocation(), true) }); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
90 |
} catch (CoreException e) { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
91 |
throw new RuntimeException(e); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
92 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
93 |
launch.setSourceLocator(sourceLocator); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
94 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
95 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
96 |
public void beforeDetach() { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
97 |
// Do nothing |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
98 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
99 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
100 |
public BreakpointHandler getBreakpointHandler() { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
101 |
return breakpointHandler; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
102 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
103 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
104 |
public void handleVmResetEvent() { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
105 |
resourceManager.clear(); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
106 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
107 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
108 |
public void launchRemoved() { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
109 |
// Do nothing |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
110 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
111 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
112 |
public void reloadScriptsAtStart() { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
113 |
javascriptVm.getScripts(new ScriptsCallback() { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
114 |
public void failure(String errorMessage) { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
115 |
Activator.log(errorMessage); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
116 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
117 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
118 |
public void success(Collection<Script> scripts) { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
119 |
if (!javascriptVm.isAttached()) { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
120 |
return; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
121 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
122 |
for (Script script : scripts) { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
123 |
resourceManager.addScript(script); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
124 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
125 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
126 |
IMarker[] markers; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
127 |
try { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
128 |
markers = project.findMarkers(ChromiumLineBreakpoint.BREAKPOINT_MARKER, true, |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
129 |
IResource.DEPTH_INFINITE); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
130 |
Collection<ChromiumLineBreakpoint> breakpoints = new ArrayList<ChromiumLineBreakpoint>( |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
131 |
markers.length); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
132 |
for (IMarker marker : markers) { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
133 |
// If it is not ChromiumLineBreakpoint - something's gone horribly wrong. Better get ClassCastException |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
134 |
ChromiumLineBreakpoint breakpoint = (ChromiumLineBreakpoint) DebugPlugin.getDefault() |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
135 |
.getBreakpointManager().getBreakpoint(marker); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
136 |
breakpointHandler.breakpointAdded(breakpoint); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
137 |
breakpoints.add(breakpoint); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
138 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
139 |
} catch (CoreException e) { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
140 |
Activator.log(e); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
141 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
142 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
143 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
144 |
}); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
145 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
146 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
147 |
public void scriptLoaded(Script newScript) { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
148 |
resourceManager.addScript(newScript); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
149 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
150 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
151 |
public int getLineNumber(CallFrame stackFrame) { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
152 |
int offset = 0; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
153 |
Script script = stackFrame.getScript(); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
154 |
if (script != null) { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
155 |
offset = script.getStartLine(); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
156 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
157 |
return offset + stackFrame.getLineNumber() + 1; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
158 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
159 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
160 |
private final ISourceLookupDirector sourceLocator; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
161 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
162 |
public VmResource findVmResourceFromWorkspaceFile(IFile file) throws CoreException { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
163 |
return new VmResourceImpl(resourceManager.findVmResource(file), resourceManager.getScript(file), file.getName()); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
164 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
165 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
166 |
private static final class VmResourceImpl implements VmResource { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
167 |
private final String name; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
168 |
private final Script script; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
169 |
private final VmResourceId id; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
170 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
171 |
public VmResourceImpl(VmResourceId resourceId, Script browserScript, String resourceName) { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
172 |
super(); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
173 |
this.id = resourceId; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
174 |
this.script = browserScript; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
175 |
this.name = resourceName; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
176 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
177 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
178 |
public VmResourceId getId() { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
179 |
return id; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
180 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
181 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
182 |
public Script getScript() { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
183 |
return script; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
184 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
185 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
186 |
public String getFileName() { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
187 |
return name; |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
188 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
189 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
190 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
191 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
192 |
public void reloadScript(Script script) { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
193 |
System.out.println(script); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
194 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
195 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
196 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
197 |
public void synchronizeBreakpoints(Direction direction, Callback callback) { |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
198 |
System.out.println(direction); |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
199 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
200 |
} |
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
201 |
|
df4f55e8569e
Fixed copyright headers and removed unneeded WRT mentions from TMW code
Eugene Ostroukhov <eugeneo@symbian.org>
parents:
diff
changeset
|
202 |
} |