diff --git a/AppHub/AppHub/AHBuildManager.h b/AppHub/AppHub/AHBuildManager.h index 7627878..4caa4b3 100644 --- a/AppHub/AppHub/AHBuildManager.h +++ b/AppHub/AppHub/AHBuildManager.h @@ -97,6 +97,8 @@ extern NSString *const AHBuildManagerBuildKey; */ - (void)fetchBuildWithCompletionHandler:(AHBuildResultBlock)completionHandler; +- (AHBuild *)currentBuildForGroupIdentifier:(NSString *)groupIdentifier; + /** * Hook called after NSURLSessionDownloadTask has created * diff --git a/AppHub/AppHub/AHBuildManager.m b/AppHub/AppHub/AHBuildManager.m index 03fd285..2c936a9 100644 --- a/AppHub/AppHub/AHBuildManager.m +++ b/AppHub/AppHub/AHBuildManager.m @@ -79,6 +79,12 @@ - (NSDictionary *)currentBuildInfo return [NSDictionary dictionaryWithContentsOfURL:AHCurrentBuildInfoDirectory()]; } +- (AHBuild *)currentBuildForGroupIdentifier:(NSString *)groupIdentifier { + ahGroupIdentifier = groupIdentifier; + + return [self currentBuild]; +} + - (AHBuild *)currentBuild { NSDictionary *currentBuildInfo = [self currentBuildInfo]; diff --git a/AppHub/AppHub/AHPaths.h b/AppHub/AppHub/AHPaths.h index 3df19c9..c108ce9 100644 --- a/AppHub/AppHub/AHPaths.h +++ b/AppHub/AppHub/AHPaths.h @@ -12,3 +12,5 @@ extern NSURL *AHBundleDirectory(NSString *buildID); extern NSURL *AHCurrentBuildInfoDirectory(void); extern NSURL *AHBuildsDirectory(void); extern NSURL *AHRootDirectory(void); + +extern NSString *ahGroupIdentifier; \ No newline at end of file diff --git a/AppHub/AppHub/AHPaths.m b/AppHub/AppHub/AHPaths.m index eceba59..af2d7ec 100644 --- a/AppHub/AppHub/AHPaths.m +++ b/AppHub/AppHub/AHPaths.m @@ -9,6 +9,8 @@ #import "AHConstants.h" +NSString *ahGroupIdentifier = nil; + NSURL *AHBuildDirectory(NSString *buildID) { return [AHBuildsDirectory() URLByAppendingPathComponent:buildID isDirectory:YES]; @@ -31,5 +33,9 @@ NSURL *AHRootDirectory(void) { - return [[[[NSFileManager defaultManager] URLsForDirectory:NSApplicationSupportDirectory inDomains:NSUserDomainMask] lastObject] URLByAppendingPathComponent:AHDirectoryName isDirectory:YES]; + if(ahGroupIdentifier == nil) { + return [[[[NSFileManager defaultManager] URLsForDirectory:NSApplicationSupportDirectory inDomains:NSUserDomainMask] lastObject] URLByAppendingPathComponent:AHDirectoryName isDirectory:YES]; + } else { + return [[[NSFileManager defaultManager] containerURLForSecurityApplicationGroupIdentifier:ahGroupIdentifier] URLByAppendingPathComponent: AHDirectoryName isDirectory:YES]; + } }