mirror of
https://github.com/averello/SimDirs.git
synced 2026-02-06 20:26:15 +01:00
53 lines
1.6 KiB
Swift
53 lines
1.6 KiB
Swift
//
|
|
// SimOSVersion.swift
|
|
// SimDirs
|
|
//
|
|
// Created by Casey Fleser on 4/30/16.
|
|
// Copyright © 2016 Quiet Spark. All rights reserved.
|
|
//
|
|
|
|
import Foundation
|
|
|
|
class SimOSVersion: OutlineProvider, NSCopying {
|
|
let name : String
|
|
var devices = [SimDevice]()
|
|
|
|
init(name: String) {
|
|
self.name = name
|
|
}
|
|
|
|
func copy(with zone: NSZone? = nil) -> Any {
|
|
let copy = SimOSVersion(name: self.name)
|
|
copy.devices = self.devices
|
|
return copy
|
|
}
|
|
|
|
func completeScan(_ platformName: String) {
|
|
for device in self.devices {
|
|
device.completeScan(platformName)
|
|
}
|
|
self.devices.sort { $0.name < $1.name }
|
|
}
|
|
|
|
func updateWithDeviceInfo(_ deviceInfo: [String : AnyObject], baseURL: URL) {
|
|
guard let deviceName = deviceInfo["name"] as? String else { return }
|
|
guard let deviceUDID = deviceInfo["UDID"] as? String else { return }
|
|
guard var deviceType = deviceInfo["deviceType"] as? String else { return }
|
|
|
|
deviceType = deviceType.replacingOccurrences(of: "com.apple.CoreSimulator.SimDeviceType.", with: "")
|
|
deviceType = deviceType.replacingOccurrences(of: "-", with: " ")
|
|
|
|
self.devices.append(SimDevice(name: deviceName, type: deviceType, udid: deviceUDID, baseURL: baseURL))
|
|
}
|
|
|
|
// MARK: - OutlineProvider -
|
|
|
|
var outlineTitle : String { return self.name }
|
|
var outlineImage : NSImage? { return nil }
|
|
var childCount : Int { return self.devices.count }
|
|
|
|
func childAtIndex(_ index: Int) -> OutlineProvider? {
|
|
return self.devices[index]
|
|
}
|
|
}
|