35 lines
844 B
Swift
35 lines
844 B
Swift
//
|
|
// Attachment+Database.swift
|
|
// Database
|
|
//
|
|
// Created by Brent Simmons on 7/4/17.
|
|
// Copyright © 2017 Ranchero Software. All rights reserved.
|
|
//
|
|
|
|
import Foundation
|
|
|
|
extension Attachment {
|
|
|
|
convenience init?(databaseDictionary d: [String: Any]) {
|
|
|
|
guard let url = d[DatabaseKey.url] as? String else {
|
|
return nil
|
|
}
|
|
let mimeType = d[DatabaseKey.mimeType] as? String
|
|
let title = d[DatabaseKey.title] as? String
|
|
let durationInSeconds = d[DatabaseKey.durationInSeconds] as? Int
|
|
|
|
self.init(url: url, mimeType: mimeType, title: title, durationInSeconds: durationInSeconds)
|
|
}
|
|
|
|
class func attachments(with plist: [Any]) -> [Attachment]? {
|
|
|
|
return plist.flatMap{ (oneDictionary) -> Attachment? in
|
|
if let d = oneDictionary as? [String: Any] {
|
|
return Attachment(databaseDictionary: d)
|
|
}
|
|
return nil
|
|
}
|
|
}
|
|
}
|