JBoss Tools SVN: r27719 - trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model.
by jbosstools-commits@lists.jboss.org
Author: vrubezhny
Date: 2010-12-24 11:18:36 -0500 (Fri, 24 Dec 2010)
New Revision: 27719
Modified:
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/JSFMessageELCompletionEngine.java
Log:
JBIDE-7975
jsf validation gives property does not exist warning on messagebundle properties
The localization properties in facesConfig.xml are taken into account when searching for resource bundles
Modified: trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/JSFMessageELCompletionEngine.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/JSFMessageELCompletionEngine.java 2010-12-24 16:17:34 UTC (rev 27718)
+++ trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/JSFMessageELCompletionEngine.java 2010-12-24 16:18:36 UTC (rev 27719)
@@ -52,6 +52,7 @@
import org.jboss.tools.common.text.ext.util.Utils;
import org.jboss.tools.common.util.FileUtil;
import org.jboss.tools.jsf.JSFModelPlugin;
+import org.jboss.tools.jsf.model.helpers.converter.OpenKeyHelper;
import org.jboss.tools.jst.web.kb.IPageContext;
import org.jboss.tools.jst.web.kb.IResourceBundle;
import org.jboss.tools.jst.web.project.list.WebPromptingProvider;
@@ -473,22 +474,28 @@
XModel model = n.getModel();
if(model == null)
return;
- XModelObject properties = model.getByPath("/" + variable.basename.replace('.', '/') + ".properties");
+
+ OpenKeyHelper keyHelper = new OpenKeyHelper();
+ XModelObject[] properties = keyHelper.findBundles(model, variable.basename, null);
+// XModelObject properties = model.getByPath("/" + variable.basename.replace('.', '/') + ".properties");
if(properties == null)
return;
- IFile propFile = (IFile)properties.getAdapter(IFile.class);
- if(propFile == null)
- return;
- segment.setMessageBundleResource(propFile);
- XModelObject property = properties.getChildByPath(segment.getToken().getText());
- if(property != null){
- try {
- String content = FileUtil.readStream(propFile);
- if(findPropertyLocation(property, content, segment)){
- segment.setBaseName(variable.basename);
+
+ for (XModelObject p : properties) {
+ IFile propFile = (IFile)p.getAdapter(IFile.class);
+ if(propFile == null)
+ continue;
+ segment.setMessageBundleResource(propFile);
+ XModelObject property = p.getChildByPath(segment.getToken().getText());
+ if(property != null){
+ try {
+ String content = FileUtil.readStream(propFile);
+ if(findPropertyLocation(property, content, segment)){
+ segment.setBaseName(variable.basename);
+ }
+ } catch (CoreException e) {
+ log(e);
}
- } catch (CoreException e) {
- log(e);
}
}
}
15 years
JBoss Tools SVN: r27718 - trunk/deltacloud/tests/org.jboss.tools.deltacloud.test/src/org/jboss/tools/internal/deltacloud/test/core/client.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2010-12-24 11:17:34 -0500 (Fri, 24 Dec 2010)
New Revision: 27718
Modified:
trunk/deltacloud/tests/org.jboss.tools.deltacloud.test/src/org/jboss/tools/internal/deltacloud/test/core/client/KeyDomUnmarshallingTest.java
Log:
[JBIDE-7979] corrected code that added extra \n to key
Modified: trunk/deltacloud/tests/org.jboss.tools.deltacloud.test/src/org/jboss/tools/internal/deltacloud/test/core/client/KeyDomUnmarshallingTest.java
===================================================================
--- trunk/deltacloud/tests/org.jboss.tools.deltacloud.test/src/org/jboss/tools/internal/deltacloud/test/core/client/KeyDomUnmarshallingTest.java 2010-12-24 16:16:51 UTC (rev 27717)
+++ trunk/deltacloud/tests/org.jboss.tools.deltacloud.test/src/org/jboss/tools/internal/deltacloud/test/core/client/KeyDomUnmarshallingTest.java 2010-12-24 16:17:34 UTC (rev 27718)
@@ -31,7 +31,6 @@
import org.jboss.tools.internal.deltacloud.test.fakes.ServerKeyResponseFakes.KeyActionResponse;
import org.jboss.tools.internal.deltacloud.test.fakes.ServerKeyResponseFakes.KeyResponse;
import org.jboss.tools.internal.deltacloud.test.fakes.ServerKeyResponseFakes.KeysResponse;
-import org.junit.Ignore;
import org.junit.Test;
/**
@@ -50,7 +49,6 @@
assertEquals(KeyActionResponse.method.toUpperCase(), keyAction.getMethod().toString().toUpperCase());
}
- @Ignore
@Test
public void keyMayBeUnmarshalled() throws MalformedURLException, JAXBException, DeltaCloudClientException {
Key key = new Key();
15 years
JBoss Tools SVN: r27717 - trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/client/unmarshal.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2010-12-24 11:16:51 -0500 (Fri, 24 Dec 2010)
New Revision: 27717
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/client/unmarshal/KeyUnmarshaller.java
Log:
[JBIDE-7979] corrected code that added extra \n to key
Modified: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/client/unmarshal/KeyUnmarshaller.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/client/unmarshal/KeyUnmarshaller.java 2010-12-24 15:53:07 UTC (rev 27716)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/client/unmarshal/KeyUnmarshaller.java 2010-12-24 16:16:51 UTC (rev 27717)
@@ -66,7 +66,8 @@
// Complete white-space lines are to be ignored.
String trimmedLine = line.trim();
if (trimmedLine.length() > 0) {
- sb.append(trimmedLine).append('\n');
+// sb.append(trimmedLine).append('\n');
+ sb.append(trimmedLine);
}
}
return sb.toString();
15 years
JBoss Tools SVN: r27716 - in trunk/deltacloud/plugins: org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/common/databinding/validator and 2 other directories.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2010-12-24 10:53:07 -0500 (Fri, 24 Dec 2010)
New Revision: 27716
Added:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/common/databinding/validator/BoundObjectPresentConverter.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/ManageKeysPageModel.java
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/internal/deltacloud/core/observable/ObservablePojo.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/utils/DataBindingUtils.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/ManageKeysPage.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/WizardMessages.properties
Log:
[JBIDE-7763] revamped the whole manage keys page to deal with keys on the server (list, refresh, create, delete)
Modified: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/internal/deltacloud/core/observable/ObservablePojo.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/internal/deltacloud/core/observable/ObservablePojo.java 2010-12-24 15:51:33 UTC (rev 27715)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/internal/deltacloud/core/observable/ObservablePojo.java 2010-12-24 15:53:07 UTC (rev 27716)
@@ -30,6 +30,10 @@
propertyChangeSupport.firePropertyChange(propertyName, oldValue, newValue);
}
+ public void fireIndexedPropertyChange(String propertyName, int index, Object oldValue, Object newValue) {
+ propertyChangeSupport.fireIndexedPropertyChange(propertyName, index, oldValue, newValue);
+ }
+
public void addPropertyChangeListener(String propertyName, PropertyChangeListener listener) {
propertyChangeSupport.addPropertyChangeListener(propertyName, listener);
}
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/common/databinding/validator/BoundObjectPresentConverter.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/common/databinding/validator/BoundObjectPresentConverter.java (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/common/databinding/validator/BoundObjectPresentConverter.java 2010-12-24 15:53:07 UTC (rev 27716)
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.internal.deltacloud.ui.common.databinding.validator;
+
+import org.eclipse.core.databinding.conversion.Converter;
+
+/**
+ * @author André Dietisheim
+ */
+public class BoundObjectPresentConverter extends Converter {
+
+ public BoundObjectPresentConverter() {
+ super(Object.class, Boolean.class);
+ }
+
+ @Override
+ public Object convert(Object fromObject) {
+ System.err.println("returning = " + (fromObject != null));
+ return fromObject != null;
+ }
+
+}
Property changes on: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/common/databinding/validator/BoundObjectPresentConverter.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/utils/DataBindingUtils.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/utils/DataBindingUtils.java 2010-12-24 15:51:33 UTC (rev 27715)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/utils/DataBindingUtils.java 2010-12-24 15:53:07 UTC (rev 27716)
@@ -15,6 +15,8 @@
import org.eclipse.core.databinding.Binding;
import org.eclipse.core.databinding.observable.IChangeListener;
import org.eclipse.core.databinding.observable.IObservable;
+import org.eclipse.core.databinding.observable.list.IListChangeListener;
+import org.eclipse.core.databinding.observable.list.IObservableList;
import org.eclipse.core.databinding.observable.value.IObservableValue;
import org.eclipse.core.databinding.observable.value.IValueChangeListener;
import org.eclipse.swt.events.DisposeEvent;
@@ -95,4 +97,27 @@
});
}
+ /**
+ * Adds the given value change listener to the given observable. Listens for
+ * disposal of the given control and removes the listener when it gets
+ * disposed.
+ *
+ * @param listener
+ * the listener to add to the given observable
+ * @param observable
+ * the observable to add the listener to
+ * @param control
+ * the control to listen to disposal to
+ */
+ public static void addListChangeListener(final IListChangeListener listener, final IObservableList observable,
+ Control control) {
+ observable.addListChangeListener(listener);
+ control.addDisposeListener(new DisposeListener() {
+
+ @Override
+ public void widgetDisposed(DisposeEvent e) {
+ observable.removeListChangeListener(listener);
+ }
+ });
+ }
}
Modified: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/ManageKeysPage.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/ManageKeysPage.java 2010-12-24 15:51:33 UTC (rev 27715)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/ManageKeysPage.java 2010-12-24 15:53:07 UTC (rev 27716)
@@ -10,20 +10,21 @@
******************************************************************************/
package org.jboss.tools.internal.deltacloud.ui.wizards;
-import java.lang.reflect.InvocationTargetException;
import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Arrays;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
+import org.eclipse.core.databinding.DataBindingContext;
+import org.eclipse.core.databinding.UpdateListStrategy;
+import org.eclipse.core.databinding.UpdateSetStrategy;
+import org.eclipse.core.databinding.UpdateValueStrategy;
+import org.eclipse.core.databinding.beans.BeanProperties;
+import org.eclipse.core.databinding.conversion.Converter;
+import org.eclipse.core.runtime.Assert;
+import org.eclipse.jface.databinding.swt.WidgetProperties;
import org.eclipse.jface.dialogs.IInputValidator;
import org.eclipse.jface.dialogs.InputDialog;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.layout.GridDataFactory;
import org.eclipse.jface.layout.GridLayoutFactory;
-import org.eclipse.jface.operation.IRunnableWithProgress;
import org.eclipse.jface.wizard.WizardPage;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
@@ -35,15 +36,11 @@
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.List;
import org.eclipse.swt.widgets.Shell;
-import org.jboss.tools.common.log.StatusFactory;
import org.jboss.tools.deltacloud.core.DeltaCloud;
-import org.jboss.tools.deltacloud.core.DeltaCloudException;
import org.jboss.tools.deltacloud.core.DeltaCloudKey;
-import org.jboss.tools.deltacloud.core.job.AbstractCloudElementJob;
-import org.jboss.tools.deltacloud.core.job.AbstractCloudElementJob.CLOUDELEMENT;
-import org.jboss.tools.deltacloud.ui.Activator;
import org.jboss.tools.deltacloud.ui.ErrorUtils;
import org.jboss.tools.deltacloud.ui.SWTImagesFactory;
+import org.jboss.tools.internal.deltacloud.ui.common.databinding.validator.BoundObjectPresentConverter;
/**
* @author Jeff Johnston
@@ -61,21 +58,51 @@
private final static String CONFIRM_KEY_DELETE_TITLE = "ConfirmKeyDelete.title"; //$NON-NLS-1$
private final static String CONFIRM_KEY_DELETE_MSG = "ConfirmKeyDelete.msg"; //$NON-NLS-1$
- private DeltaCloud cloud;
private List keyList;
- private java.util.List<DeltaCloudKey> keys;
- private DeltaCloudKey selectedKey;
+ private ManageKeysPageModel model;
+ private class Key2IdConverter extends Converter {
+
+ public Key2IdConverter() {
+ super(Object.class, String.class);
+ }
+
+ @Override
+ public Object convert(Object fromObject) {
+ if (fromObject == null) {
+ return null;
+ }
+ Assert.isTrue(fromObject instanceof DeltaCloudKey);
+ return ((DeltaCloudKey) fromObject).getId();
+ }
+
+ }
+
+ private class Id2KeyConverter extends Converter {
+
+ public Id2KeyConverter() {
+ super(String.class, DeltaCloudKey.class);
+ }
+
+ @Override
+ public Object convert(Object fromObject) {
+ if (fromObject == null) {
+ return null;
+ }
+ Assert.isTrue(fromObject instanceof String);
+ return model.getKey((String) fromObject);
+ }
+ }
+
private class UniqueKeyIdConstraint implements IInputValidator {
@Override
public String isValid(String keyId) {
- if (keys == null
- || keyId == null) {
+ if (keyId == null) {
return null;
}
- for (DeltaCloudKey key : keys) {
+ for (DeltaCloudKey key : model.getKeys()) {
if (keyId.equals(key.getId())) {
// TODO: internationalize string
return "Key id is already used, please choose another id.";
@@ -85,19 +112,9 @@
}
}
- private SelectionListener keyListListener = new SelectionAdapter() {
-
- @Override
- public void widgetSelected(SelectionEvent e) {
- String selectedKeyName = keyList.getItem(keyList.getSelectionIndex());
- selectedKey = getKey(selectedKeyName);
- setPageComplete(selectedKey != null);
- }
- };
-
public ManageKeysPage(DeltaCloud cloud) {
super(WizardMessages.getString(NAME));
- this.cloud = cloud;
+ this.model = new ManageKeysPageModel(cloud);
setDescription(WizardMessages.getString(DESC));
setTitle(WizardMessages.getString(TITLE));
setImageDescriptor(SWTImagesFactory.DESC_DELTA_LARGE);
@@ -105,20 +122,23 @@
}
public DeltaCloudKey getKey() {
- return selectedKey;
+ return model.getSelectedKey();
}
@Override
public void createControl(Composite parent) {
- setPageComplete(false);
- final Composite container = new Composite(parent, SWT.NULL);
+ DataBindingContext dbc = new DataBindingContext();
+ // WizardPageSupport.create(this, dbc);
+
+ bindWizardComplete(dbc);
+ Composite container = new Composite(parent, SWT.NULL);
GridLayoutFactory.fillDefaults().numColumns(4).equalWidth(false).applyTo(container);
- keyList = new List(container, SWT.BORDER | SWT.SINGLE | SWT.V_SCROLL);
- keyList.addSelectionListener(keyListListener);
+ this.keyList = createKeyList(dbc, container);
GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).grab(true, true).span(4, 5).applyTo(keyList);
Button refreshButton = new Button(container, SWT.NULL);
+ // TODO: Internationalize strings
refreshButton.setText("Refresh keys");
refreshButton.addSelectionListener(onRefreshPressed());
GridDataFactory.fillDefaults().applyTo(refreshButton);
@@ -127,30 +147,93 @@
GridDataFactory.fillDefaults().grab(true, false).applyTo(dummyLabel);
Button createButton = new Button(container, SWT.NULL);
- // TODO: internationalize string
createButton.setText(WizardMessages.getString(NEW));
createButton.addSelectionListener(onNewPressed());
GridDataFactory.fillDefaults().applyTo(createButton);
+ Button deleteButton = createDeleteButton(container, dbc);
+ GridDataFactory.fillDefaults().applyTo(deleteButton);
+
+ setControl(container);
+ }
+
+ private Button createDeleteButton(Composite container, DataBindingContext dbc) {
Button deleteButton = new Button(container, SWT.NULL);
deleteButton.setText(WizardMessages.getString(DELETE));
deleteButton.addSelectionListener(onDeletePressed());
- GridDataFactory.fillDefaults().applyTo(deleteButton);
+ // bind enablement
+ dbc.bindValue(
+ WidgetProperties.enabled().observe(deleteButton),
+ BeanProperties.value(ManageKeysPageModel.PROP_SELECTED_KEY).observe(model),
+ new UpdateValueStrategy(UpdateSetStrategy.POLICY_NEVER),
+ new UpdateValueStrategy().setConverter(new BoundObjectPresentConverter()));
+ return deleteButton;
+ }
- setControl(container);
- asyncGetKeys(cloud);
- setPageComplete(false);
+ private void bindWizardComplete(DataBindingContext dbc) {
+ dbc.bindValue(
+ BeanProperties.value("pageComplete").observe(this),
+ BeanProperties.value(ManageKeysPageModel.PROP_SELECTED_KEY).observe(model),
+ new UpdateValueStrategy(UpdateSetStrategy.POLICY_NEVER),
+ new UpdateValueStrategy().setConverter(new BoundObjectPresentConverter()));
}
+ private List createKeyList(DataBindingContext dbc, Composite container) {
+ final List keyList = new List(container, SWT.BORDER | SWT.SINGLE | SWT.V_SCROLL);
+ // bind items
+ dbc.bindList(
+ WidgetProperties.items().observe(keyList),
+ BeanProperties.list(ManageKeysPageModel.PROP_KEYS).observe(model),
+ new UpdateListStrategy(UpdateSetStrategy.POLICY_NEVER),
+ new UpdateListStrategy().setConverter(new Key2IdConverter()));
+ // bind selected key
+ dbc.bindValue(WidgetProperties.selection().observe(keyList),
+ BeanProperties.value(ManageKeysPageModel.PROP_SELECTED_KEY).observe(model),
+ new UpdateValueStrategy().setConverter(new Id2KeyConverter()),
+ new UpdateValueStrategy().setConverter(new Key2IdConverter()));
+ bindKeyListEnablement(keyList, dbc);
+ return keyList;
+ }
+
+ private void bindKeyListEnablement(final List keyList, DataBindingContext dbc) {
+ dbc.bindValue(WidgetProperties.enabled().observe(keyList),
+ BeanProperties.value(ManageKeysPageModel.PROP_KEYS).observe(model),
+ new UpdateValueStrategy(UpdateSetStrategy.POLICY_NEVER),
+ new UpdateValueStrategy().setConverter(new Converter(java.util.List.class, Boolean.class) {
+
+ @SuppressWarnings("rawtypes")
+ @Override
+ public Object convert(Object fromObject) {
+ if (fromObject == null) {
+ System.err.println("key list enablement = false");
+ return false;
+ }
+ System.err.println("key list enablement = " + (((java.util.List) fromObject).size() > 0));
+ return ((java.util.List) fromObject).size() > 0;
+ }
+ }));
+ // BeanProperties.value(ManageKeysPageModel.PROP_KEYS).observe(model).addValueChangeListener(
+ // new IValueChangeListener() {
+ //
+ // @Override
+ // public void handleValueChange(ValueChangeEvent event) {
+ // @SuppressWarnings("rawtypes")
+ // boolean keysPresent = ((java.util.List)
+ // event.diff.getNewValue()).size() > 0;
+ // keyList.setEnabled(keysPresent);
+ // }
+ // });
+ }
+
private SelectionAdapter onDeletePressed() {
return new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent event) {
boolean confirmed = MessageDialog.openConfirm(getShell(),
WizardMessages.getString(CONFIRM_KEY_DELETE_TITLE),
- WizardMessages.getFormattedString(CONFIRM_KEY_DELETE_MSG, selectedKey.getId()));
+ WizardMessages.getFormattedString(CONFIRM_KEY_DELETE_MSG, model.getSelectedKey().getId()));
if (confirmed) {
- deleteKey(selectedKey);
+ deleteKey();
}
}
};
@@ -161,7 +244,7 @@
@Override
public void widgetSelected(SelectionEvent e) {
- asyncGetKeys(cloud);
+ model.refreshKeys();
}
};
}
@@ -180,87 +263,15 @@
d.create();
if (d.open() == InputDialog.OK) {
String keyId = d.getValue();
- createkey(keyId);
+ createKey(keyId);
}
}
};
}
- private void asyncGetKeys(final DeltaCloud cloud) {
- // TODO: internationalize strings
- new AbstractCloudElementJob("get keys", cloud, CLOUDELEMENT.KEYS) {
-
- protected IStatus doRun(IProgressMonitor monitor) throws Exception {
- try {
- keys = new ArrayList<DeltaCloudKey>();
- keys.addAll(Arrays.asList(cloud.getKeys()));
- setKeysToList(keys);
- return Status.OK_STATUS;
- } catch (DeltaCloudException e) {
- // TODO: internationalize strings
- return StatusFactory.getInstance(IStatus.ERROR, Activator.PLUGIN_ID,
- MessageFormat.format("Could not get keys from cloud {0}", cloud.getName()), e);
- }
- }
-
- }.schedule();
- }
-
- private String[] toKeyIds(java.util.List<DeltaCloudKey> keys) {
- ArrayList<String> keyId = new ArrayList<String>();
- for (DeltaCloudKey key : keys) {
- keyId.add(key.getId());
- }
- return keyId.toArray(new String[keyId.size()]);
- }
-
- private void setKeysToList(java.util.List<DeltaCloudKey> keys) {
- final String[] keyIds = toKeyIds(keys);
- keyList.getDisplay().asyncExec(new Runnable() {
-
- @Override
- public void run() {
- if (keyIds.length == 0) {
- keyList.setItems(new String[] { "There are no keys..." });
- } else {
- keyList.setItems(keyIds);
- }
- keyList.setEnabled(keyIds.length > 0);
- }
- });
- }
-
- private DeltaCloudKey getKey(String keyId) {
- if (keys == null
- || keyId == null) {
- return null;
- }
- DeltaCloudKey matchingKey = null;
- for (DeltaCloudKey key : keys) {
- if (keyId.equals(key.getId())) {
- matchingKey = key;
- break;
- }
- }
- return matchingKey;
- }
-
- private void createkey(final String keyId) {
+ private void createKey(final String keyId) {
try {
- getWizard().getContainer().run(true, true, new IRunnableWithProgress() {
-
- @Override
- public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
- try {
- DeltaCloudKey key = cloud.createKey(keyId);
- keys.add(key);
- setKeysToList(keys);
- setSelection(key);
- } catch (Exception e) {
- throw new InvocationTargetException(e);
- }
- }
- });
+ model.createKey(keyId);
} catch (Exception e) {
// TODO: internationalize strings
ErrorUtils.handleError(
@@ -270,45 +281,15 @@
}
}
- private void deleteKey(final DeltaCloudKey key) {
+ private void deleteKey() {
try {
- getWizard().getContainer().run(true, true, new IRunnableWithProgress() {
-
- @Override
- public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
- try {
- cloud.deleteKey(key.getId());
- keys.remove(key);
- getShell().getDisplay().syncExec(new Runnable() {
-
- @Override
- public void run() {
- keyList.remove(key.getId());
- }
- });
- } catch (Exception e) {
- throw new InvocationTargetException(e);
- }
- }
- });
+ model.deleteSelectedKey();
} catch (Exception e) {
// TODO: internationalize strings
ErrorUtils.handleError(
"Error",
- MessageFormat.format("Error", "Could not create key \"{0}\"", key.getId()), e,
+ MessageFormat.format("Error", "Could not create key \"{0}\"", model.getSelectedKey().getId()), e,
getShell());
}
}
-
- private void setSelection(final DeltaCloudKey key) {
- getShell().getDisplay().syncExec(new Runnable() {
-
- @Override
- public void run() {
- keyList.setSelection(new String[] { key.getId() });
- keyList.showSelection();
- }
- });
- }
-
}
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/ManageKeysPageModel.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/ManageKeysPageModel.java (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/ManageKeysPageModel.java 2010-12-24 15:53:07 UTC (rev 27716)
@@ -0,0 +1,144 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.internal.deltacloud.ui.wizards;
+
+import java.text.MessageFormat;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.jboss.tools.common.log.StatusFactory;
+import org.jboss.tools.deltacloud.core.DeltaCloud;
+import org.jboss.tools.deltacloud.core.DeltaCloudException;
+import org.jboss.tools.deltacloud.core.DeltaCloudKey;
+import org.jboss.tools.deltacloud.core.job.AbstractCloudElementJob;
+import org.jboss.tools.deltacloud.core.job.AbstractCloudElementJob.CLOUDELEMENT;
+import org.jboss.tools.deltacloud.ui.Activator;
+import org.jboss.tools.internal.deltacloud.core.observable.ObservablePojo;
+
+/**
+ * @author André Dietisheim
+ */
+public class ManageKeysPageModel extends ObservablePojo {
+
+ public static final String PROP_SELECTED_KEY = "selectedKey";
+ public static final String PROP_KEYS = "keys";
+ public static final String PROP_KEYS_ADDED = "keyAdded";
+ public static final String PROP_KEYS_REMOVED = "keyRemoved";
+
+ private List<DeltaCloudKey> keys = new ArrayList<DeltaCloudKey>();
+ private DeltaCloud cloud;
+ private DeltaCloudKey selectedKey;
+
+ public ManageKeysPageModel(DeltaCloud cloud) {
+ this.cloud = cloud;
+ asyncGetKeys(cloud);
+ }
+
+ public void refreshKeys() {
+ asyncGetKeys(cloud);
+ }
+
+ public void deleteSelectedKey() throws DeltaCloudException {
+ if (selectedKey == null) {
+ return;
+ }
+ cloud.deleteKey(selectedKey.getId());
+ int index = keys.indexOf(selectedKey);
+ keys.remove(selectedKey);
+ fireIndexedPropertyChange(PROP_KEYS, index, selectedKey, null);
+ setSelectedKey(index - 1);
+ }
+
+ public void createKey(String keyId) throws DeltaCloudException {
+ DeltaCloudKey key = cloud.createKey(keyId);
+ keys.add(key);
+ int index = keys.indexOf(key);
+ fireIndexedPropertyChange(PROP_KEYS, index, null, key);
+ setSelectedKey(key);
+ }
+
+ public DeltaCloudKey getSelectedKey() {
+ return selectedKey;
+ }
+
+ public void setSelectedKey(DeltaCloudKey selectedKey) {
+ firePropertyChange(PROP_SELECTED_KEY, this.selectedKey, this.selectedKey = selectedKey);
+ }
+
+ /**
+ * Sets the selected key by the given index in the list of keys that are
+ * currently available to this model. If the index's larger than the number
+ * of keys, the selection is reseted. If the index's is below 0 and there
+ * are still keys available, the key at index 0 is selected.
+ *
+ * @param index
+ * the new selected key
+ */
+ public void setSelectedKey(int index) {
+ DeltaCloudKey key = null;
+ if (index < 0) {
+ index = 0;
+ }
+ if (index < keys.size()) {
+ key = keys.get(index);
+ }
+ setSelectedKey(key);
+ }
+
+ public List<DeltaCloudKey> getKeys() {
+ return keys;
+ }
+
+ public void setKeys(List<DeltaCloudKey> keys) {
+ firePropertyChange(PROP_KEYS, this.keys, this.keys = keys);
+ }
+
+ public DeltaCloudKey getKey(String keyId) {
+ if (keys == null
+ || keyId == null) {
+ return null;
+ }
+ DeltaCloudKey matchingKey = null;
+ for (DeltaCloudKey key : keys) {
+ if (keyId.equals(key.getId())) {
+ matchingKey = key;
+ break;
+ }
+ }
+ return matchingKey;
+ }
+
+ private void asyncGetKeys(final DeltaCloud cloud) {
+ // TODO: internationalize strings
+ new AbstractCloudElementJob("get keys", cloud, CLOUDELEMENT.KEYS) {
+
+ protected IStatus doRun(IProgressMonitor monitor) throws Exception {
+ try {
+ List<DeltaCloudKey> newKeys = new ArrayList<DeltaCloudKey>();
+ newKeys.addAll(Arrays.asList(cloud.getKeys()));
+ setKeys(newKeys);
+ setSelectedKey(null);
+ return Status.OK_STATUS;
+ } catch (DeltaCloudException e) {
+ // TODO: internationalize strings
+ return StatusFactory.getInstance(IStatus.ERROR, Activator.PLUGIN_ID,
+ MessageFormat.format("Could not get keys from cloud {0}", cloud.getName()), e);
+ }
+ }
+
+ }.schedule();
+ }
+
+}
Property changes on: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/ManageKeysPageModel.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/WizardMessages.properties
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/WizardMessages.properties 2010-12-24 15:51:33 UTC (rev 27715)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/WizardMessages.properties 2010-12-24 15:53:07 UTC (rev 27716)
@@ -88,7 +88,7 @@
NewInstance.title=Launch Instance
NewInstance.name=Launch Instance
-ManageKeys.desc=Select a physical key to use when creating an instance so that it may be accessed remotely.
+ManageKeys.desc=Select a key to use when creating an instance so that it may be accessed remotely.
ManageKeys.title=Manage Keys
ManageKeys.name=Manage Keys
15 years
JBoss Tools SVN: r27715 - trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/wizards.
by jbosstools-commits@lists.jboss.org
Author: vyemialyanchyk
Date: 2010-12-24 10:51:33 -0500 (Fri, 24 Dec 2010)
New Revision: 27715
Modified:
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/wizards/NewConfigurationWizardPage.java
Log:
https://issues.jboss.org/browse/JBIDE-7995 - fixed
Modified: trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/wizards/NewConfigurationWizardPage.java
===================================================================
--- trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/wizards/NewConfigurationWizardPage.java 2010-12-24 14:58:28 UTC (rev 27714)
+++ trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/wizards/NewConfigurationWizardPage.java 2010-12-24 15:51:33 UTC (rev 27715)
@@ -28,6 +28,7 @@
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.wizard.WizardPage;
import org.eclipse.swt.SWT;
+import org.eclipse.swt.custom.ScrolledComposite;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.events.SelectionEvent;
@@ -116,7 +117,11 @@
};
- Composite container = new Composite(parent, SWT.NULL);
+ final ScrolledComposite sc = new ScrolledComposite(parent, SWT.H_SCROLL | SWT.V_SCROLL);
+ sc.setExpandHorizontal(true);
+ sc.setExpandVertical(true);
+ Composite container = new Composite(sc, SWT.NULL);
+ sc.setContent(container);
GridLayout layout = new GridLayout();
container.setLayout(layout);
layout.numColumns = 2;
@@ -227,11 +232,13 @@
createConsoleConfiguration.setLayoutData(gd);
createConsoleConfiguration.setText(HibernateConsoleMessages.NewConfigurationWizardPage_create_console_configuration);
createConsoleConfiguration.addSelectionListener(selectionListener);
+
+ sc.setMinSize(container.computeSize(SWT.DEFAULT, SWT.DEFAULT));
initialize();
dialogChanged();
- setControl(container);
+ setControl(sc);
}
/**
15 years
JBoss Tools SVN: r27714 - trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/views.
by jbosstools-commits@lists.jboss.org
Author: vyemialyanchyk
Date: 2010-12-24 09:58:28 -0500 (Fri, 24 Dec 2010)
New Revision: 27714
Added:
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/views/ConfigurationPropertySource.java
Modified:
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/views/ConsoleConfigurationPropertySourceProvider.java
Log:
https://issues.jboss.org/browse/JBIDE-7990 - fixed
Added: trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/views/ConfigurationPropertySource.java
===================================================================
--- trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/views/ConfigurationPropertySource.java (rev 0)
+++ trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/views/ConfigurationPropertySource.java 2010-12-24 14:58:28 UTC (rev 27714)
@@ -0,0 +1,65 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributor:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.hibernate.eclipse.console.views;
+
+import java.util.Map;
+import java.util.Properties;
+
+import org.eclipse.ui.views.properties.IPropertyDescriptor;
+import org.eclipse.ui.views.properties.IPropertySource;
+import org.eclipse.ui.views.properties.PropertyDescriptor;
+import org.hibernate.cfg.Configuration;
+
+/**
+ * Responsible to provide Hibernate configuration
+ * properties for Properties View.
+ * Properties are not editable - just to view.
+ *
+ * @author Vitali Yemialyanchyk
+ */
+public class ConfigurationPropertySource implements IPropertySource {
+
+ private Configuration cfg;
+
+ public ConfigurationPropertySource(Configuration cfg) {
+ this.cfg = cfg;
+ }
+
+ public Object getEditableValue() {
+ return null;
+ }
+
+ @SuppressWarnings("rawtypes")
+ public IPropertyDescriptor[] getPropertyDescriptors() {
+ final Properties props = cfg.getProperties();
+ IPropertyDescriptor[] propertyDescriptors = new IPropertyDescriptor[props.size()];
+ int i = 0;
+ for (Map.Entry prop : props.entrySet()) {
+ propertyDescriptors[i++] = new PropertyDescriptor(prop.getKey(), prop.getKey().toString());
+ }
+ return propertyDescriptors;
+ }
+
+ public Object getPropertyValue(Object id) {
+ final Properties props = cfg.getProperties();
+ return props.get(id);
+ }
+
+ public boolean isPropertySet(Object id) {
+ return true;
+ }
+
+ public void resetPropertyValue(Object id) {
+ }
+
+ public void setPropertyValue(Object id, Object value) {
+ }
+}
Modified: trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/views/ConsoleConfigurationPropertySourceProvider.java
===================================================================
--- trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/views/ConsoleConfigurationPropertySourceProvider.java 2010-12-23 19:16:56 UTC (rev 27713)
+++ trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/views/ConsoleConfigurationPropertySourceProvider.java 2010-12-24 14:58:28 UTC (rev 27714)
@@ -24,6 +24,7 @@
import org.eclipse.core.runtime.Platform;
import org.eclipse.ui.views.properties.IPropertySource;
import org.eclipse.ui.views.properties.IPropertySourceProvider;
+import org.hibernate.cfg.Configuration;
import org.hibernate.console.ConsoleConfiguration;
public class ConsoleConfigurationPropertySourceProvider implements
@@ -36,6 +37,9 @@
if (object instanceof ConsoleConfiguration) {
return new ConsoleConfigurationPropertySource((ConsoleConfiguration)object);
}
+ if (object instanceof Configuration) {
+ return new ConfigurationPropertySource((Configuration)object);
+ }
return (IPropertySource) Platform.getAdapterManager().getAdapter(object, IPropertySource.class);
}
15 years
JBoss Tools SVN: r27713 - trunk/jst/plugins/org.jboss.tools.jst.jsp.
by jbosstools-commits@lists.jboss.org
Author: dgolovin
Date: 2010-12-23 14:16:56 -0500 (Thu, 23 Dec 2010)
New Revision: 27713
Modified:
trunk/jst/plugins/org.jboss.tools.jst.jsp/plugin.xml
Log:
https://issues.jboss.org/browse/JBIDE-7077 Open With -> JBoss Tools -> "JBoss Tools Docbook Editor" - exist in context menu for every xml file
docbook editor removed from plugin.xml. issue moved to 4.0.x
Modified: trunk/jst/plugins/org.jboss.tools.jst.jsp/plugin.xml
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.jsp/plugin.xml 2010-12-23 15:55:04 UTC (rev 27712)
+++ trunk/jst/plugins/org.jboss.tools.jst.jsp/plugin.xml 2010-12-23 19:16:56 UTC (rev 27713)
@@ -209,14 +209,14 @@
<contentTypeBinding contentTypeId="org.eclipse.wst.html.core.htmlsource"/>
<contentTypeBinding contentTypeId="jsf.facelet"/>
</editor>
- <editor
+ <!--editor
class="org.jboss.tools.jst.jsp.jspeditor.JSPMultiPageEditor"
contributorClass="org.jboss.tools.jst.jsp.jspeditor.JSPMultiPageContributor"
extensions="xml"
icon="$nl$/images/xstudio/editors/xmldoc.gif"
id="org.jboss.tools.jst.jsp.jspeditor.DocBookEditor"
name="%editors.docbook.name">
- </editor>
+ </editor -->
</extension>
<extension point="org.eclipse.ui.editorActions">
15 years
JBoss Tools SVN: r27712 - trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker.
by jbosstools-commits@lists.jboss.org
Author: dazarov
Date: 2010-12-23 10:55:04 -0500 (Thu, 23 Dec 2010)
New Revision: 27712
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllDisposerAnnotationsProcessor.java
trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllInjectedConstructorsProcessor.java
trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/MarkerResolutionRefactoringProcessor.java
Log:
https://issues.jboss.org/browse/JBIDE-7988
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllDisposerAnnotationsProcessor.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllDisposerAnnotationsProcessor.java 2010-12-23 14:53:19 UTC (rev 27711)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllDisposerAnnotationsProcessor.java 2010-12-23 15:55:04 UTC (rev 27712)
@@ -18,11 +18,8 @@
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.OperationCanceledException;
import org.eclipse.jdt.core.IMethod;
-import org.eclipse.ltk.core.refactoring.CompositeChange;
import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.core.refactoring.TextFileChange;
import org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext;
-import org.eclipse.text.edits.MultiTextEdit;
import org.eclipse.text.edits.ReplaceEdit;
import org.eclipse.text.edits.TextEdit;
import org.jboss.tools.cdi.core.CDIConstants;
@@ -71,13 +68,8 @@
CheckConditionsContext context) throws CoreException,
OperationCanceledException {
- rootChange = new CompositeChange(label);
- change = new TextFileChange(file.getName(), file);
- change.setSaveMode(TextFileChange.LEAVE_DIRTY);
- MultiTextEdit root = new MultiTextEdit();
- change.setEdit(root);
- rootChange.add(change);
-
+ createRootChange();
+
if(bean != null)
changeDisposers(bean);
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllInjectedConstructorsProcessor.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllInjectedConstructorsProcessor.java 2010-12-23 14:53:19 UTC (rev 27711)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllInjectedConstructorsProcessor.java 2010-12-23 15:55:04 UTC (rev 27712)
@@ -10,7 +10,6 @@
******************************************************************************/
package org.jboss.tools.cdi.ui.marker;
-import java.text.MessageFormat;
import java.util.HashSet;
import java.util.Set;
@@ -19,11 +18,8 @@
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.OperationCanceledException;
import org.eclipse.jdt.core.IMethod;
-import org.eclipse.ltk.core.refactoring.CompositeChange;
import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.core.refactoring.TextFileChange;
import org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext;
-import org.eclipse.text.edits.MultiTextEdit;
import org.eclipse.text.edits.ReplaceEdit;
import org.eclipse.text.edits.TextEdit;
import org.jboss.tools.cdi.core.CDIConstants;
@@ -63,12 +59,7 @@
CheckConditionsContext context) throws CoreException,
OperationCanceledException {
- rootChange = new CompositeChange(label);
- change = new TextFileChange(file.getName(), file);
- change.setSaveMode(TextFileChange.LEAVE_DIRTY);
- MultiTextEdit root = new MultiTextEdit();
- change.setEdit(root);
- rootChange.add(change);
+ createRootChange();
if(bean != null)
changeConstructors(bean);
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/MarkerResolutionRefactoringProcessor.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/MarkerResolutionRefactoringProcessor.java 2010-12-23 14:53:19 UTC (rev 27711)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/MarkerResolutionRefactoringProcessor.java 2010-12-23 15:55:04 UTC (rev 27712)
@@ -18,6 +18,7 @@
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.OperationCanceledException;
import org.eclipse.jdt.core.IMethod;
+import org.eclipse.jdt.internal.ui.javaeditor.EditorUtility;
import org.eclipse.ltk.core.refactoring.Change;
import org.eclipse.ltk.core.refactoring.CompositeChange;
import org.eclipse.ltk.core.refactoring.RefactoringStatus;
@@ -26,12 +27,17 @@
import org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor;
import org.eclipse.ltk.core.refactoring.participants.SharableParticipants;
import org.eclipse.ltk.internal.core.refactoring.Messages;
+import org.eclipse.text.edits.MultiTextEdit;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IWorkbenchWindow;
import org.jboss.tools.cdi.core.CDICoreMessages;
import org.jboss.tools.cdi.core.CDICoreNature;
import org.jboss.tools.cdi.core.CDICorePlugin;
import org.jboss.tools.cdi.core.IBean;
import org.jboss.tools.cdi.core.ICDIProject;
import org.jboss.tools.cdi.core.IClassBean;
+import org.jboss.tools.cdi.ui.CDIUIPlugin;
public abstract class MarkerResolutionRefactoringProcessor extends RefactoringProcessor {
protected static final RefactoringParticipant[] EMPTY_REF_PARTICIPANT = new RefactoringParticipant[0];
@@ -51,6 +57,33 @@
this.label = label;
}
+ protected void createRootChange(){
+ rootChange = new CompositeChange(label);
+ change = new TextFileChange(file.getName(), file);
+
+ if(isEditorOpened())
+ change.setSaveMode(TextFileChange.LEAVE_DIRTY);
+ else
+ change.setSaveMode(TextFileChange.FORCE_SAVE);
+
+ MultiTextEdit root = new MultiTextEdit();
+ change.setEdit(root);
+ rootChange.add(change);
+ rootChange.markAsSynthetic();
+ }
+
+ private boolean isEditorOpened(){
+ IEditorInput ii = EditorUtility.getEditorInput(file);
+
+ IWorkbenchWindow[] windows = CDIUIPlugin.getDefault().getWorkbench().getWorkbenchWindows();
+ for(IWorkbenchWindow window : windows){
+ IEditorPart editor = window.getActivePage().findEditor(ii);
+ if(editor != null)
+ return true;
+ }
+ return false;
+ }
+
private IClassBean findClassBean(){
CDICoreNature cdiNature = CDICorePlugin.getCDI(file.getProject(), true);
if(cdiNature == null)
15 years
JBoss Tools SVN: r27711 - in trunk/as/plugins/org.jboss.ide.eclipse.as.ui: jbossui/org/jboss/ide/eclipse/as/ui and 1 other directories.
by jbosstools-commits@lists.jboss.org
Author: scabanovich
Date: 2010-12-23 09:53:19 -0500 (Thu, 23 Dec 2010)
New Revision: 27711
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.ui/META-INF/MANIFEST.MF
trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/Messages.java
trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/Messages.properties
trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/actions/ChangeTimeStampActionDelegate.java
Log:
JBIDE-7854
https://issues.jboss.org/browse/JBIDE-7854
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.ui/META-INF/MANIFEST.MF
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.ui/META-INF/MANIFEST.MF 2010-12-23 13:58:06 UTC (rev 27710)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.ui/META-INF/MANIFEST.MF 2010-12-23 14:53:19 UTC (rev 27711)
@@ -24,6 +24,7 @@
org.eclipse.search;bundle-version="[3.5.0,4.0.0)",
org.eclipse.ui.forms;bundle-version="[3.4.0,4.0.0)",
org.eclipse.core.resources,
+ org.eclipse.jface,
com.ibm.icu,
org.eclipse.jst.server.ui,
org.eclipse.wst.server.core,
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/Messages.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/Messages.java 2010-12-23 13:58:06 UTC (rev 27710)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/Messages.java 2010-12-23 14:53:19 UTC (rev 27711)
@@ -236,6 +236,9 @@
public static String RequiredCredentialsDialog_IgnoreButton;
public static String RequiredCredentialsDialog_ShellText;
+
+ public static String ChangeTimestampServerListDialog_Title;
+ public static String ChangeTimestampServerListDialog_Message;
static {
NLS.initializeMessages(BUNDLE_NAME,
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/Messages.properties
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/Messages.properties 2010-12-23 13:58:06 UTC (rev 27710)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/Messages.properties 2010-12-23 14:53:19 UTC (rev 27711)
@@ -207,3 +207,8 @@
RequiredCredentialsDialog_IgnoreButton=Ignore
RequiredCredentialsDialog_ShellText=Server Credentials Required
+
+#Change Timestamp
+ChangeTimestampServerListDialog_Title=Touch project
+ChangeTimestampServerListDialog_Message=Project {0} has no files to touch.\nSelect servers in which to republish the project.
+
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/actions/ChangeTimeStampActionDelegate.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/actions/ChangeTimeStampActionDelegate.java 2010-12-23 13:58:06 UTC (rev 27710)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/actions/ChangeTimeStampActionDelegate.java 2010-12-23 14:53:19 UTC (rev 27711)
@@ -10,29 +10,51 @@
******************************************************************************/
package org.jboss.ide.eclipse.as.ui.actions;
+
+import java.text.MessageFormat;
import java.util.ArrayList;
import java.util.List;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IWorkspaceRunnable;
+import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.viewers.BaseLabelProvider;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.jface.viewers.Viewer;
import org.eclipse.jst.j2ee.internal.project.J2EEProjectUtilities;
import org.eclipse.jst.j2ee.project.JavaEEProjectUtilities;
import org.eclipse.osgi.util.NLS;
+import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.IWorkbenchWindowActionDelegate;
+import org.eclipse.ui.dialogs.CheckedTreeSelectionDialog;
+import org.eclipse.ui.dialogs.ElementListSelectionDialog;
import org.eclipse.wst.common.componentcore.ComponentCore;
import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
import org.eclipse.wst.common.project.facet.core.IFacetedProject;
import org.eclipse.wst.common.project.facet.core.IProjectFacet;
import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
+import org.eclipse.wst.server.core.IModule;
+import org.eclipse.wst.server.core.IServer;
+import org.eclipse.wst.server.core.IServerWorkingCopy;
+import org.eclipse.wst.server.core.ServerCore;
+import org.eclipse.wst.server.core.ServerUtil;
+import org.eclipse.wst.server.core.internal.ServerType;
+import org.jboss.ide.eclipse.as.ui.Messages;
import org.jboss.ide.eclipse.as.ui.JBossServerUIPlugin;
public class ChangeTimeStampActionDelegate implements IWorkbenchWindowActionDelegate {
@@ -99,6 +121,55 @@
f.setLocalTimeStamp(System.currentTimeMillis());
f.touch(new NullProgressMonitor()); // done so deployers/listeners can detect the actual change.
}
+ if(fs.isEmpty() && JavaEEProjectUtilities.isDynamicWebProject(project)) {
+ List<IServer> servers = getServers(project);
+
+ final IServer[] ss = servers.toArray(new IServer[0]);
+
+ final Object input = new Object();
+
+ Shell shell = JBossServerUIPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getShell();
+ CheckedTreeSelectionDialog dialog = new CheckedTreeSelectionDialog(shell, new LabelProvider(), new ITreeContentProvider() {
+ public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
+ }
+ public void dispose() {
+ }
+ public boolean hasChildren(Object element) {
+ return element == input;
+ }
+ public Object getParent(Object element) {
+ return null;
+ }
+ public Object[] getElements(Object inputElement) {
+ return ss;
+ }
+ public Object[] getChildren(Object parentElement) {
+ return null;
+ }
+ });
+ dialog.setInput(input);
+ dialog.setInitialSelections(ss);
+ String message = NLS.bind(Messages.ChangeTimestampServerListDialog_Message, project.getName());
+ dialog.setMessage(message);
+ dialog.create();
+ dialog.getShell().setText(Messages.ChangeTimestampServerListDialog_Title);
+
+ dialog.open();
+ Object[] os = dialog.getResult();
+
+ if(os == null || os.length == 0) {
+ return;
+ }
+
+ servers.clear();
+ for (Object s: os) {
+ if(s instanceof IServer) {
+ servers.add((IServer)s);
+ }
+ }
+
+ new RegisterServerJob(project, servers.toArray(new IServer[0])).schedule();
+ }
}
private static List<IFile> getFilesToTouch(IProject project) {
@@ -159,4 +230,130 @@
}
return false;
}
+
+ static List<IServer> getServers(IProject project) {
+ List<IServer> result = new ArrayList<IServer>();
+ IServer[] servers = ServerCore.getServers();
+ for (IServer s: servers) {
+ if(isRegistered(project, s)) {
+ result.add(s);
+ }
+ }
+ return result;
+ }
+
+ public static boolean isRegistered(IProject project, IServer server) {
+ if(server == null || project == null) return false;
+ IModule[] ms = server.getModules();
+ IModule m = findModule(project);
+ return (contains(ms, m));
+ }
+
+ public static IModule findModule(IProject project) {
+ // https://jira.jboss.org/jira/browse/JBIDE-3972
+ // There may be a few modules for resources from the same project.
+ // Ignore module with jboss.singlefile type if there are other module types.
+ IModule[] modules = ServerUtil.getModules(project);
+ if(modules != null && modules.length>0) {
+ for (int i = 0; i < modules.length; i++) {
+ if(!"jboss.singlefile".equals(modules[i].getModuleType().getId())) { //$NON-NLS-1$
+ return modules[i];
+ }
+ }
+ }
+ return null;
+ }
+
+ private static boolean contains(IModule[] modules, IModule module) {
+ if(modules == null || module == null) return false;
+ for (int i = 0; i < modules.length; i++) {
+ if(modules[i].getName() != null && modules[i].getName().equals(module.getName())) return true;
+ }
+ return false;
+ }
+
+ public static void register(IProject project, IServer server) {
+ if(server == null) return;
+ IModule m = findModule(project);
+ if(m == null) return;
+ if(contains(server.getModules(), m)) return;
+ IModule[] add = new IModule[]{m};
+ IModule[] remove = new IModule[0];
+ try {
+ IProgressMonitor monitor = new NullProgressMonitor();
+ IServerWorkingCopy copy = server.createWorkingCopy();
+ IStatus status = copy.canModifyModules(add, remove, monitor);
+ if(status != null && !status.isOK()) return;
+ ServerUtil.modifyModules(copy, add, remove, monitor);
+ copy.save(true, monitor);
+ if(canPublish(server)) {
+ server.publish(IServer.PUBLISH_INCREMENTAL, monitor);
+ }
+ } catch (CoreException e) {
+// WebModelPlugin.getPluginLog().logError(e);
+ }
+ }
+
+ public static boolean canPublish(IServer server) {
+ if(server == null || server.getRuntime() == null) return false;
+ if (((ServerType)server.getServerType()).startBeforePublish() &&
+ (server.getServerState() != IServer.STATE_STARTED)) {
+ return false;
+ }
+ return true;
+ }
+
+ public static boolean unregister(IProject project, IServer server) {
+ if(server == null) return false;
+ IModule m = findModule(project);
+ if(!contains(server.getModules(), m)) return false;
+ IModule[] add = new IModule[0];
+ IModule[] remove = new IModule[]{m};
+ try {
+ IProgressMonitor monitor = new NullProgressMonitor();
+ IServerWorkingCopy copy = server.createWorkingCopy();
+ ServerUtil.modifyModules(copy, add, remove, monitor);
+ copy.save(true, monitor);
+ if(canPublish(server)) {
+ server.publish(IServer.PUBLISH_INCREMENTAL, monitor);
+ }
+ } catch (CoreException e) {
+ e.printStackTrace();
+// WebModelPlugin.getPluginLog().logError(e);
+ }
+ return true;
+ }
+
+ private static class RegisterServerJob extends Job {
+ long counter = 100;
+ IProject project;
+ IServer[] servers;
+ public RegisterServerJob(IProject p, IServer[] servers) {
+ super("Touch");
+ this.project = p;
+ this.servers = servers;
+ }
+
+ protected IStatus run(IProgressMonitor monitor) {
+ try {
+ ResourcesPlugin.getWorkspace().run(new WR(), monitor);
+ } catch (CoreException e) {
+ e.printStackTrace();
+ }
+ return Status.OK_STATUS;
+ }
+
+ class WR implements IWorkspaceRunnable {
+ public void run(IProgressMonitor monitor) throws CoreException {
+ for (IServer s: servers) {
+ unregister(project, s);
+ }
+ for (IServer s: servers) {
+ register(project, s);
+ }
+ }
+
+ }
+ }
+
}
\ No newline at end of file
15 years
JBoss Tools SVN: r27710 - trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker.
by jbosstools-commits@lists.jboss.org
Author: dazarov
Date: 2010-12-23 08:58:06 -0500 (Thu, 23 Dec 2010)
New Revision: 27710
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllDisposerAnnotationsProcessor.java
trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllDisposerDuplicantMarkerResolution.java
trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllInjectedConstructorsMarkerResolution.java
trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllInjectedConstructorsProcessor.java
trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeletePreviewWizard.java
trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/MarkerResolutionRefactoringProcessor.java
Log:
https://issues.jboss.org/browse/JBIDE-7988
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllDisposerAnnotationsProcessor.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllDisposerAnnotationsProcessor.java 2010-12-23 10:36:30 UTC (rev 27709)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllDisposerAnnotationsProcessor.java 2010-12-23 13:58:06 UTC (rev 27710)
@@ -73,6 +73,7 @@
rootChange = new CompositeChange(label);
change = new TextFileChange(file.getName(), file);
+ change.setSaveMode(TextFileChange.LEAVE_DIRTY);
MultiTextEdit root = new MultiTextEdit();
change.setEdit(root);
rootChange.add(change);
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllDisposerDuplicantMarkerResolution.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllDisposerDuplicantMarkerResolution.java 2010-12-23 10:36:30 UTC (rev 27709)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllDisposerDuplicantMarkerResolution.java 2010-12-23 13:58:06 UTC (rev 27710)
@@ -17,7 +17,6 @@
import org.eclipse.jdt.core.IMethod;
import org.eclipse.ltk.core.refactoring.participants.ProcessorBasedRefactoring;
import org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor;
-import org.eclipse.ltk.ui.refactoring.RefactoringWizard;
import org.eclipse.ltk.ui.refactoring.RefactoringWizardOpenOperation;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.widgets.Shell;
@@ -47,16 +46,10 @@
public void run(IMarker marker) {
DeleteAllDisposerAnnotationsProcessor processor = new DeleteAllDisposerAnnotationsProcessor(file, method, label);
ProcessorBasedRefactoring refactoring = new ProcessorBasedRefactoring(processor);
- DeletePreviewWizard wizard = new DeletePreviewWizard(refactoring, RefactoringWizard.WIZARD_BASED_USER_INTERFACE);
+ DeletePreviewWizard wizard = new DeletePreviewWizard(refactoring);
RefactoringWizardOpenOperation op = new RefactoringWizardOpenOperation(wizard);
Shell shell = Workbench.getInstance().getActiveWorkbenchWindow().getShell();
- try {
- String titleForFailedChecks = CDIUIMessages.CDI_REFACTOR_CONTRIBUTOR_ERROR;
- op.run(shell, titleForFailedChecks);
- } catch (final InterruptedException irex) {
- // operation was canceled
- }
-
+ wizard.showWizard();
}
public RefactoringProcessor getRefactoringProcessor(){
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllInjectedConstructorsMarkerResolution.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllInjectedConstructorsMarkerResolution.java 2010-12-23 10:36:30 UTC (rev 27709)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllInjectedConstructorsMarkerResolution.java 2010-12-23 13:58:06 UTC (rev 27710)
@@ -57,16 +57,9 @@
public void run(IMarker marker) {
DeleteAllInjectedConstructorsProcessor processor = new DeleteAllInjectedConstructorsProcessor(file, method, label);
ProcessorBasedRefactoring refactoring = new ProcessorBasedRefactoring(processor);
- DeletePreviewWizard wizard = new DeletePreviewWizard(refactoring, RefactoringWizard.WIZARD_BASED_USER_INTERFACE);
+ DeletePreviewWizard wizard = new DeletePreviewWizard(refactoring);
RefactoringWizardOpenOperation op = new RefactoringWizardOpenOperation(wizard);
- Shell shell = Workbench.getInstance().getActiveWorkbenchWindow().getShell();
- try {
- String titleForFailedChecks = CDIUIMessages.CDI_REFACTOR_CONTRIBUTOR_ERROR;
- op.run(shell, titleForFailedChecks);
- } catch (final InterruptedException irex) {
- // operation was canceled
- }
-
+ wizard.showWizard();
}
public RefactoringProcessor getRefactoringProcessor(){
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllInjectedConstructorsProcessor.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllInjectedConstructorsProcessor.java 2010-12-23 10:36:30 UTC (rev 27709)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeleteAllInjectedConstructorsProcessor.java 2010-12-23 13:58:06 UTC (rev 27710)
@@ -65,6 +65,7 @@
rootChange = new CompositeChange(label);
change = new TextFileChange(file.getName(), file);
+ change.setSaveMode(TextFileChange.LEAVE_DIRTY);
MultiTextEdit root = new MultiTextEdit();
change.setEdit(root);
rootChange.add(change);
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeletePreviewWizard.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeletePreviewWizard.java 2010-12-23 10:36:30 UTC (rev 27709)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/DeletePreviewWizard.java 2010-12-23 13:58:06 UTC (rev 27710)
@@ -10,17 +10,33 @@
******************************************************************************/
package org.jboss.tools.cdi.ui.marker;
+import org.eclipse.jdt.internal.ui.refactoring.actions.RefactoringStarter;
+import org.eclipse.jdt.ui.refactoring.RefactoringSaveHelper;
import org.eclipse.ltk.core.refactoring.Refactoring;
import org.eclipse.ltk.ui.refactoring.RefactoringWizard;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PlatformUI;
public class DeletePreviewWizard extends RefactoringWizard {
- public DeletePreviewWizard(Refactoring refactoring, int flags) {
- super(refactoring, flags);
+ public DeletePreviewWizard(Refactoring refactoring) {
+ super(refactoring, RefactoringWizard.WIZARD_BASED_USER_INTERFACE);
+ //setForcePreviewReview(false);
}
@Override
protected void addUserInputPages() {
}
+
+ public boolean showWizard() {
+ final IWorkbenchWindow win = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
+ final Shell shell = win.getShell();
+ final RefactoringStarter refactoringStarter = new RefactoringStarter();
+ boolean res = refactoringStarter.activate(this, shell, getWindowTitle(), RefactoringSaveHelper.SAVE_ALL);
+ //RefactoringStatus rs = refactoringStarter.getInitialConditionCheckingStatus();
+ return res;
+ }
+
}
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/MarkerResolutionRefactoringProcessor.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/MarkerResolutionRefactoringProcessor.java 2010-12-23 10:36:30 UTC (rev 27709)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/marker/MarkerResolutionRefactoringProcessor.java 2010-12-23 13:58:06 UTC (rev 27710)
@@ -88,7 +88,7 @@
@Override
public Object[] getElements() {
- return null;
+ return new Object[]{file};
}
@Override
15 years