Get rid of instanceProvider property, and instead have an array that holds objects of type @protocol(InstanceProvider).
Implement chain of responsibilities so that the object mapper decides which instanceProvider to use depending on whether class inherits from NSManagedObject or not.
Get rid of instanceProvider property, and instead have an array that holds objects of type @protocol(InstanceProvider).
Implement chain of responsibilities so that the object mapper decides which instanceProvider to use depending on whether class inherits from NSManagedObject or not.