def dependent_on_composite_state(self):
        """ method iterates over all nodes that provide dependency to the current node,
            and compile composite state of them all
            :return instance of <NodesCompositeState>
        """
        composite_state = NodesCompositeState()

        for dependent_on in self.tree.dependent_on:
            node_b = self.find_counterpart_in(dependent_on)

            if node_b is None:
                # special case when counterpart tree has no process with corresponding time_qualifier
                # for example Financial Monthly has no counterpart in Third-party Daily Report -
                # so we assume that its not blocked
                continue

            composite_state.enlist(node_b)

        return composite_state
def dependent_on_composite_state ( self ) : composite_state = NodesCompositeState ( ) for dependent_on in self . tree . dependent_on : node_b = self . find_counterpart_in ( dependent_on ) if node_b is None : continue composite_state . enlist ( node_b ) return composite_state
method iterates over all nodes that provide dependency to the current node,
            and compile composite state of them all
            :return instance of <NodesCompositeState>