blob: 9aa377800513301cdc4cb412e6735717a5725c3d [file] [log] [blame]
/*
* Copyright (c) 1998, 2020 Oracle and/or its affiliates. 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:
// Oracle - initial API and implementation from Oracle TopLink
package org.eclipse.persistence.testing.models.aggregate;
import java.io.*;
import org.eclipse.persistence.tools.schemaframework.TableDefinition;
public class Employee implements Serializable {
public String firstName;
public String lastName;
// changed attribute name from "addressDescription" to "address" to reproduce bug 3566341,
// which requires the same name for attribute mapped as an aggregate and an attribute
// on the aggregate mapped 1 to 1.
public AddressDescription address;
public ProjectDescription projectDescription;
public static Employee example1() {
Employee example = new Employee();
example.setFirstName("Robert");
example.setLastName("Martin");
example.setProjectDescription(ProjectDescription.example1(example));
example.setAddressDescription(AddressDescription.example4());
return example;
}
public static Employee example2() {
Employee example = new Employee();
example.setFirstName("Boby");
example.setLastName("Simpson");
example.setProjectDescription(ProjectDescription.example2(example));
example.setAddressDescription(AddressDescription.example5());
return example;
}
public static Employee example3() {
Employee example = new Employee();
example.setFirstName("Anthony");
example.setLastName("Slater");
example.setProjectDescription(ProjectDescription.example3(example));
example.setAddressDescription(AddressDescription.example6());
return example;
}
public AddressDescription getAddressDescription() {
return address;
}
public String getFirstName() {
return firstName;
}
public String getLastName() {
return lastName;
}
public ProjectDescription getProjectDescription() {
return projectDescription;
}
public void setAddressDescription(AddressDescription aDescription) {
address = aDescription;
}
public void setFirstName(String aName) {
firstName = aName;
}
public void setLastName(String aName) {
lastName = aName;
}
public void setProjectDescription(ProjectDescription aDescription) {
projectDescription = aDescription;
}
/**
* Return a platform independant definition of the database table.
*/
public static TableDefinition tableDefinition() {
TableDefinition definition = new TableDefinition();
definition.setName("AGG_EMP");
definition.addIdentityField("EM_ID", java.math.BigDecimal.class, 15);
definition.addField("EM_FNAME", String.class, 20);
definition.addField("EM_LNAME", String.class, 20);
definition.addField("EM_ADD", java.math.BigDecimal.class, 15);
definition.addField("EM_SDATE", java.sql.Date.class);
definition.addField("EM_EDATE", java.sql.Date.class);
definition.addField("EM_PDESC", String.class, 100);
definition.addField("COMP_ID", java.math.BigDecimal.class, 15);
definition.addField("EM_ESDATE", java.sql.Date.class);
definition.addField("EM_EEDATE", java.sql.Date.class);
return definition;
}
}