View | Details | Raw Unified | Return to bug 204347 | Differences between
and this patch

Collapse All | Expand All

(-).project (+17 lines)
Lines 5-11 Link Here
5
	<projects>
5
	<projects>
6
	</projects>
6
	</projects>
7
	<buildSpec>
7
	<buildSpec>
8
		<buildCommand>
9
			<name>org.eclipse.jdt.core.javabuilder</name>
10
			<arguments>
11
			</arguments>
12
		</buildCommand>
13
		<buildCommand>
14
			<name>org.eclipse.pde.ManifestBuilder</name>
15
			<arguments>
16
			</arguments>
17
		</buildCommand>
18
		<buildCommand>
19
			<name>org.eclipse.pde.SchemaBuilder</name>
20
			<arguments>
21
			</arguments>
22
		</buildCommand>
8
	</buildSpec>
23
	</buildSpec>
9
	<natures>
24
	<natures>
25
		<nature>org.eclipse.pde.PluginNature</nature>
26
		<nature>org.eclipse.jdt.core.javanature</nature>
10
	</natures>
27
	</natures>
11
</projectDescription>
28
</projectDescription>
(-).settings/org.eclipse.jdt.ui.prefs (+57 lines)
Added Link Here
1
#Sun Sep 23 11:59:31 EDT 2007
2
eclipse.preferences.version=1
3
editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
4
formatter_profile=_core
5
formatter_settings_version=11
6
org.eclipse.jdt.ui.ignorelowercasenames=true
7
org.eclipse.jdt.ui.importorder=;
8
org.eclipse.jdt.ui.ondemandthreshold=3
9
org.eclipse.jdt.ui.staticondemandthreshold=3
10
org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates/>
11
sp_cleanup.add_default_serial_version_id=true
12
sp_cleanup.add_generated_serial_version_id=false
13
sp_cleanup.add_missing_annotations=true
14
sp_cleanup.add_missing_deprecated_annotations=true
15
sp_cleanup.add_missing_nls_tags=false
16
sp_cleanup.add_missing_override_annotations=true
17
sp_cleanup.add_serial_version_id=false
18
sp_cleanup.always_use_blocks=true
19
sp_cleanup.always_use_parentheses_in_expressions=false
20
sp_cleanup.always_use_this_for_non_static_field_access=false
21
sp_cleanup.always_use_this_for_non_static_method_access=false
22
sp_cleanup.convert_to_enhanced_for_loop=false
23
sp_cleanup.format_source_code=true
24
sp_cleanup.make_local_variable_final=false
25
sp_cleanup.make_parameters_final=false
26
sp_cleanup.make_private_fields_final=true
27
sp_cleanup.make_variable_declarations_final=true
28
sp_cleanup.never_use_blocks=false
29
sp_cleanup.never_use_parentheses_in_expressions=true
30
sp_cleanup.on_save_use_additional_actions=false
31
sp_cleanup.organize_imports=true
32
sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
33
sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
34
sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
35
sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
36
sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
37
sp_cleanup.remove_private_constructors=true
38
sp_cleanup.remove_trailing_whitespaces=false
39
sp_cleanup.remove_trailing_whitespaces_all=true
40
sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
41
sp_cleanup.remove_unnecessary_casts=true
42
sp_cleanup.remove_unnecessary_nls_tags=false
43
sp_cleanup.remove_unused_imports=false
44
sp_cleanup.remove_unused_local_variables=false
45
sp_cleanup.remove_unused_private_fields=true
46
sp_cleanup.remove_unused_private_members=false
47
sp_cleanup.remove_unused_private_methods=true
48
sp_cleanup.remove_unused_private_types=true
49
sp_cleanup.sort_members=false
50
sp_cleanup.sort_members_all=false
51
sp_cleanup.use_blocks=false
52
sp_cleanup.use_blocks_only_for_return_and_throw=false
53
sp_cleanup.use_parentheses_in_expressions=false
54
sp_cleanup.use_this_for_non_static_field_access=false
55
sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
56
sp_cleanup.use_this_for_non_static_method_access=false
57
sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
(-)src/org/eclipse/equinox/internal/p2/target/AddIUToTargetPage.java (+293 lines)
Added Link Here
1
package org.eclipse.equinox.internal.p2.target;
2
3
import java.io.File;
4
import org.eclipse.core.resources.ResourcesPlugin;
5
import org.eclipse.core.runtime.*;
6
import org.eclipse.equinox.internal.p2.ui.actions.PropertyDialogAction;
7
import org.eclipse.equinox.internal.p2.ui.sdk.DialogRepositoryManipulator;
8
import org.eclipse.equinox.internal.p2.ui.sdk.ProvSDKUIActivator;
9
import org.eclipse.equinox.internal.provisional.p2.engine.ProvisioningContext;
10
import org.eclipse.equinox.internal.provisional.p2.metadata.IInstallableUnit;
11
import org.eclipse.equinox.internal.provisional.p2.ui.IRepositoryManipulator;
12
import org.eclipse.equinox.internal.provisional.p2.ui.dialogs.AvailableIUGroup;
13
import org.eclipse.jface.action.IAction;
14
import org.eclipse.jface.viewers.ISelectionChangedListener;
15
import org.eclipse.jface.viewers.SelectionChangedEvent;
16
import org.eclipse.jface.window.SameShellProvider;
17
import org.eclipse.jface.wizard.WizardPage;
18
import org.eclipse.swt.SWT;
19
import org.eclipse.swt.events.*;
20
import org.eclipse.swt.layout.GridData;
21
import org.eclipse.swt.layout.GridLayout;
22
import org.eclipse.swt.program.Program;
23
import org.eclipse.swt.widgets.*;
24
25
/**
26
 * Wizard page allowing users to select which IUs they would like to download
27
 * and where they would like them to be downloaded to.
28
 * 
29
 * @since 3.4
30
 * @see AddIUToTargetWizard
31
 */
