/* * Hibernate, Relational Persistence for Idiomatic Java * * 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.test.bytecode.enhancement.lazy.group; import javax.persistence.Basic; import javax.persistence.CascadeType; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.ManyToOne; import org.hibernate.annotations.LazyGroup; import org.hibernate.annotations.LazyToOne; import org.hibernate.annotations.LazyToOneOption; /** * @author Steve Ebersole */ @Entity public class Child { @Id @GeneratedValue(strategy = GenerationType.AUTO) Long id; String name; @Basic( fetch = FetchType.LAZY ) String nickName; @ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY) @LazyToOne(LazyToOneOption.NO_PROXY) Parent parent; @ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY) @LazyToOne(LazyToOneOption.NO_PROXY) @LazyGroup( "SECONDARY" ) Parent alternateParent; public Child() { } public Child(String name, String nickName) { this.name = name; this.nickName = nickName; } public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getNickName() { return nickName; } public void setNickName(String nickName) { this.nickName = nickName; } public Parent getParent() { return parent; } public void setParent(Parent parent) { this.parent = parent; } public Parent getAlternateParent() { return alternateParent; } public void setAlternateParent(Parent alternateParent) { this.alternateParent = alternateParent; } }