static long tryParse16HexCharacters(CharSequence lowerHex, int index, int end) { int endIndex = index + 16; if (endIndex > end) return 0L; return HexCodec.lenientLowerHexToUnsignedLong(lowerHex, index, endIndex); }
/** * Parses a 16 character lower-hex string with no prefix into an unsigned long, starting at the * specified index. */ public static long lowerHexToUnsignedLong(CharSequence lowerHex, int index) { int endIndex = Math.min(index + 16, lowerHex.length()); long result = lenientLowerHexToUnsignedLong(lowerHex, index, endIndex); if (result == 0) throw isntLowerHexLong(lowerHex); return result; }
/** Parses the parent id from the input string. Returns true if the ID was missing or valid. */ final <C, K> boolean parseParentId(Propagation.Getter<C, K> getter, C carrier, K key) { String parentIdString = getter.get(carrier, key); if (parentIdString == null) return true; // absent parent is ok int length = parentIdString.length(); if (invalidIdLength(key, length, 16)) return false; parentId = lenientLowerHexToUnsignedLong(parentIdString, 0, length); if (parentId != 0) return true; maybeLogNotLowerHex(parentIdString); return false; }
/** Parses the span id from the input string. Returns true if the ID is valid. */ final <C, K> boolean parseSpanId(Propagation.Getter<C, K> getter, C carrier, K key) { String spanIdString = getter.get(carrier, key); if (isNull(key, spanIdString)) return false; int length = spanIdString.length(); if (invalidIdLength(key, length, 16)) return false; spanId = lenientLowerHexToUnsignedLong(spanIdString, 0, length); if (spanId == 0) { maybeLogNotLowerHex(spanIdString); return false; } return true; }
traceIdHigh = lenientLowerHexToUnsignedLong(traceIdString, 0, traceIdIndex); if (traceIdHigh == 0) { maybeLogNotLowerHex(traceIdString); traceId = lenientLowerHexToUnsignedLong(traceIdString, traceIdIndex, length); if (traceId == 0) { maybeLogNotLowerHex(traceIdString);
static long tryParse16HexCharacters(CharSequence lowerHex, int index, int end) { int endIndex = index + 16; if (endIndex > end) return 0L; return HexCodec.lenientLowerHexToUnsignedLong(lowerHex, index, endIndex); }
/** * Parses a 16 character lower-hex string with no prefix into an unsigned long, starting at the * specified index. */ public static long lowerHexToUnsignedLong(CharSequence lowerHex, int index) { int endIndex = Math.min(index + 16, lowerHex.length()); long result = lenientLowerHexToUnsignedLong(lowerHex, index, endIndex); if (result == 0) throw isntLowerHexLong(lowerHex); return result; }
private static long[] convertHexTraceIdToLong(String hexTraceId) { long[] result = new long[2]; int length = hexTraceId.length(); if (length != 32) return null; // left-most characters, if any, are the high bits int traceIdIndex = Math.max(0, length - 16); result[0] = lenientLowerHexToUnsignedLong(hexTraceId, 0, traceIdIndex); if (result[0] == 0) { if (LOG.isLoggable(Level.FINE)) { LOG.fine(hexTraceId + " is not a lower hex string."); } return null; } // right-most up to 16 characters are the low bits result[1] = lenientLowerHexToUnsignedLong(hexTraceId, traceIdIndex, length); if (result[1] == 0) { if (LOG.isLoggable(Level.FINE)) { LOG.fine(hexTraceId + " is not a lower hex string."); } return null; } return result; }
/** Parses the parent id from the input string. Returns true if the ID was missing or valid. */ final <C, K> boolean parseParentId(Propagation.Getter<C, K> getter, C carrier, K key) { String parentIdString = getter.get(carrier, key); if (parentIdString == null) return true; // absent parent is ok int length = parentIdString.length(); if (invalidIdLength(key, length, 16)) return false; parentId = lenientLowerHexToUnsignedLong(parentIdString, 0, length); if (parentId != 0) return true; maybeLogNotLowerHex(parentIdString); return false; }
/** Parses the span id from the input string. Returns true if the ID is valid. */ final <C, K> boolean parseSpanId(Propagation.Getter<C, K> getter, C carrier, K key) { String spanIdString = getter.get(carrier, key); if (isNull(key, spanIdString)) return false; int length = spanIdString.length(); if (invalidIdLength(key, length, 16)) return false; spanId = lenientLowerHexToUnsignedLong(spanIdString, 0, length); if (spanId == 0) { maybeLogNotLowerHex(spanIdString); return false; } return true; }
traceIdHigh = lenientLowerHexToUnsignedLong(traceIdString, 0, traceIdIndex); if (traceIdHigh == 0) { maybeLogNotLowerHex(traceIdString); traceId = lenientLowerHexToUnsignedLong(traceIdString, traceIdIndex, length); if (traceId == 0) { maybeLogNotLowerHex(traceIdString);