HADOOP-8814. Merging change r1387853 from trunk
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1512510 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
7f2a646af2
commit
375378a0e5
|
@ -67,6 +67,9 @@ Release 2.1.1-beta - UNRELEASED
|
|||
|
||||
HADOOP-9789. Support server advertised kerberos principals (daryn)
|
||||
|
||||
HADOOP-8814. Replace string equals "" by String#isEmpty().
|
||||
(Brandon Li via suresh)
|
||||
|
||||
OPTIMIZATIONS
|
||||
|
||||
BUG FIXES
|
||||
|
|
|
@ -1084,7 +1084,7 @@ public class Configuration implements Iterable<Map.Entry<String,String>>,
|
|||
*/
|
||||
public boolean getBoolean(String name, boolean defaultValue) {
|
||||
String valueString = getTrimmed(name);
|
||||
if (null == valueString || "".equals(valueString)) {
|
||||
if (null == valueString || valueString.isEmpty()) {
|
||||
return defaultValue;
|
||||
}
|
||||
|
||||
|
@ -1238,7 +1238,7 @@ public class Configuration implements Iterable<Map.Entry<String,String>>,
|
|||
*/
|
||||
public Pattern getPattern(String name, Pattern defaultValue) {
|
||||
String valString = get(name);
|
||||
if (null == valString || "".equals(valString)) {
|
||||
if (null == valString || valString.isEmpty()) {
|
||||
return defaultValue;
|
||||
}
|
||||
try {
|
||||
|
|
|
@ -153,9 +153,9 @@ public class ReconfigurationServlet extends HttpServlet {
|
|||
StringEscapeUtils.unescapeHtml(req.getParameter(rawParam));
|
||||
if (value != null) {
|
||||
if (value.equals(newConf.getRaw(param)) || value.equals("default") ||
|
||||
value.equals("null") || value.equals("")) {
|
||||
value.equals("null") || value.isEmpty()) {
|
||||
if ((value.equals("default") || value.equals("null") ||
|
||||
value.equals("")) &&
|
||||
value.isEmpty()) &&
|
||||
oldConf.getRaw(param) != null) {
|
||||
out.println("<p>Changed \"" +
|
||||
StringEscapeUtils.escapeHtml(param) + "\" from \"" +
|
||||
|
@ -163,7 +163,7 @@ public class ReconfigurationServlet extends HttpServlet {
|
|||
"\" to default</p>");
|
||||
reconf.reconfigureProperty(param, null);
|
||||
} else if (!value.equals("default") && !value.equals("null") &&
|
||||
!value.equals("") &&
|
||||
!value.isEmpty() &&
|
||||
(oldConf.getRaw(param) == null ||
|
||||
!oldConf.getRaw(param).equals(value))) {
|
||||
// change from default or value to different value
|
||||
|
|
|
@ -104,7 +104,7 @@ public class Path implements Comparable {
|
|||
// Add a slash to parent's path so resolution is compatible with URI's
|
||||
URI parentUri = parent.uri;
|
||||
String parentPath = parentUri.getPath();
|
||||
if (!(parentPath.equals("/") || parentPath.equals(""))) {
|
||||
if (!(parentPath.equals("/") || parentPath.isEmpty())) {
|
||||
try {
|
||||
parentUri = new URI(parentUri.getScheme(), parentUri.getAuthority(),
|
||||
parentUri.getPath()+"/", null, parentUri.getFragment());
|
||||
|
|
|
@ -524,7 +524,7 @@ public class RawLocalFileSystem extends FileSystem {
|
|||
* onwer.equals("").
|
||||
*/
|
||||
private boolean isPermissionLoaded() {
|
||||
return !super.getOwner().equals("");
|
||||
return !super.getOwner().isEmpty();
|
||||
}
|
||||
|
||||
RawLocalFileStatus(File f, long defaultBlockSize, FileSystem fs) {
|
||||
|
|
|
@ -110,7 +110,7 @@ public class RawLocalFs extends DelegateToFileSystem {
|
|||
try {
|
||||
FileStatus fs = getFileStatus(f);
|
||||
// If f refers to a regular file or directory
|
||||
if ("".equals(target)) {
|
||||
if (target.isEmpty()) {
|
||||
return fs;
|
||||
}
|
||||
// Otherwise f refers to a symlink
|
||||
|
@ -132,7 +132,7 @@ public class RawLocalFs extends DelegateToFileSystem {
|
|||
* the readBasicFileAttributes method in java.nio.file.attributes
|
||||
* when available.
|
||||
*/
|
||||
if (!"".equals(target)) {
|
||||
if (!target.isEmpty()) {
|
||||
return new FileStatus(0, false, 0, 0, 0, 0, FsPermission.getDefault(),
|
||||
"", "", new Path(target), f);
|
||||
}
|
||||
|
|
|
@ -300,7 +300,7 @@ public class NativeS3FileSystem extends FileSystem {
|
|||
}
|
||||
|
||||
private static String pathToKey(Path path) {
|
||||
if (path.toUri().getScheme() != null && "".equals(path.toUri().getPath())) {
|
||||
if (path.toUri().getScheme() != null && path.toUri().getPath().isEmpty()) {
|
||||
// allow uris without trailing slash after bucket to refer to root,
|
||||
// like s3n://mybucket
|
||||
return "";
|
||||
|
|
|
@ -285,7 +285,7 @@ public class ActiveStandbyElector implements StatCallback, StringCallback {
|
|||
|
||||
String pathParts[] = znodeWorkingDir.split("/");
|
||||
Preconditions.checkArgument(pathParts.length >= 1 &&
|
||||
"".equals(pathParts[0]),
|
||||
pathParts[0].isEmpty(),
|
||||
"Invalid path: %s", znodeWorkingDir);
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
|
|
@ -241,7 +241,7 @@ public class SshFenceByTcpPort extends Configured
|
|||
sshPort = DEFAULT_SSH_PORT;
|
||||
|
||||
// Parse optional user and ssh port
|
||||
if (arg != null && !"".equals(arg)) {
|
||||
if (arg != null && !arg.isEmpty()) {
|
||||
Matcher m = USER_PORT_RE.matcher(arg);
|
||||
if (!m.matches()) {
|
||||
throw new BadFencingConfigurationException(
|
||||
|
|
|
@ -192,7 +192,7 @@ public class DefaultStringifier<T> implements Stringifier<T> {
|
|||
String[] parts = itemStr.split(SEPARATOR);
|
||||
|
||||
for (String part : parts) {
|
||||
if (!part.equals(""))
|
||||
if (!part.isEmpty())
|
||||
list.add(stringifier.fromString(part));
|
||||
}
|
||||
|
||||
|
|
|
@ -2105,7 +2105,7 @@ public class TFile {
|
|||
}
|
||||
|
||||
public boolean isSorted() {
|
||||
return !strComparator.equals("");
|
||||
return !strComparator.isEmpty();
|
||||
}
|
||||
|
||||
public String getComparatorString() {
|
||||
|
|
|
@ -129,7 +129,7 @@ public abstract class MetricsDynamicMBeanBase implements DynamicMBean {
|
|||
@Override
|
||||
public Object getAttribute(String attributeName) throws AttributeNotFoundException,
|
||||
MBeanException, ReflectionException {
|
||||
if (attributeName == null || attributeName.equals(""))
|
||||
if (attributeName == null || attributeName.isEmpty())
|
||||
throw new IllegalArgumentException();
|
||||
|
||||
updateMbeanInfoIfMetricsListChanged();
|
||||
|
@ -197,7 +197,7 @@ public abstract class MetricsDynamicMBeanBase implements DynamicMBean {
|
|||
public Object invoke(String actionName, Object[] parms, String[] signature)
|
||||
throws MBeanException, ReflectionException {
|
||||
|
||||
if (actionName == null || actionName.equals(""))
|
||||
if (actionName == null || actionName.isEmpty())
|
||||
throw new IllegalArgumentException();
|
||||
|
||||
|
||||
|
|
|
@ -144,7 +144,7 @@ public class CsvRecordInput implements RecordInput {
|
|||
|
||||
@Override
|
||||
public void startRecord(String tag) throws IOException {
|
||||
if (tag != null && !"".equals(tag)) {
|
||||
if (tag != null && !tag.isEmpty()) {
|
||||
char c1 = (char) stream.read();
|
||||
char c2 = (char) stream.read();
|
||||
if (c1 != 's' || c2 != '{') {
|
||||
|
@ -156,7 +156,7 @@ public class CsvRecordInput implements RecordInput {
|
|||
@Override
|
||||
public void endRecord(String tag) throws IOException {
|
||||
char c = (char) stream.read();
|
||||
if (tag == null || "".equals(tag)) {
|
||||
if (tag == null || tag.isEmpty()) {
|
||||
if (c != '\n' && c != '\r') {
|
||||
throw new IOException("Error deserializing record.");
|
||||
} else {
|
||||
|
|
|
@ -115,7 +115,7 @@ public class CsvRecordOutput implements RecordOutput {
|
|||
|
||||
@Override
|
||||
public void startRecord(Record r, String tag) throws IOException {
|
||||
if (tag != null && !"".equals(tag)) {
|
||||
if (tag != null && ! tag.isEmpty()) {
|
||||
printCommaUnlessFirst();
|
||||
stream.print("s{");
|
||||
isFirst = true;
|
||||
|
@ -124,7 +124,7 @@ public class CsvRecordOutput implements RecordOutput {
|
|||
|
||||
@Override
|
||||
public void endRecord(Record r, String tag) throws IOException {
|
||||
if (tag == null || "".equals(tag)) {
|
||||
if (tag == null || tag.isEmpty()) {
|
||||
stream.print("\n");
|
||||
isFirst = true;
|
||||
} else {
|
||||
|
|
|
@ -217,7 +217,7 @@ public class SecurityUtil {
|
|||
private static String replacePattern(String[] components, String hostname)
|
||||
throws IOException {
|
||||
String fqdn = hostname;
|
||||
if (fqdn == null || fqdn.equals("") || fqdn.equals("0.0.0.0")) {
|
||||
if (fqdn == null || fqdn.isEmpty() || fqdn.equals("0.0.0.0")) {
|
||||
fqdn = getLocalHostName();
|
||||
}
|
||||
return components[0] + "/" + fqdn.toLowerCase(Locale.US) + "@" + components[2];
|
||||
|
|
|
@ -1046,7 +1046,7 @@ public class UserGroupInformation {
|
|||
@InterfaceAudience.Public
|
||||
@InterfaceStability.Evolving
|
||||
public static UserGroupInformation createRemoteUser(String user) {
|
||||
if (user == null || "".equals(user)) {
|
||||
if (user == null || user.isEmpty()) {
|
||||
throw new IllegalArgumentException("Null user");
|
||||
}
|
||||
Subject subject = new Subject();
|
||||
|
@ -1118,7 +1118,7 @@ public class UserGroupInformation {
|
|||
@InterfaceStability.Evolving
|
||||
public static UserGroupInformation createProxyUser(String user,
|
||||
UserGroupInformation realUser) {
|
||||
if (user == null || "".equals(user)) {
|
||||
if (user == null || user.isEmpty()) {
|
||||
throw new IllegalArgumentException("Null user");
|
||||
}
|
||||
if (realUser == null) {
|
||||
|
|
|
@ -88,7 +88,7 @@ public class ServiceAuthorizationManager {
|
|||
String clientPrincipal = null;
|
||||
if (krbInfo != null) {
|
||||
String clientKey = krbInfo.clientPrincipal();
|
||||
if (clientKey != null && !clientKey.equals("")) {
|
||||
if (clientKey != null && !clientKey.isEmpty()) {
|
||||
try {
|
||||
clientPrincipal = SecurityUtil.getServerPrincipal(
|
||||
conf.get(clientKey), addr);
|
||||
|
|
|
@ -87,12 +87,12 @@ extends TokenIdentifier {
|
|||
*/
|
||||
@Override
|
||||
public UserGroupInformation getUser() {
|
||||
if ( (owner == null) || ("".equals(owner.toString()))) {
|
||||
if ( (owner == null) || (owner.toString().isEmpty())) {
|
||||
return null;
|
||||
}
|
||||
final UserGroupInformation realUgi;
|
||||
final UserGroupInformation ugi;
|
||||
if ((realUser == null) || ("".equals(realUser.toString()))
|
||||
if ((realUser == null) || (realUser.toString().isEmpty())
|
||||
|| realUser.equals(owner)) {
|
||||
ugi = realUgi = UserGroupInformation.createRemoteUser(owner.toString());
|
||||
} else {
|
||||
|
|
|
@ -335,7 +335,7 @@ extends AbstractDelegationTokenIdentifier>
|
|||
throw new InvalidToken("User " + renewer +
|
||||
" tried to renew an expired token");
|
||||
}
|
||||
if ((id.getRenewer() == null) || ("".equals(id.getRenewer().toString()))) {
|
||||
if ((id.getRenewer() == null) || (id.getRenewer().toString().isEmpty())) {
|
||||
throw new AccessControlException("User " + renewer +
|
||||
" tried to renew a token without " +
|
||||
"a renewer");
|
||||
|
@ -392,7 +392,7 @@ extends AbstractDelegationTokenIdentifier>
|
|||
HadoopKerberosName cancelerKrbName = new HadoopKerberosName(canceller);
|
||||
String cancelerShortName = cancelerKrbName.getShortName();
|
||||
if (!canceller.equals(owner)
|
||||
&& (renewer == null || "".equals(renewer.toString()) || !cancelerShortName
|
||||
&& (renewer == null || renewer.toString().isEmpty() || !cancelerShortName
|
||||
.equals(renewer.toString()))) {
|
||||
throw new AccessControlException(canceller
|
||||
+ " is not authorized to cancel the token");
|
||||
|
|
|
@ -82,13 +82,13 @@ public class HostsFileReader {
|
|||
|
||||
public synchronized void refresh() throws IOException {
|
||||
LOG.info("Refreshing hosts (include/exclude) list");
|
||||
if (!includesFile.equals("")) {
|
||||
if (!includesFile.isEmpty()) {
|
||||
Set<String> newIncludes = new HashSet<String>();
|
||||
readFileToSet("included", includesFile, newIncludes);
|
||||
// switch the new hosts that are to be included
|
||||
includes = newIncludes;
|
||||
}
|
||||
if (!excludesFile.equals("")) {
|
||||
if (!excludesFile.isEmpty()) {
|
||||
Set<String> newExcludes = new HashSet<String>();
|
||||
readFileToSet("excluded", excludesFile, newExcludes);
|
||||
// switch the excluded hosts
|
||||
|
|
|
@ -352,7 +352,7 @@ public class StringUtils {
|
|||
* @return an array of <code>String</code> values
|
||||
*/
|
||||
public static String[] getTrimmedStrings(String str){
|
||||
if (null == str || "".equals(str.trim())) {
|
||||
if (null == str || str.trim().isEmpty()) {
|
||||
return emptyStringArray;
|
||||
}
|
||||
|
||||
|
@ -412,7 +412,7 @@ public class StringUtils {
|
|||
String str, char separator) {
|
||||
// String.split returns a single empty result for splitting the empty
|
||||
// string.
|
||||
if ("".equals(str)) {
|
||||
if (str.isEmpty()) {
|
||||
return new String[]{""};
|
||||
}
|
||||
ArrayList<String> strList = new ArrayList<String>();
|
||||
|
|
|
@ -84,7 +84,7 @@ public class TestNativeIO {
|
|||
}
|
||||
assertEquals(expectedOwner, owner);
|
||||
assertNotNull(stat.getGroup());
|
||||
assertTrue(!"".equals(stat.getGroup()));
|
||||
assertTrue(!stat.getGroup().isEmpty());
|
||||
assertEquals("Stat mode field should indicate a regular file",
|
||||
NativeIO.POSIX.Stat.S_IFREG,
|
||||
stat.getMode() & NativeIO.POSIX.Stat.S_IFMT);
|
||||
|
@ -118,7 +118,7 @@ public class TestNativeIO {
|
|||
NativeIO.POSIX.Stat stat = NativeIO.POSIX.getFstat(fos.getFD());
|
||||
assertEquals(System.getProperty("user.name"), stat.getOwner());
|
||||
assertNotNull(stat.getGroup());
|
||||
assertTrue(!"".equals(stat.getGroup()));
|
||||
assertTrue(!stat.getGroup().isEmpty());
|
||||
assertEquals("Stat mode field should indicate a regular file",
|
||||
NativeIO.POSIX.Stat.S_IFREG,
|
||||
stat.getMode() & NativeIO.POSIX.Stat.S_IFMT);
|
||||
|
|
|
@ -175,7 +175,7 @@ public class TestSaslRPC {
|
|||
}
|
||||
@Override
|
||||
public UserGroupInformation getUser() {
|
||||
if ("".equals(realUser.toString())) {
|
||||
if (realUser.toString().isEmpty()) {
|
||||
return UserGroupInformation.createRemoteUser(tokenid.toString());
|
||||
} else {
|
||||
UserGroupInformation realUgi = UserGroupInformation
|
||||
|
|
|
@ -294,7 +294,8 @@ public class TestStringUtils extends UnitTestcaseTimeLimit {
|
|||
assertArrayEquals(expectedArray, StringUtils.getTrimmedStrings(pathologicalDirList2));
|
||||
|
||||
assertArrayEquals(emptyArray, StringUtils.getTrimmedStrings(emptyList1));
|
||||
assertArrayEquals(emptyArray, StringUtils.getTrimmedStrings(emptyList2));
|
||||
String[] estring = StringUtils.getTrimmedStrings(emptyList2);
|
||||
assertArrayEquals(emptyArray, estring);
|
||||
}
|
||||
|
||||
@Test (timeout = 30000)
|
||||
|
|
Loading…
Reference in New Issue