python-terminusgps 45.5.0__tar.gz → 45.6.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/PKG-INFO +1 -1
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/conf.py +1 -1
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/pyproject.toml +1 -1
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/authorizenet/services.py +15 -8
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/uv.lock +1 -1
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/.github/workflows/sphinx.yml +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/.gitignore +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/.python-version +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/COPYING +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/README.md +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/Makefile +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/make.bat +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/requirements.txt +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/authorizenet/api.rst +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/authorizenet/auth.rst +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/authorizenet/constants.rst +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/authorizenet/exceptions.rst +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/authorizenet/index.rst +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/authorizenet/usage.rst +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/index.rst +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/mixins.rst +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/validators.rst +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/wialon/constants.rst +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/wialon/exceptions.rst +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/wialon/index.rst +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/wialon/items.rst +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/wialon/session.rst +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/wialon/usage.rst +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/__init__.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/authorizenet/__init__.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/authorizenet/api/__init__.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/authorizenet/api/address_profiles.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/authorizenet/api/customer_profiles.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/authorizenet/api/payment_profiles.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/authorizenet/api/subscriptions.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/authorizenet/api/transactions.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/authorizenet/auth.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/authorizenet/constants.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/authorizenet/controllers.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/default_settings.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/mixins.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/validators.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/__init__.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/constants.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/flags.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/items/__init__.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/items/account.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/items/base.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/items/factory.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/items/resource.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/items/retranslator.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/items/route.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/items/unit.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/items/unit_group.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/items/user.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/session.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/utils.py +0 -0
- {python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/validators.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: python-terminusgps
|
|
3
|
-
Version: 45.
|
|
3
|
+
Version: 45.6.0
|
|
4
4
|
Summary: Provides abstractions/utilities for working with Wialon API, Authorize.NET API, AWS API, and more.
|
|
5
5
|
Project-URL: Documentation, https://terminusgps.github.io/python-terminusgps
|
|
6
6
|
Project-URL: Repository, https://github.com/terminusgps/python-terminusgps
|
|
@@ -12,7 +12,7 @@ sys.path.insert(0, os.path.abspath("../../"))
|
|
|
12
12
|
project = "python-terminusgps"
|
|
13
13
|
copyright = "2025, Terminus GPS, LLC"
|
|
14
14
|
author = "Terminus GPS, LLC"
|
|
15
|
-
release = "45.
|
|
15
|
+
release = "45.6.0"
|
|
16
16
|
|
|
17
17
|
# -- General configuration ---------------------------------------------------
|
|
18
18
|
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "python-terminusgps"
|
|
3
|
-
version = "45.
|
|
3
|
+
version = "45.6.0"
|
|
4
4
|
description = "Provides abstractions/utilities for working with Wialon API, Authorize.NET API, AWS API, and more."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
authors = [ {name = "Blake Nall", email = "blake@terminusgps.com" } ]
|
{python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/authorizenet/services.py
RENAMED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
from abc import ABC
|
|
2
1
|
from functools import cached_property
|
|
3
2
|
from typing import Callable
|
|
4
3
|
|
|
@@ -8,11 +7,14 @@ from django.core.exceptions import ImproperlyConfigured
|
|
|
8
7
|
from lxml.objectify import ObjectifiedElement
|
|
9
8
|
|
|
10
9
|
from .auth import get_environment, get_merchant_auth, get_validation_mode
|
|
11
|
-
from .controllers import
|
|
10
|
+
from .controllers import (
|
|
11
|
+
AuthorizenetControllerExecutionError,
|
|
12
|
+
execute_controller,
|
|
13
|
+
)
|
|
12
14
|
|
|
13
15
|
|
|
14
|
-
class AuthorizenetService
|
|
15
|
-
"""
|
|
16
|
+
class AuthorizenetService:
|
|
17
|
+
"""A service that safely interacts with the Authorizenet API."""
|
|
16
18
|
|
|
17
19
|
REQUIRED_SETTINGS = (
|
|
18
20
|
"MERCHANT_AUTH_ENVIRONMENT",
|
|
@@ -27,7 +29,7 @@ class AuthorizenetService(ABC):
|
|
|
27
29
|
if not hasattr(settings, setting):
|
|
28
30
|
raise ImproperlyConfigured(f"'{setting}' setting is required.")
|
|
29
31
|
|
|
30
|
-
def
|
|
32
|
+
def request(self, func: Callable, *args, **kwargs) -> ObjectifiedElement:
|
|
31
33
|
"""
|
|
32
34
|
Calls the Authorizenet API function with arguments and returns the result.
|
|
33
35
|
|
|
@@ -35,14 +37,19 @@ class AuthorizenetService(ABC):
|
|
|
35
37
|
:type func: ~typing.Callable
|
|
36
38
|
:param args: Positional arguments for the API call.
|
|
37
39
|
:param kwargs: Keyword arguments for the API call.
|
|
40
|
+
:raises ValueError: If any function arguments were invalid.
|
|
38
41
|
:raises ~terminusgps.authorizenet.controllers.AuthorizenetControllerExecutionError: If the API call failed.
|
|
39
42
|
:returns: The Authorizenet API call response.
|
|
40
43
|
:rtype: ~lxml.objectify.ObjectifiedElement
|
|
41
44
|
|
|
42
45
|
"""
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
+
try:
|
|
47
|
+
request, controller_cls = func(*args, **kwargs)
|
|
48
|
+
request.merchantAuthentication = self.merchantAuthentication
|
|
49
|
+
controller = controller_cls(request)
|
|
50
|
+
return execute_controller(controller, self.environment)
|
|
51
|
+
except AuthorizenetControllerExecutionError | ValueError:
|
|
52
|
+
raise
|
|
46
53
|
|
|
47
54
|
@cached_property
|
|
48
55
|
def merchantAuthentication(self) -> merchantAuthenticationType:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/authorizenet/constants.rst
RENAMED
|
File without changes
|
{python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/docs/source/authorizenet/exceptions.rst
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/authorizenet/__init__.py
RENAMED
|
File without changes
|
{python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/authorizenet/api/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/authorizenet/api/transactions.py
RENAMED
|
File without changes
|
|
File without changes
|
{python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/authorizenet/constants.py
RENAMED
|
File without changes
|
{python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/authorizenet/controllers.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/items/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/items/resource.py
RENAMED
|
File without changes
|
{python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/items/retranslator.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_terminusgps-45.5.0 → python_terminusgps-45.6.0}/terminusgps/wialon/items/unit_group.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|