From 48cf20bb55b4c187691a0eae104d66a421386ba9 Mon Sep 17 00:00:00 2001 From: Pierre-Olivier Latour Date: Sun, 1 Nov 2015 11:38:45 -0800 Subject: [PATCH] Updated iOS app to latest best practices --- GCDWebServer.xcodeproj/project.pbxproj | 389 ++++++++++-------- iOS/AppDelegate.m | 34 -- .../AppIcon.appiconset/Contents.json | 68 +++ iOS/Base.lproj/LaunchScreen.storyboard | 28 ++ iOS/Base.lproj/Main.storyboard | 41 ++ iOS/Info.plist | 12 +- iOS/ViewController.h | 31 ++ iOS/ViewController.m | 77 ++++ 8 files changed, 461 insertions(+), 219 deletions(-) create mode 100644 iOS/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 iOS/Base.lproj/LaunchScreen.storyboard create mode 100644 iOS/Base.lproj/Main.storyboard create mode 100644 iOS/ViewController.h create mode 100644 iOS/ViewController.m diff --git a/GCDWebServer.xcodeproj/project.pbxproj b/GCDWebServer.xcodeproj/project.pbxproj index 6e00b35..248c7e4 100644 --- a/GCDWebServer.xcodeproj/project.pbxproj +++ b/GCDWebServer.xcodeproj/project.pbxproj @@ -17,7 +17,7 @@ CE54F3961AE84FCA003C110E /* PBXTargetDependency */, E2DDD1941BE6941C002CE867 /* PBXTargetDependency */, E274F87B187E77E3009E0582 /* PBXTargetDependency */, - E274F87D187E77E5009E0582 /* PBXTargetDependency */, + E2DDD20E1BE69EEE002CE867 /* PBXTargetDependency */, E2DDD1DC1BE69911002CE867 /* PBXTargetDependency */, ); name = "Build All"; @@ -92,61 +92,32 @@ CEE28D491AE0079100F4023C /* GCDWebUploader.m in Sources */ = {isa = PBXBuildFile; fileRef = E2BE850918E77ECA0061360B /* GCDWebUploader.m */; }; CEE28D4A1AE0079200F4023C /* GCDWebUploader.m in Sources */ = {isa = PBXBuildFile; fileRef = E2BE850918E77ECA0061360B /* GCDWebUploader.m */; }; CEE28D4C1AE0095600F4023C /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CEE28D4B1AE0095600F4023C /* Foundation.framework */; }; - CEE28D4D1AE0096A00F4023C /* libxml2.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = E2A0E80E18F35CA300C580B1 /* libxml2.dylib */; }; - CEE28D4E1AE0097400F4023C /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = E2B0D4A618F13495009A7927 /* libz.dylib */; }; CEE28D4F1AE0097E00F4023C /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E208D148167B76B700500836 /* CFNetwork.framework */; }; CEE28D501AE0098600F4023C /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2BE851018E79DAF0061360B /* SystemConfiguration.framework */; }; CEE28D511AE0098C00F4023C /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E208D1B2167BB17E00500836 /* CoreServices.framework */; }; CEE28D521AE00A7A00F4023C /* GCDWebServers.h in Headers */ = {isa = PBXBuildFile; fileRef = CEE28CF31AE0051F00F4023C /* GCDWebServers.h */; settings = {ATTRIBUTES = (Public, ); }; }; CEE28D571AE00AFE00F4023C /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E221129C1690B7BA0048D2B2 /* MobileCoreServices.framework */; }; CEE28D591AE00AFE00F4023C /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E22112981690B7AA0048D2B2 /* CFNetwork.framework */; }; - CEE28D5A1AE00AFE00F4023C /* libxml2.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = E2A0E80C18F35C9A00C580B1 /* libxml2.dylib */; }; - CEE28D5B1AE00AFE00F4023C /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = E2B0D4A818F134A8009A7927 /* libz.dylib */; }; CEE28D6A1AE1ABAA00F4023C /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CEE28D691AE1ABAA00F4023C /* UIKit.framework */; }; E208D149167B76B700500836 /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E208D148167B76B700500836 /* CFNetwork.framework */; }; E208D1B3167BB17E00500836 /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E208D1B2167BB17E00500836 /* CoreServices.framework */; }; E221128F1690B6470048D2B2 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = E221128E1690B6470048D2B2 /* main.m */; }; - E22112951690B64F0048D2B2 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = E22112921690B64F0048D2B2 /* AppDelegate.m */; }; - E22112971690B64F0048D2B2 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = E22112941690B64F0048D2B2 /* main.m */; }; - E22112991690B7AA0048D2B2 /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E22112981690B7AA0048D2B2 /* CFNetwork.framework */; }; - E221129B1690B7B10048D2B2 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E221129A1690B7B10048D2B2 /* UIKit.framework */; }; - E221129D1690B7BA0048D2B2 /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E221129C1690B7BA0048D2B2 /* MobileCoreServices.framework */; }; E240392B1BA09207000B7089 /* GCDWebServers.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CEE28CD11AE004D800F4023C /* GCDWebServers.framework */; }; E24039321BA092B7000B7089 /* Tests.m in Sources */ = {isa = PBXBuildFile; fileRef = E24039311BA092B7000B7089 /* Tests.m */; }; E28BAE3418F99C810095C089 /* GCDWebServer.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE1718F99C810095C089 /* GCDWebServer.m */; }; - E28BAE3518F99C810095C089 /* GCDWebServer.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE1718F99C810095C089 /* GCDWebServer.m */; }; E28BAE3618F99C810095C089 /* GCDWebServerConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE1918F99C810095C089 /* GCDWebServerConnection.m */; }; - E28BAE3718F99C810095C089 /* GCDWebServerConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE1918F99C810095C089 /* GCDWebServerConnection.m */; }; E28BAE3818F99C810095C089 /* GCDWebServerFunctions.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE1B18F99C810095C089 /* GCDWebServerFunctions.m */; }; - E28BAE3918F99C810095C089 /* GCDWebServerFunctions.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE1B18F99C810095C089 /* GCDWebServerFunctions.m */; }; E28BAE3A18F99C810095C089 /* GCDWebServerRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE1F18F99C810095C089 /* GCDWebServerRequest.m */; }; - E28BAE3B18F99C810095C089 /* GCDWebServerRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE1F18F99C810095C089 /* GCDWebServerRequest.m */; }; E28BAE3C18F99C810095C089 /* GCDWebServerResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2118F99C810095C089 /* GCDWebServerResponse.m */; }; - E28BAE3D18F99C810095C089 /* GCDWebServerResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2118F99C810095C089 /* GCDWebServerResponse.m */; }; E28BAE3E18F99C810095C089 /* GCDWebServerDataRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2418F99C810095C089 /* GCDWebServerDataRequest.m */; }; - E28BAE3F18F99C810095C089 /* GCDWebServerDataRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2418F99C810095C089 /* GCDWebServerDataRequest.m */; }; E28BAE4018F99C810095C089 /* GCDWebServerFileRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2618F99C810095C089 /* GCDWebServerFileRequest.m */; }; - E28BAE4118F99C810095C089 /* GCDWebServerFileRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2618F99C810095C089 /* GCDWebServerFileRequest.m */; }; E28BAE4218F99C810095C089 /* GCDWebServerMultiPartFormRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2818F99C810095C089 /* GCDWebServerMultiPartFormRequest.m */; }; - E28BAE4318F99C810095C089 /* GCDWebServerMultiPartFormRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2818F99C810095C089 /* GCDWebServerMultiPartFormRequest.m */; }; E28BAE4418F99C810095C089 /* GCDWebServerURLEncodedFormRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2A18F99C810095C089 /* GCDWebServerURLEncodedFormRequest.m */; }; - E28BAE4518F99C810095C089 /* GCDWebServerURLEncodedFormRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2A18F99C810095C089 /* GCDWebServerURLEncodedFormRequest.m */; }; E28BAE4618F99C810095C089 /* GCDWebServerDataResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2D18F99C810095C089 /* GCDWebServerDataResponse.m */; }; - E28BAE4718F99C810095C089 /* GCDWebServerDataResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2D18F99C810095C089 /* GCDWebServerDataResponse.m */; }; E28BAE4818F99C810095C089 /* GCDWebServerErrorResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2F18F99C810095C089 /* GCDWebServerErrorResponse.m */; }; - E28BAE4918F99C810095C089 /* GCDWebServerErrorResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2F18F99C810095C089 /* GCDWebServerErrorResponse.m */; }; E28BAE4A18F99C810095C089 /* GCDWebServerFileResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE3118F99C810095C089 /* GCDWebServerFileResponse.m */; }; - E28BAE4B18F99C810095C089 /* GCDWebServerFileResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE3118F99C810095C089 /* GCDWebServerFileResponse.m */; }; E28BAE4C18F99C810095C089 /* GCDWebServerStreamedResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE3318F99C810095C089 /* GCDWebServerStreamedResponse.m */; }; - E28BAE4D18F99C810095C089 /* GCDWebServerStreamedResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE3318F99C810095C089 /* GCDWebServerStreamedResponse.m */; }; E2A0E80A18F3432600C580B1 /* GCDWebDAVServer.m in Sources */ = {isa = PBXBuildFile; fileRef = E2A0E80918F3432600C580B1 /* GCDWebDAVServer.m */; }; - E2A0E80B18F3432600C580B1 /* GCDWebDAVServer.m in Sources */ = {isa = PBXBuildFile; fileRef = E2A0E80918F3432600C580B1 /* GCDWebDAVServer.m */; }; - E2A0E80D18F35C9A00C580B1 /* libxml2.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = E2A0E80C18F35C9A00C580B1 /* libxml2.dylib */; }; - E2A0E80F18F35CA300C580B1 /* libxml2.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = E2A0E80E18F35CA300C580B1 /* libxml2.dylib */; }; - E2B0D4A718F13495009A7927 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = E2B0D4A618F13495009A7927 /* libz.dylib */; }; - E2B0D4A918F134A8009A7927 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = E2B0D4A818F134A8009A7927 /* libz.dylib */; }; - E2BE850A18E77ECA0061360B /* GCDWebUploader.bundle in Resources */ = {isa = PBXBuildFile; fileRef = E2BE850718E77ECA0061360B /* GCDWebUploader.bundle */; }; - E2BE850B18E77ECA0061360B /* GCDWebUploader.m in Sources */ = {isa = PBXBuildFile; fileRef = E2BE850918E77ECA0061360B /* GCDWebUploader.m */; }; E2BE850C18E785940061360B /* GCDWebUploader.m in Sources */ = {isa = PBXBuildFile; fileRef = E2BE850918E77ECA0061360B /* GCDWebUploader.m */; }; E2BE850F18E788990061360B /* GCDWebUploader.bundle in CopyFiles */ = {isa = PBXBuildFile; fileRef = E2BE850718E77ECA0061360B /* GCDWebUploader.bundle */; }; E2BE851118E79DAF0061360B /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2BE851018E79DAF0061360B /* SystemConfiguration.framework */; }; @@ -214,6 +185,39 @@ E2DDD1EF1BE69BC5002CE867 /* libxml2.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DDD1BB1BE69551002CE867 /* libxml2.tbd */; }; E2DDD1F01BE69BC5002CE867 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DDD1B91BE69545002CE867 /* libz.tbd */; }; E2DDD1F11BE69BE9002CE867 /* GCDWebUploader.bundle in Resources */ = {isa = PBXBuildFile; fileRef = E2BE850718E77ECA0061360B /* GCDWebUploader.bundle */; }; + E2DDD1FA1BE69EE5002CE867 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = E2DDD1F91BE69EE5002CE867 /* main.m */; }; + E2DDD1FD1BE69EE5002CE867 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = E2DDD1FC1BE69EE5002CE867 /* AppDelegate.m */; }; + E2DDD2001BE69EE5002CE867 /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E2DDD1FF1BE69EE5002CE867 /* ViewController.m */; }; + E2DDD2031BE69EE5002CE867 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = E2DDD2011BE69EE5002CE867 /* Main.storyboard */; }; + E2DDD2051BE69EE5002CE867 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = E2DDD2041BE69EE5002CE867 /* Assets.xcassets */; }; + E2DDD2081BE69EE5002CE867 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = E2DDD2061BE69EE5002CE867 /* LaunchScreen.storyboard */; }; + E2DDD20F1BE69F03002CE867 /* GCDWebUploader.bundle in Resources */ = {isa = PBXBuildFile; fileRef = E2BE850718E77ECA0061360B /* GCDWebUploader.bundle */; }; + E2DDD2101BE69F17002CE867 /* GCDWebServer.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE1718F99C810095C089 /* GCDWebServer.m */; }; + E2DDD2111BE69F17002CE867 /* GCDWebServerConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE1918F99C810095C089 /* GCDWebServerConnection.m */; }; + E2DDD2121BE69F17002CE867 /* GCDWebServerFunctions.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE1B18F99C810095C089 /* GCDWebServerFunctions.m */; }; + E2DDD2131BE69F17002CE867 /* GCDWebServerRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE1F18F99C810095C089 /* GCDWebServerRequest.m */; }; + E2DDD2141BE69F17002CE867 /* GCDWebServerResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2118F99C810095C089 /* GCDWebServerResponse.m */; }; + E2DDD2151BE69F17002CE867 /* GCDWebServerDataRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2418F99C810095C089 /* GCDWebServerDataRequest.m */; }; + E2DDD2161BE69F17002CE867 /* GCDWebServerFileRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2618F99C810095C089 /* GCDWebServerFileRequest.m */; }; + E2DDD2171BE69F17002CE867 /* GCDWebServerMultiPartFormRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2818F99C810095C089 /* GCDWebServerMultiPartFormRequest.m */; }; + E2DDD2181BE69F17002CE867 /* GCDWebServerURLEncodedFormRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2A18F99C810095C089 /* GCDWebServerURLEncodedFormRequest.m */; }; + E2DDD2191BE69F17002CE867 /* GCDWebServerDataResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2D18F99C810095C089 /* GCDWebServerDataResponse.m */; }; + E2DDD21A1BE69F17002CE867 /* GCDWebServerErrorResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE2F18F99C810095C089 /* GCDWebServerErrorResponse.m */; }; + E2DDD21B1BE69F17002CE867 /* GCDWebServerFileResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE3118F99C810095C089 /* GCDWebServerFileResponse.m */; }; + E2DDD21C1BE69F17002CE867 /* GCDWebServerStreamedResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = E28BAE3318F99C810095C089 /* GCDWebServerStreamedResponse.m */; }; + E2DDD21D1BE69F25002CE867 /* GCDWebDAVServer.m in Sources */ = {isa = PBXBuildFile; fileRef = E2A0E80918F3432600C580B1 /* GCDWebDAVServer.m */; }; + E2DDD21E1BE69F25002CE867 /* GCDWebUploader.m in Sources */ = {isa = PBXBuildFile; fileRef = E2BE850918E77ECA0061360B /* GCDWebUploader.m */; }; + E2DDD21F1BE6A061002CE867 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CEE28D691AE1ABAA00F4023C /* UIKit.framework */; }; + E2DDD2201BE6A067002CE867 /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E221129C1690B7BA0048D2B2 /* MobileCoreServices.framework */; }; + E2DDD2211BE6A06E002CE867 /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E22112981690B7AA0048D2B2 /* CFNetwork.framework */; }; + E2DDD2251BE6A0AE002CE867 /* libxml2.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DDD2241BE6A0AE002CE867 /* libxml2.tbd */; }; + E2DDD2271BE6A0B4002CE867 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DDD2261BE6A0B4002CE867 /* libz.tbd */; }; + E2DDD2281BE6A0D8002CE867 /* libxml2.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DDD2241BE6A0AE002CE867 /* libxml2.tbd */; }; + E2DDD2291BE6A0D8002CE867 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DDD2261BE6A0B4002CE867 /* libz.tbd */; }; + E2DDD22B1BE6A0EB002CE867 /* libxml2.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DDD22A1BE6A0EB002CE867 /* libxml2.tbd */; }; + E2DDD22D1BE6A0EF002CE867 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DDD22C1BE6A0EF002CE867 /* libz.tbd */; }; + E2DDD22E1BE6A106002CE867 /* libxml2.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DDD22A1BE6A0EB002CE867 /* libxml2.tbd */; }; + E2DDD22F1BE6A108002CE867 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DDD22C1BE6A0EF002CE867 /* libz.tbd */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -245,13 +249,6 @@ remoteGlobalIDString = 8DD76FA90486AB0100D96B5E; remoteInfo = "GCDWebServer (Mac)"; }; - E274F87C187E77E5009E0582 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; - proxyType = 1; - remoteGlobalIDString = E22112591690B4DE0048D2B2; - remoteInfo = "GCDWebServer (iOS)"; - }; E2DDD1931BE6941C002CE867 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; @@ -266,6 +263,13 @@ remoteGlobalIDString = E2DDD1C61BE698A8002CE867; remoteInfo = "GCDWebServer (tvOS)"; }; + E2DDD20D1BE69EEE002CE867 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = E2DDD1F51BE69EE4002CE867; + remoteInfo = "GCDWebServer (iOS)"; + }; /* End PBXContainerItemProxy section */ /* Begin PBXCopyFilesBuildPhase section */ @@ -291,14 +295,8 @@ CEE28D691AE1ABAA00F4023C /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.3.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; }; E208D148167B76B700500836 /* CFNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CFNetwork.framework; path = System/Library/Frameworks/CFNetwork.framework; sourceTree = SDKROOT; }; E208D1B2167BB17E00500836 /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = System/Library/Frameworks/CoreServices.framework; sourceTree = SDKROOT; }; - E221125A1690B4DE0048D2B2 /* GCDWebServer.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = GCDWebServer.app; sourceTree = BUILT_PRODUCTS_DIR; }; E221128E1690B6470048D2B2 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; - E22112911690B64F0048D2B2 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; - E22112921690B64F0048D2B2 /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; - E22112931690B64F0048D2B2 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - E22112941690B64F0048D2B2 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; E22112981690B7AA0048D2B2 /* CFNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CFNetwork.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk/System/Library/Frameworks/CFNetwork.framework; sourceTree = DEVELOPER_DIR; }; - E221129A1690B7B10048D2B2 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; }; E221129C1690B7BA0048D2B2 /* MobileCoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MobileCoreServices.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk/System/Library/Frameworks/MobileCoreServices.framework; sourceTree = DEVELOPER_DIR; }; E24039251BA09207000B7089 /* Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Tests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; E24039311BA092B7000B7089 /* Tests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Tests.m; sourceTree = ""; }; @@ -332,10 +330,6 @@ E28BAE3318F99C810095C089 /* GCDWebServerStreamedResponse.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GCDWebServerStreamedResponse.m; sourceTree = ""; }; E2A0E80818F3432600C580B1 /* GCDWebDAVServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GCDWebDAVServer.h; sourceTree = ""; }; E2A0E80918F3432600C580B1 /* GCDWebDAVServer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GCDWebDAVServer.m; sourceTree = ""; }; - E2A0E80C18F35C9A00C580B1 /* libxml2.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libxml2.dylib; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/usr/lib/libxml2.dylib; sourceTree = DEVELOPER_DIR; }; - E2A0E80E18F35CA300C580B1 /* libxml2.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libxml2.dylib; path = usr/lib/libxml2.dylib; sourceTree = SDKROOT; }; - E2B0D4A618F13495009A7927 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = usr/lib/libz.dylib; sourceTree = SDKROOT; }; - E2B0D4A818F134A8009A7927 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/usr/lib/libz.dylib; sourceTree = DEVELOPER_DIR; }; E2BE850718E77ECA0061360B /* GCDWebUploader.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = GCDWebUploader.bundle; sourceTree = ""; }; E2BE850818E77ECA0061360B /* GCDWebUploader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GCDWebUploader.h; sourceTree = ""; }; E2BE850918E77ECA0061360B /* GCDWebUploader.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GCDWebUploader.m; sourceTree = ""; }; @@ -355,6 +349,20 @@ E2DDD1D31BE698A8002CE867 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; E2DDD1D51BE698A8002CE867 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; E2DDD1D71BE698A8002CE867 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + E2DDD1F61BE69EE4002CE867 /* GCDWebServer.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = GCDWebServer.app; sourceTree = BUILT_PRODUCTS_DIR; }; + E2DDD1F91BE69EE5002CE867 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + E2DDD1FB1BE69EE5002CE867 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; + E2DDD1FC1BE69EE5002CE867 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; + E2DDD1FE1BE69EE5002CE867 /* ViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = ""; }; + E2DDD1FF1BE69EE5002CE867 /* ViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ViewController.m; sourceTree = ""; }; + E2DDD2021BE69EE5002CE867 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + E2DDD2041BE69EE5002CE867 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + E2DDD2071BE69EE5002CE867 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + E2DDD2091BE69EE5002CE867 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + E2DDD2241BE6A0AE002CE867 /* libxml2.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libxml2.tbd; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.1.sdk/usr/lib/libxml2.tbd; sourceTree = DEVELOPER_DIR; }; + E2DDD2261BE6A0B4002CE867 /* libz.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.1.sdk/usr/lib/libz.tbd; sourceTree = DEVELOPER_DIR; }; + E2DDD22A1BE6A0EB002CE867 /* libxml2.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libxml2.tbd; path = usr/lib/libxml2.tbd; sourceTree = SDKROOT; }; + E2DDD22C1BE6A0EF002CE867 /* libz.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -365,8 +373,8 @@ E2BE851118E79DAF0061360B /* SystemConfiguration.framework in Frameworks */, E208D1B3167BB17E00500836 /* CoreServices.framework in Frameworks */, E208D149167B76B700500836 /* CFNetwork.framework in Frameworks */, - E2A0E80F18F35CA300C580B1 /* libxml2.dylib in Frameworks */, - E2B0D4A718F13495009A7927 /* libz.dylib in Frameworks */, + E2DDD22E1BE6A106002CE867 /* libxml2.tbd in Frameworks */, + E2DDD22F1BE6A108002CE867 /* libz.tbd in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -378,8 +386,8 @@ CEE28D511AE0098C00F4023C /* CoreServices.framework in Frameworks */, CEE28D501AE0098600F4023C /* SystemConfiguration.framework in Frameworks */, CEE28D4F1AE0097E00F4023C /* CFNetwork.framework in Frameworks */, - CEE28D4E1AE0097400F4023C /* libz.dylib in Frameworks */, - CEE28D4D1AE0096A00F4023C /* libxml2.dylib in Frameworks */, + E2DDD22B1BE6A0EB002CE867 /* libxml2.tbd in Frameworks */, + E2DDD22D1BE6A0EF002CE867 /* libz.tbd in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -390,20 +398,8 @@ CEE28D6A1AE1ABAA00F4023C /* UIKit.framework in Frameworks */, CEE28D571AE00AFE00F4023C /* MobileCoreServices.framework in Frameworks */, CEE28D591AE00AFE00F4023C /* CFNetwork.framework in Frameworks */, - CEE28D5A1AE00AFE00F4023C /* libxml2.dylib in Frameworks */, - CEE28D5B1AE00AFE00F4023C /* libz.dylib in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - E22112571690B4DE0048D2B2 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - E221129B1690B7B10048D2B2 /* UIKit.framework in Frameworks */, - E221129D1690B7BA0048D2B2 /* MobileCoreServices.framework in Frameworks */, - E22112991690B7AA0048D2B2 /* CFNetwork.framework in Frameworks */, - E2A0E80D18F35C9A00C580B1 /* libxml2.dylib in Frameworks */, - E2B0D4A918F134A8009A7927 /* libz.dylib in Frameworks */, + E2DDD2251BE6A0AE002CE867 /* libxml2.tbd in Frameworks */, + E2DDD2271BE6A0B4002CE867 /* libz.tbd in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -439,6 +435,18 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + E2DDD1F31BE69EE4002CE867 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + E2DDD21F1BE6A061002CE867 /* UIKit.framework in Frameworks */, + E2DDD2201BE6A067002CE867 /* MobileCoreServices.framework in Frameworks */, + E2DDD2211BE6A06E002CE867 /* CFNetwork.framework in Frameworks */, + E2DDD2281BE6A0D8002CE867 /* libxml2.tbd in Frameworks */, + E2DDD2291BE6A0D8002CE867 /* libz.tbd in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ @@ -450,7 +458,7 @@ E2BE850618E77ECA0061360B /* GCDWebUploader */, CEE28D081AE0053E00F4023C /* Frameworks */, E221128D1690B6470048D2B2 /* Mac */, - E22112901690B64F0048D2B2 /* iOS */, + E2DDD1F71BE69EE5002CE867 /* iOS */, E2DDD1C81BE698A8002CE867 /* tvOS */, E282F1A7150FF0630004D7C0 /* Mac Frameworks and Libraries */, E221129E1690B7CB0048D2B2 /* iOS Frameworks and Libraries */, @@ -464,12 +472,12 @@ isa = PBXGroup; children = ( 8DD76FB20486AB0100D96B5E /* GCDWebServer */, - E221125A1690B4DE0048D2B2 /* GCDWebServer.app */, CEE28CD11AE004D800F4023C /* GCDWebServers.framework */, CEE28CEF1AE0051F00F4023C /* GCDWebServers.framework */, E24039251BA09207000B7089 /* Tests.xctest */, E2DDD18B1BE69404002CE867 /* GCDWebServers.framework */, E2DDD1C71BE698A8002CE867 /* GCDWebServer.app */, + E2DDD1F61BE69EE4002CE867 /* GCDWebServer.app */, ); name = Products; sourceTree = ""; @@ -492,26 +500,14 @@ path = Mac; sourceTree = ""; }; - E22112901690B64F0048D2B2 /* iOS */ = { - isa = PBXGroup; - children = ( - E22112911690B64F0048D2B2 /* AppDelegate.h */, - E22112921690B64F0048D2B2 /* AppDelegate.m */, - E22112931690B64F0048D2B2 /* Info.plist */, - E22112941690B64F0048D2B2 /* main.m */, - ); - path = iOS; - sourceTree = ""; - }; E221129E1690B7CB0048D2B2 /* iOS Frameworks and Libraries */ = { isa = PBXGroup; children = ( CEE28D691AE1ABAA00F4023C /* UIKit.framework */, E221129C1690B7BA0048D2B2 /* MobileCoreServices.framework */, - E221129A1690B7B10048D2B2 /* UIKit.framework */, E22112981690B7AA0048D2B2 /* CFNetwork.framework */, - E2A0E80C18F35C9A00C580B1 /* libxml2.dylib */, - E2B0D4A818F134A8009A7927 /* libz.dylib */, + E2DDD2241BE6A0AE002CE867 /* libxml2.tbd */, + E2DDD2261BE6A0B4002CE867 /* libz.tbd */, ); name = "iOS Frameworks and Libraries"; sourceTree = ""; @@ -523,8 +519,8 @@ E2BE851018E79DAF0061360B /* SystemConfiguration.framework */, E208D1B2167BB17E00500836 /* CoreServices.framework */, E208D148167B76B700500836 /* CFNetwork.framework */, - E2A0E80E18F35CA300C580B1 /* libxml2.dylib */, - E2B0D4A618F13495009A7927 /* libz.dylib */, + E2DDD22A1BE6A0EB002CE867 /* libxml2.tbd */, + E2DDD22C1BE6A0EF002CE867 /* libz.tbd */, ); name = "Mac Frameworks and Libraries"; sourceTree = ""; @@ -634,6 +630,22 @@ path = tvOS; sourceTree = ""; }; + E2DDD1F71BE69EE5002CE867 /* iOS */ = { + isa = PBXGroup; + children = ( + E2DDD1FB1BE69EE5002CE867 /* AppDelegate.h */, + E2DDD1FC1BE69EE5002CE867 /* AppDelegate.m */, + E2DDD1FE1BE69EE5002CE867 /* ViewController.h */, + E2DDD1FF1BE69EE5002CE867 /* ViewController.m */, + E2DDD2011BE69EE5002CE867 /* Main.storyboard */, + E2DDD2041BE69EE5002CE867 /* Assets.xcassets */, + E2DDD2061BE69EE5002CE867 /* LaunchScreen.storyboard */, + E2DDD2091BE69EE5002CE867 /* Info.plist */, + E2DDD1F91BE69EE5002CE867 /* main.m */, + ); + path = iOS; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ @@ -767,23 +779,6 @@ productReference = CEE28CEF1AE0051F00F4023C /* GCDWebServers.framework */; productType = "com.apple.product-type.framework"; }; - E22112591690B4DE0048D2B2 /* GCDWebServer (iOS) */ = { - isa = PBXNativeTarget; - buildConfigurationList = E22112751690B4DF0048D2B2 /* Build configuration list for PBXNativeTarget "GCDWebServer (iOS)" */; - buildPhases = ( - E2BE850418E77B730061360B /* Resources */, - E22112561690B4DE0048D2B2 /* Sources */, - E22112571690B4DE0048D2B2 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "GCDWebServer (iOS)"; - productName = GCDWebServer; - productReference = E221125A1690B4DE0048D2B2 /* GCDWebServer.app */; - productType = "com.apple.product-type.application"; - }; E24039241BA09207000B7089 /* Tests (Mac) */ = { isa = PBXNativeTarget; buildConfigurationList = E240392E1BA09207000B7089 /* Build configuration list for PBXNativeTarget "Tests (Mac)" */; @@ -836,6 +831,23 @@ productReference = E2DDD1C71BE698A8002CE867 /* GCDWebServer.app */; productType = "com.apple.product-type.application"; }; + E2DDD1F51BE69EE4002CE867 /* GCDWebServer (iOS) */ = { + isa = PBXNativeTarget; + buildConfigurationList = E2DDD20A1BE69EE5002CE867 /* Build configuration list for PBXNativeTarget "GCDWebServer (iOS)" */; + buildPhases = ( + E2DDD1F41BE69EE4002CE867 /* Resources */, + E2DDD1F21BE69EE4002CE867 /* Sources */, + E2DDD1F31BE69EE4002CE867 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "GCDWebServer (iOS)"; + productName = "GCDWebServer (iOS)"; + productReference = E2DDD1F61BE69EE4002CE867 /* GCDWebServer.app */; + productType = "com.apple.product-type.application"; + }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ @@ -851,9 +863,6 @@ CreatedOnToolsVersion = 6.3; DevelopmentTeam = 88W3E55T4B; }; - E22112591690B4DE0048D2B2 = { - DevelopmentTeam = 88W3E55T4B; - }; E24039241BA09207000B7089 = { CreatedOnToolsVersion = 6.4; }; @@ -864,6 +873,9 @@ CreatedOnToolsVersion = 7.1; DevelopmentTeam = 88W3E55T4B; }; + E2DDD1F51BE69EE4002CE867 = { + CreatedOnToolsVersion = 7.1; + }; }; }; buildConfigurationList = 1DEB928908733DD80010E9CD /* Build configuration list for PBXProject "GCDWebServer" */; @@ -884,7 +896,7 @@ targets = ( E274F876187E77D8009E0582 /* Build All */, 8DD76FA90486AB0100D96B5E /* GCDWebServer (Mac) */, - E22112591690B4DE0048D2B2 /* GCDWebServer (iOS) */, + E2DDD1F51BE69EE4002CE867 /* GCDWebServer (iOS) */, E2DDD1C61BE698A8002CE867 /* GCDWebServer (tvOS) */, CEE28CD01AE004D800F4023C /* GCDWebServers (Mac) */, CEE28CEE1AE0051F00F4023C /* GCDWebServers (iOS) */, @@ -911,14 +923,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - E2BE850418E77B730061360B /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - E2BE850A18E77ECA0061360B /* GCDWebUploader.bundle in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; E2DDD1891BE69404002CE867 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; @@ -937,6 +941,17 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + E2DDD1F41BE69EE4002CE867 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + E2DDD20F1BE69F03002CE867 /* GCDWebUploader.bundle in Resources */, + E2DDD2081BE69EE5002CE867 /* LaunchScreen.storyboard in Resources */, + E2DDD2051BE69EE5002CE867 /* Assets.xcassets in Resources */, + E2DDD2031BE69EE5002CE867 /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ @@ -1024,30 +1039,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - E22112561690B4DE0048D2B2 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - E2A0E80B18F3432600C580B1 /* GCDWebDAVServer.m in Sources */, - E28BAE4918F99C810095C089 /* GCDWebServerErrorResponse.m in Sources */, - E28BAE4518F99C810095C089 /* GCDWebServerURLEncodedFormRequest.m in Sources */, - E28BAE4B18F99C810095C089 /* GCDWebServerFileResponse.m in Sources */, - E28BAE3918F99C810095C089 /* GCDWebServerFunctions.m in Sources */, - E28BAE4118F99C810095C089 /* GCDWebServerFileRequest.m in Sources */, - E28BAE4D18F99C810095C089 /* GCDWebServerStreamedResponse.m in Sources */, - E28BAE3F18F99C810095C089 /* GCDWebServerDataRequest.m in Sources */, - E2BE850B18E77ECA0061360B /* GCDWebUploader.m in Sources */, - E28BAE4718F99C810095C089 /* GCDWebServerDataResponse.m in Sources */, - E28BAE3D18F99C810095C089 /* GCDWebServerResponse.m in Sources */, - E28BAE3518F99C810095C089 /* GCDWebServer.m in Sources */, - E28BAE3718F99C810095C089 /* GCDWebServerConnection.m in Sources */, - E28BAE3B18F99C810095C089 /* GCDWebServerRequest.m in Sources */, - E28BAE4318F99C810095C089 /* GCDWebServerMultiPartFormRequest.m in Sources */, - E22112951690B64F0048D2B2 /* AppDelegate.m in Sources */, - E22112971690B64F0048D2B2 /* main.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; E24039211BA09207000B7089 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -1103,6 +1094,31 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + E2DDD1F21BE69EE4002CE867 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + E2DDD2101BE69F17002CE867 /* GCDWebServer.m in Sources */, + E2DDD2111BE69F17002CE867 /* GCDWebServerConnection.m in Sources */, + E2DDD2121BE69F17002CE867 /* GCDWebServerFunctions.m in Sources */, + E2DDD2131BE69F17002CE867 /* GCDWebServerRequest.m in Sources */, + E2DDD2141BE69F17002CE867 /* GCDWebServerResponse.m in Sources */, + E2DDD2151BE69F17002CE867 /* GCDWebServerDataRequest.m in Sources */, + E2DDD2161BE69F17002CE867 /* GCDWebServerFileRequest.m in Sources */, + E2DDD2171BE69F17002CE867 /* GCDWebServerMultiPartFormRequest.m in Sources */, + E2DDD2181BE69F17002CE867 /* GCDWebServerURLEncodedFormRequest.m in Sources */, + E2DDD2191BE69F17002CE867 /* GCDWebServerDataResponse.m in Sources */, + E2DDD21A1BE69F17002CE867 /* GCDWebServerErrorResponse.m in Sources */, + E2DDD21B1BE69F17002CE867 /* GCDWebServerFileResponse.m in Sources */, + E2DDD21C1BE69F17002CE867 /* GCDWebServerStreamedResponse.m in Sources */, + E2DDD21D1BE69F25002CE867 /* GCDWebDAVServer.m in Sources */, + E2DDD21E1BE69F25002CE867 /* GCDWebUploader.m in Sources */, + E2DDD2001BE69EE5002CE867 /* ViewController.m in Sources */, + E2DDD1FD1BE69EE5002CE867 /* AppDelegate.m in Sources */, + E2DDD1FA1BE69EE5002CE867 /* main.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ @@ -1126,11 +1142,6 @@ target = 8DD76FA90486AB0100D96B5E /* GCDWebServer (Mac) */; targetProxy = E274F87A187E77E3009E0582 /* PBXContainerItemProxy */; }; - E274F87D187E77E5009E0582 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = E22112591690B4DE0048D2B2 /* GCDWebServer (iOS) */; - targetProxy = E274F87C187E77E5009E0582 /* PBXContainerItemProxy */; - }; E2DDD1941BE6941C002CE867 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = E2DDD18A1BE69404002CE867 /* GCDWebServers (tvOS) */; @@ -1141,6 +1152,11 @@ target = E2DDD1C61BE698A8002CE867 /* GCDWebServer (tvOS) */; targetProxy = E2DDD1DB1BE69911002CE867 /* PBXContainerItemProxy */; }; + E2DDD20E1BE69EEE002CE867 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = E2DDD1F51BE69EE4002CE867 /* GCDWebServer (iOS) */; + targetProxy = E2DDD20D1BE69EEE002CE867 /* PBXContainerItemProxy */; + }; /* End PBXTargetDependency section */ /* Begin PBXVariantGroup section */ @@ -1152,6 +1168,22 @@ name = Main.storyboard; sourceTree = ""; }; + E2DDD2011BE69EE5002CE867 /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + E2DDD2021BE69EE5002CE867 /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + E2DDD2061BE69EE5002CE867 /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + E2DDD2071BE69EE5002CE867 /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; /* End PBXVariantGroup section */ /* Begin XCBuildConfiguration section */ @@ -1288,34 +1320,6 @@ }; name = Release; }; - E22112761690B4DF0048D2B2 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = "iPhone Developer"; - ENABLE_BITCODE = NO; - INFOPLIST_FILE = iOS/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 5.0; - PRODUCT_NAME = GCDWebServer; - PROVISIONING_PROFILE = ""; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - E22112771690B4DF0048D2B2 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = "iPhone Developer"; - ENABLE_BITCODE = NO; - INFOPLIST_FILE = iOS/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 5.0; - PRODUCT_NAME = GCDWebServer; - PROVISIONING_PROFILE = ""; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Release; - }; E240392F1BA09207000B7089 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -1405,7 +1409,6 @@ buildSettings = { CODE_SIGN_IDENTITY = "iPhone Developer"; INFOPLIST_FILE = tvOS/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_NAME = GCDWebServer; PROVISIONING_PROFILE = ""; SDKROOT = appletvos; @@ -1418,7 +1421,6 @@ buildSettings = { CODE_SIGN_IDENTITY = "iPhone Developer"; INFOPLIST_FILE = tvOS/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_NAME = GCDWebServer; PROVISIONING_PROFILE = ""; SDKROOT = appletvos; @@ -1426,6 +1428,34 @@ }; name = Release; }; + E2DDD20B1BE69EE5002CE867 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = "iPhone Developer"; + ENABLE_BITCODE = YES; + INFOPLIST_FILE = iOS/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 6.0; + PRODUCT_NAME = GCDWebServer; + PROVISIONING_PROFILE = ""; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + E2DDD20C1BE69EE5002CE867 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = "iPhone Developer"; + ENABLE_BITCODE = YES; + INFOPLIST_FILE = iOS/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 6.0; + PRODUCT_NAME = GCDWebServer; + PROVISIONING_PROFILE = ""; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ @@ -1465,15 +1495,6 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - E22112751690B4DF0048D2B2 /* Build configuration list for PBXNativeTarget "GCDWebServer (iOS)" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - E22112761690B4DF0048D2B2 /* Debug */, - E22112771690B4DF0048D2B2 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; E240392E1BA09207000B7089 /* Build configuration list for PBXNativeTarget "Tests (Mac)" */ = { isa = XCConfigurationList; buildConfigurations = ( @@ -1508,6 +1529,14 @@ ); defaultConfigurationIsVisible = 0; }; + E2DDD20A1BE69EE5002CE867 /* Build configuration list for PBXNativeTarget "GCDWebServer (iOS)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + E2DDD20B1BE69EE5002CE867 /* Debug */, + E2DDD20C1BE69EE5002CE867 /* Release */, + ); + defaultConfigurationIsVisible = 0; + }; /* End XCConfigurationList section */ }; rootObject = 08FB7793FE84155DC02AAC07 /* Project object */; diff --git a/iOS/AppDelegate.m b/iOS/AppDelegate.m index 2a033b3..bfd0518 100644 --- a/iOS/AppDelegate.m +++ b/iOS/AppDelegate.m @@ -26,45 +26,11 @@ */ #import "AppDelegate.h" -#import "GCDWebUploader.h" - -@interface AppDelegate () { -@private - GCDWebUploader* _webServer; -} -@end @implementation AppDelegate - (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions { - CGRect bounds = ([UIScreen instancesRespondToSelector:@selector(nativeBounds)] ? [[UIScreen mainScreen] nativeBounds] : [[UIScreen mainScreen] bounds]); - _window = [[UIWindow alloc] initWithFrame:bounds]; - _window.backgroundColor = [UIColor whiteColor]; - [_window makeKeyAndVisible]; - - NSString* documentsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject]; - _webServer = [[GCDWebUploader alloc] initWithUploadDirectory:documentsPath]; - _webServer.delegate = self; - _webServer.allowHiddenItems = YES; - [_webServer start]; - return YES; } -- (void)webUploader:(GCDWebUploader*)uploader didUploadFileAtPath:(NSString*)path { - NSLog(@"[UPLOAD] %@", path); -} - -- (void)webUploader:(GCDWebUploader*)uploader didMoveItemFromPath:(NSString*)fromPath toPath:(NSString*)toPath { - NSLog(@"[MOVE] %@ -> %@", fromPath, toPath); -} - -- (void)webUploader:(GCDWebUploader*)uploader didDeleteItemAtPath:(NSString*)path { - NSLog(@"[DELETE] %@", path); -} - -- (void)webUploader:(GCDWebUploader*)uploader didCreateDirectoryAtPath:(NSString*)path { - NSLog(@"[CREATE] %@", path); -} - @end diff --git a/iOS/Assets.xcassets/AppIcon.appiconset/Contents.json b/iOS/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..36d2c80 --- /dev/null +++ b/iOS/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,68 @@ +{ + "images" : [ + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "3x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/iOS/Base.lproj/LaunchScreen.storyboard b/iOS/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 0000000..8158318 --- /dev/null +++ b/iOS/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iOS/Base.lproj/Main.storyboard b/iOS/Base.lproj/Main.storyboard new file mode 100644 index 0000000..ad3b119 --- /dev/null +++ b/iOS/Base.lproj/Main.storyboard @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iOS/Info.plist b/iOS/Info.plist index 2645b2c..1f083fb 100644 --- a/iOS/Info.plist +++ b/iOS/Info.plist @@ -4,24 +4,26 @@ CFBundleDevelopmentRegion en - CFBundleDisplayName - ${PRODUCT_NAME} CFBundleExecutable - ${EXECUTABLE_NAME} + $(EXECUTABLE_NAME) CFBundleIdentifier net.pol-online.${PRODUCT_NAME:rfc1034identifier} CFBundleInfoDictionaryVersion 6.0 CFBundleName - ${PRODUCT_NAME} + $(PRODUCT_NAME) CFBundlePackageType APPL CFBundleShortVersionString 1.0 CFBundleVersion - 1.0 + 1 LSRequiresIPhoneOS + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main UIRequiredDeviceCapabilities armv7 diff --git a/iOS/ViewController.h b/iOS/ViewController.h new file mode 100644 index 0000000..5400bd5 --- /dev/null +++ b/iOS/ViewController.h @@ -0,0 +1,31 @@ +/* + Copyright (c) 2012-2015, Pierre-Olivier Latour + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * The name of Pierre-Olivier Latour may not be used to endorse + or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL PIERRE-OLIVIER LATOUR BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +@interface ViewController : UIViewController +@end diff --git a/iOS/ViewController.m b/iOS/ViewController.m new file mode 100644 index 0000000..2f7d79d --- /dev/null +++ b/iOS/ViewController.m @@ -0,0 +1,77 @@ +/* + Copyright (c) 2012-2015, Pierre-Olivier Latour + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * The name of Pierre-Olivier Latour may not be used to endorse + or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL PIERRE-OLIVIER LATOUR BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "ViewController.h" +#import "GCDWebUploader.h" + +@interface ViewController () +@property(weak, nonatomic) IBOutlet UILabel* label; +@end + +@implementation ViewController { +@private + GCDWebUploader* _webServer; +} + +- (void)viewWillAppear:(BOOL)animated { + [super viewWillAppear:animated]; + + NSString* documentsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject]; + _webServer = [[GCDWebUploader alloc] initWithUploadDirectory:documentsPath]; + _webServer.delegate = self; + _webServer.allowHiddenItems = YES; + if ([_webServer start]) { + _label.text = [NSString stringWithFormat:NSLocalizedString(@"GCDWebServer running locally on port %i", nil), (int)_webServer.port]; + } else { + _label.text = NSLocalizedString(@"GCDWebServer not running!", nil); + } +} + +- (void)viewDidDisappear:(BOOL)animated { + [super viewDidDisappear:animated]; + + [_webServer stop]; + _webServer = nil; +} + +- (void)webUploader:(GCDWebUploader*)uploader didUploadFileAtPath:(NSString*)path { + NSLog(@"[UPLOAD] %@", path); +} + +- (void)webUploader:(GCDWebUploader*)uploader didMoveItemFromPath:(NSString*)fromPath toPath:(NSString*)toPath { + NSLog(@"[MOVE] %@ -> %@", fromPath, toPath); +} + +- (void)webUploader:(GCDWebUploader*)uploader didDeleteItemAtPath:(NSString*)path { + NSLog(@"[DELETE] %@", path); +} + +- (void)webUploader:(GCDWebUploader*)uploader didCreateDirectoryAtPath:(NSString*)path { + NSLog(@"[CREATE] %@", path); +} + +@end