luxlabs header browser preview


@class BRCDeadlineSource, NSString, NSMutableDictionary, NSObject, br_pacer, BRCFairScheduler, BRCDeadlineScheduler;
@protocol OS_dispatch_queue;

@interface BRCFSUploader : BRCFSTransferScheduler <BRCModule> {
    BRCFairScheduler *_fairScheduler;
    BRCDeadlineSource *_retryQueueSource;
    NSObject<OS_dispatch_queue> *_thumbnailQueue;
    br_pacer *_quotaPacer;
    br_pacer *_globalQuotaStateUpdatePacer;
    BOOL _prepareReachedMax;
}

@property (readonly, nonatomic) BRCDeadlineScheduler *uploadsDeadlineScheduler;
@property (readonly, nonatomic) NSMutableDictionary *thumbnailsOperationsByID;
@property (nonatomic) BOOL isDefaultOwnerOutOfQuota;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;
@property (readonly, nonatomic) BOOL isCancelled;

- (void)close;
- (void)suspend;
- (void)schedule;
- (void)resume;
- (void).cxx_destruct;
- (id)initWithAccountSession:(id)a0;
- (void)cancel;
- (void)ownerDidReceiveOutOfQuotaError:(id)a0;
- (void)_doneFetchingThumbnailForJobID:(id)a0;
- (id)_buildItemTooLargeErrorIfNeeded:(id)a0 syncContext:(id)a1;
- (void)_cancelJobs:(id)a0 state:(int)a1;
- (void)_cancelJobsMatching:(id)a0;
- (void)_clearUploadErrorForDocument:(id)a0;
- (void)_computeRecordForJobID:(id)a0 item:(id)a1 syncContext:(id)a2;
- (id)_documentItemForJobID:(id)a0 operationID:(id)a1;
- (id)_documentItemForJobID:(id)a0 stageID:(id)a1;
- (id)_duplicatePackage:(id)a0 stageID:(id)a1 stageName:(id)a2 error:(id *)a3;
- (BOOL)_finishPackageUploadWithRecord:(id)a0 item:(id)a1 stageID:(id)a2 error:(id *)a3;
- (void)_finishedUploadingItem:(id)a0 record:(id)a1 jobID:(id)a2 stageID:(id)a3 syncContext:(id)a4 hasPerformedServerSideAssetCopy:(BOOL)a5 error:(id)a6;
- (void)_globalQuotaStateUpdateForDefaultOwner;
- (void)_handleFileModifiedError:(id)a0 forItem:(id)a1;
- (unsigned long long)_minBatchSize;
- (void)_performServerSideAssetCopyForItem:(id)a0 transferSize:(unsigned long long)a1;
- (void)_reportUploadErrorForDocument:(id)a0 error:(id)a1;
- (void)_rescheduleJobsOutOfQuotaForDefaultOwnerWithAvailableSize:(long long)a0;
- (void)_scheduleQuotaFetchForDefaultOwner;
- (void)_scheduleRetries;
- (void)_startFetchThumbnail:(id)a0 jobID:(id)a1;
- (id)_thumbnailOperationForItemRowID:(id)a0;
- (unsigned long long)_thumbnailOperationsMax;
- (void)_transferStreamOfSyncContext:(id)a0 didBecomeReadyWithMaxRecordsCount:(unsigned long long)a1 sizeHint:(unsigned long long)a2 priority:(long long)a3;
- (void)_updateJobID:(id)a0 setStageID:(id)a1 operationID:(id)a2;
- (BOOL)_updatePackageRecord:(id)a0 item:(id)a1 stageID:(id)a2 error:(id *)a3;
- (void)_updateRecord:(id)a0 item:(id)a1 syncContext:(id)a2 targetThumbnailURL:(id)a3 stageID:(id)a4;
- (void)_updateRecord:(id)a0 jobID:(id)a1 syncContext:(id)a2 targetThumbnailURL:(id)a3 stageID:(id)a4;
- (void)_updateRecordInDB:(id)a0 item:(id)a1 syncContext:(id)a2 transferSize:(unsigned long long)a3 stageID:(id)a4;
- (void)_willAttemptJobID:(id)a0 throttle:(id)a1 operationID:(id)a2;
- (void)addAliasItem:(id)a0 toUploadingItem:(id)a1;
- (BOOL)canScheduleMoreJobs;
- (void)cancelAndCleanupItemUpload:(id)a0;
- (void)deleteJobsForZone:(id)a0;
- (void)deleteJobsMatching:(id)a0;
- (void)deleteUploadingJobForItem:(id)a0;
- (id)descriptionForItem:(id)a0 context:(id)a1;
- (void)finishedSyncingUpItem:(id)a0 withOutOfQuotaError:(id)a1;
- (void)forceScheduleQuotaFetchForOwner:(id)a0;
- (int)getStateOfDocumentItem:(id)a0;
- (BOOL)hasItemsOverQuotaForOwner:(id)a0;
- (BOOL)hasItemsOverQuotaInZone:(id)a0;
- (BOOL)isUploadingItem:(id)a0;
- (void)performFirstSchedulingAfterStartupInDB:(id)a0;
- (id)quotaAvailableForOwner:(id)a0;
- (unsigned int)recoverAndReportMissingJobs;
- (void)rescheduleJobsPendingRecentsAndFavoritesFetchInZone:(id)a0;
- (void)scheduleQuotaFetchIfNeededForOwner:(id)a0;
- (void)scheduleQuotaStateUpdateForOwner:(id)a0;
- (void)setIsDefaultOwnerOutOfQuota:(BOOL)a0 forceSignalContainers:(BOOL)a1;
- (void)setQuotaAvailableForDefaultOwner:(unsigned long long)a0;
- (void)setState:(int)a0 forItem:(id)a1;
- (void)setState:(int)a0 forJobID:(id)a1 zone:(id)a2;
- (void)setState:(int)a0 forUploadJobID:(id)a1 zone:(id)a2;
- (void)transferStreamOfSyncContext:(id)a0 didBecomeReadyWithMaxRecordsCount:(unsigned long long)a1 sizeHint:(unsigned long long)a2 priority:(long long)a3 completionBlock:(id /* block */)a4;
- (void)uploadItem:(id)a0;

@end