32
public class AddIUToTargetPage extends WizardPage {
33
34
	/**
35
	 * Default location to download IUs to, will be created if it does not exist.
36
	 * Will be appended to the current workspace.
37
	 */
38
	private static final String DEFAULT_DIR_NAME = ".metadata/.plugins/org.eclipse.pde.core/target_plugins"; //$NON-NLS-1$;
39
40
	private static final IStatus BAD_IU_SELECTION = new Status(IStatus.ERROR, "pluginid", "At least one IU must be selected");
41
	private static final IStatus DIR_DOES_NOT_EXIST = new Status(IStatus.ERROR, "pluginid", "The specified folder is invalid or does not exist");
42
43
	private IStatus fDirectoryStatus = Status.OK_STATUS;
44
	private IStatus fSelectedIUStatus = BAD_IU_SELECTION;
45
46
	private String previousLocation;
47
	private IInstallableUnit[] fUnits;
48
49
	private Link fLocationLink;
50
	private Text fInstallLocation;
51
	private Button fUseDefaultsButton;
52
	private Button fBrowseButton;
53
	private Button fClearContentsButton;
54
55
	private AvailableIUGroup fAvailableIUGroup;
56
	private Button fPropertiesButton;
57
	private IAction fPropertyAction;
58
	private IRepositoryManipulator fManipulator;
59
60
	protected AddIUToTargetPage(String pageName) {
61
		super(pageName);
62
	}
63
64
	/* (non-Javadoc)
65
	 * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)
66
	 */
67
	public void createControl(Composite parent) {
68
		Composite composite = new Composite(parent, SWT.NONE);
69
		composite.setLayout(new GridLayout());
70
		composite.setLayoutData(new GridData(GridData.FILL_BOTH));
71
		composite.setFont(parent.getFont());
72
73
		createInstallFolderArea(composite);
74
		createAvailableIUArea(composite);
75
76
		setPageComplete(false);
77
		setControl(composite);
78
	}
79
80
	/**
81
	 * Create the UI area where the user will choose what directory to download
82
	 * bundles to.  The user can choose to use the default area and they can choose
83
	 * to delete the contents of the folder before downloading.
84
	 * 
85
	 * @param composite parent composite
86
	 */
87
	private void createInstallFolderArea(Composite composite) {
88
		Composite locationComp = new Composite(composite, SWT.NONE);
89
		locationComp.setLayout(new GridLayout(3, false));
90
		locationComp.setFont(composite.getFont());
91
		locationComp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
92
93
		fUseDefaultsButton = new Button(locationComp, SWT.CHECK | SWT.RIGHT);
94
		GridData gd = new GridData();
95
		gd.horizontalSpan = 3;
96
		fUseDefaultsButton.setLayoutData(gd);
97
		fUseDefaultsButton.setText("Use &default location");
98
		fUseDefaultsButton.setSelection(true);
99
		fUseDefaultsButton.addSelectionListener(new SelectionAdapter() {
100
			public void widgetSelected(SelectionEvent e) {
101
				Button button = (Button) e.getSource();
102
				if (button.getSelection()) {
103
					fInstallLocation.setEnabled(false);
104
					fBrowseButton.setEnabled(false);
105
					previousLocation = fInstallLocation.getText();
106
					fInstallLocation.setText(getDefaultDownloadLocation());
107
				} else {
108
					fInstallLocation.setEnabled(true);
109
					fBrowseButton.setEnabled(true);
110
					fInstallLocation.setText(previousLocation);
111
				}
112
113
			}
114
		});
115
		fUseDefaultsButton.setSelection(true);
116
117
		fLocationLink = new Link(locationComp, SWT.NONE);
118
		fLocationLink.setText("<a>&Location:</a>"); //$NON-NLS-1$ //$NON-NLS-2$
119
		fLocationLink.addSelectionListener(new SelectionAdapter() {
120
			public void widgetSelected(SelectionEvent e) {
121
				try {
122
					File file = getDownloadLocation(true);
123
					if (file != null && file.isDirectory())
124
						Program.launch(file.getCanonicalPath());
125
					else
126
						setErrorMessage("Problem opening directory: The specified folder invalid or does not exist.");
127
				} catch (Exception ex) {
128
					setErrorMessage("Problem opening directory: " + ex.getMessage());
129
				}
130
			}
131
		});
132
133
		fInstallLocation = new Text(locationComp, SWT.BORDER);
134
		gd = new GridData(GridData.FILL_HORIZONTAL);
135
		fInstallLocation.setLayoutData(gd);
136
		previousLocation = getDefaultDownloadLocation();
137
		fInstallLocation.setText(previousLocation);
138
		fInstallLocation.setEnabled(false);
139
		fInstallLocation.addModifyListener(new ModifyListener() {
140
			public void modifyText(ModifyEvent e) {
141
				File location = getDownloadLocation(false);
142
				if (location == null || (!location.exists() && !fUseDefaultsButton.getSelection())) {
143
					fDirectoryStatus = DIR_DOES_NOT_EXIST;
144
				} else {
145
					fDirectoryStatus = Status.OK_STATUS;
146
				}
147
				pageChanged();
148
			}
149
		});
150
151
		fBrowseButton = new Button(locationComp, SWT.PUSH);
152
		fBrowseButton.setText("B&rowse...");
153
		fBrowseButton.addSelectionListener(new SelectionAdapter() {
154
			public void widgetSelected(SelectionEvent event) {
155
				handleLocationBrowseButtonPressed();
156
			}
157
		});
158
		fBrowseButton.setEnabled(false);
159
160
		fClearContentsButton = new Button(locationComp, SWT.CHECK | SWT.RIGHT);
161
		gd = new GridData();
162
		gd.horizontalSpan = 3;
163
		fClearContentsButton.setLayoutData(gd);
164
		fClearContentsButton.setText("&Clear contents of folder before downloading");
165
		fClearContentsButton.setSelection(false);
166
167
	}
168
169
	/**
170
	 * Create the UI area where the user will be able to select which IUs they
171
	 * would like to download.  There will also be buttons to see properties for
172
	 * the selection and open the manage sites dialog.
173
	 * 
174
	 * @param composite parent composite
175
	 */
176
	private void createAvailableIUArea(Composite composite) {
177
		Group mainGroup = new Group(composite, SWT.NONE);
178
		mainGroup.setText("Available Installable Units");
179
		mainGroup.setLayout(new GridLayout(2, false));
180
		mainGroup.setFont(composite.getFont());
181
		mainGroup.setLayoutData(new GridData(GridData.FILL_BOTH));
182
183
		fAvailableIUGroup = new AvailableIUGroup(mainGroup, ProvSDKUIActivator.getDefault().getQueryProvider(), mainGroup.getFont(), new ProvisioningContext());
184
		fAvailableIUGroup.getStructuredViewer().addSelectionChangedListener(new ISelectionChangedListener() {
185
			public void selectionChanged(SelectionChangedEvent event) {
186
				fUnits = fAvailableIUGroup.getSelectedIUs();
187
				fPropertiesButton.setEnabled(fUnits.length > 0);
188
				if (fUnits.length > 0) {
189
					fSelectedIUStatus = Status.OK_STATUS;
190
				} else {
191
					fSelectedIUStatus = BAD_IU_SELECTION;
192
				}
193
				pageChanged();
194
			}
195
		});
196
197
		Composite iuButtonComp = new Composite(mainGroup, SWT.NONE);
198
		iuButtonComp.setLayout(new GridLayout(1, false));
199
		iuButtonComp.setFont(mainGroup.getFont());
200
		iuButtonComp.setLayoutData(new GridData(GridData.FILL_BOTH));
201
202
		fPropertiesButton = new Button(iuButtonComp, SWT.PUSH);
203
		fPropertiesButton.setText("&Properties...");
204
		fPropertiesButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
205
		fPropertiesButton.addSelectionListener(new SelectionAdapter() {
206
			public void widgetSelected(SelectionEvent event) {
207
				fPropertyAction.run();
208
			}
209
		});
210
		fPropertyAction = new PropertyDialogAction(new SameShellProvider(getShell()), fAvailableIUGroup.getStructuredViewer());
211
212
		fManipulator = new DialogRepositoryManipulator();
213
		Button editReposButton = new Button(iuButtonComp, SWT.PUSH);
214
		editReposButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
215
		editReposButton.setText("&Manage Sites...");
216
		editReposButton.addSelectionListener(new SelectionAdapter() {
217
			public void widgetSelected(SelectionEvent event) {
218
				fManipulator.manipulateRepositories(getShell());
219
			}
220
		});
221
	}
222
223
	/**
224
	 * Checks if the page is complete, updating messages and finish button.
225
	 */
226
	private void pageChanged() {
227
		if (fDirectoryStatus.getSeverity() == IStatus.ERROR) {
228
			setErrorMessage(fDirectoryStatus.getMessage());
229
			setPageComplete(false);
230
		} else if (fSelectedIUStatus.getSeverity() == IStatus.ERROR) {
231
			setErrorMessage(fSelectedIUStatus.getMessage());
232
			setPageComplete(false);
233
		} else {
234
			setErrorMessage(null);
235
			setPageComplete(true);
236
		}
237
	}
238
239
	/**
240
	 * Determines the default download folder location based on the workspace
241
	 * location.
242
	 */
243
	private String getDefaultDownloadLocation() {
244
		IPath path = ResourcesPlugin.getWorkspace().getRoot().getLocation();
245
		if (path != null) {
246
			return new File(path.toFile(), DEFAULT_DIR_NAME).toString();
247
		}
248
		return "";
249
	}
250
251
	/**
252
	 * Open a directory dialog to select a folder.
253
	 */
254
	private void handleLocationBrowseButtonPressed() {
255
		DirectoryDialog dialog = new DirectoryDialog(getShell());
256
		dialog.setFilterPath(fInstallLocation.getText());
257
		dialog.setText("Install Location");
258
		dialog.setMessage("Select a folder to download installable units to:");
259
		String result = dialog.open();
260
		if (result != null)
261
			fInstallLocation.setText(result);
262
	}
263
264
	/**
265
	 * @return the list of installable units to download on finish
266
	 */
267
	public IInstallableUnit[] getUnits() {
268
		return fUnits;
269
	}
270
271
	/**
272
	 * @param createIfDefault whether to create the directory structure if it doesn't exist, only occurs if default is used
273
	 * @return the location where installable units should be downloaded to
274
	 */
275
	public File getDownloadLocation(boolean createIfDefault) {
276
		if (fInstallLocation.getText().trim().length() > 0) {
277
			File file = new File(fInstallLocation.getText());
278
			if (createIfDefault && fUseDefaultsButton.getSelection() && !file.isDirectory()) {
279
				file.mkdirs();
280
			}
281
			return file;
282
		}
283
		return null;
284
	}
285
286
	/**
287
	 * @return whether contents of the download location should be deleted before starting the download
288
	 */
289
	public boolean isClearContentsBeforeDownloading() {
290
		return fClearContentsButton.getSelection();
291
	}
292
293
}
(-)plugin.xml (+14 lines)
Added Link Here
1
<plugin>
2
   <extension
