private Map<Integer, List<EnumItem>> loadAttributes(Set<Integer> activityIds) throws SQLException { Map<Integer, List<EnumItem>> attributes = Maps.newHashMap(); String sql = "SELECT DISTINCT A.* from attribute A " + "LEFT JOIN attributegroupinactivity G on (A.attributegroupid=G.attributegroupid) " + "WHERE G.activityid IN " + idList(activityIds) + " " + "AND A.dateDeleted IS NULL " + "ORDER BY A.sortorder"; try(ResultSet rs = executor.query(sql)) { while(rs.next()) { int attributeGroupId = rs.getInt("AttributeGroupId"); List<EnumItem> values = attributes.get(attributeGroupId); if(values == null) { attributes.put(attributeGroupId, values = Lists.newArrayList()); } int attributeId = rs.getInt("attributeId"); String attributeName = rs.getString("name"); values.add(new EnumItem(CuidAdapter.attributeId(attributeId), attributeName)); } } return attributes; }
@Override public EnumItem enumItem(String label) { return new EnumItem(ResourceId.valueOf(makeId(label)), label); }
private List<EnumItem> enumItems(SelectElement element) { List<EnumItem> enumItems = Lists.newArrayList(); for (Item item : element.getItems()) { EnumItem enumItem = new EnumItem(EnumItem.generateId(), item.getLabel()); enumItem.setCode(item.getValue()); enumItems.add(enumItem); } return enumItems; }
@Override public FormField create() { List<EnumItem> values = Lists.newArrayList(); values.add(new EnumItem(EnumItem.generateId(), I18N.MESSAGES.defaultEnumItem(1))); values.add(new EnumItem(EnumItem.generateId(), I18N.MESSAGES.defaultEnumItem(2))); FormField field = new FormField(ResourceId.generateFieldId(EnumType.TYPE_CLASS)); field.setLabel(I18N.CONSTANTS.defaultRadioFieldLabel()); field.setType(new EnumType(Cardinality.SINGLE, values)); return field; } }
@Override public FormField create() { List<EnumItem> values = Lists.newArrayList(); values.add(new EnumItem(EnumItem.generateId(), I18N.MESSAGES.defaultEnumItem(1))); values.add(new EnumItem(EnumItem.generateId(), I18N.MESSAGES.defaultEnumItem(2))); FormField field = new FormField(ResourceId.generateFieldId(EnumType.TYPE_CLASS)); field.setLabel(I18N.CONSTANTS.defaultCheckboxFieldLabel()); field.setType(new EnumType(Cardinality.MULTIPLE, values)); return field; } }
private void addChoice(FormClass formClass, SourceRow row) { String fieldLabel = fieldName.get(row); String fieldKey = formClass.getId() + fieldLabel; EnumBuilder enumField = enumMap.get(fieldKey); if(enumField == null) { FormField newField = addField(formClass, EnumType.TYPE_CLASS, row); enumField = new EnumBuilder(newField, parseCardinality(row)); enumMap.put(fieldKey, enumField); } enumField.items.add(new EnumItem(EnumItem.generateId(), choiceLabel.get(row))); }
private void addOption() { String newLabel = Window.prompt(I18N.CONSTANTS.enterNameForOption(), ""); if (!Strings.isNullOrEmpty(newLabel)) { EnumItem newValue = new EnumItem(EnumItem.generateId(), newLabel); enumType.getValues().add(newValue); boxPanel.add(createControl(newValue)); } }
public IncidentForm(BioDataForm bioDataForm) { this.bioDataForm = bioDataForm; formClass = new FormClass(FORM_ID); formClass.setLabel("Incident Form"); codeField = formClass.addField(PROTECTION_CODE_FIELD_ID) .setCode("PCODE") .setLabel("Protection Code") .setType(new ReferenceType(Cardinality.SINGLE, BioDataForm.FORM_ID)) .setRequired(true) .setVisible(true); urgencyField = formClass.addField(URGENCY) .setLabel("Urgency of the case") .setType(new EnumType(Cardinality.SINGLE, new EnumItem(HIGH, "High"), new EnumItem(MEDIUM, "Medium"), new EnumItem(LOW, "Low"))); referralField = formClass.addField(REFERRAL_FIELD_ID) .setLabel("Referrals") .setType(new SubFormReferenceType(ReferralSubForm.FORM_ID)); generator = new RecordGenerator(formClass) .distribution(PROTECTION_CODE_FIELD_ID, new RefGenerator(bioDataForm)); }
@Override public EnumItem enumItem(String label) { return new EnumItem(CuidAdapter.attributeId(keyGenerator.generateInt()), label); }
@Override public EnumItem enumItem(String label) { return new EnumItem(ResourceId.valueOf(UnitTestingIds.makeId(label)), label); }
@Override public FormField asFormField() { Cardinality cardinality = isMultipleAllowed() ? Cardinality.MULTIPLE : Cardinality.SINGLE; List<EnumItem> values = Lists.newArrayList(); for (AttributeDTO attribute : getAttributes()) { values.add(new EnumItem(CuidAdapter.attributeId(attribute.getId()), attribute.getName())); } return new FormField(CuidAdapter.attributeGroupField(getId())) .setLabel(getName()) .setType(new EnumType(cardinality, values)) .setRequired(isMandatory()); }
private FormField multiEnum(String id, String label, String... values) { List<EnumItem> enumValues = Lists.newArrayList(); for (String value : values) { enumValues.add(new EnumItem(ResourceId.valueOf(value), value)); } EnumType type = new EnumType(Cardinality.MULTIPLE, enumValues); FormField field = new FormField(ResourceId.valueOf(id)); field.setLabel(label); field.setType(type); return field; }
public EmptyForm() { formClass = new FormClass(FORM_ID) .setLabel("Empty Form"); textField = formClass.addField(TEXT_FIELD_ID) .setCode("TEXT") .setLabel("Null Text") .setRequired(false) .setType(TextType.SIMPLE); quantityField = formClass.addField(QUANTITY_FIELD_ID) .setCode("QUANT") .setLabel("Null Quantity") .setRequired(false) .setType(new QuantityType(null)); enumField = formClass.addField(ENUM_FIELD_ID) .setCode("ENUM") .setLabel("Null Enumeration") .setRequired(false) .setType(new EnumType()); popEnumField = formClass.addField(POP_ENUM_FIELD_ID) .setCode("POPENUM") .setLabel("Populated Enumeration") .setRequired(false) .setType(new EnumType(Cardinality.SINGLE, new EnumItem(ENUM_ONE_ID,"One"), new EnumItem(ENUM_TWO_ID,"Two"))); }
public static EnumItem fromJsonObject(JsonValue jsonObject) { EnumItem enumItem = new EnumItem(); enumItem.setId(ResourceId.valueOf(jsonObject.get("id").asString())); if(jsonObject.hasKey("label")) { enumItem.setLabel(jsonObject.get("label").asString()); } if(jsonObject.hasKey("code")) { enumItem.setCode(jsonObject.get("code").asString()); } return enumItem; }
@Test public void testDeleted() { EnumItem female = new EnumItem(ResourceId.valueOf("G1"), "Female"); EnumItem male = new EnumItem(ResourceId.valueOf("G2"), "Male"); FormField stringField = new FormField(ResourceId.valueOf("F")).setType( new EnumType(Cardinality.SINGLE, female, male)); SingleEnumBlock block = (SingleEnumBlock) BlockFactory.get(stringField); Entity blockEntity = new Entity("Block", 1); block.update(blockEntity, 0, new EnumValue(female)); block.update(blockEntity, 1, new EnumValue(male)); FormEntity header = new FormEntity(); header.setNumberedRecordCount(2); header.setDeletedCount(1); Entity tombstone = new Entity("Tombstone", 1); TombstoneBlock.markDeleted(tombstone, 1); TombstoneIndex tombstoneIndex = new TombstoneIndex(header, Arrays.asList(tombstone).iterator()); ColumnView view = block.buildView(header, tombstoneIndex, Arrays.asList(blockEntity).iterator()); assertThat(view.numRows(), equalTo(1)); assertThat(view.getString(0), equalTo("Female")); }
private static FormClass createFormClass() { EnumItem male = new EnumItem(ResourceId.generateId(), "Male"); EnumItem female = new EnumItem(ResourceId.generateId(), "Female"); EnumItem pregnantYes = new EnumItem(ResourceId.generateId(), "Yes"); EnumItem pregnantNo = new EnumItem(ResourceId.generateId(), "No");
private static FormClass createFormClass() { EnumItem male = new EnumItem(ResourceId.generateId(), "Male"); EnumItem female = new EnumItem(ResourceId.generateId(), "Female"); EnumItem pregnantYes = new EnumItem(ResourceId.generateId(), "Yes"); EnumItem pregnantNo = new EnumItem(ResourceId.generateId(), "No");
private static TFormClass createFormClass() { EnumItem male = new EnumItem(ResourceId.generateId(), "Male"); EnumItem female = new EnumItem(ResourceId.generateId(), "Female"); EnumItem pregnantYes = new EnumItem(ResourceId.generateId(), "Yes"); EnumItem pregnantNo = new EnumItem(ResourceId.generateId(), "No");
@Test public void buildCompact() { EnumItem a = new EnumItem(ResourceId.valueOf("a"), "Enumerated Item A"); EnumItem b = new EnumItem(ResourceId.valueOf("b"), "Enumerated Item B"); EnumItem c = new EnumItem(ResourceId.valueOf("c"), "Enumerated Item C"); EnumType enumType = new EnumType(Cardinality.SINGLE, a, b, c); CompactingEnumColumnBuilder builder = new CompactingEnumColumnBuilder(new PendingSlot<ColumnView>(), enumType); for (int i = 0; i < 13; i++) { builder.onNext(new EnumValue(a.getId())); builder.onNext(new EnumValue(b.getId())); builder.onNext(new EnumValue(c.getId())); builder.onNext(null); } ColumnView column8 = builder.build8(); ColumnView column32 = builder.build32(); for (int i = 0; i < column32.numRows(); i++) { if (!Objects.equals(column8.getString(i), column32.getString(i))) { throw new AssertionError("Vectors not equal at index " + i); } } assertThat(builder.build(), instanceOf(DiscreteStringColumnView8.class)); }
@Test public void singleEnum() { EnumItem blue = new EnumItem(ResourceId.valueOf("c342fjsfjkdd"), "Blue"); EnumItem green = new EnumItem(ResourceId.valueOf("df2345253xkd"), "Green"); EnumItem violet = new EnumItem(ResourceId.valueOf("abcdef344444"), "Violet"); EnumType enumType = new EnumType(Cardinality.SINGLE, blue, green, violet); FormField enumField = new FormField(ResourceId.valueOf("FF")).setType(enumType);