registers a dependency of data_src -> data_sink
            by placing appropriate entries in provides_for and depends_on

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)