Implementation of Object Mapping 2.0 design:

* Removed RestKit from inheritance hierarchy
  * Mappings are implemented as concrete classes
  * Mapper is much more flexible & powerful
  * Much more robust error handling
  * Serialization is reimplemented as an object mapping operation
  * Added ability to serialize to JSON natively
  * Reworked Core Data integration
  * Simplified the codebase substantially
This commit is contained in:
Blake Watters
2011-04-23 18:32:33 -04:00
parent 3a76780f76
commit f3c0995d5e
244 changed files with 13499 additions and 3073 deletions

View File

@@ -61,8 +61,8 @@
<EnvironmentVariables>
<EnvironmentVariable
key = "UISPEC_SPEC"
value = "RKUserRailsJSONMappingSpec"
isEnabled = "YES">
value = "RKObjectMappingNextGenSpec"
isEnabled = "NO">
</EnvironmentVariable>
<EnvironmentVariable
key = "RESTKIT_IP_ADDRESS"
@@ -71,7 +71,32 @@
</EnvironmentVariable>
<EnvironmentVariable
key = "UISPEC_EXAMPLE"
value = "itShouldMapToAnEmptyObjectAndLogAWarningWhenExplicitlyGivenAnObjectClassAndThePayloadIsNotMappable"
value = "itShouldCreateANewManagedObjectWhenThePrimaryKeyIsNSNull"
isEnabled = "NO">
</EnvironmentVariable>
<EnvironmentVariable
key = "UISPEC_EXIT_ON_FINISH"
value = "NO"
isEnabled = "NO">
</EnvironmentVariable>
<EnvironmentVariable
key = "NSZombieEnabled"
value = "YES"
isEnabled = "YES">
</EnvironmentVariable>
<EnvironmentVariable
key = "UISPEC_SPEC"
value = "RKManagedObjectFactorySpec"
isEnabled = "YES">
</EnvironmentVariable>
<EnvironmentVariable
key = "UISPEC_EXAMPLE"
value = "itShouldFindExistingManagedObjectsByPrimaryKey"
isEnabled = "YES">
</EnvironmentVariable>
<EnvironmentVariable
key = "NSAutoreleaseHaltOnNoPool"
value = "YES"
isEnabled = "YES">
</EnvironmentVariable>
</EnvironmentVariables>

View File

@@ -0,0 +1,131 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "3F6C39A410FE5C95008F47C5"
BuildableName = "UISpec.app"
BlueprintName = "UISpec"
ReferencedContainer = "container:RestKit.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
shouldUseLaunchSchemeArgsEnv = "YES"
buildConfiguration = "Debug">
<Testables>
</Testables>
<EnvironmentVariables>
<EnvironmentVariable
key = "UISPEC_SPEC"
value = "RKClientSpec"
isEnabled = "YES">
</EnvironmentVariable>
<EnvironmentVariable
key = "RESTKIT_IP_ADDRESS"
value = "10.0.1.4"
isEnabled = "YES">
</EnvironmentVariable>
</EnvironmentVariables>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
displayScaleIsEnabled = "NO"
displayScale = "1.00"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
buildConfiguration = "Debug">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "3F6C39A410FE5C95008F47C5"
BuildableName = "UISpec.app"
BlueprintName = "UISpec"
ReferencedContainer = "container:RestKit.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<EnvironmentVariables>
<EnvironmentVariable
key = "UISPEC_SPEC"
value = "RKObjectSerializerSpec"
isEnabled = "YES">
</EnvironmentVariable>
<EnvironmentVariable
key = "RESTKIT_IP_ADDRESS"
value = "10.0.1.4"
isEnabled = "NO">
</EnvironmentVariable>
<EnvironmentVariable
key = "UISPEC_EXAMPLE"
<<<<<<< HEAD
value = "itShouldMapACollectionOfSimpleObjectDictionaries"
=======
value = "itShouldInformTheDelegateOfAnErrorWhenMappingFailsBecauseThereIsNoMappableContent"
>>>>>>> e476c5d84050493c212523a99d8408bcff53c9b4
isEnabled = "NO">
</EnvironmentVariable>
<EnvironmentVariable
key = "UISPEC_EXIT_ON_FINISH"
value = "NO"
isEnabled = "YES">
</EnvironmentVariable>
<EnvironmentVariable
key = "NSZombieEnabled"
value = "YES"
isEnabled = "YES">
</EnvironmentVariable>
</EnvironmentVariables>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
displayScaleIsEnabled = "NO"
displayScale = "1.00"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
buildConfiguration = "Release">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "3F6C39A410FE5C95008F47C5"
BuildableName = "UISpec.app"
BlueprintName = "UISpec"
ReferencedContainer = "container:RestKit.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<EnvironmentVariables>
<EnvironmentVariable
key = "UISPEC_SPEC"
value = "RKClientSpec"
isEnabled = "YES">
</EnvironmentVariable>
<EnvironmentVariable
key = "RESTKIT_IP_ADDRESS"
value = "10.0.1.4"
isEnabled = "YES">
</EnvironmentVariable>
</EnvironmentVariables>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>