| /* |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You under the Apache License, Version 2.0 |
| * (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| <<<<<<< Updated upstream |
| * |
| * https://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| ======= |
| * |
| * https://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| >>>>>>> Stashed changes |
| * limitations under the License. |
| */ |
| |
| package org.apache.jdo.tck.pc.companyAnnotatedPI; |
| |
| import java.util.Date; |
| import java.util.Set; |
| import javax.jdo.annotations.Column; |
| import javax.jdo.annotations.Element; |
| import javax.jdo.annotations.IdentityType; |
| import javax.jdo.annotations.Inheritance; |
| import javax.jdo.annotations.InheritanceStrategy; |
| import javax.jdo.annotations.PersistenceCapable; |
| import javax.jdo.annotations.PersistenceModifier; |
| import javax.jdo.annotations.Persistent; |
| import org.apache.jdo.tck.pc.company.IDentalInsurance; |
| import org.apache.jdo.tck.pc.company.IDepartment; |
| import org.apache.jdo.tck.pc.company.IEmployee; |
| import org.apache.jdo.tck.pc.company.IMedicalInsurance; |
| import org.apache.jdo.tck.pc.company.IPerson; |
| import org.apache.jdo.tck.pc.company.IProject; |
| |
| /** |
| * This interface represents the persistent state of Employee. Javadoc was deliberately omitted |
| * because it would distract from the purpose of the interface. |
| */ |
| @PersistenceCapable(identityType = IdentityType.APPLICATION) |
| @Inheritance(strategy = InheritanceStrategy.SUPERCLASS_TABLE) |
| public interface PIAppEmployee extends PIAppPerson, IPerson { |
| |
| @Column(name = "HIREDATE") |
| Date getHiredate(); |
| |
| @Column(name = "WEEKLYHOURS") |
| double getWeeklyhours(); |
| |
| @Persistent(persistenceModifier = PersistenceModifier.PERSISTENT, mappedBy = "reviewers") |
| @Element(types = org.apache.jdo.tck.pc.companyAnnotatedPI.PIAppProject.class) |
| Set<IProject> getReviewedProjects(); |
| |
| @Persistent(persistenceModifier = PersistenceModifier.PERSISTENT, mappedBy = "members") |
| @Element(types = org.apache.jdo.tck.pc.companyAnnotatedPI.PIAppProject.class) |
| Set<IProject> getProjects(); |
| |
| @Persistent( |
| mappedBy = "employee", |
| types = org.apache.jdo.tck.pc.companyAnnotatedPI.PIAppDentalInsurance.class) |
| IDentalInsurance getDentalInsurance(); |
| |
| @Persistent( |
| mappedBy = "employee", |
| types = org.apache.jdo.tck.pc.companyAnnotatedPI.PIAppMedicalInsurance.class) |
| IMedicalInsurance getMedicalInsurance(); |
| |
| @Persistent(types = org.apache.jdo.tck.pc.companyAnnotatedPI.PIAppDepartment.class) |
| @Column(name = "DEPARTMENT") |
| IDepartment getDepartment(); |
| |
| @Persistent(types = org.apache.jdo.tck.pc.companyAnnotatedPI.PIAppDepartment.class) |
| @Column(name = "FUNDINGDEPT") |
| IDepartment getFundingDept(); |
| |
| @Persistent(types = org.apache.jdo.tck.pc.companyAnnotatedPI.PIAppEmployee.class) |
| @Column(name = "MANAGER") |
| IEmployee getManager(); |
| |
| @Persistent(persistenceModifier = PersistenceModifier.PERSISTENT, mappedBy = "manager") |
| @Element(types = org.apache.jdo.tck.pc.companyAnnotatedPI.PIAppEmployee.class) |
| Set<IEmployee> getTeam(); |
| |
| @Persistent(types = org.apache.jdo.tck.pc.companyAnnotatedPI.PIAppEmployee.class) |
| @Column(name = "MENTOR") |
| IEmployee getMentor(); |
| |
| @Persistent( |
| mappedBy = "mentor", |
| types = org.apache.jdo.tck.pc.companyAnnotatedPI.PIAppEmployee.class) |
| IEmployee getProtege(); |
| |
| @Persistent(types = org.apache.jdo.tck.pc.companyAnnotatedPI.PIAppEmployee.class) |
| @Column(name = "HRADVISOR") |
| IEmployee getHradvisor(); |
| |
| @Persistent(mappedBy = "hradvisor", persistenceModifier = PersistenceModifier.PERSISTENT) |
| @Element(types = org.apache.jdo.tck.pc.companyAnnotatedPI.PIAppEmployee.class) |
| Set<IEmployee> getHradvisees(); |
| |
| void setHiredate(Date hiredate); |
| |
| void setWeeklyhours(double weeklyhours); |
| |
| void setReviewedProjects(Set<IProject> reviewedProjects); |
| |
| void setProjects(Set<IProject> projects); |
| |
| void setDentalInsurance(IDentalInsurance dentalInsurance); |
| |
| void setMedicalInsurance(IMedicalInsurance medicalInsurance); |
| |
| void setDepartment(IDepartment department); |
| |
| void setFundingDept(IDepartment department); |
| |
| void setManager(IEmployee manager); |
| |
| void setTeam(Set<IEmployee> team); |
| |
| void setMentor(IEmployee mentor); |
| |
| void setProtege(IEmployee protege); |
| |
| void setHradvisor(IEmployee hradvisor); |
| |
| void setHradvisees(Set<IEmployee> hradvisees); |
| } |