Example usage for org.apache.commons.lang StringUtils leftPad

List of usage examples for org.apache.commons.lang StringUtils leftPad

Introduction

In this page you can find the example usage for org.apache.commons.lang StringUtils leftPad.

Prototype

public static String leftPad(String str, int size, String padStr) 

Source Link

Document

Left pad a String with a specified String.

Usage

From source file:org.pivot4j.ui.table.TableRenderer.java

/**
 * @param model//www. j a  va2  s.  co  m
 * @param axis
 * @param cache
 * @return
 */
protected TableHeaderNode createAxisTree(PivotModel model, Axis axis, MemberHierarchyCache cache) {
    List<CellSetAxis> axes = model.getCellSet().getAxes();

    if (axes.size() < 2) {
        return null;
    }

    CellSetAxis cellSetAxis = axes.get(axis.axisOrdinal());

    List<Position> positions = cellSetAxis.getPositions();
    if (positions == null || positions.isEmpty()) {
        return null;
    }

    List<Hierarchy> hierarchies = new ArrayList<Hierarchy>();

    List<Aggregator> aggregators = new ArrayList<Aggregator>();
    List<Aggregator> hierarchyAggregators = new ArrayList<Aggregator>();
    List<Aggregator> memberAggregators = new ArrayList<Aggregator>();

    Map<AggregatorPosition, List<Aggregator>> aggregatorMap = new HashMap<AggregatorPosition, List<Aggregator>>();
    aggregatorMap.put(AggregatorPosition.Grand, aggregators);
    aggregatorMap.put(AggregatorPosition.Hierarchy, hierarchyAggregators);
    aggregatorMap.put(AggregatorPosition.Member, memberAggregators);

    Map<Hierarchy, List<Level>> levelsMap = new HashMap<Hierarchy, List<Level>>();

    boolean containsMeasure = false;

    List<Member> firstMembers = positions.get(0).getMembers();

    int index = 0;
    for (Member member : firstMembers) {
        if (member instanceof Measure) {
            containsMeasure = true;
            break;
        }

        index++;
    }

    AggregatorFactory aggregatorFactory = getAggregatorFactory();

    List<String> aggregatorNames = null;
    List<String> hierarchyAggregatorNames = null;
    List<String> memberAggregatorNames = null;

    if (aggregatorFactory != null && (!containsMeasure || index == firstMembers.size() - 1)) {
        aggregatorNames = getAggregators(axis, AggregatorPosition.Grand);
        hierarchyAggregatorNames = getAggregators(axis, AggregatorPosition.Hierarchy);
        memberAggregatorNames = getAggregators(axis, AggregatorPosition.Member);
    }

    if (aggregatorNames == null) {
        aggregatorNames = Collections.emptyList();
    }

    if (hierarchyAggregatorNames == null) {
        hierarchyAggregatorNames = Collections.emptyList();
    }

    if (memberAggregatorNames == null) {
        memberAggregatorNames = Collections.emptyList();
    }

    TableAxisContext nodeContext = new TableAxisContext(model.getCube(), axis, hierarchies, levelsMap,
            aggregatorMap, cache, this);

    TableHeaderNode axisRoot = new TableHeaderNode(nodeContext);

    Set<Measure> grandTotalMeasures = new LinkedHashSet<Measure>();
    Set<Measure> totalMeasures = new LinkedHashSet<Measure>();

    Map<Hierarchy, List<AggregationTarget>> memberParentMap = new HashMap<Hierarchy, List<AggregationTarget>>();

    Position lastPosition = null;

    OlapUtils utils = new OlapUtils(model.getCube());
    utils.setMemberHierarchyCache(cache);

    for (Position position : positions) {
        TableHeaderNode lastChild = null;

        List<Member> members = position.getMembers();

        int memberCount = members.size();

        for (int i = memberCount - 1; i >= 0; i--) {
            Member member = members.get(i);

            if (member instanceof Measure) {
                Measure measure = (Measure) member;

                if (!totalMeasures.contains(measure)) {
                    totalMeasures.add(measure);
                }

                if (!grandTotalMeasures.contains(measure)) {
                    grandTotalMeasures.add(measure);
                }
            } else {
                member = utils.wrapRaggedIfNecessary(member);
            }

            if (hierarchies.size() < memberCount) {
                hierarchies.add(0, member.getHierarchy());
            }

            List<Level> levels = levelsMap.get(member.getHierarchy());

            if (levels == null) {
                levels = new ArrayList<Level>();
                levelsMap.put(member.getHierarchy(), levels);
            }

            if (!levels.contains(member.getLevel())) {
                levels.add(0, member.getLevel());
                Collections.sort(levels, levelComparator);
            }

            TableHeaderNode childNode = new TableHeaderNode(nodeContext);

            childNode.setMember(member);
            childNode.setHierarchy(member.getHierarchy());
            childNode.setPosition(position);

            if (lastChild != null) {
                childNode.addChild(lastChild);
            }

            lastChild = childNode;

            if (!hierarchyAggregatorNames.isEmpty() && lastPosition != null) {
                int start = memberCount - 1;

                if (containsMeasure) {
                    start--;
                }

                if (i < start) {
                    Member lastMember = lastPosition.getMembers().get(i);

                    if (OlapUtils.equals(lastMember.getHierarchy(), member.getHierarchy())
                            && !OlapUtils.equals(lastMember, member)
                            || !OlapUtils.equals(position, lastPosition, i)) {
                        for (String aggregatorName : hierarchyAggregatorNames) {
                            createAggregators(aggregatorName, nodeContext, hierarchyAggregators, axisRoot, null,
                                    lastPosition.getMembers().subList(0, i + 1), totalMeasures);
                        }
                    }
                }
            }

            if (!memberAggregatorNames.isEmpty()) {
                List<AggregationTarget> memberParents = memberParentMap.get(member.getHierarchy());

                if (memberParents == null) {
                    memberParents = new ArrayList<AggregationTarget>();
                    memberParentMap.put(member.getHierarchy(), memberParents);
                }

                AggregationTarget lastSibling = null;

                if (!memberParents.isEmpty()) {
                    lastSibling = memberParents.get(memberParents.size() - 1);
                }

                Member parentMember = utils.getTopLevelRaggedMember(member);

                if (parentMember != null) {
                    if (lastSibling == null
                            || cache.getAncestorMembers(parentMember).contains(lastSibling.getParent())) {
                        memberParents.add(new AggregationTarget(parentMember, member.getLevel()));
                    } else if (!OlapUtils.equals(parentMember, lastSibling.getParent())) {
                        while (!memberParents.isEmpty()) {
                            int lastIndex = memberParents.size() - 1;

                            AggregationTarget lastParent = memberParents.get(lastIndex);

                            if (OlapUtils.equals(lastParent.getParent(), parentMember)) {
                                break;
                            }

                            memberParents.remove(lastIndex);

                            List<Member> path = new ArrayList<Member>(lastPosition.getMembers().subList(0, i));
                            path.add(lastParent.getParent());

                            Level parentLevel = lastParent.getParent().getLevel();
                            if (!levels.contains(parentLevel)) {
                                levels.add(0, parentLevel);
                                Collections.sort(levels, levelComparator);
                            }

                            for (String aggregatorName : memberAggregatorNames) {
                                createAggregators(aggregatorName, nodeContext, memberAggregators, axisRoot,
                                        lastParent.getLevel(), path, totalMeasures);
                            }
                        }
                    }
                }

                if (lastPosition != null && !OlapUtils.equals(position, lastPosition, i)) {
                    Hierarchy hierarchy = nodeContext.getHierarchies().get(i);

                    Level rootLevel = nodeContext.getLevels(hierarchy).get(0);

                    for (AggregationTarget target : memberParents) {
                        Member memberParent = target.getParent();

                        if (memberParent.getLevel().getDepth() < rootLevel.getDepth()) {
                            continue;
                        }

                        List<Member> path = new ArrayList<Member>(lastPosition.getMembers().subList(0, i));
                        path.add(memberParent);

                        for (String aggregatorName : memberAggregatorNames) {
                            createAggregators(aggregatorName, nodeContext, memberAggregators, axisRoot,
                                    target.getLevel(), path, totalMeasures);
                        }
                    }

                    memberParents.clear();
                }
            }
        }

        if (lastChild != null) {
            axisRoot.addChild(lastChild);
        }

        lastPosition = position;
    }

    if (lastPosition != null) {
        int memberCount = lastPosition.getMembers().size();

        int start = memberCount - 1;

        if (containsMeasure) {
            start--;
        }

        for (int i = start; i >= 0; i--) {
            if (!memberAggregatorNames.isEmpty()) {
                Hierarchy hierarchy = nodeContext.getHierarchies().get(i);

                Level rootLevel = nodeContext.getLevels(hierarchy).get(0);

                List<AggregationTarget> memberParents = memberParentMap.get(hierarchy);

                for (AggregationTarget target : memberParents) {
                    Member member = target.getParent();

                    if (member.getLevel().getDepth() < rootLevel.getDepth()) {
                        continue;
                    }

                    List<Member> path = new ArrayList<Member>(lastPosition.getMembers().subList(0, i));
                    path.add(member);

                    for (String aggregatorName : memberAggregatorNames) {
                        createAggregators(aggregatorName, nodeContext, memberAggregators, axisRoot,
                                target.getLevel(), path, totalMeasures);
                    }
                }
            }

            if (!hierarchyAggregatorNames.isEmpty()) {
                for (String aggregatorName : hierarchyAggregatorNames) {
                    createAggregators(aggregatorName, nodeContext, hierarchyAggregators, axisRoot, null,
                            lastPosition.getMembers().subList(0, i), totalMeasures);
                }
            }
        }

        if (!aggregatorNames.isEmpty()) {
            List<Member> members = Collections.emptyList();

            for (String aggregatorName : aggregatorNames) {
                createAggregators(aggregatorName, nodeContext, aggregators, axisRoot, null, members,
                        grandTotalMeasures);
            }
        }
    }

    if (logger.isDebugEnabled()) {
        logger.debug("Original axis tree root for {}", axis);

        axisRoot.walkTree(new TreeNodeCallback<TableAxisContext>() {

            @Override
            public int handleTreeNode(TreeNode<TableAxisContext> node) {
                String label = node.toString();
                logger.trace(StringUtils.leftPad(label, node.getLevel() + label.length(), ' '));

                return CONTINUE;
            }
        });
    }

    return axisRoot;
}

