Example usage for org.apache.commons.lang3 StringUtils abbreviate

List of usage examples for org.apache.commons.lang3 StringUtils abbreviate

Introduction

In this page you can find the example usage for org.apache.commons.lang3 StringUtils abbreviate.

Prototype

public static String abbreviate(final String str, final int maxWidth) 

Source Link

Document

Abbreviates a String using ellipses.

Usage

From source file:org.polymap.p4.style.FeatureStyleDescriptionProvider.java

@Override
public void update(ViewerCell cell) {
    Style elm = (Style) cell.getElement();

    // default//from   ww  w .j  ava  2 s. co m
    String description = ((Style) elm).description.get();
    description = StringUtils.abbreviate(description, 55);
    description = StringUtils.replaceChars(description, '\n', ' ');
    description = sanitize(description);
    //        description = tk.markdown( description, cell.getItem() );
    cell.setText(description != null ? description : "[No description yet]");

    //        // Style images
    //        if (elm instanceof StyleGroup) {
    //            cell.setText( description != null ? description : "[No Description yet]" );
    //        }
    //        else if (elm instanceof PolygonStyle) {
    //            cell.setText( description != null ? description : "Polygon" );
    //        }
    //        else if (elm instanceof PointStyle) {
    //            cell.setText( description != null ? description : "Point/Mark" );
    //        }
    ////        else if (cell.getElement() instanceof LineStyle) {
    ////            cell.setImage( P4Plugin.images().svgImage( "vector-line.svg", P4Plugin.TOOLBAR_ICON_CONFIG ) );
    ////        }
}

From source file:org.polymap.rhei.batik.toolkit.BatikDialogStatusAdapter.java

@Override
public void handle(IStatus status, Style... styles) {
    UIThreadExecutor.asyncFast(() -> {
        SimpleDialog dialog = new SimpleDialog();
        // title/*from  w ww. j  av a2s  .  c  o  m*/
        switch (status.getSeverity()) {
        case IStatus.WARNING:
            dialog.title.put("Warning");
            break;
        case IStatus.ERROR:
            dialog.title.put("Application Error");
            break;
        case IStatus.INFO:
            dialog.title.put("Information");
            break;
        }
        // contents
        dialog.setContents(parent -> {
            parent.setLayout(FormLayoutFactory.defaults().spacing(0).create());
            Label msg = on(tk.createFlowText(parent, status.getMessage())).fill().noBottom().width(350)
                    .control();

            if (status.getException() != null) {
                Throwable exc = status.getException();
                Throwable root = Throwables.getRootCause(exc);
                String reason = StringUtils.abbreviate(root.getMessage(), 40);
                on(tk.createFlowText(parent, "**Reason**: " + reason)).fill().top(msg);
            }
        });
        dialog.addOkAction(() -> dialog.close());
        dialog.open();
    });
}

From source file:org.polymap.wbv.ui.FlurstueckTableViewer.java

