def _get_expected_partitions(self, expected_disk_size, expected_swap_size,
                                 server_status):
        """
        @summary: Returns the expected partitions for a server based on status
        @param expected_disk_size: The Expected disk size of the server in GB
        @type expected_disk_size: string
        @param expected_swap_size: The Expected swap size of the server in MB
        @type expected_swap_size: string
        @param server_status: Status of the server (ACTIVE or RESCUE)
        @type server_status: string
        @return: The expected partitions
        @rtype: Partition List
        """
        # ignoring swap untill the rescue functionality is clarified

        expected_partitions = [
            Partition('/dev/xvda1', DiskSize(expected_disk_size, 'GB'),
                      'ext3'),
            Partition('/dev/xvdc1', DiskSize(expected_swap_size, 'MB'), 'swap')
        ]
        if str.upper(server_status) == 'RESCUE':
            expected_partitions = [
                Partition('/dev/xvdb1', DiskSize(expected_disk_size, 'GB'),
                          'ext3')
            ]
            # expected_partitions.append(Partition('/dev/xvdd1',
            # DiskSize(expected_swap_size, 'MB'), 'swap'))
        return expected_partitions
    def get_partition_details(self):
        """
        @summary: Return the partition details
        @return: The partition details
        @rtype: Partition List
        """
        # Return a list of partition objects that each contains the name and
        # size of the partition in bytes and the type of the partition
        partition_types = self.get_partition_types()
        partition_names = ' '.join(partition_types.keys())

        partition_size_output = self.ssh_client.execute_command(
            'fdisk -l %s 2>/dev/null | '
            'grep "Disk.*bytes"' % partition_names).stdout
        partition_size_output = partition_size_output.rstrip('\n').split('\n')
        partitions = []
        for row in partition_size_output:
            row_details = row.split()
            partition_name = row_details[1].rstrip(':')
            partition_type = partition_types[partition_name]
            if partition_type == 'swap':
                partition_size = DiskSize(float(row_details[2]),
                                          row_details[3].rstrip(','))
            else:
                partition_size = DiskSize(
                    int(row_details[4]) / 1073741824, 'GB')
            partitions.append(
                Partition(partition_name, partition_size, partition_type))
        return partitions