com.facebook
Class FacebookRequestError

java.lang.Object
  extended by com.facebook.FacebookRequestError

public final class FacebookRequestError
extends Object

This class represents an error that occurred during a Facebook request.

In general, one would call getCategory() to determine the type of error that occurred, and act accordingly. The app can also call getUserActionMessageId() in order to get the resource id for a string that can be displayed to the user. For more information on error handling, see https://developers.facebook.com/docs/reference/api/errors/


Nested Class Summary
static class FacebookRequestError.Category
          An enum that represents the Facebook SDK classification for the error that occurred.
 
Field Summary
static int INVALID_ERROR_CODE
          Represents an invalid or unknown error code from the server.
static int INVALID_HTTP_STATUS_CODE
          Indicates that there was no valid HTTP status code returned, indicating that either the error occurred locally, before the request was sent, or that something went wrong with the HTTP connection.
 
Constructor Summary
FacebookRequestError(int errorCode, String errorType, String errorMessage)
           
 
Method Summary
 Object getBatchRequestResult()
          Returns the full JSON response for the batch request.
 FacebookRequestError.Category getCategory()
          Returns the category in which the error belongs.
 HttpURLConnection getConnection()
          Returns the HTTP connection that was used to make the request.
 int getErrorCode()
          Returns the error code returned from Facebook.
 String getErrorMessage()
          Returns the error message returned from Facebook.
 String getErrorType()
          Returns the type of error as a raw string.
 FacebookException getException()
          Returns the exception associated with this request, if any.
 JSONObject getRequestResult()
          Returns the full JSON response for the corresponding request.
 JSONObject getRequestResultBody()
          Returns the body portion of the response corresponding to the request from Facebook.
 int getRequestStatusCode()
          Returns the HTTP status code for this particular request.
 int getSubErrorCode()
          Returns the sub-error code returned from Facebook.
 int getUserActionMessageId()
          Returns the resource id for a user-friendly message for the application to present to the user.
 boolean shouldNotifyUser()
          Returns whether direct user action is required to successfully continue with the Facebook operation.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

INVALID_ERROR_CODE

public static final int INVALID_ERROR_CODE
Represents an invalid or unknown error code from the server.

See Also:
Constant Field Values

INVALID_HTTP_STATUS_CODE

public static final int INVALID_HTTP_STATUS_CODE
Indicates that there was no valid HTTP status code returned, indicating that either the error occurred locally, before the request was sent, or that something went wrong with the HTTP connection. Check the exception from getException();

See Also:
Constant Field Values
Constructor Detail

FacebookRequestError

public FacebookRequestError(int errorCode,
                            String errorType,
                            String errorMessage)
Method Detail

getUserActionMessageId

public int getUserActionMessageId()
Returns the resource id for a user-friendly message for the application to present to the user.

Returns:
a user-friendly message to present to the user

shouldNotifyUser

public boolean shouldNotifyUser()
Returns whether direct user action is required to successfully continue with the Facebook operation. If user action is required, apps can also call getUserActionMessageId() in order to get a resource id for a message to show the user.

Returns:
whether direct user action is required

getCategory

public FacebookRequestError.Category getCategory()
Returns the category in which the error belongs. Applications can use the category to determine how best to handle the errors (e.g. exponential backoff for retries if being throttled).

Returns:
the category in which the error belong

getRequestStatusCode

public int getRequestStatusCode()
Returns the HTTP status code for this particular request.

Returns:
the HTTP status code for the request

getErrorCode

public int getErrorCode()
Returns the error code returned from Facebook.

Returns:
the error code returned from Facebook

getSubErrorCode

public int getSubErrorCode()
Returns the sub-error code returned from Facebook.

Returns:
the sub-error code returned from Facebook

getErrorType

public String getErrorType()
Returns the type of error as a raw string. This is generally less useful than using the getCategory() method, but can provide further details on the error.

Returns:
the type of error as a raw string

getErrorMessage

public String getErrorMessage()
Returns the error message returned from Facebook.

Returns:
the error message returned from Facebook

getRequestResultBody

public JSONObject getRequestResultBody()
Returns the body portion of the response corresponding to the request from Facebook.

Returns:
the body of the response for the request

getRequestResult

public JSONObject getRequestResult()
Returns the full JSON response for the corresponding request. In a non-batch request, this would be the raw response in the form of a JSON object. In a batch request, this result will contain the body of the response as well as the HTTP headers that pertain to the specific request (in the form of a "headers" JSONArray).

Returns:
the full JSON response for the request

getBatchRequestResult

public Object getBatchRequestResult()
Returns the full JSON response for the batch request. If the request was not a batch request, then the result from this method is the same as getRequestResult(). In case of a batch request, the result will be a JSONArray where the elements correspond to the requests in the batch. Callers should check the return type against either JSONObject or JSONArray and cast accordingly.

Returns:
the full JSON response for the batch

getConnection

public HttpURLConnection getConnection()
Returns the HTTP connection that was used to make the request.

Returns:
the HTTP connection used to make the request

getException

public FacebookException getException()
Returns the exception associated with this request, if any.

Returns:
the exception associated with this request

toString

public String toString()
Overrides:
toString in class Object