diff options
author | Bjørn Christian Seime <bjorncs@oath.com> | 2018-03-12 18:07:22 +0100 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@oath.com> | 2018-03-12 18:09:38 +0100 |
commit | f888b725a3f639742f80c803f0464c2fd9ae8c7b (patch) | |
tree | 9f6668c0794eac8aca6acc59a41c370e41bdd5bf | |
parent | 36258bc0323a6a9f5c705e6ae563a4377fe10872 (diff) |
Add helper method to serialize keystores to file
-rw-r--r-- | vespa-athenz/src/main/java/com/yahoo/vespa/athenz/tls/KeyStoreUtils.java | 34 | ||||
-rw-r--r-- | vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/TestUtils.java | 7 |
2 files changed, 37 insertions, 4 deletions
diff --git a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/tls/KeyStoreUtils.java b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/tls/KeyStoreUtils.java new file mode 100644 index 00000000000..12aaa40cce4 --- /dev/null +++ b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/tls/KeyStoreUtils.java @@ -0,0 +1,34 @@ +// Copyright 2018 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.vespa.athenz.tls; + +import java.io.BufferedOutputStream; +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.OutputStream; +import java.io.UncheckedIOException; +import java.security.GeneralSecurityException; +import java.security.KeyStore; + +/** + * @author bjorncs + */ +public class KeyStoreUtils { + private KeyStoreUtils() {} + + public static void writeKeyStoreToFile(KeyStore keyStore, File file, char[] password) { + try (OutputStream out = new BufferedOutputStream(new FileOutputStream(file))) { + keyStore.store(out, password); + } catch (IOException e) { + throw new UncheckedIOException(e); + } catch (GeneralSecurityException e) { + throw new RuntimeException(e); + } + + } + + public static void writeKeyStoreToFile(KeyStore keyStore, File file) { + writeKeyStoreToFile(keyStore, file, new char[0]); + } + +} diff --git a/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/TestUtils.java b/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/TestUtils.java index 2a2b74ab949..54601c04514 100644 --- a/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/TestUtils.java +++ b/vespa-athenz/src/test/java/com/yahoo/vespa/athenz/tls/TestUtils.java @@ -19,6 +19,8 @@ import java.security.NoSuchAlgorithmException; import java.security.cert.Certificate; import java.security.cert.X509Certificate; +import static com.yahoo.vespa.athenz.tls.KeyStoreUtils.writeKeyStoreToFile; + /** * @author bjorncs */ @@ -50,9 +52,6 @@ class TestUtils { static void createKeystoreFile(File file, KeyStoreType type, char[] password) throws IOException, GeneralSecurityException, OperatorCreationException { - try (OutputStream out = new BufferedOutputStream(new FileOutputStream(file))) { - KeyStore keystore = createKeystore(type, password); - keystore.store(out, password); - } + writeKeyStoreToFile(createKeystore(type, password), file, password); } } |