Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/creactistore/_templates/lib/rdflib/plugin.py
diff options
context:
space:
mode:
Diffstat (limited to 'creactistore/_templates/lib/rdflib/plugin.py')
-rw-r--r--creactistore/_templates/lib/rdflib/plugin.py159
1 files changed, 0 insertions, 159 deletions
diff --git a/creactistore/_templates/lib/rdflib/plugin.py b/creactistore/_templates/lib/rdflib/plugin.py
deleted file mode 100644
index 9f7dc1b..0000000
--- a/creactistore/_templates/lib/rdflib/plugin.py
+++ /dev/null
@@ -1,159 +0,0 @@
-"""
-Plugin support for rdf.
-
-There are a number of plugin points for rdf: parser, serializer,
-store, query processor, and query result. Plugins can be registered
-either through setuptools entry_points or by calling
-rdf.plugin.register directly.
-
-If you have a package that uses a setuptools based setup.py you can add the following to your setup::
-
- entry_points = {
- 'rdf.plugins.parser': [
- 'nt = rdf.plugins.parsers.nt:NTParser',
- ],
- 'rdf.plugins.serializer': [
- 'nt = rdf.plugins.serializers.NTSerializer:NTSerializer',
- ],
- }
-
-See the `setuptools dynamic discovery of services and plugins`__ for more information.
-
-.. __: http://peak.telecommunity.com/DevCenter/setuptools#dynamic-discovery-of-services-and-plugins
-
-"""
-
-from rdflib.store import Store
-from rdflib.parser import Parser
-from rdflib.serializer import Serializer
-from rdflib.query import ResultParser, ResultSerializer
-from rdflib.exceptions import Error
-
-__all__ = ['register', 'get', 'plugins', 'PluginException', 'Plugin', 'PKGPlugin']
-
-entry_points = {'rdf.plugins.store': Store,
- 'rdf.plugins.serializer': Serializer,
- 'rdf.plugins.parser': Parser,
- 'rdf.plugins.resultparser': ResultParser,
- 'rdf.plugins.resultserializer': ResultSerializer,
- }
-
-_plugins = {}
-
-
-class PluginException(Error):
- pass
-
-
-class Plugin(object):
-
- def __init__(self, name, kind, module_path, class_name):
- self.name = name
- self.kind = kind
- self.module_path = module_path
- self.class_name = class_name
- self._class = None
-
- def getClass(self):
- if self._class is None:
- module = __import__(self.module_path, globals(), locals(), [""])
- self._class = getattr(module, self.class_name)
- return self._class
-
-
-class PKGPlugin(Plugin):
-
- def __init__(self, name, kind, ep):
- self.name = name
- self.kind = kind
- self.ep = ep
- self._class = None
-
- def getClass(self):
- if self._class is None:
- self._class = self.ep.load()
- return self._class
-
-
-def register(name, kind, module_path, class_name):
- """
- Register the plugin for (name, kind). The module_path and
- class_name should be the path to a plugin class.
- """
- p = Plugin(name, kind, module_path, class_name)
- _plugins[(name, kind)] = p
-
-
-def get(name, kind):
- """
- Return the class for the specified (name, kind). Raises a
- PluginException if unable to do so.
- """
- try:
- p = _plugins[(name, kind)]
- except KeyError, e:
- raise PluginException("No plugin registered for (%s, %s)" % (name, kind))
- return p.getClass()
-
-
-try:
- from pkg_resources import iter_entry_points
-except ImportError:
- pass # TODO: log a message
-else:
- # add the plugins specified via pkg_resources' EntryPoints.
- for entry_point, kind in entry_points.iteritems():
- for ep in iter_entry_points(entry_point):
- _plugins[(ep.name, kind)] = PKGPlugin(ep.name, kind, ep)
-
-
-def plugins(name=None, kind=None):
- """
- A generator of the plugins.
-
- Pass in name and kind to filter... else leave None to match all.
- """
- for p in _plugins.values():
- if (name is None or name==p.name) and (kind is None or kind==p.kind):
- yield p
-
-register('default', Store,
- 'rdflib.plugins.memory', 'IOMemory')
-register('IOMemory', Store,
- 'rdflib.plugins.memory', 'IOMemory')
-register('Sleepycat', Store,
- 'rdflib.plugins.sleepycat', 'Sleepycat')
-
-register('xml', Serializer,
- 'rdflib.plugins.serializers.rdfxml', 'XMLSerializer')
-register('n3', Serializer,
- 'rdflib.plugins.serializers.n3','N3Serializer')
-register('turtle', Serializer,
- 'rdflib.plugins.serializers.turtle', 'TurtleSerializer')
-register('nt', Serializer,
- 'rdflib.plugins.serializers.nt', 'NTSerializer')
-register('pretty-xml', Serializer,
- 'rdflib.plugins.serializers.rdfxml', 'PrettyXMLSerializer')
-register('trix', Serializer,
- 'rdflib.plugins.serializers.trix', 'TriXSerializer')
-register("nquads", Serializer,
- 'rdflib.plugins.serializers.nquads', 'NQuadsSerializer')
-
-register('application/rdf+xml', Parser,
- 'rdflib.plugins.parsers.rdfxml', 'RDFXMLParser')
-register('text/html', Parser,
- 'rdflib.plugins.parsers.rdfa', 'RDFaParser')
-register('application/xhtml+xml', Parser,
- 'rdflib.plugins.parsers.rdfa', 'RDFaParser')
-register('xml', Parser,
- 'rdflib.plugins.parsers.rdfxml', 'RDFXMLParser')
-register('n3', Parser,
- 'rdflib.plugins.parsers.notation3', 'N3Parser')
-register('nt', Parser,
- 'rdflib.plugins.parsers.nt', 'NTParser')
-register('trix', Parser,
- 'rdflib.plugins.parsers.trix', 'TriXParser')
-register('rdfa', Parser,
- 'rdflib.plugins.parsers.rdfa', 'RDFaParser')
-
-register("nquads", Parser, "rdflib.plugins.parsers.nquads", "NQuadsParser")