{{cookiecutter.python_package}}.skos   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 42
Duplicated Lines 57.14 %

Importance

Changes 0
Metric Value
eloc 30
dl 24
loc 42
rs 10
c 0
b 0
f 0
wmc 2

1 Function

Rating   Name   Duplication   Size   Complexity  
A create_registry() 24 24 2

How to fix   Duplicated Code   

Duplicated Code

Duplicate code is one of the most pungent code smells. A rule that is often used is to re-structure code once it is duplicated in three or more places.

Common duplication problems, and corresponding solutions are:

1
import logging
2
3
import requests
4
from atramhasis import skos
5
from cachecontrol import CacheControl
6
from cachecontrol.heuristics import ExpiresAfter
7
from skosprovider.registry import Registry
8
from skosprovider_getty.providers import AATProvider
9
from skosprovider_getty.providers import TGNProvider
10
11
log = logging.getLogger(__name__)
12
LICENSES = [
13
    'https://creativecommons.org/licenses/by/4.0/',
14
    'http://data.vlaanderen.be/doc/licentie/modellicentie-gratis-hergebruik/v1.0'
15
]
16
17
18 View Code Duplication
def create_registry(request):
19
    try:
20
        registry = Registry(instance_scope='threaded_thread')
21
22
        getty_session = CacheControl(requests.Session(), heuristic=ExpiresAfter(weeks=1))
23
24
        aat = AATProvider(
25
            {'id': 'AAT', 'subject': ['external']},
26
            session=getty_session
27
        )
28
29
        tgn = TGNProvider(
30
            {'id': 'TGN', 'subject': ['external']},
31
            session=getty_session
32
        )
33
34
        registry.register_provider(aat)
35
        registry.register_provider(tgn)
36
        skos.register_providers_from_db(registry, request.db)
37
38
        return registry
39
    except AttributeError:
40
        log.exception("Attribute error during creation of Registry.")
41
        raise
42