aboutsummaryrefslogtreecommitdiffstats
path: root/certServiceClient/src/main/java/org
diff options
context:
space:
mode:
Diffstat (limited to 'certServiceClient/src/main/java/org')
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/AppExitHandler.java12
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/CertServiceClient.java11
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/api/ExitStatus.java (renamed from certServiceClient/src/main/java/org/onap/aaf/certservice/client/api/ExitCode.java)31
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/api/ExitableException.java2
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/CsrFactory.java16
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/KeyPairFactory.java3
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/PrivateKeyToPemEncoder.java8
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/conversion/PKCS12FilesCreator.java8
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/conversion/PemToPKCS12Converter.java14
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/CsrGenerationException.java8
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/KeyPairGenerationException.java8
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/PemToPKCS12ConverterException.java8
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/PkEncodingException.java8
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/exception/ClientConfigurationException.java8
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/exception/CsrConfigurationException.java8
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/factory/ClientConfigurationFactory.java5
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/factory/CsrConfigurationFactory.java5
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/model/ClientConfiguration.java11
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/model/CsrConfiguration.java14
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/CloseableHttpClientProvider.java6
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/HttpClient.java50
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/exception/CertServiceApiResponseException.java13
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/exception/HttpClientException.java10
-rw-r--r--certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/model/ErrorCertServiceResponse.java13
24 files changed, 161 insertions, 119 deletions
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/AppExitHandler.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/AppExitHandler.java
index e29142e8..caeca37e 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/AppExitHandler.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/AppExitHandler.java
@@ -18,14 +18,16 @@
*/
package org.onap.aaf.certservice.client;
+import org.onap.aaf.certservice.client.api.ExitStatus;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class AppExitHandler {
- public static final Logger LOGGER = LoggerFactory.getLogger(AppExitHandler.class);
+ private static final Logger LOGGER = LoggerFactory.getLogger(AppExitHandler.class);
- public void exit(int exitCode) {
- LOGGER.debug("Application exits with following exit code: {}", exitCode);
- System.exit(exitCode);
+ public void exit(ExitStatus exitStatus) {
+ LOGGER.info(String.format("Application exits with following exit code: %s and message: %s",
+ exitStatus.getExitCodeValue(), exitStatus.getMessage()));
+ System.exit(exitStatus.getExitCodeValue());
}
-} \ No newline at end of file
+}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/CertServiceClient.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/CertServiceClient.java
index d3d7f26d..0916bb8a 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/CertServiceClient.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/CertServiceClient.java
@@ -36,13 +36,17 @@ import org.onap.aaf.certservice.client.configuration.model.CsrConfiguration;
import org.onap.aaf.certservice.client.httpclient.CloseableHttpClientProvider;
import org.onap.aaf.certservice.client.httpclient.HttpClient;
import org.onap.aaf.certservice.client.httpclient.model.CertServiceResponse;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
-import static org.onap.aaf.certservice.client.api.ExitCode.SUCCESS_EXIT_CODE;
+import static org.onap.aaf.certservice.client.api.ExitStatus.SUCCESS;
import static org.onap.aaf.certservice.client.certification.EncryptionAlgorithmConstants.KEY_SIZE;
import static org.onap.aaf.certservice.client.certification.EncryptionAlgorithmConstants.RSA_ENCRYPTION_ALGORITHM;
public class CertServiceClient {
+ private static final Logger LOGGER = LoggerFactory.getLogger(CertServiceClient.class);
+
private AppExitHandler appExitHandler;
public CertServiceClient(AppExitHandler appExitHandler) {
@@ -74,8 +78,9 @@ public class CertServiceClient {
filesCreator.createKeystore(certServiceData.getCertificateChain(), keyPair.getPrivate());
filesCreator.createTruststore(certServiceData.getTrustedCertificates());
} catch (ExitableException e) {
- appExitHandler.exit(e.applicationExitCode());
+ LOGGER.error("Cert Service Client fail in execution: ", e);
+ appExitHandler.exit(e.applicationExitStatus());
}
- appExitHandler.exit(SUCCESS_EXIT_CODE.getValue());
+ appExitHandler.exit(SUCCESS);
}
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/api/ExitCode.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/api/ExitStatus.java
index 670cbe90..c474fd03 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/api/ExitCode.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/api/ExitStatus.java
@@ -18,24 +18,31 @@
*/
package org.onap.aaf.certservice.client.api;
-public enum ExitCode {
- SUCCESS_EXIT_CODE(0),
- CLIENT_CONFIGURATION_EXCEPTION(1),
- CSR_CONFIGURATION_EXCEPTION(2),
- KEY_PAIR_GENERATION_EXCEPTION(3),
- CSR_GENERATION_EXCEPTION(4),
- CERT_SERVICE_API_CONNECTION_EXCEPTION(5),
- HTTP_CLIENT_EXCEPTION(6),
- PKCS12_CONVERSION_EXCEPTION(7),
- PK_TO_PEM_ENCODING_EXCEPTION(8);
+public enum ExitStatus {
+
+ SUCCESS(0, "Success"),
+ CLIENT_CONFIGURATION_EXCEPTION(1,"Invalid client configuration"),
+ CSR_CONFIGURATION_EXCEPTION(2,"Invalid CSR configuration"),
+ KEY_PAIR_GENERATION_EXCEPTION(3,"Fail in key pair generation"),
+ CSR_GENERATION_EXCEPTION(4,"Fail in CSR generation"),
+ CERT_SERVICE_API_CONNECTION_EXCEPTION(5,"CertService HTTP unsuccessful response"),
+ HTTP_CLIENT_EXCEPTION(6,"Internal HTTP Client connection problem"),
+ PKCS12_CONVERSION_EXCEPTION(7,"Fail in PKCS12 conversion"),
+ PK_TO_PEM_ENCODING_EXCEPTION(8,"Fail in Private Key to PEM Encoding");
private final int value;
+ private final String message;
- ExitCode(int value) {
+ ExitStatus(int value, String message) {
this.value = value;
+ this.message = message;
}
- public int getValue() {
+ public int getExitCodeValue() {
return value;
}
+
+ public String getMessage(){
+ return message;
+ }
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/api/ExitableException.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/api/ExitableException.java
index f9166c96..fc1bc760 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/api/ExitableException.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/api/ExitableException.java
@@ -26,5 +26,5 @@ public abstract class ExitableException extends Exception {
public ExitableException(String message) {
super(message);
}
- public abstract int applicationExitCode();
+ public abstract ExitStatus applicationExitStatus();
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/CsrFactory.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/CsrFactory.java
index 83fa6d44..a7fb3f35 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/CsrFactory.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/CsrFactory.java
@@ -40,9 +40,7 @@ import org.slf4j.LoggerFactory;
import javax.security.auth.x500.X500Principal;
import java.io.IOException;
import java.io.StringWriter;
-import java.nio.charset.StandardCharsets;
import java.security.KeyPair;
-import java.util.Base64;
import java.util.Optional;
import static org.onap.aaf.certservice.client.certification.EncryptionAlgorithmConstants.COMMON_NAME;
@@ -56,7 +54,7 @@ import static org.onap.aaf.certservice.client.certification.EncryptionAlgorithmC
public class CsrFactory {
- private final Logger LOGGER = LoggerFactory.getLogger(CsrFactory.class);
+ private static final Logger LOGGER = LoggerFactory.getLogger(CsrFactory.class);
private static final String SANS_DELIMITER = ":";
private final CsrConfiguration configuration;
@@ -67,13 +65,14 @@ public class CsrFactory {
public String createCsrInPem(KeyPair keyPair) throws CsrGenerationException {
- PKCS10CertificationRequest request;
+ LOGGER.info("Creation of CSR has been started with following parameters: {}", configuration.toString());
String csrParameters = getMandatoryParameters().append(getOptionalParameters()).toString();
X500Principal subject = new X500Principal(csrParameters);
- request = createPKCS10Csr(subject, keyPair);
- return convertPKC10CsrToPem(request);
- }
+ PKCS10CertificationRequest request = createPKCS10Csr(subject, keyPair);
+ LOGGER.info("Creation of CSR has been completed successfully");
+ return convertPKCS10CsrToPem(request);
+ }
private StringBuilder getMandatoryParameters() {
return new StringBuilder(String.format("%s=%s, %s=%s, %s=%s, %s=%s",
@@ -116,9 +115,10 @@ public class CsrFactory {
return contentSigner;
}
- private String convertPKC10CsrToPem(PKCS10CertificationRequest request) throws CsrGenerationException {
+ private String convertPKCS10CsrToPem(PKCS10CertificationRequest request) throws CsrGenerationException {
final StringWriter stringWriter = new StringWriter();
try (JcaPEMWriter pemWriter = new JcaPEMWriter(stringWriter)) {
+ LOGGER.info("Conversion of CSR to PEM has been started");
pemWriter.writeObject(request);
} catch (IOException e) {
LOGGER.error("Conversion to PEM failed, exception message: {}", e.getMessage());
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/KeyPairFactory.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/KeyPairFactory.java
index 64136863..988d37d8 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/KeyPairFactory.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/KeyPairFactory.java
@@ -39,9 +39,10 @@ public class KeyPairFactory {
public KeyPair create() throws KeyPairGenerationException {
try {
+ LOGGER.info("KeyPair generation started with algorithm: {} and key size: {}", encryptionAlgorithm, keySize);
return createKeyPairGenerator().generateKeyPair();
} catch (NoSuchAlgorithmException e) {
- LOGGER.error("Generation of KeyPair failed, exception message: " + e.getMessage());
+ LOGGER.error("Generation of KeyPair failed, exception message: {}" , e.getMessage());
throw new KeyPairGenerationException(e);
}
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/PrivateKeyToPemEncoder.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/PrivateKeyToPemEncoder.java
index 77995958..7391b119 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/PrivateKeyToPemEncoder.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/PrivateKeyToPemEncoder.java
@@ -34,16 +34,16 @@ import org.slf4j.LoggerFactory;
public class PrivateKeyToPemEncoder {
- public static final String PEM_OBJECT_TYPE = "RSA PRIVATE KEY";
- private final Logger LOGGER = LoggerFactory.getLogger(PrivateKeyToPemEncoder.class);
+ private static final Logger LOGGER = LoggerFactory.getLogger(PrivateKeyToPemEncoder.class);
+ private static final String PEM_OBJECT_TYPE = "RSA PRIVATE KEY";
public String encodePrivateKeyToPem(PrivateKey pk) throws PkEncodingException {
- LOGGER.info("Encoding PrivateKey to PEM");
+ LOGGER.info("Attempt to encode private key to PEM");
StringWriter stringWriter = new StringWriter();
try (JcaPEMWriter pemWriter = new JcaPEMWriter(stringWriter)) {
pemWriter.writeObject(new PemObject(PEM_OBJECT_TYPE, pk.getEncoded()));
} catch (IOException e) {
- LOGGER.error("Exception occurred during encoding PrivateKey to PEM", e);
+ LOGGER.error("Encode of private key to PEM failed. Exception message: {}", e.getMessage());
throw new PkEncodingException(e);
}
return stringWriter.toString();
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/conversion/PKCS12FilesCreator.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/conversion/PKCS12FilesCreator.java
index d8c41bfd..9b0cfb78 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/conversion/PKCS12FilesCreator.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/conversion/PKCS12FilesCreator.java
@@ -29,6 +29,7 @@ import org.slf4j.LoggerFactory;
class PKCS12FilesCreator {
+ private static final Logger LOGGER = LoggerFactory.getLogger(PKCS12FilesCreator.class);
private static final String KEYSTORE_JKS = "keystore.jks";
private static final String KEYSTORE_PASS = "keystore.pass";
private static final String TRUSTSTORE_JKS = "truststore.jks";
@@ -37,7 +38,6 @@ class PKCS12FilesCreator {
private final String keystorePassPath;
private final String truststoreJksPath;
private final String truststorePassPath;
- private final Logger LOGGER = LoggerFactory.getLogger(PKCS12FilesCreator.class);
PKCS12FilesCreator(String path) {
@@ -48,7 +48,7 @@ class PKCS12FilesCreator {
}
void saveKeystoreData(byte[] keystoreData, String keystorePassword) throws PemToPKCS12ConverterException {
- LOGGER.debug("Creating PKCS12 keystore files and saving data. Keystore path: {}", keystoreJksPath);
+ LOGGER.debug("Attempt to create PKCS12 keystore files and saving data. Keystore path: {}", keystoreJksPath);
saveDataToLocation(keystoreData, keystoreJksPath);
saveDataToLocation(keystorePassword.getBytes(), keystorePassPath);
@@ -56,7 +56,7 @@ class PKCS12FilesCreator {
void saveTruststoreData(byte[] truststoreData, String truststorePassword)
throws PemToPKCS12ConverterException {
- LOGGER.debug("Creating PKCS12 truststore files and saving data. Truststore path: {}", truststoreJksPath);
+ LOGGER.debug("Attempt to create PKCS12 truststore files and saving data. Truststore path: {}", truststoreJksPath);
saveDataToLocation(truststoreData, truststoreJksPath);
saveDataToLocation(truststorePassword.getBytes(), truststorePassPath);
@@ -66,7 +66,7 @@ class PKCS12FilesCreator {
try (FileOutputStream fos = new FileOutputStream(path)) {
fos.write(data);
} catch (IOException e) {
- LOGGER.error("PKCS12 files creation failed", e);
+ LOGGER.error("PKCS12 files creation failed, exception message: {}", e.getMessage());
throw new PemToPKCS12ConverterException(e);
}
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/conversion/PemToPKCS12Converter.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/conversion/PemToPKCS12Converter.java
index eab9bf7c..ef1666dc 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/conversion/PemToPKCS12Converter.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/conversion/PemToPKCS12Converter.java
@@ -41,20 +41,20 @@ import org.slf4j.LoggerFactory;
class PemToPKCS12Converter {
- private final static String PKCS12 = "PKCS12";
- private final static String PASSWORD_ERROR_MSG = "Password should be min. 16 chars long and should contain only alphanumeric characters and special characters like Underscore (_), Dollar ($) and Pound (#)";
+ private static final Logger LOGGER = LoggerFactory.getLogger(PemToPKCS12Converter.class);
+ private static final String PKCS12 = "PKCS12";
+ private static final String PASSWORD_ERROR_MSG = "Password should be min. 16 chars long and should contain only alphanumeric characters and special characters like Underscore (_), Dollar ($) and Pound (#)";
private final LoadStoreParameter EMPTY_KEYSTORE_CONFIGURATION = null;
- private final Logger LOGGER = LoggerFactory.getLogger(PemToPKCS12Converter.class);
byte[] convertKeystore(List<String> certificateChain, Password password, String alias, PrivateKey privateKey)
throws PemToPKCS12ConverterException {
- LOGGER.debug("Converting PEM certificates to PKCS12 keystore.");
+ LOGGER.info("Conversion of PEM certificates to PKCS12 keystore");
return convert(certificateChain, password, certs -> getKeyStore(alias, password, certs, privateKey));
}
byte[] convertTruststore(List<String> trustAnchors, Password password, String alias)
throws PemToPKCS12ConverterException {
- LOGGER.debug("Converting PEM certificates to PKCS12 truststore.");
+ LOGGER.info("Conversion of PEM certificates to PKCS12 truststore");
return convert(trustAnchors, password, certs -> getTrustStore(alias, certs));
}
@@ -79,7 +79,7 @@ class PemToPKCS12Converter {
ks.store(bos, password.toCharArray());
return bos.toByteArray();
} catch (IOException | CertificateException | NoSuchAlgorithmException | KeyStoreException e) {
- LOGGER.error("Pem to PKCS12 converter failed", e);
+ LOGGER.error("Pem to PKCS12 converter failed, exception message: {}", e.getMessage());
throw new PemToPKCS12ConverterException(e);
}
}
@@ -126,7 +126,7 @@ class PemToPKCS12Converter {
.setProvider(new BouncyCastleProvider())
.getCertificate(certHolder);
} catch (IOException | CertificateException e) {
- LOGGER.error("Certificates conversion failed", e);
+ LOGGER.error("Certificates conversion failed, exception message: {}", e.getMessage());
throw new PemToPKCS12ConverterException(e);
}
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/CsrGenerationException.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/CsrGenerationException.java
index c1d4afd2..8c93a227 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/CsrGenerationException.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/CsrGenerationException.java
@@ -19,17 +19,17 @@
package org.onap.aaf.certservice.client.certification.exception;
-import org.onap.aaf.certservice.client.api.ExitCode;
+import org.onap.aaf.certservice.client.api.ExitStatus;
import org.onap.aaf.certservice.client.api.ExitableException;
public class CsrGenerationException extends ExitableException {
- private static final ExitCode EXIT_CODE = ExitCode.CSR_GENERATION_EXCEPTION;
+ private static final ExitStatus EXIT_STATUS = ExitStatus.CSR_GENERATION_EXCEPTION;
public CsrGenerationException(Throwable e) {
super(e);
}
- public int applicationExitCode() {
- return EXIT_CODE.getValue();
+ public ExitStatus applicationExitStatus() {
+ return EXIT_STATUS;
}
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/KeyPairGenerationException.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/KeyPairGenerationException.java
index 6af69889..d03c819d 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/KeyPairGenerationException.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/KeyPairGenerationException.java
@@ -18,17 +18,17 @@
*/
package org.onap.aaf.certservice.client.certification.exception;
-import org.onap.aaf.certservice.client.api.ExitCode;
+import org.onap.aaf.certservice.client.api.ExitStatus;
import org.onap.aaf.certservice.client.api.ExitableException;
public class KeyPairGenerationException extends ExitableException {
- private static final ExitCode EXIT_CODE = ExitCode.KEY_PAIR_GENERATION_EXCEPTION;
+ private static final ExitStatus EXIT_STATUS = ExitStatus.KEY_PAIR_GENERATION_EXCEPTION;
public KeyPairGenerationException(Throwable e) {
super(e);
}
- public int applicationExitCode() {
- return EXIT_CODE.getValue();
+ public ExitStatus applicationExitStatus() {
+ return EXIT_STATUS;
}
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/PemToPKCS12ConverterException.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/PemToPKCS12ConverterException.java
index 87020d6f..b98f4ace 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/PemToPKCS12ConverterException.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/PemToPKCS12ConverterException.java
@@ -19,11 +19,11 @@
package org.onap.aaf.certservice.client.certification.exception;
-import org.onap.aaf.certservice.client.api.ExitCode;
+import org.onap.aaf.certservice.client.api.ExitStatus;
import org.onap.aaf.certservice.client.api.ExitableException;
public class PemToPKCS12ConverterException extends ExitableException {
- private static final ExitCode EXIT_CODE = ExitCode.PKCS12_CONVERSION_EXCEPTION;
+ private static final ExitStatus EXIT_STATUS = ExitStatus.PKCS12_CONVERSION_EXCEPTION;
public PemToPKCS12ConverterException(Throwable e) {
super(e);
@@ -33,7 +33,7 @@ public class PemToPKCS12ConverterException extends ExitableException {
}
@Override
- public int applicationExitCode() {
- return EXIT_CODE.getValue();
+ public ExitStatus applicationExitStatus() {
+ return EXIT_STATUS;
}
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/PkEncodingException.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/PkEncodingException.java
index 596a6a44..20d623aa 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/PkEncodingException.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/certification/exception/PkEncodingException.java
@@ -19,17 +19,17 @@
package org.onap.aaf.certservice.client.certification.exception;
-import org.onap.aaf.certservice.client.api.ExitCode;
+import org.onap.aaf.certservice.client.api.ExitStatus;
import org.onap.aaf.certservice.client.api.ExitableException;
public class PkEncodingException extends ExitableException {
- private static final ExitCode EXIT_CODE = ExitCode.PK_TO_PEM_ENCODING_EXCEPTION;
+ private static final ExitStatus EXIT_STATUS = ExitStatus.PK_TO_PEM_ENCODING_EXCEPTION;
public PkEncodingException(Throwable e) {
super(e);
}
- public int applicationExitCode() {
- return EXIT_CODE.getValue();
+ public ExitStatus applicationExitStatus() {
+ return EXIT_STATUS;
}
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/exception/ClientConfigurationException.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/exception/ClientConfigurationException.java
index 5d968f43..f9360d73 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/exception/ClientConfigurationException.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/exception/ClientConfigurationException.java
@@ -19,17 +19,17 @@
*/
package org.onap.aaf.certservice.client.configuration.exception;
-import org.onap.aaf.certservice.client.api.ExitCode;
+import org.onap.aaf.certservice.client.api.ExitStatus;
import org.onap.aaf.certservice.client.api.ExitableException;
public class ClientConfigurationException extends ExitableException {
- private static final ExitCode EXIT_CODE = ExitCode.CLIENT_CONFIGURATION_EXCEPTION;
+ private static final ExitStatus EXIT_STATUS = ExitStatus.CLIENT_CONFIGURATION_EXCEPTION;
public ClientConfigurationException(String message) {
super(message);
}
- public int applicationExitCode() {
- return EXIT_CODE.getValue();
+ public ExitStatus applicationExitStatus() {
+ return EXIT_STATUS;
}
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/exception/CsrConfigurationException.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/exception/CsrConfigurationException.java
index f9373117..a7cf4f7a 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/exception/CsrConfigurationException.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/exception/CsrConfigurationException.java
@@ -19,17 +19,17 @@
*/
package org.onap.aaf.certservice.client.configuration.exception;
-import org.onap.aaf.certservice.client.api.ExitCode;
+import org.onap.aaf.certservice.client.api.ExitStatus;
import org.onap.aaf.certservice.client.api.ExitableException;
public class CsrConfigurationException extends ExitableException {
- private static final ExitCode EXIT_CODE = ExitCode.CSR_CONFIGURATION_EXCEPTION;
+ private static final ExitStatus EXIT_STATUS = ExitStatus.CSR_CONFIGURATION_EXCEPTION;
public CsrConfigurationException(String message) {
super(message);
}
- public int applicationExitCode() {
- return EXIT_CODE.getValue();
+ public ExitStatus applicationExitStatus() {
+ return EXIT_STATUS;
}
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/factory/ClientConfigurationFactory.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/factory/ClientConfigurationFactory.java
index 26a2b1b1..a03ded6c 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/factory/ClientConfigurationFactory.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/factory/ClientConfigurationFactory.java
@@ -24,9 +24,12 @@ import org.onap.aaf.certservice.client.configuration.ClientConfigurationEnvs;
import org.onap.aaf.certservice.client.configuration.EnvsForClient;
import org.onap.aaf.certservice.client.configuration.exception.ClientConfigurationException;
import org.onap.aaf.certservice.client.configuration.model.ClientConfiguration;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
public class ClientConfigurationFactory extends AbstractConfigurationFactory<ClientConfiguration> {
+ private static final Logger LOGGER = LoggerFactory.getLogger(ClientConfigurationFactory.class);
private final EnvsForClient envsForClient;
public ClientConfigurationFactory(EnvsForClient envsForClient) {
@@ -54,6 +57,8 @@ public class ClientConfigurationFactory extends AbstractConfigurationFactory<Cli
.map(configuration::setCaName)
.orElseThrow(() -> new ClientConfigurationException(ClientConfigurationEnvs.CA_NAME + " is invalid."));
+ LOGGER.info("Successful validation of Client configuration. Configuration data: {}", configuration.toString());
+
return configuration;
}
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/factory/CsrConfigurationFactory.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/factory/CsrConfigurationFactory.java
index a6e86187..a94c906f 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/factory/CsrConfigurationFactory.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/factory/CsrConfigurationFactory.java
@@ -24,9 +24,12 @@ import org.onap.aaf.certservice.client.configuration.CsrConfigurationEnvs;
import org.onap.aaf.certservice.client.configuration.EnvsForCsr;
import org.onap.aaf.certservice.client.configuration.exception.CsrConfigurationException;
import org.onap.aaf.certservice.client.configuration.model.CsrConfiguration;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
public class CsrConfigurationFactory extends AbstractConfigurationFactory<CsrConfiguration> {
+ private static final Logger LOGGER = LoggerFactory.getLogger(CsrConfigurationFactory.class);
private final EnvsForCsr envsForCsr;
@@ -67,6 +70,8 @@ public class CsrConfigurationFactory extends AbstractConfigurationFactory<CsrCon
envsForCsr.getSubjectAlternativesName()
.map(configuration::setSubjectAlternativeNames);
+ LOGGER.info("Successful validation of CSR configuration. Configuration data: {}", configuration.toString());
+
return configuration;
}
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/model/ClientConfiguration.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/model/ClientConfiguration.java
index d1c1c685..ff2db831 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/model/ClientConfiguration.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/model/ClientConfiguration.java
@@ -20,6 +20,8 @@
package org.onap.aaf.certservice.client.configuration.model;
+import org.onap.aaf.certservice.client.configuration.ClientConfigurationEnvs;
+
public class ClientConfiguration implements ConfigurationModel {
private static final Integer DEFAULT_TIMEOUT_MS = 30000;
@@ -72,4 +74,13 @@ public class ClientConfiguration implements ConfigurationModel {
this.caName = caName;
return this;
}
+
+ @Override
+ public String toString() {
+ return String.format("%s: %s, %s: %s, %s: %s, %s: %s",
+ ClientConfigurationEnvs.REQUEST_URL, urlToCertService,
+ ClientConfigurationEnvs.REQUEST_TIMEOUT, requestTimeout,
+ ClientConfigurationEnvs.OUTPUT_PATH, certsOutputPath,
+ ClientConfigurationEnvs.CA_NAME, caName);
+ }
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/model/CsrConfiguration.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/model/CsrConfiguration.java
index aaaf10fa..55f33c9f 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/model/CsrConfiguration.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/configuration/model/CsrConfiguration.java
@@ -21,6 +21,8 @@
package org.onap.aaf.certservice.client.configuration.model;
+import org.onap.aaf.certservice.client.configuration.CsrConfigurationEnvs;
+
public class CsrConfiguration implements ConfigurationModel {
private String commonName;
@@ -94,4 +96,16 @@ public class CsrConfiguration implements ConfigurationModel {
this.sans = subjectAlternativeNames;
return this;
}
+
+ @Override
+ public String toString() {
+ return String.format("%s: %s, %s: %s, %s: %s, %s: %s, %s: %s, %s: %s, %s: %s",
+ CsrConfigurationEnvs.COMMON_NAME, commonName,
+ CsrConfigurationEnvs.COUNTRY, country,
+ CsrConfigurationEnvs.STATE, state,
+ CsrConfigurationEnvs.ORGANIZATION, organization,
+ CsrConfigurationEnvs.ORGANIZATION_UNIT, organizationUnit,
+ CsrConfigurationEnvs.LOCATION, location,
+ CsrConfigurationEnvs.SANS, sans);
+ }
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/CloseableHttpClientProvider.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/CloseableHttpClientProvider.java
index ff29a14d..5ad933ff 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/CloseableHttpClientProvider.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/CloseableHttpClientProvider.java
@@ -34,7 +34,11 @@ public class CloseableHttpClientProvider {
public CloseableHttpClient getClient() {
RequestConfig config =
- RequestConfig.custom().setConnectionRequestTimeout(timeout).build();
+ RequestConfig.custom()
+ .setConnectionRequestTimeout(timeout)
+ .setConnectTimeout(timeout)
+ .setSocketTimeout(timeout)
+ .build();
return HttpClientBuilder.create().setDefaultRequestConfig(config).build();
}
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/HttpClient.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/HttpClient.java
index 30f881bb..7512830d 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/HttpClient.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/HttpClient.java
@@ -38,12 +38,11 @@ import java.io.IOException;
public class HttpClient {
+ private static final Logger LOGGER = LoggerFactory.getLogger(HttpClient.class);
private static final String CSR_HEADER_NAME = "CSR";
private static final String PK_HEADER_NAME = "PK";
private static final String CHARSET_UTF_8 = "UTF-8";
- private final Logger LOGGER = LoggerFactory.getLogger(HttpClient.class);
-
private final Gson gson = new Gson();
private final CloseableHttpClientProvider httpClientProvider;
private final String certServiceAddress;
@@ -57,20 +56,24 @@ public class HttpClient {
throws CertServiceApiResponseException, HttpClientException {
try (CloseableHttpClient httpClient = httpClientProvider.getClient()) {
- LOGGER.info("Sending request to API. Url: {}{} ", certServiceAddress, caName);
+ LOGGER.info("Attempt to send request to API, on url: {}{} ", certServiceAddress, caName);
HttpResponse httpResponse = httpClient.execute(createHttpRequest(caName, csr, encodedPk));
LOGGER.info("Received response from API");
return extractCertServiceResponse(httpResponse);
} catch (IOException e) {
- LOGGER.error("Failed execute request to API for URL: {}{} . Exception message: {}",
+ LOGGER.error("Failed execute request to API for URL: {}{} , exception message: {}",
certServiceAddress, caName, e.getMessage());
throw new HttpClientException(e);
}
}
- private int getStatusCode(HttpResponse httpResponse) {
- return httpResponse.getStatusLine().getStatusCode();
+ private HttpGet createHttpRequest(String caName, String csr, String pk) {
+ String url = certServiceAddress + caName;
+ HttpGet httpGet = new HttpGet(url);
+ httpGet.addHeader(CSR_HEADER_NAME, csr);
+ httpGet.addHeader(PK_HEADER_NAME, pk);
+ return httpGet;
}
private CertServiceResponse extractCertServiceResponse(HttpResponse httpResponse)
@@ -84,34 +87,25 @@ public class HttpClient {
return gson.fromJson(jsonResponse, CertServiceResponse.class);
}
- private String getStringResponse(HttpEntity httpEntity) throws HttpClientException {
- try {
- return EntityUtils.toString(httpEntity, CHARSET_UTF_8);
- } catch (IOException e) {
- LOGGER.error("Cannot parse response to string", e);
- throw new HttpClientException(e);
- }
- }
-
- private HttpGet createHttpRequest(String caName, String csr, String pk) {
- String url = certServiceAddress + caName;
- HttpGet httpGet = new HttpGet(url);
- httpGet.addHeader(CSR_HEADER_NAME, csr);
- httpGet.addHeader(PK_HEADER_NAME, pk);
- return httpGet;
- }
-
-
private CertServiceApiResponseException generateApiResponseException(HttpResponse httpResponse)
throws HttpClientException {
String stringResponse = getStringResponse(httpResponse.getEntity());
ErrorCertServiceResponse errorCertServiceResponse =
gson.fromJson(stringResponse, ErrorCertServiceResponse.class);
- String messageFromApi = errorCertServiceResponse.getMessage();
- String path = errorCertServiceResponse.getPath();
- int httpResponseCode = getStatusCode(httpResponse);
+ return new CertServiceApiResponseException(getStatusCode(httpResponse), errorCertServiceResponse.getMessage());
+ }
- return new CertServiceApiResponseException(certServiceAddress + path, httpResponseCode, messageFromApi);
+ private int getStatusCode(HttpResponse httpResponse) {
+ return httpResponse.getStatusLine().getStatusCode();
+ }
+
+ private String getStringResponse(HttpEntity httpEntity) throws HttpClientException {
+ try {
+ return EntityUtils.toString(httpEntity, CHARSET_UTF_8);
+ } catch (IOException e) {
+ LOGGER.error("Cannot parse response to string, exception message: {}", e.getMessage());
+ throw new HttpClientException(e);
+ }
}
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/exception/CertServiceApiResponseException.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/exception/CertServiceApiResponseException.java
index 7286318f..151c2a1c 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/exception/CertServiceApiResponseException.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/exception/CertServiceApiResponseException.java
@@ -20,23 +20,22 @@
package org.onap.aaf.certservice.client.httpclient.exception;
-import org.onap.aaf.certservice.client.api.ExitCode;
+import org.onap.aaf.certservice.client.api.ExitStatus;
import org.onap.aaf.certservice.client.api.ExitableException;
public class CertServiceApiResponseException extends ExitableException {
- private static final ExitCode EXIT_CODE = ExitCode.CERT_SERVICE_API_CONNECTION_EXCEPTION;
+ private static final ExitStatus EXIT_STATUS = ExitStatus.CERT_SERVICE_API_CONNECTION_EXCEPTION;
- public CertServiceApiResponseException(String url, int responseCode, String messageFromAPI) {
+ public CertServiceApiResponseException(int responseCode, String messageFromAPI) {
- super(String.format("Request failed for URL '%s'. Response code: %d . Message from API: %s",
- url,
+ super(String.format("CertService HTTP unsuccessful response. Response code: %d . Message from Service: %s",
responseCode,
messageFromAPI));
}
@Override
- public int applicationExitCode() {
- return EXIT_CODE.getValue();
+ public ExitStatus applicationExitStatus() {
+ return EXIT_STATUS;
}
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/exception/HttpClientException.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/exception/HttpClientException.java
index 28f83073..697d152a 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/exception/HttpClientException.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/exception/HttpClientException.java
@@ -20,18 +20,18 @@
package org.onap.aaf.certservice.client.httpclient.exception;
-import org.onap.aaf.certservice.client.api.ExitCode;
+import org.onap.aaf.certservice.client.api.ExitStatus;
import org.onap.aaf.certservice.client.api.ExitableException;
public class HttpClientException extends ExitableException {
- private static final ExitCode EXIT_CODE = ExitCode.HTTP_CLIENT_EXCEPTION;
+ private static final ExitStatus EXIT_STATUS = ExitStatus.HTTP_CLIENT_EXCEPTION;
- public HttpClientException(Throwable e) {
+ public HttpClientException(Throwable e){
super(e);
}
@Override
- public int applicationExitCode() {
- return EXIT_CODE.getValue();
+ public ExitStatus applicationExitStatus() {
+ return EXIT_STATUS;
}
}
diff --git a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/model/ErrorCertServiceResponse.java b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/model/ErrorCertServiceResponse.java
index 6fe99ce5..4a9efcb4 100644
--- a/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/model/ErrorCertServiceResponse.java
+++ b/certServiceClient/src/main/java/org/onap/aaf/certservice/client/httpclient/model/ErrorCertServiceResponse.java
@@ -22,19 +22,14 @@ package org.onap.aaf.certservice.client.httpclient.model;
public class ErrorCertServiceResponse {
- private final String message;
- private final String path;
+ private final String errorMessage;
- public ErrorCertServiceResponse(String message, String path) {
- this.message = message;
- this.path = path;
+ public ErrorCertServiceResponse(String errorMessage) {
+ this.errorMessage = errorMessage;
}
public String getMessage() {
- return message;
+ return errorMessage;
}
- public String getPath() {
- return path;
- }
}