<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def register_dependency(self, data_src, data_sink):
 """ registers a dependency of data_src -> data_sink by placing appropriate entries in provides_for and depends_on """


        pdebug("registering dependency %s -> %s" % (data_src, data_sink))

        if (data_src not in self._gettask(data_sink).depends_on):
            self._gettask(data_sink).depends_on.append(data_src)

        if (data_sink not in self._gettask(data_src).provides_for):
            self._gettask(data_src).provides_for.append(data_sink)