diff --git a/dom/media/MediaDecoder.h b/dom/media/MediaDecoder.h index fc69a626b05f..6e2bf14ab7c2 100644 --- a/dom/media/MediaDecoder.h +++ b/dom/media/MediaDecoder.h @@ -1019,7 +1019,7 @@ protected: virtual void CallSeek(const SeekTarget& aTarget); - MediaPromiseConsumerHolder mSeekRequest; + MediaPromiseRequestHolder mSeekRequest; // True when seeking or otherwise moving the play position around in // such a manner that progress event data is inaccurate. This is set diff --git a/dom/media/MediaDecoderStateMachine.h b/dom/media/MediaDecoderStateMachine.h index ff996d137521..183db1e19e79 100644 --- a/dom/media/MediaDecoderStateMachine.h +++ b/dom/media/MediaDecoderStateMachine.h @@ -841,7 +841,7 @@ public: private: MediaDecoderStateMachine* mSelf; nsRefPtr mMediaTimer; - MediaPromiseConsumerHolder mRequest; + MediaPromiseRequestHolder mRequest; TimeStamp mTarget; } mDelayedScheduler; @@ -1151,8 +1151,8 @@ protected: // Only one of a given pair of ({Audio,Video}DataPromise, WaitForDataPromise) // should exist at any given moment. - MediaPromiseConsumerHolder mAudioDataRequest; - MediaPromiseConsumerHolder mAudioWaitRequest; + MediaPromiseRequestHolder mAudioDataRequest; + MediaPromiseRequestHolder mAudioWaitRequest; const char* AudioRequestStatus() { MOZ_ASSERT(OnTaskQueue()); @@ -1165,8 +1165,8 @@ protected: return "idle"; } - MediaPromiseConsumerHolder mVideoWaitRequest; - MediaPromiseConsumerHolder mVideoDataRequest; + MediaPromiseRequestHolder mVideoWaitRequest; + MediaPromiseRequestHolder mVideoDataRequest; const char* VideoRequestStatus() { MOZ_ASSERT(OnTaskQueue()); @@ -1179,7 +1179,7 @@ protected: return "idle"; } - MediaPromiseConsumerHolder& WaitRequestRef(MediaData::Type aType) + MediaPromiseRequestHolder& WaitRequestRef(MediaData::Type aType) { MOZ_ASSERT(OnTaskQueue()); return aType == MediaData::AUDIO_DATA ? mAudioWaitRequest : mVideoWaitRequest; @@ -1255,7 +1255,7 @@ protected: bool mDecodeToSeekTarget; // Track the current seek promise made by the reader. - MediaPromiseConsumerHolder mSeekRequest; + MediaPromiseRequestHolder mSeekRequest; // We record the playback position before we seek in order to // determine where the seek terminated relative to the playback position @@ -1263,7 +1263,7 @@ protected: int64_t mCurrentTimeBeforeSeek; // Track our request for metadata from the reader. - MediaPromiseConsumerHolder mMetadataRequest; + MediaPromiseRequestHolder mMetadataRequest; // Stores presentation info required for playback. The decoder monitor // must be held when accessing this. diff --git a/dom/media/MediaFormatReader.h b/dom/media/MediaFormatReader.h index 389ed4592352..2bfdf4a5ca54 100644 --- a/dom/media/MediaFormatReader.h +++ b/dom/media/MediaFormatReader.h @@ -224,7 +224,7 @@ private: // Queued demux samples waiting to be decoded. nsTArray> mQueuedSamples; - MediaPromiseConsumerHolder mDemuxRequest; + MediaPromiseRequestHolder mDemuxRequest; MediaPromiseHolder mWaitingPromise; bool HasWaitingPromise() { @@ -316,7 +316,7 @@ private: // Demuxer objects. void OnDemuxerInitDone(nsresult); void OnDemuxerInitFailed(DemuxerFailureReason aFailure); - MediaPromiseConsumerHolder mDemuxerInitRequest; + MediaPromiseRequestHolder mDemuxerInitRequest; void OnDemuxFailed(TrackType aTrack, DemuxerFailureReason aFailure); void DoDemuxVideo(); @@ -334,7 +334,7 @@ private: } void SkipVideoDemuxToNextKeyFrame(media::TimeUnit aTimeThreshold); - MediaPromiseConsumerHolder mSkipRequest; + MediaPromiseRequestHolder mSkipRequest; void OnVideoSkipCompleted(uint32_t aSkipped); void OnVideoSkipFailed(MediaTrackDemuxer::SkipFailureHolder aFailure); @@ -382,8 +382,8 @@ private: } // Temporary seek information while we wait for the data Maybe mPendingSeekTime; - MediaPromiseConsumerHolder mVideoSeekRequest; - MediaPromiseConsumerHolder mAudioSeekRequest; + MediaPromiseRequestHolder mVideoSeekRequest; + MediaPromiseRequestHolder mAudioSeekRequest; MediaPromiseHolder mSeekPromise; #ifdef MOZ_EME diff --git a/dom/media/MediaPromise.h b/dom/media/MediaPromise.h index 0154cd83e25f..46e8b4c1e1d6 100644 --- a/dom/media/MediaPromise.h +++ b/dom/media/MediaPromise.h @@ -140,7 +140,7 @@ protected: explicit MediaPromise(const char* aCreationSite) : mCreationSite(aCreationSite) , mMutex("MediaPromise Mutex") - , mHaveConsumer(false) + , mHaveRequest(false) { PROMISE_LOG("%s creating MediaPromise (%p)", mCreationSite, this); } @@ -171,7 +171,7 @@ public: return Move(p); } - class Consumer : public MediaPromiseRefcountable + class Request : public MediaPromiseRefcountable { public: virtual void Disconnect() = 0; @@ -184,8 +184,8 @@ public: virtual MediaPromise* CompletionPromise() = 0; protected: - Consumer() : mComplete(false), mDisconnected(false) {} - virtual ~Consumer() {} + Request() : mComplete(false), mDisconnected(false) {} + virtual ~Request() {} bool mComplete; bool mDisconnected; @@ -199,7 +199,7 @@ protected: * resolved or rejected, a {Resolve,Reject}Runnable is dispatched, which * invokes the resolve/reject method and then deletes the ThenValue. */ - class ThenValueBase : public Consumer + class ThenValueBase : public Request { public: class ResolveOrRejectRunnable : public nsRunnable @@ -233,7 +233,7 @@ protected: MediaPromise* CompletionPromise() override { MOZ_DIAGNOSTIC_ASSERT(mResponseTarget->IsCurrentThreadIn()); - MOZ_DIAGNOSTIC_ASSERT(!Consumer::mComplete); + MOZ_DIAGNOSTIC_ASSERT(!Request::mComplete); if (!mCompletionPromise) { mCompletionPromise = new MediaPromise::Private(""); } @@ -251,7 +251,7 @@ protected: aPromise->mValue.IsResolve() ? "Resolving" : "Rejecting", ThenValueBase::mCallSite, runnable.get(), aPromise, this); - // Promise consumers are allowed to disconnect the Consumer object and + // Promise consumers are allowed to disconnect the Request object and // then shut down the thread or task queue that the promise result would // be dispatched on. So we unfortunately can't assert that promise // dispatch succeeds. :-( @@ -261,8 +261,8 @@ protected: virtual void Disconnect() override { MOZ_ASSERT(ThenValueBase::mResponseTarget->IsCurrentThreadIn()); - MOZ_DIAGNOSTIC_ASSERT(!Consumer::mComplete); - Consumer::mDisconnected = true; + MOZ_DIAGNOSTIC_ASSERT(!Request::mComplete); + Request::mDisconnected = true; // We could support rejecting the completion promise on disconnection, but // then we'd need to have some sort of default reject value. The use cases @@ -276,8 +276,8 @@ protected: void DoResolveOrReject(ResolveOrRejectValue& aValue) { - Consumer::mComplete = true; - if (Consumer::mDisconnected) { + Request::mComplete = true; + if (Request::mDisconnected) { PROMISE_LOG("ThenValue::DoResolveOrReject disconnected - bailing out [this=%p]", this); return; } @@ -372,7 +372,7 @@ protected: { ThenValueBase::Disconnect(); - // If a Consumer has been disconnected, we don't guarantee that the + // If a Request has been disconnected, we don't guarantee that the // resolve/reject runnable will be dispatched. Null out our refcounted // this-value now so that it's released predictably on the dispatch thread. mThisVal = nullptr; @@ -422,7 +422,7 @@ protected: { ThenValueBase::Disconnect(); - // If a Consumer has been disconnected, we don't guarantee that the + // If a Request has been disconnected, we don't guarantee that the // resolve/reject runnable will be dispatched. Destroy our callbacks // now so that any references in closures are released predictable on // the dispatch thread. @@ -466,8 +466,8 @@ public: { MutexAutoLock lock(mMutex); MOZ_ASSERT(aResponseThread->IsDispatchReliable()); - MOZ_DIAGNOSTIC_ASSERT(!IsExclusive || !mHaveConsumer); - mHaveConsumer = true; + MOZ_DIAGNOSTIC_ASSERT(!IsExclusive || !mHaveRequest); + mHaveRequest = true; PROMISE_LOG("%s invoking Then() [this=%p, aThenValue=%p, isPending=%d]", aCallSite, this, aThenValue, (int) IsPending()); if (!IsPending()) { @@ -480,30 +480,30 @@ public: public: template - nsRefPtr Then(AbstractThread* aResponseThread, const char* aCallSite, ThisType* aThisVal, - ResolveMethodType aResolveMethod, RejectMethodType aRejectMethod) + nsRefPtr Then(AbstractThread* aResponseThread, const char* aCallSite, ThisType* aThisVal, + ResolveMethodType aResolveMethod, RejectMethodType aRejectMethod) { nsRefPtr thenValue = new MethodThenValue( aResponseThread, aThisVal, aResolveMethod, aRejectMethod, aCallSite); ThenInternal(aResponseThread, thenValue, aCallSite); - return thenValue.forget(); // Implicit conversion from already_AddRefed to nsRefPtr. + return thenValue.forget(); // Implicit conversion from already_AddRefed to nsRefPtr. } template - nsRefPtr Then(AbstractThread* aResponseThread, const char* aCallSite, - ResolveFunction&& aResolveFunction, RejectFunction&& aRejectFunction) + nsRefPtr Then(AbstractThread* aResponseThread, const char* aCallSite, + ResolveFunction&& aResolveFunction, RejectFunction&& aRejectFunction) { nsRefPtr thenValue = new FunctionThenValue(aResponseThread, Move(aResolveFunction), Move(aRejectFunction), aCallSite); ThenInternal(aResponseThread, thenValue, aCallSite); - return thenValue.forget(); // Implicit conversion from already_AddRefed to nsRefPtr. + return thenValue.forget(); // Implicit conversion from already_AddRefed to nsRefPtr. } void ChainTo(already_AddRefed aChainedPromise, const char* aCallSite) { MutexAutoLock lock(mMutex); - MOZ_DIAGNOSTIC_ASSERT(!IsExclusive || !mHaveConsumer); - mHaveConsumer = true; + MOZ_DIAGNOSTIC_ASSERT(!IsExclusive || !mHaveRequest); + mHaveRequest = true; nsRefPtr chainedPromise = aChainedPromise; PROMISE_LOG("%s invoking Chain() [this=%p, chainedPromise=%p, isPending=%d]", aCallSite, this, chainedPromise.get(), (int) IsPending()); @@ -553,7 +553,7 @@ protected: ResolveOrRejectValue mValue; nsTArray> mThenValues; nsTArray> mChainedPromises; - bool mHaveConsumer; + bool mHaveRequest; }; template @@ -693,34 +693,34 @@ private: }; /* - * Class to encapsulate a MediaPromise::Consumer reference. Use this as the member + * Class to encapsulate a MediaPromise::Request reference. Use this as the member * variable for a class waiting on a media promise. */ template -class MediaPromiseConsumerHolder +class MediaPromiseRequestHolder { public: - MediaPromiseConsumerHolder() {} - ~MediaPromiseConsumerHolder() { MOZ_ASSERT(!mConsumer); } + MediaPromiseRequestHolder() {} + ~MediaPromiseRequestHolder() { MOZ_ASSERT(!mRequest); } - void Begin(typename PromiseType::Consumer* aConsumer) + void Begin(typename PromiseType::Request* aRequest) { MOZ_DIAGNOSTIC_ASSERT(!Exists()); - mConsumer = aConsumer; + mRequest = aRequest; } void Complete() { MOZ_DIAGNOSTIC_ASSERT(Exists()); - mConsumer = nullptr; + mRequest = nullptr; } // Disconnects and forgets an outstanding promise. The resolve/reject methods // will never be called. void Disconnect() { MOZ_ASSERT(Exists()); - mConsumer->Disconnect(); - mConsumer = nullptr; + mRequest->Disconnect(); + mRequest = nullptr; } void DisconnectIfExists() { @@ -729,10 +729,10 @@ public: } } - bool Exists() { return !!mConsumer; } + bool Exists() { return !!mRequest; } private: - nsRefPtr mConsumer; + nsRefPtr mRequest; }; // Proxy Media Calls. diff --git a/dom/media/mediasource/MediaSourceReader.h b/dom/media/mediasource/MediaSourceReader.h index 3183fe51c14f..2e68e2d5d3ee 100644 --- a/dom/media/mediasource/MediaSourceReader.h +++ b/dom/media/mediasource/MediaSourceReader.h @@ -240,8 +240,8 @@ private: nsRefPtr mAudioTrack; nsRefPtr mVideoTrack; - MediaPromiseConsumerHolder mAudioRequest; - MediaPromiseConsumerHolder mVideoRequest; + MediaPromiseRequestHolder mAudioRequest; + MediaPromiseRequestHolder mVideoRequest; MediaPromiseHolder mAudioPromise; MediaPromiseHolder mVideoPromise; @@ -261,8 +261,8 @@ private: int64_t mLastAudioTime; int64_t mLastVideoTime; - MediaPromiseConsumerHolder mAudioSeekRequest; - MediaPromiseConsumerHolder mVideoSeekRequest; + MediaPromiseRequestHolder mAudioSeekRequest; + MediaPromiseRequestHolder mVideoSeekRequest; MediaPromiseHolder mSeekPromise; // Temporary seek information while we wait for the data diff --git a/dom/media/mediasource/SourceBuffer.h b/dom/media/mediasource/SourceBuffer.h index 20a8ccb0a66d..a5ed09734bff 100644 --- a/dom/media/mediasource/SourceBuffer.h +++ b/dom/media/mediasource/SourceBuffer.h @@ -186,7 +186,7 @@ private: // aborted and another AppendData queued. uint32_t mUpdateID; - MediaPromiseConsumerHolder mPendingAppend; + MediaPromiseRequestHolder mPendingAppend; const nsCString mType; }; diff --git a/dom/media/mediasource/TrackBuffer.h b/dom/media/mediasource/TrackBuffer.h index 2a0c6a46d8c8..b71502dc4cea 100644 --- a/dom/media/mediasource/TrackBuffer.h +++ b/dom/media/mediasource/TrackBuffer.h @@ -221,7 +221,7 @@ private: MediaPromiseHolder mInitializationPromise; // Track our request for metadata from the reader. - MediaPromiseConsumerHolder mMetadataRequest; + MediaPromiseRequestHolder mMetadataRequest; }; } // namespace mozilla diff --git a/dom/media/omx/MediaCodecReader.cpp b/dom/media/omx/MediaCodecReader.cpp index 02ef9a7fe73a..baff75705eaf 100644 --- a/dom/media/omx/MediaCodecReader.cpp +++ b/dom/media/omx/MediaCodecReader.cpp @@ -651,7 +651,7 @@ MediaCodecReader::AsyncReadMetadata() nsRefPtr self = this; mMediaResourceRequest.Begin(CreateMediaCodecs() - ->RefableThen(GetTaskQueue(), __func__, + ->Then(GetTaskQueue(), __func__, [self] (bool) -> void { self->mMediaResourceRequest.Complete(); self->HandleResourceAllocated(); diff --git a/dom/media/omx/MediaCodecReader.h b/dom/media/omx/MediaCodecReader.h index 6a28e57447df..03489f9557a5 100644 --- a/dom/media/omx/MediaCodecReader.h +++ b/dom/media/omx/MediaCodecReader.h @@ -182,7 +182,7 @@ protected: MediaPromiseHolder mMetadataPromise; // XXX Remove after bug 1168008 land. - MediaPromiseConsumerHolder mMediaResourceRequest; + MediaPromiseRequestHolder mMediaResourceRequest; MediaPromiseHolder mMediaResourcePromise; private: diff --git a/dom/media/omx/MediaOmxReader.cpp b/dom/media/omx/MediaOmxReader.cpp index 28039e33369a..034c1b4a149a 100644 --- a/dom/media/omx/MediaOmxReader.cpp +++ b/dom/media/omx/MediaOmxReader.cpp @@ -251,7 +251,7 @@ MediaOmxReader::AsyncReadMetadata() nsRefPtr self = this; mMediaResourceRequest.Begin(mOmxDecoder->AllocateMediaResources() - ->RefableThen(GetTaskQueue(), __func__, + ->Then(GetTaskQueue(), __func__, [self] (bool) -> void { self->mMediaResourceRequest.Complete(); self->HandleResourceAllocated(); diff --git a/dom/media/omx/MediaOmxReader.h b/dom/media/omx/MediaOmxReader.h index 6f93a6dc8a7b..f0183897b780 100644 --- a/dom/media/omx/MediaOmxReader.h +++ b/dom/media/omx/MediaOmxReader.h @@ -45,7 +45,7 @@ class MediaOmxReader : public MediaOmxCommonReader // AbstractMediaDecoder::mDecoder will be non-null. bool mIsShutdown; MediaPromiseHolder mMetadataPromise; - MediaPromiseConsumerHolder mMediaResourceRequest; + MediaPromiseRequestHolder mMediaResourceRequest; protected: android::sp mOmxDecoder; android::sp mExtractor;