Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse code

added TKTumblelogsRequest and TKTumblelogsResponse, and some initial …

…tests for it.
  • Loading branch information...
commit 1306b5610412c7362a30cc6c782ce85c29b2d66a 1 parent d06574f
Igor Sutton authored December 16, 2011
52  TKTumblelogsRequest.h
... ...
@@ -0,0 +1,52 @@
  1
+//
  2
+//  Copyright (c) 2011 TumblrKit
  3
+//
  4
+//  Permission is hereby granted, free of charge, to any person obtaining a copy
  5
+//  of this software and associated documentation files (the "Software"), to deal
  6
+//  in the Software without restriction, including without limitation the rights
  7
+//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  8
+//  copies of the Software, and to permit persons to whom the Software is
  9
+//  furnished to do so, subject to the following conditions:
  10
+//
  11
+//  The above copyright notice and this permission notice shall be included in
  12
+//  all copies or substantial portions of the Software.
  13
+//
  14
+//  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  15
+//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  16
+//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  17
+//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  18
+//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  19
+//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  20
+//  THE SOFTWARE.
  21
+//
  22
+
  23
+#import "TKRequest.h"
  24
+
  25
+@class TKTumblelog;
  26
+@class TKTumblelogsRequest;
  27
+@class TKTumblelogsResponse;
  28
+
  29
+@protocol TKTumblelogsRequestDelegate <NSObject>
  30
+
  31
+- (void)tumblelogsRequest:(TKTumblelogsRequest *)request didReceiveResponse:(TKTumblelogsResponse *)response;
  32
+- (void)tumblelogsRequest:(TKTumblelogsRequest *)request didFailWithError:(NSError *)error;
  33
+
  34
+@end
  35
+
  36
+@interface TKTumblelogsRequest : TKRequest <NSXMLParserDelegate>
  37
+{
  38
+    @private
  39
+    NSDictionary *_options;
  40
+    NSMutableArray *_receivedTumblelogs;
  41
+    NSString *_currentElementName;
  42
+    TKTumblelog *_currentTumblelog;
  43
+}
  44
+
  45
+@property (nonatomic, assign) id<TKTumblelogsRequestDelegate> delegate;
  46
+
  47
+- (id)initWithOptions:(NSDictionary *)options delegate:(id<TKTumblelogsRequestDelegate>)delegate;
  48
+
  49
+@end
  50
+
  51
+extern NSString *TKTumblelogsRequestEmailKey;
  52
+extern NSString *TKTumblelogsRequestPasswordKey;
131  TKTumblelogsRequest.m
... ...
@@ -0,0 +1,131 @@
  1
+//
  2
+//  Copyright (c) 2011 TumblrKit
  3
+//
  4
+//  Permission is hereby granted, free of charge, to any person obtaining a copy
  5
+//  of this software and associated documentation files (the "Software"), to deal
  6
+//  in the Software without restriction, including without limitation the rights
  7
+//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  8
+//  copies of the Software, and to permit persons to whom the Software is
  9
+//  furnished to do so, subject to the following conditions:
  10
+//
  11
+//  The above copyright notice and this permission notice shall be included in
  12
+//  all copies or substantial portions of the Software.
  13
+//
  14
+//  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  15
+//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  16
+//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  17
+//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  18
+//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  19
+//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  20
+//  THE SOFTWARE.
  21
+//
  22
+
  23
+#import "TKTumblelogsRequest.h"
  24
+#import "TKTumblelogsResponse.h"
  25
+#import "TKTumblelog.h"
  26
+
  27
+@implementation TKTumblelogsRequest
  28
+
  29
+@synthesize delegate = _delegate;
  30
+
  31
+#pragma mark - NSObject
  32
+
  33
+- (void)dealloc;
  34
+{
  35
+    [_options release]; _options = nil;
  36
+    [_receivedTumblelogs release]; _receivedTumblelogs = nil;
  37
+    [super dealloc];
  38
+}
  39
+
  40
+#pragma mark - NSXMLParserDelegate
  41
+
  42
+- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
  43
