'Collect student_view_multi_device and student_view_data values for each block'

@classmethod
def collect(cls, block_structure):

    block_structure.request_xblock_fields('category')
    for block_key in block_structure.topological_traversal():
        block = block_structure.get_xblock(block_key)
        student_view = getattr(block.__class__, 'student_view', None)
        supports_multi_device = block.has_support(student_view, 'multi_device')
        block_structure.set_transformer_block_field(block_key, cls, cls.STUDENT_VIEW_MULTI_DEVICE, supports_multi_device)
        if getattr(block, 'student_view_data', None):
            student_view_data = block.student_view_data()
            block_structure.set_transformer_block_field(block_key, cls, cls.STUDENT_VIEW_DATA, student_view_data)
