summaryrefslogtreecommitdiffstats
path: root/lib/bb/taskdata.py
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2012-06-27 11:04:06 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-06-28 12:37:52 +0100
commit3190cb83e2af195a464f669c5aa8aedbf795160e (patch)
tree90c31b817b21075836ddb76a668e503b382b629e /lib/bb/taskdata.py
parente6ff1d4bab43fdcd8af1230f1d54615f53c1978e (diff)
downloadbitbake-3190cb83e2af195a464f669c5aa8aedbf795160e.tar.gz
taskdata: Add gettask_id_fromfnid helper function
This is like gettask_id but doesn't require translation of fnid -> fn first which the function then translates back. This gives a sizeable performance improvement since a significant number of lookups are avoided. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'lib/bb/taskdata.py')
-rw-r--r--lib/bb/taskdata.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/bb/taskdata.py b/lib/bb/taskdata.py
index 8bc447c11..55cdde553 100644
--- a/lib/bb/taskdata.py
+++ b/lib/bb/taskdata.py
@@ -116,6 +116,16 @@ class TaskData:
ids.append(self.tasks_lookup[fnid][task])
return ids
+ def gettask_id_fromfnid(self, fnid, task):
+ """
+ Return an ID number for the task matching fnid and task.
+ """
+ if fnid in self.tasks_lookup:
+ if task in self.tasks_lookup[fnid]:
+ return self.tasks_lookup[fnid][task]
+
+ return None
+
def gettask_id(self, fn, task, create = True):
"""
Return an ID number for the task matching fn and task.