@class NSString, SUCoreFSM, MADAutoAssetDescriptor, SUCoreLog, MADAutoAssetPersisted, NSDictionary, NSArray, MADAutoAssetClientRequest, NSMutableArray, NSMutableDictionary, MANAutoAssetControlStatisticsByCommand, MANAutoAssetControlStatisticsBySize; @interface MADAutoAssetStager : NSObject @property (readonly, retain, nonatomic) SUCoreLog *logger; @property (readonly, retain, nonatomic) NSDictionary *stateTable; @property (retain, nonatomic) SUCoreFSM *autoStagerFSM; @property (readonly, retain, nonatomic) MADAutoAssetPersisted *persistedState; @property (retain, nonatomic) NSString *latestSafeSummary; @property (retain, nonatomic) NSString *stagingFromOSVersion; @property (retain, nonatomic) NSString *stagingFromBuildVersion; @property (nonatomic) BOOL alwaysPromoteStagedAssets; @property (retain, nonatomic) NSString *assetTargetOSVersion; @property (retain, nonatomic) NSString *assetTargetBuildVersion; @property (retain, nonatomic) MADAutoAssetClientRequest *stagingClientRequest; @property (retain, nonatomic) MADAutoAssetDescriptor *activeJobDescriptor; @property (retain, nonatomic) NSArray *alreadyDownloadedDescriptors; @property (retain, nonatomic) NSMutableArray *candidatesForStaging; @property (retain, nonatomic) NSMutableDictionary *determiningBySelector; @property (retain, nonatomic) NSMutableArray *availableForStaging; @property (retain, nonatomic) NSMutableArray *awaitingStagingAttempt; @property (retain, nonatomic) NSMutableDictionary *successfullyStaged; @property (nonatomic) long long overallStagedTotalExpectedBytes; @property (nonatomic) long long overallStagedDownloadedSoFarBytes; @property (retain, nonatomic) NSMutableDictionary *eliminationSelectors; @property (retain, nonatomic) NSMutableDictionary *eliminationSelectorsAcknowledged; @property (retain, nonatomic) MANAutoAssetControlStatisticsByCommand *statisticsClientRepliesSuccess; @property (retain, nonatomic) MANAutoAssetControlStatisticsByCommand *statisticsClientRepliesFailure; @property (retain, nonatomic) MANAutoAssetControlStatisticsBySize *statisticsStaged; @property (retain, nonatomic) MANAutoAssetControlStatisticsBySize *statisticsUnstaged; + (id)migrateMismatchedPersistedStateVersion:(id)a0 forEntryID:(id)a1 withMismatchedState:(id)a2; + (void)extendSummaryWithDeterminedAssets:(id)a0 basedOnControl:(id)a1; + (id)controlConvertStagedToDownloaded:(id)a0; + (void)controlEliminateSelector:(id)a0; + (void)clientPurgeAll:(id)a0; + (void)controlAlreadyDownloadedDescriptors:(id)a0; + (void)autoAssetStagerJobDetermineDone:(id)a0 withDetermineError:(id)a1; + (void)clientDetermineAllAvailable:(id)a0; + (id)autoAssetStager; + (void)resumeFromPersisted; + (long long)persistedStagedCount; + (void)extendSummaryWithStagingAssets:(id)a0 basedOnControl:(id)a1; + (id)controlCopyCurrentStagedDescriptors; + (id)_getAutoAssetStagerStateTable; + (void)extendSummaryWithStagedAssets:(id)a0 basedOnControl:(id)a1; + (void)controlForcePurge:(id)a0; + (void)controlStatisticsClientRepliesSuccess:(id *)a0 clientRepliesFailure:(id *)a1 totalStaged:(id *)a2 totalUnstaged:(id *)a3 clearingAfter:(BOOL)a4; + (void)autoAssetStagerJobDownloadProgress:(id)a0 withProgressError:(id)a1; + (void)autoAssetStagerJobDownloadDone:(id)a0 withDownloadError:(id)a1; + (void)garbageCollectEliminateSelector:(id)a0; + (void)autoAssetStagerJobFailedToStart:(id)a0; + (void)clientDownloadAll:(id)a0; - (void)_acknowlegdeAndClearAllEliminations; - (id)_persistRebuildTrackingForFollowupEvent:(id)a0; - (id)init; - (void)_extendSummaryWithStagedAssets:(id)a0 basedOnControl:(id)a1; - (long long)action_EliminateDeterminingDecideMatch:(id)a0 error:(id *)a1; - (void)_removeEliminatedFromStaged; - (void)_extendSummaryWithStagingAssets:(id)a0 basedOnControl:(id)a1; - (void)_setupAwaitingStagingAndBeginFirstDownload; - (BOOL)_isAssetTypeInvolvedInStaging:(id)a0; - (BOOL)_doesSelectorMatchCurrentJob:(id)a0; - (void)_clearBeforeDetermineAvailable; - (id)summary; - (long long)action_ClientInvalidStagingPhase:(id)a0 error:(id *)a1; - (void)_cancelCurrentJob; - (void)_clearAllTrackingOfActiveOperations; - (long long)action_CancelActiveJob:(id)a0 error:(id *)a1; - (long long)action_RemoveAllReplyPurged:(id)a0 error:(id *)a1; - (long long)action_FormCandidatesDecideDetermine:(id)a0 error:(id *)a1; - (long long)action_EliminateAvailableDecideEmpty:(id)a0 error:(id *)a1; - (long long)action_EliminateCancelActiveJob:(id)a0 error:(id *)a1; - (long long)action_ClientAcceptCancelActiveJob:(id)a0 error:(id *)a1; - (long long)action_ClientRequestAlreadyDownloaded:(id)a0 error:(id *)a1; - (void)_persistRemoveAll:(id)a0 message:(id)a1 flushing:(BOOL)a2; - (long long)action_DoneAvailableDecideAnyStaged:(id)a0 error:(id *)a1; - (void)_logPersistedTableOfContents:(id)a0; - (void)_trackReloadedDescriptorAvailableForStaging:(id)a0; - (long long)action_LoadPersistedDecideResume:(id)a0 error:(id *)a1; - (long long)action_AddToStagedDecideMoreAvailable:(id)a0 error:(id *)a1; - (id)_allEliminationSelectors; - (BOOL)_doesSelector:(id)a0 matchDescriptor:(id)a1; - (long long)action_EliminateDoneStagedDecideEmpty:(id)a0 error:(id *)a1; - (id)_stagingClientMessageDesire; - (void)_acceptStagingClientRequest:(id)a0; - (void)_replyHaveStagedContent; - (void)_logPersistedConfigSet:(id)a0 message:(id)a1; - (long long)action_ControlUnstagedDecideCancelJob:(id)a0 error:(id *)a1; - (long long)action_EliminateDoneDecideMoreCandidates:(id)a0 error:(id *)a1; - (long long)action_EliminateDecideMatch:(id)a0 error:(id *)a1; - (long long)_persistDescriptor:(id)a0 operation:(id)a1 persistingDescriptor:(id)a2 withRepresentation:(long long)a3 message:(id)a4; - (id)description; - (void)_logPersistedConfigLoad:(id)a0 lastStagingFromOSVersion:(id)a1 lastStagingFromBuildVersion:(id)a2 assetTargetOSVersion:(id)a3 assetTargetBuildVersion:(id)a4 candidateAssetCount:(unsigned long long)a5 determinedAvailableAssetCount:(unsigned long long)a6 activelyStagingAssetCount:(unsigned long long)a7 awaitingStagingAssetCount:(unsigned long long)a8 stagedAssetCount:(unsigned long long)a9 stagedAssetTotalContentBytes:(unsigned long long)a10 message:(id)a11; - (void)_updateDescriptor:(id)a0 withLatestJobStatus:(id)a1; - (long long)action_DoneCandidatesDecideAnyAvailable:(id)a0 error:(id *)a1; - (long long)action_DecideMoreAvailable:(id)a0 error:(id *)a1; - (long long)action_AddToAvailableDecideMoreCandidates:(id)a0 error:(id *)a1; - (long long)action_RemeberEliminateDone:(id)a0 error:(id *)a1; - (long long)action_ReportStagingProgressToClient:(id)a0 error:(id *)a1; - (long long)action_DecideMoreCandidates:(id)a0 error:(id *)a1; - (void)_acknowledgeEliminatedForCurrentJob; - (void)_addDescriptor:(id)a0 withRepresentation:(long long)a1 toSummary:(id)a2; - (long long)action_EliminateDoneDecideMoreDownload:(id)a0 error:(id *)a1; - (void)_replyNothingStaged; - (long long)action_ClientContinueUsingLatestRequest:(id)a0 error:(id *)a1; - (void).cxx_destruct; - (long long)action_ControlUnstagedDecideRemoveAll:(id)a0 error:(id *)a1; - (long long)action_ClientNothingStaged:(id)a0 error:(id *)a1; - (long long)action_ClientHaveStagedContent:(id)a0 error:(id *)a1; - (void)_logPersistedEntry:(id)a0 operation:(id)a1 persistingDescriptor:(id)a2 withRepresentation:(long long)a3 message:(id)a4; - (long long)action_NextAwaitingBeginDownload:(id)a0 error:(id *)a1; - (long long)action_ResumingNextAvailableBeginDownload:(id)a0 error:(id *)a1; - (long long)action_NextCandidateBeginDetermine:(id)a0 error:(id *)a1; - (long long)action_ClientAcceptNextAvailableBeginDownload:(id)a0 error:(id *)a1; - (void)_maintainLatestCandidate:(id)a0 candidateDescriptor:(id)a1; - (void)_removeEliminatedFromCandidatesAndAvaliable; - (long long)action_EliminateDone:(id)a0 error:(id *)a1; - (void)_persistLastStagingFrom; - (void)_replyToStagingClientOperationSuccess; - (long long)action_ReplyNoCandidates:(id)a0 error:(id *)a1; - (void)_replyToStagingClient:(id)a0 withErrorCode:(long long)a1 withUnderlyingError:(id)a2 withDescription:(id)a3; - (id)_stagingClientMessageInstance; - (long long)action_ReplyHaveAvailable:(id)a0 error:(id *)a1; - (id)_controlConvertStagedToDownloaded:(id)a0; - (void)_removeStagedAssetFromFilesystem:(id)a0 forHistoryOperation:(long long)a1; - (long long)actionUnknownAction:(id)a0 error:(id *)a1; - (long long)performAction:(id)a0 onEvent:(id)a1 inState:(id)a2 withInfo:(id)a3 nextState:(id)a4 error:(id *)a5; - (long long)action_ReplyHaveStaged:(id)a0 error:(id *)a1; - (long long)action_ClientAccept:(id)a0 error:(id *)a1; - (long long)action_ClientAcceptRemoveAllReplyPurged:(id)a0 error:(id *)a1; - (void)_removeAllStagedContent; - (void)_logPersistedRemovedEntry:(id)a0 removedDescriptor:(id)a1 message:(id)a2; - (void)_extendSummaryWithDeterminedAssets:(id)a0 basedOnControl:(id)a1; - (long long)action_ReplyNothingStaged:(id)a0 error:(id *)a1; - (id)_updateLatestSummary; - (void)_removeDescriptorFromSuccessfullyStaged:(id)a0 message:(id)a1; @end