@@ -0,0 +1,1518 @@
+package ro.fortsoft.pf4j;%0A%0Aimport org.slf4j.Logger;%0Aimport org.slf4j.LoggerFactory;%0A%0Aimport java.io.File;%0Aimport java.net.MalformedURLException;%0Aimport java.net.URL;%0Aimport java.util.Optional;%0Aimport java.util.function.Function;%0A%0A/**%0A * this class contains information about aspect.%0A * @author LeanderK%0A * @version 1.0%0A */%0Apublic class AspectOrAffected %7B%0A    private final URL path;%0A    private final String className;%0A    private final Function%3CClass%3C?%3E, Class%3C?%3E%3E callback;%0A    private final boolean isAspect;%0A    private static final Logger log = LoggerFactory.getLogger(IzouPluginClassLoader.class);%0A%0A%0A    public AspectOrAffected(URL path, String className, Function%3CClass%3C?%3E, Class%3C?%3E%3E callback, boolean isAspect) %7B%0A        this.path = path;%0A        this.className = className;%0A        this.callback = callback;%0A        this.isAspect = isAspect;%0A    %7D%0A%0A    public URL getPath() %7B%0A        return path;%0A    %7D%0A%0A    public Optional%3CURL%3E getDirectory() %7B%0A        URL finalURL = path;%0A        if (!new File(finalURL.getFile()).isDirectory())%0A            try %7B%0A                return Optional.of(new File(path.getFile()).getParentFile().toURI().toURL());%0A            %7D catch (MalformedURLException e) %7B%0A                log.error(%22illegal url%22);%0A            %7D%0A        return Optional.empty();%0A    %7D%0A%0A    public String getClassName() %7B%0A        return className;%0A    %7D%0A%0A    public Function%3CClass%3C?%3E, Class%3C?%3E%3E getCallback() %7B%0A        return callback;%0A    %7D%0A%0A    public boolean isAspect() %7B%0A        return isAspect;%0A    %7D%0A%7D%0A

Create AspectOrAffected.java