blob: 6360b10f7bf894132769b1fed26312008e5e3ca4 [file] [log] [blame]
/*
* Copyright (c) 2020 Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2020 IBM Corporation. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0,
* or the Eclipse Distribution License v. 1.0 which is available at
* http://www.eclipse.org/org/documents/edl-v10.php.
*
* SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
*/
// Contributors:
// 01/21/2020: Will Dazey
// - #559346: ClassCastException: DataReadQuery incompatible with ObjectLevelReadQuery
package org.eclipse.persistence.jpa.test.criteria.model;
import java.util.HashMap;
import java.util.Map;
import jakarta.persistence.CollectionTable;
import jakarta.persistence.Column;
import jakarta.persistence.ElementCollection;
import jakarta.persistence.Entity;
import jakarta.persistence.FetchType;
import jakarta.persistence.Id;
import jakarta.persistence.IdClass;
import jakarta.persistence.JoinColumn;
import jakarta.persistence.MapKeyColumn;
@Entity
@IdClass(value = CriteriaCarId.class)
public class CriteriaCar {
@Id
@Column(name = "CAR_ID")
private String id;
@Id
@Column(name = "CAR_VER")
private int version;
@ElementCollection(fetch = FetchType.EAGER)
@MapKeyColumn(name = "component")
@Column(name = "origin", updatable = true, insertable = true)
@CollectionTable(name = "criteria_car_origin", joinColumns = {
@JoinColumn(name = "CAR_ID", referencedColumnName = "CAR_ID"),
@JoinColumn(name = "CAR_VER", referencedColumnName = "CAR_VER")
})
private Map<String, String> origin = new HashMap<String, String>();
public CriteriaCar() { }
public CriteriaCar(String id, int version, Map<String, String> origin) {
this.id = id;
this.version = version;
this.origin = origin;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public int getVersion() {
return version;
}
public void setVersion(int version) {
this.version = version;
}
public Map<String, String> getOrigin() {
return origin;
}
public void setOrigin(Map<String, String> origin) {
this.origin = origin;
}
}