Damian Kołakowski 11 yıl önce
ebeveyn
işleme
abed8cac7f

+ 6 - 3
Common/ActiveRecord/SwifterActiveRecord.swift

@@ -10,7 +10,11 @@ struct SwifterActiveRecordField {
     let name: String?
     let name: String?
 }
 }
 
 
-class SwifterActiveRecord<T: NSObject> {
+protocol WithInit {
+    init()
+}
+
+class SwifterActiveRecord<T: WithInit> {
     
     
     init() {
     init() {
 
 
@@ -18,7 +22,7 @@ class SwifterActiveRecord<T: NSObject> {
     
     
     private func scheme(error: NSErrorPointer?) -> [SwifterActiveRecordField] {
     private func scheme(error: NSErrorPointer?) -> [SwifterActiveRecordField] {
         var results = [SwifterActiveRecordField]()
         var results = [SwifterActiveRecordField]()
-        let classInfoDump = reflect(self)
+        let classInfoDump = reflect(T())
         for var index = 1; index < classInfoDump.count; ++index {
         for var index = 1; index < classInfoDump.count; ++index {
             let field = classInfoDump[index]
             let field = classInfoDump[index]
             results.append(SwifterActiveRecordField(name: field.0))
             results.append(SwifterActiveRecordField(name: field.0))
@@ -40,4 +44,3 @@ class SwifterActiveRecord<T: NSObject> {
 }
 }
 
 
 
 
-

+ 3 - 3
Common/HttpParser.swift

@@ -57,7 +57,7 @@ class HttpParser {
         var body = ""
         var body = ""
         var counter = 0;
         var counter = 0;
         while ( counter < size ) {
         while ( counter < size ) {
-            let c = nextUInt8(socket)
+            let c = nextInt8(socket)
             if ( c < 0 ) {
             if ( c < 0 ) {
                 if error != nil { error.memory = err("IO error while reading body") }
                 if error != nil { error.memory = err("IO error while reading body") }
                 return nil
                 return nil
@@ -89,7 +89,7 @@ class HttpParser {
         return nil
         return nil
     }
     }
 
 
-    private func nextUInt8(socket: CInt) -> Int {
+    private func nextInt8(socket: CInt) -> Int {
         var buffer = [UInt8](count: 1, repeatedValue: 0);
         var buffer = [UInt8](count: 1, repeatedValue: 0);
         let next = recv(socket, &buffer, UInt(buffer.count), 0)
         let next = recv(socket, &buffer, UInt(buffer.count), 0)
         if next <= 0 { return next }
         if next <= 0 { return next }
@@ -100,7 +100,7 @@ class HttpParser {
         var characters: String = ""
         var characters: String = ""
         var n = 0
         var n = 0
         do {
         do {
-            n = nextUInt8(socket)
+            n = nextInt8(socket)
             if ( n > 13 /* CR */ ) { characters.append(Character(UnicodeScalar(n))) }
             if ( n > 13 /* CR */ ) { characters.append(Character(UnicodeScalar(n))) }
         } while ( n > 0 && n != 10 /* NL */)
         } while ( n > 0 && n != 10 /* NL */)
         if ( n == -1 && characters.isEmpty ) {
         if ( n == -1 && characters.isEmpty ) {

+ 9 - 9
Common/HttpServer.swift

@@ -44,9 +44,9 @@ class HttpServer
                             if let (expression, handler) = self.findHandler(request.url) {
                             if let (expression, handler) = self.findHandler(request.url) {
                                 let capturedUrlsGroups = self.captureExpressionGroups(expression, value: request.url)
                                 let capturedUrlsGroups = self.captureExpressionGroups(expression, value: request.url)
                                 let updatedRequest = HttpRequest(url: request.url, urlParams: request.urlParams, method: request.method, headers: request.headers, body: request.body, capturedUrlGroups: capturedUrlsGroups)
                                 let updatedRequest = HttpRequest(url: request.url, urlParams: request.urlParams, method: request.method, headers: request.headers, body: request.body, capturedUrlGroups: capturedUrlsGroups)
-                                HttpServer.writeResponse(socket, response: handler(updatedRequest), keepAlive: keepAlive)
+                                HttpServer.respond(socket, response: handler(updatedRequest), keepAlive: keepAlive)
                             } else {
                             } else {
-                                HttpServer.writeResponse(socket, response: HttpResponse.NotFound, keepAlive: keepAlive)
+                                HttpServer.respond(socket, response: HttpResponse.NotFound, keepAlive: keepAlive)
                             }
                             }
                             if !keepAlive { break }
                             if !keepAlive { break }
                         }
                         }
@@ -83,20 +83,20 @@ class HttpServer
         return NSMakeRange(0, value.lengthOfBytesUsingEncoding(NSASCIIStringEncoding))
         return NSMakeRange(0, value.lengthOfBytesUsingEncoding(NSASCIIStringEncoding))
     }
     }
     
     
-    class func writeResponse(socket: CInt, response: HttpResponse, keepAlive: Bool) {
-        Socket.writeStringUTF8(socket, string: "HTTP/1.1 \(response.statusCode()) \(response.reasonPhrase())\r\n")
+    class func respond(socket: CInt, response: HttpResponse, keepAlive: Bool) {
+        Socket.writeUTF8(socket, string: "HTTP/1.1 \(response.statusCode()) \(response.reasonPhrase())\r\n")
         if let body = response.body() {
         if let body = response.body() {
-            Socket.writeStringASCII(socket, string: "Content-Length: \(body.length)\r\n")
+            Socket.writeASCII(socket, string: "Content-Length: \(body.length)\r\n")
         } else {
         } else {
-            Socket.writeStringASCII(socket, string: "Content-Length: 0\r\n")
+            Socket.writeASCII(socket, string: "Content-Length: 0\r\n")
         }
         }
         if keepAlive {
         if keepAlive {
-            Socket.writeStringASCII(socket, string: "Connection: keep-alive\r\n")
+            Socket.writeASCII(socket, string: "Connection: keep-alive\r\n")
         }
         }
         for (name, value) in response.headers() {
         for (name, value) in response.headers() {
-            Socket.writeStringASCII(socket, string: "\(name): \(value)\r\n")
+            Socket.writeASCII(socket, string: "\(name): \(value)\r\n")
         }
         }
-        Socket.writeStringASCII(socket, string: "\r\n")
+        Socket.writeASCII(socket, string: "\r\n")
         if let body = response.body() {
         if let body = response.body() {
             Socket.writeData(socket, data: body)
             Socket.writeData(socket, data: body)
         }
         }

+ 2 - 2
Common/Socket.swift

@@ -49,14 +49,14 @@ struct Socket {
         return s
         return s
     }
     }
     
     
-    static func writeStringUTF8(socket: CInt, string: String, error: NSErrorPointer = nil) -> Bool {
+    static func writeUTF8(socket: CInt, string: String, error: NSErrorPointer = nil) -> Bool {
         if let nsdata = string.dataUsingEncoding(NSUTF8StringEncoding) {
         if let nsdata = string.dataUsingEncoding(NSUTF8StringEncoding) {
             writeData(socket, data: nsdata, error: error)
             writeData(socket, data: nsdata, error: error)
         }
         }
         return true
         return true
     }
     }
     
     
-    static func writeStringASCII(socket: CInt, string: String, error: NSErrorPointer = nil) -> Bool {
+    static func writeASCII(socket: CInt, string: String, error: NSErrorPointer = nil) -> Bool {
         if let nsdata = string.dataUsingEncoding(NSASCIIStringEncoding) {
         if let nsdata = string.dataUsingEncoding(NSASCIIStringEncoding) {
             writeData(socket, data: nsdata, error: error)
             writeData(socket, data: nsdata, error: error)
         }
         }

BIN
Swifter.xcodeproj/project.xcworkspace/xcuserdata/damiankolakowski.xcuserdatad/UserInterfaceState.xcuserstate


+ 5 - 5
Swifter.xcodeproj/xcuserdata/damiankolakowski.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist

@@ -585,7 +585,7 @@
             endingColumnNumber = "9223372036854775807"
             endingColumnNumber = "9223372036854775807"
             startingLineNumber = "86"
             startingLineNumber = "86"
             endingLineNumber = "86"
             endingLineNumber = "86"
-            landmarkName = "writeResponse(_:response:keepAlive:)"
+            landmarkName = "respond(_:response:keepAlive:)"
             landmarkType = "5">
             landmarkType = "5">
          </BreakpointContent>
          </BreakpointContent>
       </BreakpointProxy>
       </BreakpointProxy>
@@ -601,7 +601,7 @@
             endingColumnNumber = "9223372036854775807"
             endingColumnNumber = "9223372036854775807"
             startingLineNumber = "87"
             startingLineNumber = "87"
             endingLineNumber = "87"
             endingLineNumber = "87"
-            landmarkName = "writeResponse(_:response:keepAlive:)"
+            landmarkName = "respond(_:response:keepAlive:)"
             landmarkType = "5">
             landmarkType = "5">
          </BreakpointContent>
          </BreakpointContent>
       </BreakpointProxy>
       </BreakpointProxy>
@@ -633,7 +633,7 @@
             endingColumnNumber = "9223372036854775807"
             endingColumnNumber = "9223372036854775807"
             startingLineNumber = "55"
             startingLineNumber = "55"
             endingLineNumber = "55"
             endingLineNumber = "55"
-            landmarkName = "writeStringUTF8(_:string:error:)"
+            landmarkName = "writeUTF8(_:string:error:)"
             landmarkType = "5">
             landmarkType = "5">
          </BreakpointContent>
          </BreakpointContent>
       </BreakpointProxy>
       </BreakpointProxy>
@@ -847,8 +847,8 @@
             endingColumnNumber = "9223372036854775807"
             endingColumnNumber = "9223372036854775807"
             startingLineNumber = "79"
             startingLineNumber = "79"
             endingLineNumber = "79"
             endingLineNumber = "79"
-            landmarkName = "SwifterSQLiteDatabaseProxy"
-            landmarkType = "3">
+            landmarkName = "init(name:)"
+            landmarkType = "5">
          </BreakpointContent>
          </BreakpointContent>
       </BreakpointProxy>
       </BreakpointProxy>
       <BreakpointProxy
       <BreakpointProxy