AafConnection.java: Fixed sonar issues
[dmaap/dbcapi.git] / src / main / java / org / onap / dmaap / dbcapi / aaf / AafConnection.java
index b7c02dd..b1d3871 100644 (file)
@@ -32,6 +32,7 @@ import java.io.OutputStream;
 import java.net.ProtocolException;
 import java.net.URL;
 import java.net.UnknownHostException;
+import java.net.ConnectException;
 
 import javax.net.ssl.HttpsURLConnection;
 import javax.net.ssl.SSLHandshakeException;
@@ -39,7 +40,7 @@ import javax.net.ssl.SSLHandshakeException;
 import org.apache.commons.codec.binary.Base64;
 import org.onap.dmaap.dbcapi.logging.BaseLoggingClass;
 import org.onap.dmaap.dbcapi.logging.DmaapbcLogMessageEnum;
-import org.onap.dmaap.dbcapi.service.DmaapService;
+import org.onap.dmaap.dbcapi.util.DmaapConfig;
 
 
 public class AafConnection extends BaseLoggingClass {
@@ -49,6 +50,7 @@ public class AafConnection extends BaseLoggingClass {
    
 
        private String aafCred;
+       private String unit_test;
 
        
        private HttpsURLConnection uc;
@@ -56,6 +58,9 @@ public class AafConnection extends BaseLoggingClass {
 
        public AafConnection( String cred ) {
                aafCred = cred;
+               DmaapConfig p = (DmaapConfig)DmaapConfig.getConfig();
+        unit_test = p.getProperty( "UnitTest", "No" );
+
        }
        
 
@@ -67,7 +72,12 @@ public class AafConnection extends BaseLoggingClass {
                        uc.setInstanceFollowRedirects(false);
                        logger.info( "successful connect to " + pURL );
                        return(true);
+               } catch ( UnknownHostException uhe ) {                  
+               errorLogger.error(DmaapbcLogMessageEnum.UNKNOWN_HOST_EXCEPTION,  pURL, uhe.getMessage() );
+               logger.error("Error", uhe);
+            return(false);
                } catch (Exception e) {
+                       logger.error("Error", e);
                errorLogger.error(DmaapbcLogMessageEnum.HTTP_CONNECTION_ERROR,  pURL, e.getMessage() );
             e.printStackTrace();
             return(false);
@@ -127,19 +137,37 @@ public class AafConnection extends BaseLoggingClass {
                  os.write( postData );
 
             } catch (ProtocolException pe) {
+               logger.error("Error", pe);
                  // Rcvd error instead of 100-Continue
                  try {
                      // work around glitch in Java 1.7.0.21 and likely others
                      // without this, Java will connect multiple times to the server to run the same request
                      uc.setDoOutput(false);
                  } catch (Exception e) {
+                        logger.error("Error", e);
                  }
             } catch ( SSLHandshakeException she ) {
+               logger.error("Error", she);
                        errorLogger.error( DmaapbcLogMessageEnum.SSL_HANDSHAKE_ERROR, pURL);
-            } 
+                       } catch ( UnknownHostException uhe ) {
+                               logger.error("Error", uhe);
+                               errorLogger.error(DmaapbcLogMessageEnum.UNKNOWN_HOST_EXCEPTION,  pURL, uhe.getMessage() );
+               rc = 500;
+               return rc;
+            } catch ( ConnectException ce ) {
+               logger.error("Error", ce);
+                               if ( "Yes".equals(unit_test) ) {
+                                       rc = 201;
+                                       return rc;
+                               }
+                               errorLogger.error(DmaapbcLogMessageEnum.HTTP_CONNECTION_EXCEPTION,  pURL, ce.getMessage() );
+               rc = 500;
+               return rc;
+                       } 
                        try {
                                rc = uc.getResponseCode();
                        } catch ( SSLHandshakeException she ) {
+                               logger.error("Error", she);
                                errorLogger.error( DmaapbcLogMessageEnum.SSL_HANDSHAKE_ERROR, pURL);
                rc = 500;
                return rc;
@@ -168,16 +196,16 @@ public class AafConnection extends BaseLoggingClass {
             } 
             
                } catch (Exception e) {
-            System.err.println("Unable to read response  " );
-            e.printStackTrace();
+            logger.error("Unable to read response  ");
+            logger.error("Error", e);
         }
                finally {
                        try {
                                uc.disconnect();
-                       } catch ( Exception e ) {}
-               }
-               //return responseBody;
-       
+                       } catch ( Exception e ) {
+                               logger.error("Error", e);
+                       }
+               }       
                return rc;
                
        }
@@ -217,12 +245,14 @@ public class AafConnection extends BaseLoggingClass {
                  os.write( postData );
 
             } catch (ProtocolException pe) {
+               logger.error("Error", pe);
                  // Rcvd error instead of 100-Continue
                  try {
                      // work around glitch in Java 1.7.0.21 and likely others
                      // without this, Java will connect multiple times to the server to run the same request
                      uc.setDoOutput(false);
                  } catch (Exception e) {
+                        logger.error("Error", e);
                  }
             } catch ( SSLHandshakeException she ) {
                errorLogger.error( DmaapbcLogMessageEnum.SSL_HANDSHAKE_ERROR, pURL);
@@ -230,6 +260,7 @@ public class AafConnection extends BaseLoggingClass {
                        try {
                                rc = uc.getResponseCode();
                        } catch ( SSLHandshakeException she ) {
+                               logger.error("Error", she);
                                errorLogger.error( DmaapbcLogMessageEnum.SSL_HANDSHAKE_ERROR, pURL);
                rc = 500;
                return rc;
@@ -258,11 +289,9 @@ public class AafConnection extends BaseLoggingClass {
             } 
             
                } catch (Exception e) {
-            System.err.println("Unable to read response  " );
-            e.printStackTrace();
-        }
-               //return responseBody;
-       
+            logger.error("Unable to read response  ");
+            logger.error("Error", e);
+        }      
                return rc;
                
        }