Java tutorial
/** * Copyright 2004-2013 The Kuali Foundation * * Licensed under the Educational Community 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 * * http://www.opensource.org/licenses/ecl2.php * * 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 * limitations under the License. */ package org.kuali.kpme.core.principal; import java.util.Date; import org.joda.time.LocalDate; import org.kuali.kpme.core.bo.HrBusinessObject; import org.kuali.kpme.core.calendar.Calendar; import org.kuali.kpme.core.leaveplan.LeavePlan; import org.kuali.kpme.core.util.HrConstants; import org.kuali.rice.kim.api.identity.Person; import org.kuali.rice.kim.api.services.KimApiServiceLocator; import com.google.common.collect.ImmutableList; public class PrincipalHRAttributes extends HrBusinessObject { private static final long serialVersionUID = 6843318899816055301L; //KPME-2273/1965 Primary Business Keys List. public static final ImmutableList<String> EQUAL_TO_FIELDS = new ImmutableList.Builder<String>() .add("principalId").build(); public static final String CACHE_NAME = HrConstants.CacheNamespace.NAMESPACE_PREFIX + "PrincipalHRAttributes"; private String hrPrincipalAttributeId; private String principalId; private String leaveCalendar; private String payCalendar; private String leavePlan; private Date serviceDate; private boolean fmlaEligible; private boolean workersCompEligible; private String timezone; private Boolean history; // KPME-1268 Kagata added recordTime and recordLeave variables // KPME-1676 // private String recordTime; // private String recordLeave; private transient Calendar calendar; private transient Calendar leaveCalObj; private transient Person person; private transient LeavePlan leavePlanObj; public String getPrincipalId() { return principalId; } public void setPrincipalId(String principalId) { this.principalId = principalId; person = KimApiServiceLocator.getPersonService().getPerson(this.principalId); } public String getName() { if (person == null) { person = KimApiServiceLocator.getPersonService().getPerson(this.principalId); } return (person != null) ? person.getName() : ""; } public String getPayCalendar() { return payCalendar; } public void setPayCalendar(String payCalendar) { this.payCalendar = payCalendar; } public String getLeavePlan() { return leavePlan; } public void setLeavePlan(String leavePlan) { this.leavePlan = leavePlan; } public Date getServiceDate() { return serviceDate; } public void setServiceDate(Date serviceDate) { this.serviceDate = serviceDate; } public LocalDate getServiceLocalDate() { return serviceDate != null ? LocalDate.fromDateFields(serviceDate) : null; } public void setServiceLocalDate(LocalDate serviceLocalDate) { this.serviceDate = serviceLocalDate != null ? serviceLocalDate.toDate() : null; } public boolean isFmlaEligible() { return fmlaEligible; } public void setFmlaEligible(boolean fmlaEligible) { this.fmlaEligible = fmlaEligible; } public boolean isWorkersCompEligible() { return workersCompEligible; } public void setWorkersCompEligible(boolean workersCompEligible) { this.workersCompEligible = workersCompEligible; } public String getTimezone() { return timezone; } public void setTimezone(String timezone) { this.timezone = timezone; } public Calendar getCalendar() { return calendar; } public void setCalendar(Calendar calendar) { this.calendar = calendar; } public Person getPerson() { return person; } public void setPerson(Person person) { this.person = person; } public LeavePlan getLeavePlanObj() { return leavePlanObj; } public void setLeavePlanObj(LeavePlan leavePlanObj) { this.leavePlanObj = leavePlanObj; } @Override protected String getUniqueKey() { return principalId + "_" + payCalendar == null ? "" : payCalendar + "_" + leaveCalendar == null ? "" : leaveCalendar; } public String getLeaveCalendar() { return leaveCalendar; } public void setLeaveCalendar(String leaveCalendar) { this.leaveCalendar = leaveCalendar; } @Override public String getId() { return this.getHrPrincipalAttributeId(); } @Override public void setId(String id) { setHrPrincipalAttributeId(id); } public Calendar getLeaveCalObj() { return leaveCalObj; } public void setLeaveCalObj(Calendar leaveCalObj) { this.leaveCalObj = leaveCalObj; } public String getHrPrincipalAttributeId() { return hrPrincipalAttributeId; } public void setHrPrincipalAttributeId(String hrPrincipalAttributeId) { this.hrPrincipalAttributeId = hrPrincipalAttributeId; } public Boolean getHistory() { return history; } public void setHistory(Boolean history) { this.history = history; } }