VLCCloudStorageController.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. //
  2. // VLCCloudStorageController.h
  3. // VLC for iOS
  4. //
  5. // Created by Carola Nitz on 31/12/14.
  6. // Copyright (c) 2014 VideoLAN. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. typedef NS_ENUM (NSInteger, VLCCloudSortingCriteria) {
  10. VLCCloudSortingCriteriaName,
  11. VLCCloudSortingCriteriaModifiedDate
  12. };
  13. @protocol VLCCloudStorageDelegate <NSObject>
  14. @required
  15. - (void)mediaListUpdated;
  16. @optional
  17. - (void)operationWithProgressInformationStarted;
  18. - (void)currentProgressInformation:(CGFloat)progress;
  19. - (void)updateRemainingTime:(NSString *)time;
  20. - (void)operationWithProgressInformationStopped;
  21. - (void)numberOfFilesWaitingToBeDownloadedChanged;
  22. - (void)sessionWasUpdated;
  23. @end
  24. @interface VLCCloudStorageController : NSObject
  25. @property (nonatomic, weak) id<VLCCloudStorageDelegate> delegate;
  26. @property (nonatomic, readwrite) BOOL isAuthorized;
  27. @property (nonatomic, readonly) NSArray *currentListFiles;
  28. @property (nonatomic, readonly) BOOL canPlayAll;
  29. @property (nonatomic, readwrite) VLCCloudSortingCriteria sortBy;
  30. + (instancetype)sharedInstance;
  31. - (void)startSession;
  32. - (void)logout;
  33. - (void)requestDirectoryListingAtPath:(NSString *)path;
  34. - (BOOL)supportSorting;
  35. - (NSString *)createPotentialPathFrom:(NSString *)path;
  36. @end