public EntityStore(EntityDefinition<E> entityDefinition, Map<RelationDefinition, RelationStore> relationStores) {
m_entityDefinition = entityDefinition;
m_entityClass = entityDefinition.getEntityClass();
m_entityName = entityDefinition.getEntityName();
IdDefinition idDefinition = entityDefinition.getIdDefinition();
m_idPropertyName = idDefinition != null ? idDefinition.getIdName() : null;
m_attributes = ImmutableSet
.copyOf(entityDefinition.getAttributes().values().stream().map(AttributeDefinition::getAttributeName).collect(Collectors.toList()));
ImmutableMap.Builder<String, Map<Object, Long>> uniquesIndex = ImmutableMap.builder();
entityDefinition.getUniqueConstraints().forEach(uniqueAttribute -> uniquesIndex.put(uniqueAttribute, new HashMap<>()));
m_uniquesIndex = uniquesIndex.build();
ImmutableSet.Builder<String> nonNullAttributes = ImmutableSet.builder();
entityDefinition.getAttributes().values().stream() //
.filter(attributeDefinition -> !attributeDefinition.isNullable()) //
.forEach(attributeDefinition -> nonNullAttributes.add(attributeDefinition.getAttributeName()));
m_nonNullAttributes = nonNullAttributes.build();
ImmutableMap.Builder<String, RelationStore> relationStoresBuilder = ImmutableMap.builder();
entityDefinition.getRelations().values().forEach(relationDefinition -> {
RelationStore relationStore = relationStores.get(relationDefinition);
relationStoresBuilder.put(relationDefinition.getRelationName(), relationStore);
});
m_relationStores = relationStoresBuilder.build();
}
EntityStore.java 文件源码
java
阅读 51
收藏 0
点赞 0
评论 0
项目:iron
作者:
评论列表
文章目录