MoreObjects.java 4.73 KB
package com.google.common.base;

import com.google.common.annotations.GwtCompatible;
import javax.annotation.Nullable;

@GwtCompatible
public final class MoreObjects
{
  static String a(Class<?> paramClass)
  {
    paramClass = paramClass.getName().replaceAll("\\$[0-9]+", "\\$");
    int j = paramClass.lastIndexOf('$');
    int i = j;
    if (j == -1) {
      i = paramClass.lastIndexOf('.');
    }
    return paramClass.substring(i + 1);
  }
  
  public static <T> T firstNonNull(@Nullable T paramT1, @Nullable T paramT2)
  {
    if (paramT1 != null) {
      return paramT1;
    }
    return (T)Preconditions.checkNotNull(paramT2);
  }
  
  public static ToStringHelper toStringHelper(Class<?> paramClass)
  {
    return new ToStringHelper(a(paramClass), (byte)0);
  }
  
  public static ToStringHelper toStringHelper(Object paramObject)
  {
    return new ToStringHelper(a(paramObject.getClass()), (byte)0);
  }
  
  public static ToStringHelper toStringHelper(String paramString)
  {
    return new ToStringHelper(paramString, (byte)0);
  }
  
  public static final class ToStringHelper
  {
    private final String a;
    private a b = new a((byte)0);
    private a c = this.b;
    private boolean d = false;
    
    private ToStringHelper(String paramString)
    {
      this.a = ((String)Preconditions.checkNotNull(paramString));
    }
    
    private a a()
    {
      a locala = new a((byte)0);
      this.c.c = locala;
      this.c = locala;
      return locala;
    }
    
    private ToStringHelper a(@Nullable Object paramObject)
    {
      a().b = paramObject;
      return this;
    }
    
    private ToStringHelper a(String paramString, @Nullable Object paramObject)
    {
      a locala = a();
      locala.b = paramObject;
      locala.a = ((String)Preconditions.checkNotNull(paramString));
      return this;
    }
    
    public final ToStringHelper add(String paramString, char paramChar)
    {
      return a(paramString, String.valueOf(paramChar));
    }
    
    public final ToStringHelper add(String paramString, double paramDouble)
    {
      return a(paramString, String.valueOf(paramDouble));
    }
    
    public final ToStringHelper add(String paramString, float paramFloat)
    {
      return a(paramString, String.valueOf(paramFloat));
    }
    
    public final ToStringHelper add(String paramString, int paramInt)
    {
      return a(paramString, String.valueOf(paramInt));
    }
    
    public final ToStringHelper add(String paramString, long paramLong)
    {
      return a(paramString, String.valueOf(paramLong));
    }
    
    public final ToStringHelper add(String paramString, @Nullable Object paramObject)
    {
      return a(paramString, paramObject);
    }
    
    public final ToStringHelper add(String paramString, boolean paramBoolean)
    {
      return a(paramString, String.valueOf(paramBoolean));
    }
    
    public final ToStringHelper addValue(char paramChar)
    {
      return a(String.valueOf(paramChar));
    }
    
    public final ToStringHelper addValue(double paramDouble)
    {
      return a(String.valueOf(paramDouble));
    }
    
    public final ToStringHelper addValue(float paramFloat)
    {
      return a(String.valueOf(paramFloat));
    }
    
    public final ToStringHelper addValue(int paramInt)
    {
      return a(String.valueOf(paramInt));
    }
    
    public final ToStringHelper addValue(long paramLong)
    {
      return a(String.valueOf(paramLong));
    }
    
    public final ToStringHelper addValue(@Nullable Object paramObject)
    {
      return a(paramObject);
    }
    
    public final ToStringHelper addValue(boolean paramBoolean)
    {
      return a(String.valueOf(paramBoolean));
    }
    
    public final ToStringHelper omitNullValues()
    {
      this.d = true;
      return this;
    }
    
    public final String toString()
    {
      boolean bool = this.d;
      StringBuilder localStringBuilder = new StringBuilder(32).append(this.a).append('{');
      a locala = this.b.c;
      Object localObject2;
      for (Object localObject1 = ""; locala != null; localObject1 = localObject2)
      {
        if (bool)
        {
          localObject2 = localObject1;
          if (locala.b == null) {}
        }
        else
        {
          localStringBuilder.append((String)localObject1);
          localObject2 = ", ";
          if (locala.a != null) {
            localStringBuilder.append(locala.a).append('=');
          }
          localStringBuilder.append(locala.b);
        }
        locala = locala.c;
      }
      return '}';
    }
    
    static final class a
    {
      String a;
      Object b;
      a c;
    }
  }
}


/* Location:              /home/merong/decompile/hackery-dex2jar.jar!/com/google/common/base/MoreObjects.class
 * Java compiler version: 6 (50.0)
 * JD-Core Version:       0.7.1
 */