Java tutorial
/** * Copyright 2010 TransPac Software, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.scaleunlimited.cascading; import java.io.File; import java.io.IOException; import java.security.InvalidParameterException; import org.apache.hadoop.fs.FileStatus; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; public class FsUtils { /** * Protect against earlier versions of Hadoop returning null if there * are no sub-directories in <path> * * @param fs * @param path * @return * @throws IOException */ public static FileStatus[] listStatus(FileSystem fs, Path path) throws IOException { FileStatus[] result = fs.listStatus(path); if (result == null) { result = new FileStatus[0]; } return result; } public static File makeTempDir() throws IOException { File tmpFile = File.createTempFile("temp-dir", "tmp"); tmpFile.deleteOnExit(); String filename = tmpFile.getCanonicalPath(); String dirname = filename.substring(0, filename.length() - 4); File tmpDir = new File(dirname); if (!tmpDir.mkdir()) { throw new IOException("Can't create temp directory: " + dirname); } return tmpDir; } public static void assertPathExists(FileSystem fs, Path path, String description) throws IOException { if (!fs.exists(path)) { String message = String.format("%s doesn't exist: %s", description, path); throw new InvalidParameterException(message); } } }