deltafi 2.0rc1722614194270__py3-none-any.whl → 2.0rc1723500522958__py3-none-any.whl

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.

Potentially problematic release.


This version of deltafi might be problematic. Click here for more details.

deltafi/action.py CHANGED
@@ -27,6 +27,16 @@ from deltafi.result import *
27
27
  from pydantic import BaseModel
28
28
 
29
29
 
30
+ class Join(ABC):
31
+ def join(self, transform_inputs: List[TransformInput]):
32
+ all_content = []
33
+ all_metadata = {}
34
+ for transform_input in transform_inputs:
35
+ all_content += transform_input.content
36
+ all_metadata.update(transform_input.metadata)
37
+ return TransformInput(content=all_content, metadata=all_metadata)
38
+
39
+
30
40
  class Action(ABC):
31
41
  def __init__(self, action_type: ActionType, description: str, valid_result_types: tuple):
32
42
  self.action_type = action_type
@@ -38,7 +48,7 @@ class Action(ABC):
38
48
  def build_input(self, context: Context, delta_file_message: DeltaFileMessage):
39
49
  pass
40
50
 
41
- def join(self, action_inputs: List[Any]):
51
+ def execute_join_action(self, event):
42
52
  raise RuntimeError(f"Join is not supported for {self.__class__.__name__}")
43
53
 
44
54
  @abstractmethod
@@ -49,11 +59,7 @@ class Action(ABC):
49
59
  if event.delta_file_messages is None or not len(event.delta_file_messages):
50
60
  raise RuntimeError(f"Received event with no delta file messages for did {event.context.did}")
51
61
  if event.context.join is not None:
52
- result = self.execute(
53
- event.context,
54
- self.join([self.build_input(event.context, delta_file_message)
55
- for delta_file_message in event.delta_file_messages]),
56
- self.param_class().model_validate(event.params))
62
+ result = self.execute_join_action(event)
57
63
  else:
58
64
  result = self.execute(
59
65
  event.context,
@@ -123,13 +129,15 @@ class TransformAction(Action, ABC):
123
129
  def build_input(self, context: Context, delta_file_message: DeltaFileMessage):
124
130
  return TransformInput(content=delta_file_message.content_list, metadata=delta_file_message.metadata)
125
131
 
126
- def join(self, transform_inputs: List[TransformInput]):
127
- all_content = []
128
- all_metadata = {}
129
- for transform_input in transform_inputs:
130
- all_content += transform_input.content
131
- all_metadata.update(transform_input.metadata)
132
- return TransformInput(content=all_content, metadata=all_metadata)
132
+ def execute_join_action(self, event):
133
+ if (isinstance(self, Join)):
134
+ return self.execute(
135
+ event.context,
136
+ self.join([self.build_input(event.context, delta_file_message)
137
+ for delta_file_message in event.delta_file_messages]),
138
+ self.param_class().model_validate(event.params))
139
+ else:
140
+ super().execute_join_action(event)
133
141
 
134
142
  @abstractmethod
135
143
  def transform(self, context: Context, params: BaseModel, transform_input: TransformInput):
deltafi/plugin.py CHANGED
@@ -38,7 +38,7 @@ from deltafi.exception import ExpectedContentException, MissingMetadataException
38
38
  from deltafi.logger import get_logger
39
39
  from deltafi.result import ErrorResult
40
40
  from deltafi.storage import ContentService
41
- from deltafi.action import Action
41
+ from deltafi.action import Action, Join
42
42
 
43
43
 
44
44
  def _coordinates():
@@ -164,6 +164,7 @@ class Plugin(object):
164
164
  'name': self.action_name(action),
165
165
  'description': action.description,
166
166
  'type': action.action_type.name,
167
+ 'supportsJoin': isinstance(action, Join),
167
168
  'schema': action.param_class().model_json_schema()
168
169
  }
169
170
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: deltafi
3
- Version: 2.0rc1722614194270
3
+ Version: 2.0rc1723500522958
4
4
  Summary: SDK for DeltaFi plugins and actions