From source file:org.pivot4j.ui.table.TableRenderer.java

/**
 * @param model//from w  ww .ja  v a  2 s .  c  o  m
 * @param axis
 * @param node
 */
protected void configureAxisTree(PivotModel model, Axis axis, TableHeaderNode node) {
    if (getShowDimensionTitle() && axis == Axis.COLUMNS) {
        node.addHierarhcyHeaders();
    }

    if (getShowParentMembers() || axis == Axis.FILTER) {
        node.addParentMemberHeaders();
    }

    if (!getHideSpans() || axis == Axis.FILTER) {
        node.mergeChildren();
    }

    if (getPropertyCollector() != null) {
        node.addMemberProperties();
    }

    if (logger.isDebugEnabled()) {
        logger.debug("Configured axis tree root for {}", axis);

        node.walkTree(new TreeNodeCallback<TableAxisContext>() {

            @Override
            public int handleTreeNode(TreeNode<TableAxisContext> node) {
                String label = node.toString();
                logger.debug(StringUtils.leftPad(label, node.getLevel() + label.length(), ' '));

                return CONTINUE;
            }
        });
    }
}

From source file:org.polymap.core.mapeditor.tooling.edit.VectorLayerStyler.java

/**
 * /*from  w w w .j a v  a 2 s. co m*/
 *
 * @param map
 * @return
 */
