DiscreteAttribute extends AbstractIndexableAttribute implements RangeAttribute { @Override public ImmutableList<Object> getValues() { MutableList<Object> objects = Lists.mutable.ofInitialCapacity(values.size()); values.forEach(a -> objects.add(a)); return objects.toImmutable(); } DiscreteAttribute(String key, AttributeLevel level); @Override int registerXAttribute(XAttribute att); @Override ImmutableList<Object> getValues(); @Override int getValueIndex(Object value); @Override Object getValue(int index); @Override int getValueSize(); @Override Object getMin(); @Override Object getMax();  }
@Test public void testGetValues() { DiscreteAttribute att = this.newWithOneValue("concept:name", AttributeLevel.EVENT); Assert.assertEquals((long)100, att.getValue(0)); DiscreteAttribute att2 = this.newWithTwoValues("concept:name", AttributeLevel.EVENT); Assert.assertEquals((long)100, att2.getValue(0)); Assert.assertEquals((long)200, att2.getValue(1)); }