'Returns a list of lists or strings, representing the code body.
Each list is a block, each string is a statement.
force (True or False): if an attribute object cannot be included,
it is usually skipped to be processed later. With \'force\' set, there
will be no waiting: a get_or_create() call is written instead.'

def get_lines(self, force=False):

    code_lines = []
    if self.skip():
        return []
    code_lines += self.instantiate()
    code_lines += self.get_waiting_list()
    if force:
        code_lines += self.get_waiting_list(force=force)
    if code_lines:
        code_lines.append(('%s    =    importer.save_or_locate(%s)\n' % (self.variable_name, self.variable_name)))
    code_lines += self.get_many_to_many_lines(force=force)
    return code_lines
