package com.android.vending.billing; import android.support.annotation.NonNull; import android.support.annotation.Nullable; /** * Represents the result of an in-app billing operation. A result is composed of a response code (an integer) and * possibly a message (String). You can get those by calling {@link #getResponse} and {@link #getMessage()}, * respectively. You can also inquire whether a result is a success or a failure by calling {@link #isSuccess()} and * {@link #isFailure()}. */ public class IabResult { // JAVADOC:OFF private final int mResponse; private final String mMessage; public IabResult(final int response, @Nullable final String message) { mResponse = response; if (message == null || message.trim().length() == 0) { mMessage = IabHelper.getResponseDesc(response); } else { mMessage = message + " (response: " + IabHelper.getResponseDesc(response) + ")"; } } public final int getResponse() { return mResponse; } public final String getMessage() { return mMessage; } public final boolean isSuccess() { return mResponse == IabHelper.BILLING_RESPONSE_RESULT_OK; } public final boolean isFailure() { return !isSuccess(); } @NonNull @Override public final String toString() { return "IabResult: " + getMessage(); } }