aboutsummaryrefslogtreecommitdiff
path: root/Sources/source_manager.swift
diff options
context:
space:
mode:
Diffstat (limited to 'Sources/source_manager.swift')
-rw-r--r--Sources/source_manager.swift13
1 files changed, 8 insertions, 5 deletions
diff --git a/Sources/source_manager.swift b/Sources/source_manager.swift
index e55cc8b..5ee1305 100644
--- a/Sources/source_manager.swift
+++ b/Sources/source_manager.swift
@@ -1,10 +1,12 @@
-/// Manages the different sources. Keeps track of them, lists and toggles
+// Collect and manage the available and enabled source
class SourceManager {
+ // List of sources enabled for the crurent platform
private var availableSources: [String: Source] = [
"arguments": ArgumentsSource()
]
+ // Iterate over the sources until we find a track or run out of sources
var currentTrack: Track? {
for source in enabledSources {
if let currentTrack = source.currentTrack {
@@ -15,6 +17,7 @@ class SourceManager {
return nil
}
+ // Return the list of enabled sources based on the configuration
var enabledSources: [Source] {
// Checks the config and returns an array of sources based on the
@@ -22,7 +25,7 @@ class SourceManager {
var sources = [Source]()
- if let sourceNames = Configuration.sharedInstance["enabled_sources"] as? [String] {
+ if let sourceNames = Configuration.shared["enabled_sources"] as? [String] {
for sourceName in sourceNames {
if let source = availableSources[sourceName] {
sources.append(source)
@@ -33,15 +36,15 @@ class SourceManager {
return sources
}
+ // Given a source name, it will enable it and add it to the enabled sources config
func enable(sourceName: String) {
}
+ // Given a source name, it will remove it from the enabled sources config
func disable(sourceName: String) {
}
+ // Given a source name, it removes any stored configuration and disables it
func reset(sourceName: String) {
}
-
- func getSources(sourceName: String) {
- }
}