@@ -0,0 +1,1476 @@
+package org.svetovid.installer;%0D%0A%0D%0Aimport java.io.File;%0D%0Aimport java.nio.file.Files;%0D%0Aimport java.nio.file.Path;%0D%0Aimport java.nio.file.Paths;%0D%0A%0D%0Apublic final class JavaInstallation %7B%0D%0A%0D%0A    private Path location;%0D%0A    private Path binLocation;%0D%0A    private Path libLocation;%0D%0A%0D%0A    private JavaInstallation() %7B%0D%0A        this.location = null;%0D%0A        String%5B%5D extdirs = System.getProperty(%22java.ext.dirs%22).split(File.pathSeparator);%0D%0A        if (extdirs.length %3E 1) %7B%0D%0A            libLocation = Paths.get(extdirs%5B1%5D);%0D%0A        %7D%0D%0A    %7D%0D%0A%0D%0A    private JavaInstallation(Path location) %7B%0D%0A        this.location = location;%0D%0A        initialize();%0D%0A    %7D%0D%0A%0D%0A    private void initialize() %7B%0D%0A        if (location == null) %7B%0D%0A            return;%0D%0A        %7D%0D%0A        binLocation = libLocation = null;%0D%0A        if (!Files.isDirectory(location)) %7B%0D%0A            return;%0D%0A        %7D%0D%0A        binLocation = location.resolve(%22bin%22);%0D%0A        if (!Files.isDirectory(binLocation)) %7B%0D%0A            return;%0D%0A        %7D%0D%0A        libLocation = location.resolve(%22jre/lib/ext%22);%0D%0A        if (!Files.isDirectory(libLocation)) %7B%0D%0A            libLocation = location.resolve(%22lib/ext%22);%0D%0A        %7D%0D%0A        if (!Files.isDirectory(libLocation)) %7B%0D%0A            return;%0D%0A        %7D%0D%0A    %7D%0D%0A%0D%0A    public Path getLocation() %7B%0D%0A        return location;%0D%0A    %7D%0D%0A%0D%0A    public Path getBinLocation() %7B%0D%0A        return binLocation;%0D%0A    %7D%0D%0A%0D%0A    public Path getLibLocation() %7B%0D%0A        return libLocation;%0D%0A    %7D%0D%0A%7D%0D%0A

Add class for representation of Java installations