cog/Utils/SandboxBroker.h

39 lines
733 B
Objective-C

//
// SandboxBroker.h
// Cog
//
// Created by Christopher Snowhill on 6/20/22.
//
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@interface SandboxBroker : NSObject {
NSMutableArray *storage;
}
+ (SandboxBroker *)sharedSandboxBroker;
+ (NSURL *)urlWithoutFragment:(NSURL *)url;
+ (BOOL)isPath:(NSURL *)path aSubdirectoryOf:(NSURL *)directory;
+ (void)cleanupFolderAccess;
- (id)init;
- (void)shutdown;
- (void)addFolderIfMissing:(NSURL *)folderUrl;
- (void)addFileIfMissing:(NSURL *)fileUrl;
- (void)requestFolderForFile:(NSURL *)fileUrl;
- (const void *)beginFolderAccess:(NSURL *)fileUrl;
- (void)endFolderAccess:(const void *)handle;
- (BOOL)areAllPathsSafe:(NSArray *)urls;
@end
NS_ASSUME_NONNULL_END