You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@netbeans.apache.org by jt...@apache.org on 2020/12/27 20:04:52 UTC
[netbeans-html4j] 01/04: Use
-Dorg.netbeans.html.Generic.wait4js=true to always wait for JavaScript
execution to finish
This is an automated email from the ASF dual-hosted git repository.
jtulach pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/netbeans-html4j.git
commit ece738df357347cf9087d4538861ba6a47f837e9
Author: Jaroslav Tulach <ja...@apidesign.org>
AuthorDate: Sun Dec 27 07:40:57 2020 +0100
Use -Dorg.netbeans.html.Generic.wait4js=true to always wait for JavaScript execution to finish
---
.travis.yml | 2 +-
generic/pom.xml | 11 +++++++++++
.../main/java/org/netbeans/html/presenters/spi/Generic.java | 7 ++++++-
.../netbeans/html/presenters/spi/ProtoPresenterBuilder.java | 3 +++
4 files changed, 21 insertions(+), 2 deletions(-)
diff --git a/.travis.yml b/.travis.yml
index 99f3300..cfa050e 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -32,7 +32,7 @@ before_script:
script:
- $JAVA_HOME/bin/java -version
- mvn install -DskipTests $ARGS
- - mvn -q verify $ARGS
+ - mvn -q verify $ARGS -Dorg.netbeans.html.Generic.wait4js=true
- if [ -n "$JAVADOC" ]; then mvn javadoc:aggregate; fi
matrix:
diff --git a/generic/pom.xml b/generic/pom.xml
index 09b34a5..6500712 100644
--- a/generic/pom.xml
+++ b/generic/pom.xml
@@ -36,6 +36,7 @@
<publicPackages>org.netbeans.html.presenters.spi</publicPackages>
<publicMetaInf/>
<sigtestPackages/>
+ <wait4js>false</wait4js>
</properties>
<dependencies>
@@ -95,6 +96,16 @@
</configuration>
</plugin>
<plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <systemPropertyVariables>
+ <org.netbeans.html.Generic.wait4js>${wait4js}</org.netbeans.html.Generic.wait4js>
+ </systemPropertyVariables>
+ <skip>false</skip>
+ </configuration>
+ </plugin>
+ <plugin>
<groupId>org.netbeans.html</groupId>
<artifactId>html4j-maven-plugin</artifactId>
<executions>
diff --git a/generic/src/main/java/org/netbeans/html/presenters/spi/Generic.java b/generic/src/main/java/org/netbeans/html/presenters/spi/Generic.java
index 3a6a331..473749c 100644
--- a/generic/src/main/java/org/netbeans/html/presenters/spi/Generic.java
+++ b/generic/src/main/java/org/netbeans/html/presenters/spi/Generic.java
@@ -67,6 +67,7 @@ abstract class Generic implements Fn.Presenter, Fn.KeepAlive, Flushable {
this.evalJS = evalJS;
this.type = type;
this.app = app;
+ this.resetDeferredDisabled();
}
final Object lock() {
@@ -764,11 +765,15 @@ abstract class Generic implements Fn.Presenter, Fn.KeepAlive, Flushable {
exec(id, Strings.flushExec(key, id).toString());
}
if (topMostCall() == null) {
- deferredDisabled = false;
+ resetDeferredDisabled();
}
}
}
+ private void resetDeferredDisabled() {
+ deferredDisabled = Boolean.getBoolean("org.netbeans.html.Generic.wait4js");
+ }
+
final Object exec(int id, String fn) {
assert Thread.holdsLock(lock());
boolean first;
diff --git a/generic/src/main/java/org/netbeans/html/presenters/spi/ProtoPresenterBuilder.java b/generic/src/main/java/org/netbeans/html/presenters/spi/ProtoPresenterBuilder.java
index f56b56b..cc79a20 100644
--- a/generic/src/main/java/org/netbeans/html/presenters/spi/ProtoPresenterBuilder.java
+++ b/generic/src/main/java/org/netbeans/html/presenters/spi/ProtoPresenterBuilder.java
@@ -26,6 +26,9 @@ import org.netbeans.html.boot.spi.Fn.Presenter;
/** The <em>prototypical</em> presenter builder. Builds a {@link Presenter} based on
* top of textual protocol transferred between JVM and JavaScript engines.
+ * Supports one additional configuration property; by setting
+ * {@code org.netbeans.html.Generic.wait4js}
+ * to {@code true} one enables, more reliable, yet possibly slower, mode.
*/
public final class ProtoPresenterBuilder {
private Evaluator loadScript;
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists