List of usage examples for org.apache.commons.lang StringUtils leftPad
public static String leftPad(String str, int size, String padStr)
Left pad a String with a specified String.
From source file:org.apache.directory.server.ldap.LdapProtocolUtils.java
public static byte[] createCookie(int replicaId, String csn) { // the syncrepl cookie format (compatible with OpenLDAP) // rid=nn,csn=xxxz String replicaIdStr = StringUtils.leftPad(Integer.toString(replicaId), 3, '0'); return Strings.getBytesUtf8(REPLICA_ID_PREFIX + replicaIdStr + COOKIE_DELIM + CSN_PREFIX + csn); }
From source file:org.apache.gora.oracle.util.OracleUtil.java
public static String padKey(String key, char padChar, int length) { return StringUtils.leftPad(key, length, padChar); }
From source file:org.apache.hadoop.hbase.manual.utils.HBaseUtils.java
/** * Returns the bytes corresponding to the BigInteger * @param bigInteger//w ww. j a v a 2 s.com * @return byte corresponding to input BigInteger */ private static byte[] convertToByte(BigInteger bigInteger) { String bigIntegerString = bigInteger.toString(16); bigIntegerString = StringUtils.leftPad(bigIntegerString, rowComparisonLength, '0'); return Bytes.toBytes(bigIntegerString); }
From source file:org.apache.hadoop.hive.ql.exec.persistence.BytesBytesMultiHashMap.java
private static String dumpRef(long ref) { return StringUtils.leftPad(Long.toBinaryString(ref), 64, "0") + " o=" + Ref.getOffset(ref) + " s=" + Ref.getStateByte(ref) + " l=" + Ref.hasList(ref) + " h=" + Long.toBinaryString(Ref.getHashBits(ref)); }
From source file:org.apache.hadoop.hive.serde2.binarysortable.TestBinarySortableFast.java
private void testBinarySortableFastCase(int caseNum, boolean doNonRandomFill, Random r, SerdeRandomRowSource.SupportedTypes supportedTypes, int depth) throws Throwable { SerdeRandomRowSource source = new SerdeRandomRowSource(); // UNDONE: Until Fast BinarySortable supports complex types -- disable. source.init(r, supportedTypes, depth); int rowCount = 1000; Object[][] rows = source.randomRows(rowCount); if (doNonRandomFill) { MyTestClass.nonRandomRowFill(rows, source.primitiveCategories()); }/* w w w. ja va2 s. c o m*/ // We need to operate on sorted data to fully test BinarySortable. source.sort(rows); StructObjectInspector rowStructObjectInspector = source.rowStructObjectInspector(); TypeInfo[] typeInfos = source.typeInfos(); int columnCount = typeInfos.length; int writeColumnCount = columnCount; StructObjectInspector writeRowStructObjectInspector = rowStructObjectInspector; boolean doWriteFewerColumns = r.nextBoolean(); if (doWriteFewerColumns) { writeColumnCount = 1 + r.nextInt(columnCount); if (writeColumnCount == columnCount) { doWriteFewerColumns = false; } else { writeRowStructObjectInspector = source.partialRowStructObjectInspector(writeColumnCount); } } String fieldNames = ObjectInspectorUtils.getFieldNames(rowStructObjectInspector); String fieldTypes = ObjectInspectorUtils.getFieldTypes(rowStructObjectInspector); String order; order = StringUtils.leftPad("", columnCount, '+'); String nullOrder; nullOrder = StringUtils.leftPad("", columnCount, 'a'); AbstractSerDe serde_ascending = TestBinarySortableSerDe.getSerDe(fieldNames, fieldTypes, order, nullOrder); AbstractSerDe serde_ascending_fewer = null; if (doWriteFewerColumns) { String partialFieldNames = ObjectInspectorUtils.getFieldNames(writeRowStructObjectInspector); String partialFieldTypes = ObjectInspectorUtils.getFieldTypes(writeRowStructObjectInspector); serde_ascending_fewer = TestBinarySortableSerDe.getSerDe(partialFieldNames, partialFieldTypes, order, nullOrder); } order = StringUtils.leftPad("", columnCount, '-'); nullOrder = StringUtils.leftPad("", columnCount, 'z'); AbstractSerDe serde_descending = TestBinarySortableSerDe.getSerDe(fieldNames, fieldTypes, order, nullOrder); AbstractSerDe serde_descending_fewer = null; if (doWriteFewerColumns) { String partialFieldNames = ObjectInspectorUtils.getFieldNames(writeRowStructObjectInspector); String partialFieldTypes = ObjectInspectorUtils.getFieldTypes(writeRowStructObjectInspector); serde_descending_fewer = TestBinarySortableSerDe.getSerDe(partialFieldNames, partialFieldTypes, order, nullOrder); } boolean[] columnSortOrderIsDesc = new boolean[columnCount]; Arrays.fill(columnSortOrderIsDesc, false); byte[] columnNullMarker = new byte[columnCount]; Arrays.fill(columnNullMarker, BinarySortableSerDe.ZERO); byte[] columnNotNullMarker = new byte[columnCount]; Arrays.fill(columnNotNullMarker, BinarySortableSerDe.ONE); /* * Acending. */ testBinarySortableFast(source, rows, columnSortOrderIsDesc, columnNullMarker, columnNotNullMarker, serde_ascending, rowStructObjectInspector, serde_ascending_fewer, writeRowStructObjectInspector, /* ascending */ true, typeInfos, /* useIncludeColumns */ false, /* doWriteFewerColumns */ false, r); testBinarySortableFast(source, rows, columnSortOrderIsDesc, columnNullMarker, columnNotNullMarker, serde_ascending, rowStructObjectInspector, serde_ascending_fewer, writeRowStructObjectInspector, /* ascending */ true, typeInfos, /* useIncludeColumns */ true, /* doWriteFewerColumns */ false, r); if (doWriteFewerColumns) { testBinarySortableFast(source, rows, columnSortOrderIsDesc, columnNullMarker, columnNotNullMarker, serde_ascending, rowStructObjectInspector, serde_ascending_fewer, writeRowStructObjectInspector, /* ascending */ true, typeInfos, /* useIncludeColumns */ false, /* doWriteFewerColumns */ true, r); testBinarySortableFast(source, rows, columnSortOrderIsDesc, columnNullMarker, columnNotNullMarker, serde_ascending, rowStructObjectInspector, serde_ascending_fewer, writeRowStructObjectInspector, /* ascending */ true, typeInfos, /* useIncludeColumns */ true, /* doWriteFewerColumns */ true, r); } /* * Descending. */ Arrays.fill(columnSortOrderIsDesc, true); testBinarySortableFast(source, rows, columnSortOrderIsDesc, columnNullMarker, columnNotNullMarker, serde_descending, rowStructObjectInspector, serde_ascending_fewer, writeRowStructObjectInspector, /* ascending */ false, typeInfos, /* useIncludeColumns */ false, /* doWriteFewerColumns */ false, r); testBinarySortableFast(source, rows, columnSortOrderIsDesc, columnNullMarker, columnNotNullMarker, serde_descending, rowStructObjectInspector, serde_ascending_fewer, writeRowStructObjectInspector, /* ascending */ false, typeInfos, /* useIncludeColumns */ true, /* doWriteFewerColumns */ false, r); if (doWriteFewerColumns) { testBinarySortableFast(source, rows, columnSortOrderIsDesc, columnNullMarker, columnNotNullMarker, serde_descending, rowStructObjectInspector, serde_descending_fewer, writeRowStructObjectInspector, /* ascending */ false, typeInfos, /* useIncludeColumns */ false, /* doWriteFewerColumns */ true, r); testBinarySortableFast(source, rows, columnSortOrderIsDesc, columnNullMarker, columnNotNullMarker, serde_descending, rowStructObjectInspector, serde_descending_fewer, writeRowStructObjectInspector, /* ascending */ false, typeInfos, /* useIncludeColumns */ true, /* doWriteFewerColumns */ true, r); } }
From source file:org.apache.hadoop.hive.serde2.binarysortable.TestBinarySortableSerDe.java
public void testBinarySortableSerDe() throws Throwable { try {// w w w.ja va 2 s. co m System.out.println("Beginning Test testBinarySortableSerDe:"); int num = 1000; Random r = new Random(1234); MyTestClass rows[] = new MyTestClass[num]; int i; // First try non-random values for (i = 0; i < MyTestClass.nrDecimal.length; i++) { MyTestClass t = new MyTestClass(); t.nonRandomFill(i); rows[i] = t; } for (; i < num; i++) { MyTestClass t = new MyTestClass(); ExtraTypeInfo extraTypeInfo = new ExtraTypeInfo(); t.randomFill(r, extraTypeInfo); rows[i] = t; } StructObjectInspector rowOI = (StructObjectInspector) ObjectInspectorFactory .getReflectionObjectInspector(MyTestClass.class, ObjectInspectorOptions.JAVA); sort(rows, rowOI); String fieldNames = ObjectInspectorUtils.getFieldNames(rowOI); String fieldTypes = ObjectInspectorUtils.getFieldTypes(rowOI); String order; order = StringUtils.leftPad("", MyTestClass.fieldCount, '+'); String nullOrder; nullOrder = StringUtils.leftPad("", MyTestClass.fieldCount, 'a'); testBinarySortableSerDe(rows, rowOI, getSerDe(fieldNames, fieldTypes, order, nullOrder), true); order = StringUtils.leftPad("", MyTestClass.fieldCount, '-'); nullOrder = StringUtils.leftPad("", MyTestClass.fieldCount, 'z'); testBinarySortableSerDe(rows, rowOI, getSerDe(fieldNames, fieldTypes, order, nullOrder), false); System.out.println("Test testTBinarySortableProtocol passed!"); } catch (Throwable e) { e.printStackTrace(); throw e; } }
From source file:org.apache.hadoop.hive.serde2.teradata.TeradataBinaryDataInputStream.java
/** * Read DATE.// ww w .jav a 2 s. c o m * The representation of date in Teradata binary format is: * The Date D is a int with 4 bytes using little endian, * The representation is (D+19000000).ToString -> YYYYMMDD, * eg: Date 07 b2 01 00 -> 111111 in little endian -> 19111111 - > 1911.11.11. * the null date will use 0 to pad. * * @return the date * @throws IOException the io exception * @throws ParseException the parse exception */ public Date readDate() throws IOException, ParseException { int di = readInt(); if (di == 0) { return null; } String dateString = String.valueOf(di + 19000000); if (dateString.length() < DATE_STRING_LENGTH) { dateString = StringUtils.leftPad(dateString, DATE_STRING_LENGTH, '0'); } Date date = new Date(); date.setYear(Integer.parseInt(dateString.substring(0, 4))); date.setMonth(Integer.parseInt(dateString.substring(4, 6))); date.setDayOfMonth(Integer.parseInt(dateString.substring(6, 8))); return date; }
From source file:org.apache.metron.pcap.PcapUtils.java
/** * Convert to hex./*from w ww .ja va 2s . c o m*/ * * @param number * the number * @param length * the length * @return the string */ public static String convertToHex(int number, int length) { return StringUtils.leftPad(Integer.toHexString(number), length, '0'); }
From source file:org.apache.oodt.cas.filemgr.structs.type.examples.MajorMinorVersionTypeHandler.java
@Override protected String getCatalogValue(String origValue) { String[] origValueSplit = origValue.split("\\."); String majorVersion = origValueSplit[0]; String minorVersion = origValueSplit[1]; return StringUtils.leftPad(majorVersion, 2, "0") + "." + StringUtils.rightPad(minorVersion, 2, "0"); }
From source file:org.apache.oodt.cas.metadata.util.PathUtils.java
public static String doDynamicDateReplacement(String string, Metadata metadata) throws CasMetadataException, CommonsException { Pattern datePattern = Pattern.compile( "\\[\\s*DATE\\s*(?:[+-]{1}[^\\.]{1,}?){0,1}\\.\\s*(?:(?:DAY)|(?:MONTH)|(?:YEAR)|(?:UTC)|(?:TAI)){1}\\s*\\]"); Matcher dateMatcher = datePattern.matcher(string); while (dateMatcher.find()) { String dateString = string.substring(dateMatcher.start(), dateMatcher.end()); GregorianCalendar gc = new GregorianCalendar(); // roll the date if roll days was specfied int plusMinusIndex; if ((plusMinusIndex = dateString.indexOf('-')) != -1 || (plusMinusIndex = dateString.indexOf('+')) != -1) { int dotIndex; if ((dotIndex = dateString.indexOf('.', plusMinusIndex)) != -1) { int rollDays = Integer.parseInt( PathUtils.replaceEnvVariables(dateString.substring(plusMinusIndex, dotIndex), metadata) .replaceAll("[\\+\\s]", "")); gc.add(GregorianCalendar.DAY_OF_YEAR, rollDays); } else { throw new CasMetadataException( "Malformed dynamic date replacement specified (no dot separator) - '" + dateString + "'"); }//from w w w.j a v a2 s . c om } // determine type and make the appropriate replacement String[] splitDate = dateString.split("\\."); if (splitDate.length < 2) { throw new CasMetadataException("No date type specified - '" + dateString + "'"); } String dateType = splitDate[1].replaceAll("[\\[\\]\\s]", ""); String replacement; if (dateType.equals("DAY")) { replacement = StringUtils.leftPad(gc.get(GregorianCalendar.DAY_OF_MONTH) + "", 2, "0"); } else if (dateType.equals("MONTH")) { replacement = StringUtils.leftPad((gc.get(GregorianCalendar.MONTH) + 1) + "", 2, "0"); } else if (dateType.equals("YEAR")) { replacement = gc.get(GregorianCalendar.YEAR) + ""; } else if (dateType.equals("UTC")) { replacement = DateUtils.toString(DateUtils.toUtc(gc)); } else if (dateType.equals("TAI")) { replacement = DateUtils.toString(DateUtils.toTai(gc)); } else { throw new CasMetadataException("Invalid date type specified '" + dateString + "'"); } string = StringUtils.replace(string, dateString, replacement); dateMatcher = datePattern.matcher(string); } return string; }