+{
  44
+    static NSDictionary *elementToSelectorDict = nil;
  45
+    
  46
+    if (!elementToSelectorDict) {
  47
+        elementToSelectorDict = [[NSDictionary alloc] initWithObjectsAndKeys:
  48
+                                 @"setTitle:", @"title",
  49
+                                 @"setName:",@"name",
  50
+                                 @"setURLWithString:", @"url",
  51
+                                 @"setAvatarURLWithString:", @"avatar-url",
  52
+                                 @"setPrimaryWithString:", @"is-primary",
  53
+                                 @"setTypeWithString:", @"type",
  54
+                                 nil];
  55
+    }
  56
+    
  57
+    _currentElementName = elementName;
  58
+    
  59
+    if ([elementName isEqualToString:@"tumblelog"]) {
  60
+        _currentTumblelog = [[TKTumblelog alloc] init];
  61
+        
  62
+        for (NSString *key in [attributeDict keyEnumerator]) {
  63
+            SEL selector = NSSelectorFromString([elementToSelectorDict objectForKey:key]);
  64
+            if (selector && [_currentTumblelog respondsToSelector:selector]) {
  65
+                [_currentTumblelog performSelector:selector withObject:[attributeDict objectForKey:key]];
  66
+            }
  67
+        }
  68
+    }
  69
+}
  70
+
  71
+- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
  72
+{
  73
+    if ([elementName isEqualToString:@"tumblelog"]) {
  74
+        [_receivedTumblelogs addObject:_currentTumblelog];
  75
+        [_currentTumblelog release];
  76
+    }
  77
+}
  78
+
  79
+- (void)parserDidEndDocument:(NSXMLParser *)parser
  80
+{
  81
+    [parser release];
  82
+    [_delegate tumblelogsRequest:self didReceiveResponse:[TKTumblelogsResponse responseWithTumblelogs:_receivedTumblelogs]];
  83
+}
  84
+
  85
+#pragma mark - TKRequest
  86
+
  87
+- (NSURL *)URL; 
  88
+{
  89
+    return [NSURL URLWithString:@"http://www.tumblr.com/api/authenticate"];
  90
+}
  91
+
  92
+- (NSData *)HTTPBody;
  93
+{
  94
+    NSString *HTTPBodyString = [NSString stringWithFormat:@"email=%@&password=%@",
  95
+                                [_options objectForKey:TKTumblelogsRequestEmailKey],
  96
+                                [_options objectForKey:TKTumblelogsRequestPasswordKey],
  97
+                                nil];
  98
+    return [HTTPBodyString dataUsingEncoding:NSUTF8StringEncoding];
  99
+}
  100
+
  101
+- (void)connectionDidFinishLoadingData:(NSData *)data;
  102
+{
  103
+    _receivedTumblelogs = [[NSMutableArray alloc] init];
  104
+    NSXMLParser *parser = [[NSXMLParser alloc] initWithData:data];
  105
+    [parser setDelegate:self];
  106
+    [parser parse];    
  107
+}
  108
+
  109
+#pragma mark - API
  110
+
  111
+- (id)initWithOptions:(NSDictionary *)options delegate:(id<TKTumblelogsRequestDelegate>)delegate;
  112
+{
  113
+    if (!(self = [self init]))
  114
+        return nil;
  115
+    
  116
+    if (![options objectForKey:TKTumblelogsRequestEmailKey])
  117
+        [NSException raise:@"TKTumblelogsRequestEmailKey is mandatory" format:@"TKTumblelogsRequestEmailKey is mandatory"];
  118
+    
  119
+    if (![options objectForKey:TKTumblelogsRequestPasswordKey])
  120
+        [NSException raise:@"TKTumblelogsRequestPasswordKey is mandatory" format:@"TKTumblelogsRequestPasswordKey is mandatory"];    
  121
+    
  122
+    _options = [options retain];
  123
+    _delegate = delegate;
  124
+    
  125
+    return self;
  126
+}
  127
+
  128
+@end
  129
+
  130
+NSString const * TKTumblelogsRequestEmailKey = @"email";
  131
+NSString const * TKTumblelogsRequestPasswordKey = @"password";
32  TKTumblelogsResponse.h
... ...
@@ -0,0 +1,32 @@
  1
