@Override public Iterator<Attribute<?>> iterator() { return (Iterator) IntStream.range(0, layout.attributes.size()) .mapToObj(i -> { Object val = layout.getters.get(i).get(AbstractBeanEntity.this); if (val == null) { return null; } else { return Attribute.create((TypedName) layout.attributes.getAttribute(i), val); } }) .filter(Predicates.notNull()) .iterator(); }
@Override public Iterator<Attribute<?>> iterator() { return (Iterator) IntStream.range(0, attributeNames.size()) .mapToObj(i -> { if (i == 0) { return Attribute.create(CommonAttributes.ENTITY_ID, getId()); } Object val = attributeValues[i-1]; if (val == null) { return null; } else { return Attribute.create((TypedName) attributeNames.getAttribute(i), val); } }) .filter(Predicates.notNull()) .iterator(); }
private PackIndex buildIndex(int aidx) { TypedName<?> tn = attributes.getAttribute(aidx); logger.debug("indexing column {} of {}", tn, entityType); PackIndex.Builder builder; if (tn.getRawType().equals(Long.class)) { builder = new PackIndex.LongBuilder(); } else { builder = new PackIndex.GenericBuilder(); } for (int i = 0; i < size; i++) { builder.add(storeBuilders[aidx].get(i), i); } return builder.build(); }
PackedEntityCollectionBuilder(EntityType et, AttributeSet attrs, Class<? extends EntityBuilder> ebc) { Preconditions.checkArgument(attrs.size() > 0, "attribute set is emtpy"); Preconditions.checkArgument(attrs.size() < 32, "cannot have more than 31 attributes"); Preconditions.checkArgument(attrs.getAttribute(0) == CommonAttributes.ENTITY_ID, "attribute set does not contain entity ID attribute"); entityType = et; storeBuilders[0] = idStore; for (int i = 1; i < n; i++) { TypedName<?> attr = attrs.getAttribute(i); AttrStoreBuilder asb; if (attr.getType().equals(TypeToken.of(Long.class))) {
PackedEntityCollection(EntityType et, AttributeSet attrs, AttrStore[] stores, PackIndex[] idxes, Class<? extends EntityBuilder> ebc) { entityType = et; attributes = attrs; attrStores = stores; indexes = idxes; idStore = (LongAttrStore) stores[0]; size = idStore.size(); storeSetters = new AttrSetter[stores.length]; for (int i = 0; i < stores.length; i++) { AttrStore as = stores[i]; TypedName<?> an = attributes.getAttribute(i); if (as instanceof LongAttrStore && an.getRawType().equals(Long.class)) { storeSetters[i] = new LongAttrSetter((TypedName) an, (LongAttrStore) as); } else if (as instanceof DoubleAttrStore && an.getRawType().equals(Double.class)) { storeSetters[i] = new DoubleAttrSetter((TypedName) an, (DoubleAttrStore) as); } else { storeSetters[i] = new ObjectAttrSetter(an, as); } } if (ebc == null || ebc.equals(BasicEntityBuilder.class)) { entityBuilder = IndirectEntity::new; } else { entityBuilder = new Reconstitutor(ebc); } }
@Override public Iterator<Attribute<?>> iterator() { return (Iterator) IntStream.range(0, layout.attributes.size()) .mapToObj(i -> { Object val = layout.getters.get(i).get(AbstractBeanEntity.this); if (val == null) { return null; } else { return Attribute.create((TypedName) layout.attributes.getAttribute(i), val); } }) .filter(Predicates.notNull()) .iterator(); }
@Override public Iterator<Attribute<?>> iterator() { return (Iterator) IntStream.range(0, attributeNames.size()) .mapToObj(i -> { if (i == 0) { return Attribute.create(CommonAttributes.ENTITY_ID, getId()); } Object val = attributeValues[i-1]; if (val == null) { return null; } else { return Attribute.create((TypedName) attributeNames.getAttribute(i), val); } }) .filter(Predicates.notNull()) .iterator(); }
private PackIndex buildIndex(int aidx) { TypedName<?> tn = attributes.getAttribute(aidx); logger.debug("indexing column {} of {}", tn, entityType); PackIndex.Builder builder; if (tn.getRawType().equals(Long.class)) { builder = new PackIndex.LongBuilder(); } else { builder = new PackIndex.GenericBuilder(); } for (int i = 0; i < size; i++) { builder.add(storeBuilders[aidx].get(i), i); } return builder.build(); }
PackedEntityCollection(EntityType et, AttributeSet attrs, AttrStore[] stores, PackIndex[] idxes, Class<? extends EntityBuilder> ebc) { entityType = et; attributes = attrs; attrStores = stores; indexes = idxes; idStore = (LongAttrStore) stores[0]; size = idStore.size(); storeSetters = new AttrSetter[stores.length]; for (int i = 0; i < stores.length; i++) { AttrStore as = stores[i]; TypedName<?> an = attributes.getAttribute(i); if (as instanceof LongAttrStore && an.getRawType().equals(Long.class)) { storeSetters[i] = new LongAttrSetter((TypedName) an, (LongAttrStore) as); } else if (as instanceof DoubleAttrStore && an.getRawType().equals(Double.class)) { storeSetters[i] = new DoubleAttrSetter((TypedName) an, (DoubleAttrStore) as); } else { storeSetters[i] = new ObjectAttrSetter(an, as); } } if (ebc == null || ebc.equals(BasicEntityBuilder.class)) { entityBuilder = IndirectEntity::new; } else { entityBuilder = new Reconstitutor(ebc); } }
PackedEntityCollectionBuilder(EntityType et, AttributeSet attrs, Class<? extends EntityBuilder> ebc) { Preconditions.checkArgument(attrs.size() > 0, "attribute set is emtpy"); Preconditions.checkArgument(attrs.size() < 32, "cannot have more than 31 attributes"); Preconditions.checkArgument(attrs.getAttribute(0) == CommonAttributes.ENTITY_ID, "attribute set does not contain entity ID attribute"); entityType = et; storeBuilders[0] = idStore; for (int i = 1; i < n; i++) { TypedName<?> attr = attrs.getAttribute(i); AttrStoreBuilder asb; if (attr.getType().equals(TypeToken.of(Long.class))) {