| Index: chrome/installer/mac/app/Unpacker.h
|
| diff --git a/chrome/installer/mac/app/Unpacker.h b/chrome/installer/mac/app/Unpacker.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..a73b4f18201dbd6c98fc20eec8f597003a431cc1
|
| --- /dev/null
|
| +++ b/chrome/installer/mac/app/Unpacker.h
|
| @@ -0,0 +1,38 @@
|
| +// Copyright 2016 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#ifndef CHROME_INSTALLER_MAC_APP_UNPACKER_H_
|
| +#define CHROME_INSTALLER_MAC_APP_UNPACKER_H_
|
| +
|
| +#import <Foundation/Foundation.h>
|
| +
|
| +// TODO: revise api to be more succinct & logical, make the unnecessary ones
|
| +// potentially optional for testing's sake
|
| +
|
| +@class Unpacker;
|
| +@protocol UnpackDelegate
|
| +- (void)unpacker:(Unpacker*)unpacker onMountSuccess:(NSString*)mountpath;
|
| +- (void)unpacker:(Unpacker*)unpacker onMountFailure:(NSString*)mountpath;
|
| +- (void)unpacker:(Unpacker*)unpacker onExtractSuccess:(NSString*)appPath;
|
| +- (void)unpacker:(Unpacker*)unpacker onExtractFailure:(NSString*)appPath;
|
| +// TODO: put in a better parameter to pass through
|
| +- (void)unpacker:(Unpacker*)unpacker onUnmountSuccess:(NSError*)error;
|
| +- (void)unpacker:(Unpacker*)unpacker onUnmountFailure:(NSError*)error;
|
| +@end
|
| +
|
| +@interface Unpacker : NSObject
|
| +
|
| +@property(nonatomic, assign) id<UnpackDelegate> delegate;
|
| +@property(nonatomic, copy) NSString* appPath;
|
| +
|
| +- (id)initWithFinalAppPath:(NSString*)appPath;
|
| +
|
| +// TODO: write a new "extracter" class to be nested into unpacker
|
| +- (void)mountDMGFromURL:(NSURL*)fileURL;
|
| +- (void)extractChrome;
|
| +- (void)unmountDMG;
|
| +
|
| +@end
|
| +
|
| +#endif // CHROME_INSTALLER_MAC_APP_UNPACKER_H_
|
|
|