Не получается вывести в RecyclerView интерфейс Collection

Коллеги, добрый день! Делаю парсинг JSON через Retrofit2 и вывод данных в RecyclerView. В методе непосредственно получения данных onResponce пытаюсь скормить адаптеру объект данных путем преобразования Collection в List (как и просит сам адаптер), но без проверки ловлю classcastexception. Дебаггер показывает, что всё распарсивается как надо, но вывести в адаптер никак не выходит. Код в MainActivity:

   NetworkService.getInstance()
                .getAll()
                .getAll()
                .enqueue(new Callback<CurrencyResponce>() {
                    @Override
                    public void onResponse(Call<CurrencyResponce> call, Response<CurrencyResponce> response) {
                        if (response.isSuccessful()) {
                            Collection<Valutes> valutes = response.body().getValute().values();
                            if (valutes.equals(Valutes.class)) {
                                adapter.setResponces((List<Valutes>) valutes);
                            } else
                                Toast.makeText(MainActivity.this, "Error!", Toast.LENGTH_LONG).show();
                             }

                        }

                    @Override
                    public void onFailure(Call<CurrencyResponce> call, Throwable t) {
                        Toast.makeText(MainActivity.this, t.getMessage(), Toast.LENGTH_SHORT).show();
                    }
                });

Код в классе адаптера:

public class PostAdapter extends RecyclerView.Adapter<PostAdapter.PostViewHolder> {

    List<Valutes> responces = new ArrayList<Valutes>() {
    };

    public List<Valutes> getResponces() {
        return responces;
    }

    public void setResponces(List<Valutes> responces) {
        this.responces = responces;
        notifyDataSetChanged();
    }

    @NonNull
    @Override
    public PostViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.posts_item, parent, false);
        return new PostViewHolder(view);
    }

    @Override
    public void onBindViewHolder(@NonNull PostViewHolder holder, int position) {
        holder.bind(responces.get(position));
    }

    @Override
    public int getItemCount() {
        return responces.size();
    }

    static class PostViewHolder extends RecyclerView.ViewHolder{

        TextView textViewId;
        TextView textViewNumCode;
        TextView textViewCharCode;
        TextView textViewNominal;
        TextView textViewName;
        TextView textViewValue;
        TextView textViewPrevious;

        public PostViewHolder(@NonNull View itemView) {
            super(itemView);
            textViewId = itemView.findViewById(R.id.text_view_id);
            textViewNumCode = itemView.findViewById(R.id.text_view_num_code);
            textViewCharCode = itemView.findViewById(R.id.text_view_char_code);
            textViewNominal = itemView.findViewById(R.id.text_view_nominal);
            textViewName = itemView.findViewById(R.id.text_view_name);
            textViewValue = itemView.findViewById(R.id.text_view_value);
            textViewPrevious = itemView.findViewById(R.id.tex_view_previous);
        }

        void bind(Valutes valutes) {
            textViewId.setText(valutes.getID());
            textViewNumCode.setText(valutes.getNumCode());
            textViewCharCode.setText(valutes.getCharCode());
            textViewNominal.setText("" + valutes.getNominal());
            textViewName.setText(valutes.getName());
            textViewValue.setText("" + valutes.getValue());
            textViewPrevious.setText("" + valutes.getPrevious());

        }
    }
}

Код в первом классе CorrencyResponce:

public class CurrencyResponce {

    @SerializedName("Date")
    @Expose
    private String Date;

    @SerializedName("PreviousDate")
    @Expose
    private String PreviousDate;

    @SerializedName("PreviousURL")
    @Expose
    private String PreviousURL;

    @SerializedName("Timestamp")
    @Expose
    private String Timestamp;

    @SerializedName("Valute")
    @Expose
    private Map<String, Valutes> Valute;

    public String getDate() {
        return Date;
    }

    public void setDate(String date) {
        Date = date;
    }

    public String getPreviousDate() {
        return PreviousDate;
    }

    public void setPreviousDate(String previousDate) {
        PreviousDate = previousDate;
    }

    public String getPreviousURL() {
        return PreviousURL;
    }

    public void setPreviousURL(String previousURL) {
        PreviousURL = previousURL;
    }

    public String getTimestamp() {
        return Timestamp;
    }

    public void setTimestamp(String timestamp) {
        Timestamp = timestamp;
    }

    public Map<String, Valutes> getValute() {
        return Valute;
    }

    public void setValute(Map<String, Valutes> valute) {
        Valute = valute;
    }
}

Код во втором классе, который вставляю в мапу Valute в CurrencyResponce:

public class Valutes {

    @SerializedName("ID")
    @Expose
    private String ID;
    @SerializedName("NumCode")
    @Expose
    private String NumCode;
    @SerializedName("CharCode")
    @Expose
    private String CharCode;
    @SerializedName("Nominal")
    @Expose
    private float Nominal;
    @SerializedName("Name")
    @Expose
    private String Name;
    @SerializedName("Value")
    @Expose
    private float Value;
    @SerializedName("Previous")
    @Expose
    private float Previous;

    public String getID() {
        return ID;
    }

    public String getNumCode() {
        return NumCode;
    }

    public String getCharCode() {
        return CharCode;
    }

    public float getNominal() {
        return Nominal;
    }

    public String getName() {
        return Name;
    }

    public float getValue() {
        return Value;
    }

    public float getPrevious() {
        return Previous;
    }

    // Setter Methods

    public void setID(String ID) {
        this.ID = ID;
    }

    public void setNumCode(String NumCode) {
        this.NumCode = NumCode;
    }

    public void setCharCode(String CharCode) {
        this.CharCode = CharCode;
    }

    public void setNominal(float Nominal) {
        this.Nominal = Nominal;
    }

    public void setName(String Name) {
        this.Name = Name;
    }

    public void setValue(float Value) {
        this.Value = Value;
    }

    public void setPrevious(float Previous) {
        this.Previous = Previous;
    }
    }

Ответы (0 шт):