IndexableBuilder.java 7.22 KB
package com.google.firebase.appindexing.builders;

import android.os.Bundle;
import android.os.Parcelable;
import android.support.annotation.NonNull;
import com.google.android.gms.common.internal.zzac;
import com.google.firebase.appindexing.FirebaseAppIndexingInvalidArgumentException;
import com.google.firebase.appindexing.Indexable;
import com.google.firebase.appindexing.Indexable.Metadata;
import com.google.firebase.appindexing.Indexable.Metadata.Builder;
import com.google.firebase.appindexing.internal.Thing;
import com.google.firebase.appindexing.internal.Thing.zza;
import com.google.firebase.appindexing.internal.zzm;
import com.google.firebase.appindexing.internal.zzs;
import java.util.Arrays;

public abstract class IndexableBuilder<T extends IndexableBuilder<?>>
{
  private final Bundle a;
  private final String b;
  private Thing.zza c;
  private String d;
  
  protected IndexableBuilder(@NonNull String paramString)
  {
    zzac.zzw(paramString);
    zzac.zzdr(paramString);
    this.a = new Bundle();
    this.b = paramString;
  }
  
  private T a(@NonNull String paramString, @NonNull Thing... paramVarArgs)
  {
    zzac.zzw(paramString);
    zzac.zzw(paramVarArgs);
    if (paramVarArgs.length > 0)
    {
      int i = 0;
      int j = 0;
      if (i < paramVarArgs.length)
      {
        paramVarArgs[j] = paramVarArgs[i];
        if (paramVarArgs[i] == null) {
          zzm.zzit(58 + "Thing at " + i + " is null and is ignored by put method.");
        }
        for (;;)
        {
          i += 1;
          break;
          j += 1;
        }
      }
      if (j > 0)
      {
        paramVarArgs = (Thing[])Arrays.copyOfRange(paramVarArgs, 0, j);
        this.a.putParcelableArray(paramString, (Parcelable[])a(paramVarArgs));
      }
      return this;
    }
    zzm.zzit("Thing array is empty and is ignored by put method.");
    return this;
  }
  
  private static <S> S[] a(S[] paramArrayOfS)
  {
    if (paramArrayOfS.length < 100) {
      return paramArrayOfS;
    }
    zzm.zzit("Input Array of elements is too big, cutting off.");
    return Arrays.copyOf(paramArrayOfS, 100);
  }
  
  public final Indexable build()
  {
    Bundle localBundle = new Bundle(this.a);
    if (this.c == null) {}
    for (Thing.zza localzza = Indexable.Metadata.zzbXh;; localzza = this.c) {
      return new Thing(localBundle, localzza, this.d, this.b);
    }
  }
  
  public T put(@NonNull String paramString, @NonNull long... paramVarArgs)
  {
    zzac.zzw(paramString);
    zzac.zzw(paramVarArgs);
    if (paramVarArgs.length > 0)
    {
      Bundle localBundle = this.a;
      if (paramVarArgs.length < 100) {}
      for (;;)
      {
        localBundle.putLongArray(paramString, paramVarArgs);
        return this;
        zzm.zzit("Input Array of elements is too big, cutting off.");
        paramVarArgs = Arrays.copyOf(paramVarArgs, 100);
      }
    }
    zzm.zzit("Long array is empty and is ignored by put method.");
    return this;
  }
  
  public T put(@NonNull String paramString, @NonNull Indexable... paramVarArgs)
    throws FirebaseAppIndexingInvalidArgumentException
  {
    zzac.zzw(paramString);
    zzac.zzw(paramVarArgs);
    Thing[] arrayOfThing = new Thing[paramVarArgs.length];
    int i = 0;
    while (i < paramVarArgs.length)
    {
      if ((paramVarArgs[i] != null) && (!(paramVarArgs[i] instanceof Thing))) {
        throw new FirebaseAppIndexingInvalidArgumentException("Invalid Indexable encountered. Use Indexable.Builder or convenience methods under Indexables to create the Indexable.");
      }
      arrayOfThing[i] = ((Thing)paramVarArgs[i]);
      i += 1;
    }
    a(paramString, arrayOfThing);
    return this;
  }
  
