diff --git a/MacPass/MPPluginRepositoryItemVersionInfo.h b/MacPass/MPPluginRepositoryItemVersionInfo.h new file mode 100644 index 00000000..da90c23e --- /dev/null +++ b/MacPass/MPPluginRepositoryItemVersionInfo.h @@ -0,0 +1,20 @@ +// +// MPPluginVersionInfo.h +// MacPass +// +// Created by Michael Starke on 04.10.18. +// Copyright © 2018 HicknHack Software GmbH. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +@interface MPPluginRepositoryItemVersionInfo : NSObject + +- (instancetype)initWithDict:(NSDictionary *)dict NS_DESIGNATED_INITIALIZER; +- (instancetype)init NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/MacPass/MPPluginRepositoryItemVersionInfo.m b/MacPass/MPPluginRepositoryItemVersionInfo.m new file mode 100644 index 00000000..0c33ee25 --- /dev/null +++ b/MacPass/MPPluginRepositoryItemVersionInfo.m @@ -0,0 +1,36 @@ +// +// MPPluginVersionInfo.m +// MacPass +// +// Created by Michael Starke on 04.10.18. +// Copyright © 2018 HicknHack Software GmbH. All rights reserved. +// + +#import "MPPluginRepositoryItemVersionInfo.h" + +NSString *const MPPluginItemCompatibiltyVersionKey = @"pluginVersion"; +NSString *const MPPluginItemCompatibiltyMinimumHostVersionKey = @"minimumHostVersion"; +NSString *const MPPluginItemCompatibiltyMaxiumumHostVersionKey = @"maxiumumHostVersion"; + +@interface MPPluginRepositoryItemVersionInfo () + +@property (copy) NSString *version; +@property (copy) NSString *minimumHostVersion; +@property (copy) NSString *maxiumHostVersion; + + +@end + +@implementation MPPluginRepositoryItemVersionInfo + +- (instancetype)initWithDict:(NSDictionary *)dict { + self = [super init]; + if(self) { + self.version = dict[MPPluginItemCompatibiltyVersionKey]; + self.minimumHostVersion = dict[MPPluginItemCompatibiltyMinimumHostVersionKey]; + self.maxiumHostVersion = dict[MPPluginItemCompatibiltyMaxiumumHostVersionKey]; + } + return self; +} + +@end diff --git a/MacPass/NSApplication+MPAdditions.m b/MacPass/NSApplication+MPAdditions.m index d06e61d6..71d19627 100644 --- a/MacPass/NSApplication+MPAdditions.m +++ b/MacPass/NSApplication+MPAdditions.m @@ -25,7 +25,7 @@ @implementation NSApplication (MPAdditions) - (NSString *)applicationName { - return [[NSBundle mainBundle].infoDictionary[@"CFBundleName"] copy]; + return [NSBundle.mainBundle.infoDictionary[@"CFBundleName"] copy]; } - (NSURL *)applicationSupportDirectoryURL { @@ -34,18 +34,18 @@ - (NSURL *)applicationSupportDirectoryURL:(BOOL)create { NSError *error; - NSURL *url = [[NSFileManager defaultManager] URLForDirectory:NSApplicationSupportDirectory - inDomain:NSUserDomainMask - appropriateForURL:nil - create:NO - error:&error]; + NSURL *url = [NSFileManager.defaultManager URLForDirectory:NSApplicationSupportDirectory + inDomain:NSUserDomainMask + appropriateForURL:nil + create:NO + error:&error]; if(url) { url = [url URLByAppendingPathComponent:self.applicationName isDirectory:YES]; if(create) { - [[NSFileManager defaultManager] createDirectoryAtURL:url - withIntermediateDirectories:YES - attributes:nil - error:&error]; + [NSFileManager.defaultManager createDirectoryAtURL:url + withIntermediateDirectories:YES + attributes:nil + error:&error]; } return url; }