/* * Hibernate Search, full-text search for your domain model * * License: GNU Lesser General Public License (LGPL), version 2.1 or later * See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>. */ package org.hibernate.search.bridge.spi; /** * Representation of a missing value. * * <p>When encoding a marker the index field type shall match the other fields', * as field types often need to be consistent across the whole index. * * @author Sanne Grinovero * @hsearch.experimental This contract is currently under active development and may be altered in future releases, * breaking existing users. */ public interface NullMarker { /** * This is mostly a requirement for integration with other old-style * contracts which expect a strongly String based strategy. * * @return a string representation of the null-marker, or null if no marker is used. */ String nullRepresentedAsString(); /** * This returns the actual value to be indexed in place of null. * * <p>The returned value may be: * <ul> * <li>A String, for text fields. * <li>A Number, for numeric fields. * </ul> * * @return a representation of the null-marker ready to be indexed. */ Object nullEncoded(); }