package org.smoothbuild.builtin.java.util;
import java.util.function.Predicate;
import javax.tools.JavaFileObject.Kind;
public class JavaNaming {
private static final String CLASS_FILE_EXTENSION = Kind.CLASS.extension;
private static final Predicate<String> IS_CLASS_FILE = (string) -> string.endsWith(
CLASS_FILE_EXTENSION);
public static String toBinaryName(String path) {
int endIndex = path.length() - CLASS_FILE_EXTENSION.length();
String withoutExtension = path.substring(0, endIndex);
return withoutExtension.replace('/', '.');
}
public static String binaryNameToPackage(String binaryName) {
int lastIndex = binaryName.lastIndexOf('.');
if (lastIndex == -1) {
return "";
} else {
return binaryName.substring(0, lastIndex);
}
}
public static Predicate<String> isClassFilePredicate() {
return IS_CLASS_FILE;
}
}