Update:  Use Java 8 streams and Method refs, update .gitignore
diff --git a/src/java/org/apache/fulcrum/jce/crypto/extended/CryptoParametersJ8.java b/src/java/org/apache/fulcrum/jce/crypto/extended/CryptoParametersJ8.java
index 1c9220d..d1bb318 100644
--- a/src/java/org/apache/fulcrum/jce/crypto/extended/CryptoParametersJ8.java
+++ b/src/java/org/apache/fulcrum/jce/crypto/extended/CryptoParametersJ8.java
@@ -145,31 +145,29 @@
 	 * @return the matched results as a list or emtpy list
 	 */
 	public static List<String> getSupportedAlgos(List<String> algoList, String type, boolean exact) {
-		List<String> result = new ArrayList<String>();
 		Provider p[] = Security.getProviders();
 		List<Provider> providerList = Arrays.asList(p);
 
-		for (Provider provider : providerList) {
-			//System.out.println(provider);
-			result.addAll(Collections.list(provider.keys()).stream().map(t -> t.toString())
-					.filter(x->
-							(exact)? 
-							(x.startsWith(type) && algoList.contains(x.replaceAll(type + ".", ""))):
-							(x.matches("(" +String.join("|", PROVIDER_TYPES) + ").*$") && 
-									algoList.stream().anyMatch(y -> y.contains(x.replaceAll(type + ".", "")))
-							)
-					)
-					.map( x ->
-					(exact)? 
-					   x.replaceAll(type + ".", ""):
-						   x.replaceAll("(" +String.join("|", PROVIDER_TYPES) + ")" + ".", "")
-					)
-					.collect(Collectors.toList()));
-		}
+		List<String> result =
+				providerList.stream().flatMap(provider -> Collections.list(provider.keys()).stream().map(Object::toString)
+				.filter(x ->
+						(exact) ?
+								(x.startsWith(type) && algoList.contains(x.replaceAll(type + ".", ""))) :
+								(x.matches("(" + String.join("|", PROVIDER_TYPES) + ").*$") &&
+										algoList.stream().anyMatch(y -> y.contains(x.replaceAll(type + ".", "")))
+								)
+				)
+				.map(x ->
+						(exact) ?
+								x.replaceAll(type + ".", "") :
+								x.replaceAll("(" + String.join("|", PROVIDER_TYPES) + ")" + ".", "")
+				)
+				.collect(Collectors.toList()).stream()).collect(Collectors.toList());
 		return result;
 	}
 	
-	public static List[] LISTS = {  Arrays.stream(CryptoParametersJ8.TYPES.values()).map(t -> t.toString())
+	public static List[] LISTS = {
+			Arrays.stream(CryptoParametersJ8.TYPES.values()).map(Enum::toString)
 			.collect(Collectors.toList()), 
 					Arrays.stream(CryptoParametersJ8.TYPES_IMPL.values()).map(t -> t.toString())
 					.collect(Collectors.toList()) };