@Override public String name() { return route.name(); }
/** * True, when route's name starts with the given prefix. Useful for dynamic routing. See * {@link Route.Chain#next(String, Request, Response)} * * @param prefix Prefix to check for. * @return True, when route's name starts with the given prefix. */ default boolean apply(final String prefix) { return name().startsWith(prefix); }
/** * Print route information like: method, path, source, etc... Useful for debugging. * * @param indent Indent level * @return Output. */ @Nonnull default String print(final int indent) { StringBuilder buff = new StringBuilder(); String[] header = {"Method", "Path", "Source", "Name", "Pattern", "Consumes", "Produces"}; String[] values = {method(), path(), source().toString(), name(), pattern(), consumes().toString(), produces().toString()}; BiConsumer<Function<Integer, String>, Character> format = (v, s) -> { buff.append(Strings.padEnd("", indent, ' ')) .append("|").append(s); for (int i = 0; i < header.length; i++) { buff .append(Strings.padEnd(v.apply(i), Math.max(header[i].length(), values[i].length()), s)) .append(s).append("|").append(s); } buff.setLength(buff.length() - 1); }; format.accept(i -> header[i], ' '); buff.append("\n"); format.accept(i -> "-", '-'); buff.append("\n"); format.accept(i -> values[i], ' '); return buff.toString(); }
.put("path vars", route.vars()) .put("pattern", route.pattern()) .put("name", route.name()) .put("attributes", route.attributes()).build(); }));
@Override public String name() { return route.name(); }
/** * True, when route's name starts with the given prefix. Useful for dynamic routing. See * {@link Route.Chain#next(String, Request, Response)} * * @param prefix Prefix to check for. * @return True, when route's name starts with the given prefix. */ default boolean apply(final String prefix) { return name().startsWith(prefix); }
/** * Print route information like: method, path, source, etc... Useful for debugging. * * @param indent Indent level * @return Output. */ @Nonnull default String print(final int indent) { StringBuilder buff = new StringBuilder(); String[] header = {"Method", "Path", "Source", "Name", "Pattern", "Consumes", "Produces"}; String[] values = {method(), path(), source().toString(), name(), pattern(), consumes().toString(), produces().toString()}; BiConsumer<Function<Integer, String>, Character> format = (v, s) -> { buff.append(Strings.padEnd("", indent, ' ')) .append("|").append(s); for (int i = 0; i < header.length; i++) { buff .append(Strings.padEnd(v.apply(i), Math.max(header[i].length(), values[i].length()), s)) .append(s).append("|").append(s); } buff.setLength(buff.length() - 1); }; format.accept(i -> header[i], ' '); buff.append("\n"); format.accept(i -> "-", '-'); buff.append("\n"); format.accept(i -> values[i], ' '); return buff.toString(); }
.put("path vars", route.vars()) .put("pattern", route.pattern()) .put("name", route.name()) .put("attributes", route.attributes()).build(); }));