| /* |
| * Copyright (c) 1998, 2021 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.employee.domain; |
| |
| import java.math.*; |
| import java.io.*; |
| import java.beans.PropertyChangeListener; |
| import java.beans.PropertyChangeEvent; |
| import org.eclipse.persistence.descriptors.changetracking.*; |
| |
| /** |
| * <p><b>Purpose</b>: Represents the mailing address on an Employee |
| * <p><b>Description</b>: Held in a private 1:1 relationship from Employee |
| * @see Employee |
| */ |
| public class Address implements Serializable, ChangeTracker { |
| // implements ChangeTracker for testing |
| public BigDecimal id; |
| public String street; |
| public String city; |
| public String province; |
| public String postalCode; |
| public String country; |
| |
| //used in testing WorkingCloneCopyPolcyTest. Not mapped and should not be mapped. |
| public boolean isWorkingCopy; |
| public PropertyChangeListener listener; |
| |
| @Override |
| public PropertyChangeListener _persistence_getPropertyChangeListener() { |
| return listener; |
| } |
| |
| @Override |
| public void _persistence_setPropertyChangeListener(PropertyChangeListener listener) { |
| this.listener = listener; |
| } |
| |
| public void propertyChange(String propertyName, Object oldValue, Object newValue) { |
| if (listener != null) { |
| if (oldValue != newValue) { |
| listener.propertyChange(new PropertyChangeEvent(this, propertyName, oldValue, newValue)); |
| } |
| } |
| } |
| |
| public void collectionChange(String propertyName, Object oldValue, Object newValue, int changeType, boolean isChangeApplied) { |
| if (listener != null) { |
| listener.propertyChange(new CollectionChangeEvent(this, propertyName, oldValue, newValue, changeType, isChangeApplied)); |
| } |
| } |
| |
| public Address() { |
| this.city = ""; |
| this.province = ""; |
| this.postalCode = ""; |
| this.street = ""; |
| this.country = ""; |
| this.isWorkingCopy = false; |
| } |
| |
| public String getCity() { |
| return city; |
| } |
| |
| public String getCountry() { |
| return country; |
| } |
| |
| /** |
| * Return the persistent identifier of the receiver. |
| */ |
| public BigDecimal getId() { |
| return id; |
| } |
| |
| public String getPostalCode() { |
| return postalCode; |
| } |
| |
| public String getProvince() { |
| return province; |
| } |
| |
| public String getStreet() { |
| return street; |
| } |
| |
| public void setCity(String city) { |
| propertyChange("city", this.city, city); |
| this.city = city; |
| } |
| |
| public void setCountry(String country) { |
| propertyChange("country", this.country, country); |
| this.country = country; |
| } |
| |
| /** |
| * Set the persistent identifier of the receiver. |
| */ |
| public void setId(BigDecimal id) { |
| propertyChange("id", this.id, id); |
| this.id = id; |
| } |
| |
| public void setPostalCode(String postalCode) { |
| propertyChange("postalCode", this.postalCode, postalCode); |
| this.postalCode = postalCode; |
| } |
| |
| public void setProvince(String province) { |
| propertyChange("province", this.province, province); |
| this.province = province; |
| } |
| |
| public void setStreet(String street) { |
| propertyChange("street", this.street, street); |
| this.street = street; |
| } |
| |
| /** |
| * Print the address city and province. |
| */ |
| public String toString() { |
| StringWriter writer = new StringWriter(); |
| |
| writer.write("Address: "); |
| writer.write(getStreet()); |
| writer.write(", "); |
| writer.write(getCity()); |
| writer.write(", "); |
| writer.write(getProvince()); |
| writer.write(", "); |
| writer.write(getCountry()); |
| return writer.toString(); |
| } |
| } |