Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Hibernate OGM, Domain model persistence for NoSQL datastores
   *
   * 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.ogm.persister.impl;
  
  import java.util.HashMap;
 import java.util.Map;
 
The discriminator is a column containing a different value for each entity type.

Author(s):
"Davide D'Alto" <davide@hibernate.org>
 
 
 	private static final Log log = LoggerFactory.make();
 
 	private static final Object NULL_DISCRIMINATOR = new MarkerObject"<null discriminator>" );
 	private static final Object NOT_NULL_DISCRIMINATOR = new MarkerObject"<not null discriminator>" );
 
 	private final String alias;
 	private final String columnName;
 	private final Type discriminatorType;
 	private final boolean forced;
 	private final boolean needed;
 	private final String sqlValue;
 	private final Object value;
 	private final Map<ObjectStringsubclassesByValue;
 
 	public ColumnBasedDiscriminator(final PersistentClass persistentClassfinal SessionFactoryImplementor factoryfinal Column column) {
 		 = persistentClass.isForceDiscriminator();
 		 = column.getQuotedNamefactory.getDialect() );
 		 = column.getAliasfactory.getDialect(), persistentClass.getRootTable() );
 		 = persistentClass.getDiscriminator().getType() == null
 				: persistentClass.getDiscriminator().getType();
 		 = valuepersistentClass );
 		 = sqlValuepersistentClassfactory.getDialect(),  );
 		 = true;
 	}
 
 	private static Map<ObjectStringsubclassesByValue(final PersistentClass persistentClassObject valueType type) {
 		Map<ObjectStringsubclassesByDsicriminator = new HashMap<ObjectString>();
 		subclassesByDsicriminator.putvaluepersistentClass.getEntityName() );
 
 		if ( persistentClass.isPolymorphic() ) {
 			@SuppressWarnings("unchecked")
 			Iterator<Subclassiter = persistentClass.getSubclassIterator();
 			while ( iter.hasNext() ) {
 				Subclass sc = iter.next();
 				subclassesByDsicriminator.putvaluesctype ), sc.getEntityName() );
 			}
 		}
 		return subclassesByDsicriminator;
 	}
 
 	public static String sqlValue(PersistentClass persistentClassDialect dialect,
 			Object valueType discriminatorType) {
 		try {
 			return obtainSqlValuepersistentClassdialectvaluediscriminatorType );
 		}
 		catch ( ClassCastException cce ) {
 			throw .illegalDiscrimantorTypediscriminatorType.getName() );
 		}
 		catch ( Exception e ) {
 		}
 	}
 
 	private static String obtainSqlValue(PersistentClass persistentClassDialect dialect,
 			Object valueType discriminatorTypethrows Exception {
 		if ( persistentClass.isDiscriminatorValueNull() ) {
 			return .;
 		}
 
 		if ( persistentClass.isDiscriminatorValueNotNull() ) {
 		}
 
 		@SuppressWarnings("unchecked")
 		DiscriminatorType<Objectdtype = (DiscriminatorType<Object>) discriminatorType;
		return dtype.objectToSQLStringvaluedialect );
	}
	public static Object value(PersistentClass persistentClassType discriminatorType) {
		try {
			return obtainValuepersistentClassdiscriminatorType );
		}
		catch ( ClassCastException cce ) {
			throw .illegalDiscrimantorTypediscriminatorType.getName() );
		}
		catch ( Exception e ) {
		}
	}
	private static Object obtainValue(PersistentClass persistentClassType discriminatorType)
			throws Exception {
		if ( persistentClass.isDiscriminatorValueNull() ) {
		}
		if ( persistentClass.isDiscriminatorValueNotNull() ) {
		}
		@SuppressWarnings("unchecked")
		DiscriminatorType<Objectdtype = (DiscriminatorType<Object>) discriminatorType;
		return dtype.stringToObjectpersistentClass.getDiscriminatorValue() );
	}
	public String provideClassByValue(Object value) {
		return .getvalue );
	}
	public String getSqlValue() {
		return ;
	}
	public String getColumnName() {
		return ;
	}
	public String getAlias() {
		return ;
	}
	public Type getType() {
	}
	public Object getValue() {
		return ;
	}
	public boolean isForced() {
		return ;
	}
	public boolean isNeeded() {
		return ;
	}
	public String toString() {
		StringBuilder builder = new StringBuilder();
		builder.append"ColumnBasedDiscriminator [alias=" );
		builder.append );
		builder.append", columnName=" );
		builder.append );
		builder.append", discriminatorType=" );
		builder.append", forced=" );
		builder.append );
		builder.append", needed=" );
		builder.append );
		builder.append", sqlValue=" );
		builder.append );
		builder.append", value=" );
		builder.append );
		builder.append", subclassByValue=" );
		builder.append"]" );
		return builder.toString();
	}
New to GrepCode? Check out our FAQ X