@Nullable private List<String> columnNames() { if (columnNames != null) return columnNames; @NotNull LinkedHashSet<String> result = new LinkedHashSet<>(); result.add("index"); // if (Marshallable.class.isAssignableFrom(messageClass)) { for (@NotNull final FieldInfo fi : fieldInfos(messageClass)) { result.add(fi.name()); } // } columnNames = new ArrayList<>(result); return columnNames; }
@NotNull @Override public List<Column> columns() { @NotNull List<Column> result = new ArrayList<>(); result.add(new Column("index", true, true, "", String.class, false)); for (@NotNull final FieldInfo fi : fieldInfos(messageClass)) { result.add(new Column(fi.name(), false, false, "", fi.type(), false)); } return result; }
@Nullable private ArrayList<String> columnNames() { if (columnNames != null) return columnNames; @NotNull LinkedHashSet<String> result = new LinkedHashSet<>(); if ((Marshallable.class.isAssignableFrom(keyType()))) { for (@NotNull final FieldInfo fi : Wires.fieldInfos(keyType())) { result.add(fi.name()); } } else result.add("key"); if (Marshallable.class.isAssignableFrom(valueType())) { for (@NotNull final FieldInfo fi : Wires.fieldInfos(valueType())) { result.add(fi.name()); } } else { result.add("value"); } columnNames = new ArrayList<>(result); return columnNames; }
private void addColumns(@NotNull Row row, final Class type, final String defaultColumnName, final Object item) { final List<FieldInfo> fieldInfos = Wires.fieldInfos(type); if (fieldInfos.isEmpty()) { row.set(defaultColumnName, item); } else { @NotNull final Marshallable value = (Marshallable) item; for (@NotNull final FieldInfo info : fieldInfos) { if (!columnNames().contains(info.name())) continue; try { final Object newValue = info.get(value); row.set(info.name(), newValue); } catch (Exception e1) { Jvm.warn().on(VanillaMapView.class, e1); } } } } };
@NotNull @Override public List<Column> columns() { @NotNull List<Column> result = new ArrayList<>(); if ((Marshallable.class.isAssignableFrom(keyType()))) { for (@NotNull final FieldInfo info : Wires.fieldInfos(keyType())) { result.add(new Column(info.name(), true, true, "", info.type(), true)); } } else { result.add(new Column("key", true, true, "", keyType(), true)); } boolean isReadOnly = requestContext.toUri().startsWith("/proc"); if ((Marshallable.class.isAssignableFrom(valueType()))) { //valueType.isAssignableFrom() for (@NotNull final FieldInfo info : Wires.fieldInfos(valueType())) { result.add(new Column(info.name(), isReadOnly, false, "", info.type(), true)); } } else { result.add(new Column("value", isReadOnly, false, "", valueType(), true)); } return result; }