blob: f94509cd0df554454d746703c6e6c3ab2d350735 [file] [log] [blame] [edit]
// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "config.h"
#include "modules/mediarecorder/BlobEvent.h"
#include "modules/mediarecorder/BlobEventInit.h"
namespace blink {
// static
PassRefPtrWillBeRawPtr<BlobEvent> BlobEvent::create()
{
return adoptRefWillBeNoop(new BlobEvent);
}
// static
PassRefPtrWillBeRawPtr<BlobEvent> BlobEvent::create(const AtomicString& type, const BlobEventInit& initializer)
{
return adoptRefWillBeNoop(new BlobEvent(type, initializer));
}
// static
PassRefPtrWillBeRawPtr<BlobEvent> BlobEvent::create(const AtomicString& type, Blob* blob)
{
return adoptRefWillBeNoop(new BlobEvent(type, blob));
}
const AtomicString& BlobEvent::interfaceName() const
{
return EventNames::BlobEvent;
}
DEFINE_TRACE(BlobEvent)
{
visitor->trace(m_blob);
Event::trace(visitor);
}
BlobEvent::BlobEvent(const AtomicString& type, const BlobEventInit& initializer)
: Event(type, initializer)
{
if (initializer.hasBlob())
m_blob = initializer.blob();
}
BlobEvent::BlobEvent(const AtomicString& type, Blob* blob)
: Event(type, false /* canBubble */, false /* cancelable */)
, m_blob(blob)
{
}
} // namespace blink