3
         point="org.eclipse.pde.ui.targetProvisioners">
4
      <provisioner
5
            class="org.eclipse.equinox.internal.p2.target.AddIUToTargetWizard"
6
            icon="icons/obj/iu_obj.gif"
7
            id="org.eclipse.equinox.p2.target.p2provisioner"
8
            name="Installable Unit from Repository">
9
         <description>
10
            Adds the plugins from an installable unit downloaded from a repository
11
         </description>
12
      </provisioner>
13
   </extension>
14
</plugin>
(-)build.properties (+18 lines)
Added Link Here
1
###############################################################################
2
# Copyright (c) 2005, 2007 IBM Corporation and others.
3
# All rights reserved. This program and the accompanying materials
4
# are made available under the terms of the Eclipse Public License v1.0
5
# which accompanies this distribution, and is available at
6
# http://www.eclipse.org/legal/epl-v10.html
7
#
8
# Contributors:
9
#     IBM Corporation - initial API and implementation
10
###############################################################################
11
source.. = src/
12
output.. = bin/
13
bin.includes = META-INF/,\
14
               .,\
15
               plugin.xml,\
16
               about.html,\
17
               plugin.properties
18
src.includes = about.html
(-)META-INF/MANIFEST.MF (+23 lines)
Added Link Here
1
Manifest-Version: 1.0
2
Bundle-ManifestVersion: 2
3
Bundle-SymbolicName: org.eclipse.equinox.p2.target;singleton:=true
4
Bundle-Name: %pluginName
5
Bundle-Vendor: %providerName
6
Bundle-Localization: plugin
7
Bundle-Version: 0.1.0.qualifier
8
Require-Bundle: org.eclipse.pde.ui,
9
 org.eclipse.equinox.frameworkadmin,
