From ee230f3086206d6b9bd9b9e56e0e3cd5c7966433 Mon Sep 17 00:00:00 2001 From: Nico Verbruggen Date: Thu, 15 Dec 2022 22:28:15 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=91=8C=20Unify=20scanners?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- PHP Monitor.xcodeproj/project.pbxproj | 108 +++++++----------- .../Testables/TestableConfiguration.swift | 2 +- .../Valet/Domains/FakeValetInteractor.swift | 10 +- .../ProxyScanner/EmptyProxyScanner.swift | 15 --- .../Proxies/ProxyScanner/ProxyScanner.swift | 15 --- .../ProxyScanner/ValetProxyScanner.swift | 29 ----- .../DomainScanner.swift} | 14 ++- .../FakeDomainScanner.swift} | 23 +++- .../ValetDomainScanner.swift} | 27 ++++- .../Valet/Scanners/ValetScanners.swift | 19 +++ phpmon/Domain/Integrations/Valet/Valet.swift | 11 +- .../Integrations/Valet/ValetScanners.swift | 21 ---- 12 files changed, 125 insertions(+), 169 deletions(-) delete mode 100644 phpmon/Domain/Integrations/Valet/Proxies/ProxyScanner/EmptyProxyScanner.swift delete mode 100644 phpmon/Domain/Integrations/Valet/Proxies/ProxyScanner/ProxyScanner.swift delete mode 100644 phpmon/Domain/Integrations/Valet/Proxies/ProxyScanner/ValetProxyScanner.swift rename phpmon/Domain/Integrations/Valet/{Sites/SiteScanner/SiteScanner.swift => Scanners/DomainScanner.swift} (56%) rename phpmon/Domain/Integrations/Valet/{Sites/SiteScanner/FakeSiteScanner.swift => Scanners/FakeDomainScanner.swift} (78%) rename phpmon/Domain/Integrations/Valet/{Sites/SiteScanner/ValetSiteScanner.swift => Scanners/ValetDomainScanner.swift} (77%) create mode 100644 phpmon/Domain/Integrations/Valet/Scanners/ValetScanners.swift delete mode 100644 phpmon/Domain/Integrations/Valet/ValetScanners.swift diff --git a/PHP Monitor.xcodeproj/project.pbxproj b/PHP Monitor.xcodeproj/project.pbxproj index 2359759..0d14e8b 100644 --- a/PHP Monitor.xcodeproj/project.pbxproj +++ b/PHP Monitor.xcodeproj/project.pbxproj @@ -79,9 +79,7 @@ C417DC74277614690015E6EE /* Helpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = C417DC73277614690015E6EE /* Helpers.swift */; }; C417DC75277614690015E6EE /* Helpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = C417DC73277614690015E6EE /* Helpers.swift */; }; C4181F1128FAF9330042EA28 /* UITestCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4181F1028FAF9330042EA28 /* UITestCase.swift */; }; - C41C02A627E60D7A009F26CB /* SiteScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C41C02A527E60D7A009F26CB /* SiteScanner.swift */; }; C41C02A927E61A65009F26CB /* ValetSite+Fake.swift in Sources */ = {isa = PBXBuildFile; fileRef = C41C02A827E61A65009F26CB /* ValetSite+Fake.swift */; }; - C41C02AA27E61CA3009F26CB /* SiteScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C41C02A527E60D7A009F26CB /* SiteScanner.swift */; }; C41C02AB27E61CB3009F26CB /* ValetSite+Fake.swift in Sources */ = {isa = PBXBuildFile; fileRef = C41C02A827E61A65009F26CB /* ValetSite+Fake.swift */; }; C41C1B3722B0097F00E7CF16 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C41C1B3622B0097F00E7CF16 /* AppDelegate.swift */; }; C41C1B3B22B0098000E7CF16 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = C41C1B3A22B0098000E7CF16 /* Assets.xcassets */; }; @@ -284,13 +282,11 @@ C471E83428F9BB650021E251 /* VersionExtractor.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4B5635D276AB09000F12CCB /* VersionExtractor.swift */; }; C471E83528F9BB650021E251 /* ValetProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4205A7D27F4D21800191A39 /* ValetProxy.swift */; }; C471E83628F9BB650021E251 /* ValetProxy+Fake.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E927F88B80002D32A9 /* ValetProxy+Fake.swift */; }; - C471E83728F9BB650021E251 /* ProxyScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E627F88B41002D32A9 /* ProxyScanner.swift */; }; - C471E83828F9BB650021E251 /* ValetProxyScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C484437A2804BB560041A78A /* ValetProxyScanner.swift */; }; + C471E83728F9BB650021E251 /* DomainScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E627F88B41002D32A9 /* DomainScanner.swift */; }; C471E83928F9BB650021E251 /* ValetSite.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4E4404527C56F4700D225E1 /* ValetSite.swift */; }; C471E83A28F9BB650021E251 /* ValetSite+Fake.swift in Sources */ = {isa = PBXBuildFile; fileRef = C41C02A827E61A65009F26CB /* ValetSite+Fake.swift */; }; - C471E83B28F9BB650021E251 /* SiteScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C41C02A527E60D7A009F26CB /* SiteScanner.swift */; }; - C471E83C28F9BB650021E251 /* ValetSiteScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E127F88B13002D32A9 /* ValetSiteScanner.swift */; }; - C471E83D28F9BB650021E251 /* FakeSiteScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8DE27F88AEB002D32A9 /* FakeSiteScanner.swift */; }; + C471E83C28F9BB650021E251 /* ValetDomainScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E127F88B13002D32A9 /* ValetDomainScanner.swift */; }; + C471E83D28F9BB650021E251 /* FakeDomainScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8DE27F88AEB002D32A9 /* FakeDomainScanner.swift */; }; C471E83F28F9BB650021E251 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C41C1B3622B0097F00E7CF16 /* AppDelegate.swift */; }; C471E84028F9BB650021E251 /* AppDelegate+MenuOutlets.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4B97B74275CF08C003F3378 /* AppDelegate+MenuOutlets.swift */; }; C471E84128F9BB650021E251 /* AppDelegate+Notifications.swift in Sources */ = {isa = PBXBuildFile; fileRef = C436039F275E67610028EFC6 /* AppDelegate+Notifications.swift */; }; @@ -377,13 +373,11 @@ C471E89728F9BB8F0021E251 /* VersionExtractor.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4B5635D276AB09000F12CCB /* VersionExtractor.swift */; }; C471E89828F9BB8F0021E251 /* ValetProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4205A7D27F4D21800191A39 /* ValetProxy.swift */; }; C471E89928F9BB8F0021E251 /* ValetProxy+Fake.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E927F88B80002D32A9 /* ValetProxy+Fake.swift */; }; - C471E89A28F9BB8F0021E251 /* ProxyScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E627F88B41002D32A9 /* ProxyScanner.swift */; }; - C471E89B28F9BB8F0021E251 /* ValetProxyScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C484437A2804BB560041A78A /* ValetProxyScanner.swift */; }; + C471E89A28F9BB8F0021E251 /* DomainScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E627F88B41002D32A9 /* DomainScanner.swift */; }; C471E89C28F9BB8F0021E251 /* ValetSite.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4E4404527C56F4700D225E1 /* ValetSite.swift */; }; C471E89D28F9BB8F0021E251 /* ValetSite+Fake.swift in Sources */ = {isa = PBXBuildFile; fileRef = C41C02A827E61A65009F26CB /* ValetSite+Fake.swift */; }; - C471E89E28F9BB8F0021E251 /* SiteScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C41C02A527E60D7A009F26CB /* SiteScanner.swift */; }; - C471E89F28F9BB8F0021E251 /* ValetSiteScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E127F88B13002D32A9 /* ValetSiteScanner.swift */; }; - C471E8A028F9BB8F0021E251 /* FakeSiteScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8DE27F88AEB002D32A9 /* FakeSiteScanner.swift */; }; + C471E89F28F9BB8F0021E251 /* ValetDomainScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E127F88B13002D32A9 /* ValetDomainScanner.swift */; }; + C471E8A028F9BB8F0021E251 /* FakeDomainScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8DE27F88AEB002D32A9 /* FakeDomainScanner.swift */; }; C471E8A228F9BB8F0021E251 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C41C1B3622B0097F00E7CF16 /* AppDelegate.swift */; }; C471E8A328F9BB8F0021E251 /* AppDelegate+MenuOutlets.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4B97B74275CF08C003F3378 /* AppDelegate+MenuOutlets.swift */; }; C471E8A428F9BB8F0021E251 /* AppDelegate+Notifications.swift in Sources */ = {isa = PBXBuildFile; fileRef = C436039F275E67610028EFC6 /* AppDelegate+Notifications.swift */; }; @@ -470,8 +464,6 @@ C4811D2A22D70F9A00B5F6B3 /* MainMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4811D2922D70F9A00B5F6B3 /* MainMenu.swift */; }; C481F79726164A78004FBCFF /* PrefsVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5420395826135DC100FB00FA /* PrefsVC.swift */; }; C481F79A26164A7C004FBCFF /* Preferences.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5420395E2613607600FB00FA /* Preferences.swift */; }; - C484437B2804BB560041A78A /* ValetProxyScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C484437A2804BB560041A78A /* ValetProxyScanner.swift */; }; - C484437C2804BB560041A78A /* ValetProxyScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C484437A2804BB560041A78A /* ValetProxyScanner.swift */; }; C485706D28BF450900539B36 /* NSMenuItemExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = C40508B028ADAB44008FAC1F /* NSMenuItemExtension.swift */; }; C485706E28BF451C00539B36 /* OnboardingWindowController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4FACE82288F1F9700FC478F /* OnboardingWindowController.swift */; }; C485706F28BF452300539B36 /* WarningsWindowController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C422DDAC28A2DAC600CEAC97 /* WarningsWindowController.swift */; }; @@ -534,12 +526,12 @@ C4BF56AD2949381100379603 /* FakeValetInteractor.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4BF56AA2949381100379603 /* FakeValetInteractor.swift */; }; C4BF56AE2949381100379603 /* FakeValetInteractor.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4BF56AA2949381100379603 /* FakeValetInteractor.swift */; }; C4BF90C127C57C220054E78C /* MainMenu+FixMyValet.swift in Sources */ = {isa = PBXBuildFile; fileRef = C42C49DA27C2806F0074ABAC /* MainMenu+FixMyValet.swift */; }; - C4C0E8DF27F88AEB002D32A9 /* FakeSiteScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8DE27F88AEB002D32A9 /* FakeSiteScanner.swift */; }; - C4C0E8E027F88AEB002D32A9 /* FakeSiteScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8DE27F88AEB002D32A9 /* FakeSiteScanner.swift */; }; - C4C0E8E227F88B13002D32A9 /* ValetSiteScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E127F88B13002D32A9 /* ValetSiteScanner.swift */; }; - C4C0E8E327F88B13002D32A9 /* ValetSiteScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E127F88B13002D32A9 /* ValetSiteScanner.swift */; }; - C4C0E8E727F88B41002D32A9 /* ProxyScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E627F88B41002D32A9 /* ProxyScanner.swift */; }; - C4C0E8E827F88B41002D32A9 /* ProxyScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E627F88B41002D32A9 /* ProxyScanner.swift */; }; + C4C0E8DF27F88AEB002D32A9 /* FakeDomainScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8DE27F88AEB002D32A9 /* FakeDomainScanner.swift */; }; + C4C0E8E027F88AEB002D32A9 /* FakeDomainScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8DE27F88AEB002D32A9 /* FakeDomainScanner.swift */; }; + C4C0E8E227F88B13002D32A9 /* ValetDomainScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E127F88B13002D32A9 /* ValetDomainScanner.swift */; }; + C4C0E8E327F88B13002D32A9 /* ValetDomainScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E127F88B13002D32A9 /* ValetDomainScanner.swift */; }; + C4C0E8E727F88B41002D32A9 /* DomainScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E627F88B41002D32A9 /* DomainScanner.swift */; }; + C4C0E8E827F88B41002D32A9 /* DomainScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E627F88B41002D32A9 /* DomainScanner.swift */; }; C4C0E8EA27F88B80002D32A9 /* ValetProxy+Fake.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E927F88B80002D32A9 /* ValetProxy+Fake.swift */; }; C4C0E8EB27F88B80002D32A9 /* ValetProxy+Fake.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C0E8E927F88B80002D32A9 /* ValetProxy+Fake.swift */; }; C4C1019B27C65C6F001FACC2 /* Process.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4C1019A27C65C6F001FACC2 /* Process.swift */; }; @@ -571,10 +563,6 @@ C4D36602291132B7006BD146 /* ValetScanners.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D36600291132B7006BD146 /* ValetScanners.swift */; }; C4D36603291132B7006BD146 /* ValetScanners.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D36600291132B7006BD146 /* ValetScanners.swift */; }; C4D36604291132B7006BD146 /* ValetScanners.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D36600291132B7006BD146 /* ValetScanners.swift */; }; - C4D366062911331E006BD146 /* EmptyProxyScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D366052911331E006BD146 /* EmptyProxyScanner.swift */; }; - C4D366072911331E006BD146 /* EmptyProxyScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D366052911331E006BD146 /* EmptyProxyScanner.swift */; }; - C4D366082911331E006BD146 /* EmptyProxyScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D366052911331E006BD146 /* EmptyProxyScanner.swift */; }; - C4D366092911331E006BD146 /* EmptyProxyScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D366052911331E006BD146 /* EmptyProxyScanner.swift */; }; C4D3660B29113F20006BD146 /* System.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D3660A29113F20006BD146 /* System.swift */; }; C4D3660C29113F20006BD146 /* System.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D3660A29113F20006BD146 /* System.swift */; }; C4D3660D29113F20006BD146 /* System.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D3660A29113F20006BD146 /* System.swift */; }; @@ -751,7 +739,6 @@ C4168F4427ADB4A3003B6C39 /* DEVELOPER.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = DEVELOPER.md; sourceTree = ""; }; C417DC73277614690015E6EE /* Helpers.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Helpers.swift; sourceTree = ""; }; C4181F1028FAF9330042EA28 /* UITestCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UITestCase.swift; sourceTree = ""; }; - C41C02A527E60D7A009F26CB /* SiteScanner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SiteScanner.swift; sourceTree = ""; }; C41C02A827E61A65009F26CB /* ValetSite+Fake.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "ValetSite+Fake.swift"; sourceTree = ""; }; C41C1B3322B0097F00E7CF16 /* PHP Monitor.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "PHP Monitor.app"; sourceTree = BUILT_PRODUCTS_DIR; }; C41C1B3622B0097F00E7CF16 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; @@ -826,7 +813,6 @@ C476FF9722B0DD830098105B /* Alert.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Alert.swift; sourceTree = ""; }; C4811D2322D70A4700B5F6B3 /* App.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = App.swift; sourceTree = ""; }; C4811D2922D70F9A00B5F6B3 /* MainMenu.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainMenu.swift; sourceTree = ""; }; - C484437A2804BB560041A78A /* ValetProxyScanner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ValetProxyScanner.swift; sourceTree = ""; }; C48D0C9225CC804200CC7490 /* XibLoadable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XibLoadable.swift; sourceTree = ""; }; C48D6C6F279CD2AC00F26D7E /* PhpVersionNumber.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PhpVersionNumber.swift; sourceTree = ""; }; C48D6C73279CD3E400F26D7E /* PhpVersionNumberTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PhpVersionNumberTest.swift; sourceTree = ""; }; @@ -853,9 +839,9 @@ C4B97B77275CF1B5003F3378 /* App+ActivationPolicy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "App+ActivationPolicy.swift"; sourceTree = ""; }; C4B97B7A275CF20A003F3378 /* App+GlobalHotkey.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "App+GlobalHotkey.swift"; sourceTree = ""; }; C4BF56AA2949381100379603 /* FakeValetInteractor.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FakeValetInteractor.swift; sourceTree = ""; }; - C4C0E8DE27F88AEB002D32A9 /* FakeSiteScanner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FakeSiteScanner.swift; sourceTree = ""; }; - C4C0E8E127F88B13002D32A9 /* ValetSiteScanner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ValetSiteScanner.swift; sourceTree = ""; }; - C4C0E8E627F88B41002D32A9 /* ProxyScanner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProxyScanner.swift; sourceTree = ""; }; + C4C0E8DE27F88AEB002D32A9 /* FakeDomainScanner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FakeDomainScanner.swift; sourceTree = ""; }; + C4C0E8E127F88B13002D32A9 /* ValetDomainScanner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ValetDomainScanner.swift; sourceTree = ""; }; + C4C0E8E627F88B41002D32A9 /* DomainScanner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DomainScanner.swift; sourceTree = ""; }; C4C0E8E927F88B80002D32A9 /* ValetProxy+Fake.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "ValetProxy+Fake.swift"; sourceTree = ""; }; C4C1019A27C65C6F001FACC2 /* Process.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Process.swift; sourceTree = ""; }; C4C3643828AE4FCE00C0770E /* StatusMenu+Items.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "StatusMenu+Items.swift"; sourceTree = ""; }; @@ -872,7 +858,6 @@ C4CE3BB727B31F2E0086CA49 /* MainMenu+Switcher.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "MainMenu+Switcher.swift"; sourceTree = ""; }; C4CE3BB927B31F670086CA49 /* ComposerWindow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ComposerWindow.swift; sourceTree = ""; }; C4D36600291132B7006BD146 /* ValetScanners.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ValetScanners.swift; sourceTree = ""; }; - C4D366052911331E006BD146 /* EmptyProxyScanner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptyProxyScanner.swift; sourceTree = ""; }; C4D3660A29113F20006BD146 /* System.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = System.swift; sourceTree = ""; }; C4D3660F291140BE006BD146 /* TestableFileSystemTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TestableFileSystemTest.swift; sourceTree = ""; }; C4D36614291160A1006BD146 /* WIP.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WIP.swift; sourceTree = ""; }; @@ -1405,8 +1390,8 @@ isa = PBXGroup; children = ( C4AF9F792754499000D44ED0 /* Valet.swift */, - C4D36600291132B7006BD146 /* ValetScanners.swift */, C40175B629030F7A00763A68 /* Domains */, + C4EF72C9294BC6E60088B538 /* Scanners */, C4C0E8D927F887BD002D32A9 /* Proxies */, C4C0E8D827F887A5002D32A9 /* Sites */, ); @@ -1514,7 +1499,6 @@ children = ( C4205A7D27F4D21800191A39 /* ValetProxy.swift */, C4C0E8E927F88B80002D32A9 /* ValetProxy+Fake.swift */, - C4C0E8E527F88B36002D32A9 /* ProxyScanner */, ); path = Proxies; sourceTree = ""; @@ -1530,23 +1514,10 @@ C4C0E8E427F88B1F002D32A9 /* SiteScanner */ = { isa = PBXGroup; children = ( - C41C02A527E60D7A009F26CB /* SiteScanner.swift */, - C4C0E8E127F88B13002D32A9 /* ValetSiteScanner.swift */, - C4C0E8DE27F88AEB002D32A9 /* FakeSiteScanner.swift */, ); path = SiteScanner; sourceTree = ""; }; - C4C0E8E527F88B36002D32A9 /* ProxyScanner */ = { - isa = PBXGroup; - children = ( - C4C0E8E627F88B41002D32A9 /* ProxyScanner.swift */, - C484437A2804BB560041A78A /* ValetProxyScanner.swift */, - C4D366052911331E006BD146 /* EmptyProxyScanner.swift */, - ); - path = ProxyScanner; - sourceTree = ""; - }; C4C1019727C65A11001FACC2 /* Parsers */ = { isa = PBXGroup; children = ( @@ -1673,6 +1644,17 @@ path = SwiftUI; sourceTree = ""; }; + C4EF72C9294BC6E60088B538 /* Scanners */ = { + isa = PBXGroup; + children = ( + C4D36600291132B7006BD146 /* ValetScanners.swift */, + C4C0E8E627F88B41002D32A9 /* DomainScanner.swift */, + C4C0E8E127F88B13002D32A9 /* ValetDomainScanner.swift */, + C4C0E8DE27F88AEB002D32A9 /* FakeDomainScanner.swift */, + ); + path = Scanners; + sourceTree = ""; + }; C4F30B01278E169B00755FCE /* Homebrew */ = { isa = PBXGroup; children = ( @@ -1963,7 +1945,6 @@ C48D6C70279CD2AC00F26D7E /* PhpVersionNumber.swift in Sources */, C4998F0A2617633900B2526E /* PreferencesWindowController.swift in Sources */, C46FA9882822EFDC00D78807 /* PhpConfigurationFile.swift in Sources */, - C4D366062911331E006BD146 /* EmptyProxyScanner.swift in Sources */, C4F8C0A422D4F12C002EFE61 /* DateExtension.swift in Sources */, C4AF9F7A2754499000D44ED0 /* Valet.swift in Sources */, C4C0E8EA27F88B80002D32A9 /* ValetProxy+Fake.swift in Sources */, @@ -1991,7 +1972,7 @@ C463E380284930EE00422731 /* PresetHelper.swift in Sources */, C41C02A927E61A65009F26CB /* ValetSite+Fake.swift in Sources */, C4E2E85C28FC282B003B070C /* TestableConfiguration.swift in Sources */, - C4C0E8DF27F88AEB002D32A9 /* FakeSiteScanner.swift in Sources */, + C4C0E8DF27F88AEB002D32A9 /* FakeDomainScanner.swift in Sources */, C44B3A4628E5C70100718CB1 /* TimeIntervalExtension.swift in Sources */, C44264BE2850B86C007400F1 /* SwiftUIHelper.swift in Sources */, C4E9D2C02878B336008FFDAD /* OnboardingView.swift in Sources */, @@ -2017,7 +1998,7 @@ C46EBC4A28DB966A007ACC74 /* TestableShell.swift in Sources */, C44C198D276E3A1C0072762D /* TerminalProgressWindowController.swift in Sources */, 54D9E0B827E4F51E003B9AD9 /* KeyCombo.swift in Sources */, - C4C0E8E727F88B41002D32A9 /* ProxyScanner.swift in Sources */, + C4C0E8E727F88B41002D32A9 /* DomainScanner.swift in Sources */, C4C3ED4327834C5200AB15D8 /* CustomPrefs.swift in Sources */, 54B48B5F275F66AE006D90C5 /* Application.swift in Sources */, C4B97B78275CF1B5003F3378 /* App+ActivationPolicy.swift in Sources */, @@ -2030,7 +2011,7 @@ C4F30B03278E16BA00755FCE /* HomebrewService.swift in Sources */, 54D9E0B427E4F51E003B9AD9 /* Key.swift in Sources */, C4297F7A28970D59004C4630 /* WarningView.swift in Sources */, - C4C0E8E227F88B13002D32A9 /* ValetSiteScanner.swift in Sources */, + C4C0E8E227F88B13002D32A9 /* ValetDomainScanner.swift in Sources */, C42F26732805B4B400938AC7 /* ValetListable.swift in Sources */, 5420395F2613607600FB00FA /* Preferences.swift in Sources */, C48D0C9325CC804200CC7490 /* XibLoadable.swift in Sources */, @@ -2051,7 +2032,6 @@ C4C8E81B276F54E5003AC782 /* PhpConfigWatcher.swift in Sources */, C417DC74277614690015E6EE /* Helpers.swift in Sources */, C415D3E82770F692005EF286 /* AppDelegate+InterApp.swift in Sources */, - C484437B2804BB560041A78A /* ValetProxyScanner.swift in Sources */, C41C1B3722B0097F00E7CF16 /* AppDelegate.swift in Sources */, C42759672627662800093CAE /* NSMenuExtension.swift in Sources */, C422DDAA28A2C49900CEAC97 /* WarningListView.swift in Sources */, @@ -2098,7 +2078,6 @@ C46FA23F246C358E00944F05 /* StringExtension.swift in Sources */, C42337A3281F19F000459A48 /* Xdebug.swift in Sources */, C4B97B75275CF08C003F3378 /* AppDelegate+MenuOutlets.swift in Sources */, - C41C02A627E60D7A009F26CB /* SiteScanner.swift in Sources */, C464ADAC275A7A3F003FCD53 /* DomainListWindowController.swift in Sources */, C4CB6E65292C362C002E9027 /* Homebrew.swift in Sources */, C464ADB2275A87CA003FCD53 /* DomainListCellProtocol.swift in Sources */, @@ -2123,14 +2102,12 @@ C471E83428F9BB650021E251 /* VersionExtractor.swift in Sources */, C471E83528F9BB650021E251 /* ValetProxy.swift in Sources */, C471E83628F9BB650021E251 /* ValetProxy+Fake.swift in Sources */, - C471E83728F9BB650021E251 /* ProxyScanner.swift in Sources */, - C471E83828F9BB650021E251 /* ValetProxyScanner.swift in Sources */, + C471E83728F9BB650021E251 /* DomainScanner.swift in Sources */, C471E83928F9BB650021E251 /* ValetSite.swift in Sources */, C471E83A28F9BB650021E251 /* ValetSite+Fake.swift in Sources */, - C471E83B28F9BB650021E251 /* SiteScanner.swift in Sources */, - C471E83C28F9BB650021E251 /* ValetSiteScanner.swift in Sources */, + C471E83C28F9BB650021E251 /* ValetDomainScanner.swift in Sources */, C4E2E86928FC3002003B070C /* Utility.swift in Sources */, - C471E83D28F9BB650021E251 /* FakeSiteScanner.swift in Sources */, + C471E83D28F9BB650021E251 /* FakeDomainScanner.swift in Sources */, C471E83F28F9BB650021E251 /* AppDelegate.swift in Sources */, C471E84028F9BB650021E251 /* AppDelegate+MenuOutlets.swift in Sources */, C4D36603291132B7006BD146 /* ValetScanners.swift in Sources */, @@ -2160,7 +2137,6 @@ C471E85628F9BB650021E251 /* DomainListCellProtocol.swift in Sources */, C4D36617291160A1006BD146 /* WIP.swift in Sources */, C471E85728F9BB650021E251 /* DomainListTLSCell.swift in Sources */, - C4D366082911331E006BD146 /* EmptyProxyScanner.swift in Sources */, C471E85828F9BB650021E251 /* DomainListNameCell.swift in Sources */, C471E85928F9BB650021E251 /* DomainListPhpCell.swift in Sources */, C471E85A28F9BB650021E251 /* DomainListTypeCell.swift in Sources */, @@ -2285,17 +2261,14 @@ C471E89528F9BB8F0021E251 /* MenuBarImageGenerator.swift in Sources */, C471E89628F9BB8F0021E251 /* PMWindowController.swift in Sources */, C471E89728F9BB8F0021E251 /* VersionExtractor.swift in Sources */, - C4D366092911331E006BD146 /* EmptyProxyScanner.swift in Sources */, C4E2E86728FC2F1B003B070C /* XCPMApplication.swift in Sources */, C471E89828F9BB8F0021E251 /* ValetProxy.swift in Sources */, C471E89928F9BB8F0021E251 /* ValetProxy+Fake.swift in Sources */, - C471E89A28F9BB8F0021E251 /* ProxyScanner.swift in Sources */, - C471E89B28F9BB8F0021E251 /* ValetProxyScanner.swift in Sources */, + C471E89A28F9BB8F0021E251 /* DomainScanner.swift in Sources */, C471E89C28F9BB8F0021E251 /* ValetSite.swift in Sources */, C471E89D28F9BB8F0021E251 /* ValetSite+Fake.swift in Sources */, - C471E89E28F9BB8F0021E251 /* SiteScanner.swift in Sources */, - C471E89F28F9BB8F0021E251 /* ValetSiteScanner.swift in Sources */, - C471E8A028F9BB8F0021E251 /* FakeSiteScanner.swift in Sources */, + C471E89F28F9BB8F0021E251 /* ValetDomainScanner.swift in Sources */, + C471E8A028F9BB8F0021E251 /* FakeDomainScanner.swift in Sources */, C471E8A228F9BB8F0021E251 /* AppDelegate.swift in Sources */, C471E8A328F9BB8F0021E251 /* AppDelegate+MenuOutlets.swift in Sources */, C471E8A428F9BB8F0021E251 /* AppDelegate+Notifications.swift in Sources */, @@ -2463,7 +2436,6 @@ C493084B279F331F009C240B /* AddSiteVC.swift in Sources */, C44A874928905BB000498BC4 /* ProgressVC.swift in Sources */, C4D9ADC0277610E1007277F4 /* PhpSwitcher.swift in Sources */, - C41C02AA27E61CA3009F26CB /* SiteScanner.swift in Sources */, C485707528BF454F00539B36 /* StatsView.swift in Sources */, C4080FFB27BD956700BF2C6B /* BetterAlertVC.swift in Sources */, C4F780CC25D80B75000DBC97 /* ActivePhpInstallation.swift in Sources */, @@ -2476,9 +2448,8 @@ C4F780CE25D80B75000DBC97 /* LocalNotification.swift in Sources */, C40C7F2927721FF600DDDCDC /* ActivePhpInstallation+Checks.swift in Sources */, C485707A28BF457800539B36 /* WarningListView.swift in Sources */, - C4C0E8E827F88B41002D32A9 /* ProxyScanner.swift in Sources */, + C4C0E8E827F88B41002D32A9 /* DomainScanner.swift in Sources */, C449B4F027EE7FB800C47E8A /* DomainListTLSCell.swift in Sources */, - C4D366072911331E006BD146 /* EmptyProxyScanner.swift in Sources */, C4FBFC532616485F00CDB8E1 /* PhpVersionDetectionTest.swift in Sources */, C43A8A2425D9D20D00591B77 /* HomebrewPackageTest.swift in Sources */, C485707928BF456C00539B36 /* ArrayExtension.swift in Sources */, @@ -2490,7 +2461,7 @@ C4AF9F7B2754499000D44ED0 /* Valet.swift in Sources */, C4C1019C27C65C6F001FACC2 /* Process.swift in Sources */, C4F780C025D80B6E000DBC97 /* Startup.swift in Sources */, - C4C0E8E327F88B13002D32A9 /* ValetSiteScanner.swift in Sources */, + C4C0E8E327F88B13002D32A9 /* ValetDomainScanner.swift in Sources */, C4CCBA6D275C567B008C7055 /* PMWindowController.swift in Sources */, C4B5635F276AB09000F12CCB /* VersionExtractor.swift in Sources */, C463E381284930EE00422731 /* PresetHelper.swift in Sources */, @@ -2531,7 +2502,6 @@ C40FE738282ABA4F00A302C2 /* AppVersion.swift in Sources */, C415D3E92770F692005EF286 /* AppDelegate+InterApp.swift in Sources */, C4E49DEE28F764A00026AC4E /* TestableCommand.swift in Sources */, - C484437C2804BB560041A78A /* ValetProxyScanner.swift in Sources */, C4AF9F78275447F100D44ED0 /* ValetConfigurationTest.swift in Sources */, C40175B92903108900763A68 /* ValetInteractor.swift in Sources */, C4CE3BBC27B324250086CA49 /* ComposerWindow.swift in Sources */, @@ -2579,7 +2549,7 @@ C40B24F227A310770018C7D2 /* Events.swift in Sources */, C44AD3F72912EF7100997FF4 /* RealFileSystemTest.swift in Sources */, C4F30B0A278E1A1A00755FCE /* ComposerJson.swift in Sources */, - C4C0E8E027F88AEB002D32A9 /* FakeSiteScanner.swift in Sources */, + C4C0E8E027F88AEB002D32A9 /* FakeDomainScanner.swift in Sources */, C4AF9F7D275454A900D44ED0 /* ValetVersionExtractorTest.swift in Sources */, C4B56362276AB0A500F12CCB /* VersionExtractorTest.swift in Sources */, C4B585452770FE3900DA4FBE /* RealCommand.swift in Sources */, diff --git a/phpmon/Common/Testables/TestableConfiguration.swift b/phpmon/Common/Testables/TestableConfiguration.swift index 9fccf70..4c05182 100644 --- a/phpmon/Common/Testables/TestableConfiguration.swift +++ b/phpmon/Common/Testables/TestableConfiguration.swift @@ -25,7 +25,7 @@ public struct TestableConfiguration: Codable { Log.info("Applying fake commands...") ActiveCommand.useTestable(commandOutput) Log.info("Applying fake scanner...") - ValetScanners.useFake() + ValetScanner.useFake() Log.info("Applying fake Valet domain interactor...") ValetInteractor.useFake() } diff --git a/phpmon/Domain/Integrations/Valet/Domains/FakeValetInteractor.swift b/phpmon/Domain/Integrations/Valet/Domains/FakeValetInteractor.swift index 12acd29..0dab7b4 100644 --- a/phpmon/Domain/Integrations/Valet/Domains/FakeValetInteractor.swift +++ b/phpmon/Domain/Integrations/Valet/Domains/FakeValetInteractor.swift @@ -23,8 +23,9 @@ class FakeValetInteractor: ValetInteractor { override func unlink(site: ValetSite) async throws { await delay(seconds: delayTime) - if let scanner = ValetScanners.siteScanner as? FakeSiteScanner { - scanner.fakes.removeAll { $0 === site } + + if let scanner = ValetScanner.active as? FakeDomainScanner { + scanner.sites.removeAll { $0 === site } } } @@ -44,6 +45,9 @@ class FakeValetInteractor: ValetInteractor { override func remove(proxy: ValetProxy) async throws { await delay(seconds: delayTime) - #warning("A fake proxy scanner needs to be added") + + if let scanner = ValetScanner.active as? FakeDomainScanner { + scanner.proxies.removeAll { $0 === proxy } + } } } diff --git a/phpmon/Domain/Integrations/Valet/Proxies/ProxyScanner/EmptyProxyScanner.swift b/phpmon/Domain/Integrations/Valet/Proxies/ProxyScanner/EmptyProxyScanner.swift deleted file mode 100644 index abfad2e..0000000 --- a/phpmon/Domain/Integrations/Valet/Proxies/ProxyScanner/EmptyProxyScanner.swift +++ /dev/null @@ -1,15 +0,0 @@ -// -// EmptyProxyScanner.swift -// PHP Monitor -// -// Created by Nico Verbruggen on 01/11/2022. -// Copyright © 2022 Nico Verbruggen. All rights reserved. -// - -import Foundation - -class EmptyProxyScanner: ProxyScanner { - func resolveProxies(directoryPath: String) -> [ValetProxy] { - return [] - } -} diff --git a/phpmon/Domain/Integrations/Valet/Proxies/ProxyScanner/ProxyScanner.swift b/phpmon/Domain/Integrations/Valet/Proxies/ProxyScanner/ProxyScanner.swift deleted file mode 100644 index a0e95e8..0000000 --- a/phpmon/Domain/Integrations/Valet/Proxies/ProxyScanner/ProxyScanner.swift +++ /dev/null @@ -1,15 +0,0 @@ -// -// ProxyScanner.swift -// PHP Monitor -// -// Created by Nico Verbruggen on 02/04/2022. -// Copyright © 2022 Nico Verbruggen. All rights reserved. -// - -import Foundation - -protocol ProxyScanner { - - func resolveProxies(directoryPath: String) -> [ValetProxy] - -} diff --git a/phpmon/Domain/Integrations/Valet/Proxies/ProxyScanner/ValetProxyScanner.swift b/phpmon/Domain/Integrations/Valet/Proxies/ProxyScanner/ValetProxyScanner.swift deleted file mode 100644 index b715fff..0000000 --- a/phpmon/Domain/Integrations/Valet/Proxies/ProxyScanner/ValetProxyScanner.swift +++ /dev/null @@ -1,29 +0,0 @@ -// -// ValetProxyScanner.swift -// PHP Monitor -// -// Created by Nico Verbruggen on 11/04/2022. -// Copyright © 2022 Nico Verbruggen. All rights reserved. -// - -import Foundation - -class ValetProxyScanner: ProxyScanner { - func resolveProxies(directoryPath: String) -> [ValetProxy] { - return try! FileManager - .default - .contentsOfDirectory(atPath: directoryPath) - .filter { - return !$0.starts(with: ".") - } - .compactMap { - return NginxConfigurationFile.from(filePath: "\(directoryPath)/\($0)") - } - .filter { - return $0.proxy != nil - } - .map { - return ValetProxy($0) - } - } -} diff --git a/phpmon/Domain/Integrations/Valet/Sites/SiteScanner/SiteScanner.swift b/phpmon/Domain/Integrations/Valet/Scanners/DomainScanner.swift similarity index 56% rename from phpmon/Domain/Integrations/Valet/Sites/SiteScanner/SiteScanner.swift rename to phpmon/Domain/Integrations/Valet/Scanners/DomainScanner.swift index 8ffbd67..a4a16d8 100644 --- a/phpmon/Domain/Integrations/Valet/Sites/SiteScanner/SiteScanner.swift +++ b/phpmon/Domain/Integrations/Valet/Scanners/DomainScanner.swift @@ -1,17 +1,25 @@ // -// ValetSiteScanner.swift +// DomainScanner.swift // PHP Monitor // -// Created by Nico Verbruggen on 19/03/2022. +// Created by Nico Verbruggen on 02/04/2022. // Copyright © 2022 Nico Verbruggen. All rights reserved. // import Foundation -protocol SiteScanner { +protocol DomainScanner { + + // MARK: - Sites + func resolveSiteCount(paths: [String]) -> Int func resolveSitesFrom(paths: [String]) -> [ValetSite] func resolveSite(path: String) -> ValetSite? + + // MARK: - Proxies + + func resolveProxies(directoryPath: String) -> [ValetProxy] + } diff --git a/phpmon/Domain/Integrations/Valet/Sites/SiteScanner/FakeSiteScanner.swift b/phpmon/Domain/Integrations/Valet/Scanners/FakeDomainScanner.swift similarity index 78% rename from phpmon/Domain/Integrations/Valet/Sites/SiteScanner/FakeSiteScanner.swift rename to phpmon/Domain/Integrations/Valet/Scanners/FakeDomainScanner.swift index f96f0c2..2f2342d 100644 --- a/phpmon/Domain/Integrations/Valet/Sites/SiteScanner/FakeSiteScanner.swift +++ b/phpmon/Domain/Integrations/Valet/Scanners/FakeDomainScanner.swift @@ -1,13 +1,14 @@ // -// FakeSiteScanner.swift +// FakeDomainScanner.swift // PHP Monitor // // Created by Nico Verbruggen on 02/04/2022. // Copyright © 2022 Nico Verbruggen. All rights reserved. // -class FakeSiteScanner: SiteScanner { - var fakes = [ +class FakeDomainScanner: DomainScanner { + + var sites: [ValetSite] = [ FakeValetSite(fakeWithName: "laravel", tld: "test", secure: true, path: "~/Code/laravel/framework", linked: true), @@ -27,15 +28,27 @@ class FakeSiteScanner: SiteScanner { path: "~/Sites/wordpress", linked: false, driver: "WordPress", constraint: "^7.4", isolated: "7.4") ] + var proxies: [ValetProxy] = [ + // TODO: Add new proxy here + ] + + // MARK: - Sites + func resolveSiteCount(paths: [String]) -> Int { - return fakes.count + return sites.count } func resolveSitesFrom(paths: [String]) -> [ValetSite] { - return fakes + return sites } func resolveSite(path: String) -> ValetSite? { return nil } + + // MARK: - Proxies + + func resolveProxies(directoryPath: String) -> [ValetProxy] { + return proxies + } } diff --git a/phpmon/Domain/Integrations/Valet/Sites/SiteScanner/ValetSiteScanner.swift b/phpmon/Domain/Integrations/Valet/Scanners/ValetDomainScanner.swift similarity index 77% rename from phpmon/Domain/Integrations/Valet/Sites/SiteScanner/ValetSiteScanner.swift rename to phpmon/Domain/Integrations/Valet/Scanners/ValetDomainScanner.swift index 6fe84d3..5cc0e98 100644 --- a/phpmon/Domain/Integrations/Valet/Sites/SiteScanner/ValetSiteScanner.swift +++ b/phpmon/Domain/Integrations/Valet/Scanners/ValetDomainScanner.swift @@ -1,5 +1,5 @@ // -// ValetSiteScanner.swift +// ValetDomainScanner.swift // PHP Monitor // // Created by Nico Verbruggen on 02/04/2022. @@ -8,7 +8,10 @@ import Foundation -class ValetSiteScanner: SiteScanner { +class ValetDomainScanner: DomainScanner { + + // MARK: - Sites + func resolveSiteCount(paths: [String]) -> Int { return paths.map { path in @@ -76,4 +79,24 @@ class ValetSiteScanner: SiteScanner { return (FileSystem.isDirectory(siteDir) || FileSystem.isSymlink(siteDir)) } + + // MARK: - Proxies + + func resolveProxies(directoryPath: String) -> [ValetProxy] { + return try! FileManager + .default + .contentsOfDirectory(atPath: directoryPath) + .filter { + return !$0.starts(with: ".") + } + .compactMap { + return NginxConfigurationFile.from(filePath: "\(directoryPath)/\($0)") + } + .filter { + return $0.proxy != nil + } + .map { + return ValetProxy($0) + } + } } diff --git a/phpmon/Domain/Integrations/Valet/Scanners/ValetScanners.swift b/phpmon/Domain/Integrations/Valet/Scanners/ValetScanners.swift new file mode 100644 index 0000000..6db3a1f --- /dev/null +++ b/phpmon/Domain/Integrations/Valet/Scanners/ValetScanners.swift @@ -0,0 +1,19 @@ +// +// Valet+Scanners.swift +// PHP Monitor +// +// Created by Nico Verbruggen on 01/11/2022. +// Copyright © 2022 Nico Verbruggen. All rights reserved. +// + +import Foundation + +class ValetScanner { + + static var active: DomainScanner = ValetDomainScanner() + + public static func useFake() { + ValetScanner.active = FakeDomainScanner() + } + +} diff --git a/phpmon/Domain/Integrations/Valet/Valet.swift b/phpmon/Domain/Integrations/Valet/Valet.swift index 83dca03..e6f422b 100644 --- a/phpmon/Domain/Integrations/Valet/Valet.swift +++ b/phpmon/Domain/Integrations/Valet/Valet.swift @@ -49,7 +49,7 @@ class Valet { public func checkForMarketingMode() { if ProcessInfo.processInfo.environment["PHPMON_MARKETING_MODE"] != nil { Log.info("Using a fake list of sites for Marketing Mode!") - ValetScanners.useFake() + ValetScanner.useFake() } } @@ -188,8 +188,7 @@ class Valet { Returns a count of how many sites are linked and parked. */ private func countPaths() -> Int { - return ValetScanners.siteScanner - .resolveSiteCount(paths: config.paths) + return ValetScanner.active.resolveSiteCount(paths: config.paths) } /** @@ -198,19 +197,19 @@ class Valet { private func resolvePaths() { isBusy = true - sites = ValetScanners.siteScanner + sites = ValetScanner.active .resolveSitesFrom(paths: config.paths) .sorted { $0.absolutePath < $1.absolutePath } - proxies = ValetScanners.proxyScanner + proxies = ValetScanner.active .resolveProxies( directoryPath: "~/.config/valet/Nginx".replacingTildeWithHomeDirectory ) if let defaultPath = Valet.shared.config.defaultSite, - let site = ValetSiteScanner().resolveSite(path: defaultPath) { + let site = ValetScanner.active.resolveSite(path: defaultPath) { sites.insert(site, at: 0) } diff --git a/phpmon/Domain/Integrations/Valet/ValetScanners.swift b/phpmon/Domain/Integrations/Valet/ValetScanners.swift deleted file mode 100644 index 58b5e93..0000000 --- a/phpmon/Domain/Integrations/Valet/ValetScanners.swift +++ /dev/null @@ -1,21 +0,0 @@ -// -// Valet+Scanners.swift -// PHP Monitor -// -// Created by Nico Verbruggen on 01/11/2022. -// Copyright © 2022 Nico Verbruggen. All rights reserved. -// - -import Foundation - -class ValetScanners { - - static var siteScanner: SiteScanner = ValetSiteScanner() - static var proxyScanner: ProxyScanner = ValetProxyScanner() - - public static func useFake() { - ValetScanners.siteScanner = FakeSiteScanner() - ValetScanners.proxyScanner = EmptyProxyScanner() - } - -}