public FlurstueckTableViewer(PanelSite panelSite, Composite parent) {
    super(parent, /* SWT.VIRTUAL | SWT.V_SCROLL | SWT.FULL_SELECTION |*/ SWT.BORDER);
    this.panelSite = panelSite;
    IAppContext context = BatikApplication.instance().getContext();
    context.propagate(this);

    suppressSelection();/*from w ww .  j a v a 2s.  c o m*/

    context.addListener(panelChangeListener, ev -> ev.getType().isOnOf(EventType.LIFECYCLE));

    // listen to column/field changes
    EventManager.instance().subscribe(this,
            ev -> ev instanceof PropertyChangeEvent && displayed.values().contains(ev.getSource()));

    try {
        // suppress deferred loading to fix "empty table" issue
        // setContent( fs.getFeatures( this.baseFilter ) );
        setContentProvider(new CompositesFeatureContentProvider());

        // Action: delete
        addColumn(new FormFeatureTableColumn(descriptorFor("", String.class)).setWeight(1, 25)
                .setLabelProvider(new ColumnLabelProvider() {
                    @Override
                    public Image getImage(Object elm) {
                        return WbvPlugin.images().svgImage("delete.svg", SvgImageRegistryHelper.NORMAL12);
                    }

                    @Override
                    public String getText(Object elm) {
                        return null;
                    }

                    @Override
                    public String getToolTipText(Object elm) {
                        return "Flurstck lschen";
                    }
                }).setEditing(new ActionCellEditor(elm -> {
                    assert wb.isPresent();
                    Flurstueck fst = FeatureTableElement.entity(elm);
                    fst.geloescht.set(true);
                    refresh();

                    flurstueckDeleted = true;
                    fieldChange(null);

                    // waldbesitzer lschen, wenn (wirklich) kein flurstck mehr da
                    if (wb.get().flurstuecke(null).isEmpty()) {
                        uow.get().removeEntity(wb.get());
                        panelSite.toolkit().createSnackbar(Appearance.FadeIn,
                                "Waldbesitzer wird beim Speichern <b>gelscht</b>!");
                    }
                })));

        // Action: transfer
        addColumn(new FormFeatureTableColumn(descriptorFor("", String.class)).setWeight(1, 30)
                .setLabelProvider(new ColumnLabelProvider() {
                    @Override
                    public Image getImage(Object elm) {
                        return WbvPlugin.images().svgImage("transfer.svg", SvgImageRegistryHelper.NORMAL12);
                    }

                    @Override
                    public String getText(Object elm) {
                        return null;
                    }

                    @Override
                    public String getToolTipText(Object elm) {
                        return "Eigentumsbergang: an einem anderen Waldbesitzer bertragen";
                    }
                }).setEditing(new ActionCellEditor(elm -> {
                    Flurstueck fst = FeatureTableElement.entity(elm);
                    selected.set(fst);

                    BatikApplication.instance().getContext().openPanel(panelSite.path(),
                            EigentumsuebergangPanel.ID);
                })));

        // Gemarkung
        String propName = Flurstueck.TYPE.gemarkung.info().getName();
        addColumn(new FormFeatureTableColumn(descriptorFor(propName, Gemarkung.class)).setWeight(6, 80)
                .setLabelsAndValidation(new DefaultTableValidator<Object, Gemarkung>() {
                    @Override
                    public Object transform2Field(Gemarkung gmk, ValidatorSite site) throws Exception {
                        if (site.isEditing()) {
                            return gmk;
                        } else {
                            //Flurstueck flst = FeatureTableElement.entity( site.element() );
                            String result = gmk != null ? gmk.label() : "-keine Gemarkung-"; //"WVK: " + flst.wvkGemarkung.get() + "/" + flst.wvkGemeinde.get();
                            return StringUtils.abbreviate(result, 30);
                        }
                    }

                    @Override
                    public Gemarkung transform2Model(Object fieldValue, ValidatorSite site) throws Exception {
                        return fieldValue != null ? uow.get().entity((Gemarkung) fieldValue) : null;
                    }
                }).setEditing(new PicklistFormField(Gemarkung.all.get()))
                .setSortable(new Comparator<IFeatureTableElement>() {
                    public int compare(IFeatureTableElement e1, IFeatureTableElement e2) {
                        return label(e1).compareTo(label(e2));
                    }

                    protected String label(IFeatureTableElement elm) {
                        Gemarkung gmk = (Gemarkung) elm.getValue(propName);
                        return gmk != null ? gmk.label() : "";
                    }
                })).sort(SWT.DOWN);

        // Flurstcksnummer
        addColumn(new FormFeatureTableColumn(descriptorFor(Flurstueck.TYPE.zaehlerNenner)).setWeight(3, 50)
                .setHeader("Nr.")
                .setLabelsAndValidation(AND(new NotEmptyValidator().forTable(), new AenderungValidator(),
                        new NummerValidator(), new FlurstueckExistsValidator()))
                .setEditing(new StringFormField()));

        // Flche
        NumberValidator flaecheValidator = new NumberValidator(Double.class, Locale.GERMANY, 10, 4, 1, 4);
        addColumn(new FormFeatureTableColumn(descriptorFor(Flurstueck.TYPE.flaeche)).setWeight(3, 50)
                .setHeader("Flche\n(in ha)")
                .setLabelsAndValidation(AND(flaecheValidator.forTable(), new AenderungValidator()))
                .setEditing(new StringFormField()).setSortable(true));

        // davon Wald
        addColumn(new FormFeatureTableColumn(descriptorFor(Flurstueck.TYPE.flaecheWald)).setWeight(3, 50)
                .setHeader("Wald\n(in ha)")
                .setLabelsAndValidation(
                        AND(new WaldflaecheValidator(flaecheValidator), new AenderungValidator()))
                .setEditing(new StringFormField()).setSortable(true));

        // nderungsdatum
        addColumn(new FormFeatureTableColumn(descriptorFor(Flurstueck.TYPE.aenderung)).setWeight(4, 80)
                .setHeader("nderung").setLabelsAndValidation(new DateValidator().forTable()));

        // Bemerkung
        FormFeatureTableColumn bcolumn = new FormFeatureTableColumn(descriptorFor(Flurstueck.TYPE.bemerkung));
        bcolumn.setWeight(11, 120);
        bcolumn.setLabelsAndValidation(new AenderungValidator());
        bcolumn.setEditing(new CellEditor() {
            private String value;
            private Text txt;

            @Override
            protected Control createControl(Composite _parent) {
                return null;
            }

            @Override
            protected void doSetFocus() {
            }

            @Override
            protected Object doGetValue() {
                return value;
            }

            @Override
            protected void doSetValue(Object newValue) {
                this.value = (String) newValue;
            }

            @Override
            public void activate() {
                Shell appShell = BatikApplication.shellToParentOn();
                new SimpleDialog().centerOn.put(appShell).title.put("Bemerkung").setContents(dialogParent -> {
                    dialogParent.setLayout(FormLayoutFactory.defaults().create());
                    txt = on(new Text(dialogParent, SWT.MULTI | SWT.WRAP | SWT.BORDER)).fill().width(350)
                            .height(150).control();
                    txt.setText(value != null ? value : "");
                    txt.setFocus();
                }).addOkAction("BERNEHMEN", () -> {
                    value = txt.getText();
                    fireApplyEditorValue();
                    EventManager.instance().publish(new PropertyChangeEvent(bcolumn, "bemerkung", value, null));
                    return null;
                }).addCancelAction("ABBRECHEN").open();
            }
        });
        addColumn(bcolumn);

        setInput(wb.get().flurstuecke(revier.get()));

        //            /* Register for property change events */
        //            EventManager.instance().subscribe( this, new EventFilter<PropertyChangeEvent>() {
        //                public boolean apply( PropertyChangeEvent input ) {
        //                    return input.getSource() instanceof Flurstueck;
        //                }
        //            });
    } catch (Exception e) {
        throw new RuntimeException(e);
    }
}

