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;
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 {
-
-
+
+
private String aafCred;
+ private String unit_test;
+
-
private HttpsURLConnection uc;
public AafConnection( String cred ) {
aafCred = cred;
+ DmaapConfig p = (DmaapConfig)DmaapConfig.getConfig();
+ unit_test = p.getProperty( "UnitTest", "No" );
+
}
-
+
private boolean makeConnection( String pURL ) {
-
+
try {
URL u = new URL( pURL );
uc = (HttpsURLConnection) u.openConnection();
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) {
- errorLogger.error(DmaapbcLogMessageEnum.HTTP_CONNECTION_ERROR, pURL, e.getMessage() );
+ logger.error("Error", e);
+ errorLogger.error(DmaapbcLogMessageEnum.HTTP_CONNECTION_ERROR, pURL, e.getMessage());
e.printStackTrace();
return(false);
}
sb.append( line );
}
} catch (IOException ex ) {
- errorLogger.error( DmaapbcLogMessageEnum.IO_EXCEPTION, ex.getMessage());
+ errorLogger.error( DmaapbcLogMessageEnum.IO_EXCEPTION + ex.getMessage(),ex);
}
-
+
return sb.toString();
}
String auth = "Basic " + Base64.encodeBase64String(aafCred.getBytes());
int rc = -1;
-
+
if ( ! makeConnection( pURL ) ) {
return rc;
};
-
+
byte[] postData = obj.getBytes();
//logger.info( "post fields=" + postData ); //byte isn't very readable
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;
}
} 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;
}
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);
+ errorLogger.error( DmaapbcLogMessageEnum.SSL_HANDSHAKE_ERROR +"For:- "+pURL,she);
}
try {
rc = uc.getResponseCode();
} catch ( SSLHandshakeException she ) {
+ logger.error("Error", she);
errorLogger.error( DmaapbcLogMessageEnum.SSL_HANDSHAKE_ERROR, pURL);
rc = 500;
return rc;
}
} 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;
}