10
 org.eclipse.jface,
11
 org.eclipse.ui,
12
 org.eclipse.osgi,
13
 org.eclipse.core.runtime,
14
 org.eclipse.core.resources,
15
 org.eclipse.ui.ide,
16
 org.eclipse.equinox.p2.ui;bundle-version="0.1.0",
17
 org.eclipse.equinox.p2.ui.sdk;bundle-version="0.1.0",
18
 org.eclipse.equinox.p2.engine;bundle-version="0.1.0",
19
 org.eclipse.equinox.p2.metadata;bundle-version="0.1.0",
20
 org.eclipse.equinox.p2.director;bundle-version="0.1.0",
21
 org.eclipse.equinox.p2.core;bundle-version="0.1.0"
22
Eclipse-LazyStart: true
23
Export-Package: org.eclipse.equinox.internal.p2.target;x-internal:=true
(-).classpath (+7 lines)
Added Link Here
1
<?xml version="1.0" encoding="UTF-8"?>
2
<classpath>
3
	<classpathentry kind="src" path="src"/>
4
	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
5
	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
6
	<classpathentry kind="output" path="bin"/>
7
</classpath>
(-).settings/org.eclipse.jdt.core.prefs (+343 lines)
Added Link Here
1
#Thu Apr 03 09:18:48 CDT 2008
2
eclipse.preferences.version=1
3
org.eclipse.jdt.core.builder.cleanOutputFolder=clean
4
org.eclipse.jdt.core.builder.duplicateResourceTask=warning
5
org.eclipse.jdt.core.builder.invalidClasspath=abort
6
org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
7
org.eclipse.jdt.core.circularClasspath=error
8
org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
9
org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
10
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled
11
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
12
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
13
org.eclipse.jdt.core.compiler.compliance=1.4
14
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
15
org.eclipse.jdt.core.compiler.debug.localVariable=generate
16
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
17
org.eclipse.jdt.core.compiler.doc.comment.support=enabled
18
org.eclipse.jdt.core.compiler.maxProblemPerUnit=1000
19
org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
20
org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
21
org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
22
org.eclipse.jdt.core.compiler.problem.deprecation=warning
23
org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
24
org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled
25
org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
26
org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
27
org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
28
org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
29
org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
30
org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
31
org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
32
org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
33
org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
34
org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
35
org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
36
org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
37
org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
38
org.eclipse.jdt.core.compiler.problem.invalidJavadoc=error
39
org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private
40
org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
41
org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
42
org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
43
org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
44
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
45
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
46
org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
47
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled
48
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=public
49
org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
50
org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
51
org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
52
org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
53
org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
54
org.eclipse.jdt.core.compiler.problem.nullReference=warning
55
org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
56
org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
57
org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
58
org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
59
org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
60
org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
61
org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
62
org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
63
org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
64
org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
65
org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
66
org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
67
org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
68
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
69
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
70
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
71
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
72
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
73
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
74
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
75
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
76
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=enabled
77
org.eclipse.jdt.core.compiler.problem.unusedImport=error
78
org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
79
org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
80
org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
81
org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
82
org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=enabled
83
org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=enabled
84
org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error
85
org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
86
org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
87
org.eclipse.jdt.core.compiler.source=1.3
88
org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
89
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
90
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
91
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
92
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
93
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
94
org.eclipse.jdt.core.formatter.alignment_for_assignment=0
95
org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
96
org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
97
org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
98
org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
99
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
100
org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
101
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
102
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
103
org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
104
org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
105
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
106
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
107
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
108
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
109
org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
110
org.eclipse.jdt.core.formatter.blank_lines_after_package=1
111
org.eclipse.jdt.core.formatter.blank_lines_before_field=0
112
org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
113
org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
114
org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
115
org.eclipse.jdt.core.formatter.blank_lines_before_method=1
116
org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
117
org.eclipse.jdt.core.formatter.blank_lines_before_package=0
118
org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
119
org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
120
org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
121
org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
122
org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
123
org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
124
org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
125
org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
126
org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
127
org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
128
org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
129
org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
130
org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
131
org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
132
org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
133
org.eclipse.jdt.core.formatter.comment.format_block_comments=false
134
org.eclipse.jdt.core.formatter.comment.format_header=false
135
org.eclipse.jdt.core.formatter.comment.format_html=true
136
org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=false
137
org.eclipse.jdt.core.formatter.comment.format_line_comments=false
138
org.eclipse.jdt.core.formatter.comment.format_source_code=true
139
org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false
140
org.eclipse.jdt.core.formatter.comment.indent_root_tags=false
141
org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
142
org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
143
org.eclipse.jdt.core.formatter.comment.line_length=80
144
org.eclipse.jdt.core.formatter.compact_else_if=true
145
org.eclipse.jdt.core.formatter.continuation_indentation=2
146
org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
147
org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
148
org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
149
org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
150
org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
151
org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
152
org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
153
org.eclipse.jdt.core.formatter.indent_empty_lines=false
154
org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
155
org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
156
org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
157
org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
158
org.eclipse.jdt.core.formatter.indentation.size=4
159
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation=insert
160
org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
161
org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
162
org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
163
org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
164
org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
165
org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
166
org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
167
org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
168
org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=do not insert
169
org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
170
org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
171
org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
172
org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
173
org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
174
org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
175
org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
176
org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
177
org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
178
org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
179
org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
180
org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
181
org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
182
org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
183
org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
184
org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
185
org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
186
org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
187
org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
188
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
189
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
190
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
191
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
192
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
193
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
194
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
195
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
196
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
197
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
198
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
199
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
200
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
201
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
202
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
203
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
204
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
205
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
206
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
207
org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
208
org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
209
org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
210
org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
211
org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert
212
org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
213
org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
214
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
215
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
216
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
217
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
218
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
219
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
220
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
221
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
222
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
223
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
224
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
225
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
226
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
227
org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
228
org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
229
org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
230
org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
231
org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
232
org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
233
org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
234
org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
235
org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
236
org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
237
org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
238
org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
239
org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
240
org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=do not insert
241
org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
242
org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
243
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
244
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
245
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
246
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
247
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
248
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
249
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
250
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
251
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
252
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
253
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
254
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
255
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
256
org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
257
org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=insert
258
org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
259
org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=insert
260
org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
261
org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
262
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
263
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
264
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
265
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
266
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
267
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
268
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
269
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
270
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
271
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
272
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
273
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
274
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
275
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
276
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
277
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
278
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
279
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
280
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
281
org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
282
org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
283
org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
284
org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
285
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
286
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
287
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
288
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
289
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
290
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
291
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
292
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
293
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
294
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
295
org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
296
org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
297
org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
298
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
299
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
300
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
301
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
302
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
303
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
304
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
305
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
306
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
307
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
308
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
309
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
310
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
311
org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
312
org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
313
org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
314
org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
315
org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
316
org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
317
org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
318
org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
319
org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
320
org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
321
org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
322
org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
323
org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
324
org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
325
org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
326
org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
327
org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
328
org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
329
org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
330
org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
331
org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
332
org.eclipse.jdt.core.formatter.lineSplit=800
333
org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
334
org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
335
org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
336
org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
337
org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false
338
org.eclipse.jdt.core.formatter.tabulation.char=tab
339
org.eclipse.jdt.core.formatter.tabulation.size=4
340
org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
341
org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
342
org.eclipse.jdt.core.incompatibleJDKLevel=ignore
343
org.eclipse.jdt.core.incompleteClasspath=error
(-)src/org/eclipse/equinox/internal/p2/target/AddIUToTargetWizard.java (+201 lines)
Added Link Here
1
/*******************************************************************************
2
 * Copyright (c) 2007 IBM Corporation and others. All rights reserved. This
3
 * program and the accompanying materials are made available under the terms of
4
 * the Eclipse Public License v1.0 which accompanies this distribution, and is
5
 * available at http://www.eclipse.org/legal/epl-v10.html
6
 * 
7
 * Contributors: IBM Corporation - initial API and implementation
8
 ******************************************************************************/
