Inherits from AFHTTPRequestOperation : AFURLConnectionOperation : NSOperation
Declared in AFXMLRequestOperation.h
AFXMLRequestOperation.m

Overview

AFXMLRequestOperation is a subclass of AFHTTPRequestOperation for downloading and working with XML response data.

Acceptable Content Types

By default, AFXMLRequestOperation accepts the following MIME types, which includes the official standard, application/xml, as well as other commonly-used types:

  • application/xml
  • text/xml

Use With AFHTTPClient

When AFXMLRequestOperation is registered with AFHTTPClient, the response object in the success callback of HTTPRequestOperationWithRequest:success:failure: will be an instance of NSXMLParser. On platforms that support NSXMLDocument, you have the option to ignore the response object, and simply use the responseXMLDocument property of the operation argument of the callback.

Tasks

Getting Response Data

Other Methods

Properties

responseXMLDocument

An NSXMLDocument object constructed from the response data. If an error occurs while parsing, nil will be returned, and the error property will be set to the error.

@property (readonly, nonatomic, strong) NSXMLDocument *responseXMLDocument

Discussion

An NSXMLDocument object constructed from the response data. If an error occurs while parsing, nil will be returned, and the error property will be set to the error.

Declared In

AFXMLRequestOperation.h

responseXMLParser

An NSXMLParser object constructed from the response data.

@property (readonly, nonatomic, strong) NSXMLParser *responseXMLParser

Discussion

An NSXMLParser object constructed from the response data.

Declared In

AFXMLRequestOperation.h

Class Methods

XMLDocumentRequestOperationWithRequest:success:failure:

Creates and returns an AFXMLRequestOperation object and sets the specified success and failure callbacks.

+ (AFXMLRequestOperation *)XMLDocumentRequestOperationWithRequest:(NSURLRequest *)urlRequest success:(void ( ^ ) ( NSURLRequest *request , NSHTTPURLResponse *response , NSXMLDocument *document ))success failure:(void ( ^ ) ( NSURLRequest *request , NSHTTPURLResponse *response , NSError *error , NSXMLDocument *document ))failure

Parameters

urlRequest

The request object to be loaded asynchronously during execution of the operation

success

A block object to be executed when the operation finishes successfully. This block has no return value and takes three arguments: the request sent from the client, the response received from the server, and the XML document created from the response data of request.

failure

A block object to be executed when the operation finishes unsuccessfully, or that finishes successfully, but encountered an error while parsing the response data as XML. This block has no return value and takes three arguments: the request sent from the client, the response received from the server, and the error describing the network or parsing error that occurred.

Return Value

A new XML request operation

Discussion

Creates and returns an AFXMLRequestOperation object and sets the specified success and failure callbacks.

Declared In

AFXMLRequestOperation.h

XMLParserRequestOperationWithRequest:success:failure:

Creates and returns an AFXMLRequestOperation object and sets the specified success and failure callbacks.

+ (AFXMLRequestOperation *)XMLParserRequestOperationWithRequest:(NSURLRequest *)urlRequest success:(void ( ^ ) ( NSURLRequest *request , NSHTTPURLResponse *response , NSXMLParser *XMLParser ))success failure:(void ( ^ ) ( NSURLRequest *request , NSHTTPURLResponse *response , NSError *error , NSXMLParser *XMLParser ))failure

Parameters

urlRequest

The request object to be loaded asynchronously during execution of the operation

success

A block object to be executed when the operation finishes successfully. This block has no return value and takes three arguments: the request sent from the client, the response received from the server, and the XML parser constructed with the response data of request.

failure

A block object to be executed when the operation finishes unsuccessfully. This block has no return value and takes three arguments: the request sent from the client, the response received from the server, and the error describing the network error that occurred.

Return Value

A new XML request operation

Discussion

Creates and returns an AFXMLRequestOperation object and sets the specified success and failure callbacks.

Declared In

AFXMLRequestOperation.h

acceptableContentTypes

Returns an NSSet object containing the acceptable MIME types. When non-nil, the operation will set the error property to an error in AFErrorDomain. See http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17

+ (NSSet *)acceptableContentTypes

Discussion

Returns an NSSet object containing the acceptable MIME types. When non-nil, the operation will set the error property to an error in AFErrorDomain. See http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17

By default, this is nil.

Declared In

AFHTTPRequestOperation.h

canProcessRequest:

A Boolean value determining whether or not the class can process the specified request. For example, AFJSONRequestOperation may check to make sure the content type was application/json or the URL path extension was .json.

+ (BOOL)canProcessRequest:(NSURLRequest *)request

Parameters

urlRequest

The request that is determined to be supported or not supported for this class.

Discussion

A Boolean value determining whether or not the class can process the specified request. For example, AFJSONRequestOperation may check to make sure the content type was application/json or the URL path extension was .json.

Declared In

AFHTTPRequestOperation.h

Instance Methods

error

- (NSError *)error

Declared In

AFURLConnectionOperation.h

setCompletionBlockWithSuccess:failure:

Sets the completionBlock property with a block that executes either the specified success or failure block, depending on the state of the request on completion. If error returns a value, which can be caused by an unacceptable status code or content type, then failure is executed. Otherwise, success is executed.

- (void)setCompletionBlockWithSuccess:(void ( ^ ) ( AFHTTPRequestOperation *operation , id responseObject ))success failure:(void ( ^ ) ( AFHTTPRequestOperation *operation , NSError *error ))failure

Parameters

success

The block to be executed on the completion of a successful request. This block has no return value and takes two arguments: the receiver operation and the object constructed from the response data of the request.

failure

The block to be executed on the completion of an unsuccessful request. This block has no return value and takes two arguments: the receiver operation and the error that occurred during the request.

@discussion This method should be overridden in subclasses in order to specify the response object passed into the success block.

Discussion

Sets the completionBlock property with a block that executes either the specified success or failure block, depending on the state of the request on completion. If error returns a value, which can be caused by an unacceptable status code or content type, then failure is executed. Otherwise, success is executed.

Declared In

AFHTTPRequestOperation.h