  protected <S extends IndexableBuilder> T put(@NonNull String paramString, @NonNull S... paramVarArgs)
  {
    zzac.zzw(paramString);
    zzac.zzw(paramVarArgs);
    if (paramVarArgs.length > 0)
    {
      Thing[] arrayOfThing = new Thing[paramVarArgs.length];
      int i = 0;
      if (i < paramVarArgs.length)
      {
        if (paramVarArgs[i] == null) {
          zzm.zzit(60 + "Builder at " + i + " is null and is ignored by put method.");
        }
        for (;;)
        {
          i += 1;
          break;
          arrayOfThing[i] = ((Thing)paramVarArgs[i].build());
        }
      }
      if (arrayOfThing.length > 0) {
        a(paramString, arrayOfThing);
      }
      return this;
    }
    zzm.zzit("Builder array is empty and is ignored by put method.");
    return this;
  }
  
  public T put(@NonNull String paramString, @NonNull String... paramVarArgs)
  {
    zzac.zzw(paramString);
    zzac.zzw(paramVarArgs);
    if (paramVarArgs.length > 0)
    {
      int i = 0;
      int j = 0;
      if (i < Math.min(paramVarArgs.length, 100))
      {
        paramVarArgs[j] = paramVarArgs[i];
        if (paramVarArgs[i] == null) {
          zzm.zzit(59 + "String at " + i + " is null and is ignored by put method.");
        }
        for (;;)
        {
          i += 1;
          break;
          if (paramVarArgs[j].length() > 20000)
          {
            zzm.zzit(53 + "String at " + i + " is too long, truncating string.");
            paramVarArgs[j] = zzs.zzE(paramVarArgs[j], 20000);
          }
          j += 1;
        }
      }
      if (j > 0)
      {
        paramVarArgs = (String[])Arrays.copyOfRange(paramVarArgs, 0, j);
        this.a.putStringArray(paramString, (String[])a(paramVarArgs));
      }
      return this;
    }
    zzm.zzit("String array is empty and is ignored by put method.");
    return this;
  }
  
  public T put(@NonNull String paramString, @NonNull boolean... paramVarArgs)
  {
    zzac.zzw(paramString);
    zzac.zzw(paramVarArgs);
    if (paramVarArgs.length > 0)
    {
      Bundle localBundle = this.a;
      if (paramVarArgs.length < 100) {}
      for (;;)
      {
        localBundle.putBooleanArray(paramString, paramVarArgs);
        return this;
        zzm.zzit("Input Array of elements is too big, cutting off.");
        paramVarArgs = Arrays.copyOf(paramVarArgs, 100);
      }
    }
    zzm.zzit("Boolean array is empty and is ignored by put method.");
    return this;
  }
  
  public final T setDescription(@NonNull String paramString)
  {
    zzac.zzw(paramString);
    return put("description", new String[] { paramString });
  }
  
  public final T setImage(@NonNull String paramString)
  {
    zzac.zzw(paramString);
    return put("image", new String[] { paramString });
  }
  
  public T setMetadata(@NonNull Indexable.Metadata.Builder paramBuilder)
  {
    if (this.c == null) {}
    for (boolean bool = true;; bool = false)
    {
      zzac.zza(bool, "setMetadata may only be called once");
      zzac.zzw(paramBuilder);
      this.c = paramBuilder.zzVh();
      return this;
    }
  }
  
  public final T setName(@NonNull String paramString)
  {
    zzac.zzw(paramString);
    return put("name", new String[] { paramString });
  }
  
  public final T setSameAs(@NonNull String paramString)
  {
    zzac.zzw(paramString);
    return put("sameAs", new String[] { paramString });
  }
  
  public final T setUrl(@NonNull String paramString)
  {
    zzac.zzw(paramString);
    this.d = paramString;
    return this;
  }
}


/* Location:              /home/merong/decompile/hackery-dex2jar.jar!/com/google/firebase/appindexing/builders/IndexableBuilder.class
 * Java compiler version: 6 (50.0)
 * JD-Core Version:       0.7.1
 */