Skip to main content

The PyUtilib Component Architecture.

Project description

Overview

This Python package provides a modular component framework, which consists of the following core classes:

Interface:

Subclasses of this class declare component interfaces that are registered in the framework

ExtensionPoint:

A class used to declare extension points, which can access components with a particular interface

Plugin:

Subclasses of this class declare plugins, which can be used to provide services within this component framework.

SingletonPlugin:

Subclasses of this class declare singleton plugins, for which a single instance can be declared.

PluginEnvironment:

A class that maintains the registries for interfaces, extension points and components.

PluginGlobals:

A class that maintains global data concerning the set of environments that are currently being used.

PluginError:

The exception class that is raised when errors arise in this framework.

The outline of this framework is adapted from Trac (see the trac.core module). This framework generalizes the Trac by supporting multi-environment management of components, as well as non-singleton plugins. For those familiar with Trac, the following classes roughly correspond with each other:

Trac

PyUtilib

Interface

Interface

ExtensionPoint

ExtensionPoint

Component

SingletonPlugin

ComponentManager

PluginEnvironment

See The PyUtilib Component Architecture Reference Manual for a detailed description of PyUtilib components and examples of their use.

License

BSD. See the LICENSE.txt file.

Organization

Third Party Software

None.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyutilib.component.core-4.3.tar.gz (17.0 kB view details)

Uploaded Source

File details

Details for the file pyutilib.component.core-4.3.tar.gz.

File metadata

File hashes

Hashes for pyutilib.component.core-4.3.tar.gz
Algorithm Hash digest
SHA256 46cbc25598868bc11c5e2b89bb97964a644caed97e46ee5f61925e4a48369418
MD5 aa47a5242dac46eed3f4eeb7df7663ae
BLAKE2b-256 45970b15a05f7589b09848c55c6a3173b0aede76cddd57b46266bc0af7630d93

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page