Shaka Player Embedded
Public Member Functions | Public Attributes | List of all members
shaka::js::idb::IDBTransaction Class Reference

#include <transaction.h>

Inheritance diagram for shaka::js::idb::IDBTransaction:
shaka::js::events::EventTarget shaka::BackingObject shaka::memory::Traceable

Public Member Functions

 IDBTransaction (RefPtr< IDBDatabase > db, IDBTransactionMode mode, const std::vector< std::string > &scope)
 
void Trace (memory::HeapTracer *tracer) const override
 
ExceptionOr< RefPtr< IDBObjectStore > > ObjectStore (const std::string name)
 
ExceptionOr< void > Abort ()
 
RefPtr< IDBRequestAddRequest (RefPtr< IDBRequest > request)
 
void DoCommit (SqliteConnection *connection)
 
void DoCommit (SqliteTransaction *transaction)
 
void AddObjectStore (const std::string &name)
 
void DeleteObjectStore (const std::string &name)
 
- Public Member Functions inherited from shaka::js::events::EventTarget
 EventTarget ()
 
void AddEventListener (const std::string &type, Listener callback)
 
void SetCppEventListener (EventType type, std::function< void()> callback)
 
void RemoveEventListener (const std::string &type, Listener callback)
 
void UnsetCppEventListener (EventType type)
 
ExceptionOr< bool > DispatchEvent (RefPtr< Event > event)
 
ExceptionOr< bool > DispatchEventInternal (RefPtr< Event > event, bool *did_listeners_throw)
 
template<typename EventType , typename... Args>
std::shared_ptr< ThreadEvent< bool > > ScheduleEvent (Args &&... args)
 
template<typename EventType , typename... Args>
ExceptionOr< bool > RaiseEvent (Args... args)
 
- Public Member Functions inherited from shaka::BackingObject
 BackingObject ()
 
void Trace (memory::HeapTracer *tracer) const override
 
bool IsRootedAlive () const override
 
std::string name () const
 
virtual BackingObjectFactoryBasefactory () const =0
 
bool DerivedFrom (const std::string &base)
 
ReturnVal< JsValue > JsThis () const
 
void SetJsThis (Handle< JsObject > this_)
 
- Public Member Functions inherited from shaka::memory::Traceable
virtual ~Traceable ()
 
virtual bool IsShortLived () const
 

Public Attributes

Listener on_abort
 
Listener on_complete
 
Listener on_error
 
const Member< IDBDatabasedb
 
Member< dom::DOMExceptionerror
 
const IDBTransactionMode mode
 
bool aborted
 
bool active
 
bool done
 
SqliteTransactionsqlite_transaction
 

Additional Inherited Members

- Public Types inherited from shaka::js::events::EventTarget
using Listener = optional< Callback >
 
- Static Public Member Functions inherited from shaka::BackingObject
static void * operator new[] (size_t size)=delete
 
static void operator delete[] (void *)=delete
 
- Static Public Attributes inherited from shaka::BackingObject
static constexpr const size_t kInternalFieldCount = 2
 
- Static Public Attributes inherited from shaka::memory::Traceable
static constexpr const uint64_t kShortLiveDurationMs = 5000
 
- Protected Member Functions inherited from shaka::js::events::EventTarget
void AddListenerField (EventType type, Listener *on_field)
 
- Protected Member Functions inherited from shaka::BackingObject
 ~BackingObject () override
 

Detailed Description

Definition at line 50 of file transaction.h.

Constructor & Destructor Documentation

§ IDBTransaction()

shaka::js::idb::IDBTransaction::IDBTransaction ( RefPtr< IDBDatabase db,
IDBTransactionMode  mode,
const std::vector< std::string > &  scope 
)

Definition at line 29 of file transaction.cc.

Member Function Documentation

§ Abort()

ExceptionOr< void > shaka::js::idb::IDBTransaction::Abort ( )

Definition at line 76 of file transaction.cc.

§ AddObjectStore()

void shaka::js::idb::IDBTransaction::AddObjectStore ( const std::string &  name)

Definition at line 137 of file transaction.cc.

§ AddRequest()

RefPtr< IDBRequest > shaka::js::idb::IDBTransaction::AddRequest ( RefPtr< IDBRequest request)

Definition at line 86 of file transaction.cc.

§ DeleteObjectStore()

void shaka::js::idb::IDBTransaction::DeleteObjectStore ( const std::string &  name)

Definition at line 142 of file transaction.cc.

§ DoCommit() [1/2]

void shaka::js::idb::IDBTransaction::DoCommit ( SqliteConnection connection)

Not to be confused with the JavaScript commit() method, this synchronously runs all the pending requests and executes the transaction in the given sqlite connection.

Definition at line 91 of file transaction.cc.

§ DoCommit() [2/2]

void shaka::js::idb::IDBTransaction::DoCommit ( SqliteTransaction transaction)

Definition at line 106 of file transaction.cc.

§ ObjectStore()

ExceptionOr< RefPtr< IDBObjectStore > > shaka::js::idb::IDBTransaction::ObjectStore ( const std::string  name)

Definition at line 60 of file transaction.cc.

§ Trace()

Doxygen_Skip void shaka::js::idb::IDBTransaction::Trace ( memory::HeapTracer tracer) const
overridevirtual

Called during a GC run. This should call HeapTracer::Trace on all Traceable members. Be sure to call the base method when overriding.

Reimplemented from shaka::js::events::EventTarget.

Definition at line 51 of file transaction.cc.

Member Data Documentation

§ aborted

bool shaka::js::idb::IDBTransaction::aborted

Definition at line 82 of file transaction.h.

§ active

bool shaka::js::idb::IDBTransaction::active

Definition at line 83 of file transaction.h.

§ db

const Member<IDBDatabase> shaka::js::idb::IDBTransaction::db

Definition at line 79 of file transaction.h.

§ done

bool shaka::js::idb::IDBTransaction::done

Definition at line 84 of file transaction.h.

§ error

Member<dom::DOMException> shaka::js::idb::IDBTransaction::error

Definition at line 80 of file transaction.h.

§ mode

const IDBTransactionMode shaka::js::idb::IDBTransaction::mode

Definition at line 81 of file transaction.h.

§ on_abort

Listener shaka::js::idb::IDBTransaction::on_abort

Definition at line 75 of file transaction.h.

§ on_complete

Listener shaka::js::idb::IDBTransaction::on_complete

Definition at line 76 of file transaction.h.

§ on_error

Listener shaka::js::idb::IDBTransaction::on_error

Definition at line 77 of file transaction.h.

§ sqlite_transaction

SqliteTransaction* shaka::js::idb::IDBTransaction::sqlite_transaction

Definition at line 88 of file transaction.h.


The documentation for this class was generated from the following files: