Browse files

Remove DTConnectionKit, use externally referenced version.

  • Loading branch information...
1 parent 468e002 commit c40412a8fc0a5e0888eb5956e08d81598198c1a7 @danielctull committed Oct 16, 2010
Showing with 419 additions and 1,842 deletions.
  1. +1 −1 Classes/{DTInstapaperKitAppDelegate.h → DCTInstapaperKitAppDelegate.h}
  2. +2 −2 Classes/{DTInstapaperKitAppDelegate.m → DCTInstapaperKitAppDelegate.m}
  3. +7 −5 DCTInstapaperKit-Info.plist
  4. +307 −184 DCTInstapaperKit.xcodeproj/project.pbxproj
  5. +6 −0 DCTInstapaperKit.xcodeproj/project.xcworkspace/contents.xcworkspacedata
  6. +46 −0 DCTInstapaperKit.xcodeproj/xcuserdata/danielctull.xcuserdatad/xcschemes/DCTInstapaperKit.xcscheme
  7. +22 −0 DCTInstapaperKit.xcodeproj/xcuserdata/danielctull.xcuserdatad/xcschemes/xcschememanagement.plist
  8. 0 {DTInstapaperKit → DCTInstapaperKit}/DTInstapaperAddConnection.h
  9. 0 {DTInstapaperKit → DCTInstapaperKit}/DTInstapaperAddConnection.m
  10. +2 −2 {DTInstapaperKit → DCTInstapaperKit}/DTInstapaperConnection.h
  11. +2 −2 {DTInstapaperKit → DCTInstapaperKit}/DTInstapaperConnection.m
  12. 0 {DTInstapaperKit → DCTInstapaperKit}/DTInstapaperLoginConnection.h
  13. 0 {DTInstapaperKit → DCTInstapaperKit}/DTInstapaperLoginConnection.m
  14. +9 −3 DCTInstapaperKit_Prefix.pch
  15. +0 −16 DTConnectionKit/DTCacheURLProtocol.h
  16. +0 −79 DTConnectionKit/DTCacheURLProtocol.m
  17. +0 −262 DTConnectionKit/DTConnection.h
  18. +0 −222 DTConnectionKit/DTConnection.m
  19. +0 −31 DTConnectionKit/DTConnectionQueue.h
  20. +0 −138 DTConnectionKit/DTConnectionQueue.m
  21. +0 −43 DTConnectionKit/DTCoreDataConnection.h
  22. +0 −135 DTConnectionKit/DTCoreDataConnection.m
  23. +0 −20 DTConnectionKit/DTFileCache.h
  24. +0 −143 DTConnectionKit/DTFileCache.m
  25. +0 −90 DTConnectionKit/DTURLConnection.h
  26. +0 −76 DTConnectionKit/DTURLConnection.m
  27. +0 −17 DTConnectionKit/DTURLLoadingConnection.h
  28. +0 −26 DTConnectionKit/DTURLLoadingConnection.m
  29. +0 −33 DTConnectionKit/NSData+Base64.h
  30. +0 −299 DTConnectionKit/NSData+Base64.m
  31. +3 −0 en.lproj/InfoPlist.strings
  32. +5 −5 { → en.lproj}/MainWindow.xib
  33. +7 −8 main.m
