Merge pull request #22993 from arjantijms/22989-remove-fighterfish

#22989 Remove FighterFish for Jakarta EE 9 release
diff --git a/appserver/distributions/glassfish/src/main/assembly/glassfish.xml b/appserver/distributions/glassfish/src/main/assembly/glassfish.xml
index fc5c827..53e28d0 100644
--- a/appserver/distributions/glassfish/src/main/assembly/glassfish.xml
+++ b/appserver/distributions/glassfish/src/main/assembly/glassfish.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
 
-    Copyright (c) 2013, 2018 Oracle and/or its affiliates. All rights reserved.
+    Copyright (c) 2013, 2020 Oracle and/or its affiliates. All rights reserved.
 
     This program and the accompanying materials are made available under the
     terms of the Eclipse Public License v. 2.0, which is available at
@@ -289,23 +289,6 @@
             <outputDirectory>${install.dir.name}/glassfish/modules/autostart</outputDirectory>
         </fileSet>
 
-        <!-- autostart -->
-        <fileSet>
-            <directory>${temp.dir}</directory>
-            <includes>
-                <include>osgi-cdi.jar</include>
-                <include>osgi-ee-resources.jar</include>
-                <include>osgi-ejb-container.jar</include>
-                <include>osgi-http.jar</include>
-                <include>osgi-javaee-base.jar</include>
-                <include>osgi-jdbc.jar</include>
-                <include>osgi-jpa.jar</include>
-                <include>osgi-jta.jar</include>
-                <include>osgi-web-container.jar</include>
-            </includes>
-            <outputDirectory>${install.dir.name}/glassfish/modules/autostart</outputDirectory>
-        </fileSet>
-
         <!-- staging modules -->
         <fileSet>
             <directory>${temp.dir}</directory>
@@ -313,15 +296,6 @@
                 <include>*.jar</include>
             </includes>
             <excludes>
-                <exclude>osgi-cdi.jar</exclude>
-                <exclude>osgi-ee-resources.jar</exclude>
-                <exclude>osgi-ejb-container.jar</exclude>
-                <exclude>osgi-http.jar</exclude>
-                <exclude>osgi-javaee-base.jar</exclude>
-                <exclude>osgi-jdbc.jar</exclude>
-                <exclude>osgi-jpa.jar</exclude>
-                <exclude>osgi-jta.jar</exclude>
-                <exclude>osgi-web-container.jar</exclude>
                 <exclude>server-mgmt.jar</exclude>
                 <exclude>osgi-cli-interactive.jar</exclude>
                 <exclude>flashlight-agent.jar</exclude>
diff --git a/appserver/distributions/web/src/main/assembly/web.xml b/appserver/distributions/web/src/main/assembly/web.xml
index afc92c2..82b210c 100644
--- a/appserver/distributions/web/src/main/assembly/web.xml
+++ b/appserver/distributions/web/src/main/assembly/web.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
 
-    Copyright (c) 2013, 2018 Oracle and/or its affiliates. All rights reserved.
+    Copyright (c) 2013, 2020 Oracle and/or its affiliates. All rights reserved.
 
     This program and the accompanying materials are made available under the
     terms of the Eclipse Public License v. 2.0, which is available at
@@ -206,23 +206,6 @@
             <outputDirectory>${install.dir.name}/glassfish/modules/autostart</outputDirectory>
         </fileSet>
 
-        <!-- autostart -->
-        <fileSet>
-            <directory>${temp.dir}</directory>
-            <includes>
-                <include>osgi-cdi.jar</include>
-                <include>osgi-ee-resources.jar</include>
-                <include>osgi-ejb-container.jar</include>
-                <include>osgi-http.jar</include>
-                <include>osgi-javaee-base.jar</include>
-                <include>osgi-jdbc.jar</include>
-                <include>osgi-jpa.jar</include>
-                <include>osgi-jta.jar</include>
-                <include>osgi-web-container.jar</include>
-            </includes>
-            <outputDirectory>${install.dir.name}/glassfish/modules/autostart</outputDirectory>
-        </fileSet>
-
         <!-- staging modules -->
         <fileSet>
             <directory>${temp.dir}</directory>
