All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.infinispan.util.FileLookup Maven / Gradle / Ivy

package org.infinispan.util;

import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.util.Collection;

/**
 * 

* Holds the logic of looking up a file, in the following sequence: *

  1. try to load it with the current thread's * context ClassLoader
  2. if fails, the system ClassLoader
  3. if fails, try to load it as a file from the * disk
* *

* Use {@link FileLookupFactory} to obtain an instance of {@link FileLookup}. This will result in an extended version * of {@link FileLookup} being used if in an OSGI environment. *

* * @author [email protected] * @author Pete Muir * @since 4.0 */ public interface FileLookup { /** * Looks up the file, see : {@link FileLookupFactory.DefaultFileLookup}. * * @param filename might be the name of the file (too look it up in the class path) or an url to a file. * @return an input stream to the file or null if nothing found through all lookup steps. */ InputStream lookupFile(String filename, ClassLoader cl); /** * Looks up the file, see : {@link FileLookupFactory.DefaultFileLookup}. * * @param filename might be the name of the file (too look it up in the class path) or an url to a file. * @return an input stream to the file or null if nothing found through all lookup steps. * @throws FileNotFoundException if file cannot be found */ InputStream lookupFileStrict(String filename, ClassLoader cl) throws FileNotFoundException; URL lookupFileLocation(String filename, ClassLoader cl); Collection lookupFileLocations(String filename, ClassLoader cl) throws IOException; }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy