diff --git a/java/gradle.htmlui/build.xml b/java/gradle.htmlui/build.xml
deleted file mode 100644
index 30a3b3ffbef6..000000000000
--- a/java/gradle.htmlui/build.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
- Builds, tests, and runs the project org.netbeans.modules.gradle.htmlui
-
-
diff --git a/java/gradle.htmlui/manifest.mf b/java/gradle.htmlui/manifest.mf
deleted file mode 100644
index 563350b44051..000000000000
--- a/java/gradle.htmlui/manifest.mf
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-AutoUpdate-Show-In-Client: true
-OpenIDE-Module: org.netbeans.modules.gradle.htmlui
-OpenIDE-Module-Layer: org/netbeans/modules/gradle/htmlui/resources/layer.xml
-OpenIDE-Module-Localizing-Bundle: org/netbeans/modules/gradle/htmlui/Bundle.properties
-OpenIDE-Module-Recommends: org.netbeans.modules.debugger.jpda.ui
-OpenIDE-Module-Specification-Version: 1.26
-
diff --git a/java/gradle.htmlui/nbproject/project.properties b/java/gradle.htmlui/nbproject/project.properties
deleted file mode 100644
index bd4c9fc1fd2a..000000000000
--- a/java/gradle.htmlui/nbproject/project.properties
+++ /dev/null
@@ -1,20 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-
-javac.release=17
-javac.compilerargs=-Xlint -Xlint:-serial
-is.eager=true
diff --git a/java/gradle.htmlui/nbproject/project.xml b/java/gradle.htmlui/nbproject/project.xml
deleted file mode 100644
index 64ef0149b27a..000000000000
--- a/java/gradle.htmlui/nbproject/project.xml
+++ /dev/null
@@ -1,145 +0,0 @@
-
-
-
- org.netbeans.modules.apisupport.project
-
-
- org.netbeans.modules.gradle.htmlui
-
-
- org.netbeans.api.templates
-
-
-
- 1.6.1
-
-
-
- org.netbeans.libs.freemarker
-
- 1
- 2.39
-
-
-
- org.netbeans.modules.gradle
-
-
-
- 2
- 2.0
-
-
-
- org.netbeans.modules.projectapi
-
-
-
- 1
- 1.71
-
-
-
- org.netbeans.modules.projectuiapi
-
-
-
- 1
- 1.98
-
-
-
- org.openide.dialogs
-
-
-
- 7.46
-
-
-
- org.openide.filesystems
-
-
-
- 9.14
-
-
-
- org.openide.loaders
-
-
-
- 7.72
-
-
-
- org.openide.nodes
-
-
-
- 7.50
-
-
-
- org.openide.util
-
-
-
- 9.11
-
-
-
- org.openide.util.lookup
-
-
-
- 8.37
-
-
-
- org.openide.util.ui
-
-
-
- 9.12
-
-
-
-
-
- unit
-
- org.netbeans.modules.nbjunit
-
-
-
-
- org.netbeans.modules.projectapi.nb
-
-
-
-
-
-
-
-
-
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/Bundle.properties b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/Bundle.properties
deleted file mode 100644
index 50db436afde9..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/Bundle.properties
+++ /dev/null
@@ -1,19 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-
-OpenIDE-Module-Name=DukeScript Gradle Project Wizard
-OpenIDE-Module-Display-Category=Gradle
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/DukeHTML.png b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/DukeHTML.png
deleted file mode 100644
index 6c317cff7895..000000000000
Binary files a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/DukeHTML.png and /dev/null differ
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/GradleArchetype.java b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/GradleArchetype.java
deleted file mode 100644
index 91f1437fc1e2..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/GradleArchetype.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.netbeans.modules.gradle.htmlui;
-
-import java.io.File;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import org.netbeans.modules.gradle.spi.newproject.TemplateOperation;
-import org.openide.filesystems.FileObject;
-import org.openide.filesystems.FileUtil;
-import org.openide.loaders.DataObject;
-import org.openide.loaders.DataObjectNotFoundException;
-import org.openide.util.Exceptions;
-import org.openide.util.MapFormat;
-
-public final class GradleArchetype {
- private final FileObject templates;
- private final File rootDir;
- private final Map params;
-
- public GradleArchetype(FileObject templates, File rootDir, Map params) {
- this.templates = templates;
- this.rootDir = rootDir;
- this.params = params;
- }
-
- public final void copyTemplates(TemplateOperation ops) {
- MapFormat mf = new MapFormat(params);
- mf.setLeftBrace("${"); // NOI18N
- mf.setRightBrace("}"); // NOI18N
- List projectDirs = new LinkedList<>();
- projectDirs.add(rootDir);
-
- Enumeration extends FileObject> en = templates.getChildren(true);
- while (en.hasMoreElements()) {
- FileObject template = en.nextElement();
- String relativePath = FileUtil.getRelativePath(templates, template);
- if (template.isFolder()) {
- File dir = new File(rootDir, relativePath);
- ops.createFolder(dir);
- Object projectAttr = template.getAttribute("project"); // NOI18N
- if (Boolean.TRUE == projectAttr) {
- projectDirs.add(dir);
- }
- } else if (template.isData()) {
- Object packageAttr = template.getAttribute("package"); // NOI18N
- if (packageAttr instanceof String) {
- String relativeParent = FileUtil.getRelativePath(templates, template.getParent());
- String packageName = mf.format(packageAttr);
- File sourceRoot = new File(rootDir, relativeParent);
- ops.createPackage(sourceRoot, packageName);
- File packageDir = new File(sourceRoot, packageName.replace('.', '/'));
-
- Map pparams = new HashMap<>(params);
- pparams.put("package", packageName); //NOI18N
- String templateName;
- try {
- templateName = DataObject.find(template).getName();
- } catch (DataObjectNotFoundException ex) {
- templateName = template.getNameExt();
- }
- copyDataTemplate(ops, template, new File(packageDir, templateName), pparams);
- } else {
- copyDataTemplate(ops, template, new File(rootDir, relativePath), params);
- }
- }
- }
- for (File projectDir : projectDirs) {
- ops.addProjectPreload(projectDir);
- }
- }
-
- private static void copyDataTemplate(TemplateOperation ops, FileObject template, File target, Map params) {
- Object importantAttr = template.getAttribute("important");
- if (importantAttr == Boolean.TRUE) {
- ops.openFromTemplate(template.getPath(), target, params);
- } else {
- ops.copyFromTemplate(template.getPath(), target, params);
- }
- }
-}
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/HtmlJavaApplicationProjectWizard.java b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/HtmlJavaApplicationProjectWizard.java
deleted file mode 100644
index 0d061c95ef1e..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/HtmlJavaApplicationProjectWizard.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.netbeans.modules.gradle.htmlui;
-
-import org.netbeans.modules.gradle.spi.newproject.SimpleGradleWizardIterator;
-import org.netbeans.modules.gradle.spi.newproject.TemplateOperation;
-import java.io.File;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.netbeans.spi.project.ui.support.CommonProjectActions;
-import org.openide.WizardDescriptor;
-import org.openide.filesystems.FileObject;
-import org.openide.loaders.TemplateWizard;
-import org.openide.util.NbBundle.Messages;
-
-@Messages("template.htmlUIProject=Java Frontend Application")
-public class HtmlJavaApplicationProjectWizard extends SimpleGradleWizardIterator {
- private static final String DEFAULT_LICENSE_TEMPLATE = "/Templates/Licenses/license-default.txt"; //NOI18N
-
- @Messages("LBL_FrontendApplicationProject=Java Frontend Application with Gradle")
- public HtmlJavaApplicationProjectWizard() {
- super(Bundle.LBL_FrontendApplicationProject(), initParams());
- }
-
- private static Map initParams() {
- Map params = new HashMap<>();
- return params;
- }
-
- @Override
- protected List extends WizardDescriptor.Panel> createPanels() {
- return Collections.singletonList(createProjectAttributesPanel(null));
- }
-
- @Override
- protected void collectOperations(TemplateOperation ops, Map params) {
- String name = (String) params.get(PROP_NAME);
- File loc = (File) params.get(CommonProjectActions.PROJECT_PARENT_FOLDER);
-
- File rootDir = new File(loc, name);
- params.put(PROP_PROJECT_ROOT, rootDir);
-
- ops.createFolder(rootDir);
-
- FileObject folder = readKey(params, "template", FileObject.class); // NOI18N
- if (folder == null) {
- folder = ((TemplateWizard)this.getData()).getTemplate().getPrimaryFile();
- }
- GradleArchetype ga = new GradleArchetype(folder, rootDir, params);
- ga.copyTemplates(ops);
-
- Boolean initWrapper = (Boolean) params.get(PROP_INIT_WRAPPER);
- if (initWrapper == null || initWrapper) {
- ops.addWrapperInit(rootDir);
- }
- }
-
- private static T readKey(Map map, String key, Class type) {
- Object obj = map.get(key);
- return type.isInstance(obj) ? type.cast(obj) : null;
- }
-
- public static class DummyProject {
- public String getLicensePath() {
- return DEFAULT_LICENSE_TEMPLATE;
- }
- }
-
-}
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/HtmlJavaPagesNodeFactory.java b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/HtmlJavaPagesNodeFactory.java
deleted file mode 100644
index a139619ed6d7..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/HtmlJavaPagesNodeFactory.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.netbeans.modules.gradle.htmlui;
-
-import java.awt.Image;
-import org.netbeans.modules.gradle.api.NbGradleProject;
-import org.netbeans.modules.gradle.spi.nodes.AbstractGradleNodeList;
-import java.beans.PropertyChangeEvent;
-import java.beans.PropertyChangeListener;
-import java.util.Collections;
-import java.util.List;
-import javax.swing.event.ChangeListener;
-import org.netbeans.api.project.Project;
-import org.netbeans.spi.project.ui.support.NodeFactory;
-import org.netbeans.spi.project.ui.support.NodeList;
-import org.openide.filesystems.FileObject;
-import org.openide.loaders.DataFolder;
-import org.openide.nodes.FilterNode;
-import org.openide.nodes.Node;
-import org.openide.util.ImageUtilities;
-import org.openide.util.NbBundle;
-
-@NbBundle.Messages({
- "MSG_HtmlJavaPages=Frontend UI Pages"
-})
-@NodeFactory.Registration(projectType = NbGradleProject.GRADLE_PROJECT_TYPE, position = 77)
-public final class HtmlJavaPagesNodeFactory implements NodeFactory {
-
- @Override
- public NodeList> createNodes(Project p) {
- return new HtmlJavaPagesList(p);
- }
-
- private static class HtmlJavaPagesList extends AbstractGradleNodeList implements PropertyChangeListener {
-
- final Project project;
-
- HtmlJavaPagesList(Project project) {
- this.project = project;
- }
-
- @Override
- public List keys() {
- FileObject pages = project.getProjectDirectory().getFileObject("src/main/webapp/pages"); // NOI18N
- return pages != null ? Collections.singletonList(pages) : Collections.emptyList();
- }
-
- @Override
- public Node node(FileObject key) {
- DataFolder df = DataFolder.findFolder(key);
- FilterNode fn = new FilterNode(df.getNodeDelegate().cloneNode()) {
- @Override
- public Image getIcon(int type) {
- return ImageUtilities.loadImage("org/netbeans/modules/gradle/htmlui/DukeHTML.png"); // NOI18N
- }
-
- @Override
- public Image getOpenedIcon(int type) {
- return getIcon(type);
- }
-
- @Override
- public String getName() {
- return "pages"; // NOI18N
- }
-
- @Override
- public String getDisplayName() {
- return Bundle.MSG_HtmlJavaPages();
- }
- };
- return fn;
- }
-
- @Override
- public void propertyChange(PropertyChangeEvent evt) {
- if (NbGradleProject.PROP_PROJECT_INFO.equals(evt.getPropertyName())) {
- fireChange();
- }
- }
-
- @Override
- public void removeChangeListener(ChangeListener list) {
- NbGradleProject.removePropertyChangeListener(project, this);
- }
-
- @Override
- public void addChangeListener(ChangeListener list) {
- NbGradleProject.addPropertyChangeListener(project, this);
- }
-
- }
-}
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/description.html b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/description.html
deleted file mode 100644
index d9ec2852ba60..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/description.html
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
-
-
-
Generates a Java application with a graphical user interface following the Model View View Model (MVVM) pattern.
- Model and ViewModel are written in Java, the View is defined in HTML, CSS and JavaScript.
-
-
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/app_build.gradle.fmk b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/app_build.gradle.fmk
deleted file mode 100644
index 3cedfc28a4ce..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/app_build.gradle.fmk
+++ /dev/null
@@ -1,77 +0,0 @@
-<#--
-
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
--->
-<#noparse>
-buildscript {
- repositories {
- mavenCentral()
- }
- dependencies {
- classpath "com.android.tools.build:gradle:2.3.0"
- }
-}
-
-def localProperties = new File(project.rootDir, "local.properties")
-if (System.getenv("ANDROID_HOME") == null && !localProperties.exists()) {
- return;
-}
-
-apply plugin: "com.android.application"
-
-def commonProject = project.parent
-
-dependencies {
- compile commonProject
- compile "com.dukescript.presenters:android:1.5.1"
- compile "org.netbeans.html:ko4j:1.6.1"
-}
-
-android {
- compileSdkVersion 23
- buildToolsVersion "25.0.3"
- sourceSets {
- main.assets.srcDirs += "${commonProject.projectDir}/src/main/webapp"
- println("after android" + main.assets.srcDirs);
- }
- defaultConfig {
- applicationId "com.kt.mvvm.demo"
- minSdkVersion 16
- targetSdkVersion 16
- versionCode 1
- versionName "1.0"
- testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
- }
- buildTypes {
- release {
- minifyEnabled false
- proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
- }
- }
- lintOptions {
- abortOnError false
- }
- packagingOptions {
- exclude 'META-INF/NOTICE'
- exclude 'META-INF/LICENSE'
- exclude 'META-INF/DEPENDENCIES'
- exclude 'META-INF/DISCLAIMER'
- }
-}
-#noparse>
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/app_src_main_AndroidManifest.xml.fmk b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/app_src_main_AndroidManifest.xml.fmk
deleted file mode 100644
index 0db122ea1867..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/app_src_main_AndroidManifest.xml.fmk
+++ /dev/null
@@ -1,42 +0,0 @@
-<#--
-
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
--->
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/desktop_build.gradle.fmk b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/desktop_build.gradle.fmk
deleted file mode 100644
index e879cafafff8..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/desktop_build.gradle.fmk
+++ /dev/null
@@ -1,62 +0,0 @@
-<#--
-
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
--->
-plugins {
- id 'java'
- id 'application'
- id 'org.openjfx.javafxplugin' version '0.0.7' apply false
-}
-
-def commonProject = project.parent
-def jdk8 = System.getProperty("java.version").startsWith("1.8")
-
-if (hasProperty("runClassName")) {
- mainClassName = runClassName
-} else {
- mainClassName = '${packageBase}.DesktopMain'
-}
-
-<#noparse>
-distributions {
- main {
- distributionBaseName = commonProject.name + '-desktop'
- contents {
- from "${commonProject.projectDir}/src/main/webapp/"
- }
- }
-}
-tasks.run {
- jvmArgs "-Dbrowser.rootdir=${commonProject.projectDir}/src/main/webapp/"
-}
-if (!jdk8) {
- apply plugin: 'org.openjfx.javafxplugin'
- javafx {
- version = "11"
- modules = ["javafx.web"]
- }
-}
-#noparse>
-dependencies {
- implementation commonProject
- implementation "org.netbeans.html:net.java.html.boot:1.7.2"
- implementation "com.dukescript.api:javafx.beaninfo:0.6"
- runtimeOnly "com.dukescript.api:javafx.base:8.60.11"
- runtimeOnly "org.netbeans.html:net.java.html.boot.fx:1.7.2"
-}
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/desktop_gradle.properties.fmk b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/desktop_gradle.properties.fmk
deleted file mode 100644
index cc240119ac9e..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/desktop_gradle.properties.fmk
+++ /dev/null
@@ -1,24 +0,0 @@
-<#--
-
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
--->
-<#noparse>
-action.debug.single.args=-PrunClassName=${selectedClass} run --debug-jvm ${javaExec.jvmArgs} ${javaExec.args}
-action.run.single.args=-PrunClassName=${selectedClass} run ${javaExec.jvmArgs} ${javaExec.args}
-#noparse>
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/desktop_src_main_java_DesktopMain.fmk b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/desktop_src_main_java_DesktopMain.fmk
deleted file mode 100644
index 9944c41cdb91..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/desktop_src_main_java_DesktopMain.fmk
+++ /dev/null
@@ -1,32 +0,0 @@
-<#--
-
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
--->
-package ${packageBase};
-
-import net.java.html.boot.BrowserBuilder;
-
-class DesktopMain {
- public static void main(String[] args) {
- BrowserBuilder.newBrowser().loadPage("pages/index.html")
- .loadFinished(Demo::onPageLoad)
- .showAndWait();
- System.exit(0);
- }
-}
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/gradle.properties.fmk b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/gradle.properties.fmk
deleted file mode 100644
index ebe4ca9b17b6..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/gradle.properties.fmk
+++ /dev/null
@@ -1,26 +0,0 @@
-<#--
-
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
--->
-action.run.args=bck2brwsrShow -t
-
-action.debug.args=run --debug-jvm
-
-action.custom-1=Run in Browser
-action.custom-1.args=bck2brwsrShow -t
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/layer.xml b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/layer.xml
deleted file mode 100644
index 3d27299c5c62..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/layer.xml
+++ /dev/null
@@ -1,123 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/root_build.gradle.fmk b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/root_build.gradle.fmk
deleted file mode 100644
index 2ba3db02c108..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/root_build.gradle.fmk
+++ /dev/null
@@ -1,46 +0,0 @@
-<#--
-
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
--->
-apply plugin: 'java'
-<#if group?has_content>
-group '${group}'
-#if>
-<#if version?has_content>
-version '${version}'
-#if>
-<#noparse>
-
-allprojects {
- repositories {
- mavenCentral()
- }
-}
-
-targetCompatibility = '1.8'
-sourceCompatibility = '1.8'
-
-dependencies {
- implementation "org.netbeans.html:net.java.html.json:1.7.2"
- implementation "com.dukescript.api:javafx.base:8.60.11"
- implementation "com.dukescript.api:javafx.beaninfo:0.6"
- annotationProcessor "com.dukescript.api:javafx.beaninfo:0.6"
- runtimeOnly "org.netbeans.html:ko4j:1.7.2"
-}
-#noparse>
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/settings.gradle.fmk b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/settings.gradle.fmk
deleted file mode 100644
index 61eba9a3143f..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/settings.gradle.fmk
+++ /dev/null
@@ -1,25 +0,0 @@
-<#--
-
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
--->
-include 'desktop'
-//include 'app'
-include 'web'
-//include 'ios'
-
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/src_main_java_Demo.fmk b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/src_main_java_Demo.fmk
deleted file mode 100644
index fa2ee7ba49c6..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/src_main_java_Demo.fmk
+++ /dev/null
@@ -1,49 +0,0 @@
-<#--
-
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
--->
-package ${packageBase};
-
-import com.dukescript.api.javafx.beans.FXBeanInfo;
-import javafx.beans.binding.Bindings;
-import javafx.beans.binding.IntegerBinding;
-import javafx.beans.property.ListProperty;
-import javafx.beans.property.SimpleListProperty;
-import javafx.beans.property.SimpleStringProperty;
-import javafx.beans.property.StringProperty;
-import javafx.collections.FXCollections;
-import static net.java.html.json.Models.applyBindings;
-
-@FXBeanInfo.Generate
-public final class Demo extends DemoBeanInfo {
- final StringProperty desc = new SimpleStringProperty(this, "desc", "");
- final ListProperty todos = new SimpleListProperty<>(this, "todos", FXCollections.observableArrayList());
- final IntegerBinding numTodos = Bindings.createIntegerBinding(todos::size, todos);
-
- void addTodo() {
- todos.getValue().add(desc.getValue());
- desc.setValue("");
- }
-
- public static void onPageLoad() {
- Demo model = new Demo();
- model.desc.setValue("Try Java in browser!");
- applyBindings(model);
- }
-}
\ No newline at end of file
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/src_main_webapp_pages_index.css.fmk b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/src_main_webapp_pages_index.css.fmk
deleted file mode 100644
index b203ba5eb558..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/src_main_webapp_pages_index.css.fmk
+++ /dev/null
@@ -1,20 +0,0 @@
-<#--
-
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
--->
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/src_main_webapp_pages_index.html.fmk b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/src_main_webapp_pages_index.html.fmk
deleted file mode 100644
index e177a05b0782..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/src_main_webapp_pages_index.html.fmk
+++ /dev/null
@@ -1,80 +0,0 @@
-<#--
-
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
--->
-<#noparse>
-
-
-
- Java Frontend Application
-
-
-
-
-
-
-
-
-
-
-
-
-
- TODO Example
-
Demo application to manage your TODOs.
- There is
- TODOs so far.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-#noparse>
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/web_build.gradle.fmk b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/web_build.gradle.fmk
deleted file mode 100644
index 09c80b95a573..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/web_build.gradle.fmk
+++ /dev/null
@@ -1,56 +0,0 @@
-<#--
-
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
--->
-buildscript {
- repositories {
- mavenCentral()
- }
- dependencies {
- classpath "org.apidesign.bck2brwsr:bck2brwsr-maven-plugin:0.54"
- }
-}
-
-apply plugin: 'java'
-apply plugin: 'bck2brwsr'
-
-targetCompatibility = '1.8'
-sourceCompatibility = '1.8'
-
-if (hasProperty("runClassName")) {
- mainClassName = runClassName
-} else {
- mainClassName = '${packageBase}.BrowserMain'
-}
-
-<#noparse>
-
-def commonProject = project.parent
-
-dependencies {
- implementation commonProject
- implementation "com.dukescript.api:javafx.beaninfo:0.6"
- runtimeOnly "com.dukescript.api:javafx.base:8.60.11"
-}
-
-bck2brwsrPages.from {
- fileTree("${commonProject.projectDir}/src/main/webapp/pages")
-}
-bck2brwsrAot.dependsOn(bck2brwsrPages)
-#noparse>
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/web_gradle.properties.fmk b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/web_gradle.properties.fmk
deleted file mode 100644
index f1251efb8f3b..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/web_gradle.properties.fmk
+++ /dev/null
@@ -1,24 +0,0 @@
-<#--
-
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
--->
-<#noparse>
-action.debug.single.args=-PrunClassName=${selectedClass} bck2BrwsrShow
-action.run.single.args=-PrunClassName=${selectedClass} bck2BrwsrShow -t
-#noparse>
diff --git a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/web_src_main_java_BrowserMain.fmk b/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/web_src_main_java_BrowserMain.fmk
deleted file mode 100644
index 264650f142dc..000000000000
--- a/java/gradle.htmlui/src/org/netbeans/modules/gradle/htmlui/resources/web_src_main_java_BrowserMain.fmk
+++ /dev/null
@@ -1,27 +0,0 @@
-<#--
-
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
--->
-package ${packageBase};
-
-class BrowserMain {
- public static void main(String... args) {
- Demo.onPageLoad();
- }
-}
diff --git a/java/gradle.htmlui/test/unit/src/org/netbeans/modules/gradle/htmlui/CreateArchetypeTest.java b/java/gradle.htmlui/test/unit/src/org/netbeans/modules/gradle/htmlui/CreateArchetypeTest.java
deleted file mode 100644
index 87433d391e1c..000000000000
--- a/java/gradle.htmlui/test/unit/src/org/netbeans/modules/gradle/htmlui/CreateArchetypeTest.java
+++ /dev/null
@@ -1,255 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.netbeans.modules.gradle.htmlui;
-
-import java.io.File;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.nio.charset.StandardCharsets;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.concurrent.CountDownLatch;
-import junit.framework.Test;
-import static junit.framework.TestCase.fail;
-import static org.junit.Assert.assertNotEquals;
-import org.netbeans.api.project.Project;
-import org.netbeans.api.project.ProjectManager;
-import org.netbeans.api.project.ui.OpenProjects;
-import org.netbeans.junit.NbModuleSuite;
-import org.netbeans.junit.NbTestCase;
-import org.netbeans.modules.gradle.spi.actions.AfterBuildActionHook;
-import org.netbeans.modules.gradle.spi.newproject.TemplateOperation;
-import org.netbeans.spi.project.ActionProgress;
-import org.netbeans.spi.project.ActionProvider;
-import org.netbeans.spi.project.ui.LogicalViewProvider;
-import org.openide.filesystems.FileObject;
-import org.openide.filesystems.FileUtil;
-import org.openide.filesystems.LocalFileSystem;
-import org.openide.nodes.Node;
-import org.openide.util.lookup.Lookups;
-
-public class CreateArchetypeTest extends NbTestCase {
-
- private FileObject workFo;
-
- public CreateArchetypeTest(String name) {
- super(name);
- }
-
- public static Test suite() {
- return NbModuleSuite.createConfiguration(CreateArchetypeTest.class).
- enableClasspathModules(true).
- gui(true).
- clusters(".*").
- enableModules(".*").
- honorAutoloadEager(true).
- suite();
- }
-
- @Override
- protected void setUp() throws Exception {
- clearWorkDir();
- LocalFileSystem lfs = new LocalFileSystem();
- lfs.setRootDirectory(getWorkDir());
- workFo = lfs.getRoot();
- }
-
- public void testCreateFromArchetype() throws Exception {
- FileObject dir = FileUtil.getConfigFile("Templates/Project/Gradle/org-netbeans-modules-gradle-htmlui-HtmlJavaApplicationProjectWizard");
- assertNotNull("Templates directory found", dir);
-
- File rootDir = new File(getWorkDir(), "sample/dest");
-
- Map map = new HashMap<>();
- map.put("packageBase", "my.pkg.x");
- TemplateOperation ops = new TemplateOperation();
- GradleArchetype ga = new GradleArchetype(dir, rootDir, map);
- ga.copyTemplates(ops);
- ops.run();
- FileObject dest = FileUtil.toFileObject(rootDir);
- assertFile("Build script found", dest, "build.gradle");
- assertFile("Main class found", dest, "src", "main", "java", "my", "pkg", "x", "Demo.java").
- assertPackage("my.pkg.x").
- assertName("Demo").
- assertNoLicense().
- appendLine("applyBindings(model);", "System.exit(0);");
- assertFile("index.html found", dest, "src", "main", "webapp", "pages", "index.html").
- assertNoLicense();
- assertFile("DesktopMain class found", dest, "desktop", "src", "main", "java", "my", "pkg", "x", "DesktopMain.java").
- assertPackage("my.pkg.x").
- assertName("DesktopMain").
- assertNoLicense();
- assertFile("Desktop script found", dest, "desktop", "build.gradle").
- assertText("mainClassName = 'my.pkg.x.DesktopMain'").
- assertNoLicense();
- assertFile("Browser script found", dest, "web", "build.gradle").
- assertText("mainClassName = 'my.pkg.x.BrowserMain'").
- assertNoLicense();
- assertFile("BrowserMain class found", dest, "web", "src", "main", "java", "my", "pkg", "x", "BrowserMain.java").
- assertPackage("my.pkg.x").
- assertName("BrowserMain").
- assertNoLicense();
- assertFile("settings include only desktop and web", dest, "settings.gradle").
- assertText("//include 'app'").
- assertText("//include 'ios'").
- assertText("include 'desktop'").
- assertText("include 'web'");
-
- Project mainPrj = ProjectManager.getDefault().findProject(dest);
- assertNotNull("Project found", mainPrj);
- OpenProjects.getDefault().open(new Project[] { mainPrj }, true);
-
-
- ActionProvider actions = mainPrj.getLookup().lookup(ActionProvider.class);
- assertTrue(Arrays.asList(actions.getSupportedActions()).contains(ActionProvider.COMMAND_BUILD));
- actions.isActionEnabled(ActionProvider.COMMAND_BUILD, mainPrj.getLookup());
-
- assertLogicalView(mainPrj);
-
- invokeCommand(actions, ActionProvider.COMMAND_BUILD, mainPrj);
- assertFile("JAR created", dest, "build", "libs", "dest-1.0-SNAPSHOT.jar");
-
- FileObject desktopFo = mainPrj.getProjectDirectory().getFileObject("desktop");
- assertNotNull("desktop dir found", desktopFo);
- Project desktopPrj = ProjectManager.getDefault().findProject(desktopFo);
- assertNotNull("desktop project found", desktopPrj);
-
- invokeCommand(actions, ActionProvider.COMMAND_RUN, desktopPrj);
- assertFile("JAR created", dest, "desktop", "build", "libs", "desktop.jar");
-
- FileObject webFo = mainPrj.getProjectDirectory().getFileObject("web");
- assertNotNull("web dir found", webFo);
- Project webPrj = ProjectManager.getDefault().findProject(webFo);
- assertNotNull("web project found", webPrj);
-
- invokeCommand(actions, ActionProvider.COMMAND_RUN, webPrj);
- assertFile("Main script created", dest, "web", "build", "web", "bck2brwsr.js");
- }
-
- private void assertLogicalView(Project mainPrj) {
- LogicalViewProvider lvp = mainPrj.getLookup().lookup(LogicalViewProvider.class);
- assertNotNull("Logical view found", lvp);
- Node logicalView = lvp.createLogicalView();
- final Node[] children = logicalView.getChildren().getNodes(true);
- for (Node ch : children) {
- if (ch.getName().equals("pages") && "Frontend UI Pages".equals(ch.getDisplayName())) {
- FileObject pages = ch.getLookup().lookup(FileObject.class);
- assertNotNull("Pages node provides FileObject: " + ch, pages);
- assertNotNull("There is index.html", pages.getFileObject("index.html"));
- return;
- }
- }
- fail("Cannot find Frontend Pages in " + Arrays.toString(children));
- }
-
- protected void invokeCommand(ActionProvider actions, String cmd, Project prj) throws IllegalArgumentException, InterruptedException {
- CountDownLatch waiter = new CountDownLatch(1);
- boolean[] status = { false, false };
- ActionProgress ap = new ActionProgress() {
- @Override
- protected void started() {
- status[0] = true;
- }
-
- @Override
- public void finished(boolean success) {
- status[1] = success;
- waiter.countDown();
- }
- };
- actions.invokeAction(cmd, Lookups.fixed(prj, ap));
- assertTrue("ActionProgress was started", status[0]);
- waiter.await();
- assertTrue("ActionProgress was successfully finished", status[1]);
- }
-
- private AssertContent assertFile(String msg, FileObject root, String... path) throws IOException {
- FileObject at = root;
- for (String element : path) {
- at.refresh();
- FileObject next = at.getFileObject(element);
- if (next == null) {
- fail(msg +
- "\nCannot find " + Arrays.toString(path) +
- " found only " + at.getPath() +
- " and it contains:\n" +
- Arrays.toString(at.getChildren())
- );
- break;
- }
- at = next;
- }
- assertTrue("Expecting data " + at, at.isData());
- return new AssertContent(at);
- }
-
- private static final class AssertContent {
- private final FileObject fo;
- private final String data;
-
- AssertContent(FileObject fo) throws IOException {
- this.fo = fo;
- data = fo.asText();
- }
-
- public AssertContent assertPackage(String pkg) {
- String toFind = "package " + pkg + ";";
- int at = data.indexOf(toFind);
- if (at == -1) {
- fail("Cannot find " + pkg + " in:\n" + data);
- }
- return this;
- }
-
- public AssertContent assertName(String name) {
- String toFind = "class " + name + " implements";
- int at = data.indexOf(toFind);
- if (at == -1) {
- toFind = "class " + name + " {";
- at = data.indexOf(toFind);
- if (at == -1) {
- fail("Cannot find " + toFind + " in:\n" + data);
- }
- }
- return this;
-
- }
-
- private AssertContent assertNoLicense() {
- if (data.startsWith("package")) {
- return this;
- }
- assertFalse(data, data.startsWith("/"));
- return this;
- }
-
- private AssertContent assertText(String txt) {
- assertNotEquals(txt + " found in\n" + data, -1, data.indexOf(txt));
- return this;
- }
-
- private void appendLine(String pivot, String text) throws IOException {
- String newData = data.replace(pivot, pivot + "\n" + text);
- try (OutputStream os = fo.getOutputStream()) {
- os.write(newData.getBytes(StandardCharsets.UTF_8));
- }
- }
- }
-}
diff --git a/nbbuild/cluster.properties b/nbbuild/cluster.properties
index f4f3795bbc01..a24239632d83 100644
--- a/nbbuild/cluster.properties
+++ b/nbbuild/cluster.properties
@@ -565,7 +565,6 @@ nb.cluster.java=\
form.nb,\
form.refactoring,\
gradle.dependencies,\
- gradle.htmlui,\
gradle.java,\
gradle.java.coverage,\
gradle.kit,\