package com.dragome.commons.compiler.classpath; import java.util.ArrayList; import java.util.Arrays; import java.util.Comparator; import java.util.List; import com.dragome.commons.compiler.PrioritySolver; import com.dragome.commons.compiler.classpath.serverside.FolderClasspathEntry; import com.dragome.commons.compiler.classpath.serverside.JarClasspathEntry; public class Classpath { private List<ClasspathEntry> entries= new ArrayList<ClasspathEntry>(); public Classpath() { } public Classpath(ClasspathEntry entry) { entries.add(entry); } public void addEntry(String classPathEntry) { if (classPathEntry.contains(".jar")) entries.add(JarClasspathEntry.createFromPath(classPathEntry)); else entries.add(FolderClasspathEntry.createFromPath(classPathEntry)); } public List<ClasspathEntry> getEntries() { return entries; } public String toString() { return J7Helper.join(";", entries.toArray()); } public void setEntries(ClasspathEntry[] entries) { this.entries= Arrays.asList(entries); } public void sortClassPath(Comparator<ClasspathEntry> comparator) { J7Helper.sort(entries, comparator); } public void sortByPriority(final PrioritySolver prioritySolver) { sortClassPath(new Comparator<ClasspathEntry>() { public int compare(ClasspathEntry o1, ClasspathEntry o2) { return prioritySolver.getPriorityOf(o2) - prioritySolver.getPriorityOf(o1); } }); } public void addEntries(List<ClasspathEntry> extraClasspath) { entries.addAll(extraClasspath); } // if (!file.exists()) // { // DragomeJsCompiler.errorCount++; // Log.getLogger().error("Cannot find resource on class path: " + file.getAbsolutePath()); // continue; // } }