fdc-shared-kernel 0.0.52__tar.gz → 0.0.53__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 (75) hide show
  1. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/PKG-INFO +1 -1
  2. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/fdc_shared_kernel.egg-info/PKG-INFO +1 -1
  3. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/pyproject.toml +1 -1
  4. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/event_executor/event_executor.py +8 -8
  5. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/messaging/utils/event_messages.py +15 -15
  6. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/README.md +0 -0
  7. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/README_pypi.md +0 -0
  8. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/fdc_shared_kernel.egg-info/SOURCES.txt +0 -0
  9. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/fdc_shared_kernel.egg-info/dependency_links.txt +0 -0
  10. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/fdc_shared_kernel.egg-info/requires.txt +0 -0
  11. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/fdc_shared_kernel.egg-info/top_level.txt +0 -0
  12. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/requirements.txt +0 -0
  13. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/setup.cfg +0 -0
  14. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/__init__.py +0 -0
  15. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/async_task_executor/__init__.py +0 -0
  16. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/async_task_executor/async_task_executor.py +0 -0
  17. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/auth/__init__.py +0 -0
  18. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/auth/jwt_helper.py +0 -0
  19. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/auth/token_handler.py +0 -0
  20. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/config/__init__.py +0 -0
  21. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/database/__init__.py +0 -0
  22. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/enums/__init__.py +0 -0
  23. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/enums/async_task_status.py +0 -0
  24. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/event_executor/__init__.py +0 -0
  25. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/exceptions/__init__.py +0 -0
  26. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/exceptions/configuration_exceptions.py +0 -0
  27. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/exceptions/custom_exceptions.py +0 -0
  28. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/exceptions/data_validation_exceptions.py +0 -0
  29. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/exceptions/http_exceptions.py +0 -0
  30. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/exceptions/infrastructure_exceptions.py +0 -0
  31. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/exceptions/operational_exceptions.py +0 -0
  32. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/exceptions/security_exceptions.py +0 -0
  33. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/http/__init__.py +0 -0
  34. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/http/httpx_http_client.py +0 -0
  35. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/http/request_http_client.py +0 -0
  36. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/interfaces/__init__.py +0 -0
  37. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/interfaces/databus.py +0 -0
  38. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/interfaces/http.py +0 -0
  39. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/interfaces/keyvault.py +0 -0
  40. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/logger/__init__.py +0 -0
  41. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/messaging/__init__.py +0 -0
  42. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/messaging/aws_databus.py +0 -0
  43. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/messaging/http_databus.py +0 -0
  44. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/messaging/nats_databus.py +0 -0
  45. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/messaging/nats_publisher.py +0 -0
  46. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/messaging/nats_test.py +0 -0
  47. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/messaging/utils/aws_utility.py +0 -0
  48. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/metrics/__init__.py +0 -0
  49. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/metrics/status_tracker.py +0 -0
  50. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/models/__init__.py +0 -0
  51. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/registries/__init__.py +0 -0
  52. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/registries/service_event_registry.py +0 -0
  53. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/security/__init__.py +0 -0
  54. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/security/key_vault/__init__.py +0 -0
  55. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/security/key_vault/aws_secret_manager.py +0 -0
  56. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/security/key_vault/azure_keyvault.py +0 -0
  57. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/status_tracker/__init__.py +0 -0
  58. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/status_tracker/status_tracker.py +0 -0
  59. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/tests/__init__.py +0 -0
  60. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/tests/config/__init__.py +0 -0
  61. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/tests/config/test_config.py +0 -0
  62. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/tests/logger/__init__.py +0 -0
  63. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/tests/logger/test_logger.py +0 -0
  64. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/tests/messaging/__init__.py +0 -0
  65. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/tests/messaging/test_aws_databus.py +0 -0
  66. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/tests/messaging/test_event_executor.py +0 -0
  67. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/tests/messaging/test_nats_interface.py +0 -0
  68. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/tests/utils/__init__.py +0 -0
  69. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/tests/utils/test_data_validators.py +0 -0
  70. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/tests/utils/test_date_format_utils.py +0 -0
  71. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/tests/utils/test_string_utils.py +0 -0
  72. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/utils/__init__.py +0 -0
  73. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/utils/data_validators_utils.py +0 -0
  74. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/utils/date_format_utils.py +0 -0
  75. {fdc_shared_kernel-0.0.52 → fdc_shared_kernel-0.0.53}/shared_kernel/utils/string_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fdc_shared_kernel
3
- Version: 0.0.52
3
+ Version: 0.0.53
4
4
  Summary: Shared library for microservice
5
5
  Author-email: Shikhil S <shikhil.s@dbizsolution.com>, Ahammed Akdham N <ahammedakdham.n@dbizsolution.com>
6
6
  Classifier: Programming Language :: Python :: 3
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fdc_shared_kernel
3
- Version: 0.0.52
3
+ Version: 0.0.53
4
4
  Summary: Shared library for microservice
5
5
  Author-email: Shikhil S <shikhil.s@dbizsolution.com>, Ahammed Akdham N <ahammedakdham.n@dbizsolution.com>
6
6
  Classifier: Programming Language :: Python :: 3
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "fdc_shared_kernel"
7
- version = "0.0.52"
7
+ version = "0.0.53"
8
8
  requires-python = ">=3.7"
9
9
  readme = "README_pypi.md"
10
10
  description = "Shared library for microservice"
@@ -53,15 +53,15 @@ class EventExecutor:
53
53
  bool: True if processing succeeded, False otherwise
