updates cleanup.

This commit is contained in:
2025-09-10 16:08:11 -04:00
parent cacb97221c
commit e4aeab4e44
6 changed files with 41 additions and 39 deletions

View File

@@ -83,7 +83,7 @@ public final class TestReservations {
try { try {
mgr.addReservation(acct, cabin); mgr.addReservation(acct, cabin);
mgr.UpdateAccount(mgr.retrieveAccount(acct.account_number())); mgr.UpdateAccount(mgr.retrieveAccount(acct.getAccount_number()));
} catch (DuplicateObjectException e) { } catch (DuplicateObjectException e) {
System.out.println(e.getMessage()); System.out.println(e.getMessage());
} }
@@ -94,12 +94,12 @@ public final class TestReservations {
// 6. Complete reservation that is associated with an account // 6. Complete reservation that is associated with an account
rsrv = mgr.retreiveReservation(rsrv.getReservation_number()); rsrv = mgr.retreiveReservation(rsrv.getReservation_number());
rsrv.Change(rsrv, ReservationStatusEnum.Completed); rsrv.Change(rsrv, ReservationStatusEnum.Completed);
mgr.UpdateAccount(mgr.retrieveAccount(acct.account_number())); mgr.UpdateAccount(mgr.retrieveAccount(acct.getAccount_number()));
// 7. Cancel reservation that is associated with an account // 7. Cancel reservation that is associated with an account
rsrv = mgr.retreiveReservation(rsrv.getReservation_number()); rsrv = mgr.retreiveReservation(rsrv.getReservation_number());
rsrv.Change(rsrv, ReservationStatusEnum.Canceled); rsrv.Change(rsrv, ReservationStatusEnum.Canceled);
mgr.UpdateAccount(mgr.retrieveAccount(acct.account_number())); mgr.UpdateAccount(mgr.retrieveAccount(acct.getAccount_number()));
/* /*
* *
* if (rsrv != null) { * if (rsrv != null) {

View File

@@ -74,15 +74,13 @@ public final class AccomodationManager {
return result; return result;
} }
public Reservation retreiveReservation(String reservation_number) { public final Reservation retreiveReservation(String reservation_number) {
Reservation rsrv = null;
for (Account acct : account_list) { for (Account acct : account_list) {
for (Reservation rsv : acct.reservation_list) { rsrv = acct.findReservation(reservation_number);
if (rsv.getReservation_number().compareTo(reservation_number)==0) { if( rsrv!=null ) break;
return rsv;
}
}
} }
return null; return rsrv;
} }
} }

View File

@@ -8,12 +8,11 @@ import java.nio.file.Path;
import java.nio.file.Paths; import java.nio.file.Paths;
public class Account { public class Account {
String account_number = "-99"; private String account_number = "-99";
String phone_number; private String phone_number;
Address mailing_address; private Address mailing_address;
EmailAddress email_address; private EmailAddress email_address;
@SuppressWarnings("unused")
protected Account() { protected Account() {
} }
@@ -29,9 +28,9 @@ public class Account {
this.email_address = email_address; this.email_address = email_address;
} }
AccountReservationList reservation_list = new AccountReservationList();; private final AccountReservationList reservation_list = new AccountReservationList();;
public AccountReservationList getReservation_list() { public final AccountReservationList getReservation_list() {
return reservation_list; return reservation_list;
} }
@@ -85,7 +84,7 @@ public class Account {
} }
} }
public String account_number() { public String getAccount_number() {
return account_number; return account_number;
} }
@@ -93,7 +92,7 @@ public class Account {
this.account_number = account_number; this.account_number = account_number;
} }
public String phone_number() { public String getPhone_number() {
return phone_number; return phone_number;
} }
@@ -101,7 +100,7 @@ public class Account {
this.phone_number = phone_number; this.phone_number = phone_number;
} }
public Address mailing_address() { public Address getMailing_address() {
return mailing_address; return mailing_address;
} }
@@ -109,7 +108,7 @@ public class Account {
this.mailing_address = mailing_address; this.mailing_address = mailing_address;
} }
public EmailAddress email_address() { public EmailAddress getEmail_address() {
return email_address; return email_address;
} }
@@ -125,6 +124,10 @@ public class Account {
return result; return result;
} }
public Reservation findReservation(String reservation_number) {
return this.reservation_list.find(reservation_number);
}
@Override @Override
public boolean equals(Object obj) { public boolean equals(Object obj) {
if (this == obj) if (this == obj)
@@ -148,4 +151,5 @@ public class Account {
this.setMailing_address(acct.mailing_address); this.setMailing_address(acct.mailing_address);
this.getReservation_list().update(acct.getReservation_list()); this.getReservation_list().update(acct.getReservation_list());
} }
} }

View File

@@ -29,9 +29,9 @@ public class AccountList extends ArrayList<Account> {
throws DuplicateObjectException { throws DuplicateObjectException {
try { try {
for (Account acct : this) { for (Account acct : this) {
if (acct.account_number().compareTo(account.account_number()) == 0) { if (acct.getAccount_number().compareTo(account.getAccount_number()) == 0) {
throw new DuplicateObjectException( throw new DuplicateObjectException(
String.format("Account %s exists, duplicates not allowed.", acct.account_number())); String.format("Account %s exists, duplicates not allowed.", acct.getAccount_number()));
} }
} }
} catch (DuplicateObjectException e) { } catch (DuplicateObjectException e) {
@@ -51,7 +51,7 @@ public class AccountList extends ArrayList<Account> {
// ** Find account return null not-existing. */ // ** Find account return null not-existing. */
public final Account find(String account_number) { public final Account find(String account_number) {
for (Account acct : this) { for (Account acct : this) {
if (acct.account_number().compareTo(account_number) == 0) { if (acct.getAccount_number().compareTo(account_number) == 0) {
return acct; return acct;
} }
} }

View File

@@ -8,6 +8,7 @@ public class AccountReservationList extends ArrayList<Reservation> {
return String.format("R%010d", Math.abs(java.util.Objects.hash(reservation.physical_address))); return String.format("R%010d", Math.abs(java.util.Objects.hash(reservation.physical_address)));
} }
@Override
public boolean add(final Reservation reservation) { public boolean add(final Reservation reservation) {
boolean result = true; boolean result = true;
try { try {
@@ -45,15 +46,6 @@ public class AccountReservationList extends ArrayList<Reservation> {
return sb.toString(); return sb.toString();
} }
public void update(AccountReservationList incoming_reservation_list) {
for (Reservation rsrv : incoming_reservation_list) {
Reservation onListRsrv = find(rsrv.getReservation_number());
if( onListRsrv != null ){
onListRsrv.update(rsrv);
}
}
}
public Reservation find(String reservation_number) { public Reservation find(String reservation_number) {
for(Reservation rsrv: this){ for(Reservation rsrv: this){
if( rsrv.getReservation_number().compareTo(reservation_number) == 0 ){ if( rsrv.getReservation_number().compareTo(reservation_number) == 0 ){
@@ -62,4 +54,13 @@ public class AccountReservationList extends ArrayList<Reservation> {
} }
return null; return null;
} }
public void update(AccountReservationList incoming_reservation_list) {
for (Reservation rsrv : incoming_reservation_list) {
Reservation onListRsrv = find(rsrv.getReservation_number());
if( onListRsrv != null ){
onListRsrv.update(rsrv);
}
}
}
} }

View File

@@ -121,7 +121,7 @@ final class DataRepository {
} }
} }
jsonReader.close(); jsonReader.close();
return ac.account_number.length() > 8 ? ac : null; return ac.getAccount_number().length() > 8 ? ac : null;
} }
} }
@@ -133,14 +133,14 @@ final class DataRepository {
rdr.beginObject(); rdr.beginObject();
rdr.nextName(); rdr.nextName();
String reservationNumber = rdr.nextString(); String reservationNumber = rdr.nextString();
loadReservation(ac.reservation_list, reservationType, reservationNumber); loadReservation(ac, reservationType, reservationNumber);
rdr.endObject(); rdr.endObject();
rdr.endObject(); rdr.endObject();
} }
rdr.endArray(); rdr.endArray();
} }
private static void loadReservation(AccountReservationList reservation_list, String reservationType, private static void loadReservation(Account ac, String reservationType,
String reservationNumber) throws IOException { String reservationNumber) throws IOException {
String filename = String.format("rsv-%s.json", reservationNumber); String filename = String.format("rsv-%s.json", reservationNumber);
Path basePath = Paths.get(getPath()); Path basePath = Paths.get(getPath());
@@ -242,9 +242,8 @@ final class DataRepository {
} }
} }
if (rsrv.checkValid()) { ac.add(rsrv);
reservation_list.add(rsrv);
}
} catch (Exception e) { } catch (Exception e) {
System.out.println(e.toString()); System.out.println(e.toString());
} }