package tv.ouya.console.internal;

import android.os.Binder;
import android.os.IBinder;
import android.os.IInterface;
import android.os.Parcel;
import android.os.Parcelable.Creator;
import android.os.RemoteException;
import java.util.List;
import tv.ouya.console.api.Purchasable;

public abstract interface IIapServiceDefinition
  extends IInterface
{
  public abstract void requestGamerInfo(String paramString, IStringListener paramIStringListener)
    throws RemoteException;
  
  public abstract void requestGamerUuid(String paramString, IStringListener paramIStringListener)
    throws RemoteException;
  
  public abstract void requestProductList(String paramString, List<Purchasable> paramList, IProductListListener paramIProductListListener)
    throws RemoteException;
  
  public abstract void requestProductListForVersion(String paramString, int paramInt, List<Purchasable> paramList, IProductListListener paramIProductListListener)
    throws RemoteException;
  
  public abstract void requestPurchase(String paramString, Purchasable paramPurchasable, IStringListener paramIStringListener)
    throws RemoteException;
  
  public abstract void requestReceipts(String paramString, IStringListener paramIStringListener)
    throws RemoteException;
  
  public abstract void setTestMode()
    throws RemoteException;
  
  public static abstract class Stub
    extends Binder
    implements IIapServiceDefinition
  {
    private static final String DESCRIPTOR = "tv.ouya.console.internal.IIapServiceDefinition";
    static final int TRANSACTION_requestGamerInfo = 7;
    static final int TRANSACTION_requestGamerUuid = 5;
    static final int TRANSACTION_requestProductList = 2;
    static final int TRANSACTION_requestProductListForVersion = 6;
    static final int TRANSACTION_requestPurchase = 3;
    static final int TRANSACTION_requestReceipts = 4;
    static final int TRANSACTION_setTestMode = 1;
    
    public Stub()
    {
      attachInterface(this, "tv.ouya.console.internal.IIapServiceDefinition");
    }
    
    public static IIapServiceDefinition asInterface(IBinder paramIBinder)
    {
      if (paramIBinder == null) {
        return null;
      }
      IInterface localIInterface = paramIBinder.queryLocalInterface("tv.ouya.console.internal.IIapServiceDefinition");
      if ((localIInterface != null) && ((localIInterface instanceof IIapServiceDefinition))) {
        return (IIapServiceDefinition)localIInterface;
      }
      return new Proxy(paramIBinder);
    }
    
    public IBinder asBinder()
    {
      return this;
    }
    
    public boolean onTransact(int paramInt1, Parcel paramParcel1, Parcel paramParcel2, int paramInt2)
      throws RemoteException
    {
      switch (paramInt1)
      {
      default: 
        return super.onTransact(paramInt1, paramParcel1, paramParcel2, paramInt2);
      case 1598968902: 
        paramParcel2.writeString("tv.ouya.console.internal.IIapServiceDefinition");
        return true;
      case 1: 
        paramParcel1.enforceInterface("tv.ouya.console.internal.IIapServiceDefinition");
        setTestMode();
        paramParcel2.writeNoException();
        return true;
      case 2: 
        paramParcel1.enforceInterface("tv.ouya.console.internal.IIapServiceDefinition");
        requestProductList(paramParcel1.readString(), paramParcel1.createTypedArrayList(Purchasable.CREATOR), IProductListListener.Stub.asInterface(paramParcel1.readStrongBinder()));
        paramParcel2.writeNoException();
        return true;
      case 3: 
        paramParcel1.enforceInterface("tv.ouya.console.internal.IIapServiceDefinition");
        String str = paramParcel1.readString();
        if (paramParcel1.readInt() != 0) {}
        for (Purchasable localPurchasable = (Purchasable)Purchasable.CREATOR.createFromParcel(paramParcel1);; localPurchasable = null)
        {
          requestPurchase(str, localPurchasable, IStringListener.Stub.asInterface(paramParcel1.readStrongBinder()));
          paramParcel2.writeNoException();
          return true;
        }
      case 4: 
        paramParcel1.enforceInterface("tv.ouya.console.internal.IIapServiceDefinition");
        requestReceipts(paramParcel1.readString(), IStringListener.Stub.asInterface(paramParcel1.readStrongBinder()));
        paramParcel2.writeNoException();
        return true;
      case 5: 
        paramParcel1.enforceInterface("tv.ouya.console.internal.IIapServiceDefinition");
        requestGamerUuid(paramParcel1.readString(), IStringListener.Stub.asInterface(paramParcel1.readStrongBinder()));
        paramParcel2.writeNoException();
        return true;
      case 6: 
        paramParcel1.enforceInterface("tv.ouya.console.internal.IIapServiceDefinition");
        requestProductListForVersion(paramParcel1.readString(), paramParcel1.readInt(), paramParcel1.createTypedArrayList(Purchasable.CREATOR), IProductListListener.Stub.asInterface(paramParcel1.readStrongBinder()));
        paramParcel2.writeNoException();
        return true;
      }
      paramParcel1.enforceInterface("tv.ouya.console.internal.IIapServiceDefinition");
      requestGamerInfo(paramParcel1.readString(), IStringListener.Stub.asInterface(paramParcel1.readStrongBinder()));
      paramParcel2.writeNoException();
      return true;
    }
    
    private static class Proxy
      implements IIapServiceDefinition
    {
      private IBinder mRemote;
      
      Proxy(IBinder paramIBinder)
      {
        this.mRemote = paramIBinder;
      }
      
      public IBinder asBinder()
      {
        return this.mRemote;
      }
      
      public String getInterfaceDescriptor()
      {
        return "tv.ouya.console.internal.IIapServiceDefinition";
      }
      
      /* Error */
      public void requestGamerInfo(String paramString, IStringListener paramIStringListener)
        throws RemoteException
      {
        // Byte code:
        //   0: invokestatic 36	android/os/Parcel:obtain	()Landroid/os/Parcel;
        //   3: astore_3
        //   4: invokestatic 36	android/os/Parcel:obtain	()Landroid/os/Parcel;
        //   7: astore 4
        //   9: aload_3
        //   10: ldc 26
        //   12: invokevirtual 40	android/os/Parcel:writeInterfaceToken	(Ljava/lang/String;)V
        //   15: aload_3
        //   16: aload_1
        //   17: invokevirtual 43	android/os/Parcel:writeString	(Ljava/lang/String;)V
        //   20: aload_2
        //   21: ifnull +46 -> 67
        //   24: aload_2
        //   25: invokeinterface 47 1 0
        //   30: astore_1
        //   31: aload_3
        //   32: aload_1
        //   33: invokevirtual 50	android/os/Parcel:writeStrongBinder	(Landroid/os/IBinder;)V
        //   36: aload_0
        //   37: getfield 19	tv/ouya/console/internal/IIapServiceDefinition$Stub$Proxy:mRemote	Landroid/os/IBinder;
        //   40: bipush 7
        //   42: aload_3
        //   43: aload 4
        //   45: iconst_0
        //   46: invokeinterface 56 5 0
        //   51: pop
        //   52: aload 4
        //   54: invokevirtual 59	android/os/Parcel:readException	()V
        //   57: aload 4
        //   59: invokevirtual 62	android/os/Parcel:recycle	()V
        //   62: aload_3
        //   63: invokevirtual 62	android/os/Parcel:recycle	()V
        //   66: return
        //   67: aconst_null
        //   68: astore_1
        //   69: goto -38 -> 31
        //   72: astore_1
        //   73: aload 4
        //   75: invokevirtual 62	android/os/Parcel:recycle	()V
        //   78: aload_3
        //   79: invokevirtual 62	android/os/Parcel:recycle	()V
        //   82: aload_1
        //   83: athrow
        // Local variable table:
        //   start	length	slot	name	signature
        //   0	84	0	this	Proxy
        //   0	84	1	paramString	String
        //   0	84	2	paramIStringListener	IStringListener
        //   3	76	3	localParcel1	Parcel
        //   7	67	4	localParcel2	Parcel
        // Exception table:
        //   from	to	target	type
        //   9	20	72	finally
        //   24	31	72	finally
        //   31	57	72	finally
      }
      
      /* Error */
      public void requestGamerUuid(String paramString, IStringListener paramIStringListener)
        throws RemoteException
      {
        // Byte code:
        //   0: invokestatic 36	android/os/Parcel:obtain	()Landroid/os/Parcel;
        //   3: astore_3
        //   4: invokestatic 36	android/os/Parcel:obtain	()Landroid/os/Parcel;
        //   7: astore 4
        //   9: aload_3
        //   10: ldc 26
        //   12: invokevirtual 40	android/os/Parcel:writeInterfaceToken	(Ljava/lang/String;)V
        //   15: aload_3
        //   16: aload_1
        //   17: invokevirtual 43	android/os/Parcel:writeString	(Ljava/lang/String;)V
        //   20: aload_2
        //   21: ifnull +45 -> 66
        //   24: aload_2
        //   25: invokeinterface 47 1 0
        //   30: astore_1
        //   31: aload_3
        //   32: aload_1
        //   33: invokevirtual 50	android/os/Parcel:writeStrongBinder	(Landroid/os/IBinder;)V
        //   36: aload_0
        //   37: getfield 19	tv/ouya/console/internal/IIapServiceDefinition$Stub$Proxy:mRemote	Landroid/os/IBinder;
        //   40: iconst_5
        //   41: aload_3
        //   42: aload 4
        //   44: iconst_0
        //   45: invokeinterface 56 5 0
        //   50: pop
        //   51: aload 4
        //   53: invokevirtual 59	android/os/Parcel:readException	()V
        //   56: aload 4
        //   58: invokevirtual 62	android/os/Parcel:recycle	()V
        //   61: aload_3
        //   62: invokevirtual 62	android/os/Parcel:recycle	()V
        //   65: return
        //   66: aconst_null
        //   67: astore_1
        //   68: goto -37 -> 31
        //   71: astore_1
        //   72: aload 4
        //   74: invokevirtual 62	android/os/Parcel:recycle	()V
        //   77: aload_3
        //   78: invokevirtual 62	android/os/Parcel:recycle	()V
        //   81: aload_1
        //   82: athrow
        // Local variable table:
        //   start	length	slot	name	signature
        //   0	83	0	this	Proxy
        //   0	83	1	paramString	String
        //   0	83	2	paramIStringListener	IStringListener
        //   3	75	3	localParcel1	Parcel
        //   7	66	4	localParcel2	Parcel
        // Exception table:
        //   from	to	target	type
        //   9	20	71	finally
        //   24	31	71	finally
        //   31	56	71	finally
      }
      
      /* Error */
      public void requestProductList(String paramString, List<Purchasable> paramList, IProductListListener paramIProductListListener)
        throws RemoteException
      {
        // Byte code:
        //   0: invokestatic 36	android/os/Parcel:obtain	()Landroid/os/Parcel;
        //   3: astore 4
        //   5: invokestatic 36	android/os/Parcel:obtain	()Landroid/os/Parcel;
        //   8: astore 5
        //   10: aload 4
        //   12: ldc 26
        //   14: invokevirtual 40	android/os/Parcel:writeInterfaceToken	(Ljava/lang/String;)V
        //   17: aload 4
        //   19: aload_1
        //   20: invokevirtual 43	android/os/Parcel:writeString	(Ljava/lang/String;)V
        //   23: aload 4
        //   25: aload_2
        //   26: invokevirtual 70	android/os/Parcel:writeTypedList	(Ljava/util/List;)V
        //   29: aload_3
        //   30: ifnull +48 -> 78
        //   33: aload_3
        //   34: invokeinterface 73 1 0
        //   39: astore_1
        //   40: aload 4
        //   42: aload_1
        //   43: invokevirtual 50	android/os/Parcel:writeStrongBinder	(Landroid/os/IBinder;)V
        //   46: aload_0
        //   47: getfield 19	tv/ouya/console/internal/IIapServiceDefinition$Stub$Proxy:mRemote	Landroid/os/IBinder;
        //   50: iconst_2
        //   51: aload 4
        //   53: aload 5
        //   55: iconst_0
        //   56: invokeinterface 56 5 0
        //   61: pop
        //   62: aload 5
        //   64: invokevirtual 59	android/os/Parcel:readException	()V
        //   67: aload 5
        //   69: invokevirtual 62	android/os/Parcel:recycle	()V
        //   72: aload 4
        //   74: invokevirtual 62	android/os/Parcel:recycle	()V
        //   77: return
        //   78: aconst_null
        //   79: astore_1
        //   80: goto -40 -> 40
        //   83: astore_1
        //   84: aload 5
        //   86: invokevirtual 62	android/os/Parcel:recycle	()V
        //   89: aload 4
        //   91: invokevirtual 62	android/os/Parcel:recycle	()V
        //   94: aload_1
        //   95: athrow
        // Local variable table:
        //   start	length	slot	name	signature
        //   0	96	0	this	Proxy
        //   0	96	1	paramString	String
        //   0	96	2	paramList	List<Purchasable>
        //   0	96	3	paramIProductListListener	IProductListListener
        //   3	87	4	localParcel1	Parcel
        //   8	77	5	localParcel2	Parcel
        // Exception table:
        //   from	to	target	type
        //   10	29	83	finally
        //   33	40	83	finally
        //   40	67	83	finally
      }
      
      /* Error */
      public void requestProductListForVersion(String paramString, int paramInt, List<Purchasable> paramList, IProductListListener paramIProductListListener)
        throws RemoteException
      {
        // Byte code:
        //   0: invokestatic 36	android/os/Parcel:obtain	()Landroid/os/Parcel;
        //   3: astore 5
        //   5: invokestatic 36	android/os/Parcel:obtain	()Landroid/os/Parcel;
        //   8: astore 6
        //   10: aload 5
        //   12: ldc 26
        //   14: invokevirtual 40	android/os/Parcel:writeInterfaceToken	(Ljava/lang/String;)V
        //   17: aload 5
        //   19: aload_1
        //   20: invokevirtual 43	android/os/Parcel:writeString	(Ljava/lang/String;)V
        //   23: aload 5
        //   25: iload_2
        //   26: invokevirtual 81	android/os/Parcel:writeInt	(I)V
        //   29: aload 5
        //   31: aload_3
        //   32: invokevirtual 70	android/os/Parcel:writeTypedList	(Ljava/util/List;)V
        //   35: aload 4
        //   37: ifnull +50 -> 87
        //   40: aload 4
        //   42: invokeinterface 73 1 0
        //   47: astore_1
        //   48: aload 5
        //   50: aload_1
        //   51: invokevirtual 50	android/os/Parcel:writeStrongBinder	(Landroid/os/IBinder;)V
        //   54: aload_0
        //   55: getfield 19	tv/ouya/console/internal/IIapServiceDefinition$Stub$Proxy:mRemote	Landroid/os/IBinder;
        //   58: bipush 6
        //   60: aload 5
        //   62: aload 6
        //   64: iconst_0
        //   65: invokeinterface 56 5 0
        //   70: pop
        //   71: aload 6
        //   73: invokevirtual 59	android/os/Parcel:readException	()V
        //   76: aload 6
        //   78: invokevirtual 62	android/os/Parcel:recycle	()V
        //   81: aload 5
        //   83: invokevirtual 62	android/os/Parcel:recycle	()V
        //   86: return
        //   87: aconst_null
        //   88: astore_1
        //   89: goto -41 -> 48
        //   92: astore_1
        //   93: aload 6
        //   95: invokevirtual 62	android/os/Parcel:recycle	()V
        //   98: aload 5
        //   100: invokevirtual 62	android/os/Parcel:recycle	()V
        //   103: aload_1
        //   104: athrow
        // Local variable table:
        //   start	length	slot	name	signature
        //   0	105	0	this	Proxy
        //   0	105	1	paramString	String
        //   0	105	2	paramInt	int
        //   0	105	3	paramList	List<Purchasable>
        //   0	105	4	paramIProductListListener	IProductListListener
        //   3	96	5	localParcel1	Parcel
        //   8	86	6	localParcel2	Parcel
        // Exception table:
        //   from	to	target	type
        //   10	35	92	finally
        //   40	48	92	finally
        //   48	76	92	finally
      }
      
      public void requestPurchase(String paramString, Purchasable paramPurchasable, IStringListener paramIStringListener)
        throws RemoteException
      {
        Parcel localParcel1 = Parcel.obtain();
        Parcel localParcel2 = Parcel.obtain();
        for (;;)
        {
          try
          {
            localParcel1.writeInterfaceToken("tv.ouya.console.internal.IIapServiceDefinition");
            localParcel1.writeString(paramString);
            if (paramPurchasable != null)
            {
              localParcel1.writeInt(1);
              paramPurchasable.writeToParcel(localParcel1, 0);
              if (paramIStringListener != null)
              {
                paramString = paramIStringListener.asBinder();
                localParcel1.writeStrongBinder(paramString);
                this.mRemote.transact(3, localParcel1, localParcel2, 0);
                localParcel2.readException();
              }
            }
            else
            {
              localParcel1.writeInt(0);
              continue;
            }
            paramString = null;
          }
          finally
          {
            localParcel2.recycle();
            localParcel1.recycle();
          }
        }
      }
      
      /* Error */
      public void requestReceipts(String paramString, IStringListener paramIStringListener)
        throws RemoteException
      {
        // Byte code:
        //   0: invokestatic 36	android/os/Parcel:obtain	()Landroid/os/Parcel;
        //   3: astore_3
        //   4: invokestatic 36	android/os/Parcel:obtain	()Landroid/os/Parcel;
        //   7: astore 4
        //   9: aload_3
        //   10: ldc 26
        //   12: invokevirtual 40	android/os/Parcel:writeInterfaceToken	(Ljava/lang/String;)V
        //   15: aload_3
        //   16: aload_1
        //   17: invokevirtual 43	android/os/Parcel:writeString	(Ljava/lang/String;)V
        //   20: aload_2
        //   21: ifnull +45 -> 66
        //   24: aload_2
        //   25: invokeinterface 47 1 0
        //   30: astore_1
        //   31: aload_3
        //   32: aload_1
        //   33: invokevirtual 50	android/os/Parcel:writeStrongBinder	(Landroid/os/IBinder;)V
        //   36: aload_0
        //   37: getfield 19	tv/ouya/console/internal/IIapServiceDefinition$Stub$Proxy:mRemote	Landroid/os/IBinder;
        //   40: iconst_4
        //   41: aload_3
        //   42: aload 4
        //   44: iconst_0
        //   45: invokeinterface 56 5 0
        //   50: pop
        //   51: aload 4
        //   53: invokevirtual 59	android/os/Parcel:readException	()V
        //   56: aload 4
        //   58: invokevirtual 62	android/os/Parcel:recycle	()V
        //   61: aload_3
        //   62: invokevirtual 62	android/os/Parcel:recycle	()V
        //   65: return
        //   66: aconst_null
        //   67: astore_1
        //   68: goto -37 -> 31
        //   71: astore_1
        //   72: aload 4
        //   74: invokevirtual 62	android/os/Parcel:recycle	()V
        //   77: aload_3
        //   78: invokevirtual 62	android/os/Parcel:recycle	()V
        //   81: aload_1
        //   82: athrow
        // Local variable table:
        //   start	length	slot	name	signature
        //   0	83	0	this	Proxy
        //   0	83	1	paramString	String
        //   0	83	2	paramIStringListener	IStringListener
        //   3	75	3	localParcel1	Parcel
        //   7	66	4	localParcel2	Parcel
        // Exception table:
        //   from	to	target	type
        //   9	20	71	finally
        //   24	31	71	finally
        //   31	56	71	finally
      }
      
      public void setTestMode()
        throws RemoteException
      {
        Parcel localParcel1 = Parcel.obtain();
        Parcel localParcel2 = Parcel.obtain();
        try
        {
          localParcel1.writeInterfaceToken("tv.ouya.console.internal.IIapServiceDefinition");
          this.mRemote.transact(1, localParcel1, localParcel2, 0);
          localParcel2.readException();
          return;
        }
        finally
        {
          localParcel2.recycle();
          localParcel1.recycle();
        }
      }
    }
  }
}


/* Location:              /home/enzo/Documents/hacking/malwares/viking-horde/classes.jar!/tv/ouya/console/internal/IIapServiceDefinition.class
 * Java compiler version: 6 (50.0)
 * JD-Core Version:       0.7.1
 */