X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=datarouter-node%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fdmaap%2Fdatarouter%2Fnode%2FNodeUtils.java;h=d2ab80346c61a8649859db59791f198d47415def;hb=refs%2Fchanges%2F13%2F82113%2F3;hp=d5b15bcaf571c622ef0d909cfdb422f3b7a74e97;hpb=7db6b77e880c77da2489eedd5bfa85524c5b6e72;p=dmaap%2Fdatarouter.git diff --git a/datarouter-node/src/main/java/org/onap/dmaap/datarouter/node/NodeUtils.java b/datarouter-node/src/main/java/org/onap/dmaap/datarouter/node/NodeUtils.java index d5b15bca..d2ab8034 100644 --- a/datarouter-node/src/main/java/org/onap/dmaap/datarouter/node/NodeUtils.java +++ b/datarouter-node/src/main/java/org/onap/dmaap/datarouter/node/NodeUtils.java @@ -24,12 +24,10 @@ package org.onap.dmaap.datarouter.node; -import static com.att.eelf.configuration.Configuration.MDC_SERVER_FQDN; -import static com.att.eelf.configuration.Configuration.MDC_SERVER_IP_ADDRESS; -import static com.att.eelf.configuration.Configuration.MDC_SERVICE_NAME; - import com.att.eelf.configuration.EELFLogger; import com.att.eelf.configuration.EELFManager; + +import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.net.InetAddress; @@ -40,18 +38,25 @@ import java.text.SimpleDateFormat; import java.util.Date; import java.util.Enumeration; import java.util.TimeZone; +import java.util.UUID; +import java.util.zip.GZIPInputStream; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; import org.apache.commons.codec.binary.Base64; +import org.apache.commons.lang3.StringUtils; import org.apache.log4j.Logger; import org.onap.dmaap.datarouter.node.eelf.EelfMsgs; import org.slf4j.MDC; +import static com.att.eelf.configuration.Configuration.*; + /** * Utility functions for the data router node */ public class NodeUtils { private static EELFLogger eelfLogger = EELFManager.getInstance() - .getLogger("org.onap.dmaap.datarouter.node.NodeUtils"); + .getLogger(NodeUtils.class); private static Logger nodeUtilsLogger = Logger.getLogger("org.onap.dmaap.datarouter.node.NodeUtils"); private NodeUtils() { @@ -60,7 +65,7 @@ public class NodeUtils { /** * Base64 encode a byte array * - * @param raw The bytes to be encoded + * @param raw The bytes to be encoded * @return The encoded string */ public static String base64Encode(byte[] raw) { @@ -95,7 +100,8 @@ public class NodeUtils { return (getAuthHdr(node, base64Encode(md.digest()))); } catch (Exception exception) { nodeUtilsLogger - .error("Exception in generating Credentials for given node name:= " + exception.toString(), exception); + .error("Exception in generating Credentials for given node name:= " + exception.toString(), + exception); return (null); } } @@ -117,7 +123,7 @@ public class NodeUtils { ks.load(fileInputStream, kspass.toCharArray()); } catch (IOException ioException) { nodeUtilsLogger.error("IOException occurred while opening FileInputStream: " + ioException.getMessage(), - ioException); + ioException); return (null); } } catch (Exception e) { @@ -174,7 +180,8 @@ public class NodeUtils { return (InetAddress.getByName(ip).getAddress()); } catch (Exception exception) { nodeUtilsLogger - .error("Exception in generating byte array for given IP address := " + exception.toString(), exception); + .error("Exception in generating byte array for given IP address := " + exception.toString(), + exception); } return (null); } @@ -252,9 +259,52 @@ public class NodeUtils { MDC.put(MDC_SERVER_IP_ADDRESS, InetAddress.getLocalHost().getHostAddress()); } catch (Exception exception) { nodeUtilsLogger - .error("Exception in generating byte array for given IP address := " + exception.toString(), exception); + .error("Exception in generating byte array for given IP address := " + exception.toString(), + exception); + } + + } + + /* Method sets RequestIs and InvocationId for se in EELF logs + * @Method - setIpAndFqdnForEelf + * @Params - Req, Request used to get RequestId and InvocationId + */ + public static void setRequestIdAndInvocationId(HttpServletRequest req) { + String reqId = req.getHeader("X-ONAP-RequestID"); + if (StringUtils.isBlank(reqId)) { + reqId = UUID.randomUUID().toString(); } + MDC.put(MDC_KEY_REQUEST_ID, reqId); + String invId = req.getHeader("X-InvocationID"); + if (StringUtils.isBlank(invId)) { + invId = UUID.randomUUID().toString(); + } + MDC.put("InvocationId", invId); + } + public static void sendResponseError(HttpServletResponse response, int errorCode, Logger intlogger) { + try { + response.sendError(errorCode); + } catch (IOException ioe) { + intlogger.error("IOException" + ioe.getMessage()); + } + } + + /** + * Method to check to see if file is of type gzip + * + * @param file The name of the file to be checked + * @return True if the file is of type gzip + */ + public static boolean isFiletypeGzip(File file){ + try(FileInputStream fileInputStream = new FileInputStream(file); + GZIPInputStream gzip = new GZIPInputStream(fileInputStream)) { + + return true; + }catch (IOException e){ + nodeUtilsLogger.error("NODE0403 " + file.toString() + " Not in gzip(gz) format: " + e.toString() + e); + return false; + } }