discarted prediscoveries not make sence with collect entities

This commit is contained in:
Jakub Trllo 2019-03-06 12:23:42 +01:00
parent e686bc66bf
commit ab0ec975c9
7 changed files with 19 additions and 24 deletions

View file

@ -137,7 +137,7 @@ class CustomAttributes(BaseAction):
'dynamic enumerator', 'number'
]
def prediscover(self, event):
def discover(self, session, entities, event):
'''
Validation
- action is only for Administrators

View file

@ -26,7 +26,7 @@ class CreateFolders(BaseAction):
'698620-icon-105-folder-add-512.png'
)
def prediscover(self, event):
def discover(self, session, entities, event):
''' Validation '''
return True

View file

@ -28,14 +28,13 @@ class DeleteAsset(BaseAction):
value = None
def prediscover(self, event):
def discover(self, session, entities, event):
''' Validation '''
selection = event["data"].get("selection", None)
if selection is None or len(selection) > 1:
if len(entities) != 1:
return False
valid = ["task"]
entityType = selection[0].get("entityType", "")
entityType = event["data"]["selection"][0].get("entityType", "")
if entityType.lower() not in valid:
return False

View file

@ -25,14 +25,13 @@ class AssetsRemover(BaseAction):
#: Db
db = DbConnector()
def prediscover(self, event):
def discover(self, session, entities, event):
''' Validation '''
selection = event["data"].get("selection", None)
if selection is None or len(selection) != 1:
if len(entities) != 1:
return False
valid = ["show", "task"]
entityType = selection[0].get("entityType", "")
entityType = event["data"]["selection"][0].get("entityType", "")
if entityType.lower() not in valid:
return False

View file

@ -23,7 +23,8 @@ class JobKiller(BaseAction):
'https://cdn2.iconfinder.com/data/icons/new-year-resolutions/64/'
'resolutions-23-512.png'
)
def prediscover(self, event):
def discover(self, session, entities, event):
''' Validation '''
return True

View file

@ -31,7 +31,8 @@ class TestAction(BaseAction):
'https://cdn4.iconfinder.com/data/icons/hospital-19/512/'
'8_hospital-512.png'
)
def prediscover(self, event):
def discover(self, session, entities, event):
''' Validation '''
return True

View file

@ -129,25 +129,20 @@ class BaseHandler(object):
'icon': self.icon,
}]
}
accepts = self.prediscover(event)
if accepts is None:
args = self._translate_event(
self.session, event
)
accepts = self.discover(
self.session, *args
)
args = self._translate_event(
self.session, event
)
accepts = self.discover(
self.session, *args
)
if accepts is True:
self.log.debug(u'Discovering action with selection: {0}'.format(
event['data'].get('selection', [])))
return items
def prediscover(self, event):
"return True if can handle selected entities before handling entities"
return None
def discover(self, session, entities, event):
'''Return true if we can handle the selected entities.