@Override
public Iterable<AttributeSource> attributeSources() {
List<AttributeSource> attributeList = new ArrayList<AttributeSource>();
for ( BasicAttribute attribute : entityClass.getSimpleAttributes() ) {
attributeList.add( new SingularAttributeSourceImpl( attribute ) );
}
for ( EmbeddableClass component : entityClass.getEmbeddedClasses().values() ) {
attributeList.add( new ComponentAttributeSourceImpl( component, "", entityClass.getAttributeOverrideMap() ) );
}
for ( AssociationAttribute associationAttribute : entityClass.getAssociationAttributes() ) {