@@ -230,15 +213,6 @@
                 <include>*.jar</include>
             </includes>
             <excludes>
-                <exclude>osgi-cdi.jar</exclude>
-                <exclude>osgi-ee-resources.jar</exclude>
-                <exclude>osgi-ejb-container.jar</exclude>
-                <exclude>osgi-http.jar</exclude>
-                <exclude>osgi-javaee-base.jar</exclude>
-                <exclude>osgi-jdbc.jar</exclude>
-                <exclude>osgi-jpa.jar</exclude>
-                <exclude>osgi-jta.jar</exclude>
-                <exclude>osgi-web-container.jar</exclude>
                 <exclude>server-mgmt.jar</exclude>
                 <exclude>osgi-cli-interactive.jar</exclude>
                 <exclude>flashlight-agent.jar</exclude>
diff --git a/appserver/extras/embedded/build.xml b/appserver/extras/embedded/build.xml
index 7f8a04b..8a5b977 100644
--- a/appserver/extras/embedded/build.xml
+++ b/appserver/extras/embedded/build.xml
@@ -26,35 +26,35 @@
     <property name="filedir" value="${rootdir}/packager_files"/>
 
     <target name="get.distribution.type">
-      <condition property="full.distribution">
-	<equals arg1="${bundlename}" arg2="org.glassfish.main.embedded.all"/>
-      </condition>
-      <condition property="web.distribution">
-	<equals arg1="${bundlename}" arg2="org.glassfish.main.embedded.web"/>
-      </condition>
-      <condition property="nucleus.distribution">
-	<equals arg1="${bundlename}" arg2="org.glassfish.main.embedded.nucleus"/>
-      </condition>
+        <condition property="full.distribution">
+            <equals arg1="${bundlename}" arg2="org.glassfish.main.embedded.all"/>
+        </condition>
+        <condition property="web.distribution">
+            <equals arg1="${bundlename}" arg2="org.glassfish.main.embedded.web"/>
+        </condition>
+        <condition property="nucleus.distribution">
+            <equals arg1="${bundlename}" arg2="org.glassfish.main.embedded.nucleus"/>
+        </condition>
     </target>
 
     <target name="create.distribution" depends="get.distribution.type">
         <antcall target="makeJarDir"/>
         <antcall target="removeJarsNotNeeded"/>
-	<antcall target="addDtds"/>
-   	<antcall target="addRars"/>
-	<antcall target="addEjbTimer"/>
+        <antcall target="addDtds"/>
+        <antcall target="addRars"/>
+        <antcall target="addEjbTimer"/>
         <antcall target="rejar"/>
         <attachArtifact file="${finaljar}"/>
-     </target>
+    </target>
 
-     <target name="makeJarDir">
+    <target name="makeJarDir">
         <echo message="creating jar directory..."/>
         <copy todir="${jardir}">
             <fileset dir="${zipdir}">
                 <include name="*.jar"/>
             </fileset>
         </copy>
-        
+
         <!-- The packager files are zips with jars inside -->
         <unzip dest="${jardir}">
             <fileset dir="${zipdir}">
@@ -74,37 +74,35 @@
             </patternset>
         </unzip>
 
-	<mkdir dir="${rootdir}/temp"/>
+        <mkdir dir="${rootdir}/temp" />
+    </target>
 
-     </target>
-
-     <target name="removeJarsNotNeeded">
-	<delete verbose="true" failonerror="true">
-	  <fileset dir="${jardir}" includes="ant-**.jar"/>
-	  <fileset dir="${jardir}" includes="weld-se-shaded**.jar"/>
-	</delete>
-	<delete file="${modulesdir}/autostart/osgi-cdi.jar" failonerror="false"/>
-     </target>
+    <target name="removeJarsNotNeeded">
+        <delete verbose="true" failonerror="true">
+            <fileset dir="${jardir}" includes="ant-**.jar" />
+            <fileset dir="${jardir}" includes="weld-se-shaded**.jar" />
+        </delete>
+    </target>
 
 
     <target name="addDtds" unless="nucleus.distribution">
         <echo message="adding dtds"/>
         <jar jarfile="${jardir}/dtds.jar" basedir="${jardir}/glassfish/lib" includes="dtds/**/*"/>
