Author: DartPeng
Date: 2008-11-20 21:11:55 -0500 (Thu, 20 Nov 2008)
New Revision: 11937
Added:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/IJavaBeanSelectionListener.java
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/JavaBeanConfigWizardPage.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/JavaBeanModelLoadComposite.java
Log:
JBIDE-3237
Add a listener to handle the exceptions that occur when added the JavaBean model.
Added:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/IJavaBeanSelectionListener.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/IJavaBeanSelectionListener.java
(rev 0)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/IJavaBeanSelectionListener.java 2008-11-21
02:11:55 UTC (rev 11937)
@@ -0,0 +1,12 @@
+/**
+ *
+ */
+package org.jboss.tools.smooks.javabean.ui;
+
+/**
+ * @author Dart
+ *
+ */
+public interface IJavaBeanSelectionListener {
+ public void exceptionOccur(Exception e);
+}
Property changes on:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/IJavaBeanSelectionListener.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/JavaBeanConfigWizardPage.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/JavaBeanConfigWizardPage.java 2008-11-21
01:50:50 UTC (rev 11936)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/JavaBeanConfigWizardPage.java 2008-11-21
02:11:55 UTC (rev 11937)
@@ -30,7 +30,7 @@
* @CreateTime Jul 21, 2008
*/
public class JavaBeanConfigWizardPage extends WizardPage implements
- SelectionListener {
+ SelectionListener ,IJavaBeanSelectionListener {
TreeViewer treeViewer;
@@ -73,7 +73,7 @@
try {
javaPropertySelectComposite = new JavaBeanModelLoadComposite(
parent, SWT.NONE, getContainer(), project);
-
+ javaPropertySelectComposite.addJavaBeanSelectionListener(this);
// Button button = new Button(cc, SWT.BORDER);
//
// final TreeViewer vi = new TreeViewer(cc, SWT.NONE);
@@ -137,4 +137,8 @@
}
+ public void exceptionOccur(Exception e) {
+ this.setErrorMessage(e.toString());
+ }
+
}
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/JavaBeanModelLoadComposite.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/JavaBeanModelLoadComposite.java 2008-11-21
01:50:50 UTC (rev 11936)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/JavaBeanModelLoadComposite.java 2008-11-21
02:11:55 UTC (rev 11937)
@@ -11,10 +11,12 @@
package org.jboss.tools.smooks.javabean.ui;
import java.util.ArrayList;
+import java.util.Iterator;
import java.util.List;
import org.eclipse.jdt.core.IJavaProject;
import org.eclipse.jdt.core.IType;
+import org.eclipse.jdt.core.JavaModelException;
import org.eclipse.jdt.core.search.IJavaSearchScope;
import org.eclipse.jdt.internal.corext.util.JavaModelUtil;
import org.eclipse.jdt.internal.ui.search.JavaSearchScopeFactory;
@@ -65,6 +67,8 @@
protected JavaBeanModel currentRootJavaBeanModel = null;
protected JavaBeanModel returnJavaBeanModel = null;
+ private List<IJavaBeanSelectionListener> selectionListenerList = new
ArrayList<IJavaBeanSelectionListener>();
+
protected ProjectClassLoader loader = null;
private TableViewer listViewer;
@@ -103,6 +107,15 @@
return javabeanList;
}
+ public void addJavaBeanSelectionListener(IJavaBeanSelectionListener listener) {
+ this.selectionListenerList.add(listener);
+ }
+
+ public void removeJavaBeanSelectionListener(
+ IJavaBeanSelectionListener listener) {
+ this.selectionListenerList.remove(listener);
+ }
+
public void setJavabeanList(List<JavaBeanModel> javabeanList) {
this.javabeanList = javabeanList;
}
@@ -181,8 +194,8 @@
@Override
public Image getImage(Object element) {
if (element instanceof JavaBeanModel) {
- return SmooksUIActivator.getDefault().getImageRegistry().get(
- JavaImageConstants.IMAGE_JAVA_OBJECT);
+ return SmooksUIActivator.getDefault().getImageRegistry()
+ .get(JavaImageConstants.IMAGE_JAVA_OBJECT);
}
return super.getImage(element);
}
@@ -205,13 +218,13 @@
GridLayout buttonAreaLayout = new GridLayout();
buttonArea.setLayout(buttonAreaLayout);
- Button addButton = new Button(buttonArea, SWT.BORDER);
+ Button addButton = new Button(buttonArea, SWT.NONE);
addButton.setText("Add");
gd = new GridData(GridData.FILL_HORIZONTAL);
addButton.setLayoutData(gd);
addButton.addSelectionListener(this);
- Button removeButton = new Button(buttonArea, SWT.BORDER);
+ Button removeButton = new Button(buttonArea, SWT.NONE);
removeButton.setText("Remove");
gd = new GridData(GridData.FILL_HORIZONTAL);
removeButton.setLayoutData(gd);
@@ -250,6 +263,7 @@
IJavaSearchScope scope = JavaSearchScopeFactory.getInstance()
.createJavaProjectSearchScope(javaProject, true);
SelectionDialog dialog;
+ Exception exception = null;
try {
dialog = JavaUI.createTypeDialog(this.getShell(), runnableContext,
scope, IJavaElementSearchConstants.CONSIDER_CLASSES, false);
@@ -287,10 +301,17 @@
}
}
}
- } catch (Exception e) {
- // this.setErrorMessage("Error occurs!please see log file");
- e.printStackTrace();
+ } catch (Exception e){
+ exception = e;
}
+ if (exception != null) {
+ for (Iterator<IJavaBeanSelectionListener> iterator = this.selectionListenerList
+ .iterator(); iterator.hasNext();) {
+ IJavaBeanSelectionListener l = (IJavaBeanSelectionListener) iterator
+ .next();
+ l.exceptionOccur(exception);
+ }
+ }
}