All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
te::qt::af::UserPlugins Class Reference

A singleton for managing the plugins enabled by a specific user. More...

#include <UserPlugins.h>

Inheritance diagram for te::qt::af::UserPlugins:
te::common::ObjectLevelLockable< UserPlugins,::boost::mutex,::boost::lock_guard< ::boost::mutex >,::boost::lock_guard< ::boost::mutex > > te::common::Singleton< UserPlugins >

Public Types

typedef
ObjectLevelLockingPolicy
< ::boost::lock_guard
< ::boost::mutex > > 
LockRead
 
typedef
ObjectLevelLockingPolicy
< ::boost::lock_guard
< ::boost::mutex > > 
LockWrite
 
typedef volatile UserPlugins VolatileType
 

Public Member Functions

void load ()
 It starts all the plugins enabled by the user. More...
 

Static Public Member Functions

static UserPluginsgetInstance ()
 It returns a reference to the singleton instance. More...
 

Protected Member Functions

 UserPlugins ()
 It initializes the singleton. More...
 
 ~UserPlugins ()
 Destructor. More...
 

Friends

class te::common::Singleton< UserPlugins >
 

Detailed Description

A singleton for managing the plugins enabled by a specific user.

This singleton can be used to keep the list of plugins enabled by a given application user.

It will look for a plugin configuration file as follows:

  • first, searchs for the plugin configuration file name in SystemApplicationSettings
  • if the file name is not found in SystemApplicationSettings, uses the default name defined by the macro TERRALIB_APPLICATION_PLUGINS_FILE
  • then it check for this file in the current application dir
  • if not foud it looks in the syste application dir
  • if not found looks in the user folder
  • and finally it uses a location defined by an environment variable TERRALIB_DIR_ENVVAR under TERRALIB_CONFIG_DIR

Definition at line 59 of file UserPlugins.h.

Member Typedef Documentation

typedef ObjectLevelLockingPolicy<::boost::lock_guard< ::boost::mutex > > te::common::ObjectLevelLockable< UserPlugins , ::boost::mutex , ::boost::lock_guard< ::boost::mutex > , ::boost::lock_guard< ::boost::mutex > >::LockRead
inherited

Definition at line 205 of file ThreadingPolicies.h.

typedef ObjectLevelLockingPolicy<::boost::lock_guard< ::boost::mutex > > te::common::ObjectLevelLockable< UserPlugins , ::boost::mutex , ::boost::lock_guard< ::boost::mutex > , ::boost::lock_guard< ::boost::mutex > >::LockWrite
inherited

Definition at line 206 of file ThreadingPolicies.h.

typedef volatile UserPlugins te::common::ObjectLevelLockable< UserPlugins , ::boost::mutex , ::boost::lock_guard< ::boost::mutex > , ::boost::lock_guard< ::boost::mutex > >::VolatileType
inherited

Definition at line 204 of file ThreadingPolicies.h.

Constructor & Destructor Documentation

te::qt::af::UserPlugins::UserPlugins ( )
protected

It initializes the singleton.

Definition at line 148 of file UserPlugins.cpp.

te::qt::af::UserPlugins::~UserPlugins ( )
protected

Destructor.

Definition at line 152 of file UserPlugins.cpp.

Member Function Documentation

static UserPlugins & te::common::Singleton< UserPlugins >::getInstance ( )
staticinherited

It returns a reference to the singleton instance.

Returns
A reference to the singleton instance.

Referenced by te::qt::af::ApplicationController::initializePlugins().

void te::qt::af::UserPlugins::load ( )

Friends And Related Function Documentation

friend class te::common::Singleton< UserPlugins >
friend

Definition at line 66 of file UserPlugins.h.


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