9
package org.eclipse.equinox.internal.p2.target;
10
11
import java.io.File;
12
import java.lang.reflect.InvocationTargetException;
13
import java.util.HashMap;
14
import java.util.Map;
15
16
import org.eclipse.core.runtime.CoreException;
17
import org.eclipse.core.runtime.IProgressMonitor;
18
import org.eclipse.core.runtime.IStatus;
19
import org.eclipse.core.runtime.Status;
20
import org.eclipse.core.runtime.SubProgressMonitor;
21
import org.eclipse.equinox.internal.provisional.p2.core.ProvisionException;
22
import org.eclipse.equinox.internal.provisional.p2.director.ProfileChangeRequest;
23
import org.eclipse.equinox.internal.provisional.p2.director.ProvisioningPlan;
24
import org.eclipse.equinox.internal.provisional.p2.engine.IProfile;
25
import org.eclipse.equinox.internal.provisional.p2.engine.ProvisioningContext;
26
import org.eclipse.equinox.internal.provisional.p2.metadata.IInstallableUnit;
27
import org.eclipse.equinox.internal.provisional.p2.ui.ProvUIImages;
28
import org.eclipse.equinox.internal.provisional.p2.ui.operations.DownloadPhaseSet;
29
import org.eclipse.equinox.internal.provisional.p2.ui.operations.ProvisioningUtil;
30
import org.eclipse.jface.dialogs.ErrorDialog;
31
import org.eclipse.jface.operation.IRunnableWithProgress;
32
import org.eclipse.jface.wizard.Wizard;
33
import org.eclipse.pde.ui.IProvisionerWizard;
34
35
/**
36
 * Wizard to provision a target using a p2 metadata repository such as an update site.
37
 * The user will select a download location and a list of installable units from known
38
 * sites.  When the user is finished, the IUs will be downloaded to a specific directory
39
 * and the directory will be added to the 'additional locations' of the target platform.
40
 * 
41
 * @since 3.4
42
 * @see IProvisionerWizard
43
 * @see AddIUToTargetPage
44
 */