From source file:org.polymap.wbv.ui.WaldbesitzerPanel.java

@Override
public void createContents(Composite parent) {
    while (wb == null) {
        try {/*from  w  ww  . jav  a  2  s  .  c o m*/
            Thread.sleep(100);
        } catch (InterruptedException e) {
        }
    }

    try {
        String title = StringUtils.abbreviate(wb.besitzer().anzeigename(), 20);
        site().title.set(title.length() > 1 ? title : "Neu");
    } catch (Exception e) {
        site().title.set("Kein Besitzer");
    }

    // submit FAB
    submitBtn = tk().createFab(null, BatikPlugin.images().svgImage("check.svg", WHITE24), SWT.TOP | SWT.RIGHT);
    submitBtn.setToolTipText("nderungen in die Datenbank bernehmen");
    submitBtn.setVisible(false);
    submitBtn.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent ev) {
            submit();
        }
    });
    statusAdapter = new MultiStatusManager() {
        private IStatus previousStatus;

        @Override
        protected void doUpdateUI(IStatus highestSeverity) {
            if (!highestSeverity.isOK() && (previousStatus == null || previousStatus.isOK())) {
                log.info("severity: " + highestSeverity);
                tk().createSnackbar(Appearance.FadeIn, highestSeverity.getMessage());
            }
            submitBtn.setVisible(highestSeverity.isOK() && highestSeverity != Status.OK_STATUS);
            submitBtn.setEnabled(highestSeverity.isOK() && highestSeverity != Status.OK_STATUS);
            previousStatus = highestSeverity;
        }
    };

    // Basisdaten
    IPanelSection basis = tk().createPanelSection(parent, "Basisdaten", IPanelSection.EXPANDABLE, SWT.BORDER);
    basis.addConstraint(WbvPlugin.MIN_COLUMN_WIDTH, new PriorityConstraint(100));

    wbFormContainer = new BatikFormContainer(new WaldbesitzerForm());
    wbFormContainer.createContents(basis);
    wbFormContainer.addFieldListener(wbFormListener = new EnableSubmitFormFieldListener(wbFormContainer));

    // Kontakte
    final IPanelSection besitzer = tk().createPanelSection(parent, "Besitzer/Kontakte", SWT.NONE);
    besitzer.addConstraint(WbvPlugin.MIN_COLUMN_WIDTH, new PriorityConstraint(1));
    //new NeighborhoodConstraint( basis.getControl(), Neighborhood.BOTTOM, 1 ) );
    besitzer.getBody().setLayout(ColumnLayoutFactory.defaults().spacing(10).columns(1, 1).create());

    int index = 0;
    for (final Kontakt kontakt : wb.kontakte()) {
        createKontaktSection(besitzer.getBody(), kontakt, index++ > 0);
    }

    // Ereignisse
    final IPanelSection ereignisse = tk().createPanelSection(parent, "Ereignisse", SWT.NONE);
    ereignisse.addConstraint(WbvPlugin.MIN_COLUMN_WIDTH, new PriorityConstraint(-10));
    ereignisse.getBody().setLayout(FormLayoutFactory.defaults().spacing(3).create());

    final Composite liste = tk().createComposite(ereignisse.getBody());
    liste.setLayoutData(FormDataFactory.filled().right(100, -30).clearBottom().create());
    liste.setLayout(ColumnLayoutFactory.defaults().spacing(0).columns(1, 1).create());

    // addBtn
    Button addBtn = tk().createButton(ereignisse.getBody(), "+", SWT.PUSH);
    addBtn.setToolTipText("Ein Ereignis hinzufgen");
    addBtn.setLayoutData(FormDataFactory.defaults().left(100, -30).right(100).top(0).create());
    addBtn.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent ev) {
            Ereignis neu = wb.ereignisse.createElement(new ValueInitializer<Ereignis>() {
                @Override
                public Ereignis initialize(Ereignis proto) throws Exception {
                    //proto.titel.set( "Neu" );
                    proto.angelegt.set(new Date());
                    proto.angelegtVon.set(SecurityContext.instance().getUser().getName());
                    proto.geaendert.set(new Date());
                    proto.geaendertVon.set(SecurityContext.instance().getUser().getName());
                    return proto;
                }
            });
            Control child = liste.getChildren()[0];
            if (child instanceof Label) {
                child.dispose();
            }
            Section newSection = createEreignisSection(liste, neu);
            newSection.setExpanded(true);
            getSite().layout(true);
            liste.layout(new Control[] { newSection }, SWT.ALL | SWT.CHANGED);

            statusAdapter.updateStatusOf(liste,
                    new Status(IStatus.OK, WbvPlugin.ID, "Ein Ereignis hinzugefgt"));
        }
    });
    //
    if (wb.ereignisse.isEmpty()) {
        tk().createLabel(liste, "Noch keine Ereignisse.");
    } else {
        List<Ereignis> reversed = new ArrayList(wb.ereignisse);
        Collections.reverse(reversed);
        for (final Ereignis ereignis : reversed) {
            createEreignisSection(liste, ereignis).setExpanded(false);
        }
    }

    // Flurstcke
    final IPanelSection flurstuecke = tk().createPanelSection(parent,
            "Flurstcke" + (revier.isPresent() ? ", Revier " + revier.get().name : ""));
    flurstuecke.addConstraint(WbvPlugin.MIN_COLUMN_WIDTH, new PriorityConstraint(0));
    createFlurstueckSection(flurstuecke.getBody());
}