-	<jar jarfile="${jardir}/schemas.jar" basedir="${jardir}/glassfish/lib" includes="schemas/**/*"/>
+        <jar jarfile="${jardir}/schemas.jar" basedir="${jardir}/glassfish/lib" includes="schemas/**/*"/>
         <jar jarfile="${jardir}/nucleus-dtds.jar" basedir="${jardir}/lib" includes="dtds/**/*"/>
-	<jar jarfile="${jardir}/nucleus-schemas.jar" basedir="${jardir}/lib" includes="schemas/**/*"/>
+        <jar jarfile="${jardir}/nucleus-schemas.jar" basedir="${jardir}/lib" includes="schemas/**/*"/>
     </target>
-    
+
     <target name="rejar">
         <echo message="rejarring and processing metadata..."/>
         <taskdef name="rejar" classname="org.jvnet.maven.plugin.antrun.RejarTask" />
 
-	<defaultexcludes add="META-INF/**.RSA"/>
-	<defaultexcludes add="META-INF/**.inf"/>
-	<defaultexcludes add="META-INF/**.SF"/>
+        <defaultexcludes add="META-INF/**.RSA"/>
+        <defaultexcludes add="META-INF/**.inf"/>
+        <defaultexcludes add="META-INF/**.SF"/>
 
         <rejar destfile="${finaljar}" duplicate="preserve" >
-           <manifest>
+            <manifest>
                 <attribute name="Bundle-SymbolicName" value="${bundlename}"/>
                 <attribute name="Main-Class" value="com.sun.enterprise.glassfish.bootstrap.UberMain"/>
             </manifest>
@@ -115,9 +113,9 @@
 
 
     <target name="addExtraRars" if="full.distribution">
-	<echo message="Adding additional rars"/>
+        <echo message="Adding additional rars"/>
 
-	<!-- Include property files i.e., glassfish6/mq/lib/props/broker/*.properties of mq.zip in jmsra.rar --> 
+        <!-- Include property files i.e., glassfish6/mq/lib/props/broker/*.properties of mq.zip in jmsra.rar -->
         <unzip dest="${jardir}">
             <fileset dir="${zipdir}">
                 <include name="mq**.zip"/>
@@ -139,20 +137,20 @@
         <jar jarfile="${jardir}/__ds_jdbc_ra.rar" basedir="${jardir}/glassfish" includes="lib/install/applications/__ds_jdbc_ra/**/*"/>
         <jar jarfile="${jardir}/__dm_jdbc_ra.rar" basedir="${jardir}/glassfish" includes="lib/install/applications/__dm_jdbc_ra/**/*"/>
         <jar jarfile="${jardir}/__xa_jdbc_ra.rar" basedir="${jardir}/glassfish" includes="lib/install/applications/__xa_jdbc_ra/**/*"/>
-	<copy todir="${rootdir}/temp">
-          <fileset dir="${jardir}">
-    	    <include name="*.rar"/>
-  	  </fileset>
+        <copy todir="${rootdir}/temp">
+            <fileset dir="${jardir}">
+                <include name="*.rar"/>
+            </fileset>
         </copy>
-   <!--     <jar jarfile="${finaljar}" update="true" basedir="${jardir}" includes="__cp_jdbc_ra.rar, __ds_jdbc_ra.rar, __dm_jdbc_ra.rar, __xa_jdbc_ra.rar"/>  -->
+        <!--     <jar jarfile="${finaljar}" update="true" basedir="${jardir}" includes="__cp_jdbc_ra.rar, __ds_jdbc_ra.rar, __dm_jdbc_ra.rar, __xa_jdbc_ra.rar"/>  -->
     </target>
 
-  <target name="addEjbTimer" if="full.distribution">
+    <target name="addEjbTimer" if="full.distribution">
         <echo message="adding EJBTimer"/>