45
public class AddIUToTargetWizard extends Wizard implements IProvisionerWizard {
46
47
	private AddIUToTargetPage fSelectIUPage;
48
	private File[] fLocations;
49
	
50
	/**
51
	 * Name of the temporary profile that will be created to execute the download.
52
	 */
53
	private static final String PROFILE_ID = "TEMP_TARGET_PROVISIONER_PROFILE";
54
55
	public AddIUToTargetWizard(){
56
		setWindowTitle("Add Installable Unit to Target Platform"); 
57
		setDefaultPageImageDescriptor(ProvUIImages.getImageDescriptor(ProvUIImages.WIZARD_BANNER_INSTALL));
58
		setNeedsProgressMonitor(true);
59
	}
60
		
61
	/* (non-Javadoc)
62
	 * @see org.eclipse.jface.wizard.Wizard#addPages()
63
	 */
64
	public void addPages() {
65
		fSelectIUPage = new AddIUToTargetPage("Select IU Page");
66
		fSelectIUPage.setTitle("Select Installable Unit");
67
		fSelectIUPage.setDescription("Select one or more installable units to add to the target platform");
68
		addPage(fSelectIUPage);
69
		super.addPages();
70
	}
71
	
72
	/* (non-Javadoc)
73
	 * @see org.eclipse.jface.wizard.Wizard#canFinish()
74
	 */
75
	public boolean canFinish() {
76
		return fSelectIUPage.isPageComplete();
77
	}
78
		
79
	/* (non-Javadoc)
80
	 * @see org.eclipse.jface.wizard.Wizard#performFinish()
81
	 */
82
	public boolean performFinish() {
83
		DownloadIUOperation	op = new DownloadIUOperation(fSelectIUPage.getDownloadLocation(true), fSelectIUPage.isClearContentsBeforeDownloading(), fSelectIUPage.getUnits());
84
		try {
85
			fLocations = new File[0]; 
86
			getContainer().run(true, true, op);
87
			return true;
88
		} catch (InvocationTargetException e) {
89
			if (e.getTargetException() != null){
90
				ErrorDialog.openError(getShell(), "Error During Download Operation", e.getTargetException().getMessage(), e.getTargetException() instanceof CoreException ? ((CoreException)e.getTargetException()).getStatus() : new Status(IStatus.ERROR, "pluginid", e.getTargetException().getMessage()));
91
			} else {
92
				ErrorDialog.openError(getShell(), "Error During Download Operation", e.getMessage(), new Status(IStatus.ERROR, "pluginid", e.getMessage()));
93
			}
94
			return false;
95
		} catch (InterruptedException e) {
96
			ErrorDialog.openError(getShell(), "Download Operation Was Interrupted", e.getMessage(), new Status(IStatus.ERROR, "pluginid", e.getMessage()));
97
			return false;
98
		}
99
	}
100
	
101
	/* (non-Javadoc)
102
	 * @see org.eclipse.pde.ui.IProvisionerWizard#getLocations()
103
	 */
104
	public File[] getLocations() {
105
		return fLocations;
106
	}
107
	
108
	/**
109
	 * Job to perform the download of the installable units, reports progress.
110
	 * @since 3.4
111
	 */
112
	private class DownloadIUOperation implements IRunnableWithProgress {
113
114
		private File fInstallDir;
115
		private boolean fClearContents;
116
		private IInstallableUnit[] fUnits;
117
		
118
		public DownloadIUOperation(File installDir, boolean clearContentsBeforeDownload, IInstallableUnit[] units){
119
			fInstallDir = installDir;
120
			fClearContents = clearContentsBeforeDownload;
121
			fUnits = units;
122
		}
123
		
124
		/* (non-Javadoc)
125
		 * @see org.eclipse.jface.operation.IRunnableWithProgress#run(org.eclipse.core.runtime.IProgressMonitor)
126
		 */
127
		public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
128
			monitor.beginTask("Provisioning target", 4);
129
			if (fInstallDir != null && fInstallDir.isDirectory()){
130
			
131
				// Clear the contents of the directory if required
132
				if (fClearContents){
133
					File[] contents = fInstallDir.listFiles();
134
					SubProgressMonitor subMonitor = new SubProgressMonitor(monitor, contents.length, SubProgressMonitor.PREPEND_MAIN_LABEL_TO_SUBTASK);
135
					subMonitor.setTaskName("Clearing install folder");
136
					for (int i = 0; i < contents.length; i++) {
137
						deleteDir(contents[i]);
138
						subMonitor.worked(1);
139
					}
140
					subMonitor.done();
141
				} else{
142
					monitor.worked(1);
143
				}
144
				
145
				try {
146
					// Create the temporary profile
147
					Map properties = new HashMap();
148
					properties.put(IProfile.PROP_INSTALL_FOLDER, fInstallDir.toString());
149
					properties.put(IProfile.PROP_CACHE, fInstallDir.toString()); 
150
					ProvisioningUtil.removeProfile(PROFILE_ID, monitor);
151
					IProfile newProfile = ProvisioningUtil.addProfile(PROFILE_ID, properties, monitor);
152
					monitor.worked(1);
153
					
154
					// Create the provisioning plan
155
					ProfileChangeRequest request = new ProfileChangeRequest(newProfile);
156
					request.addInstallableUnits(fUnits);
157
					ProvisioningPlan plan = ProvisioningUtil.getProvisioningPlan(request, new ProvisioningContext(), monitor);
158
					monitor.worked(1);
159
					
160
					// Execute the provisioning plan
161
					IStatus result = ProvisioningUtil.performProvisioningPlan(plan, new DownloadPhaseSet(), newProfile, monitor);
162
					
163
					if (result.isOK()){
164
						fLocations = new File[]{fInstallDir};
165
					} else {
166
						throw new InvocationTargetException(new CoreException(result));
167
					}
168
			
169
				} catch (ProvisionException e) {
170
					throw new InvocationTargetException(e);
171
				} finally {
172
					// Make sure to remove the temporary profile
173
					try {
174
						ProvisioningUtil.removeProfile(PROFILE_ID, monitor);
175
					} catch (ProvisionException e) {}
176
				}
177
			}
178
			monitor.done();
179
		}
180
		
181
		/**
182
		 * Deletes a directory
183
		 * @param dir the directory to delete
184
		 */
185
		private void deleteDir(File dir) {
186
			if (dir.exists()) {
187
				if (dir.isDirectory()) {
188
					File[] children = dir.listFiles();
189
					if (children != null) {
190
						for (int i = 0; i < children.length; i++) {
191
							deleteDir(children[i]);
192
						}
193
					}
194
				}
195
				dir.delete();
196
			}
197
		}
198
	}
