aboutsummaryrefslogtreecommitdiffstats
path: root/bsie/lib/bsie.py
diff options
context:
space:
mode:
authorMatthias Baumgartner <dev@igsor.net>2023-07-26 12:48:54 +0200
committerMatthias Baumgartner <dev@igsor.net>2023-07-26 12:48:54 +0200
commitd6a5c0f596a212f0e1d4e4b351b5b0e6857d74f7 (patch)
tree645c6fe6b120bb4759b7ac07b4799ffec3bfb4bf /bsie/lib/bsie.py
parentb1ee4452c0e4b820efe69e428e7eaa54cf87ae16 (diff)
downloadbsie-d6a5c0f596a212f0e1d4e4b351b5b0e6857d74f7.tar.gz
bsie-d6a5c0f596a212f0e1d4e4b351b5b0e6857d74f7.tar.bz2
bsie-d6a5c0f596a212f0e1d4e4b351b5b0e6857d74f7.zip
refactored naming policy into uri matcher
Diffstat (limited to 'bsie/lib/bsie.py')
-rw-r--r--bsie/lib/bsie.py12
1 files changed, 6 insertions, 6 deletions
diff --git a/bsie/lib/bsie.py b/bsie/lib/bsie.py
index b02e707..9aa0bdb 100644
--- a/bsie/lib/bsie.py
+++ b/bsie/lib/bsie.py
@@ -3,10 +3,10 @@
import typing
# bsie imports
-from bsie.utils import bsfs, node, ns
+from bsie.utils import bsfs, ns
+from bsie.matcher import Matcher, nodes
# inner-module imports
-from .naming_policy import NamingPolicy
from .pipeline import Pipeline
# exports
@@ -40,7 +40,7 @@ class BSIE():
# pipeline.
pipeline: Pipeline,
# naming policy
- naming_policy: NamingPolicy,
+ matcher: Matcher,
# principals to extract at most. None implies all available w.r.t. extractors.
collect: typing.Optional[typing.Iterable[bsfs.URI]] = None,
# principals to discard.
@@ -48,7 +48,7 @@ class BSIE():
):
# store pipeline and naming policy
self._pipeline = pipeline
- self._naming_policy = naming_policy
+ self._matcher = matcher
# start off with available principals
self._principals = {pred.uri for pred in self._pipeline.principals}
# limit principals to specified ones by argument.
@@ -79,7 +79,7 @@ class BSIE():
self,
path: bsfs.URI,
principals: typing.Optional[typing.Iterable[bsfs.URI]] = None,
- ) -> typing.Iterator[typing.Tuple[node.Node, bsfs.URI, typing.Any]]:
+ ) -> typing.Iterator[typing.Tuple[nodes.Node, bsfs.URI, typing.Any]]:
"""Produce triples for a given *path*. Limit to *principals* if given."""
# get requested principals.
principals = set(principals) if principals is not None else self._principals
@@ -88,6 +88,6 @@ class BSIE():
# predicate lookup
principals = {self.schema.predicate(pred) for pred in principals}
# invoke pipeline
- yield from self._naming_policy(self._pipeline(path, principals))
+ yield from self._matcher(self._pipeline(path, principals))
## EOF ##