5
5
  License: Apache License, Version 2.0
6
6
  Keywords: deltafi
@@ -1,5 +1,5 @@
1
1
  deltafi/__init__.py,sha256=qv6y7PpBG0ekTN9EuD9Lj8JYOLVqZA6tvHwgjplncAM,709
2
- deltafi/action.py,sha256=eK18D7DCCELwEDouq3ssTv-pHWj_qWzkc00rvyKc8ho,5552
2
+ deltafi/action.py,sha256=ejORyFe1cFCC04fdNt1VPWHqhNqZGjpLeD9tTQAYs1w,5755
3
3
  deltafi/actioneventqueue.py,sha256=mCRE1PFXy_KvaeezTeMze5N400CO1V06zEF8FFD6xZk,2847
4
4
  deltafi/actiontype.py,sha256=V7JbTgHQIaWQ2N36pG-XV7kAXhq8qvj954z71iHw_wI,913
5
5
  deltafi/domain.py,sha256=98295Cpm-y6BlbI2b7LvHj4OPD6LXOw1bqK9E8Pm5no,12030
@@ -8,7 +8,7 @@ deltafi/genericmodel.py,sha256=LBIhU1rLU4HjoD8ooMfpbEhcRkrTIeGXCP1-0palKic,1152
8
8
  deltafi/input.py,sha256=2qQcOWqz7lOXZIZipTz5XtcGESpjdnUAsZ7b9YqHw7M,1656
9
9
  deltafi/logger.py,sha256=b6vTKSJjfXfzJIKB7bLrefIvlaIQAxWkeDJYzT1EXes,2141
10
10
  deltafi/metric.py,sha256=eIDjZQVO53KuAFoEtjLNFwqMrp_7BC0Td9GLD1tb6sE,967
11
- deltafi/plugin.py,sha256=4PMvA22_mo2JOohvqbX96KeT6MAQQygVNuznp5vGSW4,12462
11
+ deltafi/plugin.py,sha256=BxwesFkZ0Zyq2L05nGRz6lMKDxINTqHkcNu_s7r3O_4,12522
12
12
  deltafi/result.py,sha256=AMjGygjvix9PdUbQvSa_gZEkTn9BJh2p-BdirqdjJpM,8212
13
13
  deltafi/storage.py,sha256=toq58EPZgzj2TfDF-YpFUmRnsWSjACA0KQAZzkM04xU,2740
14
14
  deltafi/test_kit/__init__.py,sha256=qv6y7PpBG0ekTN9EuD9Lj8JYOLVqZA6tvHwgjplncAM,709
@@ -18,6 +18,6 @@ deltafi/test_kit/constants.py,sha256=epz0OS-qILcc8t7iIs5B3m2-wvZx8FpYpyb19ZsImbI
18
18
  deltafi/test_kit/egress.py,sha256=nF7YYak-_X35m7h2rSIcju86IJBf8cVaFHs7xw7-_b8,1899
19
19
  deltafi/test_kit/framework.py,sha256=mgKR1Yd75p76wIqWO5XpP6eMgC8fvz9MAfS01QV9WuU,14910
20
20
  deltafi/test_kit/transform.py,sha256=q9zQdZswTKwU5Om8E9Lwg0G5JI8LEXuRZjT9oam-Zoo,4085
21
- deltafi-2.0rc1722614194270.dist-info/METADATA,sha256=6aqntH7wKM_Safph-8R8oGqClDlKTP9ASbn8p6F50Hk,1446
22
- deltafi-2.0rc1722614194270.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
23
- deltafi-2.0rc1722614194270.dist-info/RECORD,,
21
+ deltafi-2.0rc1723500522958.dist-info/METADATA,sha256=qxdr7QUZ0KVJqruGH0F9UhY-OtnYyoaPv6JEfPsAomM,1446
22
+ deltafi-2.0rc1723500522958.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
23
+ deltafi-2.0rc1723500522958.dist-info/RECORD,,