Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
102 changes: 47 additions & 55 deletions src/main/java/com/bittercode/model/Address.java
Original file line number Diff line number Diff line change
@@ -1,71 +1,63 @@
package com.bittercode.model;

import java.io.Serializable;

public class Address implements Serializable {

private String addressLine1;
private String addressLine2;
private String city;
private String state;
private String country;
private long pinCode;
private String phone;

public String getAddressLine1() {
return addressLine1;
}

public void setAddressLine1(String addressLine1) {
import java.util.Objects;

public class Address {
private final String addressLine1;
private final String addressLine2;
private final String city;
private final String state;
private final String country;
private final long pinCode;
private final String phone;

public Address(String addressLine1, String addressLine2, String city, String state, String country, long pinCode, String phone) {
this.addressLine1 = addressLine1;
}

public String getAddressLine2() {
return addressLine2;
}

public void setAddressLine2(String addressLine2) {
this.addressLine2 = addressLine2;
}

public String getCity() {
return city;
}

public void setCity(String city) {
this.city = city;
}

public String getState() {
return state;
}

public void setState(String state) {
this.state = state;
}

public String getCountry() {
return country;
}

public void setCountry(String country) {
this.country = country;
this.pinCode = pinCode;
this.phone = phone;
}

public long getPinCode() {
return pinCode;
// Additional methods for better functionality
public String getAddressSummary() {
return String.format("%s, %s, %s, %s, %s", addressLine1, addressLine2, city, state, country);
}

public void setPinCode(long pinCode) {
this.pinCode = pinCode;
// Implementing equals() and hashCode() for better object comparison
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Address address = (Address) o;
return pinCode == address.pinCode &&
Objects.equals(addressLine1, address.addressLine1) &&
Objects.equals(addressLine2, address.addressLine2) &&
Objects.equals(city, address.city) &&
Objects.equals(state, address.state) &&
Objects.equals(country, address.country) &&
Objects.equals(phone, address.phone);
}

public String getPhone() {
return phone;
@Override
public int hashCode() {
return Objects.hash(addressLine1, addressLine2, city, state, country, pinCode, phone);
}

public void setPhone(String phone) {
this.phone = phone;
}
// Additional methods as needed

}
@Override
public String toString() {
return "Address{" +
"addressLine1='" + addressLine1 + '\'' +
", addressLine2='" + addressLine2 + '\'' +
", city='" + city + '\'' +
", state='" + state + '\'' +
", country='" + country + '\'' +
", pinCode=" + pinCode +
", phone='" + phone + '\'' +
'}';
}
}