| 1 | // |
|---|
| 2 | // MFFilesystemController.h |
|---|
| 3 | // MacFusion2 |
|---|
| 4 | // |
|---|
| 5 | // Licensed under the Apache License, Version 2.0 (the "License"); |
|---|
| 6 | // you may not use this file except in compliance with the License. |
|---|
| 7 | // You may obtain a copy of the License at |
|---|
| 8 | // |
|---|
| 9 | // http://www.apache.org/licenses/LICENSE-2.0 |
|---|
| 10 | // |
|---|
| 11 | // Unless required by applicable law or agreed to in writing, software |
|---|
| 12 | // distributed under the License is distributed on an "AS IS" BASIS, |
|---|
| 13 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
|---|
| 14 | // See the License for the specific language governing permissions and |
|---|
| 15 | // limitations under the License. |
|---|
| 16 | |
|---|
| 17 | #import <Cocoa/Cocoa.h> |
|---|
| 18 | @class MFServerFS, MFServerPlugin; |
|---|
| 19 | |
|---|
| 20 | @interface MFFilesystemController : NSObject { |
|---|
| 21 | NSMutableDictionary* filesystemsDictionary; |
|---|
| 22 | NSMutableArray* filesystems; |
|---|
| 23 | NSMutableArray* recents; |
|---|
| 24 | NSMutableArray* mountedPaths; |
|---|
| 25 | NSMutableDictionary* tokens; |
|---|
| 26 | NSMutableDictionary* mountPathPersistenceCache; |
|---|
| 27 | |
|---|
| 28 | DASessionRef appearSession; |
|---|
| 29 | DASessionRef disappearSession; |
|---|
| 30 | } |
|---|
| 31 | |
|---|
| 32 | // Init |
|---|
| 33 | + (MFFilesystemController*)sharedController; |
|---|
| 34 | - (void)loadFilesystems; |
|---|
| 35 | |
|---|
| 36 | |
|---|
| 37 | // Action methods |
|---|
| 38 | - (MFServerFS*)newFilesystemWithPlugin:(MFServerPlugin*)plugin; |
|---|
| 39 | - (MFServerFS*)quickMountWithURL:(NSURL*)url |
|---|
| 40 | error:(NSError**)error; |
|---|
| 41 | - (void)deleteFilesystem:(MFServerFS*)fs; |
|---|
| 42 | |
|---|
| 43 | - (MFServerFS*)filesystemWithUUID:(NSString*)uuid; |
|---|
| 44 | |
|---|
| 45 | // Security Tokens |
|---|
| 46 | - (NSString*)tokenForFilesystem:(MFServerFS*)fs; |
|---|
| 47 | - (void)invalidateToken:(NSString*)token; |
|---|
| 48 | - (MFServerFS*)filesystemForToken:(NSString*)token; |
|---|
| 49 | |
|---|
| 50 | // Accessors |
|---|
| 51 | - (NSDictionary*)filesystemsDictionary; |
|---|
| 52 | @property(readonly, retain) NSMutableArray* filesystems; |
|---|
| 53 | @property(readonly, retain) NSMutableArray* recents; |
|---|
| 54 | @end |
|---|