-	<copy file="${jardir}/glassfish/lib/install/applications/ejb-timer-service-app.war" todir= "${rootdir}/temp"/>
-<!--
+        <copy file="${jardir}/glassfish/lib/install/applications/ejb-timer-service-app.war" todir= "${rootdir}/temp"/>
+        <!--
         <jar jarfile="${finaljar}" update="true"  basedir="${jardir}/glassfish6/glassfish/lib/install/applications" includes="ejb-timer-service-app.war"/>
 -->
-   </target>
+    </target>
 
 </project>
diff --git a/appserver/featuresets/web/pom.xml b/appserver/featuresets/web/pom.xml
index aafe5f5..9139df0 100644
--- a/appserver/featuresets/web/pom.xml
+++ b/appserver/featuresets/web/pom.xml
@@ -1437,110 +1437,6 @@
             </exclusions>
        </dependency>
 
-        <!-- glassfish-osgi-http -->
-       <dependency>
-            <groupId>org.glassfish.fighterfish</groupId>
-            <artifactId>osgi-http</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>*</groupId>
-                    <artifactId>*</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-
-        <!-- glassfish-osgi -->
-        <!-- Shared OSGi support for Java EE -->
-        <dependency>
-            <groupId>org.glassfish.fighterfish</groupId>
-            <artifactId>osgi-javaee-base</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>*</groupId>
-                    <artifactId>*</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>org.glassfish.fighterfish</groupId>
-            <artifactId>osgi-jpa</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>*</groupId>
-                    <artifactId>*</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>org.glassfish.fighterfish</groupId>
-            <artifactId>osgi-jpa-extension</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>*</groupId>
-                    <artifactId>*</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>org.glassfish.fighterfish</groupId>
-            <artifactId>osgi-jta</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>*</groupId>
-                    <artifactId>*</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-           <groupId>org.glassfish.fighterfish</groupId>
-           <artifactId>osgi-jdbc</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>*</groupId>
-                    <artifactId>*</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>org.glassfish.fighterfish</groupId>
-            <artifactId>osgi-cdi</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>*</groupId>
-                    <artifactId>*</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>org.glassfish.fighterfish</groupId>
-            <artifactId>osgi-ejb-container</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>*</groupId>
-                    <artifactId>*</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>org.glassfish.fighterfish</groupId>
-            <artifactId>osgi-web-container</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>*</groupId>
-                    <artifactId>*</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>org.glassfish.fighterfish</groupId>
-            <artifactId>osgi-ee-resources</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>*</groupId>
-                    <artifactId>*</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
         <dependency>
             <groupId>org.apache.felix</groupId>
             <artifactId>org.apache.felix.eventadmin</artifactId>
diff --git a/appserver/pom.xml b/appserver/pom.xml
index e933008..7399a14 100644
--- a/appserver/pom.xml
+++ b/appserver/pom.xml
@@ -568,58 +568,7 @@
                 <artifactId>osgi-resource-locator</artifactId>
                 <version>${osgi-resource-locator.version}</version>
             </dependency>
