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

#include <database.h>

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

Public Member Functions

 IDBDatabase (std::shared_ptr< SqliteConnection > connection, const std::string &name, int64_t version, const std::vector< std::string > &store_names)
 
void Trace (memory::HeapTracer *tracer) const override
 
bool is_closed () const
 
ExceptionOr< RefPtr< IDBObjectStore > > CreateObjectStore (const std::string &name, optional< IDBObjectStoreParameters > parameters)
 
ExceptionOr< void > DeleteObjectStore (const std::string &name)
 
ExceptionOr< RefPtr< IDBTransaction > > Transaction (variant< std::string, std::vector< std::string >> store_names, optional< IDBTransactionMode > mode)
 
void Close ()
 
void VersionChangeTransaction (RefPtr< IDBTransaction > trans)
 
- 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_error
 
Listener on_version_change
 
const std::string db_name
 
Member< dom::DOMStringListobject_store_names
 
const int64_t version
 

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 47 of file database.h.

Constructor & Destructor Documentation

§ IDBDatabase()

shaka::js::idb::IDBDatabase::IDBDatabase ( std::shared_ptr< SqliteConnection connection,
const std::string &  name,
int64_t  version,
const std::vector< std::string > &  store_names 
)

Definition at line 29 of file database.cc.

Member Function Documentation

§ Close()

void shaka::js::idb::IDBDatabase::Close ( )

Definition at line 179 of file database.cc.

§ CreateObjectStore()

ExceptionOr< RefPtr< IDBObjectStore > > shaka::js::idb::IDBDatabase::CreateObjectStore ( const std::string &  name,
optional< IDBObjectStoreParameters parameters 
)

Definition at line 51 of file database.cc.

§ DeleteObjectStore()

ExceptionOr< void > shaka::js::idb::IDBDatabase::DeleteObjectStore ( const std::string &  name)

Definition at line 96 of file database.cc.

§ is_closed()

bool shaka::js::idb::IDBDatabase::is_closed ( ) const
inline

Definition at line 61 of file database.h.

§ Trace()

Doxygen_Skip void shaka::js::idb::IDBDatabase::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 45 of file database.cc.

§ Transaction()

ExceptionOr< RefPtr< IDBTransaction > > shaka::js::idb::IDBDatabase::Transaction ( variant< std::string, std::vector< std::string >>  store_names,
optional< IDBTransactionMode mode 
)

Definition at line 129 of file database.cc.

§ VersionChangeTransaction()

void shaka::js::idb::IDBDatabase::VersionChangeTransaction ( RefPtr< IDBTransaction trans)
inline

Definition at line 78 of file database.h.

Member Data Documentation

§ db_name

const std::string shaka::js::idb::IDBDatabase::db_name

Definition at line 65 of file database.h.

§ object_store_names

Member<dom::DOMStringList> shaka::js::idb::IDBDatabase::object_store_names

Definition at line 66 of file database.h.

§ on_abort

Listener shaka::js::idb::IDBDatabase::on_abort

Definition at line 57 of file database.h.

§ on_error

Listener shaka::js::idb::IDBDatabase::on_error

Definition at line 58 of file database.h.

§ on_version_change

Listener shaka::js::idb::IDBDatabase::on_version_change

Definition at line 59 of file database.h.

§ version

const int64_t shaka::js::idb::IDBDatabase::version

Definition at line 67 of file database.h.


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