This is an automated email from the ASF dual-hosted git repository.

cgarcia pushed a commit to branch feature/app
in repository https://gitbox.apache.org/repos/asf/plc4x-extras.git


The following commit(s) were added to refs/heads/feature/app by this push:
     new df96de4  Update to NB28.
df96de4 is described below

commit df96de4a07e24dd0ec1edb41824cf80a5d2cbda7
Author: César García <[email protected]>
AuthorDate: Wed Jan 14 19:06:49 2026 -0400

    Update to NB28.
---
 .../plc4x/{malbec => app}/ApplicationTest.java     |   0
 .../tools/malbec/application/nb-configuration.xml  |  18 ++++
 plc4j/tools/malbec/application/pom.xml             |  82 ++++++++++++++++-
 .../org/apache/plc4x/malbec/ApplicationTest.java   |   2 +-
 plc4j/tools/malbec/libs/pom.xml                    |  33 ++++---
 plc4j/tools/malbec/malbec-projecttype/pom.xml      |  86 ++++++++++++++++++
 .../projecttype/impl/Plc4xProjectFactoryImpl.java  |  48 ++++++++++
 .../malbec/projecttype/impl/Plc4xProjectImpl.java  | 101 +++++++++++++++++++++
 .../malbec-projecttype/src/main/nbm/manifest.mf    |   3 +
 .../plc4x/malbec/projecttype/Bundle.properties     |   6 ++
 .../malbec/projecttype/impl/Bundle.properties      |   6 ++
 .../plc4x/malbec/projecttype/impl/Proyecto.png     | Bin 0 -> 456 bytes
 plc4j/tools/malbec/modbus/pom.xml                  |   5 +-
 plc4j/tools/malbec/nb-configuration.xml            |  18 ++++
 plc4j/tools/malbec/pom.xml                         |  12 ++-
 plc4j/tools/malbec/s7/pom.xml                      |   5 +-
 plc4j/tools/malbec/services/nb-configuration.xml   |  18 ++++
 plc4j/tools/malbec/services/pom.xml                |   5 +-
 .../plc4x/malbec/services/model/Bundle.properties  |   3 +
 .../malbec/services/model/Plc4xDriverNode.java     |   8 --
 .../malbec/services/model/Plc4xTagGroupNode.java   |   1 -
 .../plc4x/malbec/services/model/Plc4xTagNode.java  |   4 -
 .../plc4x/malbec/services/view/Plc4xRootNode.java  |   1 -
 .../plc4x/malbec/services/model/Bundle.properties  |   5 +
 24 files changed, 430 insertions(+), 40 deletions(-)

diff --git 
a/plc4j/tools/app/application/src/test/java/org/apache/plc4x/malbec/ApplicationTest.java
 
b/plc4j/tools/app/application/src/test/java/org/apache/plc4x/app/ApplicationTest.java
similarity index 100%
rename from 
plc4j/tools/app/application/src/test/java/org/apache/plc4x/malbec/ApplicationTest.java
rename to 
plc4j/tools/app/application/src/test/java/org/apache/plc4x/app/ApplicationTest.java
diff --git a/plc4j/tools/malbec/application/nb-configuration.xml 
b/plc4j/tools/malbec/application/nb-configuration.xml
new file mode 100644
index 0000000..947ae8a
--- /dev/null
+++ b/plc4j/tools/malbec/application/nb-configuration.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project-shared-configuration>
+    <!--
+This file contains additional configuration written by modules in the NetBeans 
IDE.
+The configuration is intended to be shared among all the users of project and
+therefore it is assumed to be part of version control checkout.
+Without this configuration present, some functionality in the IDE may be 
limited or fail altogether.
+-->
+    <properties xmlns="http://www.netbeans.org/ns/maven-properties-data/1";>
+        <!--
+Properties that influence various parts of the IDE, especially code formatting 
and the like. 
+You can copy and paste the single properties, into the pom.xml file and the 
IDE will pick them up.
+That way multiple projects can share the same settings (useful for formatting 
rules for example).
+Any value defined here will override the pom.xml file value but is only 
applicable to the current project.
+-->
+        
<com-github-philippefichet-sonarlint4netbeans.excludedRules>[{"repository":"php","rule":"S3335"},{"repository":"php","rule":"S3336"},{"repository":"php","rule":"S2002"},{"repository":"php","rule":"S2005"},{"repository":"php","rule":"S3333"},{"repository":"php","rule":"S3334"},{"repository":"Web","rule":"ImgWithoutWidthOrHeightCheck"},{"repository":"php","rule":"S1151"},{"repository":"php","rule":"S3332"},{"repository":"php","rule":"S2001"},{"repository":"Web","rule":"UnclosedTagC
 [...]
+    </properties>
+</project-shared-configuration>
diff --git a/plc4j/tools/malbec/application/pom.xml 
b/plc4j/tools/malbec/application/pom.xml
index 699029b..2dbe68e 100644
--- a/plc4j/tools/malbec/application/pom.xml
+++ b/plc4j/tools/malbec/application/pom.xml
@@ -35,8 +35,9 @@
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         
<all.clusters>${project.build.directory}/${brandingToken}</all.clusters>
         <jpms-flags>
-            -Djava.security.manager=allow
+            -Djava.security.manager=disallow
             --add-opens=java.base/java.net=ALL-UNNAMED
+            --add-opens=java.base/java.lang=ALL-UNNAMED        
         </jpms-flags>       
     </properties>
 
@@ -47,12 +48,19 @@
             <version>${netbeans.version}</version>
             <type>pom</type>
         </dependency>
+        <dependency>
+            <groupId>org.netbeans.cluster</groupId>
+            <artifactId>ide</artifactId>
+            <version>${netbeans.version}</version>
+            <type>pom</type>
+        </dependency>                
         <!-- NbModuleSuite functional in RELEASE70 or later: -->
         <dependency>
             <groupId>org.netbeans.api</groupId>
             <artifactId>org-netbeans-modules-nbjunit</artifactId>
             <version>${netbeans.version}</version>
-            <scope>test</scope> <!-- beyond platform cluster, this often needs 
to be dropped down to compile/runtime, some other modules in IDE clusters 
depend on it -->
+            <!-- beyond platform cluster, this often needs to be dropped down 
to compile/runtime, some other modules in IDE clusters depend on it -->         
   
+            <!--<scope>test</scope>--> 
         </dependency>
         <!-- To use Jelly Tools in your functional tests, add or replace with:
         <dependency>
@@ -91,7 +99,72 @@
             <groupId>${project.groupId}</groupId>
             <artifactId>malbec-s7</artifactId>
             <version>${project.version}</version>
-        </dependency>        
+        </dependency>
+        <dependency>
+            <groupId>${project.groupId}</groupId>
+            <artifactId>malbec-projecttype</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.api</groupId>
+            <artifactId>org-netbeans-modules-jemmy</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.api</groupId>
+            <artifactId>org-netbeans-modules-jellytools-platform</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.external</groupId>
+            <artifactId>org-apache-commons-logging</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.modules</groupId>
+            <artifactId>org-netbeans-libs-commons_compress</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.modules</groupId>
+            <artifactId>org-netbeans-modules-docker-api</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.external</groupId>
+            <artifactId>org-apache-commons-lang3</artifactId>
+            <version>RELEASE130</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.commons</groupId>
+            <artifactId>commons-lang3</artifactId>
+            <version>3.17.0</version>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-api</artifactId>
+            <version>1.7.36</version>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-jdk14</artifactId>
+            <version>1.7.36</version>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-simple</artifactId>
+            <version>2.0.13</version>
+        </dependency>
+        <dependency>
+            <groupId>org.jspecify</groupId>
+            <artifactId>jspecify</artifactId>
+            <version>1.0.0</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.api</groupId>
+            <artifactId>org-netbeans-libs-osgi</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
     </dependencies>
 
     <build>
@@ -129,9 +202,10 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
-                <version>3.13.0</version>
+                <version>3.14.1</version>
                 <configuration>
                     <showDeprecation>false</showDeprecation>
+                    <proc>full</proc>
                 </configuration>
             </plugin>            
         </plugins>
diff --git 
a/plc4j/tools/malbec/application/src/test/java/org/apache/plc4x/malbec/ApplicationTest.java
 
b/plc4j/tools/malbec/application/src/test/java/org/apache/plc4x/malbec/ApplicationTest.java
index 5218f98..310d74d 100644
--- 
a/plc4j/tools/malbec/application/src/test/java/org/apache/plc4x/malbec/ApplicationTest.java
+++ 
b/plc4j/tools/malbec/application/src/test/java/org/apache/plc4x/malbec/ApplicationTest.java
@@ -10,7 +10,7 @@ public class ApplicationTest extends NbTestCase {
     public static Test suite() {
         return NbModuleSuite.createConfiguration(ApplicationTest.class).
                 gui(false).
-                failOnMessage(Level.WARNING). // works at least in RELEASE71
+                failOnMessage(Level.SEVERE). // works at least in RELEASE71
                 failOnException(Level.INFO).
                 enableClasspathModules(false). 
                 clusters(".*").
diff --git a/plc4j/tools/malbec/libs/pom.xml b/plc4j/tools/malbec/libs/pom.xml
index 9f718ce..223443f 100755
--- a/plc4j/tools/malbec/libs/pom.xml
+++ b/plc4j/tools/malbec/libs/pom.xml
@@ -33,8 +33,8 @@
                 <artifactId>nbm-maven-plugin</artifactId>
                 <extensions>true</extensions>
                     <configuration>
-                        <publicPackages>                          
-                            
<publicPackage>org.apache.plc4x.java.*</publicPackage>                          
    
+                        <publicPackages>
+                            
<publicPackage>org.apache.plc4x.malbec.api</publicPackage>
                         </publicPackages>
                     <moduleType>eager</moduleType>                          
                     </configuration>                
@@ -67,10 +67,11 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
-                <version>3.13.0</version>
+                <version>3.14.1</version>
                 <configuration>
                     <source>11</source>
                     <target>11</target>
+                    <proc>full</proc>
                 </configuration>
             </plugin>
         </plugins>
@@ -238,42 +239,42 @@
         <dependency>
             <groupId>${project.groupId}</groupId>
             <artifactId>plc4j-api</artifactId>
-            <version>${version}</version>
+            <version>${plc4x.version}</version>
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
             <artifactId>plc4j-spi</artifactId>
-            <version>${version}</version>
+            <version>${plc4x.version}</version>
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
             <artifactId>plc4j-transport-pcap-shared</artifactId>
-            <version>${version}</version>
+            <version>${plc4x.version}</version>
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
             <artifactId>plc4j-transport-raw-socket</artifactId>
-            <version>${version}</version>
+            <version>${plc4x.version}</version>
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
             <artifactId>plc4j-transport-serial</artifactId>
-            <version>${version}</version>
+            <version>${plc4x.version}</version>
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
             <artifactId>plc4j-transport-tcp</artifactId>
-            <version>${version}</version>
+            <version>${plc4x.version}</version>
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
             <artifactId>plc4j-utils-pcap-shared</artifactId>
-            <version>${version}</version>
+            <version>${plc4x.version}</version>
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
             <artifactId>plc4j-utils-raw-sockets</artifactId>
-            <version>${version}</version>
+            <version>${plc4x.version}</version>
         </dependency>
         <dependency>
             <groupId>org.netbeans.api</groupId>
@@ -285,5 +286,15 @@
             <artifactId>org-openide-util-lookup</artifactId>
             <version>${netbeans.version}</version>
         </dependency>
+        <dependency>
+            <groupId>org.netbeans.api</groupId>
+            <artifactId>org-openide-util-ui</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.external</groupId>
+            <artifactId>org-apache-commons-logging</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
     </dependencies>
 </project>
\ No newline at end of file
diff --git a/plc4j/tools/malbec/malbec-projecttype/pom.xml 
b/plc4j/tools/malbec/malbec-projecttype/pom.xml
new file mode 100644
index 0000000..f3ed3ca
--- /dev/null
+++ b/plc4j/tools/malbec/malbec-projecttype/pom.xml
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd";>
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.plc4x</groupId>
+        <artifactId>malbec-parent</artifactId>
+        <version>0.13.0-SNAPSHOT</version>
+    </parent>
+    <artifactId>malbec-projecttype</artifactId>
+    <packaging>nbm</packaging>
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.netbeans.utilities</groupId>
+                <artifactId>nbm-maven-plugin</artifactId>
+                <extensions>true</extensions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-jar-plugin</artifactId>
+                <configuration>
+                    <archive>
+                        
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
+                    </archive>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+    <dependencies>
+        <dependency>
+            <groupId>org.netbeans.api</groupId>
+            <artifactId>org-netbeans-api-annotations-common</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.api</groupId>
+            <artifactId>org-openide-loaders</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.api</groupId>
+            <artifactId>org-openide-dialogs</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.api</groupId>
+            <artifactId>org-openide-filesystems</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.api</groupId>
+            <artifactId>org-openide-util-lookup</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.api</groupId>
+            <artifactId>org-openide-nodes</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.api</groupId>
+            <artifactId>org-netbeans-modules-projectapi</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.api</groupId>
+            <artifactId>org-netbeans-modules-projectuiapi</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.api</groupId>
+            <artifactId>org-openide-awt</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.api</groupId>
+            <artifactId>org-openide-util</artifactId>
+            <version>${netbeans.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.netbeans.api</groupId>
+            <artifactId>org-openide-util-ui</artifactId>
+            <version>RELEASE280</version>
+        </dependency>
+    </dependencies>
+</project>
\ No newline at end of file
diff --git 
a/plc4j/tools/malbec/malbec-projecttype/src/main/java/org/apache/plc4x/malbec/projecttype/impl/Plc4xProjectFactoryImpl.java
 
b/plc4j/tools/malbec/malbec-projecttype/src/main/java/org/apache/plc4x/malbec/projecttype/impl/Plc4xProjectFactoryImpl.java
new file mode 100644
index 0000000..19d2e86
--- /dev/null
+++ 
b/plc4j/tools/malbec/malbec-projecttype/src/main/java/org/apache/plc4x/malbec/projecttype/impl/Plc4xProjectFactoryImpl.java
@@ -0,0 +1,48 @@
+/*
+ * 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
+ *
+ *   https://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.apache.plc4x.malbec.projecttype.impl;
+
+import java.io.IOException;
+import org.netbeans.api.project.Project;
+import org.netbeans.spi.project.ProjectFactory;
+import org.netbeans.spi.project.ProjectState;
+import org.openide.filesystems.FileObject;
+import org.openide.util.lookup.ServiceProvider;
+
+@ServiceProvider(service=ProjectFactory.class)
+public class Plc4xProjectFactoryImpl implements ProjectFactory {
+
+    public static final String PROJECT_FILE = "customer.txt";
+    
+    @Override
+    public boolean isProject(FileObject fo) {
+        return fo.getFileObject(PROJECT_FILE) != null;
+    }
+
+    @Override
+    public Project loadProject(FileObject fo, ProjectState ps) throws 
IOException {
+        return isProject(fo) ? new Plc4xProjectImpl(fo, ps) : null;
+    }
+
+    @Override
+    public void saveProject(Project prjct) throws IOException, 
ClassCastException {
+        //
+    }
+    
+}
diff --git 
a/plc4j/tools/malbec/malbec-projecttype/src/main/java/org/apache/plc4x/malbec/projecttype/impl/Plc4xProjectImpl.java
 
b/plc4j/tools/malbec/malbec-projecttype/src/main/java/org/apache/plc4x/malbec/projecttype/impl/Plc4xProjectImpl.java
new file mode 100644
index 0000000..816c233
--- /dev/null
+++ 
b/plc4j/tools/malbec/malbec-projecttype/src/main/java/org/apache/plc4x/malbec/projecttype/impl/Plc4xProjectImpl.java
@@ -0,0 +1,101 @@
+/*
+ * 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
+ *
+ *   https://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.apache.plc4x.malbec.projecttype.impl;
+
+import java.beans.PropertyChangeListener;
+import javax.swing.Icon;
+import javax.swing.ImageIcon;
+import org.netbeans.api.annotations.common.StaticResource;
+import org.netbeans.api.project.Project;
+import org.netbeans.api.project.ProjectInformation;
+import org.netbeans.spi.project.ProjectState;
+import org.openide.filesystems.FileObject;
+import org.openide.util.ImageUtilities;
+import org.openide.util.Lookup;
+import org.openide.util.lookup.Lookups;
+
+public class Plc4xProjectImpl implements Project{
+
+    private final FileObject fo;
+    private final ProjectState ps;
+    private Lookup lkp;    
+    
+    
+    public Plc4xProjectImpl(FileObject fo, ProjectState ps) {
+        this.fo = fo;
+        this.ps = ps;
+    }
+
+    @Override
+    public FileObject getProjectDirectory() {
+        return fo;
+    }
+
+    @Override
+    public Lookup getLookup() {
+        if (lkp == null) {
+            lkp = Lookups.fixed(new Object[]{
+            // register your features here
+                new Plc4xProjectInfoImpl(),
+            });
+        }
+        return lkp;
+    }
+    
+    private class Plc4xProjectInfoImpl implements ProjectInformation {
+
+
+        @StaticResource()
+        public static final String CUSTOMER_ICON = 
"org/apache/plc4x/malbec/projecttype/impl/Proyecto.png";    
+
+        @Override
+        public String getName() {
+            return getProjectDirectory().getName();
+        }
+
+        @Override
+        public String getDisplayName() {
+            return getName();
+        }
+
+        @Override
+        public Icon getIcon() {
+            return new ImageIcon(ImageUtilities.loadImage(CUSTOMER_ICON));
+        }
+
+        @Override
+        public Project getProject() {
+            return Plc4xProjectImpl.this;
+        }
+
+        @Override
+        public void addPropertyChangeListener(PropertyChangeListener pl) {
+            //
+        }
+
+        @Override
+        public void removePropertyChangeListener(PropertyChangeListener pl) {
+            //
+        }
+
+    }
+
+    
+    
+}
diff --git a/plc4j/tools/malbec/malbec-projecttype/src/main/nbm/manifest.mf 
b/plc4j/tools/malbec/malbec-projecttype/src/main/nbm/manifest.mf
new file mode 100644
index 0000000..421c2c0
--- /dev/null
+++ b/plc4j/tools/malbec/malbec-projecttype/src/main/nbm/manifest.mf
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+OpenIDE-Module-Localizing-Bundle: 
org/apache/plc4x/malbec/projecttype/Bundle.properties
+
diff --git 
a/plc4j/tools/malbec/malbec-projecttype/src/main/resources/org/apache/plc4x/malbec/projecttype/Bundle.properties
 
b/plc4j/tools/malbec/malbec-projecttype/src/main/resources/org/apache/plc4x/malbec/projecttype/Bundle.properties
new file mode 100644
index 0000000..23d9750
--- /dev/null
+++ 
b/plc4j/tools/malbec/malbec-projecttype/src/main/resources/org/apache/plc4x/malbec/projecttype/Bundle.properties
@@ -0,0 +1,6 @@
+#Localized module labels. Defaults taken from POM (<name>, <description>, 
<groupId>) if unset.
+#OpenIDE-Module-Name=
+#OpenIDE-Module-Short-Description=
+#OpenIDE-Module-Long-Description=
+#OpenIDE-Module-Display-Category=
+#Wed Jan 14 13:56:33 GMT-04:00 2026
diff --git 
a/plc4j/tools/malbec/malbec-projecttype/src/main/resources/org/apache/plc4x/malbec/projecttype/impl/Bundle.properties
 
b/plc4j/tools/malbec/malbec-projecttype/src/main/resources/org/apache/plc4x/malbec/projecttype/impl/Bundle.properties
new file mode 100644
index 0000000..23d9750
--- /dev/null
+++ 
b/plc4j/tools/malbec/malbec-projecttype/src/main/resources/org/apache/plc4x/malbec/projecttype/impl/Bundle.properties
@@ -0,0 +1,6 @@
+#Localized module labels. Defaults taken from POM (<name>, <description>, 
<groupId>) if unset.
+#OpenIDE-Module-Name=
+#OpenIDE-Module-Short-Description=
+#OpenIDE-Module-Long-Description=
+#OpenIDE-Module-Display-Category=
+#Wed Jan 14 13:56:33 GMT-04:00 2026
diff --git 
a/plc4j/tools/malbec/malbec-projecttype/src/main/resources/org/apache/plc4x/malbec/projecttype/impl/Proyecto.png
 
b/plc4j/tools/malbec/malbec-projecttype/src/main/resources/org/apache/plc4x/malbec/projecttype/impl/Proyecto.png
new file mode 100644
index 0000000..a50403a
Binary files /dev/null and 
b/plc4j/tools/malbec/malbec-projecttype/src/main/resources/org/apache/plc4x/malbec/projecttype/impl/Proyecto.png
 differ
diff --git a/plc4j/tools/malbec/modbus/pom.xml 
b/plc4j/tools/malbec/modbus/pom.xml
index 21ee055..4d597e0 100755
--- a/plc4j/tools/malbec/modbus/pom.xml
+++ b/plc4j/tools/malbec/modbus/pom.xml
@@ -82,10 +82,11 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
-                <version>3.13.0</version>
+                <version>3.14.1</version>
                 <configuration>
                     <source>11</source>
                     <target>11</target>
+                    <proc>full</proc>
                 </configuration>
             </plugin>            
         </plugins>
@@ -119,7 +120,7 @@
         <dependency>
             <groupId>${project.groupId}</groupId>
             <artifactId>plc4j-driver-modbus</artifactId>
-            <version>${project.version}</version>
+            <version>${plc4x.version}</version>
         </dependency>
     </dependencies>
 </project>
\ No newline at end of file
diff --git a/plc4j/tools/malbec/nb-configuration.xml 
b/plc4j/tools/malbec/nb-configuration.xml
new file mode 100644
index 0000000..947ae8a
--- /dev/null
+++ b/plc4j/tools/malbec/nb-configuration.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project-shared-configuration>
+    <!--
+This file contains additional configuration written by modules in the NetBeans 
IDE.
+The configuration is intended to be shared among all the users of project and
+therefore it is assumed to be part of version control checkout.
+Without this configuration present, some functionality in the IDE may be 
limited or fail altogether.
+-->
+    <properties xmlns="http://www.netbeans.org/ns/maven-properties-data/1";>
+        <!--
+Properties that influence various parts of the IDE, especially code formatting 
and the like. 
+You can copy and paste the single properties, into the pom.xml file and the 
IDE will pick them up.
+That way multiple projects can share the same settings (useful for formatting 
rules for example).
+Any value defined here will override the pom.xml file value but is only 
applicable to the current project.
+-->
+        
<com-github-philippefichet-sonarlint4netbeans.excludedRules>[{"repository":"php","rule":"S3335"},{"repository":"php","rule":"S3336"},{"repository":"php","rule":"S2002"},{"repository":"php","rule":"S2005"},{"repository":"php","rule":"S3333"},{"repository":"php","rule":"S3334"},{"repository":"Web","rule":"ImgWithoutWidthOrHeightCheck"},{"repository":"php","rule":"S1151"},{"repository":"php","rule":"S3332"},{"repository":"php","rule":"S2001"},{"repository":"Web","rule":"UnclosedTagC
 [...]
+    </properties>
+</project-shared-configuration>
diff --git a/plc4j/tools/malbec/pom.xml b/plc4j/tools/malbec/pom.xml
index cedb196..3858bae 100644
--- a/plc4j/tools/malbec/pom.xml
+++ b/plc4j/tools/malbec/pom.xml
@@ -33,11 +33,14 @@
     <name>malbec-parent</name>
 
     <properties>
-        <netbeans.version>RELEASE220</netbeans.version>
+        <netbeans.version>RELEASE280</netbeans.version>
         <brandingToken>malbec</brandingToken>     
         
         <java.version>11</java.version>
 
+        <!-- Stable Plc4x version -->
+        <plc4x.version>0.13.1</plc4x.version>
+
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         
<project.reporting.outputencoding>UTF-8</project.reporting.outputencoding>
 
@@ -69,7 +72,7 @@
         <commons-compress.version>1.26.2</commons-compress.version>
         <commons-configuration2.version>2.11.0</commons-configuration2.version>
         <commons-io.version>2.16.1</commons-io.version>
-        <commons-lang3.version>3.14.0</commons-lang3.version>
+        <commons-lang3.version>3.18.0</commons-lang3.version>
         <commons-logging.version>1.3.3</commons-logging.version>
         <commons-math3.version>3.6.1</commons-math3.version>
         <commons-net.version>3.11.1</commons-net.version>
@@ -139,10 +142,11 @@
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-compiler-plugin</artifactId>
-                    <version>3.11.0</version>
+                    <version>3.14.1</version>
                     <configuration>
                         <source>21</source>
                         <target>21</target>
+                        <proc>full</proc>
                     </configuration>
                 </plugin>
             <plugin>
@@ -196,9 +200,9 @@
         <module>sample</module>
         <module>services</module>
         <module>libs</module>
-<!--        <module>s7</module>-->
         <module>modbus</module>
         <module>s7</module>
+        <module>malbec-projecttype</module>
     </modules>
 
 </project>
diff --git a/plc4j/tools/malbec/s7/pom.xml b/plc4j/tools/malbec/s7/pom.xml
index 1ea010b..894049a 100755
--- a/plc4j/tools/malbec/s7/pom.xml
+++ b/plc4j/tools/malbec/s7/pom.xml
@@ -81,10 +81,11 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
-                <version>3.13.0</version>
+                <version>3.14.1</version>
                 <configuration>
                     <source>11</source>
                     <target>11</target>
+                    <proc>full</proc>
                 </configuration>
             </plugin>
         </plugins>
@@ -119,7 +120,7 @@
         <dependency>
             <groupId>${project.groupId}</groupId>
             <artifactId>plc4j-driver-s7</artifactId>
-            <version>${project.version}</version>
+            <version>${plc4x.version}</version>
         </dependency>
     </dependencies>
 </project>
\ No newline at end of file
diff --git a/plc4j/tools/malbec/services/nb-configuration.xml 
b/plc4j/tools/malbec/services/nb-configuration.xml
new file mode 100644
index 0000000..947ae8a
--- /dev/null
+++ b/plc4j/tools/malbec/services/nb-configuration.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project-shared-configuration>
+    <!--
+This file contains additional configuration written by modules in the NetBeans 
IDE.
+The configuration is intended to be shared among all the users of project and
+therefore it is assumed to be part of version control checkout.
+Without this configuration present, some functionality in the IDE may be 
limited or fail altogether.
+-->
+    <properties xmlns="http://www.netbeans.org/ns/maven-properties-data/1";>
+        <!--
+Properties that influence various parts of the IDE, especially code formatting 
and the like. 
+You can copy and paste the single properties, into the pom.xml file and the 
IDE will pick them up.
+That way multiple projects can share the same settings (useful for formatting 
rules for example).
+Any value defined here will override the pom.xml file value but is only 
applicable to the current project.
+-->
+        
<com-github-philippefichet-sonarlint4netbeans.excludedRules>[{"repository":"php","rule":"S3335"},{"repository":"php","rule":"S3336"},{"repository":"php","rule":"S2002"},{"repository":"php","rule":"S2005"},{"repository":"php","rule":"S3333"},{"repository":"php","rule":"S3334"},{"repository":"Web","rule":"ImgWithoutWidthOrHeightCheck"},{"repository":"php","rule":"S1151"},{"repository":"php","rule":"S3332"},{"repository":"php","rule":"S2001"},{"repository":"Web","rule":"UnclosedTagC
 [...]
+    </properties>
+</project-shared-configuration>
diff --git a/plc4j/tools/malbec/services/pom.xml 
b/plc4j/tools/malbec/services/pom.xml
index ae157de..68b0248 100755
--- a/plc4j/tools/malbec/services/pom.xml
+++ b/plc4j/tools/malbec/services/pom.xml
@@ -93,10 +93,11 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
-                <version>3.13.0</version>
+                <version>3.14.1</version>
                 <configuration>
                     <source>11</source>
                     <target>11</target>
+                    <proc>full</proc>
                 </configuration>
             </plugin>
         </plugins>
@@ -153,7 +154,7 @@
         <dependency>
             <groupId>${project.groupId}</groupId>
             <artifactId>plc4j-api</artifactId>
-            <version>${project.version}</version>
+            <version>${plc4x.version}</version>
         </dependency>
         <dependency>
             <groupId>org.netbeans.api</groupId>
diff --git 
a/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/model/Bundle.properties
 
b/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/model/Bundle.properties
new file mode 100755
index 0000000..a4a6fc4
--- /dev/null
+++ 
b/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/model/Bundle.properties
@@ -0,0 +1,3 @@
+Plc4xAddDeviceDialog.jButton1.text=jButton1
+Plc4xAddDeviceDialog.jButton2.text=jButton2
+Plc4xAddDeviceDialog.title=Add Device
diff --git 
a/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/model/Plc4xDriverNode.java
 
b/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/model/Plc4xDriverNode.java
index a998366..9bc8e85 100755
--- 
a/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/model/Plc4xDriverNode.java
+++ 
b/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/model/Plc4xDriverNode.java
@@ -21,16 +21,10 @@ package org.apache.plc4x.malbec.services.model;
 import java.beans.IntrospectionException;
 import java.beans.PropertyChangeListener;
 import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Optional;
 import javax.swing.Action;
-import javax.swing.event.ChangeListener;
 import org.apache.plc4x.malbec.api.MasterDB;
 import org.apache.plc4x.malbec.services.core.Plc4xAddDeviceAction;
 import org.apache.plc4x.malbec.services.core.Plc4xDriverChildFactory;
-import org.apache.plc4x.malbec.services.core.Plc4xPropertiesNotifier;
-import org.apache.plc4x.java.api.PlcDriver;
 import org.openide.actions.OpenLocalExplorerAction;
 import org.openide.actions.PropertiesAction;
 import org.openide.actions.ToolsAction;
@@ -44,10 +38,8 @@ import org.openide.util.LookupEvent;
 import org.openide.util.LookupListener;
 import org.openide.util.NbBundle.Messages;
 import org.openide.util.actions.SystemAction;
-import org.openide.util.lookup.AbstractLookup;
 import org.apache.plc4x.malbec.api.DeviceRecord;
 import org.apache.plc4x.malbec.api.DriverRecord;
-import org.apache.plc4x.malbec.services.model.Bundle;
 
 
 public class Plc4xDriverNode  extends BeanNode  implements LookupListener {
diff --git 
a/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/model/Plc4xTagGroupNode.java
 
b/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/model/Plc4xTagGroupNode.java
index b52dd5f..d61292b 100755
--- 
a/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/model/Plc4xTagGroupNode.java
+++ 
b/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/model/Plc4xTagGroupNode.java
@@ -46,7 +46,6 @@ import org.openide.util.actions.SystemAction;
 import org.apache.plc4x.malbec.api.TagGroupRecord;
 import org.apache.plc4x.malbec.services.core.Plc4xAddTagGroupAction;
 import org.apache.plc4x.malbec.services.core.Plc4xDelTagGroupAction;
-import org.apache.plc4x.malbec.services.model.Bundle;
 import org.openide.util.Lookup;
 
 /**
diff --git 
a/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/model/Plc4xTagNode.java
 
b/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/model/Plc4xTagNode.java
index 8e01c70..8d303ec 100755
--- 
a/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/model/Plc4xTagNode.java
+++ 
b/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/model/Plc4xTagNode.java
@@ -23,7 +23,6 @@ import java.beans.IntrospectionException;
 import java.beans.PropertyChangeEvent;
 import java.beans.PropertyChangeListener;
 import java.io.IOException;
-import java.util.Properties;
 import javax.swing.Action;
 import javax.swing.event.ChangeEvent;
 import javax.swing.event.ChangeListener;
@@ -33,7 +32,6 @@ import static 
org.apache.plc4x.malbec.api.Plc4xPropertyEnum.DESCRIPTION;
 import static org.apache.plc4x.malbec.api.Plc4xPropertyEnum.ENABLE;
 import static org.apache.plc4x.malbec.api.Plc4xPropertyEnum.NAME;
 import org.apache.plc4x.malbec.services.core.Plc4xPropertiesNotifier;
-import org.openide.actions.DeleteAction;
 import org.openide.actions.OpenLocalExplorerAction;
 import org.openide.actions.PropertiesAction;
 import org.openide.actions.RenameAction;
@@ -46,9 +44,7 @@ import org.openide.util.Exceptions;
 import org.openide.util.NbBundle.Messages;
 import org.openide.util.actions.SystemAction;
 import org.apache.plc4x.malbec.api.TagRecord;
-import org.apache.plc4x.malbec.services.core.Plc4xAddTagAction;
 import org.apache.plc4x.malbec.services.core.Plc4xDelTagAction;
-import org.apache.plc4x.malbec.services.model.Bundle;
 import org.openide.util.Lookup;
 
 /**
diff --git 
a/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/view/Plc4xRootNode.java
 
b/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/view/Plc4xRootNode.java
index 83e4a12..fb6f40b 100755
--- 
a/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/view/Plc4xRootNode.java
+++ 
b/plc4j/tools/malbec/services/src/main/java/org/apache/plc4x/malbec/services/view/Plc4xRootNode.java
@@ -25,7 +25,6 @@ import org.apache.plc4x.malbec.api.MasterDB;
 import org.apache.plc4x.malbec.services.controller.Plc4xController;
 import org.apache.plc4x.malbec.services.core.Plc4xRootChildFactory;
 import org.apache.plc4x.malbec.services.core.Plc4xRootNodeSaveAction;
-import org.apache.plc4x.malbec.services.view.Bundle;
 import org.netbeans.api.core.ide.ServicesTabNodeRegistration;
 import org.openide.actions.OpenLocalExplorerAction;
 import org.openide.actions.PropertiesAction;
diff --git 
a/plc4j/tools/malbec/services/src/main/resources/org/apache/plc4x/malbec/services/model/Bundle.properties
 
b/plc4j/tools/malbec/services/src/main/resources/org/apache/plc4x/malbec/services/model/Bundle.properties
new file mode 100644
index 0000000..88d2991
--- /dev/null
+++ 
b/plc4j/tools/malbec/services/src/main/resources/org/apache/plc4x/malbec/services/model/Bundle.properties
@@ -0,0 +1,5 @@
+
+# Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt 
to change this license
+# Click nbfs://nbhost/SystemFileSystem/Templates/Other/properties.properties 
to edit this template
+
+


Reply via email to