protected Style createStyle(Map<String, Object> map) {
    Style result = new Style();
    for (Map.Entry<String, Object> entry : map.entrySet()) {
        // String
        if (entry.getValue() instanceof String) {
            String value = (String) entry.getValue();
            log.trace("    " + entry.getKey() + ": String: " + value);
            result.setAttribute(entry.getKey(), value);
        }
        // Number
        else if (entry.getValue() instanceof Number) {
            String value = entry.getValue().toString();
            log.trace("    " + entry.getKey() + ": Number: " + value);
            result.setAttribute(entry.getKey(), value);
        }
        // Color
        else if (entry.getValue() instanceof RGB) {
            RGB rgb = (RGB) entry.getValue();
            String hex = new StringBuilder(8).append('#')
                    .append(StringUtils.leftPad(Integer.toHexString(rgb.red), 2, '0'))
                    .append(StringUtils.leftPad(Integer.toHexString(rgb.green), 2, '0'))
                    .append(StringUtils.leftPad(Integer.toHexString(rgb.blue), 2, '0')).toString();
            log.trace("    " + entry.getKey() + ": RGB: " + hex);
            result.setAttribute(entry.getKey(), hex);
        } else {
            throw new RuntimeException("Unknown style attribute type: " + entry);
        }
    }
    return result;
}

