reach_commons 0.17.5__tar.gz → 0.17.6__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.
Files changed (32) hide show
  1. {reach_commons-0.17.5 → reach_commons-0.17.6}/PKG-INFO +1 -1
  2. {reach_commons-0.17.5 → reach_commons-0.17.6}/pyproject.toml +1 -1
  3. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/redis_manager.py +10 -0
  4. {reach_commons-0.17.5 → reach_commons-0.17.6}/README.md +0 -0
  5. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/__init__.py +0 -0
  6. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/app_logging/__init__.py +0 -0
  7. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/app_logging/http_logger.py +0 -0
  8. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/app_logging/log_deprecated_endpoints.py +0 -0
  9. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/app_logging/logger.py +0 -0
  10. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/app_logging/logging_config.py +0 -0
  11. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/clients/__init__.py +0 -0
  12. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/clients/event_processor.py +0 -0
  13. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/clients/hubspot.py +0 -0
  14. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/clients/outscraper.py +0 -0
  15. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/clients/reach_data_bridge.py +0 -0
  16. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/clients/reach_ops_api.py +0 -0
  17. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/mongo/__init__.py +0 -0
  18. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/mongo/customer_persistence.py +0 -0
  19. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/mongo/customer_persistence_async.py +0 -0
  20. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/mongo/validation/__init__.py +0 -0
  21. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/reach_aws/__init__.py +0 -0
  22. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/reach_aws/commons.py +0 -0
  23. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/reach_aws/dynamo_db.py +0 -0
  24. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/reach_aws/exceptions.py +0 -0
  25. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/reach_aws/firehose.py +0 -0
  26. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/reach_aws/kms.py +0 -0
  27. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/reach_aws/s3.py +0 -0
  28. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/reach_aws/sqs.py +0 -0
  29. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/reach_base_model.py +0 -0
  30. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/sms_smart_encoding.py +0 -0
  31. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/utils.py +0 -0
  32. {reach_commons-0.17.5 → reach_commons-0.17.6}/reach_commons/validations.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: reach_commons
3
- Version: 0.17.5
3
+ Version: 0.17.6
4
4
  Summary: Reach Commons is a versatile utility library designed to streamline and enhance development workflows within the Reach ecosystem.
5
5
  License: MIT
6
6
  Author: Wilson Moraes
@@ -1,7 +1,7 @@
1
1
  # isort .; black .; poetry build; poetry publish
2
2
  [tool.poetry]
3
3
  name = "reach_commons"
4
- version = "0.17.5"
4
+ version = "0.17.6"
5
5
  description = "Reach Commons is a versatile utility library designed to streamline and enhance development workflows within the Reach ecosystem."
6
6
  authors = ["Wilson Moraes <wmoraes@getreach.ai>"]
7
7
  license = "MIT"
@@ -70,3 +70,13 @@ class RedisManager:
70
70
  - bool: True if the key was set successfully, False otherwise (especially when nx=True and key already exists).
71
71
  """
72
72
  return self.redis_connection.set(name=name, value=value, nx=nx, ex=ex)
73
+
74
+ def add_if_absent(self, key, value, expire_seconds=300):
75
+ """
76
+ Insert the key only if it does not exist.
77
+ Returns True if the key was inserted, False otherwise.
78
+ """
79
+ result = self.redis_connection.set(
80
+ name=key, value=value, ex=expire_seconds, nx=True
81
+ )
82
+ return result is True
File without changes