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:
Brandon Li 2013-08-09 21:57:19 +00:00
parent 7f2a646af2
commit 375378a0e5
24 changed files with 40 additions and 36 deletions

View File

@ -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

View File

@ -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 {

View File

@ -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

View File

@ -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());

View File

@ -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) {

View File

@ -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);
}

View File

@ -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 "";

View File

@ -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();

View File

@ -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(

View File

@ -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));
}

View File

@ -2105,7 +2105,7 @@ public class TFile {
}
public boolean isSorted() {
return !strComparator.equals("");
return !strComparator.isEmpty();
}
public String getComparatorString() {

View File

@ -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();

View File

@ -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 {

View File

@ -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 {

View File

@ -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];

View File

@ -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) {

View File

@ -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);

View File

@ -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 {

View File

@ -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");

View File

@ -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

View File

@ -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>();

View File

@ -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);

View File

@ -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

View File

@ -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)