Class sh::filesystem::FilesystemHandlerRegister

class sh::filesystem::FilesystemHandlerRegister : public QObject, public sh::base::Singleton

A register of filesystem handlers.

Each active (i.e. referred to by existing nodes) instance of sh::filesystem::FilesystemHandler must be registered here.

Public Functions

void addHandler(QString scheme, std::shared_ptr<sh::filesystem::FilesystemHandler> handler)

Registers a filesystem handler.

Parameters
  • scheme: The scheme (very first part of a sh::filesystem::Eurl) for which the handler is responsible for.

  • handler: The filesystem handler.

std::shared_ptr<sh::filesystem::FilesystemHandler> findHandler(QString scheme)

Finds a filesystem handler by scheme.

void doInitialize()

Executes singleton initialization.

void doShutdown()

Executes singleton shutdown.

void shutdown()

Shutdown down this singleton.

bool isAlive()

Returns if this singleton is alive (true until its shutdown begins).

Private Functions

FilesystemHandlerRegister()

Private Members

QHash<QString, std::shared_ptr<sh::filesystem::FilesystemHandler>> handlers
QMutex mutex