List of usage examples for org.springframework.data.mapping Association getInverse
public P getInverse()
From source file:org.springframework.data.neo4j.fieldaccess.DelegatingFieldAccessorFactory.java
@SuppressWarnings("unchecked") public <T> FieldAccessorFactoryProviders<T> accessorFactoriesFor(final Neo4jPersistentEntity<?> type) { synchronized (this) { final TypeInformation<?> typeInformation = type.getTypeInformation(); final FieldAccessorFactoryProviders<T> fieldAccessorFactoryProviders = accessorFactoryProviderCache .get(typeInformation);//from w w w . j a va 2 s. c o m if (fieldAccessorFactoryProviders != null) return fieldAccessorFactoryProviders; final FieldAccessorFactoryProviders<T> newFieldAccessorFactories = new FieldAccessorFactoryProviders<T>( typeInformation, template); type.doWithProperties(new PropertyHandler<Neo4jPersistentProperty>() { @Override public void doWithPersistentProperty(Neo4jPersistentProperty property) { final FieldAccessorFactory factory = factoryForField(property); final List<FieldAccessorListenerFactory> listenerFactories = getFieldAccessListenerFactories( property); newFieldAccessorFactories.add(property, factory, listenerFactories); } }); type.doWithAssociations(new AssociationHandler<Neo4jPersistentProperty>() { @Override public void doWithAssociation(Association<Neo4jPersistentProperty> association) { final Neo4jPersistentProperty property = association.getInverse(); final FieldAccessorFactory factory = factoryForField(property); final List<FieldAccessorListenerFactory> listenerFactories = getFieldAccessListenerFactories( property); newFieldAccessorFactories.add(property, factory, listenerFactories); } }); accessorFactoryProviderCache.put(typeInformation, newFieldAccessorFactories); return newFieldAccessorFactories; } }