def _get_criteria_matching_disks(logical_disk, physical_drives):
    """Finds the physical drives matching the criteria of logical disk.

    This method finds the physical drives matching the criteria
    of the logical disk passed.

    :param logical_disk: The logical disk dictionary from raid config
    :param physical_drives: The physical drives to consider.
    :returns: A list of physical drives which match the criteria
    """
    matching_physical_drives = []
    criteria_to_consider = [x for x in FILTER_CRITERIA
                            if x in logical_disk]

    for physical_drive_object in physical_drives:
        for criteria in criteria_to_consider:
            logical_drive_value = logical_disk.get(criteria)
            physical_drive_value = getattr(physical_drive_object, criteria)
            if logical_drive_value != physical_drive_value:
                break
        else:
            matching_physical_drives.append(physical_drive_object)

    return matching_physical_drives
def _get_criteria_matching_disks ( logical_disk , physical_drives ) : matching_physical_drives = [ ] criteria_to_consider = [ x for x in FILTER_CRITERIA if x in logical_disk ] for physical_drive_object in physical_drives : for criteria in criteria_to_consider : logical_drive_value = logical_disk . get ( criteria ) physical_drive_value = getattr ( physical_drive_object , criteria ) if logical_drive_value != physical_drive_value : break else : matching_physical_drives . append ( physical_drive_object ) return matching_physical_drives
Finds the physical drives matching the criteria of logical disk.

    This method finds the physical drives matching the criteria
    of the logical disk passed.

    :param logical_disk: The logical disk dictionary from raid config
    :param physical_drives: The physical drives to consider.
    :returns: A list of physical drives which match the criteria