public static NativeImageBuilderConfig processNativeImageConfig()

in atomos.maven/src/main/java/org/apache/felix/atomos/maven/LauncherBuilderUtil.java [167:259]


    public static NativeImageBuilderConfig processNativeImageConfig(
        MavenNativeImageConfig nativeImageConfig, MavenProject project)
    {

        NativeImageBuilderConfig nic = new NativeImageBuilderConfig()
        {

            @Override
            public List<Path> dynamicProxyConfigurationFiles()
            {
                return Optional.ofNullable(
                    nativeImageConfig.dynamicProxyConfigurationFiles)//
                    .map(List::stream).orElse(Stream.of())//
                    .map(File::toPath)//
                    .collect(Collectors.toList());
            }

            @Override
            public List<Path> reflectionConfigurationFiles()
            {
                return Optional.ofNullable(nativeImageConfig.reflectionConfigurationFiles)//
                    .map(List::stream).orElse(Stream.of())//
                    .map(File::toPath)//
                    .collect(Collectors.toList());
            }

            @Override
            public List<Path> resourceConfigurationFiles()
            {
                return Optional.ofNullable(nativeImageConfig.resourceConfigurationFiles)//
                    .map(List::stream).orElse(Stream.of())//
                    .map(File::toPath)//
                    .collect(Collectors.toList());
            }

            @Override
            public List<String> nativeImageAdditionalInitializeAtBuildTime()
            {
                return nativeImageConfig.additionalInitializeAtBuildTime;
            }

            @Override
            public String nativeImageApplicationName()
            {
                return nativeImageConfig.applicationName;
            }

            @Override
            public Path nativeImageExecutable()
            {
                return Optional.ofNullable(nativeImageConfig.nativeImageExecutable).map(
                    File::toPath).orElse(null);
            }

            @Override
            public String nativeImageMainClass()
            {
                if (nativeImageConfig.mainClass == null
                    || nativeImageConfig.mainClass.isEmpty())
                {
                    return "org.apache.felix.atomos.Atomos";
                }
                return nativeImageConfig.mainClass;
            }

            @Override
            public Path nativeImageOutputDirectory()
            {
                return Optional.ofNullable(nativeImageConfig.outputDirectory).map(
                    File::toPath).orElse(null);
            }

            @Override
            public List<String> nativeImageVmFlags()
            {
                return nativeImageConfig.vmFlags;
            }

            @Override
            public Map<String, String> nativeImageVmSystemProperties()
            {
                return nativeImageConfig.vmSystemProperties;

            }

            @Override
            public Boolean noFallback()
            {
                return nativeImageConfig.noFallBack;
            }
        };
        return nic;
    }