+//
  2
+//  Copyright (c) 2011 TumblrKit
  3
+//
  4
+//  Permission is hereby granted, free of charge, to any person obtaining a copy
  5
+//  of this software and associated documentation files (the "Software"), to deal
  6
+//  in the Software without restriction, including without limitation the rights
  7
+//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  8
+//  copies of the Software, and to permit persons to whom the Software is
  9
+//  furnished to do so, subject to the following conditions:
  10
+//
  11
+//  The above copyright notice and this permission notice shall be included in
  12
+//  all copies or substantial portions of the Software.
  13
+//
  14
+//  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  15
+//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  16
+//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  17
+//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  18
+//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  19
+//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  20
+//  THE SOFTWARE.
  21
+//
  22
+
  23
+@interface TKTumblelogsResponse : NSObject
  24
+
  25
+@property (nonatomic, retain) NSArray *tumblelogs;
  26
+
  27
+#pragma mark - API
  28
+
  29
++ (id)responseWithTumblelogs:(NSArray *)tumblelogs;
  30
+- (id)initWithTumblelogs:(NSArray *)tumblelogs;
  31
+
  32
+@end
54  TKTumblelogsResponse.m
... ...
@@ -0,0 +1,54 @@
  1
+//
  2
+//  Copyright (c) 2011 TumblrKit
  3
+//
  4
+//  Permission is hereby granted, free of charge, to any person obtaining a copy
  5
+//  of this software and associated documentation files (the "Software"), to deal
  6
+//  in the Software without restriction, including without limitation the rights
  7
+//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  8
+//  copies of the Software, and to permit persons to whom the Software is
  9
+//  furnished to do so, subject to the following conditions:
  10
+//
  11
+//  The above copyright notice and this permission notice shall be included in
  12
+//  all copies or substantial portions of the Software.
  13
+//
  14
+//  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  15
+//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  16
+//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  17
+//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  18
+//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  19
+//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  20
+//  THE SOFTWARE.
  21
+//
  22
+
  23
+#import "TKTumblelogsResponse.h"
  24
+
  25
+@implementation TKTumblelogsResponse
  26
+
  27
+@synthesize tumblelogs = _tumblelogs;
  28
+
  29
+#pragma mark - NSObject
  30
+
  31
+- (void)dealloc;
  32
+{
  33
+    [_tumblelogs release]; _tumblelogs = nil;
  34
+    [super dealloc];
  35
+}
  36
+
  37
+#pragma mark - API
  38
+
  39
++ (id)responseWithTumblelogs:(NSArray *)tumblelogs;
  40
+{
  41
+    return [[[self alloc] initWithTumblelogs:tumblelogs] autorelease];
  42
+}
  43
+
  44
+- (id)initWithTumblelogs:(NSArray *)tumblelogs;
  45
+{
  46
+    if (!(self = [self init]))
  47
+        return nil;
  48
+    
  49
+    _tumblelogs = [tumblelogs retain];
  50
+    
  51
+    return self;
  52
+}
  53
+
  54
+@end
3  TumblrKit Tests for Mac/TumblrKit_Tests_for_Mac.h
@@ -8,8 +8,9 @@
8 8
 
9 9
 #import <SenTestingKit/SenTestingKit.h>
10 10
 #import "TKPostsRequest.h"
  11
+#import "TKTumblelogsRequest.h"
11 12
 
12  
-@interface TumblrKit_Tests_for_Mac : SenTestCase <TKPostsRequestDelegate>
  13
+@interface TumblrKit_Tests_for_Mac : SenTestCase <TKPostsRequestDelegate,TKTumblelogsRequestDelegate>
13 14
 {
14 15
     BOOL _testIsDone;
15 16
 }
32  TumblrKit Tests for Mac/TumblrKit_Tests_for_Mac.m
@@ -9,6 +9,8 @@
9 9
 #import "TumblrKit_Tests_for_Mac.h"
10 10
 #import "TKPost.h"
11 11
 #import "TKPostsResponse.h"
  12
+#import "TKTumblelog.h"
  13
+#import "TKTumblelogsResponse.h"
12 14
 
