// 
// Decompiled by Procyon v0.6.0
// 

package com.nimbusds.jose.proc;

import com.nimbusds.jose.JWSHeader;
import java.util.Collections;
import java.util.Objects;
import com.nimbusds.jose.JWSAlgorithm;
import java.security.Key;
import java.util.List;

public class SingleKeyJWSKeySelector<C extends SecurityContext> implements JWSKeySelector<C>
{
    private final List<Key> singletonKeyList;
    private final JWSAlgorithm expectedJWSAlg;
    
    public SingleKeyJWSKeySelector(final JWSAlgorithm expectedJWSAlg, final Key key) {
        this.singletonKeyList = Collections.singletonList((Key)Objects.requireNonNull((T)key));
        this.expectedJWSAlg = Objects.requireNonNull(expectedJWSAlg);
    }
    
    @Override
    public List<? extends Key> selectJWSKeys(final JWSHeader header, final C context) {
        if (!this.expectedJWSAlg.equals(header.getAlgorithm())) {
            return Collections.emptyList();
        }
        return this.singletonKeyList;
    }
}
