public static EarModule newEarModule()

in src/main/java/org/apache/maven/plugins/ear/EarModuleFactory.java [75:146]


    public static EarModule newEarModule( Artifact artifact, JavaEEVersion javaEEVersion, String defaultLibBundleDir,
                                          Boolean includeInApplicationXml,
                                          ArtifactTypeMappingService typeMappingService )
        throws UnknownArtifactTypeException
    {
        // Get the standard artifact type based on default config and user-defined mapping(s)
        final String artifactType;
        try
        {
            artifactType = typeMappingService.getStandardType( artifact.getType() );
        }
        catch ( UnknownArtifactTypeException e )
        {
            throw new UnknownArtifactTypeException( e.getMessage() + " for " + artifact.getArtifactId() );
        }

        if ( JarModule.DEFAULT_ARTIFACT_TYPE.equals( artifactType ) || TEST_JAR_ARTIFACT_TYPE.equals( artifactType ) )
        {
            return new JarModule( artifact, defaultLibBundleDir, includeInApplicationXml );
        }
        else if ( EjbModule.DEFAULT_ARTIFACT_TYPE.equals( artifactType ) )
        {
            return new EjbModule( artifact );
        }
        else if ( ParModule.DEFAULT_ARTIFACT_TYPE.equals( artifactType )
            || JBOSS_PAR_ARTIFACT_TYPE.equals( artifactType ) )
        {
            return new ParModule( artifact );
        }
        else if ( EjbClientModule.DEFAULT_ARTIFACT_TYPE.equals( artifactType ) )
        {
            // Somewhat weird way to tackle the problem described in MEAR-85
            if ( javaEEVersion.le( JavaEEVersion.ONE_DOT_FOUR ) )
            {
                return new EjbClientModule( artifact, null );
            }
            else
            {
                return new EjbClientModule( artifact, defaultLibBundleDir );
            }
        }
        else if ( AppClientModule.DEFAULT_ARTIFACT_TYPE.equals( artifactType ) )
        {
            return new AppClientModule( artifact );
        }
        else if ( RarModule.DEFAULT_ARTIFACT_TYPE.equals( artifactType ) )
        {
            return new RarModule( artifact );
        }
        else if ( WebModule.DEFAULT_ARTIFACT_TYPE.equals( artifactType ) )
        {
            return new WebModule( artifact );
        }
        else if ( SarModule.DEFAULT_ARTIFACT_TYPE.equals( artifactType )
            || JBOSS_SAR_ARTIFACT_TYPE.equals( artifactType ) )
        {
            return new SarModule( artifact );
        }
        else if ( WsrModule.DEFAULT_ARTIFACT_TYPE.equals( artifactType ) )
        {
            return new WsrModule( artifact );
        }
        else if ( HarModule.DEFAULT_ARTIFACT_TYPE.equals( artifactType )
            || JBOSS_HAR_ARTIFACT_TYPE.equals( artifactType ) )
        {
            return new HarModule( artifact );
        }
        else
        {
            throw new IllegalStateException( "Could not handle artifact type[" + artifactType + "]" );
        }
    }