return new LuceneLikePredicate( queryBuilder, Strings.join( propertyPath, "." ), patternValue );
}
@Override
public IsNullPredicate<Query> getIsNullPredicate(Class<?> entityType, List<String> propertyPath) {
TypeMetadata typeMetadata = propertyHelper.getLeafTypeMetadata( entityType, propertyPath.toArray( new String[propertyPath.size()] ) );
String nullToken;
if ( propertyHelper.isEmbedded( entityType, propertyPath ) ) {
nullToken = ( (EmbeddedTypeMetadata) typeMetadata ).getEmbeddedNullToken();
}
else {
PropertyMetadata propertyMetadata = typeMetadata.getPropertyMetadataForProperty( propertyPath.get( propertyPath.size() - 1 ) );
nullToken = propertyMetadata.getFieldMetadata().iterator().next().indexNullAs();
}
return new LuceneIsNullPredicate( queryBuilder, Strings.join( propertyPath, "." ), nullToken );
}