All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.hibernate.intercept.cglib.CGLIBHelper Maven / Gradle / Ivy

There is a newer version: 3.6.0.Beta2
Show newest version
package org.hibernate.intercept.cglib;

import org.hibernate.intercept.FieldInterceptor;
import org.hibernate.engine.SessionImplementor;
import net.sf.cglib.transform.impl.InterceptFieldEnabled;

import java.util.Set;

/**
 * @author Steve Ebersole
 */
public class CGLIBHelper {
	private CGLIBHelper() {
	}

	public static FieldInterceptor extractFieldInterceptor(Object entity) {
		return ( FieldInterceptor ) ( ( InterceptFieldEnabled ) entity ).getInterceptFieldCallback();
	}

	public static FieldInterceptor injectFieldInterceptor(
			Object entity,
	        String entityName,
	        Set uninitializedFieldNames,
	        SessionImplementor session) {
		FieldInterceptorImpl fieldInterceptor = new FieldInterceptorImpl(
				session, uninitializedFieldNames, entityName
		);
		( ( InterceptFieldEnabled ) entity ).setInterceptFieldCallback( fieldInterceptor );
		return fieldInterceptor;

	}
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy