Skip to main content

This CGIT instance is deprecated, and repositories have been moved to Gitlab or Github. See the repository descriptions for specific locations.

summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpmoogk2006-08-09 14:54:43 +0000
committerpmoogk2006-08-09 14:54:43 +0000
commit9b15c27c2d7a97e14f9e9b5fb98d6381e2343d47 (patch)
treea70bd4c9c01d940baa45d688810be71588017f39 /bundles
parente36d129a8b206e06048ac256872115bf6d13d50a (diff)
downloadwebtools.webservices-9b15c27c2d7a97e14f9e9b5fb98d6381e2343d47.tar.gz
webtools.webservices-9b15c27c2d7a97e14f9e9b5fb98d6381e2343d47.tar.xz
webtools.webservices-9b15c27c2d7a97e14f9e9b5fb98d6381e2343d47.zip
[152486] Typing WSDL in Service definition field is very slow
Diffstat (limited to 'bundles')
-rw-r--r--bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/ClientWizardWidget.java8
-rw-r--r--bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/object/Timer.java17
-rw-r--r--bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/object/WSDLSelectionWidget.java12
-rw-r--r--bundles/org.eclipse.jst.ws.creation.ui/src/org/eclipse/jst/ws/internal/creation/ui/widgets/ServerWizardWidget.java8
4 files changed, 29 insertions, 16 deletions
diff --git a/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/ClientWizardWidget.java b/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/ClientWizardWidget.java
index e042aa599..e45f44817 100644
--- a/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/ClientWizardWidget.java
+++ b/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/ClientWizardWidget.java
@@ -80,6 +80,8 @@ public class ClientWizardWidget extends SimpleWidgetDataContributor implements R
private boolean validObjectSelection_ = true;
private WSDLSelectionWidgetWrapper wsdlValidatorWidget_;
+ private Timer timer_ = null;
+
/* CONTEXT_ID WSWSCEN0020 for the Service Implemenation text field of the Scenario Page */
private String INFOPOP_WSWSCEN_TEXT_SERVICE_IMPL = "WSWSCEN0020";
@@ -119,8 +121,10 @@ public class ClientWizardWidget extends SimpleWidgetDataContributor implements R
objectModifyListener_ = new ModifyListener(){
public void modifyText(ModifyEvent e) {
- if (serviceImpl_.getText().indexOf(':') > 0)
- Timer.newInstance(Display.getCurrent(), ClientWizardWidget.this).startTimer();
+ if (serviceImpl_.getText().indexOf(':') > 0) {
+ timer_ = Timer.newInstance(timer_, Display.getCurrent(), ClientWizardWidget.this);
+ timer_.startTimer();
+ }
else
run();
}
diff --git a/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/object/Timer.java b/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/object/Timer.java
index 4db0a341c..325f088e9 100644
--- a/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/object/Timer.java
+++ b/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/object/Timer.java
@@ -15,9 +15,9 @@ import org.eclipse.swt.widgets.Display;
public class Timer extends Thread
{
- private static Timer instance = null;
private final long ONE_SECOND = 1000;
private long refreshTime;
+ private boolean isRunning = true;
private Display display;
private Runnable runnable;
@@ -27,16 +27,17 @@ public class Timer extends Thread
this.runnable = runnable;
}
- public synchronized static Timer newInstance(Display display, Runnable runnable)
+ public synchronized static Timer newInstance(Timer timer, Display display, Runnable runnable)
{
- if (instance == null)
- instance = new Timer(display, runnable);
- return instance;
+ if (!Timer.isRunning(timer))
+ return new Timer(display, runnable);
+
+ return timer;
}
- public synchronized static boolean isRunning()
+ public synchronized static boolean isRunning(Timer timer)
{
- return instance != null;
+ return timer != null && timer.isRunning;
}
public synchronized void startTimer()
@@ -65,7 +66,7 @@ public class Timer extends Thread
}
currTime = getCurrentTime();
}
- instance = null;
+ isRunning = false;
display.syncExec(runnable);
}
} \ No newline at end of file
diff --git a/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/object/WSDLSelectionWidget.java b/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/object/WSDLSelectionWidget.java
index cea8ff0f8..2513a1cb6 100644
--- a/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/object/WSDLSelectionWidget.java
+++ b/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/object/WSDLSelectionWidget.java
@@ -85,6 +85,8 @@ public class WSDLSelectionWidget extends AbstractObjectSelectionWidget implement
private Listener statusListener_;
private WSDLSelectionTreeWidget tree;
+ private Timer timer_ = null;
+
/*CONTEXT_ID PCON0001 for the WSDL Selection Page*/
private final String INFOPOP_PCON_PAGE = "PCON0001";
@@ -240,8 +242,10 @@ public class WSDLSelectionWidget extends AbstractObjectSelectionWidget implement
private void handleWebServiceURIModifyEvent()
{
- if (webServiceURI.getText().indexOf(':') > 0)
- Timer.newInstance(Display.getCurrent(), this).startTimer();
+ if (webServiceURI.getText().indexOf(':') > 0) {
+ timer_ = Timer.newInstance(timer_, Display.getCurrent(), this);
+ timer_.startTimer();
+ }
else
handleWebServiceURI();
statusListener_.handleEvent(null);
@@ -356,7 +360,7 @@ public class WSDLSelectionWidget extends AbstractObjectSelectionWidget implement
// Validate the content of the Web service URI
// For example, is selection a WSDL URI?
- if (!Timer.isRunning() && tree.isEnabled())
+ if (!Timer.isRunning(timer_) && tree.isEnabled())
{
IStatus status = tree.getStatus();
if (status != null)
@@ -381,7 +385,7 @@ public class WSDLSelectionWidget extends AbstractObjectSelectionWidget implement
}
- if (!Timer.isRunning()) {
+ if (!Timer.isRunning(timer_)) {
String wsdlURI1 = wsPath;
boolean isRemote = true;
if (tree.isEnabled()) { // is wsil
diff --git a/bundles/org.eclipse.jst.ws.creation.ui/src/org/eclipse/jst/ws/internal/creation/ui/widgets/ServerWizardWidget.java b/bundles/org.eclipse.jst.ws.creation.ui/src/org/eclipse/jst/ws/internal/creation/ui/widgets/ServerWizardWidget.java
index 83c6a43d9..5cde57115 100644
--- a/bundles/org.eclipse.jst.ws.creation.ui/src/org/eclipse/jst/ws/internal/creation/ui/widgets/ServerWizardWidget.java
+++ b/bundles/org.eclipse.jst.ws.creation.ui/src/org/eclipse/jst/ws/internal/creation/ui/widgets/ServerWizardWidget.java
@@ -189,6 +189,8 @@ public class ServerWizardWidget extends SimpleWidgetDataContributor implements R
private ResourceContext resourceContext_;
+ private Timer timer_ = null;
+
private String GRAPHIC_SERVICE_0="icons/service_test.jpg"; //$NON-NLS-N$
private String GRAPHIC_SERVICE_1="icons/service_run.jpg"; //$NON-NLS-N$
private String GRAPHIC_SERVICE_2="icons/service_install.jpg"; //$NON-NLS-N$
@@ -331,8 +333,10 @@ public class ServerWizardWidget extends SimpleWidgetDataContributor implements R
objectModifyListener_ = new ModifyListener(){
public void modifyText(ModifyEvent e) {
- if (serviceImpl_.getText().indexOf(':') > 0)
- Timer.newInstance(Display.getCurrent(), ServerWizardWidget.this).startTimer();
+ if (serviceImpl_.getText().indexOf(':') > 0) {
+ timer_ = Timer.newInstance(timer_, Display.getCurrent(), ServerWizardWidget.this);
+ timer_.startTimer();
+ }
else
run();
}

Back to the top