src/main/java/com/github/ricksbrown/cowsay/Cowloader.java
private static InputStream getCowFromCowPath(final String cowName) {
		String cowPath = System.getenv("COWPATH");
		if (cowPath != null) {
			String[] paths = cowPath.split(File.pathSeparator);
			if (paths != null) {
				for (String path : paths) {
					File cowfile = getCowfile(path, cowName);
					if (cowfile != null) {
						return cowfileToCowInputStream(cowfile);
					}
				}
			}
		}
		return getCowFromResources(cowName);
	}
private static InputStream getCowFromCowPath(final String cowName) {
		String cowPath = System.getenv("COWPATH");
		if (cowPath != null) {
			String[] paths = cowPath.split(File.pathSeparator);
			if (paths != null) {
				for (String path : paths) {
					File cowfile = getCowfile(path, cowName);
					if (cowfile != null) {
						return cowfileToCowInputStream(cowfile);
					}
				}
			}
		}
		return getCowFromResources(cowName);
	}
private static InputStream getCowFromCowPath ( final String cowName ) { String cowPath = System . getenv ( "COWPATH" ) ; if ( cowPath != null ) { String [ ] paths = cowPath . split ( File . pathSeparator ) ; if ( paths != null ) { for ( String path : paths ) { File cowfile = getCowfile ( path , cowName ) ; if ( cowfile != null ) { return cowfileToCowInputStream ( cowfile ) ; } } } } return getCowFromResources ( cowName ) ; }
This will attempt to load a cowfile, by name, from the COWPATH environment variable or bundled cowfiles.
Note that bundled cowfiles are considered part of the COWPATH since this is how to original `cowsay` worked.
COWPATH takes precedence and bundled cowfiles are only considered after searching the COWPATH.

@param cowName The name of a cowfile, e.g. "sheep" or "sheep.cow".
@return An InputStream to the first matching cowfile found.
This will attempt to load a cowfile by name from the COWPATH environment variable or bundled cowfiles . Note that bundled cowfiles are considered part of the COWPATH since this is how to original cowsay worked . COWPATH takes precedence and bundled cowfiles are only considered after searching the COWPATH .