54
54
  """
55
55
  try:
56
- task: dict = self.status_tracker.get_task(entity_id=event_msg.payload.get("entity_id"), task=event_msg.event_name)
56
+ task: dict = self.status_tracker.get_task(task=event_msg.event_name, task_id=event_msg.job_id)
57
57
 
58
58
  if task is None:
59
59
  self.status_tracker.create_task(
60
60
  trace_id=event_msg.trace_id,
61
61
  span_id=event_msg.span_id,
62
- entity_id=event_msg.payload.get("entity_id"),
63
62
  task=event_msg.event_name,
64
- status=TaskStatus.PROCESSING.value
63
+ status=TaskStatus.PROCESSING.value,
64
+ task_id=event_msg.job_id
65
65
  )
66
66
 
67
67
  # NOTE: From where are we going to set the tracking payload for an event
@@ -89,9 +89,9 @@ class EventExecutor:
89
89
  self.status_tracker.mark_task_as_failure(
90
90
  span_id=event_msg.span_id,
91
91
  trace_id=event_msg.trace_id,
92
- entity_id=event_msg.payload.get("entity_id"),
93
92
  task=event_msg.event_name,
94
- failure_reason=str(e)
93
+ failure_reason=str(e),
94
+ task_id=event_msg.job_id
95
95
  )
96
96
 
97
97
  # NOTE: dead letter queue is yet to be implemented
@@ -112,19 +112,19 @@ class EventExecutor:
112
112
  """
113
113
  Wrapper around message processing to handle cleanup and status updates.
114
114
  """
115
- event_msg = AWSReceiveEventMessage(message)
116
115
  success = False
117
116
 
118
117
  try:
118
+ event_msg = AWSReceiveEventMessage(message)
119
119
  success = self._process_message(event_msg, callback)
120
120
  finally:
121
121
  if success:
122
122
  self.status_tracker.update_task(
123
123
  span_id=event_msg.span_id,
124
124
  trace_id=event_msg.trace_id,
125
- entity_id=event_msg.payload.get("entity_id"),
126
125
  task=event_msg.event_name,
127
- status=TaskStatus.COMPLETED.value
126
+ status=TaskStatus.COMPLETED.value,
127
+ task_id=event_msg.job_id
128
128
  )
129
129
  self.databus.delete_message(event_msg)
130
130
 
@@ -15,7 +15,7 @@ class PublishEventMessage:
15
15
  event_dict (Dict[str, Any]): Dictionary containing complete event data including:
16
16
  - event_name: Name of the event being published
17
17
  - payload: Event payload containing event-specific data
18
- - meta: Dictionary containing trace_id and span_id
18
+ - event_meta: Dictionary containing trace_id and span_id
19
19
  """
20
20
 
21
21
  def __init__(self, event_dict: Dict[str, Any]):
@@ -25,8 +25,8 @@ class PublishEventMessage:
25
25
  event_dict: Dictionary containing event data in the format:
26
26
  {
27
27
  "event_name": str,
28
- "payload": dict,
29
- "meta": {
28
+ "event_payload": dict,
29
+ "event_meta": {
30
30
  "trace_id": str,
31
31
  "span_id": str
32
32
  }
@@ -38,15 +38,15 @@ class PublishEventMessage:
38
38
  def _validate_and_set_trace_ids(self):
39
39
  """Validates and sets trace_id and span_id in the event dictionary.
40
40
 
41
- If meta section doesn't exist, creates it.
41
+ If event_meta section doesn't exist, creates it.
42
42
  If trace_id or span_id don't exist, generates them using UUID4.
43
43
  """
44
- # ensure meta dictionary exists
45
- if "meta" not in self.event_dict or not self.event_dict["meta"]["trace_id"]:
44
+ # ensure event_meta dictionary exists
45
+ if "event_meta" not in self.event_dict or not self.event_dict["event_meta"]["trace_id"]:
46
46
  raise Exception("Message metdata or trace_id not found.")
47
47
 
48
48
  # always generate a new job_id
49
- self.event_dict["meta"]["job_id"] = str(uuid.uuid4())
49
+ self.event_dict["event_meta"]["job_id"] = str(uuid.uuid4())
50
50
 
51
51
  def to_dict(self) -> dict:
52
52
  """Convert the event to a dictionary format"""
@@ -66,26 +66,26 @@ class ReceiveEventMessage:
66
66
  Attributes:
67
67
  raw_message (dict): The original raw message received
68
68
  event_name (str): Name of the received event
69
- payload (dict): Event payload containing event-specific data
70
- meta (dict): Metadata including trace_id and span_id
69
+ event_payload (dict): Event payload containing event-specific data
70
+ event_meta (dict): Metadata including trace_id and span_id
71
71
  trace_id (str): Unique identifier for tracing a request across services
72
72
  span_id (str): Unique identifier for this specific operation within the trace
73
73
  """
74
74
  def __init__(self, raw_message: dict):
75
75
  self.raw_message = raw_message
76
-
77
76
  self.event_name = raw_message.get("event_name")
78
77
 
79
78
  # event payload will contain entity_id, connector_id and other info
80
79
  # needed for specific events
81
- self.payload: dict = raw_message.get("payload", {})
82
- self.meta: dict = raw_message.get("meta", {})
80
+ self.payload: dict = raw_message.get("event_payload", {})
81
+ self.event_meta: dict = raw_message.get("event_meta", {})
83
82
 
84
- self.trace_id = self.meta.get("trace_id")
85
- self.job_id = self.meta.get("job_id")
83
+ self.trace_id = self.event_meta.get("trace_id")
84
+ self.job_id = self.event_meta.get("job_id")
86
85
 
87
86
  # create span id when we recieve a message
88
- self.span_id = ["meta"]["job_id"] = str(uuid.uuid4())
87
+ self.event_meta["span_id"] = str(uuid.uuid4())
88
+ self.span_id = self.event_meta["span_id"]
89
89
 
90
90
 
91
91
  class NATSReceiveEventMessage(ReceiveEventMessage):