199
	
200
		
201
}
(-)plugin.properties (+12 lines)
Added Link Here
1
###############################################################################
2
# Copyright (c) 2007 IBM Corporation and others.
3
# All rights reserved. This program and the accompanying materials
4
# are made available under the terms of the Eclipse Public License v1.0
5
# which accompanies this distribution, and is available at
6
# http://www.eclipse.org/legal/epl-v10.html
7
# 
8
# Contributors:
9
#     IBM Corporation - initial API and implementation
10
###############################################################################
11
pluginName = Equinox Provisioning Target Management (Incubation)
12
providerName = Eclipse.org
(-)about.html (+28 lines)
Added Link Here
1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3
<html xmlns="http://www.w3.org/1999/xhtml">
4
<head>
5
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
6
<title>About</title>
7
</head>
8
<body lang="EN-US">
9
<h2>About This Content</h2>
10
 
11
<p>June 2, 2006</p>	
12
<h3>License</h3>
13
14
<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise 
15
indicated below, the Content is provided to you under the terms and conditions of the
16
Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available 
17
at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
18
For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
19
20
<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
21
being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
22
apply to your use of any object code in the Content.  Check the Redistributor's license that was 
23
provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
24
indicated below, the terms and conditions of the EPL still apply to any source code in the Content
25
and such source code may be obtained at <a href="http://www.eclipse.org">http://www.eclipse.org</a>.</p>
26
27
</body>
28
</html>
(-)src/org/eclipse/equinox/internal/p2/ui/sdk/UpdateAndInstallDialog.java (-47 / +1 lines)
Lines 10-25 Link Here
10
 *******************************************************************************/
10
 *******************************************************************************/
