@Override public FieldValue toFieldValue(ResultSet rs, int index) throws SQLException { int id = rs.getInt(index); if (rs.wasNull()) { return null; } else { return new EnumValue(CuidAdapter.attributeId(id)); } }
@Override public FieldValue apply(FieldValue input) { if(input instanceof EnumValue) { EnumValue value = (EnumValue) input; if(value.getResourceIds().contains(itemId)) { return BooleanFieldValue.TRUE; } } return BooleanFieldValue.FALSE; } }
private int indexOf(FieldValue value) { if (value instanceof EnumValue) { EnumValue fieldValue = (EnumValue) value; if (fieldValue.getResourceIds().size() == 1) { Integer index = labelIndexMap.get(fieldValue.getValueId()); if (index != null) { return index; } } } return -1; }
siteFormRecord.set(CONTENU_DI_KIT_FIELD, new EnumValue(CONTENU_DI_KIT_FIELD_ATTR_VALUE)); Assert.assertEquals(fromServer.get(CONTENU_DI_KIT_FIELD), new EnumValue(CONTENU_DI_KIT_FIELD_ATTR_VALUE)); assertThat(fieldValue.getValueId(), equalTo(CONTENU_DI_KIT_FIELD_ATTR_VALUE));
@Override public void init(FieldValue value) { EnumValue enumValue = (EnumValue) value; String label = labels.get(enumValue.getValueId()); comboBox.setText(label); }
@Test public void equality() { // [t0679737062, t2075376824] != [t2075376824, t0679737062] EnumValue a = new EnumValue(ResourceId.valueOf("t0679737062"), ResourceId.valueOf("t2075376824")); EnumValue b = new EnumValue(ResourceId.valueOf("t2075376824"), ResourceId.valueOf("t0679737062")); assertTrue(a.equals(b)); }
@Override public void init(FieldValue value) { EnumValue enumValue = (EnumValue) value; CheckBox checkBox = radios.get(enumValue.getValueId()); checkBox.setValue(true); }
private FieldInput input() { for (Map.Entry<ResourceId, CheckBox> entry : radios.entrySet()) { if(entry.getValue().getValue()) { return new FieldInput(new EnumValue(entry.getKey())); } } return FieldInput.EMPTY; }
public ResourceId getEnumId() { return Iterables.getOnlyElement(((EnumValue) value).getResourceIds()); }
private int indexOf(FieldValue value) { if (value instanceof EnumValue) { EnumValue fieldValue = (EnumValue) value; if (fieldValue.getResourceIds().size() == 1) { Integer index = labelIndexMap.get(fieldValue.getValueId()); if (index != null) { return index; } } } return -1; }
@Override public Collection<?> toParameters(FieldValue value) { EnumValue enumValue = (EnumValue) value; ResourceId enumItemId = enumValue.getValueId(); Preconditions.checkArgument(enumItemId.getDomain() == CuidAdapter.ATTRIBUTE_DOMAIN); return Collections.singleton(CuidAdapter.getLegacyIdFromCuid(enumItemId)); } }
private FieldInput input() { Set<ResourceId> items = new HashSet<>(); for (Map.Entry<ResourceId, CheckBox> entry : checkBoxes.entrySet()) { if(entry.getValue().getValue()) { items.add(entry.getKey()); } } if(items.isEmpty()) { return FieldInput.EMPTY; } else { return new FieldInput(new EnumValue(items)); } }
private String toItemId(FieldValue fieldValue) { if(fieldValue instanceof EnumValue) { EnumValue enumValue = (EnumValue) fieldValue; Set<ResourceId> ids = enumValue.getResourceIds(); Preconditions.checkState(ids.size() == 1, "ids = %s", ids.toString()); return ids.iterator().next().asString(); } return null; }
@Override public Promise<Void> setValue(EnumValue value) { dropBox.setSelectedIndex(-1); if(value.getResourceIds().size() == 1) { List<EnumItem> values = enumType.getValues(); for (int i = 0; i < values.size(); i++) { if (values.get(i).getId().equals(value.getValueId())) { dropBox.setSelectedIndex(i + 1); break; } } } return Promise.done(); }
private void selectEnumItem(EnumValue value) { for (int i = 0; i < enumItems.size(); i++) { if (enumItems.get(i).getId().equals(value.getValueId())) { operandListBox.setSelectedIndex(i); return; } } }
@Override public FieldValue get() { if(random.nextDouble() < probabilityMissing) { return null; } List<ResourceId> ids = new ArrayList<>(); for (int i = 0; i < probabilities.length; i++) { if(random.nextDouble() < probabilities[i]) { ids.add(enumType.getValues().get(i).getId()); } } return new EnumValue(ids); } }
@Override public void init(FieldValue value) { EnumValue enumValue = (EnumValue) value; for (ResourceId itemId : enumValue.getResourceIds()) { CheckBox checkBox = checkBoxes.get(itemId); checkBox.setValue(true); } }
@Override public String asExpression() { if(value instanceof Quantity) { double doubleValue = ((Quantity) this.value).getValue(); if(Math.floor(doubleValue) == doubleValue && !Double.isInfinite(doubleValue)) { return Integer.toString((int)doubleValue); } else { return "" + doubleValue; } } else if(value instanceof BooleanFieldValue) { return ((BooleanFieldValue) value).asBoolean() ? "true" : "false"; } else if(value instanceof EnumValue) { return ((EnumValue) value).getValueId().asString(); } else { // TODO: Escaping return "\"" + value + "\""; } }
@Override public void next() { EnumValue value; int cardinality = bitSet.cardinality(); if(cardinality == 1) { // Single item is set, use our cached FieldValues int index = bitSet.nextSetBit(0); value = singletonValues.get(index); } else if(cardinality == 0) { // No items set, null value value = null; } else { // Multiple items set, construct a new EnumValue Set<ResourceId> set = new HashSet<>(); for (int i = 0; i < itemIds.size(); i++) { if(bitSet.get(i)) { set.add(itemIds.get(i)); } } value = new EnumValue(set); } for (CursorObserver<FieldValue> observer : observers) { observer.onNext(value); } bitSet.clear(); }
private void setClearButtonState(EnumValue enumValue) { clearButton.setVisible(enumValue != null && !enumValue.getResourceIds().isEmpty()); }