From source file:org.polymap.kaps.exporter.VertragStaLaAgrarExporter.java

private void export(List<String> lines, VertragComposite vertrag, List<String> errors) {

    VertragsdatenAgrarComposite vdc = VertragsdatenAgrarComposite.Mixin.forVertrag(vertrag);
    if (vdc == null) {
        errors.add(error(vertrag, "Erweiterte Vertragsdaten Agrar nicht gefunden"));
        return;//from  w  ww  . j a va  2s. co m
    }
    FlurstueckComposite flurstueck = null;
    for (FlurstueckComposite fs : FlurstueckComposite.Mixin.forEntity(vertrag)) {
        NutzungComposite nutzung = fs.nutzung().get();
        if (nutzung != null && nutzung.isAgrar().get() != null && nutzung.isAgrar().get() == Boolean.TRUE) {
            flurstueck = fs;
            break;
        }
    }
    if (flurstueck == null) {
        errors.add(error(vertrag, "Flurstck mit Nutzung Agrar nicht gefunden"));
        return;
    }
    GemarkungComposite gemarkung = flurstueck.gemarkung().get();
    if (gemarkung == null) {
        errors.add(error(vertrag, "Gemarkung nicht gefunden"));
        return;
    }
    RichtwertzoneZeitraumComposite richtwertzoneZ = vdc.richtwertZone1().get();
    if (richtwertzoneZ == null) {
        errors.add(error(vertrag, "Richtwertzone nicht gefunden"));
        return;
    }
    RichtwertzoneComposite richtwertzone = richtwertzoneZ.zone().get();
    if (richtwertzone == null) {
        errors.add(error(vertrag, "Richtwertzone nicht gefunden"));
        return;
    }
    GemeindeComposite gemeinde = richtwertzone.gemeinde().get();
    if (gemeinde == null) {
        errors.add(error(vertrag, "Gemeinde nicht gefunden"));
        return;
    }
    VertragsdatenErweitertComposite vertragErweitert = vertrag.erweiterteVertragsdaten().get();
    if (vertragErweitert == null) {
        errors.add(error(vertrag, "Erweiterte Vertragsdaten fehlen"));
        return;
    }

    List<String> contents = new ArrayList<String>();
    // data

    // String kennnummer = 18
    contents.add(String.format("%018d", vertrag.eingangsNr().get()));

    // String land =
    contents.add("Mittelsachsen");
    // String kreisGemeinde =
    contents.add(gemeinde.name().get());
    contents.add(gemarkung.schl().get());

    FlurComposite flur = flurstueck.flur().get();
    // gibts in Sachsen nicht
    contents.add(flur == null ? "000" : flur.schl().get());

    // flurstueck1
    contents.add(String.format("%05d", flurstueck.hauptNummer().get()));
    // flurstueck2
    contents.add(
            flurstueck.unterNummer().get() != null ? StringUtils.leftPad(flurstueck.unterNummer().get(), 5, "0")
                    : "");

    // Datum
    Calendar cal = new GregorianCalendar();
    cal.setTime(vertrag.vertragsDatum().get());

    // String tag =
    contents.add(String.format("%02d", cal.get(Calendar.DAY_OF_MONTH))
            + String.format("%02d", cal.get(Calendar.MONTH) + 1)
            + String.format("%04d", cal.get(Calendar.YEAR)));

    KaeuferKreisComposite verkaeuferKreisComposite = vertrag.verkaeuferKreis().get();
    if (verkaeuferKreisComposite == null) {
        errors.add(error(vertrag, "Verkufer nicht gefunden"));
        return;
    }
    if (verkaeuferKreisComposite.stalaAgrar().get() == null) {
        errors.add(error(vertrag, "Verkufer - StaLa Zuordnung nicht gefunden"));
        return;
    }
    // String veruerer - 2
    contents.add(verkaeuferKreisComposite.stalaAgrar().get().schl().get());

    KaeuferKreisComposite kaeuferKreisComposite = vertrag.kaeuferKreis().get();
    if (kaeuferKreisComposite == null) {
        errors.add(error(vertrag, "Erwerber nicht gefunden"));
        return;
    }
    if (kaeuferKreisComposite.stalaAgrar().get() == null) {
        errors.add(error(vertrag, "Erwerber - StaLa Zuordnung nicht gefunden"));
        return;
    }
    // String Erwerber - 2
    contents.add(kaeuferKreisComposite.stalaAgrar().get().schl().get());

    ArtDesBaugebietsComposite artDesBaugebietsC = flurstueck.artDesBaugebiets().get();
    if (artDesBaugebietsC == null) {
        errors.add(error(vertrag, "Art des Grundstcks nicht gefunden"));
        return;
    }
    // String artDesBaugebiets =
    contents.add(artDesBaugebietsC.schl().get());

    // String flaeche =
    if (vdc.verkaufteFlaeche().get() == null) {
        errors.add(error(vertrag, "Verkaufte Flche gesamt nicht gefunden"));
        return;
    }
    contents.add(String.format("%08d", vdc.verkaufteFlaeche().get().intValue()));

    // String flaeche =
    Double flaecheLandwirtschaftStala = vdc.flaecheLandwirtschaftStala().get();
    if (flaecheLandwirtschaftStala == null) {
        errors.add(error(vertrag, "Flche der landwirtschaftlichen Nutzung nicht gefunden, nutze 0"));
    }
    contents.add(String.format("%08d",
            flaecheLandwirtschaftStala != null ? flaecheLandwirtschaftStala.intValue() : 0));

    if (vertragErweitert.bereinigterVollpreis().get() == null) {
        errors.add(error(vertrag, "Bereinigter Vollpreis nicht gefunden"));
        return;
    }
    // String geldwert =
    contents.add(String.format("%08d", vertragErweitert.bereinigterVollpreis().get().intValue()));

    // String hypotheken =
    Double h = vdc.hypothekStala().get();
    //        if (h == null) {
    //            errors.add( error( vertrag, "Hypotheken nicht gefunden, nutze 0" ) );
    //        }
    contents.add(String.format("%08d", h != null ? h.intValue() : 0));

    // String tauschgrundstck =
    h = vdc.wertTauschStala().get();
    //        if (h == null) {
    //            errors.add( error( vertrag, "Wert des Tauschgrundstckes nicht gefunden, nutze 0" ) );
    //        }
    contents.add(String.format("%08d", h != null ? h.intValue() : 0));

    // String sonstiges =
    h = vdc.wertSonstigesStala().get();
    //        if (h == null) {
    //            errors.add( error( vertrag, "Wert sonstige Leistungen nicht gefunden, nutze 0" ) );
    //        }
    contents.add(String.format("%08d", h != null ? h.intValue() : 0));

    String b = vdc.bemerkungStala().get();
    if (b != null) {
        contents.add(b);
    }

    StringBuilder ret = new StringBuilder();
    for (String s : contents) {
        ret.append(s).append(DELIMITER);
    }
    lines.add(ret.toString());
}

