FileDocCategorySizeDatePackage
MessageHelper.javaAPI DocHibernate 3.2.57945Tue Mar 07 07:17:16 GMT 2006org.hibernate.pretty

MessageHelper

public final class MessageHelper extends Object
MessageHelper methods for rendering log messages relating to managed entities and collections typically used in log statements and exception messages.
author
Max Andersen, Gavin King

Fields Summary
Constructors Summary
private MessageHelper()

	
Methods Summary
public static java.lang.StringcollectionInfoString(java.lang.String role, java.io.Serializable id)
Generate an info message string relating to a particular managed collection.

param
role The role-name of the collection
param
id The id value of the owner
return
An info string, in the form [Foo.bars#1]

		StringBuffer s = new StringBuffer();
		s.append( '[" );
		if( role == null ) {
			s.append( "<unreferenced>" );
		}
		else {
			s.append( role );
			s.append( '#" );

			if ( id == null ) {
				s.append( "<null>" );
			}
			else {
				s.append( id );
			}
		}
		s.append( ']" );
		return s.toString();
	
public static java.lang.StringcollectionInfoString(org.hibernate.persister.collection.CollectionPersister persister, java.io.Serializable[] ids, org.hibernate.engine.SessionFactoryImplementor factory)
Generate an info message string relating to a series of managed collections.

param
persister The persister for the collections
param
ids The id values of the owners
param
factory The session factory
return
An info string, in the form [Foo.bars#<1,2,3>]

		StringBuffer s = new StringBuffer();
		s.append( '[" );
		if ( persister == null ) {
			s.append( "<unreferenced>" );
		}
		else {
			s.append( persister.getRole() );
			s.append( "#<" );
			for ( int i = 0; i < ids.length; i++ ) {
				// Need to use the identifier type of the collection owner
				// since the incoming is value is actually the owner's id.
				// Using the collection's key type causes problems with
				// property-ref keys...
				s.append( persister.getOwnerEntityPersister().getIdentifierType().toLoggableString( ids[i], factory ) );
				if ( i < ids.length-1 ) {
					s.append( ", " );
				}
			}
			s.append( '>" );
		}
		s.append( ']" );
		return s.toString();
	
public static java.lang.StringcollectionInfoString(org.hibernate.persister.collection.CollectionPersister persister, java.io.Serializable id, org.hibernate.engine.SessionFactoryImplementor factory)
Generate an info message string relating to a particular managed collection.

param
persister The persister for the collection
param
id The id value of the owner
param
factory The session factory
return
An info string, in the form [Foo.bars#1]

		StringBuffer s = new StringBuffer();
		s.append( '[" );
		if ( persister == null ) {
			s.append( "<unreferenced>" );
		}
		else {
			s.append( persister.getRole() );
			s.append( '#" );

			if ( id == null ) {
				s.append( "<null>" );
			}
			else {
				// Need to use the identifier type of the collection owner
				// since the incoming is value is actually the owner's id.
				// Using the collection's key type causes problems with
				// property-ref keys...
				s.append( persister.getOwnerEntityPersister().getIdentifierType().toLoggableString( id, factory ) );
			}
		}
		s.append( ']" );

		return s.toString();
	
public static java.lang.StringinfoString(java.lang.String entityName, java.io.Serializable id)
Generate an info message string relating to a particular entity, based on the given entityName and id.

param
entityName The defined entity name.
param
id The entity id value.
return
An info string, in the form [FooBar#1].

		StringBuffer s = new StringBuffer();
		s.append( '[" );
		if( entityName == null ) {
			s.append( "<null entity name>" );
		}
		else {
			s.append( entityName );
		}
		s.append( '#" );

		if ( id == null ) {
			s.append( "<null>" );
		}
		else {
			s.append( id );
		}
		s.append( ']" );

		return s.toString();
	
public static java.lang.StringinfoString(org.hibernate.persister.entity.EntityPersister persister, java.lang.Object id, org.hibernate.engine.SessionFactoryImplementor factory)
Generate an info message string relating to a particular entity.

param
persister The persister for the entity
param
id The entity id value
param
factory The session factory
return
An info string, in the form [FooBar#1]

		StringBuffer s = new StringBuffer();
		s.append( '[" );
		Type idType;
		if( persister == null ) {
			s.append( "<null EntityPersister>" );
			idType = null;
		}
		else {
			s.append( persister.getEntityName() );
			idType = persister.getIdentifierType();
		}
		s.append( '#" );

		if ( id == null ) {
			s.append( "<null>" );
		}
		else {
			if ( idType == null ) {
				s.append( id );
			}
			else {
				s.append( idType.toLoggableString( id, factory ) );
			}
		}
		s.append( ']" );

		return s.toString();

	
public static java.lang.StringinfoString(org.hibernate.persister.entity.EntityPersister persister, java.lang.Object id, org.hibernate.type.Type identifierType, org.hibernate.engine.SessionFactoryImplementor factory)
Generate an info message string relating to a particular entity,.

param
persister The persister for the entity
param
id The entity id value
param
identifierType The entity identifier type mapping
param
factory The session factory
return
An info string, in the form [FooBar#1]

		StringBuffer s = new StringBuffer();
		s.append( '[" );
		if( persister == null ) {
			s.append( "<null EntityPersister>" );
		}
		else {
			s.append( persister.getEntityName() );
		}
		s.append( '#" );

		if ( id == null ) {
			s.append( "<null>" );
		}
		else {
			s.append( identifierType.toLoggableString( id, factory ) );
		}
		s.append( ']" );

		return s.toString();
	
public static java.lang.StringinfoString(org.hibernate.persister.entity.EntityPersister persister, java.io.Serializable[] ids, org.hibernate.engine.SessionFactoryImplementor factory)
Generate an info message string relating to a series of entities.

param
persister The persister for the entities
param
ids The entity id values
param
factory The session factory
return
An info string, in the form [FooBar#<1,2,3>]

		StringBuffer s = new StringBuffer();
		s.append( '[" );
		if( persister == null ) {
			s.append( "<null EntityPersister>" );
		}
		else {
			s.append( persister.getEntityName() );
			s.append( "#<" );
			for ( int i=0; i<ids.length; i++ ) {
				s.append( persister.getIdentifierType().toLoggableString( ids[i], factory ) );
				if ( i < ids.length-1 ) {
					s.append( ", " );
				}
			}
			s.append( '>" );
		}
		s.append( ']" );

		return s.toString();

	
public static java.lang.StringinfoString(org.hibernate.persister.entity.EntityPersister persister)
Generate an info message string relating to given entity persister.

param
persister The persister.
return
An info string, in the form [FooBar]

		StringBuffer s = new StringBuffer();
		s.append( '[" );
		if ( persister == null ) {
			s.append( "<null EntityPersister>" );
		}
		else {
			s.append( persister.getEntityName() );
		}
		s.append( ']" );
		return s.toString();
	
public static java.lang.StringinfoString(java.lang.String entityName, java.lang.String propertyName, java.lang.Object key)
Generate an info message string relating to a given property value for an entity.

param
entityName The entity name
param
propertyName The name of the property
param
key The property value.
return
An info string, in the form [Foo.bars#1]

		StringBuffer s = new StringBuffer()
				.append( '[" )
				.append( entityName )
				.append( '." )
				.append( propertyName )
				.append( '#" );

		if ( key == null ) {
			s.append( "<null>" );
		}
		else {
			s.append( key );
		}
		s.append( ']" );
		return s.toString();