Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //
- // Album.m
- // NeedleMusic
- //
- // Created by Davide Cenzi on 13/05/12.
- // Copyright (c) 2012 No1. All rights reserved.
- //
- #import "Album.h"
- #import "Song.h"
- @implementation Album
- @synthesize code = _code;
- @synthesize source = _source;
- @synthesize collection_name = _collection_name;
- @synthesize artist_name = _artist_name;
- @synthesize genre = _genre;
- @synthesize genre_id = _genre_id;
- //@synthesize release_date = _release_date;
- @synthesize collection_id = _collection_id;
- @synthesize label_id = _label_id;
- @synthesize label = _label;
- @synthesize diffusion = _diffusion;
- @synthesize small_thumb = _small_thumb;
- @synthesize big_thumb = _big_thumb;
- @synthesize songs = _songs;
- + (void)setupMapping{
- //managerWithBaseURLString:[[BTAuth sharedObject] apiURL]
- RKObjectManager* objectManager = [RKObjectManager sharedManager];
- // Setup our object mappings
- RKObjectMapping* albumMapping = [Album mapping];
- [objectManager.mappingProvider setObjectMapping:albumMapping forKeyPath:@"album"];
- // Serialization mapping for user class
- RKObjectMapping* albumSerialization = [Album serializationMapping];
- [objectManager.mappingProvider setSerializationMapping:albumSerialization forClass:[Album class]];
- //Routes for user class
- [objectManager.router routeClass:[Album class] toResourcePath:@"/albums/:code"];
- [objectManager.router routeClass:[Album class] toResourcePath:@"/albums" forMethod:RKRequestMethodPOST];
- }
- +(RKObjectMapping*)mapping{
- RKObjectMapping* albumMapping = [RKObjectMapping mappingForClass:[Album class]];
- albumMapping.rootKeyPath = @"album";
- [albumMapping mapKeyPath:@"id" toAttribute:@"code"];
- [albumMapping mapKeyPath:@"source" toAttribute:@"source"];
- [albumMapping mapKeyPath:@"collection_name" toAttribute:@"collection_name"];
- [albumMapping mapKeyPath:@"artist_name" toAttribute:@"artist_name"];
- [albumMapping mapKeyPath:@"genre" toAttribute:@"genre"];
- [albumMapping mapKeyPath:@"genre_id" toAttribute:@"genre_id"];
- [albumMapping mapKeyPath:@"collection_id" toAttribute:@"collection_id"];
- [albumMapping mapKeyPath:@"label_id" toAttribute:@"label_id"];
- [albumMapping mapKeyPath:@"label" toAttribute:@"label"];
- [albumMapping mapKeyPath:@"diffusion" toAttribute:@"diffusion"];
- [albumMapping mapKeyPath:@"small_thumb" toAttribute:@"small_thumb"];
- [albumMapping mapKeyPath:@"big_thumb" toAttribute:@"big_thumb"];
- RKObjectMapping *songMapping = [RKObjectMapping mappingForClass:[Song class]];
- [albumMapping mapKeyPath:@"songs" toRelationship:@"songs" withMapping:songMapping];
- return albumMapping;
- }
- + (RKObjectMapping*)serializationMapping{
- RKObjectMapping* albumSerialization = [RKObjectMapping mappingForClass:[Album class]];
- //[albumSerialization mapKeyPath:@"code" toAttribute:@"album[id]"];
- [albumSerialization mapKeyPath:@"source" toAttribute:@"album[source]"];
- [albumSerialization mapKeyPath:@"collection_name" toAttribute:@"album[collection_name]"];
- [albumSerialization mapKeyPath:@"artist_name" toAttribute:@"album[artist_name]"];
- [albumSerialization mapKeyPath:@"genre" toAttribute:@"album[genre]"];
- [albumSerialization mapKeyPath:@"genre_id" toAttribute:@"album[genre_id]"];
- [albumSerialization mapKeyPath:@"collection_id" toAttribute:@"album[collection_id]"];
- [albumSerialization mapKeyPath:@"label" toAttribute:@"album[label]"];
- [albumSerialization mapKeyPath:@"label_id" toAttribute:@"album[label_id]"];
- [albumSerialization mapKeyPath:@"small_thumb" toAttribute:@"album[small_thumb]"];
- [albumSerialization mapKeyPath:@"big_thumb" toAttribute:@"album[big_thumb]"];
- RKObjectMapping *songMapping = [RKObjectMapping mappingForClass:[Song class]];
- [albumSerialization mapKeyPath:@"songs" toRelationship:@"songs" withMapping:[songMapping inverseMapping] serialize:YES];
- return albumSerialization;
- }
- @end
Add Comment
Please, Sign In to add comment