/* * 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.metamodel; import java.util.HashMap; import java.util.Map; import javax.persistence.CollectionTable; import javax.persistence.ElementCollection; import javax.persistence.Entity; import javax.persistence.ForeignKey; import javax.persistence.Id; import javax.persistence.Index; import javax.persistence.JoinColumn; import javax.persistence.MapKeyColumn; @Entity public class ProductEntity { @Id private Long pk; @ElementCollection(targetClass = LocalizedValue.class) @CollectionTable( name = ( "product_name_lv" ), joinColumns = { @JoinColumn( name = ( "product_pk" ) ) }, indexes = { @Index( name = ( "idx_product_name_lv" ), columnList = ( "product_pk" ) ) }, foreignKey = @ForeignKey( name = ( "fk_product_name_lv" ) ) ) @MapKeyColumn(name = "locale") private Map<String, ILocalizable> description = new HashMap<>(); public Long getPk() { return pk; } public void setPk(Long pk) { this.pk = pk; } public Map<String, ILocalizable> getDescription() { return description; } public void setDescription(Map<String, ILocalizable> description) { this.description = description; } }