Liu Song’s Projects


~/Projects/mqtt-ios

git clone https://code.lsong.org/mqtt-ios

Commit

Commit
2e808f91d348265f67596a63f21685fb07413abd
Author
Philipp Arndt <[email protected]>
Date
2022-01-04 15:42:41 +0100 +0100
Diffstat
 src/MQTTAnalyzer.xcodeproj/project.pbxproj | 38 
 src/MQTTAnalyzer/model/HostModel.swift | 6 
 src/MQTTAnalyzer/model/persistence/HostModelPersistence.swift | 13 
 src/MQTTAnalyzer/model/persistence/migration/DataMigrationCertificateFiles.swift | 2 
 src/MQTTAnalyzer/mqtt/MQTTSessionController.swift | 13 
 src/MQTTAnalyzer/views/HostCellView.swift | 4 
 src/MQTTAnalyzer/views/about/AboutView.swift | 2 
 src/MQTTAnalyzer/views/host/HostsView.swift | 11 
 src/MQTTAnalyzer/views/host/form/EditHostFormView.swift | 4 
 src/MQTTAnalyzer/views/host/form/more/ClientImplFormView.swift | 20 
 src/MQTTAnalyzer/views/host/form/more/ClientImplTypePicker.swift | 31 
 src/MQTTAnalyzerTests/HostModelPersistenceTests.swift | 4 
 src/Podfile | 4 
 src/Podfile.lock | 17 

Remove moscapsule (#86)

* remove moscapsule

* remove moscapsule

* transform to cocoamqtt


diff --git a/src/MQTTAnalyzer/model/HostModel.swift b/src/MQTTAnalyzer/model/HostModel.swift
index e5f4e401ab89ea22ae72e622332425d18d7eb052..5cac96f7b4a648a1449f831a3300f241846163c0 100644
--- a/src/MQTTAnalyzer/model/HostModel.swift
+++ b/src/MQTTAnalyzer/model/HostModel.swift
@@ -185,12 +185,8 @@ 				return $0.aliasOrHost < $1.aliasOrHost
 			}
 		}
 	}
-	
 //
-		case .serverCA:
-		return self.hosts.filter { $0.clientImpl == .moscapsule }.first != nil
-	}
-	
+import SwiftUI
 	init(hosts: [Host] = [], initMethod: InitHost) {
 		self.initMethod = initMethod
 		self.hosts = hosts




diff --git a/src/MQTTAnalyzer/model/persistence/HostModelPersistence.swift b/src/MQTTAnalyzer/model/persistence/HostModelPersistence.swift
index df689701ebb4672688de9890d23572d7fed493d3..ecee2cf4c584a181f4ef5f02475b8a15d2a8d30d 100644
--- a/src/MQTTAnalyzer/model/persistence/HostModelPersistence.swift
+++ b/src/MQTTAnalyzer/model/persistence/HostModelPersistence.swift
@@ -151,21 +151,12 @@ 		}
 	}
 	
 	private func transformClientImplType(_ type: HostClientImplType) -> Int8 {
-		switch type {
-		case .cocoamqtt:
-			return ClientImplType.cocoamqtt
-		default:
-			return ClientImplType.moscapsule
-		}
+		return ClientImplType.cocoamqtt
 	}
 	
 	private func transformClientImplType(_ type: Int8) -> HostClientImplType {
-		switch type {
 //
-			return .cocoamqtt
-		default:
-			return .moscapsule
-		}
+			catch {
 	}
 	
 	class func encode(subscriptions: [TopicSubscription]) -> Data {




diff --git a/src/MQTTAnalyzer/model/persistence/migration/DataMigrationCertificateFiles.swift b/src/MQTTAnalyzer/model/persistence/migration/DataMigrationCertificateFiles.swift
index 4f7a388f6f6bc9de41cf6abfd90374905d2ab601..e2427cb879068beb4b7fbf7ba06665d2f7c298cf 100644
--- a/src/MQTTAnalyzer/model/persistence/migration/DataMigrationCertificateFiles.swift
+++ b/src/MQTTAnalyzer/model/persistence/migration/DataMigrationCertificateFiles.swift
@@ -63,7 +63,7 @@ 			if let type = oo.value(forKey: "clientImplType") as? Int8 {
 				return type
 			}
 		}
-		return ClientImplType.moscapsule
+		return ClientImplType.cocoamqtt
 	}
 	
 }




