@Override public boolean isIdProperty() { if (super.isIdProperty()) { return true; } return SUPPORTED_ID_PROPERTY_NAMES.contains(getName()); } }
@Override @SuppressWarnings("unchecked") protected <T> E createPersistentEntity(TypeInformation<T> typeInformation) { return (E) new BasicKeyValuePersistentEntity<T, P>(typeInformation, fallbackKeySpaceResolver); }
@Override @SuppressWarnings("unchecked") protected P createPersistentProperty(Property property, E owner, SimpleTypeHolder simpleTypeHolder) { return (P) new KeyValuePersistentProperty(property, owner, simpleTypeHolder); } }
@Nullable private static String detectKeySpace(Class<?> type, @Nullable KeySpaceResolver fallback) { String keySpace = AnnotationBasedKeySpaceResolver.INSTANCE.resolveKeySpace(type); if (StringUtils.hasText(keySpace)) { return keySpace; } return (fallback == null ? DEFAULT_FALLBACK_RESOLVER : fallback).resolveKeySpace(type); }
@Override public <T> T insert(T objectToInsert) { KeyValuePersistentEntity<?, ?> entity = getKeyValuePersistentEntity(objectToInsert); GeneratingIdAccessor generatingIdAccessor = new GeneratingIdAccessor(entity.getPropertyAccessor(objectToInsert), entity.getIdProperty(), identifierGenerator); Object id = generatingIdAccessor.getOrGenerateIdentifier(); return insert(id, objectToInsert); }
@SuppressWarnings("unchecked") private String resolveKeySpace(Class<?> type) { return this.mappingContext.getRequiredPersistentEntity(type).getKeySpace(); }
/** * @param information must not be {@literal null}. * @param keySpaceResolver can be {@literal null}. */ public BasicKeyValuePersistentEntity(TypeInformation<T> information, @Nullable KeySpaceResolver fallbackKeySpaceResolver) { super(information); this.keyspace = detectKeySpace(information.getType(), fallbackKeySpaceResolver); }
@Nullable private static String detectKeySpace(Class<?> type, @Nullable KeySpaceResolver fallback) { String keySpace = AnnotationBasedKeySpaceResolver.INSTANCE.resolveKeySpace(type); if (StringUtils.hasText(keySpace)) { return keySpace; } return (fallback == null ? DEFAULT_FALLBACK_RESOLVER : fallback).resolveKeySpace(type); }
@Override public boolean isIdProperty() { if (super.isIdProperty()) { return true; } return SUPPORTED_ID_PROPERTY_NAMES.contains(getName()); } }
@Override public <T> T insert(T objectToInsert) { KeyValuePersistentEntity<?, ?> entity = getKeyValuePersistentEntity(objectToInsert); GeneratingIdAccessor generatingIdAccessor = new GeneratingIdAccessor(entity.getPropertyAccessor(objectToInsert), entity.getIdProperty(), identifierGenerator); Object id = generatingIdAccessor.getOrGenerateIdentifier(); return insert(id, objectToInsert); }
@Override @SuppressWarnings("unchecked") protected <T> E createPersistentEntity(TypeInformation<T> typeInformation) { return (E) new BasicKeyValuePersistentEntity<T, P>(typeInformation, fallbackKeySpaceResolver); }
@Override @SuppressWarnings("unchecked") protected P createPersistentProperty(Property property, E owner, SimpleTypeHolder simpleTypeHolder) { return (P) new KeyValuePersistentProperty(property, owner, simpleTypeHolder); } }
@SuppressWarnings("unchecked") private String resolveKeySpace(Class<?> type) { return this.mappingContext.getRequiredPersistentEntity(type).getKeySpace(); }
/** * @param information must not be {@literal null}. * @param keySpaceResolver can be {@literal null}. */ public BasicKeyValuePersistentEntity(TypeInformation<T> information, @Nullable KeySpaceResolver fallbackKeySpaceResolver) { super(information); this.keyspace = detectKeySpace(information.getType(), fallbackKeySpaceResolver); }
@Nullable private static String detectKeySpace(Class<?> type, @Nullable KeySpaceResolver fallback) { String keySpace = AnnotationBasedKeySpaceResolver.INSTANCE.resolveKeySpace(type); if (StringUtils.hasText(keySpace)) { return keySpace; } return (fallback == null ? DEFAULT_FALLBACK_RESOLVER : fallback).resolveKeySpace(type); }
@Override public boolean isIdProperty() { if (super.isIdProperty()) { return true; } return SUPPORTED_ID_PROPERTY_NAMES.contains(getName()); } }
@Override @SuppressWarnings("unchecked") protected <T> E createPersistentEntity(TypeInformation<T> typeInformation) { return (E) new BasicKeyValuePersistentEntity<T, P>(typeInformation, fallbackKeySpaceResolver); }
@Override @SuppressWarnings("unchecked") protected P createPersistentProperty(Property property, E owner, SimpleTypeHolder simpleTypeHolder) { return (P) new KeyValuePersistentProperty(property, owner, simpleTypeHolder); } }
@SuppressWarnings("unchecked") private String resolveKeySpace(Class<?> type) { return this.mappingContext.getRequiredPersistentEntity(type).getKeySpace(); }
@Override public boolean isIdProperty() { return super.isIdProperty() || SUPPORTED_ID_PROPERTY_NAMES.contains(getName()); } }