*/
import FileProvider
+import OSLog
+import NCDesktopClientSocketKit
class FileProviderExtension: NSObject, NSFileProviderReplicatedExtension {
let domain: NSFileProviderDomain
+ let socketClient: LocalSocketClient
required init(domain: NSFileProviderDomain) {
self.domain = domain
// The containing application must create a domain using `NSFileProviderManager.add(_:, completionHandler:)`. The system will then launch the application extension process, call `FileProviderExtension.init(domain:)` to instantiate the extension for that domain, and call methods on the instance.
+
+ let bundle = Bundle(for: type(of: self))
+ guard let fileProviderSocketApiPrefix = bundle.object(forInfoDictionaryKey: "SocketApiPrefix") as? String else {
+ NSLog("Could not start file provider socket client properly as SocketApiPrefix is missing")
+ self.socketClient = LocalSocketClient()
+ super.init()
+ return;
+ }
+
+ let containerUrl = FileManager.default.containerURL(forSecurityApplicationGroupIdentifier: fileProviderSocketApiPrefix)
+ let socketPath = containerUrl?.appendingPathComponent(".fileprovidersocket", conformingTo: .archive)
+ self.socketClient = LocalSocketClient(socketPath: socketPath?.path, lineProcessor: nil)
+ self.socketClient.start();
super.init()
}
TargetAttributes = {
538E396627F4765000FA63D5 = {
CreatedOnToolsVersion = 13.3;
- ProvisioningStyle = Manual;
+ DevelopmentTeam = C4QUVLMPQU;
+ ProvisioningStyle = Automatic;
};
53903D0B2956164F00D0B308 = {
CreatedOnToolsVersion = 14.2;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_ENTITLEMENTS = FileProviderExt/FileProviderExt.entitlements;
- CODE_SIGN_IDENTITY = "-";
- CODE_SIGN_STYLE = Manual;
+ CODE_SIGN_IDENTITY = "Apple Development";
+ CODE_SIGN_STYLE = Automatic;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 1;
DEBUG_INFORMATION_FORMAT = dwarf;
- DEVELOPMENT_TEAM = "";
+ DEVELOPMENT_TEAM = C4QUVLMPQU;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_DYNAMIC_NO_PIC = NO;
GCC_OPTIMIZATION_LEVEL = 0;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_ENTITLEMENTS = FileProviderExt/FileProviderExt.entitlements;
- CODE_SIGN_IDENTITY = "-";
- CODE_SIGN_STYLE = Manual;
+ CODE_SIGN_IDENTITY = "Apple Development";
+ CODE_SIGN_STYLE = Automatic;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 1;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
- DEVELOPMENT_TEAM = "";
+ DEVELOPMENT_TEAM = C4QUVLMPQU;
ENABLE_NS_ASSERTIONS = NO;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;