I am new to Scala and was trying to convert this:
public static byte[] convertPemToDer(String pem) {
BufferedReader bufferedReader = new BufferedReader(new StringReader(pem));
String encoded =
bufferedReader
.lines()
.filter(line -> !line.startsWith("-----BEGIN") && !line.startsWith("-----END"))
.collect(Collectors.joining());
return Base64.getDecoder().decode(encoded);
}
to Scala code:
def convertPemToDer(pem: String): Array[Byte] = {
val bufferedReader = new BufferedReader(new StringReader(pem))
val encoded = bufferedReader.lines.filter((line: String) => !line.startsWith("-----BEGIN") && !line.startsWith("-----END")).collect(Collectors.joining)
Base64.getDecoder.decode(encoded)
}
It shows this type mismatch within filter:
type mismatch; found : String => Boolean required: java.util.function.Predicate[_ >: String]