mirror of
https://github.com/SideStore/SideStore.git
synced 2026-02-10 07:13:28 +01:00
47 lines
881 B
Swift
47 lines
881 B
Swift
//
|
|
// AppProtocol.swift
|
|
// AltStore
|
|
//
|
|
// Created by Riley Testut on 7/26/19.
|
|
// Copyright © 2019 Riley Testut. All rights reserved.
|
|
//
|
|
|
|
import AltSign
|
|
import Foundation
|
|
|
|
public protocol AppProtocol {
|
|
var name: String { get }
|
|
var bundleIdentifier: String { get }
|
|
var url: URL? { get }
|
|
}
|
|
|
|
public struct AnyApp: AppProtocol {
|
|
public var name: String
|
|
public var bundleIdentifier: String
|
|
public var url: URL?
|
|
|
|
public init(name: String, bundleIdentifier: String, url: URL?) {
|
|
self.name = name
|
|
self.bundleIdentifier = bundleIdentifier
|
|
self.url = url
|
|
}
|
|
}
|
|
|
|
extension ALTApplication: AppProtocol {
|
|
public var url: URL? {
|
|
fileURL
|
|
}
|
|
}
|
|
|
|
extension StoreApp: AppProtocol {
|
|
public var url: URL? {
|
|
downloadURL
|
|
}
|
|
}
|
|
|
|
extension InstalledApp: AppProtocol {
|
|
public var url: URL? {
|
|
fileURL
|
|
}
|
|
}
|