From source file:org.projectforge.book.BookDO.java

/**
 * Converts numbers in signature for alphanumeric sorting in 5-digit form. For example: "WT-145a" -&gt; "WT-00145a".
 *//*  w  w w . ja v a2  s .c om*/
@Transient
public String getSignature4Sort() {
    if (this.signature == null) {
        return null;
    }
    final StringBuffer buf = new StringBuffer();
    StringBuffer no = null;
    for (int i = 0; i < this.signature.length(); i++) {
        final char ch = this.signature.charAt(i);
        if (Character.isDigit(ch) == false) {
            if (no != null && no.length() > 0) {
                buf.append(StringUtils.leftPad(no.toString(), 5, '0'));
                no = null;
            }
            buf.append(ch);
        } else {
            if (no == null) {
                no = new StringBuffer();
            }
            no.append(ch);
        }
    }
    if (no != null && no.length() > 0) {
        buf.append(StringUtils.leftPad(no.toString(), 5, '0'));
    }
    return buf.toString();
}

From source file:org.projectforge.business.fibu.kost.BuchungssatzDO.java

public final String formatSatzNr() {
    if (satznr == null) {
        return "";
    }/*from  www. j a v  a  2 s  . c om*/
    return StringUtils.leftPad(String.valueOf(satznr), 5, '0');
}