From source file:org.sakaiproject.sitestats.tool.transformers.LessonsResolvedRefTransformer.java

/**
 * Transforms LessonsData for presentation to the user
 * @param resolved the data//  www .  ja  v  a 2 s.c o  m
 * @param rl resource loader for i18n
 * @return EventDetails for presentation
 */
public static List<EventDetail> transform(LessonsData resolved, ResourceLoader rl) {
    List<EventDetail> eventDetails = new ArrayList<>(3);
    if (resolved instanceof TextItemData) {
        TextItemData text = (TextItemData) resolved;
        addEventDetailsText(eventDetails, rl.getString("de_lessons_item_text"), trunc(text.html));
        addEventDetailsText(eventDetails, rl.getString("de_lessons_page"), getPageDisplay(text.parentPage, rl));
    } else if (resolved instanceof EmbeddedItemData) {
        EmbeddedItemData embed = (EmbeddedItemData) resolved;
        addEventDetailsText(eventDetails, rl.getString("de_lessons_item"), rl.getString("de_lessons_embed"));
        if (!embed.desc.isEmpty()) {
            addEventDetailsText(eventDetails, rl.getString("de_lessons_desc"), trunc(embed.desc));
        }

        addEventDetailsText(eventDetails, rl.getString("de_lessons_page"),
                getPageDisplay(embed.parentPage, rl));
    } else if (resolved instanceof ContentLinkItemData) {
        ContentLinkItemData link = (ContentLinkItemData) resolved;
        addEventDetailsText(eventDetails, rl.getString("de_lessons_link"), link.name);
        addEventDetailsText(eventDetails, rl.getString("de_lessons_page"), getPageDisplay(link.parentPage, rl));
    } else if (resolved instanceof GenericItemData) {
        GenericItemData item = (GenericItemData) resolved;
        addEventDetailsText(eventDetails, rl.getString("de_lessons_item"), item.title);
        addEventDetailsText(eventDetails, rl.getString("de_lessons_page"), getPageDisplay(item.parentPage, rl));
    } else if (resolved instanceof GenericItemData.DeletedItem) {
        // we don't know if this was actually a top-level PAGE item or a regular item
        addEventDetailsText(eventDetails, rl.getString("de_lessons_item"), rl.getString("de_lessons_deleted"));
    } else if (resolved instanceof PageData) {
        PageData page = (PageData) resolved;
        EventDetail pageRef = EventDetail.newText(rl.getString("de_lessons_page"), page.title);
        eventDetails.add(pageRef);
        if (page.pageHierarchy.size() > 1) {
            eventDetails
                    .add(EventDetail.newText(rl.getString("de_lessons_hierarchy"), getPageDisplay(page, rl)));
        }
    } else if (resolved instanceof PageData.DeletedPage) {
        addEventDetailsText(eventDetails, rl.getString("de_lessons_page"),
                rl.getString("de_lessons_deleted_page"));
    } else if (resolved instanceof CommentData) {
        CommentData comment = (CommentData) resolved;

        UserTimeService timeServ = Locator.getFacade().getUserTimeService();
        String commentTrunc = StringUtils.trimToEmpty(StringUtils.abbreviate(comment.comment, TRUNCATE_LENGTH));
        if (commentTrunc.isEmpty()) {
            commentTrunc = rl.getString("de_lessons_comment_deleted");
        }
        String timePosted = timeServ.shortLocalizedTimestamp(comment.timePosted, rl.getLocale());
        String author = formatAuthor(comment.author);
        String message = rl.getFormattedMessage("de_lessons_comment_template", commentTrunc, author,
                timePosted);
        addEventDetailsText(eventDetails, rl.getString("de_lessons_comment"), message);
        addEventDetailsText(eventDetails, rl.getString("de_lessons_page"), getPageDisplay(comment.parent, rl));
    } else if (resolved instanceof CommentsSectionItemData) {
        eventDetails
                .add(EventDetail.newText(rl.getString("de_lessons_item"), rl.getString("de_lessons_comments")));

        CommentsSectionItemData comments = (CommentsSectionItemData) resolved;
        eventDetails
                .add(EventDetail.newText(rl.getString("de_lessons_page"), getPageDisplay(comments.parent, rl)));
    } else if (resolved instanceof CommentsSectionItemData.ForcedComments) {
        eventDetails
                .add(EventDetail.newText(rl.getString("de_lessons_item"), rl.getString("de_lessons_comments")));
        String note = rl.getString("de_lessons_comments_placeholder");
        EventDetail ref = EventDetail.newText(rl.getString("de_lessons_note"), note);
        eventDetails.add(ref);
    }

    return eventDetails;
}

