Coverage for heritrace/uri_generator/default_uri_generator.py: 100%

10 statements  

« prev     ^ index     » next       coverage.py v7.6.12, created at 2025-04-18 11:10 +0000

1import uuid 

2 

3from rdflib import URIRef 

4 

5from heritrace.uri_generator.uri_generator import URIGenerator 

6 

7 

8class DefaultURIGenerator(URIGenerator): 

9 def __init__(self, base_iri: str): 

10 self.base_iri = base_iri 

11 

12 def generate_uri(self, entity_type: str | None = None) -> str: 

13 return URIRef(f"{self.base_iri}/{uuid.uuid4().hex}") 

14 

15 def initialize_counters(self, sparql) -> None: 

16 """ 

17 Initialize counters for entity types supported by this URI generator. 

18 Since DefaultURIGenerator uses UUIDs, no counter initialization is needed. 

19 

20 :param sparql: SPARQLWrapper instance to execute queries on the dataset 

21 :return: None 

22 """ 

23 pass