13 15
 @implementation TumblrKit_Tests_for_Mac
14 16
 
@@ -85,6 +87,20 @@ - (void)testPostsRequest004;
85 87
         [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:1.0]];
86 88
 }
87 89
 
  90
+- (void)testTumblelogsRequest001;
  91
+{
  92
+    NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:
  93
+                             @"email", TKTumblelogsRequestEmailKey,
  94
+                             @"password", TKTumblelogsRequestPasswordKey,
  95
+                             nil];
  96
+    
  97
+    TKTumblelogsRequest *request = [[[TKTumblelogsRequest alloc] initWithOptions:options delegate:self] autorelease];
  98
+    [request start];
  99
+    
  100
+    while (!_testIsDone)
  101
+        [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:1.0]];
  102
+}
  103
+
88 104
 #pragma mark - TKPostsRequestDelegate
89 105
 
90 106
 - (void)postsRequest:(TKPostsRequest *)request didReceiveResponse:(TKPostsResponse *)response;
@@ -109,4 +125,20 @@ - (void)postsRequest:(TKPostsRequest *)request didFailWithError:(NSError *)error
109 125
     STFail(@"%@", error);
110 126
 }
111 127
 
  128
+#pragma mark - TKTumblelogsRequestDelegate
  129
+
  130
+- (void)tumblelogsRequest:(TKTumblelogsRequest *)request didReceiveResponse:(TKTumblelogsResponse *)response;
  131
+{
  132
+    _testIsDone = YES;
  133
+    
  134
+    NSLog(@"Tumblelogs: %lu", [response.tumblelogs count]);
  135
+}
  136
+
  137
+- (void)tumblelogsRequest:(TKTumblelogsRequest *)request didFailWithError:(NSError *)error;
  138
+{
  139
+    _testIsDone = YES;
  140
+    
  141
+    STFail(@"%@", error);
  142
+}
  143
+
112 144
 @end
24  TumblrKit.xcodeproj/project.pbxproj
@@ -54,6 +54,14 @@
54 54
 		82F7992C14992ED100920028 /* TKPostsResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 82F7992914992ED100920028 /* TKPostsResponse.h */; };
55 55
 		82F7992D14992ED100920028 /* TKPostsResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 82F7992A14992ED100920028 /* TKPostsResponse.m */; };
56 56
 		82F7992E14992ED100920028 /* TKPostsResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 82F7992A14992ED100920028 /* TKPostsResponse.m */; };
  57
+		82F79931149A167B00920028 /* TKTumblelogsRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 82F7992F149A167A00920028 /* TKTumblelogsRequest.h */; };
  58
+		82F79932149A167B00920028 /* TKTumblelogsRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 82F7992F149A167A00920028 /* TKTumblelogsRequest.h */; };
  59
+		82F79933149A167B00920028 /* TKTumblelogsRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 82F79930149A167A00920028 /* TKTumblelogsRequest.m */; };
  60
+		82F79934149A167B00920028 /* TKTumblelogsRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 82F79930149A167A00920028 /* TKTumblelogsRequest.m */; };
  61
+		82F79937149A19F500920028 /* TKTumblelogsResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 82F79935149A19F500920028 /* TKTumblelogsResponse.h */; };
  62
+		82F79938149A19F500920028 /* TKTumblelogsResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 82F79935149A19F500920028 /* TKTumblelogsResponse.h */; };
  63
+		82F79939149A19F500920028 /* TKTumblelogsResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 82F79936149A19F500920028 /* TKTumblelogsResponse.m */; };
  64
+		82F7993A149A19F500920028 /* TKTumblelogsResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 82F79936149A19F500920028 /* TKTumblelogsResponse.m */; };
57 65
 /* End PBXBuildFile section */
58 66
 
59 67
 /* Begin PBXContainerItemProxy section */
