qm.java 2.85 KB
import com.google.common.base.Objects;
import com.google.common.base.Throwables;
import com.google.common.cache.CacheBuilder;
import com.google.common.cache.CacheLoader;
import com.google.common.cache.LoadingCache;
import com.google.common.collect.HashMultimap;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Multimap;
import com.google.common.eventbus.AllowConcurrentEvents;
import com.google.common.util.concurrent.UncheckedExecutionException;
import java.lang.reflect.Method;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
import javax.annotation.Nullable;

public final class qm
  implements qo
{
  private static final LoadingCache<Class<?>, ImmutableList<Method>> a = CacheBuilder.newBuilder().weakKeys().build(new CacheLoader() {});
  
  private static ImmutableList<Method> b(Class<?> paramClass)
  {
    try
    {
      paramClass = (ImmutableList)a.getUnchecked(paramClass);
      return paramClass;
    }
    catch (UncheckedExecutionException paramClass)
    {
      throw Throwables.propagate(paramClass.getCause());
    }
  }
  
  public final Multimap<Class<?>, qn> a(Object paramObject)
  {
    HashMultimap localHashMultimap = HashMultimap.create();
    Iterator localIterator = b(paramObject.getClass()).iterator();
    if (localIterator.hasNext())
    {
      Object localObject = (Method)localIterator.next();
      Class localClass = localObject.getParameterTypes()[0];
      int i;
      if (((Method)localObject).getAnnotation(AllowConcurrentEvents.class) != null)
      {
        i = 1;
        label57:
        if (i == 0) {
          break label90;
        }
      }
      label90:
      for (localObject = new qn(paramObject, (Method)localObject);; localObject = new qp(paramObject, (Method)localObject))
      {
        localHashMultimap.put(localClass, localObject);
        break;
        i = 0;
        break label57;
      }
    }
    return localHashMultimap;
  }
  
  static final class a
  {
    private final String a;
    private final List<Class<?>> b;
    
    a(Method paramMethod)
    {
      this.a = paramMethod.getName();
      this.b = Arrays.asList(paramMethod.getParameterTypes());
    }
    
    public final boolean equals(@Nullable Object paramObject)
    {
      boolean bool2 = false;
      boolean bool1 = bool2;
      if ((paramObject instanceof a))
      {
        paramObject = (a)paramObject;
        bool1 = bool2;
        if (this.a.equals(((a)paramObject).a))
        {
          bool1 = bool2;
          if (this.b.equals(((a)paramObject).b)) {
            bool1 = true;
          }
        }
      }
      return bool1;
    }
    
    public final int hashCode()
    {
      return Objects.hashCode(new Object[] { this.a, this.b });
    }
  }
}


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