Inherits from NSOperation
Declared in RKMappingOperation.h

Overview

Instances of RKMappingOperation perform transformation between object representations according to the rules expressed in RKObjectMapping objects. Mapping operations provide the foundation for the RestKit object mapping engine and perform the work of inspecting the attributes and relationships of a source object and determining how to map them into new representations on a destination object.

Tasks

Initializing a Mapping Operation

Accessing Mapping Configuration

  •   sourceObject

    A dictionary of mappable elements containing simple values or nested object structures.

    property
  •   destinationObject

    The target object for this operation. Mappable values in the source object will be applied to the destination object using key-value coding.

    property
  •   mapping

    The mapping defining how values contained in the source object should be transformed to the destination object via key-value coding.

    property
  •   objectMapping

    The concrete object mapping for the operation.

    property

Configuring Delegate and Data Source

Performing Mapping

  • – performMapping:

    Process all mappable values from the mappable dictionary and assign them to the target object according to the rules expressed in the object mapping definition

Properties

dataSource

The data source is responsible for providing the mapping operation with an appropriate target object for mapping when the destinationObject is nil.

@property (nonatomic, weak) id<RKMappingOperationDataSource> dataSource

Declared In

RKMappingOperation.h

delegate

The delegate to inform of interesting events during the mapping operation lifecycle.

@property (nonatomic, weak) id<RKMappingOperationDelegate> delegate

Declared In

RKMappingOperation.h

destinationObject

The target object for this operation. Mappable values in the source object will be applied to the destination object using key-value coding.

@property (nonatomic, strong, readonly) id destinationObject

Discussion

If initialized with a nil destination object, the mapping operation will attempt to find or create a destination object via the data source and will populate the value of the destinationObject property.

Declared In

RKMappingOperation.h

error

The error, if any, that occurred during the execution of the mapping operation.

@property (nonatomic, strong, readonly) NSError *error

Declared In

RKMappingOperation.h

mapping

The mapping defining how values contained in the source object should be transformed to the destination object via key-value coding.

@property (nonatomic, strong, readonly) RKMapping *mapping

Discussion

Will either be an instance of RKObjectMapping or RKDynamicMapping.

Declared In

RKMappingOperation.h

objectMapping

The concrete object mapping for the operation.

@property (nonatomic, strong, readonly) RKObjectMapping *objectMapping

Discussion

If the value of mapping is an RKObjectMapping, returns the same value as mapping. If mapping is an RKDynamicMapping, then returns the concrete RKObjectMapping object selected for mapping sourceObject.

Declared In

RKMappingOperation.h

sourceObject

A dictionary of mappable elements containing simple values or nested object structures.

@property (nonatomic, strong, readonly) id sourceObject

Declared In

RKMappingOperation.h

Instance Methods

initWithSourceObject:destinationObject:mapping:

Initializes the receiver with a source object, a destination object and an object mapping with which to perform an object mapping.

- (id)initWithSourceObject:(id)sourceObject destinationObject:(id)destinationObject mapping:(RKMapping *)objectOrDynamicMapping

Parameters

sourceObject

The source object to be mapped. Cannot be nil.

destinationObject

The destination object the results are to be mapped onto. May be nil, in which case a new object target object will be obtained from the dataSource.

objectOrDynamicMapping

An instance of RKObjectMapping or RKDynamicMapping defining how the mapping is to be performed.

Return Value

The receiver, initialized with a source object, a destination object, and a mapping.

Declared In

RKMappingOperation.h

performMapping:

Process all mappable values from the mappable dictionary and assign them to the target object according to the rules expressed in the object mapping definition

- (BOOL)performMapping:(NSError **)error

Parameters

error

A pointer to an NSError reference to capture any error that occurs during the mapping. May be nil.

Return Value

A Boolean value indicating if the mapping operation was successful.

Declared In

RKMappingOperation.h