Delete
public final class Delete<T> : AuthEndpoint where T : CorvusModel
A class that provides functionality to delete objects completely of a
generic type T
conforming to CorvusModel
and identified by a route
parameter.
-
The return type of the
.handler()
.Declaration
Swift
public typealias QuerySubject = T
-
The return type of the
.query()
.Declaration
Swift
public typealias Element = HTTPStatus
-
The HTTP operation type of the component.
Declaration
Swift
public let operationType: OperationType
-
Initializes the component with a given path parameter.
Declaration
Swift
public init(_ id: PathComponent, softDelete: Bool = false)
Parameters
id
A
PathComponent
which represents the ID of the item.softDelete
Whether deletion should include soft deleted items or not.
-
A method to find an item by an ID supplied in the
Request
.Throws
AnAbort
error if the item is not found.Declaration
Swift
public func query(_ req: Request) throws -> QueryBuilder<QuerySubject>
Parameters
req
An incoming
Request
.Return Value
A
QueryBuilder
, which represents aFluent
query after having found the object with the supplied ID. -
A method to delete an object found in the
.query()
from the database.Throws
AnAbort
error if the item is not found.Declaration
Swift
public func handler(_ req: Request) throws -> EventLoopFuture<HTTPStatus>
Parameters
req
An incoming
Request
.Return Value
A HTTPStatus of either
.ok
, when the object was successfully deleted, or.notFound
, when the object was not found.