Add creation JKS artifact
[oom/platform/cert-service.git] / certServiceClient / src / main / java / org / onap / aaf / certservice / client / certification / conversion / ArtifactsCreatorProvider.java
index dd4df73..d3d8a11 100644 (file)
@@ -22,33 +22,40 @@ import org.onap.aaf.certservice.client.certification.PrivateKeyToPemEncoder;
 import org.onap.aaf.certservice.client.certification.writer.CertFileWriter;
 
 public enum ArtifactsCreatorProvider {
-    P12 {
+    P12("PKCS12") {
         @Override
         ArtifactsCreator create(String destPath) {
-            return new PKCS12ArtifactsCreator(
-                    new CertFileWriter(destPath),
-                    new RandomPasswordGenerator(),
-                    new PemToPKCS12Converter());
+            return ConvertedArtifactsCreatorFactory.createConverter(destPath, getExtension(), getKeyStoreType());
         }
     },
-    JKS {
+    JKS("JKS") {
         @Override
         ArtifactsCreator create(String destPath) {
-            return null;
+            return ConvertedArtifactsCreatorFactory.createConverter(destPath, getExtension(), getKeyStoreType());
         }
     },
-    PEM {
+    PEM("PEM"){
         @Override
         ArtifactsCreator create(String destPath) {
-            return new PemArtifactsCreator(
-                    new CertFileWriter(destPath),
-                    new PrivateKeyToPemEncoder());
+            return new PemArtifactsCreator(new CertFileWriter(destPath), new PrivateKeyToPemEncoder());
         }
     };
+    private final String keyStoreType;
+    ArtifactsCreatorProvider(String keyStoreType) {
+        this.keyStoreType = keyStoreType;
+    }
 
     public static ArtifactsCreator getCreator(String outputType, String destPath) {
         return valueOf(outputType).create(destPath);
     }
 
+    String getKeyStoreType() {
+        return keyStoreType;
+    }
+
+    String getExtension() {
+        return this.toString().toLowerCase();
+    }
+
     abstract ArtifactsCreator create(String destPath);
 }