From source file:org.sakaiproject.sitestats.tool.transformers.LessonsResolvedRefTransformer.java

private static String trunc(String text) {
    return StringUtils.abbreviate(text, TRUNCATE_LENGTH);
}

From source file:org.sleuthkit.autopsy.corecomponents.ThumbnailViewNode.java

@Override
public String getDisplayName() {
    return StringUtils.abbreviate(super.getDisplayName(), 18);
}

From source file:org.squashtest.tm.service.internal.batchimport.EntityValidator.java

/**
 * Check path to ensure that all element in path are not too long. Truncate if needed...
 * @param target/* ww w. j  a  va2 s.  co m*/
 * @param logs
 */
private void checkVersionPath(RequirementVersionTarget target, LogTrain logs) {
    if (!target.isWellFormed()) {
        return;
    }

    boolean hasTruncate = false;

    String path = target.getRequirement().getPath();
    String[] names = PathUtils.splitPath(path);
    for (int i = 1; i < names.length; i++) {//begin to 1 as first split is project name
        String name = names[i];
        if (name.length() > LibraryNode.MAX_NAME_SIZE) {
            names[i] = StringUtils.abbreviate(name, LibraryNode.MAX_NAME_SIZE);
            hasTruncate = true;
        }
    }

    if (hasTruncate) {
        logs.addEntry(LogEntry.warning().forTarget(target).withMessage(Messages.ERROR_MAX_SIZE, REQ_PATH.header)
                .build());
        rebuildPathAfterTrucate(target, names);
    }

}

