11//
2- // HookFunction .swift
2+ // ParseHookFunction+Vapor .swift
33//
44//
55// Created by Corey Baker on 6/23/22.
@@ -9,29 +9,18 @@ import Foundation
99import ParseSwift
1010import Vapor
1111
12- /**
13- Parse Hook Functions can be created by conforming to
14- `ParseHookFunctionable`.
15- */
16- public struct HookFunction : ParseHookFunctionable {
17- public var functionName : String ?
18- public var url : URL ?
19-
20- public init ( ) { }
21- }
22-
2312// MARK: HookFunction - Internal
24- extension HookFunction {
13+ extension ParseHookFunction {
2514
2615 @discardableResult
2716 static func method( _ method: HTTPMethod ,
2817 _ path: [ PathComponent ] ,
2918 name: String ,
30- parseServerURLStrings: [ String ] ) async throws -> [ String : HookFunction ] {
19+ parseServerURLStrings: [ String ] ) async throws -> [ String : Self ] {
3120 let url = try buildServerPathname ( path)
32- let hookFunction = HookFunction ( name: name,
33- url: url)
34- var hookFunctions = [ String: HookFunction ] ( )
21+ let hookFunction = Self ( name: name,
22+ url: url)
23+ var hookFunctions = [ String: Self ] ( )
3524
3625 for parseServerURLString in parseServerURLStrings {
3726 do {
@@ -79,7 +68,7 @@ extension HookFunction {
7968}
8069
8170// MARK: HookFunction - Fetch
82- public extension HookFunction {
71+ public extension ParseHookFunction {
8372
8473 /**
8574 Fetches a Parse Cloud Code hook function.
@@ -93,7 +82,7 @@ public extension HookFunction {
9382 */
9483 static func fetch( _ path: PathComponent ... ,
9584 name: String ,
96- parseServerURLStrings: [ String ] ) async throws -> [ String : HookFunction ] {
85+ parseServerURLStrings: [ String ] ) async throws -> [ String : Self ] {
9786 try await fetch ( path, name: name, parseServerURLStrings: parseServerURLStrings)
9887 }
9988
@@ -109,7 +98,7 @@ public extension HookFunction {
10998 */
11099 static func fetch( _ path: [ PathComponent ] ,
111100 name: String ,
112- parseServerURLStrings: [ String ] ) async throws -> [ String : HookFunction ] {
101+ parseServerURLStrings: [ String ] ) async throws -> [ String : Self ] {
113102 try await method ( . PUT, path, name: name, parseServerURLStrings: parseServerURLStrings)
114103 }
115104
@@ -125,7 +114,7 @@ public extension HookFunction {
125114 */
126115 static func fetchAll( _ path: PathComponent ... ,
127116 name: String ,
128- parseServerURLStrings: [ String ] ) async throws -> [ String : [ HookFunction ] ] {
117+ parseServerURLStrings: [ String ] ) async throws -> [ String : [ Self ] ] {
129118 try await fetchAll ( path, name: name, parseServerURLStrings: parseServerURLStrings)
130119 }
131120
@@ -141,11 +130,11 @@ public extension HookFunction {
141130 */
142131 static func fetchAll( _ path: [ PathComponent ] ,
143132 name: String ,
144- parseServerURLStrings: [ String ] ) async throws -> [ String : [ HookFunction ] ] {
133+ parseServerURLStrings: [ String ] ) async throws -> [ String : [ Self ] ] {
145134 let url = try buildServerPathname ( path)
146- let hookFunction = HookFunction ( name: name,
135+ let hookFunction = Self ( name: name,
147136 url: url)
148- var hookFunctions = [ String: [ HookFunction ] ] ( )
137+ var hookFunctions = [ String: [ Self ] ] ( )
149138
150139 for parseServerURLString in parseServerURLStrings {
151140 do {
@@ -161,7 +150,7 @@ public extension HookFunction {
161150}
162151
163152// MARK: HookFunction - Create
164- public extension HookFunction {
153+ public extension ParseHookFunction {
165154
166155 /**
167156 Creates a Parse Cloud Code hook function.
@@ -177,7 +166,7 @@ public extension HookFunction {
177166 static func create( _ path: PathComponent ... ,
178167 name: String ,
179168 // swiftlint:disable:next line_length
180- parseServerURLStrings: [ String ] = ParseServerSwift . configuration. parseServerURLStrings) async throws -> [ String : HookFunction ] {
169+ parseServerURLStrings: [ String ] = ParseServerSwift . configuration. parseServerURLStrings) async throws -> [ String : Self ] {
181170 try await create ( path, name: name, parseServerURLStrings: parseServerURLStrings)
182171 }
183172
@@ -195,13 +184,13 @@ public extension HookFunction {
195184 static func create( _ path: [ PathComponent ] ,
196185 name: String ,
197186 // swiftlint:disable:next line_length
198- parseServerURLStrings: [ String ] = ParseServerSwift . configuration. parseServerURLStrings) async throws -> [ String : HookFunction ] {
187+ parseServerURLStrings: [ String ] = ParseServerSwift . configuration. parseServerURLStrings) async throws -> [ String : Self ] {
199188 try await method ( . POST, path, name: name, parseServerURLStrings: parseServerURLStrings)
200189 }
201190}
202191
203192// MARK: HookFunction - Update
204- public extension HookFunction {
193+ public extension ParseHookFunction {
205194
206195 /**
207196 Updates a Parse Cloud Code hook function.
@@ -217,7 +206,7 @@ public extension HookFunction {
217206 static func update( _ path: PathComponent ... ,
218207 name: String ,
219208 // swiftlint:disable:next line_length
220- parseServerURLStrings: [ String ] = ParseServerSwift . configuration. parseServerURLStrings) async throws -> [ String : HookFunction ] {
209+ parseServerURLStrings: [ String ] = ParseServerSwift . configuration. parseServerURLStrings) async throws -> [ String : Self ] {
221210 try await update ( path, name: name, parseServerURLStrings: parseServerURLStrings)
222211 }
223212
@@ -235,13 +224,13 @@ public extension HookFunction {
235224 static func update( _ path: [ PathComponent ] ,
236225 name: String ,
237226 // swiftlint:disable:next line_length
238- parseServerURLStrings: [ String ] = ParseServerSwift . configuration. parseServerURLStrings) async throws -> [ String : HookFunction ] {
227+ parseServerURLStrings: [ String ] = ParseServerSwift . configuration. parseServerURLStrings) async throws -> [ String : Self ] {
239228 try await method ( . PUT, path, name: name, parseServerURLStrings: parseServerURLStrings)
240229 }
241230}
242231
243232// MARK: HookFunction - Delete
244- public extension HookFunction {
233+ public extension ParseHookFunction {
245234
246235 /**
247236 Removes a Parse Cloud Code hook function.
@@ -359,8 +348,8 @@ public extension RoutesBuilder {
359348 let route = self . on ( . POST, path, body: body, use: closure)
360349 Task {
361350 do {
362- await configuration. hooks. updateFunctions ( try await HookFunction . create ( route. path,
363- name: name) )
351+ await configuration. hooks. updateFunctions ( try await ParseHookFunction . create ( route. path,
352+ name: name) )
364353 } catch {
365354 // swiftlint:disable:next line_length
366355 configuration. logger. error ( " Could not create HookFunction route for path: \( path) ; name: \( name) on servers: \( configuration. parseServerURLStrings) because of error: \( error) " )
0 commit comments