#NEWLINE# @ throws_when_stopped #NEWLINE# def ensure_path( self , path ) : #NEWLINE# #INDENT# 'Ensure the existence of the path; if not, create the nodes.' #NEWLINE# if ( not path . startswith ( '/' ) ) : #NEWLINE# #INDENT# raise RuntimeError ( 'Path has to be absolute.' ) #NEWLINE# #UNINDENT# parent_node = None #NEWLINE# first_non_existing_node = True #NEWLINE# for node_name in self . _get_node_names ( tmp_parent_node ) : #NEWLINE# #INDENT# if ( parent_node is None ) : #NEWLINE# #INDENT# assert ( not node_name ) #NEWLINE# parent_node = MockKazooClient . ZK_ROOT_NODE #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# tmp_parent_node = parent_node . get_child ( node_name ) #NEWLINE# if ( tmp_parent_node is None ) : #NEWLINE# #INDENT# parent_node . add_child ( node_name , '' ) #NEWLINE# tmp_parent_node = parent_node . get_child ( node_name ) #NEWLINE# if first_non_existing_node : #NEWLINE# #INDENT# self . _notify_children_watches ( str ( parent_node ) ) #NEWLINE# first_non_existing_node = False #NEWLINE# #UNINDENT# #UNINDENT# parent_node = tmp_parent_node