From source file:org.squashtest.tm.service.internal.batchimport.EntityValidator.java

private void checkVersionName(RequirementVersionTarget target, RequirementVersion reqVersion, LogTrain logs) {
    String name = reqVersion.getName();
    if (name != null && name.length() > LibraryNode.MAX_NAME_SIZE) {
        reqVersion.setName(StringUtils.abbreviate(name, LibraryNode.MAX_NAME_SIZE));
        logs.addEntry(LogEntry.warning().forTarget(target)
                .withMessage(Messages.ERROR_MAX_SIZE, REQ_VERSION_NAME.header)
                .withImpact(Messages.IMPACT_MAX_SIZE).build());
    }/*www.  j  ava2s  .  c  o m*/
}

From source file:org.thiesen.jiffs.jobs.language.LanguageIdentifyJob.java

@Override
public void execute() {
    final Iterable<StoryDBO> stories = _storyDAO.findWithoutLanguage();
    GoogleAPI.setHttpReferrer("http://www.thiesen.org/");

    for (final StoryDBO story : stories) {
        try {//w ww  .  ja  v  a2 s.c o  m

            DetectResult result = Detect.execute(StringUtils.abbreviate(story.getFullText(), 1000));

            final Language language = result.getLanguage();

            if (language != null) {
                story.setLanguage(language);
            }

            _storyDAO.update(story);

            Thread.sleep(100); // Google hat ein rate limit, daher muss man etwas langsamer sein

        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }

}