@@ -112,6 +120,10 @@
112 120
 		82F79922149924E900920028 /* TumblrKit Tests for Mac-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "TumblrKit Tests for Mac-Prefix.pch"; sourceTree = "<group>"; };
113 121
 		82F7992914992ED100920028 /* TKPostsResponse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TKPostsResponse.h; sourceTree = "<group>"; };
114 122
 		82F7992A14992ED100920028 /* TKPostsResponse.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TKPostsResponse.m; sourceTree = "<group>"; };
  123
+		82F7992F149A167A00920028 /* TKTumblelogsRequest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TKTumblelogsRequest.h; sourceTree = "<group>"; };
  124
+		82F79930149A167A00920028 /* TKTumblelogsRequest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TKTumblelogsRequest.m; sourceTree = "<group>"; };
  125
+		82F79935149A19F500920028 /* TKTumblelogsResponse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TKTumblelogsResponse.h; sourceTree = "<group>"; };
  126
+		82F79936149A19F500920028 /* TKTumblelogsResponse.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TKTumblelogsResponse.m; sourceTree = "<group>"; };
115 127
 		8DC2EF5A0486A6940098B216 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
116 128
 /* End PBXFileReference section */
117 129
 
@@ -210,6 +222,10 @@
210 222
 				82F799071497F27300920028 /* TKPostsRequest.m */,
211 223
 				82F7992914992ED100920028 /* TKPostsResponse.h */,
212 224
 				82F7992A14992ED100920028 /* TKPostsResponse.m */,
  225
+				82F7992F149A167A00920028 /* TKTumblelogsRequest.h */,
  226
+				82F79930149A167A00920028 /* TKTumblelogsRequest.m */,
  227
+				82F79935149A19F500920028 /* TKTumblelogsResponse.h */,
  228
+				82F79936149A19F500920028 /* TKTumblelogsResponse.m */,
213 229
 			);
214 230
 			name = Classes;
215 231
 			sourceTree = "<group>";
@@ -336,6 +352,8 @@
336 352
 			files = (
337 353
 				82F799081497F27300920028 /* TKPostsRequest.h in Headers */,
338 354
 				82F7992B14992ED100920028 /* TKPostsResponse.h in Headers */,
  355
+				82F79931149A167B00920028 /* TKTumblelogsRequest.h in Headers */,
  356
+				82F79937149A19F500920028 /* TKTumblelogsResponse.h in Headers */,
339 357
 			);
340 358
 			runOnlyForDeploymentPostprocessing = 0;
341 359
 		};
@@ -345,6 +363,8 @@
345 363
 			files = (
346 364
 				82F799091497F27300920028 /* TKPostsRequest.h in Headers */,
347 365
 				82F7992C14992ED100920028 /* TKPostsResponse.h in Headers */,
  366
+				82F79932149A167B00920028 /* TKTumblelogsRequest.h in Headers */,
  367
+				82F79938149A19F500920028 /* TKTumblelogsResponse.h in Headers */,
348 368
 			);
349 369
 			runOnlyForDeploymentPostprocessing = 0;
350 370
 		};
@@ -501,6 +521,8 @@
501 521
 				827903311497E53E0018F19E /* TumblrKit_for_iOS.m in Sources */,
502 522
 				82F7990A1497F27300920028 /* TKPostsRequest.m in Sources */,
503 523
 				82F7992D14992ED100920028 /* TKPostsResponse.m in Sources */,
  524
+				82F79933149A167B00920028 /* TKTumblelogsRequest.m in Sources */,
  525
+				82F79939149A19F500920028 /* TKTumblelogsResponse.m in Sources */,
504 526
 			);
505 527
 			runOnlyForDeploymentPostprocessing = 0;
506 528
 		};
@@ -518,6 +540,8 @@
518 540
 				827903591497E5860018F19E /* TumblrKit_for_Mac.m in Sources */,
519 541
 				82F7990B1497F27300920028 /* TKPostsRequest.m in Sources */,
520 542
 				82F7992E14992ED100920028 /* TKPostsResponse.m in Sources */,
  543
+				82F79934149A167B00920028 /* TKTumblelogsRequest.m in Sources */,
  544
+				82F7993A149A19F500920028 /* TKTumblelogsResponse.m in Sources */,
521 545
 			);
522 546
 			runOnlyForDeploymentPostprocessing = 0;
523 547
 		};

0 notes on commit 1306b56

Please sign in to comment.
Something went wrong with that request. Please try again.