From source file:org.projectforge.business.fibu.KostFormatter.java

/**
 * If not given, then ?? will be returned.
 * //from www.  ja  v  a2  s  .c om
 * @param number
 * @return
 * @see StringUtils#leftPad(String, int, char)
 */
public static String format2Digits(final Integer number) {
    if (number == null) {
        return "??";
    }
    return StringUtils.leftPad(number.toString(), 2, '0');
}

From source file:org.projectforge.business.fibu.KostFormatter.java

/**
 * If not given, then ??? will be returned.
 * /*  w  ww .  ja va  2s.  c  o m*/
 * @param number
 * @return
 * @see StringUtils#leftPad(String, int, char)
 */
public static String format3Digits(final Integer number) {
    if (number == null) {
        return "???";
    }
    return StringUtils.leftPad(number.toString(), 3, '0');
}

From source file:org.projectforge.common.NumberHelper.java

/**
 * Splits string representation of the given number into digits. Examples:<br/>
 * NumberHelper.splitToInts(11110511, 1, 3, 2, 2) = {1, 111, 5, 11}<br/>
 * NumberHelper.splitToInts(10000511, 1, 3, 2, 2) = { 1, 0, 5, 11}<br/>
 * NumberHelper.splitToInts(511, 1, 3, 2, 2) = { 0, 0, 5, 11}
 * @param value//from   w ww  .j  av a  2  s  .com
 * @param split
 * @return
 */
public static int[] splitToInts(final Number value, final int... split) {
    int numberOfDigits = 0;
    for (final int n : split) {
        numberOfDigits += n;
    }
    final String str = StringUtils.leftPad(String.valueOf(value.intValue()), numberOfDigits, '0');
    final int[] result = new int[split.length];
    int pos = 0;
    int i = 0;
    for (final int n : split) {
        result[i++] = parseInteger(str.substring(pos, pos + n));
        pos += n;
    }
    return result;
}

From source file:org.projectforge.common.StringHelper.java

/**
 * 0 -&gt; "00", 1 -&gt; "01", ..., 9 -&gt; "09", 10 -&gt; "10", 100 -&gt; "100" etc. Uses StringUtils.leftPad(str, 2, '0');
 * @param value//from w  w  w. j a  v a  2  s .  c  o  m
 * @return
 * @see StringUtils#leftPad(String, int, char)
 */
public static String format2DigitNumber(final int value) {
    return StringUtils.leftPad(String.valueOf(value), 2, '0');
}