11
package org.eclipse.equinox.internal.p2.ui.sdk;
11
package org.eclipse.equinox.internal.p2.ui.sdk;
12
12
13
import java.net.URL;
14
import org.eclipse.equinox.internal.p2.ui.sdk.externalFiles.MetadataGeneratingURLValidator;
15
import org.eclipse.equinox.internal.p2.ui.sdk.prefs.PreferenceConstants;
13
import org.eclipse.equinox.internal.p2.ui.sdk.prefs.PreferenceConstants;
16
import org.eclipse.equinox.internal.provisional.p2.core.ProvisionException;
17
import org.eclipse.equinox.internal.provisional.p2.metadata.repository.IMetadataRepositoryManager;
18
import org.eclipse.equinox.internal.provisional.p2.ui.IProfileChooser;
14
import org.eclipse.equinox.internal.provisional.p2.ui.IProfileChooser;
19
import org.eclipse.equinox.internal.provisional.p2.ui.IRepositoryManipulator;
15
import org.eclipse.equinox.internal.provisional.p2.ui.IRepositoryManipulator;
20
import org.eclipse.equinox.internal.provisional.p2.ui.dialogs.URLValidator;
21
import org.eclipse.equinox.internal.provisional.p2.ui.dialogs.UpdateAndInstallGroup;
16
import org.eclipse.equinox.internal.provisional.p2.ui.dialogs.UpdateAndInstallGroup;
22
import org.eclipse.equinox.internal.provisional.p2.ui.operations.*;
23
import org.eclipse.jface.dialogs.*;
17
import org.eclipse.jface.dialogs.*;
24
import org.eclipse.jface.dialogs.Dialog;
18
import org.eclipse.jface.dialogs.Dialog;
25
import org.eclipse.jface.preference.IPreferenceStore;
19
import org.eclipse.jface.preference.IPreferenceStore;
Lines 129-175 Link Here
129
	}
123
	}
130
124
131
	private IRepositoryManipulator getRepositoryManipulator() {
125
	private IRepositoryManipulator getRepositoryManipulator() {
132
		return new IRepositoryManipulator() {
126
		return new DialogRepositoryManipulator();
133
			public String getManipulatorLabel() {
134
				return ProvSDKMessages.UpdateAndInstallDialog_ManageSites;
135
136
			}
137
138
			public boolean manipulateRepositories(Shell shell) {
139
				new RepositoryManipulationDialog(shell, this).open();
140
				return true;
141
			}
142
143
			public ProvisioningOperation getAddOperation(URL repoURL) {
144
				return new AddColocatedRepositoryOperation(getAddOperationLabel(), repoURL);
145
			}
146
147
			public String getAddOperationLabel() {
148
				return ProvSDKMessages.UpdateAndInstallDialog_AddSiteOperationlabel;
149
			}
150
151
			public URL[] getKnownRepositories() {
152
				try {
153
					return ProvisioningUtil.getMetadataRepositories(IMetadataRepositoryManager.REPOSITORIES_ALL);
154
				} catch (ProvisionException e) {
155
					return new URL[0];
156
				}
157
			}
158
159
			public ProvisioningOperation getRemoveOperation(URL[] reposToRemove) {
160
				return new RemoveColocatedRepositoryOperation(getRemoveOperationLabel(), reposToRemove);
161
			}
162
163
			public String getRemoveOperationLabel() {
164
				return ProvSDKMessages.UpdateAndInstallDialog_RemoveSiteOperationLabel;
165
			}
166
167
			public URLValidator getURLValidator(Shell shell) {
168
				MetadataGeneratingURLValidator validator = new MetadataGeneratingURLValidator();
169
				validator.setShell(shell);
170
				return validator;
171
			}
172
		};
173
	}
127
	}
174
128
175
	private IProfileChooser getProfileChooser() {
129
	private IProfileChooser getProfileChooser() {
(-)src/org/eclipse/equinox/internal/p2/ui/sdk/DialogRepositoryManipulator.java (+54 lines)
Added Link Here
1
package org.eclipse.equinox.internal.p2.ui.sdk;
2
3
import java.net.URL;
4
import org.eclipse.equinox.internal.p2.ui.sdk.externalFiles.MetadataGeneratingURLValidator;
5
import org.eclipse.equinox.internal.provisional.p2.core.ProvisionException;
6
import org.eclipse.equinox.internal.provisional.p2.metadata.repository.IMetadataRepositoryManager;
7
import org.eclipse.equinox.internal.provisional.p2.ui.IRepositoryManipulator;
8
import org.eclipse.equinox.internal.provisional.p2.ui.dialogs.URLValidator;
9
import org.eclipse.equinox.internal.provisional.p2.ui.operations.*;
10
import org.eclipse.swt.widgets.Shell;
11
12
public class DialogRepositoryManipulator implements IRepositoryManipulator {
13
14
	public String getManipulatorLabel() {
15
		return ProvSDKMessages.UpdateAndInstallDialog_ManageSites;
16
17
	}
18
19
	public boolean manipulateRepositories(Shell shell) {
20
		new RepositoryManipulationDialog(shell, this).open();
21
		return true;
22
	}
23
24
	public ProvisioningOperation getAddOperation(URL repoURL) {
25
		return new AddColocatedRepositoryOperation(getAddOperationLabel(), repoURL);
26
	}
27
28
	public String getAddOperationLabel() {
29
		return ProvSDKMessages.UpdateAndInstallDialog_AddSiteOperationlabel;
30
	}
31
32
	public URL[] getKnownRepositories() {
33
		try {
34
			return ProvisioningUtil.getMetadataRepositories(IMetadataRepositoryManager.REPOSITORIES_ALL);
35
		} catch (ProvisionException e) {
36
			return new URL[0];
37
		}
38
	}
39
40
	public ProvisioningOperation getRemoveOperation(URL[] reposToRemove) {
41
		return new RemoveColocatedRepositoryOperation(getRemoveOperationLabel(), reposToRemove);
42
	}
43
44
	public String getRemoveOperationLabel() {
45
		return ProvSDKMessages.UpdateAndInstallDialog_RemoveSiteOperationLabel;
46
	}
47
48
	public URLValidator getURLValidator(Shell shell) {
49
		MetadataGeneratingURLValidator validator = new MetadataGeneratingURLValidator();
50
		validator.setShell(shell);
51
		return validator;
52
	}
53
54
}

Return to bug 204347