View
2 Classes/DTInstapaperKitAppDelegate.h → Classes/DCTInstapaperKitAppDelegate.h
@@ -8,7 +8,7 @@
#import <UIKit/UIKit.h>
-@interface DTInstapaperKitAppDelegate : NSObject <UIApplicationDelegate> {
+@interface DCTInstapaperKitAppDelegate : NSObject <UIApplicationDelegate> {
UIWindow *window;
}
View
4 Classes/DTInstapaperKitAppDelegate.m → Classes/DCTInstapaperKitAppDelegate.m
@@ -6,11 +6,11 @@
// Copyright Daniel Tull 2010. All rights reserved.
//
-#import "DTInstapaperKitAppDelegate.h"
+#import "DCTInstapaperKitAppDelegate.h"
#import "DTInstapaperLoginConnection.h"
#import "DTInstapaperAddConnection.h"
-@implementation DTInstapaperKitAppDelegate
+@implementation DCTInstapaperKitAppDelegate
@synthesize window;
View
12 DCTInstapaperKit-Info.plist
@@ -2,16 +2,15 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
+
+ <key>CFBundleIdentifier</key>
+ <string>uk.co.danieltull.${PRODUCT_NAME:rfc1034identifier}</string>
<key>CFBundleDevelopmentRegion</key>
- <string>English</string>
- <key>CFBundleDisplayName</key>
- <string>${PRODUCT_NAME}</string>
+ <string>en</string>
<key>CFBundleExecutable</key>
<string>${EXECUTABLE_NAME}</string>
<key>CFBundleIconFile</key>
<string></string>
- <key>CFBundleIdentifier</key>
- <string>com.yourcompany.${PRODUCT_NAME:rfc1034identifier}</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
@@ -20,6 +19,8 @@
<string>APPL</string>
<key>CFBundleSignature</key>
<string>????</string>
+ <key>CFBundleDisplayName</key>
+ <string>${PRODUCT_NAME}</string>
<key>CFBundleVersion</key>
<string>1.0</string>
<key>LSRequiresIPhoneOS</key>
@@ -28,3 +29,4 @@
<string>MainWindow</string>
</dict>
</plist>
+
View
491 DCTInstapaperKit.xcodeproj/project.pbxproj
@@ -3,332 +3,455 @@
archiveVersion = 1;
classes = {
};
- objectVersion = 45;
+ objectVersion = 46;
objects = {
/* Begin PBXBuildFile section */
- 1D3623260D0F684500981E51 /* DTInstapaperKitAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D3623250D0F684500981E51 /* DTInstapaperKitAppDelegate.m */; };
- 1D60589B0D05DD56006BFB54 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; };
- 1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
- 1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
- 244C085211A19F7E00D960A4 /* NSData+Base64.m in Sources */ = {isa = PBXBuildFile; fileRef = 244C085111A19F7E00D960A4 /* NSData+Base64.m */; };
- 24988D0E115176C8008F51D5 /* DTCacheURLProtocol.m in Sources */ = {isa = PBXBuildFile; fileRef = 24988D00115176C7008F51D5 /* DTCacheURLProtocol.m */; };
- 24988D0F115176C8008F51D5 /* DTConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = 24988D02115176C8008F51D5 /* DTConnection.m */; };
- 24988D11115176C8008F51D5 /* DTConnectionQueue.m in Sources */ = {isa = PBXBuildFile; fileRef = 24988D05115176C8008F51D5 /* DTConnectionQueue.m */; };
- 24988D12115176C8008F51D5 /* DTCoreDataConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = 24988D07115176C8008F51D5 /* DTCoreDataConnection.m */; };
- 24988D13115176C8008F51D5 /* DTFileCache.m in Sources */ = {isa = PBXBuildFile; fileRef = 24988D09115176C8008F51D5 /* DTFileCache.m */; };
- 24988D14115176C8008F51D5 /* DTURLConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = 24988D0B115176C8008F51D5 /* DTURLConnection.m */; };
- 24988D15115176C8008F51D5 /* DTURLLoadingConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = 24988D0D115176C8008F51D5 /* DTURLLoadingConnection.m */; };
- 24988D18115176D3008F51D5 /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 24988D17115176D3008F51D5 /* CoreData.framework */; };
- 24988D2211517711008F51D5 /* DTInstapaperLoginConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = 24988D2111517711008F51D5 /* DTInstapaperLoginConnection.m */; };
- 24988D271151774A008F51D5 /* DTInstapaperAddConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = 24988D261151774A008F51D5 /* DTInstapaperAddConnection.m */; };
- 24988E5511518AFE008F51D5 /* DTInstapaperConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = 24988E5411518AFE008F51D5 /* DTInstapaperConnection.m */; };
- 288765FD0DF74451002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765FC0DF74451002DB57D /* CoreGraphics.framework */; };
- 28AD733F0D9D9553002E5188 /* MainWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 28AD733E0D9D9553002E5188 /* MainWindow.xib */; };
+ 242DD7AA126A683B00306828 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 242DD7A9126A683B00306828 /* UIKit.framework */; };
+ 242DD7AC126A683B00306828 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 242DD7AB126A683B00306828 /* Foundation.framework */; };
+ 242DD7AE126A683B00306828 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 242DD7AD126A683B00306828 /* CoreGraphics.framework */; };
+ 242DD7B3126A683B00306828 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 242DD7B1126A683B00306828 /* InfoPlist.strings */; };
+ 242DD7B5126A683B00306828 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 242DD7B4126A683B00306828 /* main.m */; };
+ 242DD7B8126A683B00306828 /* DCTInstapaperKitAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 242DD7B7126A683B00306828 /* DCTInstapaperKitAppDelegate.m */; };
+ 242DD7BB126A683B00306828 /* MainWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 242DD7B9126A683B00306828 /* MainWindow.xib */; };
+ 24C11D11126A68DC0010A2D3 /* DTInstapaperAddConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D0C126A68DC0010A2D3 /* DTInstapaperAddConnection.m */; };
+ 24C11D12126A68DC0010A2D3 /* DTInstapaperConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D0E126A68DC0010A2D3 /* DTInstapaperConnection.m */; };
+ 24C11D13126A68DC0010A2D3 /* DTInstapaperLoginConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D10126A68DC0010A2D3 /* DTInstapaperLoginConnection.m */; };
+ 24C11D59126A69230010A2D3 /* DTCacheURLProtocol.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D31126A69220010A2D3 /* DTCacheURLProtocol.m */; };
+ 24C11D5A126A69230010A2D3 /* DTFileCache.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D33126A69220010A2D3 /* DTFileCache.m */; };
+ 24C11D5B126A69230010A2D3 /* NSBundle+DTInfoPlist.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D36126A69220010A2D3 /* NSBundle+DTInfoPlist.m */; };
+ 24C11D5C126A69230010A2D3 /* NSData+Base64.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D38126A69220010A2D3 /* NSData+Base64.m */; };
+ 24C11D5D126A69230010A2D3 /* NSDictionary+DTLocateObjectForKey.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D3A126A69220010A2D3 /* NSDictionary+DTLocateObjectForKey.m */; };
+ 24C11D5E126A69230010A2D3 /* NSString+DTURLEncoding.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D3C126A69220010A2D3 /* NSString+DTURLEncoding.m */; };
+ 24C11D5F126A69230010A2D3 /* DCTCoreDataConnectionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D3F126A69220010A2D3 /* DCTCoreDataConnectionController.m */; };
+ 24C11D60126A69230010A2D3 /* DCTRequestConnectionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D41126A69220010A2D3 /* DCTRequestConnectionController.m */; };
+ 24C11D61126A69230010A2D3 /* DCTURLLoadingConnectionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D43126A69220010A2D3 /* DCTURLLoadingConnectionController.m */; };
+ 24C11D62126A69230010A2D3 /* DCTConnectionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D45126A69220010A2D3 /* DCTConnectionController.m */; };
+ 24C11D63126A69230010A2D3 /* DCTConnectionQueue+Singleton.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D47126A69220010A2D3 /* DCTConnectionQueue+Singleton.m */; };
+ 24C11D64126A69230010A2D3 /* DCTConnectionQueue.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D49126A69220010A2D3 /* DCTConnectionQueue.m */; };
+ 24C11D65126A69230010A2D3 /* DCTRESTController.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D4B126A69220010A2D3 /* DCTRESTController.m */; };
+ 24C11D66126A69230010A2D3 /* DCTURLConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D4D126A69220010A2D3 /* DCTURLConnection.m */; };
+ 24C11D67126A69230010A2D3 /* DCTOAuthAccessTokenConnectionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D50126A69220010A2D3 /* DCTOAuthAccessTokenConnectionController.m */; };
+ 24C11D68126A69230010A2D3 /* DCTOAuthConnectionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D52126A69220010A2D3 /* DCTOAuthConnectionController.m */; };
+ 24C11D69126A69230010A2D3 /* DCTOAuthController.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D54126A69220010A2D3 /* DCTOAuthController.m */; };
+ 24C11D6A126A69230010A2D3 /* DCTOAuthRequestTokenConnectionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D56126A69220010A2D3 /* DCTOAuthRequestTokenConnectionController.m */; };
+ 24C11D6B126A69230010A2D3 /* DCTOAuthSignature.m in Sources */ = {isa = PBXBuildFile; fileRef = 24C11D58126A69220010A2D3 /* DCTOAuthSignature.m */; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
- 1D30AB110D05D00D00671497 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
- 1D3623240D0F684500981E51 /* DTInstapaperKitAppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTInstapaperKitAppDelegate.h; sourceTree = "<group>"; };
- 1D3623250D0F684500981E51 /* DTInstapaperKitAppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTInstapaperKitAppDelegate.m; sourceTree = "<group>"; };
- 1D6058910D05DD3D006BFB54 /* DCTInstapaperKit.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = DCTInstapaperKit.app; sourceTree = BUILT_PRODUCTS_DIR; };
- 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
- 244C085011A19F7E00D960A4 /* NSData+Base64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+Base64.h"; sourceTree = "<group>"; };
- 244C085111A19F7E00D960A4 /* NSData+Base64.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+Base64.m"; sourceTree = "<group>"; };
- 24988CFF115176C7008F51D5 /* DTCacheURLProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTCacheURLProtocol.h; sourceTree = "<group>"; };
- 24988D00115176C7008F51D5 /* DTCacheURLProtocol.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTCacheURLProtocol.m; sourceTree = "<group>"; };
- 24988D01115176C7008F51D5 /* DTConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTConnection.h; sourceTree = "<group>"; };
- 24988D02115176C8008F51D5 /* DTConnection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTConnection.m; sourceTree = "<group>"; };
- 24988D04115176C8008F51D5 /* DTConnectionQueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTConnectionQueue.h; sourceTree = "<group>"; };
- 24988D05115176C8008F51D5 /* DTConnectionQueue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTConnectionQueue.m; sourceTree = "<group>"; };
- 24988D06115176C8008F51D5 /* DTCoreDataConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTCoreDataConnection.h; sourceTree = "<group>"; };
- 24988D07115176C8008F51D5 /* DTCoreDataConnection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTCoreDataConnection.m; sourceTree = "<group>"; };
- 24988D08115176C8008F51D5 /* DTFileCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTFileCache.h; sourceTree = "<group>"; };
- 24988D09115176C8008F51D5 /* DTFileCache.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTFileCache.m; sourceTree = "<group>"; };
- 24988D0A115176C8008F51D5 /* DTURLConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTURLConnection.h; sourceTree = "<group>"; };
- 24988D0B115176C8008F51D5 /* DTURLConnection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTURLConnection.m; sourceTree = "<group>"; };
- 24988D0C115176C8008F51D5 /* DTURLLoadingConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTURLLoadingConnection.h; sourceTree = "<group>"; };
- 24988D0D115176C8008F51D5 /* DTURLLoadingConnection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTURLLoadingConnection.m; sourceTree = "<group>"; };
- 24988D17115176D3008F51D5 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; };
- 24988D2011517711008F51D5 /* DTInstapaperLoginConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTInstapaperLoginConnection.h; sourceTree = "<group>"; };
- 24988D2111517711008F51D5 /* DTInstapaperLoginConnection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTInstapaperLoginConnection.m; sourceTree = "<group>"; };
- 24988D251151774A008F51D5 /* DTInstapaperAddConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTInstapaperAddConnection.h; sourceTree = "<group>"; };
- 24988D261151774A008F51D5 /* DTInstapaperAddConnection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTInstapaperAddConnection.m; sourceTree = "<group>"; };
- 24988E5311518AFE008F51D5 /* DTInstapaperConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTInstapaperConnection.h; sourceTree = "<group>"; };
- 24988E5411518AFE008F51D5 /* DTInstapaperConnection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTInstapaperConnection.m; sourceTree = "<group>"; };
- 288765FC0DF74451002DB57D /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
- 28AD733E0D9D9553002E5188 /* MainWindow.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MainWindow.xib; sourceTree = "<group>"; };
- 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
- 32CA4F630368D1EE00C91783 /* DCTInstapaperKit_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCTInstapaperKit_Prefix.pch; sourceTree = "<group>"; };
- 8D1107310486CEB800E47090 /* DCTInstapaperKit-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "DCTInstapaperKit-Info.plist"; plistStructureDefinitionIdentifier = "com.apple.xcode.plist.structure-definition.iphone.info-plist"; sourceTree = "<group>"; };
+ 242DD7A6126A683B00306828 /* DCTInstapaperKit.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = DCTInstapaperKit.app; sourceTree = BUILT_PRODUCTS_DIR; };
+ 242DD7A9126A683B00306828 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
+ 242DD7AB126A683B00306828 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
+ 242DD7AD126A683B00306828 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
+ 242DD7AF126A683B00306828 /* DCTInstapaperKit-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "DCTInstapaperKit-Info.plist"; sourceTree = "<group>"; };
+ 242DD7B0126A683B00306828 /* DCTInstapaperKit_Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DCTInstapaperKit_Prefix.pch; sourceTree = "<group>"; };
+ 242DD7B2126A683B00306828 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
+ 242DD7B4126A683B00306828 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
+ 242DD7B6126A683B00306828 /* DCTInstapaperKitAppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DCTInstapaperKitAppDelegate.h; sourceTree = "<group>"; };
+ 242DD7B7126A683B00306828 /* DCTInstapaperKitAppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DCTInstapaperKitAppDelegate.m; sourceTree = "<group>"; };
+ 242DD7BA126A683B00306828 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/MainWindow.xib; sourceTree = "<group>"; };
+ 24C11D0B126A68DC0010A2D3 /* DTInstapaperAddConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTInstapaperAddConnection.h; sourceTree = "<group>"; };
+ 24C11D0C126A68DC0010A2D3 /* DTInstapaperAddConnection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTInstapaperAddConnection.m; sourceTree = "<group>"; };
+ 24C11D0D126A68DC0010A2D3 /* DTInstapaperConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTInstapaperConnection.h; sourceTree = "<group>"; };
+ 24C11D0E126A68DC0010A2D3 /* DTInstapaperConnection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTInstapaperConnection.m; sourceTree = "<group>"; };
+ 24C11D0F126A68DC0010A2D3 /* DTInstapaperLoginConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTInstapaperLoginConnection.h; sourceTree = "<group>"; };
+ 24C11D10126A68DC0010A2D3 /* DTInstapaperLoginConnection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTInstapaperLoginConnection.m; sourceTree = "<group>"; };
+ 24C11D30126A69220010A2D3 /* DTCacheURLProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTCacheURLProtocol.h; sourceTree = "<group>"; };
+ 24C11D31126A69220010A2D3 /* DTCacheURLProtocol.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTCacheURLProtocol.m; sourceTree = "<group>"; };
+ 24C11D32126A69220010A2D3 /* DTFileCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTFileCache.h; sourceTree = "<group>"; };
+ 24C11D33126A69220010A2D3 /* DTFileCache.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTFileCache.m; sourceTree = "<group>"; };
+ 24C11D35126A69220010A2D3 /* NSBundle+DTInfoPlist.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSBundle+DTInfoPlist.h"; sourceTree = "<group>"; };
+ 24C11D36126A69220010A2D3 /* NSBundle+DTInfoPlist.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSBundle+DTInfoPlist.m"; sourceTree = "<group>"; };
+ 24C11D37126A69220010A2D3 /* NSData+Base64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+Base64.h"; sourceTree = "<group>"; };
+ 24C11D38126A69220010A2D3 /* NSData+Base64.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+Base64.m"; sourceTree = "<group>"; };
+ 24C11D39126A69220010A2D3 /* NSDictionary+DTLocateObjectForKey.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDictionary+DTLocateObjectForKey.h"; sourceTree = "<group>"; };
+ 24C11D3A126A69220010A2D3 /* NSDictionary+DTLocateObjectForKey.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSDictionary+DTLocateObjectForKey.m"; sourceTree = "<group>"; };
+ 24C11D3B126A69220010A2D3 /* NSString+DTURLEncoding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+DTURLEncoding.h"; sourceTree = "<group>"; };
+ 24C11D3C126A69220010A2D3 /* NSString+DTURLEncoding.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+DTURLEncoding.m"; sourceTree = "<group>"; };
+ 24C11D3E126A69220010A2D3 /* DCTCoreDataConnectionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCTCoreDataConnectionController.h; sourceTree = "<group>"; };
+ 24C11D3F126A69220010A2D3 /* DCTCoreDataConnectionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DCTCoreDataConnectionController.m; sourceTree = "<group>"; };
+ 24C11D40126A69220010A2D3 /* DCTRequestConnectionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCTRequestConnectionController.h; sourceTree = "<group>"; };
+ 24C11D41126A69220010A2D3 /* DCTRequestConnectionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DCTRequestConnectionController.m; sourceTree = "<group>"; };
+ 24C11D42126A69220010A2D3 /* DCTURLLoadingConnectionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCTURLLoadingConnectionController.h; sourceTree = "<group>"; };
+ 24C11D43126A69220010A2D3 /* DCTURLLoadingConnectionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DCTURLLoadingConnectionController.m; sourceTree = "<group>"; };
+ 24C11D44126A69220010A2D3 /* DCTConnectionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCTConnectionController.h; sourceTree = "<group>"; };
+ 24C11D45126A69220010A2D3 /* DCTConnectionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DCTConnectionController.m; sourceTree = "<group>"; };
+ 24C11D46126A69220010A2D3 /* DCTConnectionQueue+Singleton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DCTConnectionQueue+Singleton.h"; sourceTree = "<group>"; };
+ 24C11D47126A69220010A2D3 /* DCTConnectionQueue+Singleton.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "DCTConnectionQueue+Singleton.m"; sourceTree = "<group>"; };
+ 24C11D48126A69220010A2D3 /* DCTConnectionQueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCTConnectionQueue.h; sourceTree = "<group>"; };
+ 24C11D49126A69220010A2D3 /* DCTConnectionQueue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DCTConnectionQueue.m; sourceTree = "<group>"; };
+ 24C11D4A126A69220010A2D3 /* DCTRESTController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCTRESTController.h; sourceTree = "<group>"; };
+ 24C11D4B126A69220010A2D3 /* DCTRESTController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DCTRESTController.m; sourceTree = "<group>"; };
+ 24C11D4C126A69220010A2D3 /* DCTURLConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCTURLConnection.h; sourceTree = "<group>"; };
+ 24C11D4D126A69220010A2D3 /* DCTURLConnection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DCTURLConnection.m; sourceTree = "<group>"; };
+ 24C11D4F126A69220010A2D3 /* DCTOAuthAccessTokenConnectionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCTOAuthAccessTokenConnectionController.h; sourceTree = "<group>"; };
+ 24C11D50126A69220010A2D3 /* DCTOAuthAccessTokenConnectionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DCTOAuthAccessTokenConnectionController.m; sourceTree = "<group>"; };
+ 24C11D51126A69220010A2D3 /* DCTOAuthConnectionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCTOAuthConnectionController.h; sourceTree = "<group>"; };
+ 24C11D52126A69220010A2D3 /* DCTOAuthConnectionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DCTOAuthConnectionController.m; sourceTree = "<group>"; };
+ 24C11D53126A69220010A2D3 /* DCTOAuthController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCTOAuthController.h; sourceTree = "<group>"; };
+ 24C11D54126A69220010A2D3 /* DCTOAuthController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DCTOAuthController.m; sourceTree = "<group>"; };
+ 24C11D55126A69220010A2D3 /* DCTOAuthRequestTokenConnectionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCTOAuthRequestTokenConnectionController.h; sourceTree = "<group>"; };
+ 24C11D56126A69220010A2D3 /* DCTOAuthRequestTokenConnectionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DCTOAuthRequestTokenConnectionController.m; sourceTree = "<group>"; };
+ 24C11D57126A69220010A2D3 /* DCTOAuthSignature.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCTOAuthSignature.h; sourceTree = "<group>"; };
+ 24C11D58126A69220010A2D3 /* DCTOAuthSignature.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DCTOAuthSignature.m; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
- 1D60588F0D05DD3D006BFB54 /* Frameworks */ = {
+ 242DD7A3126A683B00306828 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- 1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */,
- 1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */,
- 288765FD0DF74451002DB57D /* CoreGraphics.framework in Frameworks */,
- 24988D18115176D3008F51D5 /* CoreData.framework in Frameworks */,
+ 242DD7AA126A683B00306828 /* UIKit.framework in Frameworks */,
+ 242DD7AC126A683B00306828 /* Foundation.framework in Frameworks */,
+ 242DD7AE126A683B00306828 /* CoreGraphics.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
- 080E96DDFE201D6D7F000001 /* Classes */ = {
+ 242DD797126A683B00306828 = {
isa = PBXGroup;
children = (
- 1D3623240D0F684500981E51 /* DTInstapaperKitAppDelegate.h */,
- 1D3623250D0F684500981E51 /* DTInstapaperKitAppDelegate.m */,
+ 24C11D2E126A69220010A2D3 /* DCTConnectionKit */,
+ 24C11D0A126A68DC0010A2D3 /* DCTInstapaperKit */,
+ 242DD79E126A683B00306828 /* Classes */,
+ 242DD79F126A683B00306828 /* Other Sources */,
+ 242DD7A0126A683B00306828 /* Resources */,
+ 242DD7A1126A683B00306828 /* Frameworks */,
+ 242DD7A7126A683B00306828 /* Products */,
+ );
+ sourceTree = "<group>";
+ };
+ 242DD79E126A683B00306828 /* Classes */ = {
+ isa = PBXGroup;
+ children = (
+ 242DD7B6126A683B00306828 /* DCTInstapaperKitAppDelegate.h */,
+ 242DD7B7126A683B00306828 /* DCTInstapaperKitAppDelegate.m */,
);
path = Classes;
sourceTree = "<group>";
};
- 19C28FACFE9D520D11CA2CBB /* Products */ = {
+ 242DD79F126A683B00306828 /* Other Sources */ = {
isa = PBXGroup;
children = (
- 1D6058910D05DD3D006BFB54 /* DCTInstapaperKit.app */,
+ 242DD7B0126A683B00306828 /* DCTInstapaperKit_Prefix.pch */,
+ 242DD7B4126A683B00306828 /* main.m */,
);
- name = Products;
+ name = "Other Sources";
sourceTree = "<group>";
};
- 24988CFE115176C7008F51D5 /* DTConnectionKit */ = {
+ 242DD7A0126A683B00306828 /* Resources */ = {
isa = PBXGroup;
children = (
- 24988CFF115176C7008F51D5 /* DTCacheURLProtocol.h */,
- 24988D00115176C7008F51D5 /* DTCacheURLProtocol.m */,
- 24988D01115176C7008F51D5 /* DTConnection.h */,
- 24988D02115176C8008F51D5 /* DTConnection.m */,
- 24988D04115176C8008F51D5 /* DTConnectionQueue.h */,
- 24988D05115176C8008F51D5 /* DTConnectionQueue.m */,
- 24988D06115176C8008F51D5 /* DTCoreDataConnection.h */,
- 24988D07115176C8008F51D5 /* DTCoreDataConnection.m */,
- 24988D08115176C8008F51D5 /* DTFileCache.h */,
- 24988D09115176C8008F51D5 /* DTFileCache.m */,
- 24988D0A115176C8008F51D5 /* DTURLConnection.h */,
- 24988D0B115176C8008F51D5 /* DTURLConnection.m */,
- 24988D0C115176C8008F51D5 /* DTURLLoadingConnection.h */,
- 24988D0D115176C8008F51D5 /* DTURLLoadingConnection.m */,
- 244C085011A19F7E00D960A4 /* NSData+Base64.h */,
- 244C085111A19F7E00D960A4 /* NSData+Base64.m */,
+ 242DD7AF126A683B00306828 /* DCTInstapaperKit-Info.plist */,
+ 242DD7B1126A683B00306828 /* InfoPlist.strings */,
+ 242DD7B9126A683B00306828 /* MainWindow.xib */,
);
- path = DTConnectionKit;
+ name = Resources;
sourceTree = "<group>";
};
- 24988D1D115176FA008F51D5 /* DTInstapaperKit */ = {
+ 242DD7A1126A683B00306828 /* Frameworks */ = {
isa = PBXGroup;
children = (
- 24988E5311518AFE008F51D5 /* DTInstapaperConnection.h */,
- 24988E5411518AFE008F51D5 /* DTInstapaperConnection.m */,
- 24988D2011517711008F51D5 /* DTInstapaperLoginConnection.h */,
- 24988D2111517711008F51D5 /* DTInstapaperLoginConnection.m */,
- 24988D251151774A008F51D5 /* DTInstapaperAddConnection.h */,
- 24988D261151774A008F51D5 /* DTInstapaperAddConnection.m */,
+ 242DD7A9126A683B00306828 /* UIKit.framework */,
+ 242DD7AB126A683B00306828 /* Foundation.framework */,
+ 242DD7AD126A683B00306828 /* CoreGraphics.framework */,
);
- path = DTInstapaperKit;
+ name = Frameworks;
sourceTree = "<group>";
};
- 29B97314FDCFA39411CA2CEA /* CustomTemplate */ = {
+ 242DD7A7126A683B00306828 /* Products */ = {
isa = PBXGroup;
children = (
- 24988CFE115176C7008F51D5 /* DTConnectionKit */,
- 24988D1D115176FA008F51D5 /* DTInstapaperKit */,
- 080E96DDFE201D6D7F000001 /* Classes */,
- 29B97315FDCFA39411CA2CEA /* Other Sources */,
- 29B97317FDCFA39411CA2CEA /* Resources */,
- 29B97323FDCFA39411CA2CEA /* Frameworks */,
- 19C28FACFE9D520D11CA2CBB /* Products */,
+ 242DD7A6126A683B00306828 /* DCTInstapaperKit.app */,
);
- name = CustomTemplate;
+ name = Products;
sourceTree = "<group>";
};
- 29B97315FDCFA39411CA2CEA /* Other Sources */ = {
+ 24C11D0A126A68DC0010A2D3 /* DCTInstapaperKit */ = {
isa = PBXGroup;
children = (
- 32CA4F630368D1EE00C91783 /* DCTInstapaperKit_Prefix.pch */,
- 29B97316FDCFA39411CA2CEA /* main.m */,
+ 24C11D0B126A68DC0010A2D3 /* DTInstapaperAddConnection.h */,
+ 24C11D0C126A68DC0010A2D3 /* DTInstapaperAddConnection.m */,
+ 24C11D0D126A68DC0010A2D3 /* DTInstapaperConnection.h */,
+ 24C11D0E126A68DC0010A2D3 /* DTInstapaperConnection.m */,
+ 24C11D0F126A68DC0010A2D3 /* DTInstapaperLoginConnection.h */,
+ 24C11D10126A68DC0010A2D3 /* DTInstapaperLoginConnection.m */,
);
- name = "Other Sources";
+ path = DCTInstapaperKit;
sourceTree = "<group>";
};
- 29B97317FDCFA39411CA2CEA /* Resources */ = {
+ 24C11D2E126A69220010A2D3 /* DCTConnectionKit */ = {
isa = PBXGroup;
children = (
- 28AD733E0D9D9553002E5188 /* MainWindow.xib */,
- 8D1107310486CEB800E47090 /* DCTInstapaperKit-Info.plist */,
+ 24C11D2F126A69220010A2D3 /* Caching */,
+ 24C11D34126A69220010A2D3 /* Categories */,
+ 24C11D3D126A69220010A2D3 /* Connection Controllers */,
+ 24C11D44126A69220010A2D3 /* DCTConnectionController.h */,
+ 24C11D45126A69220010A2D3 /* DCTConnectionController.m */,
+ 24C11D46126A69220010A2D3 /* DCTConnectionQueue+Singleton.h */,
+ 24C11D47126A69220010A2D3 /* DCTConnectionQueue+Singleton.m */,
+ 24C11D48126A69220010A2D3 /* DCTConnectionQueue.h */,
+ 24C11D49126A69220010A2D3 /* DCTConnectionQueue.m */,
+ 24C11D4A126A69220010A2D3 /* DCTRESTController.h */,
+ 24C11D4B126A69220010A2D3 /* DCTRESTController.m */,
+ 24C11D4C126A69220010A2D3 /* DCTURLConnection.h */,
+ 24C11D4D126A69220010A2D3 /* DCTURLConnection.m */,
+ 24C11D4E126A69220010A2D3 /* OAuth */,
);
- name = Resources;
+ name = DCTConnectionKit;
+ path = /Users/danielctull/Dropbox/Programs/Cocoa/Frameworks/DCTConnectionKit/DCTConnectionKit;
+ sourceTree = "<absolute>";
+ };
+ 24C11D2F126A69220010A2D3 /* Caching */ = {
+ isa = PBXGroup;
+ children = (
+ 24C11D30126A69220010A2D3 /* DTCacheURLProtocol.h */,
+ 24C11D31126A69220010A2D3 /* DTCacheURLProtocol.m */,
+ 24C11D32126A69220010A2D3 /* DTFileCache.h */,
+ 24C11D33126A69220010A2D3 /* DTFileCache.m */,
+ );
+ path = Caching;
sourceTree = "<group>";
};
- 29B97323FDCFA39411CA2CEA /* Frameworks */ = {
+ 24C11D34126A69220010A2D3 /* Categories */ = {
isa = PBXGroup;
children = (
- 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */,
- 1D30AB110D05D00D00671497 /* Foundation.framework */,
- 288765FC0DF74451002DB57D /* CoreGraphics.framework */,
- 24988D17115176D3008F51D5 /* CoreData.framework */,
+ 24C11D35126A69220010A2D3 /* NSBundle+DTInfoPlist.h */,
+ 24C11D36126A69220010A2D3 /* NSBundle+DTInfoPlist.m */,
+ 24C11D37126A69220010A2D3 /* NSData+Base64.h */,
+ 24C11D38126A69220010A2D3 /* NSData+Base64.m */,
+ 24C11D39126A69220010A2D3 /* NSDictionary+DTLocateObjectForKey.h */,
+ 24C11D3A126A69220010A2D3 /* NSDictionary+DTLocateObjectForKey.m */,
+ 24C11D3B126A69220010A2D3 /* NSString+DTURLEncoding.h */,
+ 24C11D3C126A69220010A2D3 /* NSString+DTURLEncoding.m */,
);
- name = Frameworks;
+ path = Categories;
+ sourceTree = "<group>";
+ };
+ 24C11D3D126A69220010A2D3 /* Connection Controllers */ = {
+ isa = PBXGroup;
+ children = (
+ 24C11D3E126A69220010A2D3 /* DCTCoreDataConnectionController.h */,
+ 24C11D3F126A69220010A2D3 /* DCTCoreDataConnectionController.m */,
+ 24C11D40126A69220010A2D3 /* DCTRequestConnectionController.h */,
+ 24C11D41126A69220010A2D3 /* DCTRequestConnectionController.m */,
+ 24C11D42126A69220010A2D3 /* DCTURLLoadingConnectionController.h */,
+ 24C11D43126A69220010A2D3 /* DCTURLLoadingConnectionController.m */,
+ );
+ path = "Connection Controllers";
+ sourceTree = "<group>";
+ };
+ 24C11D4E126A69220010A2D3 /* OAuth */ = {
+ isa = PBXGroup;
+ children = (
+ 24C11D4F126A69220010A2D3 /* DCTOAuthAccessTokenConnectionController.h */,
+ 24C11D50126A69220010A2D3 /* DCTOAuthAccessTokenConnectionController.m */,
+ 24C11D51126A69220010A2D3 /* DCTOAuthConnectionController.h */,
+ 24C11D52126A69220010A2D3 /* DCTOAuthConnectionController.m */,
+ 24C11D53126A69220010A2D3 /* DCTOAuthController.h */,
+ 24C11D54126A69220010A2D3 /* DCTOAuthController.m */,
+ 24C11D55126A69220010A2D3 /* DCTOAuthRequestTokenConnectionController.h */,
+ 24C11D56126A69220010A2D3 /* DCTOAuthRequestTokenConnectionController.m */,
+ 24C11D57126A69220010A2D3 /* DCTOAuthSignature.h */,
+ 24C11D58126A69220010A2D3 /* DCTOAuthSignature.m */,
+ );
+ path = OAuth;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
- 1D6058900D05DD3D006BFB54 /* DCTInstapaperKit */ = {
+ 242DD7A5126A683B00306828 /* DCTInstapaperKit */ = {
isa = PBXNativeTarget;
- buildConfigurationList = 1D6058960D05DD3E006BFB54 /* Build configuration list for PBXNativeTarget "DCTInstapaperKit" */;
+ buildConfigurationList = 242DD7BE126A683B00306828 /* Build configuration list for PBXNativeTarget "DCTInstapaperKit" */;
buildPhases = (
- 1D60588D0D05DD3D006BFB54 /* Resources */,
- 1D60588E0D05DD3D006BFB54 /* Sources */,
- 1D60588F0D05DD3D006BFB54 /* Frameworks */,
+ 242DD7A2126A683B00306828 /* Sources */,
+ 242DD7A3126A683B00306828 /* Frameworks */,
+ 242DD7A4126A683B00306828 /* Resources */,
);
buildRules = (
);
dependencies = (
);
name = DCTInstapaperKit;
- productName = DTInstapaperKit;
- productReference = 1D6058910D05DD3D006BFB54 /* DCTInstapaperKit.app */;
+ productName = DCTInstapaperKit;
+ productReference = 242DD7A6126A683B00306828 /* DCTInstapaperKit.app */;
productType = "com.apple.product-type.application";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
- 29B97313FDCFA39411CA2CEA /* Project object */ = {
+ 242DD799126A683B00306828 /* Project object */ = {
isa = PBXProject;
- buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "DCTInstapaperKit" */;
- compatibilityVersion = "Xcode 3.1";
+ attributes = {
+ ORGANIZATIONNAME = "Daniel Tull";
+ };
+ buildConfigurationList = 242DD79C126A683B00306828 /* Build configuration list for PBXProject "DCTInstapaperKit" */;
+ compatibilityVersion = "Xcode 3.2";
developmentRegion = English;
- hasScannedForEncodings = 1;
+ hasScannedForEncodings = 0;
knownRegions = (
- English,
- Japanese,
- French,
- German,
+ en,
);
- mainGroup = 29B97314FDCFA39411CA2CEA /* CustomTemplate */;
+ mainGroup = 242DD797126A683B00306828;
+ productRefGroup = 242DD7A7126A683B00306828 /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
- 1D6058900D05DD3D006BFB54 /* DCTInstapaperKit */,
+ 242DD7A5126A683B00306828 /* DCTInstapaperKit */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
- 1D60588D0D05DD3D006BFB54 /* Resources */ = {
+ 242DD7A4126A683B00306828 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
- 28AD733F0D9D9553002E5188 /* MainWindow.xib in Resources */,
+ 242DD7B3126A683B00306828 /* InfoPlist.strings in Resources */,
+ 242DD7BB126A683B00306828 /* MainWindow.xib in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
- 1D60588E0D05DD3D006BFB54 /* Sources */ = {
+ 242DD7A2126A683B00306828 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
- 1D60589B0D05DD56006BFB54 /* main.m in Sources */,
- 1D3623260D0F684500981E51 /* DTInstapaperKitAppDelegate.m in Sources */,
- 24988D0E115176C8008F51D5 /* DTCacheURLProtocol.m in Sources */,
- 24988D0F115176C8008F51D5 /* DTConnection.m in Sources */,
- 24988D11115176C8008F51D5 /* DTConnectionQueue.m in Sources */,
- 24988D12115176C8008F51D5 /* DTCoreDataConnection.m in Sources */,
- 24988D13115176C8008F51D5 /* DTFileCache.m in Sources */,
- 24988D14115176C8008F51D5 /* DTURLConnection.m in Sources */,
- 24988D15115176C8008F51D5 /* DTURLLoadingConnection.m in Sources */,
- 24988D2211517711008F51D5 /* DTInstapaperLoginConnection.m in Sources */,
- 24988D271151774A008F51D5 /* DTInstapaperAddConnection.m in Sources */,
- 24988E5511518AFE008F51D5 /* DTInstapaperConnection.m in Sources */,
- 244C085211A19F7E00D960A4 /* NSData+Base64.m in Sources */,
+ 242DD7B5126A683B00306828 /* main.m in Sources */,
+ 242DD7B8126A683B00306828 /* DCTInstapaperKitAppDelegate.m in Sources */,
+ 24C11D11126A68DC0010A2D3 /* DTInstapaperAddConnection.m in Sources */,
+ 24C11D12126A68DC0010A2D3 /* DTInstapaperConnection.m in Sources */,
+ 24C11D13126A68DC0010A2D3 /* DTInstapaperLoginConnection.m in Sources */,
+ 24C11D59126A69230010A2D3 /* DTCacheURLProtocol.m in Sources */,
+ 24C11D5A126A69230010A2D3 /* DTFileCache.m in Sources */,
+ 24C11D5B126A69230010A2D3 /* NSBundle+DTInfoPlist.m in Sources */,
+ 24C11D5C126A69230010A2D3 /* NSData+Base64.m in Sources */,
+ 24C11D5D126A69230010A2D3 /* NSDictionary+DTLocateObjectForKey.m in Sources */,
+ 24C11D5E126A69230010A2D3 /* NSString+DTURLEncoding.m in Sources */,
+ 24C11D5F126A69230010A2D3 /* DCTCoreDataConnectionController.m in Sources */,
+ 24C11D60126A69230010A2D3 /* DCTRequestConnectionController.m in Sources */,
+ 24C11D61126A69230010A2D3 /* DCTURLLoadingConnectionController.m in Sources */,
+ 24C11D62126A69230010A2D3 /* DCTConnectionController.m in Sources */,
+ 24C11D63126A69230010A2D3 /* DCTConnectionQueue+Singleton.m in Sources */,
+ 24C11D64126A69230010A2D3 /* DCTConnectionQueue.m in Sources */,
+ 24C11D65126A69230010A2D3 /* DCTRESTController.m in Sources */,
+ 24C11D66126A69230010A2D3 /* DCTURLConnection.m in Sources */,
+ 24C11D67126A69230010A2D3 /* DCTOAuthAccessTokenConnectionController.m in Sources */,
+ 24C11D68126A69230010A2D3 /* DCTOAuthConnectionController.m in Sources */,
+ 24C11D69126A69230010A2D3 /* DCTOAuthController.m in Sources */,
+ 24C11D6A126A69230010A2D3 /* DCTOAuthRequestTokenConnectionController.m in Sources */,
+ 24C11D6B126A69230010A2D3 /* DCTOAuthSignature.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
-/* Begin XCBuildConfiguration section */
- 1D6058940D05DD3E006BFB54 /* Debug */ = {
- isa = XCBuildConfiguration;
- buildSettings = {
- ALWAYS_SEARCH_USER_PATHS = NO;
- COPY_PHASE_STRIP = NO;
- GCC_DYNAMIC_NO_PIC = NO;
- GCC_OPTIMIZATION_LEVEL = 0;
- GCC_PRECOMPILE_PREFIX_HEADER = YES;
- GCC_PREFIX_HEADER = DCTInstapaperKit_Prefix.pch;
- INFOPLIST_FILE = "DCTInstapaperKit-Info.plist";
- PRODUCT_NAME = DCTInstapaperKit;
- };
- name = Debug;
+/* Begin PBXVariantGroup section */
+ 242DD7B1126A683B00306828 /* InfoPlist.strings */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 242DD7B2126A683B00306828 /* en */,
+ );
+ name = InfoPlist.strings;
+ sourceTree = "<group>";
};
- 1D6058950D05DD3E006BFB54 /* Release */ = {
- isa = XCBuildConfiguration;
- buildSettings = {
- ALWAYS_SEARCH_USER_PATHS = NO;
- COPY_PHASE_STRIP = YES;
- GCC_PRECOMPILE_PREFIX_HEADER = YES;
- GCC_PREFIX_HEADER = DCTInstapaperKit_Prefix.pch;
- INFOPLIST_FILE = "DCTInstapaperKit-Info.plist";
- PRODUCT_NAME = DCTInstapaperKit;
- VALIDATE_PRODUCT = YES;
- };
- name = Release;
+ 242DD7B9126A683B00306828 /* MainWindow.xib */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 242DD7BA126A683B00306828 /* en */,
+ );
+ name = MainWindow.xib;
+ sourceTree = "<group>";
};
- C01FCF4F08A954540054247B /* Debug */ = {
+/* End PBXVariantGroup section */
+
+/* Begin XCBuildConfiguration section */
+ 242DD7BC126A683B00306828 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
- GCC_C_LANGUAGE_STANDARD = c99;
+ GCC_C_LANGUAGE_STANDARD = gnu99;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = DEBUG;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 4.1;
PREBINDING = NO;
- SDKROOT = iphoneos3.1.3;
+ SDKROOT = iphoneos;
};
name = Debug;
};
- C01FCF5008A954540054247B /* Release */ = {
+ 242DD7BD126A683B00306828 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
- GCC_C_LANGUAGE_STANDARD = c99;
+ GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 4.1;
OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1";
PREBINDING = NO;
- SDKROOT = iphoneos3.1.3;
+ SDKROOT = iphoneos;
+ };
+ name = Release;
+ };
+ 242DD7BF126A683B00306828 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ COPY_PHASE_STRIP = NO;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = DCTInstapaperKit_Prefix.pch;
+ INFOPLIST_FILE = "DCTInstapaperKit-Info.plist";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ WRAPPER_EXTENSION = app;
+ };
+ name = Debug;
+ };
+ 242DD7C0126A683B00306828 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ COPY_PHASE_STRIP = YES;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = DCTInstapaperKit_Prefix.pch;
+ INFOPLIST_FILE = "DCTInstapaperKit-Info.plist";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ VALIDATE_PRODUCT = YES;
+ WRAPPER_EXTENSION = app;
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
- 1D6058960D05DD3E006BFB54 /* Build configuration list for PBXNativeTarget "DCTInstapaperKit" */ = {
+ 242DD79C126A683B00306828 /* Build configuration list for PBXProject "DCTInstapaperKit" */ = {
isa = XCConfigurationList;
buildConfigurations = (
- 1D6058940D05DD3E006BFB54 /* Debug */,
- 1D6058950D05DD3E006BFB54 /* Release */,
+ 242DD7BC126A683B00306828 /* Debug */,
+ 242DD7BD126A683B00306828 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
- C01FCF4E08A954540054247B /* Build configuration list for PBXProject "DCTInstapaperKit" */ = {
+ 242DD7BE126A683B00306828 /* Build configuration list for PBXNativeTarget "DCTInstapaperKit" */ = {
isa = XCConfigurationList;
buildConfigurations = (
- C01FCF4F08A954540054247B /* Debug */,
- C01FCF5008A954540054247B /* Release */,
+ 242DD7BF126A683B00306828 /* Debug */,
+ 242DD7C0126A683B00306828 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
- rootObject = 29B97313FDCFA39411CA2CEA /* Project object */;
+ rootObject = 242DD799126A683B00306828 /* Project object */;
}
View
6 DCTInstapaperKit.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace>
+ <FileRef
+ location = "self:DCTInstapaperKit.xcodeproj">
+ </FileRef>
+</Workspace>
View
46 ...paperKit.xcodeproj/xcuserdata/danielctull.xcuserdatad/xcschemes/DCTInstapaperKit.xcscheme
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme>
+ <BuildAction
+ buildConfiguration = "Debug"
+ parallelizeBuildables = "NO">
+ </BuildAction>
+ <TestAction
+ failureAction = "0">
+ </TestAction>
+ <LaunchAction
+ selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
+ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
+ loadSymbolsForSpecifiedModules = "NO"
+ displayScaleIsEnabled = "NO"
+ displayScale = "1.00">
+ <BuildableProductRunnable>
+ <BuildableProductReference
+ BuildableIdentifier = "primary"
+ BlueprintIdentifier = "242DD7A5126A683B00306828"
+ ReferencedContainer = "container:DCTInstapaperKit.xcodeproj">
+ </BuildableProductReference>
+ </BuildableProductRunnable>
+ <AdditionalOptions>
+ </AdditionalOptions>
+ </LaunchAction>
+ <ProfileAction
+ persistedCurrentAnalysisToolIdentifier = ""
+ displayScaleIsEnabled = "NO"
+ displayScale = "1.00"
+ shouldUseLaunchSchemeArgsEnv = "YES">
+ <BuildableProductRunnable>
+ <BuildableProductReference
+ BuildableIdentifier = "primary"
+ BlueprintIdentifier = "242DD7A5126A683B00306828"
+ ReferencedContainer = "container:DCTInstapaperKit.xcodeproj">
+ </BuildableProductReference>
+ </BuildableProductRunnable>
+ </ProfileAction>
+ <ArchiveAction>
+ <ArchivingStrategy
+ StrategyType = "Xcode.IDEStandardArchivingStrategies.ArchivingStrategyType.DiskImage">
+ <StrategyContent>
+ </StrategyContent>
+ </ArchivingStrategy>
+ </ArchiveAction>
+</Scheme>
View
22 ...apaperKit.xcodeproj/xcuserdata/danielctull.xcuserdatad/xcschemes/xcschememanagement.plist
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>SchemeUserState</key>
+ <dict>
+ <key>DCTInstapaperKit.xcscheme</key>
+ <dict>
+ <key>orderHint</key>
+ <integer>0</integer>
+ </dict>
+ </dict>
+ <key>SuppressBuildableAutocreation</key>
+ <dict>
+ <key>242DD7A5126A683B00306828</key>
+ <dict>
+ <key>primary</key>
+ <true/>
+ </dict>
+ </dict>
+</dict>
+</plist>
View
0 DTInstapaperKit/DTInstapaperAddConnection.h → DCTInstapaperKit/DTInstapaperAddConnection.h
File renamed without changes.
View
0 DTInstapaperKit/DTInstapaperAddConnection.m → DCTInstapaperKit/DTInstapaperAddConnection.m
File renamed without changes.
View
4 DTInstapaperKit/DTInstapaperConnection.h → DCTInstapaperKit/DTInstapaperConnection.h
@@ -6,9 +6,9 @@
// Copyright 2010 Daniel Tull. All rights reserved.
//
-#import "DTConnection.h"
+#import "DCTConnectionController.h"
-@interface DTInstapaperConnection : DTConnection {
+@interface DTInstapaperConnection : DCTConnectionController {
NSString *username, *password;
}
@property (nonatomic, retain) NSString *username, *password;
View
4 DTInstapaperKit/DTInstapaperConnection.m → DCTInstapaperKit/DTInstapaperConnection.m
@@ -7,7 +7,7 @@
//
#import "DTInstapaperConnection.h"
-
+#import "NSData+Base64.h"
@implementation DTInstapaperConnection
@synthesize username, password;
@@ -19,7 +19,7 @@ - (void)dealloc {
}
- (NSMutableURLRequest *)newRequest {
- self.type = DTConnectionTypePost;
+ self.type = DCTConnectionControllerTypePost;
NSMutableURLRequest *request = [super newRequest];
View
0 ...stapaperKit/DTInstapaperLoginConnection.h → ...stapaperKit/DTInstapaperLoginConnection.h
File renamed without changes.
View
0 ...stapaperKit/DTInstapaperLoginConnection.m → ...stapaperKit/DTInstapaperLoginConnection.m
File renamed without changes.
View
12 DCTInstapaperKit_Prefix.pch
@@ -1,8 +1,14 @@
//
-// Prefix header for all source files of the 'DTInstapaperKit' target in the 'DTInstapaperKit' project
+// Prefix header for all source files of the 'DCTInstapaperKit' target in the 'DCTInstapaperKit' project
//
+#import <Availability.h>
+
+#ifndef __IPHONE_3_0
+#warning "This project uses features only available in iPhone SDK 3.0 and later."
+#endif
+
#ifdef __OBJC__
- #import <Foundation/Foundation.h>
- #import <UIKit/UIKit.h>
+ #import <UIKit/UIKit.h>
+ #import <Foundation/Foundation.h>
#endif
View
16 DTConnectionKit/DTCacheURLProtocol.h
@@ -1,16 +0,0 @@
-//
-// DTCacheURLProtocol.h
-// DTConnectionKit
-//
-// Created by Daniel Tull on 09.02.2010.
-// Copyright 2010 Daniel Tull. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-
-@interface DTCacheURLProtocol : NSURLProtocol {
- BOOL connectionHasReturned;
-}
-
-@end
View
79 DTConnectionKit/DTCacheURLProtocol.m
@@ -1,79 +0,0 @@
-//
-// DTCacheURLProtocol.m
-// DTConnectionKit
-//
-// Created by Daniel Tull on 09.02.2010.
-// Copyright 2010 Daniel Tull. All rights reserved.
-//
-
-#import "DTCacheURLProtocol.h"
-#import "DTFileCache.h"
-#import "DTURLLoadingConnection.h"
-#import "DTConnectionQueue.h"
-
-NSString *const DTCacheURLProtocolString = @"dtcache";
-
-static NSMutableArray *consultedAboutURLs = nil;
-
-@implementation DTCacheURLProtocol
-
-+ (BOOL)canInitWithRequest:(NSURLRequest *)request {
-
- if (!consultedAboutURLs) consultedAboutURLs = [[NSMutableArray alloc] init];
-
- NSString *urlString = [[request URL] absoluteString];
-
- if ([consultedAboutURLs containsObject:urlString]) return NO;
-
- if ([urlString hasSuffix:@"jpg"] || [urlString hasSuffix:@"gif"] || [urlString hasSuffix:@"png"] || [urlString hasSuffix:@"jpeg"])
- return YES;
-
- return NO;
-}
-
-- (void)stopLoading {
-}
-
-- (void)startLoading {
-
- NSString *urlStringToLoad = [[[self request] URL] absoluteString];
-
- NSData *data = [DTFileCache dataForKey:urlStringToLoad];
-
- NSURLResponse *response = nil;
- NSError *error = nil;
-
- if (!data) {
- DTConnectionQueue *connectionQueue = [DTConnectionQueue sharedConnectionQueue];
-
- [consultedAboutURLs addObject:urlStringToLoad];
- [connectionQueue incrementExternalConnectionCount];
- data = [NSURLConnection sendSynchronousRequest:[self request] returningResponse:&response error:&error];
- [connectionQueue decrementExternalConnectionCount];
- [consultedAboutURLs removeObject:urlStringToLoad];
-
- [response retain];
-
- [DTFileCache setData:data forKey:urlStringToLoad];
- }
-
- response = [[NSURLResponse alloc] initWithURL:nil MIMEType:@"" expectedContentLength:-1 textEncodingName:nil];
-
- [[self client] URLProtocol:self didReceiveResponse:response cacheStoragePolicy:NSURLCacheStorageNotAllowed];
-
- [response release];
-
- if (error)
- [[self client] URLProtocol:self didFailWithError:error];
- else
- [[self client] URLProtocol:self didLoadData:data];
-
- [[self client] URLProtocolDidFinishLoading:self];
-}
-
-+ (NSURLRequest *)canonicalRequestForRequest:(NSURLRequest *)request {
- return request;
-}
-
-@end
-
View
262 DTConnectionKit/DTConnection.h
@@ -1,262 +0,0 @@
-//
-// DTConnection.h
-// DTConnectionKit
-//
-// Created by Daniel Tull on 23.01.2010.
-// Copyright 2010 Daniel Tull. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "DTURLConnection.h"
-#import "NSData+Base64.h"
-
-/** @brief Specifies the type of connection to use.
- */
-typedef enum {
- DTConnectionTypeGet = 0, /**< Uses a GET connection. */
- DTConnectionTypePost, /**< Uses a POST connection. */
- DTConnectionTypePut, /**< Uses a PUT connection. */
- DTConnectionTypeDelete, /**< Uses a DELETE connection. */
- DTConnectionTypeOptions, /**< Uses a OPTIONS connection. */
- DTConnectionTypeHead, /**< Uses a HEAD connection. */
- DTConnectionTypeTrace, /**< Uses a TRACE connection. */
- DTConnectionTypeConnect /**< Uses a CONNECT connection. */
-} DTConnectionType;
-
-/** @brief Specifies the different stages of a connection.
- */
-typedef enum {
- DTConnectionStatusNotStarted = 0, /**< The connection has not begun yet, and has not been given to the DTConnectionManager object to perform. */
- DTConnectionStatusQueued, /**< The connection has been placed in a queue and is awaiting a free slot to perform. */
- DTConnectionStatusStarted, /**< The request has been sent and a response is being awaited. */
- DTConnectionStatusResponded, /**< A response has been received by the server and the connection is awaiting completion. */
- DTConnectionStatusComplete, /**< The connection completed without any errors. */
- DTConnectionStatusFailed /**< The connection failed. */
-} DTConnectionStatus;
-
-
-/** @brief Name of the notification sent out when the connection has successfully completed.
- */
-extern NSString *const DTConnectionCompletedNotification;
-
-/** @brief Name of the notification sent out when the connection has failed.
- */
-extern NSString *const DTConnectionFailedNotification;
-
-/** @brief Name of the notification sent out when the connection has recieved a response.
- */
-extern NSString *const DTConnectionResponseNotification;
-
-#pragma mark -
-@protocol DTConnectionDelegate;
-
-#pragma mark -
-@interface DTConnection : NSOperation {
- DTConnectionType type;
- DTConnectionStatus status;
- NSString *identifier;
- NSObject *returnedObject;
- NSError *returnedError;
- NSURLResponse *returnedResponse;
- id<DTConnectionDelegate> delegate;
- NSURL *URL;
- NSThread *originatingThread;
- BOOL isExecuting, isFinished;
- DTURLConnection *urlConnection;
- NSAutoreleasePool *pool;
-}
-
-#pragma mark -
-#pragma mark Starting a connection
-
-/** @name Starting a connection
- @{
- */
-
-/** @brief This method starts the connection.
-
- Calling this adds the DTConnection operation to be added to the DTConnectionQueue.
-
- */
-- (void)connect;
-
-/**
- @}
- */
-
-#pragma mark -
-#pragma mark Setting up the connection details
-
-/** @name Setting up the connection details
- @{
- */
-
-/** @brief The type of connection to use.
-
- Specifies the type of connection to use. DTConnectionType is a typedef enum and possible values can be seen in the header file.
- */
-@property (nonatomic, assign) DTConnectionType type;
-
-/** @brief This method should be used in subclasses to give custom requests.
-
- Calling super from the subclass will give a mutable request of type 'type', this is the prefered way
- to get the request object in subclasses.
-
- @return A URL request which will form the connection.
- */
-- (NSMutableURLRequest *)newRequest;
-
-/**
- @}
- */
-
-#pragma mark -
-#pragma mark Setting up the delegate
-
-/** @name Setting up the delegate
- @{
- */
-
-/** @brief The object that acts as the delegate of the receiving connection controller.
-
- Unlike the usual behaviour of delegates in Cocoa, the delegate is retained by the connection controller.
- This is because DTConnectionController uses DTConnectionManager to perform the connection and the connection manager
- must retain its delegates. Because of this the delegate should never retain the connection controller.
- */
-@property (nonatomic, retain) id<DTConnectionDelegate> delegate;
-
-/**
- @}
- */
-
-#pragma mark -
-#pragma mark Handling connection events
-
-/** @name Handling connection events
- @{
- */
-
-/** @brief This method should be used in subclasses to handle the returned response.
-
- Subclasses should handle the response, taking any course of action given in the API documentation.
- The default implementation of this method notifies the delegate and observers of the response, so at
- the end of this method subclasses should call the super implementation.
-
- @param response The response returned from the connection.
- */
-- (void)receivedResponse:(NSURLResponse *)response;
-
-/** @brief This method should be used in subclasses to handle the returned data.
-
- Subclasses should handle the incoming data, creating a wrapper or data object for the delegate
- and observers to use. The default implementation of this method notifies the delegate and observers
- of the new data. Therefore, at the end of this method subclasses should call the super implementation
- with the handled data object as the parameter.
-
- @param object The data object returned from the connection.
- */
-- (void)receivedObject:(NSObject *)object;
-
-/** @brief This method should be used in subclasses to handle the returned error.
-
- Subclasses should handle the error, taking any course of action given in the API documentation.
- The default implementation of this method notifies the delegate and observers of the error, so at
- the end of this method subclasses should call the super implementation. This could be provided with
- a new error message created specifically for delegates and observers or just passing the error
- returned from the connection.
-
- @param response The response returned from the connection.
- */
-- (void)receivedError:(NSError *)error;
-
-/**
- @}
- */
-
-#pragma mark -
-#pragma mark Returned connection objects
-
-/** @name Returned connection objects
- @{
- */
-
-/** @brief The response returned from the connection.
-
- This holds the response given to the notifyDelegateAndObserversOfResponse: method, for observers to access.
- */
-@property (nonatomic, retain, readonly) NSURLResponse *returnedResponse;
-
-/** @brief The object, if there is one, returned from the connection.
-
- This holds the object given to the notifyDelegateAndObserversOfReturnedObject: method, for observers to access.
- */
-@property (nonatomic, retain, readonly) NSObject *returnedObject;
-
-/** @brief The error, if there is one, returned from the connection.
-
- This holds the error given to the notifyDelegateAndObserversOfReturnedError: method, for observers to access.
- */
-@property (nonatomic, retain, readonly) NSError *returnedError;
-
-/**
- @}
- */
-
-#pragma mark -
-#pragma mark Checking the status of a connection
-
-/** @name Checking the status of a connection
- @{
- */
-
-/** @brief The current status of the connection.
-
- This property can be observed to show progress of a connection. DTConnectionStatus is a typedef enum and possible values can be seen in the header file.
- */
-@property (nonatomic, readonly) DTConnectionStatus status;
-
-
-/** @brief The unique identifier for the connection.
-
- This property can be observed to show progress of a connection. DTConnectionStatus is a typedef enum and possible values can be seen in the header file.
- */
-@property (nonatomic, retain, readonly) NSString *identifier;
-
-
-@property (nonatomic, retain, readonly) NSURL *URL;
-
-@property (nonatomic, retain, readonly) NSThread *originatingThread;
-
-/*
- @}
- */
-
-@end
-
-
-#pragma mark -
-/** The delegate of DTConnectionController must adopt the DTConnectionControllerDelegate protocol, although all the methods
- are optional. They allow the delegate to handle only certain types of events, although connectionController:didSucceedWithObject:
- and connectionController:didFailWithError: should both be handled to take advantage of the data and handle any occuring errors.
- */
-@protocol DTConnectionDelegate
-@optional
-/** @brief Tells the delegate the connection has succeeded.
-
- @param connectionController The connection controller informing the delegate of the event.
- @param object The object returned by the connection.
- */
-- (void)dtconnection:(DTConnection *)connection didSucceedWithObject:(NSObject *)object;
-/** @brief Tells the delegate the connection has failed.
-
- @param connectionController The connection controller informing the delegate of the event.
- @param error The error received from the server.
- */
-- (void)dtconnection:(DTConnection *)connection didFailWithError:(NSError *)error;
-/** @brief Tells the delegate a response has been received from the server.
-
- @param connectionController The connection controller informing the delegate of the event.
- @param response The received response.
- */
-- (void)dtconnection:(DTConnection *)connection didReceiveResponse:(NSURLResponse *)response;
-@end
View
222 DTConnectionKit/DTConnection.m
@@ -1,222 +0,0 @@
-//
-// DTConnection.m
-// DTConnectionKit
-//
-// Created by Daniel Tull on 23.01.2010.
-// Copyright 2010 Daniel Tull. All rights reserved.
-//
-
-#import "DTConnection.h"
-#import "DTConnectionQueue.h"
-
-NSString * const DTConnectionTypeString[] = {
- @"GET",
- @"POST",
- @"PUT",
- @"DELETE",
- @"OPTIONS",
- @"HEAD",
- @"TRACE",
- @"CONNECT"
-};
-
-
-NSString *const DTConnectionCompletedNotification = @"DTConnectionCompletedNotification";
-NSString *const DTConnectionFailedNotification = @"DTConnectionFailedNotification";
-NSString *const DTConnectionResponseNotification = @"DTConnectionResponseNotification";
-
-NSString *const DTConnectionIsExecutingKey = @"isExecuting";
-NSString *const DTConnectionIsFinishedKey = @"isFinished";
-
-@interface DTConnection ()
-@property (nonatomic, retain, readwrite) NSURL *URL;
-@property (nonatomic, retain, readwrite) NSString *identifier;
-@property (nonatomic, readwrite) DTConnectionStatus status;
-@property (nonatomic, retain, readwrite) NSObject *returnedObject;
-@property (nonatomic, retain, readwrite) NSError *returnedError;
-@property (nonatomic, retain, readwrite) NSURLResponse *returnedResponse;
-
-- (void)notifyDelegateOfObject:(NSObject *)object;
-- (void)notifyObserversOfObject:(NSObject *)object;
-
-- (void)notifyDelegateOfReturnedError:(NSError *)error;
-- (void)notifyObserversOfReturnedError:(NSError *)error;
-
-- (void)notifyDelegateOfResponse:(NSURLResponse *)response;
-- (void)notifyObserversOfResponse:(NSURLResponse *)response;
-
-- (void)finish;
-- (void)inQueueCheck;
-@end
-
-@implementation DTConnection
-
-@synthesize identifier, status, delegate, type, returnedObject, returnedError, returnedResponse, URL, originatingThread;
-
-- (id)init {
-
- if (!(self = [super init])) return nil;
-
- self.identifier = [[NSProcessInfo processInfo] globallyUniqueString];
-
- originatingThread = [[NSThread currentThread] retain];
-
- return self;
-}
-
-
-- (void)dealloc {
- [originatingThread release]; originatingThread = nil;
- [URL release]; URL = nil;
- [identifier release]; identifier = nil;
- [returnedResponse release]; returnedResponse = nil;
- [returnedError release]; returnedError = nil;
- [returnedObject release]; returnedObject = nil;
- [urlConnection release]; urlConnection = nil;
- [super dealloc];
-}
-
-- (BOOL)isExecuting {
- return isExecuting;
-}
-- (BOOL)isFinished {
- if (self.status == DTConnectionStatusNotStarted)
- [self performSelector:@selector(inQueueCheck) withObject:nil afterDelay:0.0];
-
- return isFinished;
-}
-
-- (void)start {
- pool = [[NSAutoreleasePool alloc] init];
- [self willChangeValueForKey:DTConnectionIsExecutingKey];
- isExecuting = YES;
- [self didChangeValueForKey:DTConnectionIsExecutingKey];
-
- NSURLRequest *request = [self newRequest];
-
- if (!request) [self finish];
-
- self.URL = [request URL];
- urlConnection = [[DTURLConnection alloc] initWithRequest:request delegate:self];
- [request release];
-
- self.status = DTConnectionStatusStarted;
-
- if (!urlConnection) [self finish];
-
- CFRunLoopRun();
-}
-
-- (void)cancel {
- [super cancel];
- [urlConnection cancel];
- [self finish];
-}
-
-- (void)connect {
- [[DTConnectionQueue sharedConnectionQueue] addConnection:self];
-}
-
-#pragma mark -
-#pragma mark Subclass methods
-
-- (NSMutableURLRequest *)newRequest {
- NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
- [request setHTTPMethod:DTConnectionTypeString[type]];
- return request;
-}
-
-- (void)receivedObject:(NSObject *)object {
- self.returnedObject = object;
- self.status = DTConnectionStatusComplete;
- [self performSelector:@selector(notifyDelegateOfObject:) onThread:originatingThread withObject:object waitUntilDone:YES];
- [self performSelectorOnMainThread:@selector(notifyObserversOfObject:) withObject:object waitUntilDone:YES];
-}
-
-- (void)receivedResponse:(NSURLResponse *)response {
- self.returnedResponse = response;
- self.status = DTConnectionStatusResponded;
- [self performSelector:@selector(notifyDelegateOfResponse:) onThread:originatingThread withObject:response waitUntilDone:YES];
- [self performSelectorOnMainThread:@selector(notifyObserversOfResponse:) withObject:response waitUntilDone:YES];
-}
-
-- (void)receivedError:(NSError *)error {
- self.returnedError = error;
- self.status = DTConnectionStatusFailed;
- [self performSelector:@selector(notifyDelegateOfReturnedError:) onThread:originatingThread withObject:error waitUntilDone:YES];
- [self performSelectorOnMainThread:@selector(notifyObserversOfReturnedError:) withObject:error waitUntilDone:YES];
-}
-
-#pragma mark -
-#pragma mark NSURLConnection delegate methods
-
-- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {
- NSLog(@"%@:%s", self, _cmd);
- [self receivedResponse:response];
-}
-
-- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
- [(DTURLConnection *)connection appendData:data];
-}
-
-- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
- [self receivedObject:((DTURLConnection *)connection).data];
- [self finish];
-}
-
-- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error {
- [self receivedError:error];
- [self finish];
-}
-
-#pragma mark -
-#pragma mark Internal methods
-
-- (void)notifyDelegateOfObject:(NSObject *)object {
- if ([(NSObject *)self.delegate respondsToSelector:@selector(dtconnection:didSucceedWithObject:)])
- [self.delegate dtconnection:self didSucceedWithObject:object];
-}
-
-- (void)notifyObserversOfObject:(NSObject *)object {
- [[NSNotificationCenter defaultCenter] postNotificationName:DTConnectionCompletedNotification object:self];
-}
-
-
-
-- (void)notifyDelegateOfReturnedError:(NSError *)error {
- if ([(NSObject *)self.delegate respondsToSelector:@selector(dtconnection:didFailWithError:)])
- [self.delegate dtconnection:self didFailWithError:error];
-}
-
-- (void)notifyObserversOfReturnedError:(NSError *)error {
- [[NSNotificationCenter defaultCenter] postNotificationName:DTConnectionFailedNotification object:self];
-}
-
-
-
-- (void)notifyDelegateOfResponse:(NSURLResponse *)response {
- if ([(NSObject *)self.delegate respondsToSelector:@selector(dtconnection:didReceiveResponse:)])
- [self.delegate dtconnection:self didReceiveResponse:response];
-}
-
-- (void)notifyObserversOfResponse:(NSURLResponse *)response {
- [[NSNotificationCenter defaultCenter] postNotificationName:DTConnectionResponseNotification object:self];
-}
-
-- (void)finish {
- CFRunLoopStop([[NSRunLoop currentRunLoop] getCFRunLoop]);
- [self willChangeValueForKey:DTConnectionIsExecutingKey];
- [self willChangeValueForKey:DTConnectionIsFinishedKey];
- isExecuting = NO;
- isFinished = YES;
- [self didChangeValueForKey:DTConnectionIsExecutingKey];
- [self didChangeValueForKey:DTConnectionIsFinishedKey];
- [pool drain];
-}
-
-- (void)inQueueCheck {
- if (![self isExecuting])
- self.status = DTConnectionStatusQueued;
-}
-
-@end
View
31 DTConnectionKit/DTConnectionQueue.h
@@ -1,31 +0,0 @@
-//
-// DTConnectionQueue.h
-// DTConnectionKit
-//
-// Created by Daniel Tull on 23.01.2010.
-// Copyright 2010 Daniel Tull. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "DTConnection.h"
-
-extern NSString *const DTConnectionQueueConnectionCountChangedNotification;
-
-@interface DTConnectionQueue : NSOperationQueue {
- NSInteger externalConnections;
-}
-
-+ (DTConnectionQueue *)sharedConnectionQueue;
-
-- (void)addConnection:(DTConnection *)connection;
-
-- (BOOL)isConnectingToURL:(NSURL *)URL;
-- (BOOL)hasQueuedConnectionToURL:(NSURL *)URL;
-- (DTConnection *)queuedConnectionToURL:(NSURL *)URL;
-
-- (void)incrementExternalConnectionCount;
-- (void)decrementExternalConnectionCount;
-
-@property (nonatomic, assign) NSInteger maxConnections;
-@property (nonatomic, readonly) NSInteger connectionCount;
-@end
View
138 DTConnectionKit/DTConnectionQueue.m
@@ -1,138 +0,0 @@
-//
-// DTConnectionQueue.m
-// DTConnectionKit
-//
-// Created by Daniel Tull on 23.01.2010.
-// Copyright 2010 Daniel Tull. All rights reserved.
-//
-
-#import "DTConnectionQueue.h"
-
-NSString *const DTConnectionQueueConnectionCountChangedNotification = @"DTConnectionQueueConnectionCountChangedNotification";
-
-static DTConnectionQueue *sharedInstance = nil;
-
-
-@interface DTConnectionQueue ()
-- (void)updateConnectionCounter;
-@end
-
-@implementation DTConnectionQueue
-
-
-#pragma mark -
-#pragma mark Methods for Singleton use
-
-+ (void)initialize {
- if (!sharedInstance) {
- sharedInstance = [[self alloc] init];
- }
-}
-
-+ (DTConnectionQueue *)sharedConnectionQueue {
- return sharedInstance;
-}
-
-+ (id)allocWithZone:(NSZone *)zone {
- //Usually already set by +initialize.
- if (sharedInstance) {
- //The caller expects to receive a new object, so implicitly retain it to balance out the caller's eventual release message.
- return [sharedInstance retain];
- } else {
- //When not already set, +initialize is our caller—it's creating the shared instance. Let this go through.
- return [super allocWithZone:zone];
- }
-}
-
-- (id)init {
-
- if (!(self = [super init])) return nil;
-
-
- [self addObserver:self forKeyPath:@"operations" options:(NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld) context:NULL];
-
- return self;
-
-}
-
-- (void)addConnection:(DTConnection *)connection {
- [super addOperation:connection];
-}
-
-- (void)observeValueForKeyPath:(NSString *)keyPath
- ofObject:(id)object
- change:(NSDictionary *)change
- context:(void *)context {
-
- if ([keyPath isEqualToString:@"operations"]) {
- [self updateConnectionCounter];
- }
-}
-
-- (void)updateConnectionCounter {
- if (([self.operations count] + externalConnections) > 0)
- [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES];
- else
- [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO];
-
-
- [[NSNotificationCenter defaultCenter] postNotificationName:DTConnectionQueueConnectionCountChangedNotification object:self];
-}
-
-- (void)setMaxConnections:(NSInteger)max {
- [super setMaxConcurrentOperationCount:max];
-}
-
-- (NSInteger)maxConnections {
- return [super maxConcurrentOperationCount];
-}
-
-- (void)incrementExternalConnectionCount {
- externalConnections++;
- [self updateConnectionCounter];
-}
-
-- (void)decrementExternalConnectionCount {
- externalConnections--;
- [self performSelector:@selector(updateConnectionCounter) withObject:nil afterDelay:0.01];
-}
-
-- (NSInteger)connectionCount {
-
- NSInteger count = externalConnections;
-
- for (NSOperation *o in self.operations)
- if (o.isExecuting)
- count++;
-
- return count;
-}
-
-- (BOOL)isConnectingToURL:(NSURL *)URL {
- for (DTConnection *c in self.operations)
- if (c.isExecuting)
- if ([[URL absoluteString] isEqualToString:[c.URL absoluteString]])
- return YES;
-
- return NO;
-}
-
-- (BOOL)hasQueuedConnectionToURL:(NSURL *)URL {
- for (DTConnection *c in self.operations)
- if (!c.isExecuting)
- if ([[URL absoluteString] isEqualToString:[c.URL absoluteString]])
- return YES;
-
- return NO;
-}
-
-- (DTConnection *)queuedConnectionToURL:(NSURL *)URL {
- for (DTConnection *c in self.operations)
- if (!c.isExecuting)
- if ([[URL absoluteString] isEqualToString:[c.URL absoluteString]])
- return c;
-
- return nil;
-}
-
-@end
View
43 DTConnectionKit/DTCoreDataConnection.h
@@ -1,43 +0,0 @@
-//
-// DTCoreDataConnection.h
-// DTConnectionKit
-//
-// Created by Daniel Tull on 24.01.2010.
-// Copyright 2010 Daniel Tull. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <CoreData/CoreData.h>
-#import "DTConnection.h"
-
-@interface DTCoreDataConnection : DTConnection {
- NSManagedObjectContext *mainContext;
- NSManagedObjectContext *threadedContext;
- id mergePolicy;
-}
-
-@property (nonatomic, assign) id mergePolicy;
-@property (nonatomic, readonly) NSManagedObjectContext *managedObjectContext;
-
-
-
-#pragma mark -
-#pragma mark Initialising a connection
-
-/** @name Initialising a connection
- @{
- */
-
-/** @brief Use this method to create a Core Data-based Connection.
-
- Calling this adds the DTConnection operation to be added to the DTConnectionQueue.
-
- */
-- (id)initWithManagedObjectContext:(NSManagedObjectContext *)managedObjectContext;
-
-/**
- @}
- */
-
-
-@end
View
135 DTConnectionKit/DTCoreDataConnection.m
@@ -1,135 +0,0 @@
-//
-// DTCoreDataConnection.m
-// DTConnectionKit
-//
-// Created by Daniel Tull on 24.01.2010.
-// Copyright 2010 Daniel Tull. All rights reserved.
-//
-
-#import "DTCoreDataConnection.h"
-
-@interface DTCoreDataConnection ()
-- (void)saveThreadedContext;
-- (void)receivedObjectIDArray:(NSArray *)array;
-- (void)receivedObjectID:(NSManagedObjectID *)objectID;
-@end
-
-@implementation DTCoreDataConnection
-
-@synthesize mergePolicy;
-
-- (id)initWithManagedObjectContext:(NSManagedObjectContext *)managedObjectContext {
-
- if (!(self = [super init])) return nil;
-
- mainContext = [managedObjectContext retain];
-
- threadedContext = [[NSManagedObjectContext alloc] init];
- [threadedContext setPersistentStoreCoordinator:[mainContext persistentStoreCoordinator]];
-
- return self;
-}
-
-- (void)dealloc {
- mergePolicy = nil;
- [mainContext release]; mainContext = nil;
- [threadedContext release]; threadedContext = nil;
- [super dealloc];
-}
-
-- (NSManagedObjectContext *)managedObjectContext {
- return [[threadedContext retain] autorelease];
-}
-
-- (void)receivedObject:(NSObject *)object {
-
- [self saveThreadedContext];
-
- if ([object isKindOfClass:[NSArray class]]) {
-
- NSArray *array = (NSArray *)object;
-
- NSMutableArray *idArray = [[NSMutableArray alloc] init];
-
- for (NSObject *o in array) {
- if ([o isKindOfClass:[NSManagedObject class]]) {
-
- NSManagedObject *mo = (NSManagedObject *)o;
- [idArray addObject:[mo objectID]];
- }
- }
- [self performSelector:@selector(receivedObjectIDArray:) onThread:self.originatingThread withObject:idArray waitUntilDone:YES];
- } else if ([object isKindOfClass:[NSManagedObject class]]) {
-
- NSManagedObject *mo = (NSManagedObject *)object;
- [self performSelector:@selector(receivedObjectID:) onThread:self.originatingThread withObject:[mo objectID] waitUntilDone:YES];
-
- } else {
- [super receivedObject:object];
-
- }
-}
-
-- (void)saveThreadedContext {
- //[threadedContext lock];
- NSNotificationCenter *defaultCenter = [NSNotificationCenter defaultCenter];
- [defaultCenter addObserver:self selector:@selector(threadedContextDidSave:) name:NSManagedObjectContextDidSaveNotification object:threadedContext];
-
- if ([threadedContext hasChanges]) {
-
- NSError *error;
-
- // Don't need to lock the thread as the merge happens on the originating thread.
- // See -threadedContextDidSave: for how this happens.
- BOOL contextDidSave = [threadedContext save:&error];
-
- if (!contextDidSave) {
-
- // If the context failed to save, log out as many details as possible.
- NSLog(@"Failed to save to data store: %@", [error localizedDescription]);
-
- NSArray* detailedErrors = [[error userInfo] objectForKey:NSDetailedErrorsKey];
-
- if(detailedErrors != nil && [detailedErrors count] > 0) {
-
- for(NSError* detailedError in detailedErrors)
- NSLog(@" DetailedError: %@", [detailedError userInfo]);
-
- } else {
- NSLog(@" %@", [error userInfo]);
- }
-
- }
- }
-
- [defaultCenter removeObserver:self name:NSManagedObjectContextDidSaveNotification object:threadedContext];
- //[threadedContext unlock];
-}
-
-- (void)threadedContextDidSave:(NSNotification *)notification {
- id theMergePolicy = self.mergePolicy;
- if (theMergePolicy) [mainContext setMergePolicy:theMergePolicy]; // NSMergeByPropertyStoreTrumpMergePolicy
-
- [mainContext performSelector:@selector(mergeChangesFromContextDidSaveNotification:)
- onThread:self.originatingThread
- withObject:notification
- waitUntilDone:YES];
-}
-
-- (void)receivedObjectIDArray:(NSArray *)array {
-
- NSMutableArray *objects = [[NSMutableArray alloc] init];
-
- for (NSManagedObjectID *objectID in array)
- [objects addObject:[mainContext objectWithID:objectID]];
-
- [super receivedObject:objects];
- [objects release];
-}
-
-- (void)receivedObjectID:(NSManagedObjectID *)objectID {
- [super receivedObject:[mainContext objectWithID:objectID]];
-}
-
-
-@end
View
20 DTConnectionKit/DTFileCache.h
@@ -1,20 +0,0 @@
-//
-// DTFileCache.h
-// Weather Maps
-//
-// Created by Daniel Tull on 24.11.2009.
-// Copyright 2009 Daniel Tull. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-@interface DTFileCache : NSObject {
-
-}
-
-+ (BOOL)hasCacheForKey:(NSString *)key;
-+ (BOOL)setData:(NSData *)data forKey:(NSString *)key;
-+ (BOOL)deleteDataForKey:(NSString *)key;
-+ (NSData *)dataForKey:(NSString *)key;
-+ (void)logCache;
-@end
View
143 DTConnectionKit/DTFileCache.m
@@ -1,143 +0,0 @@
-//
-// DTFileCache.m
-// Weather Maps
-//
-// Created by Daniel Tull on 24.11.2009.
-// Copyright 2009 Daniel Tull. All rights reserved.
-//
-
-#import "DTFileCache.h"
-
-NSString *const DTFileCachePath = @"DTDiskCache";
-NSString *const DTFileCacheDictionaryPath = @"DTDiskCacheDictionary";
-
-@interface DTFileCache ()
-+ (NSDictionary *)cacheDictionary;
-+ (NSString *)pathForKey:(NSString *)key;
-+ (NSString *)pathForFilename:(NSString *)filename;
-+ (NSString *)baseDirectoryPath;
-+ (NSString *)cacheDictionaryPath;
-@end
-
-@implementation DTFileCache
-
-+ (BOOL)hasCacheForKey:(NSString *)key {
- if ([[self cacheDictionary] objectForKey:key])
- return YES;
-
- return NO;
-}
-
-+ (BOOL)setData:(NSData *)data forKey:(NSString *)key {
-
- NSString *filename = [[self cacheDictionary] objectForKey:key];
- BOOL newFile = NO;
-
- if (!filename) {
- CFUUIDRef uuidObj = CFUUIDCreate(nil);
- CFStringRef uniqueString = CFUUIDCreateString(nil, uuidObj);
- filename = [NSString stringWithFormat:@"file-%@", uniqueString];
- CFRelease(uniqueString);
- CFRelease(uuidObj);
- newFile = YES;
- }
-
- if (![data writeToFile:[self pathForFilename:filename] atomically:NO]) return NO;
-
- if (newFile) {
- NSMutableDictionary *dict = [[self cacheDictionary] mutableCopy];
- [dict setObject:filename forKey:key];
- BOOL dictSuccess = [dict writeToFile:[self cacheDictionaryPath] atomically:NO];
- [dict release];
-
- if (!dictSuccess) {
- NSError *error = nil;
- [[NSFileManager defaultManager] removeItemAtPath:[self pathForFilename:filename] error:&error];
- return NO;
- }
- }
- return YES;
-}
-
-+ (BOOL)deleteDataForKey:(NSString *)key {
- NSString *filename = [[self cacheDictionary] objectForKey:key];
-
- if (!filename) return NO;
-
- NSFileManager *fileManager = [NSFileManager defaultManager];
-
- NSString *path = [self pathForFilename:filename];
-
- if ([fileManager fileExistsAtPath:path]) {
- NSError *error = nil;
- if (![fileManager removeItemAtPath:path error:&error]) return NO;
- }
-
- NSMutableDictionary *dict = [[self cacheDictionary] mutableCopy];
- [dict removeObjectForKey:key];
- BOOL dictSuccess = [dict writeToFile:[self cacheDictionaryPath] atomically:NO];
- [dict release];
-
- return dictSuccess;
-}
-
-+ (NSData *)dataForKey:(NSString *)key {
- return [NSData dataWithContentsOfFile:[self pathForKey:key]];
-}
-
-
-
-#pragma mark -
-#pragma mark Internal methods
-
-+ (NSDictionary *)cacheDictionary {
- NSDictionary *dict = [NSDictionary dictionaryWithContentsOfFile:[self cacheDictionaryPath]];
-
- if (!dict) dict = [NSDictionary dictionary];
-
- return dict;
-}
-
-
-+ (NSString *)pathForKey:(NSString *)key {
- return [self pathForFilename:[[self cacheDictionary] objectForKey:key]];
-}
-
-+ (NSString *)pathForFilename:(NSString *)filename {
- return [[self baseDirectoryPath] stringByAppendingPathComponent:filename];
-}
-
-+ (NSString *)baseDirectoryPath {
-
- NSString *path = [[NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) objectAtIndex:0] stringByAppendingPathComponent:DTFileCachePath];
-
- NSFileManager *fileManager = [NSFileManager defaultManager];
-
- if (![fileManager fileExistsAtPath:path])
- [fileManager createDirectoryAtPath:path attributes:nil];
-
- return path;
-}
-
-
-+ (NSString *)cacheDictionaryPath {
- return [[self baseDirectoryPath] stringByAppendingPathComponent:DTFileCacheDictionaryPath];
-}
-
-
-
-
-
-
-
-+ (void)logCache {
-
- NSError *error = nil;
-
- NSDictionary *dict = [self cacheDictionary];
- NSArray *items = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:[self baseDirectoryPath] error:&error];
-
- NSLog(@"DTImageCache: %i in dictionary, %i on disk.\n%@\n%@", [dict count], [items count], dict, items);
-}
-
-@end
View
90 DTConnectionKit/DTURLConnection.h
@@ -1,90 +0,0 @@
-//
-// DTURLConnection.h
-// DTKit
-//
-// Created by Daniel Tull on 03.03.2009.
-// Copyright 2009 Daniel Tull. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-
-@interface DTURLConnection : NSURLConnection {
-
- NSData *data;
- NSString *identifier;
- NSURL *URL;
-
-}
-
-#pragma mark -
-#pragma mark Connection Information
-/** @name Connection Information
- @{
- */
-
-/** @brief A universally unique identifier to indentify this connection.
-
- Uses NSProcessInfo's -globallyUniqueString method to gain a unique string.
- */
-@property (readonly, copy) NSString *identifier;
-
-/** @brief The URL of the given request.
- */
-@property (readonly, retain) NSURL *URL;
-
-/**
- @}
- */
-
-#pragma mark -
-#pragma mark Creating URL Connections
-/** @name Creating URL Connections
- @{
- */
-
-/** @brief Initialises and returns a new URL connection with the given objects.
-
- @param request The URL request for the URL connection to perform.
- @param delegate The delegate for the request.
- @param identifier The identifier to use, or nil to generate one.
-
- @return The newly initialized URL connection.
- */
-
-- (id)initWithRequest:(NSURLRequest *)request delegate:(id)delegate identifier:(NSString *)identifier;
-
-/**
- @}
- */
-
-#pragma mark -
-#pragma mark Handling the Data
-/** @name Handling the Data
- @{
- */
-
-/** @brief The data being returned through this connection.
-
- A nice place to store this without the hassle of setting up a dictionary for the returned data.
- Use -resetDataLength and -appendData: to modify the stored data.
- */
-@property (readonly, copy) NSData *data;
-
-/** @brief Resets the data length to 0.
- */
-- (void)resetDataLength;
-
-/** @brief Appends the given data to the receiver's data.
-
- Typically this will be called by the delegate of the URL connection every time it receives some data to build up the full data result.
-
- @param someData The data to append to the receiver's data.
- */
-- (void)appendData:(NSData *)someData;
-
-/**
- @}
- */
-
-@end
View
76 DTConnectionKit/DTURLConnection.m
@@ -1,76 +0,0 @@
-//
-// DTURLConnection.m
-// DTKit
-//
-// Created by Daniel Tull on 03.03.2009.
-// Copyright 2009 Daniel Tull. All rights reserved.
-//
-
-#import "DTURLConnection.h"
-
-@interface DTURLConnection ()
-@property (readwrite, copy) NSData *data;
-@property (readwrite, copy) NSString *identifier;
-@end
-
-@implementation DTURLConnection
-
-@synthesize data, identifier, URL;
-
-- (id)initWithRequest:(NSURLRequest *)request delegate:(id)delegate startImmediately:(BOOL)startImmediately {
-
- if (!(self = [super initWithRequest:request delegate:delegate startImmediately:startImmediately])) return nil;
-
- data = [[NSData alloc] init];
- self.identifier = [[NSProcessInfo processInfo] globallyUniqueString];
- URL = [[request URL] retain];
-
- return self;
-}
-
-- (id)initWithRequest:(NSURLRequest *)request delegate:(id)delegate identifier:(NSString *)anIdentifier {
- if (!(self = [self initWithRequest:request delegate:delegate startImmediately:YES])) return nil;
-
- if (anIdentifier) self.identifier = anIdentifier;
-
- return self;
-}
-
-- (id)initWithRequest:(NSURLRequest *)request delegate:(id)delegate {
- return [self initWithRequest:request delegate:delegate startImmediately:YES];
-}
-
-+ (id)connectionWithRequest:(NSURLRequest *)request delegate:(id)delegate {
- return [[[DTURLConnection alloc] initWithRequest:request delegate:delegate] autorelease];
-}
-
-- (void)dealloc {
- [data release];
- [identifier release];
- [URL release];
- [super dealloc];
-}
-
-- (void)resetDataLength {
- NSMutableData *mData = [self.data mutableCopy];
- [mData setLength:0];
- self.data = mData;
- [mData release];
-}
-
-- (void)appendData:(NSData *)someData {
- NSMutableData *mData = [self.data mutableCopy];
- [mData appendData:someData];
- self.data = (NSData *)mData;
- [mData release];
-}
-
-- (NSString *)description {
- return [NSString stringWithFormat:@"<DTURLConnection> (id: %@ url: %@)", self.identifier, self.URL];
-}
-
-- (NSObject *)copyWithZone:(NSObject *)ob {
- return nil;
-}
-
-@end
View
17 DTConnectionKit/DTURLLoadingConnection.h
@@ -1,17 +0,0 @@
-//
-// DTURLLoadingConnection.h
-// DTConnectionKit
-//
-// Created by Daniel Tull on 25.01.2010.
-// Copyright 2010 Daniel Tull. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "DTConnection.h"
-
-@interface DTURLLoadingConnection : DTConnection {
-}
-
-@property (nonatomic, retain, readwrite) NSURL *URL;
-
-@end
View
26 DTConnectionKit/DTURLLoadingConnection.m
@@ -1,26 +0,0 @@
-//
-// DTURLLoadingConnection.m
-// DTConnectionKit
-//
-// Created by Daniel Tull on 25.01.2010.
-// Copyright 2010 Daniel Tull. All rights reserved.
-//
-
-#import "DTURLLoadingConnection.h"
-
-
-@implementation DTURLLoadingConnection
-
-@synthesize URL;
-
-- (void)dealloc {
- [super dealloc];
-}
-
-- (NSMutableURLRequest *)newRequest {
- NSMutableURLRequest *request = [super newRequest];
- [request setURL:URL];
- return request;
-}
-
-@end
View
33 DTConnectionKit/NSData+Base64.h
@@ -1,33 +0,0 @@
-//
-// NSData+Base64.h
-// base64
-//
-// Created by Matt Gallagher on 2009/06/03.
-// Copyright 2009 Matt Gallagher. All rights reserved.
-//
-// Permission is given to use this source code file, free of charge, in any
-// project, commercial or otherwise, entirely at your risk, with the condition
-// that any redistribution (in part or whole) of source code must retain
-// this copyright and permission notice. Attribution in compiled projects is
-// appreciated but not required.
-//
-
-#import <Foundation/Foundation.h>
-
-void *NewBase64Decode(
- const char *inputBuffer,
- size_t length,
- size_t *outputLength);
-
-char *NewBase64Encode(
- const void *inputBuffer,
- size_t length,
- bool separateLines,
- size_t *outputLength);
-
-@interface NSData (Base64)
-
-+ (NSData *)dataFromBase64String:(NSString *)aString;
-- (NSString *)base64EncodedString;
-
-@end
View
299 DTConnectionKit/NSData+Base64.m
@@ -1,299 +0,0 @@
-//
-// NSData+Base64.m
-// base64
-//
-// Created by Matt Gallagher on 2009/06/03.
-// Copyright 2009 Matt Gallagher. All rights reserved.
-//
-// Permission is given to use this source code file, free of charge, in any
-// project, commercial or otherwise, entirely at your risk, with the condition
-// that any redistribution (in part or whole) of source code must retain
-// this copyright and permission notice. Attribution in compiled projects is
-// appreciated but not required.
-//
-
-#import "NSData+Base64.h"
-
-//
-// Mapping from 6 bit pattern to ASCII character.
-//
-static unsigned char base64EncodeLookup[65] =
- "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
-
-//
-// Definition for "masked-out" areas of the base64DecodeLookup mapping
-//
-#define xx 65
-
-//
-// Mapping from ASCII character to 6 bit pattern.
-//
-static unsigned char base64DecodeLookup[256] =
-{
- xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx,
- xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx,
- xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, 62, xx, xx, xx, 63,
- 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, xx, xx, xx, xx, xx, xx,
- xx, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
- 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, xx, xx, xx, xx, xx,
- xx, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
- 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, xx, xx, xx, xx, xx,
- xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx,
- xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx,
- xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx,
- xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx,
- xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx,
- xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx,
- xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx,
- xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx, xx,
-};
-
-//
-// Fundamental sizes of the binary and base64 encode/decode units in bytes
-//
-#define BINARY_UNIT_SIZE 3
-#define BASE64_UNIT_SIZE 4
-
-//
-// NewBase64Decode
-//
-// Decodes the base64 ASCII string in the inputBuffer to a newly malloced
-// output buffer.
-//
-// inputBuffer - the source ASCII string for the decode
-// length - the length of the string or -1 (to specify strlen should be used)
-// outputLength - if not-NULL, on output will contain the decoded length
-//
-// returns the decoded buffer. Must be free'd by caller. Length is given by
-// outputLength.
-//
-void *NewBase64Decode(
- const char *inputBuffer,
- size_t length,
- size_t *outputLength)
-{
- if (length == -1)
- {
- length = strlen(inputBuffer);
- }
-
- size_t outputBufferSize =
- ((length+BASE64_UNIT_SIZE-1) / BASE64_UNIT_SIZE) * BINARY_UNIT_SIZE;
- unsigned char *outputBuffer = (unsigned char *)malloc(outputBufferSize);
-
- size_t i = 0;
- size_t j = 0;
- while (i < length)
- {
- //
- // Accumulate 4 valid characters (ignore everything else)
- //
- unsigned char accumulated[BASE64_UNIT_SIZE];
- size_t accumulateIndex = 0;
- while (i < length)
- {
- unsigned char decode = base64DecodeLookup[inputBuffer[i++]];
- if (decode != xx)
- {
- accumulated[accumulateIndex] = decode;
- accumulateIndex++;
-
- if (accumulateIndex == BASE64_UNIT_SIZE)
- {
- break;
- }
- }
- }
-
- //
- // Store the 6 bits from each of the 4 characters as 3 bytes
- //
- outputBuffer[j] = (accumulated[0] << 2) | (accumulated[1] >> 4);
- outputBuffer[j + 1] = (accumulated[1] << 4) | (accumulated[2] >> 2);
- outputBuffer[j + 2] = (accumulated[2] << 6) | accumulated[3];
- j += accumulateIndex - 1;
- }
-
- if (outputLength)
- {
- *outputLength = j;
- }
- return outputBuffer;
-}
-
-//
-// NewBase64Decode
-//
-// Encodes the arbitrary data in the inputBuffer as base64 into a newly malloced
-// output buffer.
-//
-// inputBuffer - the source data for the encode
-// length - the length of the input in bytes
-// separateLines - if zero, no CR/LF characters will be added. Otherwise
-// a CR/LF pair will be added every 64 encoded chars.
-// outputLength - if not-NULL, on output will contain the encoded length
-// (not including terminating 0 char)
-//
-// returns the encoded buffer. Must be free'd by caller. Length is given by
-// outputLength.
-//
-char *NewBase64Encode(
- const void *buffer,