Skip to main content

HTG URL INSTALLATION


1. Install package

$ pip install htg-url-generator

2. Register package in INSTALLED_APPS in the Django settings:

INSTALLED_APPS = [
    ...
    'htg_url',
    ...
]

3. Declare a new 'AbstractHtgUrlGenerator' wrapper class and override 'create_unique_identifier' method:

class ExampleGeneratorClass(AbstractHtgUrlGenerator):
    @staticmethod
    def create_unique_identifier(**properties):
        ...
        Include
        custom
        implementation
        ...
Return value for the 'create_unique_identifier' method should be a string

4. Declare a new 'AbstractFetchDataFromSap' wrapper class and override 'create_unique_identifier' method:

class ExampleFetcherCLass(AbstractFetchDataFromSap):
    @staticmethod
    def fetch_document_from_sap(**properties):
        ...
        Include
        custom
        implementation
        ...
Return value for the 'fetch_document_from_sap' method should be a base64 encoded string or None

5. Declare a new 'AbstractDownloadDocumentView' wrapper class:

class ExampleDownloadDocumentView(AbstractDownloadDocumentView):
    pass
By default 'AbstractDownloadDocumentView' class does NOT require login or any permission. Override if necessary

6. Register a new path in 'urls.py' and map declared view class:

    path('document/<token>/', ExampleDownloadDocumentView.as_view())

7. Declare settings for the package in the Django settings

HTG_URL_SETTINGS = {
    'HTG_URL_REDIS_TTL': 216000, # 60 minutes
    'HTG_WRAPPER_CLASS': 'app_name.file_name.class_name',
    'DOC_WRAPPER_CLASS': 'app_name.file_name.class_name'
    'REDIS_CONNECTION_STRING': 'redis_connection_string' or None
}

8. Run tests

$ python manage.py test htg_url

NOTE

Package will use connection string to connect to Redis if it is defined in settings under 'REDIS_CONNECTION_STRING'.
Otherwise it will initialize connection using environment variables (see below)
Package expects you to have 'REDIS_HOST', 'REDIS_PORT', 'REDIS_PASSWORD' and 'CACHE_REDIS_DB' (db index) environment variables as follows:
host = os.environ.get('REDIS_HOST'), port = int(os.environ.get('REDIS_PORT')),
password = os.environ.get('REDIS_PASSWORD'), os.environ.get('CACHE_REDIS_DB')

NOTE

Package also expects you to have 'libmagic' installed on your machine as 'python-magic' library depends on it:
$ sudo apt-get install libmagic1

Release files for htg-url-generator 0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for htg-url-generator 0.2
File Size Uploaded
htg_url_generator-0.2.tar.gz 8.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for htg-url-generator 0.2
File Interpreter ABI Platform
htg_url_generator-0.2-py3-none-any.whl Python 3 none any Details

Total release size: 17.6 kB

Release files / htg_url_generator-0.2.tar.gz

Download URL htg_url_generator-0.2.tar.gz
Size 8.4 kB
Tags Source
SHA-256 checksum
How to use checksums
59006caf1f9f9272b572cd3eaa2e58624fa4d9a6c6da76b8508dce829b4c5338
BLAKE2b-256 checksum
How to use checksums
d99db7c1ad4f2d092a33b19d5250211876a75ac7a12ff0f7dcc79b1edfa24917
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

Release files / htg_url_generator-0.2-py3-none-any.whl

Download URL htg_url_generator-0.2-py3-none-any.whl
Size 9.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3b89f4a601945f083505d872cb2962be9901299a2567a99789035cb33c540cb8
BLAKE2b-256 checksum
How to use checksums
83ca8d40af46e2b2da623cd48a4d3aaaf0229509792626460df921c489cfae35
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

Release history Release notifications | RSS feed

This release

0.2 This release

2 release files

0.1.13

2 release files

0.1.12

2 release files

0.1.11

2 release files

0.1.10

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page