-
-            <!-- Fighterfish - Glassfish OSGi-Jakarta EE interop -->
-            <dependency>
-                <groupId>org.glassfish.fighterfish</groupId>
-                <artifactId>osgi-javaee-base</artifactId>
-                <version>1.0.9</version>
-            </dependency>
-            <dependency>
-                <groupId>org.glassfish.fighterfish</groupId>
-                <artifactId>osgi-web-container</artifactId>
-                <version>2.0.2</version>
-            </dependency>
-            <dependency>
-                <groupId>org.glassfish.fighterfish</groupId>
-                <artifactId>osgi-ejb-container</artifactId>
-                <version>1.0.5</version>
-            </dependency>
-            <dependency>
-                <groupId>org.glassfish.fighterfish</groupId>
-                <artifactId>osgi-jpa</artifactId>
-                <version>1.0.4</version>
-            </dependency>
-            <dependency>
-                <groupId>org.glassfish.fighterfish</groupId>
-                <artifactId>osgi-jpa-extension</artifactId>
-                <version>1.0.4</version>
-            </dependency>
-            <dependency>
-                <groupId>org.glassfish.fighterfish</groupId>
-                <artifactId>osgi-http</artifactId>
-                <version>1.0.8</version>
-            </dependency>
-            <dependency>
-                <groupId>org.glassfish.fighterfish</groupId>
-                <artifactId>osgi-cdi</artifactId>
-                <version>1.0.6</version>
-            </dependency>
-            <dependency>
-                <groupId>org.glassfish.fighterfish</groupId>
-                <artifactId>osgi-jta</artifactId>
-                <version>1.0.3</version>
-            </dependency>
-            <dependency>
-                <groupId>org.glassfish.fighterfish</groupId>
-                <artifactId>osgi-jdbc</artifactId>
-                <version>1.0.3</version>
-            </dependency>
-            <dependency>
-                <groupId>org.glassfish.fighterfish</groupId>
-                <artifactId>osgi-ee-resources</artifactId>
-                <version>2.0.2</version>
-            </dependency>
+            
             
             <!--  Derby - embedded database -->
             <dependency>
diff --git a/nucleus/core/kernel/src/main/java/com/sun/enterprise/v3/server/FighterFishStartupService.java b/nucleus/core/kernel/src/main/java/com/sun/enterprise/v3/server/FighterFishStartupService.java
deleted file mode 100644
index 34a6838..0000000
--- a/nucleus/core/kernel/src/main/java/com/sun/enterprise/v3/server/FighterFishStartupService.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * Copyright (c) 2013, 2018 Oracle and/or its affiliates. All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v. 2.0, which is available at
- * http://www.eclipse.org/legal/epl-2.0.
- *
- * This Source Code may also be made available under the following Secondary
- * Licenses when the conditions for such availability set forth in the
- * Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
- * version 2 with the GNU Classpath Exception, which is available at
- * https://www.gnu.org/software/classpath/license.html.
- *
- * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
- */
-
-package com.sun.enterprise.v3.server;
-
-import java.util.LinkedList;
-import java.util.List;
-
-import jakarta.annotation.PostConstruct;
-import jakarta.annotation.PreDestroy;
-import jakarta.inject.Inject;
-
-import org.glassfish.api.StartupRunLevel;
-import org.glassfish.hk2.api.ServiceHandle;
-import org.glassfish.hk2.api.ServiceLocator;
-import org.glassfish.hk2.runlevel.RunLevel;
-import org.glassfish.hk2.utilities.BuilderHelper;
-import org.jvnet.hk2.annotations.Service;
-
-/**
- * This service is here to start fighterfish if it is available.  This
- * is done to maintain fighterfish compatibility with older versions
- * of glassfish
- * 
- * @author jwells
- *
- */
-@Service
-@RunLevel(value=StartupRunLevel.VAL, mode=RunLevel.RUNLEVEL_MODE_NON_VALIDATING)
-public class FighterFishStartupService {
-    private final static String FIGHTERFISH_START_SERVICE = "org.glassfish.osgijpa.extension.JPAStartupService";
-    
-    @Inject
-    private ServiceLocator locator;
-    
-    private List<ServiceHandle<?>> fighterFishHandles;
-    
-    @SuppressWarnings("unused")
-    @PostConstruct
-    private void postConstruct() {
-        fighterFishHandles = locator.getAllServiceHandles(
-                BuilderHelper.createContractFilter(FIGHTERFISH_START_SERVICE));
-        
-        for (ServiceHandle<?> fighterFishHandle : fighterFishHandles) {
-            fighterFishHandle.getService();
-        }
-        
-    }
-    
-    @SuppressWarnings("unused")
-    @PreDestroy
-    private void preDestroy() {
-        if (fighterFishHandles == null) return;
-        
-        List<ServiceHandle<?>> localHandles = new LinkedList<ServiceHandle<?>>(fighterFishHandles);
-        fighterFishHandles.clear();
-        
-        for (ServiceHandle<?> handle : localHandles) {
-            handle.destroy();
-        }
-    }
-
-}