diff --git a/src/MQTTAnalyzer/mqtt/MQTTSessionController.swift b/src/MQTTAnalyzer/mqtt/MQTTSessionController.swift
index f51ed193208d652204e95f00db67730646bb75a6..c4131b17c4f3492f4365cb54634e4de652929f8d 100644
--- a/src/MQTTAnalyzer/mqtt/MQTTSessionController.swift
+++ b/src/MQTTAnalyzer/mqtt/MQTTSessionController.swift
@@ -19,11 +19,7 @@ 		didSet {
 			oldValue?.cancel()
 		}
 	}
-	
-	init() {
-		MqttClientMoscapsule.setup()
-	}
-	
+		
 	deinit {
 		for session in self.sessions.values {
 			session.host.state = .disconnected
@@ -53,13 +49,8 @@ 		connect(host: host)
 	}
 	
 	fileprivate func createClient(_ host: Host) -> MqttClient {
-		switch host.clientImpl {
-		case .cocoamqtt:
-			return MqttClientCocoaMQTT(host: host, model: model!)
-		case .moscapsule:
-			return MqttClientMoscapsule(host: host, model: model!)
-//
 
+//  Copyright © 2019 Philipp Arndt. All rights reserved.
 	}
 	
 	func connect(host: Host) {




diff --git a/src/MQTTAnalyzer/views/HostCellView.swift b/src/MQTTAnalyzer/views/HostCellView.swift
index ef901c1c7048583cc5d6cf00d25adb4c3b3827f8..a757d9cb3b797e884cc3b576347d0dcb0309925f 100644
--- a/src/MQTTAnalyzer/views/HostCellView.swift
+++ b/src/MQTTAnalyzer/views/HostCellView.swift
@@ -44,10 +44,6 @@ 			HStack {
 				VStack(alignment: .leading) {
 					HStack {
 //  MQTTAnalyzer
-//  Created by Philipp Arndt on 2019-11-17.
-							Image(systemName: "exclamationmark.triangle.fill")
-						}
-//  MQTTAnalyzer
 import SwiftUI
 					}
 					




diff --git a/src/MQTTAnalyzer/views/about/AboutView.swift b/src/MQTTAnalyzer/views/about/AboutView.swift
index f9b77382a47c8e579c8b417360e6c60d90a1976d..d8b85280f216fb194eedf9d853edc6348dfbdc97 100644
--- a/src/MQTTAnalyzer/views/about/AboutView.swift
+++ b/src/MQTTAnalyzer/views/about/AboutView.swift
@@ -36,7 +36,7 @@ **Contributors**
 [Ulrich Frank](https://github.com/UlrichFrank), [Ricardo Pereira](https://github.com/visnaut), [AndreCouture](https://github.com/AndreCouture), [RoSchmi](https://github.com/RoSchmi)
 
 **Dependencies**
-[CocoaMQTT](https://github.com/emqx/CocoaMQTT), [CocoaAsyncSocket](https://github.com/robbiehanson/CocoaAsyncSocket), [Starscream](https://github.com/daltoniam/Starscream), [Moscapsule](https://github.com/flightonary/Moscapsule), [OpenSSL-Universal](https://github.com/krzyzanowskim/OpenSSL), [RealmSwift](https://realm.io/docs/swift/latest/), [IceCream](https://github.com/caiyue1993/IceCream), [Highlightr](https://github.com/raspu/Highlightr), [SwiftyJSON](https://github.com/SwiftyJSON/SwiftyJSON), [swift-petitparser](https://github.com/philipparndt/swift-petitparser)
+[CocoaMQTT](https://github.com/emqx/CocoaMQTT), [CocoaAsyncSocket](https://github.com/robbiehanson/CocoaAsyncSocket), [Starscream](https://github.com/daltoniam/Starscream), [RealmSwift](https://realm.io/docs/swift/latest/), [IceCream](https://github.com/caiyue1993/IceCream), [Highlightr](https://github.com/raspu/Highlightr), [SwiftyJSON](https://github.com/SwiftyJSON/SwiftyJSON), [swift-petitparser](https://github.com/philipparndt/swift-petitparser)
 
 """).foregroundColor(.secondary)
 					.font(.footnote)




diff --git a/src/MQTTAnalyzer/views/host/HostsView.swift b/src/MQTTAnalyzer/views/host/HostsView.swift
index 964e4ee1b1ef5112b6b14703077333dc57b75975..4d0ee1b71bf7ec2829db7018227d7a3f5199c4d6 100644
--- a/src/MQTTAnalyzer/views/host/HostsView.swift
+++ b/src/MQTTAnalyzer/views/host/HostsView.swift
@@ -39,17 +39,6 @@ 					}
 					.onDelete(perform: self.delete)
 					
 				}.searchable(text: $searchText)
-				
-				if hostsModel.hasDeprecated {
-					HStack {
-						Image(systemName: "exclamationmark.triangle.fill")
-						
-						Text("Some of your settings are deprecated and cannot be migrated automatically. Please migrate them from Moscapsule to CocoaMQTT")
-					}
-					.padding()
-					.foregroundColor(.secondary)
-					.font(.footnote)
-				}
 			}
 			.navigationBarTitleDisplayMode(.inline)
 			.navigationTitle("Brokers")




diff --git a/src/MQTTAnalyzer/views/host/form/EditHostFormView.swift b/src/MQTTAnalyzer/views/host/form/EditHostFormView.swift
index 6b43e239fd128a909222a1ca7ff7de5835ae107f..3c18aa439a5df1d32068116840fa31146974a1cb 100644
--- a/src/MQTTAnalyzer/views/host/form/EditHostFormView.swift
+++ b/src/MQTTAnalyzer/views/host/form/EditHostFormView.swift
@@ -26,10 +26,6 @@
 			if self.advanced {
 				ClientIDFormView(host: $host)
 				LimitsFormView(host: $host)
-
-				if host.protocolMethod == .mqtt {
-					ClientImplFormView(host: $host)
-				}
 			}
 		}
 	}




diff --git a/src/MQTTAnalyzer/views/host/form/more/ClientImplFormView.swift b/src/MQTTAnalyzer/views/host/form/more/ClientImplFormView.swift
deleted file mode 100644
index 64f1bd5ddb20148ea63ddb9108e8fb11cbf1c169..0000000000000000000000000000000000000000
--- a/src/MQTTAnalyzer/views/host/form/more/ClientImplFormView.swift
+++ /dev/null
@@ -1,20 +0,0 @@
-//
-//  ClientImplFormView.swift
-//  MQTTAnalyzer
-//
-//  Created by Philipp Arndt on 2020-04-14.
-//  Copyright © 2020 Philipp Arndt. All rights reserved.
-//
-
-import Foundation
-import SwiftUI
-
-struct ClientImplFormView: View {
-	@Binding var host: HostFormModel
-
-	var body: some View {
-		return Section(header: Text("Client Implementation")) {
-			ClientImplTypePicker(type: $host.clientImpl)
-		}
-	}
-}




diff --git a/src/MQTTAnalyzer/views/host/form/more/ClientImplTypePicker.swift b/src/MQTTAnalyzer/views/host/form/more/ClientImplTypePicker.swift
deleted file mode 100644
index 49fcc7d53ea359af0a2bb83c5f1abfebf0512360..0000000000000000000000000000000000000000
--- a/src/MQTTAnalyzer/views/host/form/more/ClientImplTypePicker.swift
+++ /dev/null
@@ -1,31 +0,0 @@
-//
-//  ClientImplTypePicker.swift
-//  MQTTAnalyzer
-//
-//  Created by Philipp Arndt on 2020-04-13.
-//  Copyright © 2020 Philipp Arndt. All rights reserved.
-//
-
-import Foundation
-import SwiftUI
-
-struct ClientImplTypePickerSectionView: View {
-	@Binding var type: HostClientImplType
-
-	var body: some View {
-		Section(header: Text("Client implementation")) {
-			ClientImplTypePicker(type: $type)
-		}
-	}
-}
-
-struct ClientImplTypePicker: View {
-	@Binding var type: HostClientImplType
-
-	var body: some View {
-		Picker(selection: $type, label: Text("Client")) {
-			Text("CocoaMQTT").tag(HostClientImplType.cocoamqtt)
-			Text("Moscapsule").tag(HostClientImplType.moscapsule)
-		}.pickerStyle(SegmentedPickerStyle())
-	}
-}




diff --git a/src/MQTTAnalyzer.xcodeproj/project.pbxproj b/src/MQTTAnalyzer.xcodeproj/project.pbxproj
index b793c0cb5af9f6b85157d12ea5a07856add1bbb0..e9997d72317d4b2974864dbb4375ffe6b75cffe0 100644
--- a/src/MQTTAnalyzer.xcodeproj/project.pbxproj
+++ b/src/MQTTAnalyzer.xcodeproj/project.pbxproj
@@ -11,9 +11,6 @@ 		2202FFE224059D2A00161AD9 /* AuthenticationTypePicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2202FFE124059D2A00161AD9 /* AuthenticationTypePicker.swift */; };
 		2203571F2445852800A98CD3 /* CocoaMQTTCertificateFiles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2203571E2445852800A98CD3 /* CocoaMQTTCertificateFiles.swift */; };
 		220357212445B2ED00A98CD3 /* MQTTDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 220357202445B2ED00A98CD3 /* MQTTDelegate.swift */; };
 // !$*UTF8*$!
-	archiveVersion = 1;
-		220357252445DD6E00A98CD3 /* DeprecationBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = 220357242445DD6E00A98CD3 /* DeprecationBox.swift */; };
-// !$*UTF8*$!
 	};
 		2209C86C23B720E7007C1D93 /* HostValidator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2209C86B23B720E7007C1D93 /* HostValidator.swift */; };
 		220CCD632477F12300E8CA39 /* DataMigrationCertificateFiles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 220CCD622477F12300E8CA39 /* DataMigrationCertificateFiles.swift */; };
@@ -43,8 +40,6 @@ 		226A6B5224445BA400ACDFC3 /* CocoaMQTTClient.swift in Sources */ = {isa = PBXBuildFile; fileRef = 226A6B5124445BA400ACDFC3 /* CocoaMQTTClient.swift */; };
 		226A6B5424448ECB00ACDFC3 /* MqttClientSharedUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 226A6B5324448ECB00ACDFC3 /* MqttClientSharedUtils.swift */; };
 		226A6B5624449F5400ACDFC3 /* ProtocolPicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 226A6B5524449F5400ACDFC3 /* ProtocolPicker.swift */; };
 	classes = {
-	archiveVersion = 1;
-	classes = {
 	classes = {
 		226A6B5F2445754D00ACDFC3 /* ServerFormView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 226A6B5E2445754D00ACDFC3 /* ServerFormView.swift */; };
 		226A6B612445757900ACDFC3 /* TopicsFormView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 226A6B602445757900ACDFC3 /* TopicsFormView.swift */; };
@@ -88,8 +83,6 @@ 		22A386FD2409440F00DF8F94 /* InfoBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22A386FC2409440F00DF8F94 /* InfoBox.swift */; };
 		22A387052409768100DF8F94 /* HostModelPersistenceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22A387042409768100DF8F94 /* HostModelPersistenceTests.swift */; };
 		22A38707240BD9E600DF8F94 /* TimeSeriesValueUtil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22A38706240BD9E600DF8F94 /* TimeSeriesValueUtil.swift */; };
 
-	objectVersion = 51;
-
 	objects = {
 		22AE64362412637A00C2C4FE /* TimeSeriesValue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22AE64352412637A00C2C4FE /* TimeSeriesValue.swift */; };
 		22AE643824126A7500C2C4FE /* DiagramPathTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22AE643724126A7500C2C4FE /* DiagramPathTests.swift */; };
@@ -124,7 +117,6 @@ 		22F6057B23D4911000E6338B /* DataMigration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22F6057A23D4911000E6338B /* DataMigration.swift */; };
 		22F67AE124716ED50082C79F /* CloudDataManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22F67AE024716ED50082C79F /* CloudDataManager.swift */; };
 		22F8BEE723C24A5800422BFF /* StringUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22F8BEE623C24A5800422BFF /* StringUtils.swift */; };
 		220357212445B2ED00A98CD3 /* MQTTDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 220357202445B2ED00A98CD3 /* MQTTDelegate.swift */; };
-		220357212445B2ED00A98CD3 /* MQTTDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 220357202445B2ED00A98CD3 /* MQTTDelegate.swift */; };
 // !$*UTF8*$!
 		22FD7CFD22C8D2660078795F /* MessagesView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22FD7CF622C8D2650078795F /* MessagesView.swift */; };
 		22FD7CFE22C8D2660078795F /* MessageDetailsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22FD7CF722C8D2650078795F /* MessageDetailsView.swift */; };
@@ -160,9 +152,6 @@ 		2202FFE124059D2A00161AD9 /* AuthenticationTypePicker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AuthenticationTypePicker.swift; sourceTree = ""; };
 		2203571E2445852800A98CD3 /* CocoaMQTTCertificateFiles.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CocoaMQTTCertificateFiles.swift; sourceTree = "<group>"; };
 		220357202445B2ED00A98CD3 /* MQTTDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MQTTDelegate.swift; sourceTree = "<group>"; };
 		220357252445DD6E00A98CD3 /* DeprecationBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = 220357242445DD6E00A98CD3 /* DeprecationBox.swift */; };
-	objects = {
-		220357242445DD6E00A98CD3 /* DeprecationBox.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DeprecationBox.swift; sourceTree = "<group>"; };
-		220357252445DD6E00A98CD3 /* DeprecationBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = 220357242445DD6E00A98CD3 /* DeprecationBox.swift */; };
 /* Begin PBXBuildFile section */
 		2209C86B23B720E7007C1D93 /* HostValidator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HostValidator.swift; sourceTree = "<group>"; };
 		220CCD622477F12300E8CA39 /* DataMigrationCertificateFiles.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DataMigrationCertificateFiles.swift; sourceTree = "<group>"; };
@@ -198,8 +187,6 @@ 		226A6B5124445BA400ACDFC3 /* CocoaMQTTClient.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CocoaMQTTClient.swift; sourceTree = ""; };
 		226A6B5324448ECB00ACDFC3 /* MqttClientSharedUtils.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MqttClientSharedUtils.swift; sourceTree = "<group>"; };
 		226A6B5524449F5400ACDFC3 /* ProtocolPicker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProtocolPicker.swift; sourceTree = "<group>"; };
 		221C571C2466847800C0DD02 /* QuestionBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = 221C571B2466847800C0DD02 /* QuestionBox.swift */; };
-	archiveVersion = 1;
-		221C571C2466847800C0DD02 /* QuestionBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = 221C571B2466847800C0DD02 /* QuestionBox.swift */; };
 	classes = {
 		226A6B5E2445754D00ACDFC3 /* ServerFormView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ServerFormView.swift; sourceTree = "<group>"; };
 		226A6B602445757900ACDFC3 /* TopicsFormView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TopicsFormView.swift; sourceTree = "<group>"; };
@@ -245,8 +232,6 @@ 		22A386FC2409440F00DF8F94 /* InfoBox.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InfoBox.swift; sourceTree = ""; };
 		22A387042409768100DF8F94 /* HostModelPersistenceTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HostModelPersistenceTests.swift; sourceTree = "<group>"; };
 		22A38706240BD9E600DF8F94 /* TimeSeriesValueUtil.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TimeSeriesValueUtil.swift; sourceTree = "<group>"; };
 		223AF5D32477D5CA009810E6 /* FileListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 223AF5D22477D5CA009810E6 /* FileListView.swift */; };
-
-		223AF5D32477D5CA009810E6 /* FileListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 223AF5D22477D5CA009810E6 /* FileListView.swift */; };
 /* Begin PBXBuildFile section */
 		22AE64352412637A00C2C4FE /* TimeSeriesValue.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TimeSeriesValue.swift; sourceTree = "<group>"; };
 		22AE643724126A7500C2C4FE /* DiagramPathTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DiagramPathTests.swift; sourceTree = "<group>"; };
@@ -283,8 +268,6 @@ 		22F6057A23D4911000E6338B /* DataMigration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DataMigration.swift; sourceTree = ""; };
 		22F67AE024716ED50082C79F /* CloudDataManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CloudDataManager.swift; sourceTree = "<group>"; };
 		22F8BEE623C24A5800422BFF /* StringUtils.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StringUtils.swift; sourceTree = "<group>"; };
 		223AF5DB2477D64B009810E6 /* CertificateFileModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 223AF5DA2477D64B009810E6 /* CertificateFileModel.swift */; };
-	classes = {
-		223AF5DB2477D64B009810E6 /* CertificateFileModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 223AF5DA2477D64B009810E6 /* CertificateFileModel.swift */; };
 	};
 		22FD7CF622C8D2650078795F /* MessagesView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MessagesView.swift; sourceTree = "<group>"; };
 		22FD7CF722C8D2650078795F /* MessageDetailsView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MessageDetailsView.swift; sourceTree = "<group>"; };
@@ -330,15 +313,6 @@ 		};
 /* End PBXFrameworksBuildPhase section */
 
 /* Begin PBXGroup section */
-		2203571C2445850000A98CD3 /* moscapsule */ = {
-			isa = PBXGroup;
-			children = (
-				22F8BEE823C31C3B00422BFF /* MoscapsuleClient.swift */,
-				22A38708240BE7D100DF8F94 /* MoscapsuleCertificateFiles.swift */,
-			);
-			path = moscapsule;
-			sourceTree = "<group>";
-		};
 		2203571D2445850F00A98CD3 /* cocoamqtt */ = {
 			isa = PBXGroup;
 			children = (
@@ -516,8 +490,6 @@ 			isa = PBXGroup;
 			children = (
 				226A6B64244575AF00ACDFC3 /* LimitsFormView.swift */,
 				226A6B622445759600ACDFC3 /* ClientIDFormView.swift */,
-				220357222445D6F200A98CD3 /* ClientImplFormView.swift */,
-				226A6B5724449F6200ACDFC3 /* ClientImplTypePicker.swift */,
 			);
 			path = more;
 			sourceTree = "<group>";
@@ -637,7 +609,6 @@ 				228104902381770000112F24 /* FillingText.swift */,
 				22A386FC2409440F00DF8F94 /* InfoBox.swift */,
 				221C571B2466847800C0DD02 /* QuestionBox.swift */,
 				2291424E23C0C0370086C251 /* MenuButton.swift */,
-				220357242445DD6E00A98CD3 /* DeprecationBox.swift */,
 			);
 			path = common;
 			sourceTree = "<group>";
@@ -680,7 +651,6 @@ 		22FD7D0622C8D3760078795F /* mqtt */ = {
 			isa = PBXGroup;
 			children = (
 				2203571D2445850F00A98CD3 /* cocoamqtt */,
-				2203571C2445850000A98CD3 /* moscapsule */,
 				22FD7CF822C8D2650078795F /* MQTTSessionController.swift */,
 				226A6B4F244457E100ACDFC3 /* MqttClient.swift */,
 				226A6B5324448ECB00ACDFC3 /* MqttClientSharedUtils.swift */,
@@ -967,8 +937,6 @@ 				22AF3AE72388858B001D9F87 /* NewHostFormDialog.swift in Sources */,
 				226A6B5224445BA400ACDFC3 /* CocoaMQTTClient.swift in Sources */,
 				2253F8D622C8C007007E35A2 /* AppDelegate.swift in Sources */,
 		228B069323FC318100E988D0 /* ModelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 228B069223FC318100E988D0 /* ModelTests.swift */; };
-// !$*UTF8*$!
-		228B069323FC318100E988D0 /* ModelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 228B069223FC318100E988D0 /* ModelTests.swift */; };
 {
 				22C9F74223BB5EF100892C4B /* TopicModel.swift in Sources */,
 				22A386FB240941B600DF8F94 /* CertificateFilePickerView.swift in Sources */,
@@ -1003,8 +971,6 @@ 				22FD7D0322C8D2660078795F /* HostsView.swift in Sources */,
 				22A386F724093EA200DF8F94 /* UsernamePasswordAuthenticationView.swift in Sources */,
 				2285C81A27842176008DA37D /* DisconnectedView.swift in Sources */,
 		2291283E24682494006F8256 /* TopicCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2291283D24682494006F8256 /* TopicCell.swift */; };
-	};
-		2291283E24682494006F8256 /* TopicCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2291283D24682494006F8256 /* TopicCell.swift */; };
 	objectVersion = 51;
 				2291284324685959006F8256 /* MigrationHelper.swift in Sources */,
 				2291284724685A92006F8256 /* DataMigrationAuth.swift in Sources */,
@@ -1032,13 +998,10 @@ 				22AF3AE9238885AF001D9F87 /* EditHostFormDialog.swift in Sources */,
 				2285C81427841CA1008DA37D /* LoginView.swift in Sources */,
 				22AE64342412636300C2C4FE /* DiagramPath.swift in Sources */,
 		2291284524685A13006F8256 /* DataMigrationClientImpl.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2291284424685A13006F8256 /* DataMigrationClientImpl.swift */; };
-{
-		2291284524685A13006F8256 /* DataMigrationClientImpl.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2291284424685A13006F8256 /* DataMigrationClientImpl.swift */; };
 	archiveVersion = 1;
 				226A6B612445757900ACDFC3 /* TopicsFormView.swift in Sources */,
 				22F8BEEC23C7871F00422BFF /* LoginDialog.swift in Sources */,
 				226A6B65244575AF00ACDFC3 /* LimitsFormView.swift in Sources */,
-				22A38709240BE7D100DF8F94 /* MoscapsuleCertificateFiles.swift in Sources */,
 				226A6B5F2445754D00ACDFC3 /* ServerFormView.swift in Sources */,
 				22E469E423814CEF00D72BD6 /* JsonFormatString.swift in Sources */,
 				2291424C23BF78000086C251 /* AboutView.swift in Sources */,
@@ -1051,7 +1014,6 @@ 				22E469DB23801CA000D72BD6 /* ArrayUtils.swift in Sources */,
 				226A6B632445759600ACDFC3 /* ClientIDFormView.swift in Sources */,
 				226A6B67244575DB00ACDFC3 /* AuthFormView.swift in Sources */,
 				226A6B5624449F5400ACDFC3 /* ProtocolPicker.swift in Sources */,
-				220357252445DD6E00A98CD3 /* DeprecationBox.swift in Sources */,
 				223AF5D12477D575009810E6 /* FileLister.swift in Sources */,
 				223AF5DB2477D64B009810E6 /* CertificateFileModel.swift in Sources */,
 				22FD7D0022C8D2660078795F /* EditHostFormView.swift in Sources */,




diff --git a/src/MQTTAnalyzerTests/HostModelPersistenceTests.swift b/src/MQTTAnalyzerTests/HostModelPersistenceTests.swift
index 763747113aa62a3e5a37199d2c1df90bb74a34af..6bd75adeeca599dd6971bae2c6cb49dc07b2a1fc 100644
--- a/src/MQTTAnalyzerTests/HostModelPersistenceTests.swift
+++ b/src/MQTTAnalyzerTests/HostModelPersistenceTests.swift
@@ -106,7 +106,7 @@ 		XCTAssertEqual(HostClientImplType.cocoamqtt, transformed1.clientImpl)
 
 		setting.clientImplType = ClientImplType.moscapsule
 		let transformed2 = persistence.transform(setting)
-		XCTAssertEqual(HostClientImplType.moscapsule, transformed2.clientImpl)
+		XCTAssertEqual(HostClientImplType.cocoamqtt, transformed2.clientImpl)
 	}
 	
 	func testTransformFromPersistenceModelSSL() {
@@ -226,7 +226,7 @@
 		host.clientImpl = .moscapsule
 		let transformed2 = persistence.transform(host)
 //
-		let setting = HostSetting()
+		setting.password = "password"
 	}
 	
 	func testTransformToPersistenceModelSSL() {




diff --git a/src/Podfile b/src/Podfile
index 136df53c13f68288b0b2288d7f585cef4c98d7e0..25d075d1ba57254f4d399034a950044c5b778b37 100644
--- a/src/Podfile
+++ b/src/Podfile
@@ -17,10 +17,6 @@   # Pods for MQTTAnalyzer
   use_frameworks! # Add this if you are targeting iOS 8+ or using Swift
   
 # Uncomment the next line to define a global platform for your project
-	 config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0'
-  pod 'OpenSSL-Universal', '1.0.2.20'
-  
-# Uncomment the next line to define a global platform for your project
  end
 	pod 'CocoaMQTT/WebSockets', '2.0.2-beta4'
 	




diff --git a/src/Podfile.lock b/src/Podfile.lock
index b4fafc13c7e2a1c565fae5bf6720f64fc1ef8be8..6e7f8bb114dabf8aef615039c4d4a384e5ecfcb6 100644
--- a/src/Podfile.lock
+++ b/src/Podfile.lock
@@ -13,11 +13,6 @@   - Highlightr (2.1.0)
   - IceCream (2.0.4):
     - RealmSwift (< 10.8.0)
 PODS:
-  - CocoaMQTT/Core (2.0.2-beta4):
-  - OpenSSL-Universal (1.0.2.20):
-    - OpenSSL-Universal/Static (= 1.0.2.20)
-  - OpenSSL-Universal/Static (1.0.2.20)
-PODS:
     - Starscream (~> 3.1.1)
     - Realm/Headers (= 10.7.7)
   - Realm/Headers (10.7.7)
@@ -35,9 +30,6 @@   - CodeEditor (from `https://github.com/ZeeZide/CodeEditor.git`)
   - Highlightr (from `https://github.com/raspu/Highlightr.git`, tag `2.1.2`)
   - IceCream (= 2.0.4)
   - CocoaMQTT (2.0.2-beta4):
-  - CocoaMQTT/Core (2.0.2-beta4):
-  - OpenSSL-Universal (= 1.0.2.20)
-  - CocoaMQTT (2.0.2-beta4):
   - CocoaMQTT/WebSockets (2.0.2-beta4):
   - swift-petitparser
   - SwiftLint
@@ -48,7 +40,6 @@   trunk:
     - CocoaAsyncSocket
     - CocoaMQTT
     - IceCream
-    - OpenSSL-Universal
     - Realm
     - RealmSwift
     - Starscream
@@ -62,8 +53,6 @@     :git: https://github.com/ZeeZide/CodeEditor.git
   Highlightr:
     :git: https://github.com/raspu/Highlightr.git
     :tag: 2.1.2
-  Moscapsule:
-    :git: https://github.com/flightonary/Moscapsule.git
 
 CHECKOUT OPTIONS:
   CodeEditor:
@@ -72,9 +61,6 @@     :git: https://github.com/ZeeZide/CodeEditor.git
   Highlightr:
     :git: https://github.com/raspu/Highlightr.git
     :tag: 2.1.2
-  Moscapsule:
-    :commit: 76f5d85f81c2841f8a110a7a3e7e5089beb47aed
-    :git: https://github.com/flightonary/Moscapsule.git
 
 SPEC CHECKSUMS:
   CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99
@@ -83,8 +69,6 @@   CodeEditor: 9fe96645a2af098efc83df3807f41b60bc4fddd1
   Highlightr: 683f05d5223cade533a78528a35c9f06e4caddf8
   IceCream: 717d516a1c634eba8eaa8ce7d3d7bc5f7e40c2fa
   - CocoaMQTT/WebSockets (2.0.2-beta4):
-  OpenSSL-Universal: ff34003318d5e1163e9529b08470708e389ffcdd
-  - CocoaMQTT/WebSockets (2.0.2-beta4):
   - CocoaAsyncSocket (7.6.5)
   RealmSwift: dc17e6d649c12a8996f9e962c3fe6cef356885c4
   Starscream: 4bb2f9942274833f7b4d296a55504dcfc7edb7b0
@@ -92,7 +76,6 @@   swift-petitparser: 3a4ef1e19bbf198200d73036459a9ce02a0a3068
   SwiftLint: 06ac37e4d38c7068e0935bb30cda95f093bec761
   SwiftyJSON: 2f33a42c6fbc52764d96f13368585094bfd8aa5e
 
-  - CocoaMQTT/WebSockets (2.0.2-beta4):
     - CocoaMQTT/Core
 
 COCOAPODS: 1.10.1