Fix su salvataggio elementi object storage
This commit is contained in:
@@ -1377,7 +1377,13 @@ public abstract class EntityBase implements Serializable, Cloneable, EntityInter
|
||||
UniqueKeyRules.chkConstraint(connection, this);
|
||||
|
||||
List<EntityHierarchy.Field> fields = getEntityHolder()
|
||||
.getEntitySqlFields(this.getClass());
|
||||
.getEntityFields(this.getClass(), field ->
|
||||
field.isObjectStorage() ||
|
||||
field.isSqlField() ||
|
||||
field.isClob() ||
|
||||
field.isBlob() ||
|
||||
field.isIdentity()
|
||||
);
|
||||
|
||||
final List<kotlin.Triple<String, Object, Boolean>> preparedFieldsToQuery = prepareFieldsToQuery(fields);
|
||||
// preparedField: 1 = sql_field_name, 2 = value_to_save, 3 = is_identity
|
||||
@@ -1391,7 +1397,7 @@ public abstract class EntityBase implements Serializable, Cloneable, EntityInter
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
|
||||
if(identityData != null) {
|
||||
if (identityData != null) {
|
||||
containsIdentity = true;
|
||||
identityFieldName = identityData.getFirst();
|
||||
}
|
||||
|
||||
@@ -28,6 +28,7 @@ import java.lang.reflect.ParameterizedType;
|
||||
import java.lang.reflect.Type;
|
||||
import java.sql.Connection;
|
||||
import java.util.*;
|
||||
import java.util.function.Predicate;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static org.reflections.scanners.Scanners.SubTypes;
|
||||
@@ -248,11 +249,12 @@ public class EntityPropertyHolder {
|
||||
}
|
||||
|
||||
|
||||
public List<EntityHierarchy.Field> getEntityFields(Class<? extends EntityBase> clazz) {
|
||||
public List<EntityHierarchy.Field> getEntityFields(Class<? extends EntityBase> clazz, Predicate<EntityHierarchy.Field> filterCondition) {
|
||||
return this.entityHierarchyMap.stream()
|
||||
.filter(x -> x.getClazz().equals(clazz))
|
||||
.map(EntityHierarchy::getFields)
|
||||
.flatMap(Collection::stream)
|
||||
.filter(filterCondition)
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user