From ba8ab3046c0e290f6b5b5283ff1383cb46d080d5 Mon Sep 17 00:00:00 2001 From: Sherwin Price Date: Fri, 20 Feb 2026 13:16:07 -0500 Subject: [PATCH] update project. deepcopy on contact. --- .../executionHistory/executionHistory.bin | Bin 126274 -> 126274 bytes .../executionHistory/executionHistory.lock | Bin 17 -> 17 bytes .gradle/9.3.1/fileHashes/fileHashes.bin | Bin 28547 -> 28597 bytes .gradle/9.3.1/fileHashes/fileHashes.lock | Bin 17 -> 17 bytes .../9.3.1/fileHashes/resourceHashesCache.bin | Bin 21489 -> 21523 bytes .../buildOutputCleanup.lock | Bin 17 -> 17 bytes .gradle/file-system.probe | Bin 8 -> 8 bytes .settings/org.eclipse.buildship.core.prefs | 12 ++++++------ build.gradle | 8 ++++---- db/sample.db | Bin 12288 -> 12288 bytes readme.txt | 5 +++-- .../java/edu/bookocontacts/StorageMonitor.aj | 2 +- .../edu/bookocontacts/ViewController.java | 9 +++++++-- .../java/edu/bookocontacts/model/Contact.java | 18 ++++++++++++++++-- .../java/edu/bookocontacts/model/DATASET.java | 2 +- .../edu/bookocontacts/model/EnumStatus.java | 2 +- 16 files changed, 39 insertions(+), 19 deletions(-) diff --git a/.gradle/9.3.1/executionHistory/executionHistory.bin b/.gradle/9.3.1/executionHistory/executionHistory.bin index be762e078334bdf3f0f4cf6c0448aaaed8d5e668..7b1be29833ebcd182c800c16d94774268d383237 100755 GIT binary patch delta 2073 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 literal 17 UcmZSXH>umx74fHr0Sp+U05yOFwg3PC diff --git a/.gradle/9.3.1/fileHashes/fileHashes.bin b/.gradle/9.3.1/fileHashes/fileHashes.bin index 16a59e61d118bdf9d483e87a24acd9beab0e64ef..169de5d0ccc9a919dcc28eac67605acb079de5eb 100755 GIT binary patch delta 999 zcmZp^&$#tI;|3E6##5V3B_ad`Ql`Ck{iOJuhXD-on>V*=PGV#dX56UwLwuuw1nXu; zk6*%*b;Cq>sspx$fE6)t9G%PMVM7d?QGoxu0hN#>at7liEn!OYv%kY(ffkDrhfq_Ajfq_90gas6DbboNjbYR^2 zMo)O2rqUS(2F5uxs@bO?I?kP&EE}iBQlpyld$N0+9!rgCF8}7rI1xq#C(WiK+7q~p zTh83vaJ%s8O0Yh|KhGihq(4nw8(*f-U%l2-RIH(Tho%na|M0F$U`0k#-a`~gb#8V} zsAJ-((Pf_u5n&dZyf{;x*~4$e!&85i>j1X__O!1j4 zoGr?{UgGg&?QE&Z=BY+Ov!aeZ-e-}m8!&a!lgAeCpMdSsylV$BnIR6->oz}+%vP;` z+`(~C-=NaCCmyUrmwgdLhp^`4-Ki^r?7eO=9%rw;xqRi#R;#kK3a}#i?n4koOoo`o zE>$+W*btz6aoQ4PsXwpgKy((+g{kAp4xL5LOI`)O*T{Sr^`&S6REN@J?hGk~4PMjM zDJD0*WncGBxge>f6ebBVPAp{d$!v9IqgMfw^E0F-^X7njl0A80hE%<^P3sNk%l-46 z6MSql{Ek^bHBN_U@q%i5L4>1uIs z+Uf{~X-GOIH{^*+XxSEg*!A(-Hg(_bt7%tLB%t!sCVS^eNo-!A$nCL>(B_aejFV*Z~WDKcW3p_V8cSJAuEJ#ZI6V+UcXMT&2&2Nn_X~eKuN6x0VC<6Fr&9C{ zq_47%a|uMBbo}JC@ns4OGu7;QjDt4!H=9oNDpP4hRV4XyvvWcnlUc=qoI?<8%tDwB zloFg*Qq%mQ@$7!iD_&=qwsk?m(w;<_wQcF-M4WiNJr(QzGDy_oF6A|O;cm3oYZ%B^8GYW^5}aw zSukCyexu`Mrmdfr#eVxgDQ-qp>N=>l#}IAoA2BWZ)0_A*=X{H{MiTd$^~B|Rp0q1Hya+kWEBswqo1FFfq|8QfkC)r^4A=&+n!C9&y|wc zzp-^1@5WxeEx+ZZb$7~~f+}a5%$*@6aahIeNR(u;sqT8t?w)10cfcig=SWFBVxF9{ z`D&@KP=NVN7PHKHsHDQ={0u3H-Z?=(nZN5MUkF>@|Li(5I5|{K>NlUfFhi>TTjrW` z4p%>^$oqI@E2QcJl>QHFL)UosT!GQGV zA&0-bdS`v8dB;{H9f=GK44h_|S|(OL4w19I+dg#_FJs%+;CoOlNf2joDPZdO8|}Gz h?WGr=E`7LkCbM4l3QWi3^?6d0?_da o8@QE>85kHO85kG@L0I6{^9MWb+<&T|dEm)eOR=&I3=9l%00#LTM*si- delta 36 tcmbQdg7M>W#tkMCj1iknB_dciFO~hw#2C0y@rU?EgA@Fl9X&R10{{X!4b%Vt diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock index ddc13a0847295e618ba990d0af01e1d889c33e39..824fec5194e66fa46b1dbbb503c0778f79f3995e 100755 GIT binary patch literal 17 VcmZRUJyE!~bl?1H1~6cr2>>=>1poj5 literal 17 VcmZRUJyE!~bl?1H1~6dG2LLuV1l9lm diff --git a/.gradle/file-system.probe b/.gradle/file-system.probe index 1616aef36423cedfe9dc4c2c60eca8f193dac762..99c224fa27b208e2bb0f3172a2917bfb9029dc94 100755 GIT binary patch literal 8 PcmZQzV4PE9zOoMh2af`X literal 8 PcmZQzV4PFEe~&Q$2<`&M diff --git a/.settings/org.eclipse.buildship.core.prefs b/.settings/org.eclipse.buildship.core.prefs index e479558..8e50e0f 100644 --- a/.settings/org.eclipse.buildship.core.prefs +++ b/.settings/org.eclipse.buildship.core.prefs @@ -1,13 +1,13 @@ -arguments= -auto.sync=false +arguments=--init-script /home/sherwinp/.config/VSCodium/User/globalStorage/redhat.java/1.50.0/config_linux/org.eclipse.osgi/58/0/.cp/gradle/init/init.gradle --init-script /home/sherwinp/.config/VSCodium/User/globalStorage/redhat.java/1.50.0/config_linux/org.eclipse.osgi/58/0/.cp/gradle/protobuf/init.gradle +auto.sync=true build.scans.enabled=false connection.gradle.distribution=GRADLE_DISTRIBUTION(WRAPPER) connection.project.dir= eclipse.preferences.version=1 gradle.user.home= -java.home= +java.home=/usr/lib/jvm/java-25-openjdk jvm.arguments= offline.mode=false -override.workspace.settings=false -show.console.view=false -show.executions.view=false +override.workspace.settings=true +show.console.view=true +show.executions.view=true diff --git a/build.gradle b/build.gradle index b7f1ebf..7553d8f 100755 --- a/build.gradle +++ b/build.gradle @@ -56,17 +56,17 @@ dependencies { jar { manifest { - attributes 'Main-Class': application.mainClass + attributes 'Main-Class': 'edu.bookocontacts.AppSceneView' } duplicatesStrategy = DuplicatesStrategy.EXCLUDE } tasks.named('jar') { manifest { - attributes('Automatic-Module-Name':group, - 'Implementation-Title': group, + attributes('Automatic-Module-Name': 'edu.bookocontacts', + 'Implementation-Title': 'edu.bookocontacts', 'Implementation-Version': 1.0, - 'Main-Class': application.mainClass, + 'Main-Class': 'edu.bookocontacts.AppSceneView', 'Class-Path': '. edu.bookocontacts edu.bookocontacts.model javafx.base javafx.controls' ) } } diff --git a/db/sample.db b/db/sample.db index be72f08dba50392f75e09e76945828d1aeb3c235..f2945d215ba4215c7fc4675cc8bcc14bed442ced 100644 GIT binary patch delta 129 zcmZojXh@hK&8R(5#+gxjW5PmyS-w>aoV;>OeEhs}eBb!C@`dp`@$Tg<QKJIOmST2F43 jH|KKVWoMKYR~7XXoxER8jLpCxuQVrTa*vGMA_V~e`e7p{ delta 122 zcmZojXh@hK&8RX_#+gxNW5PmyS)Nr4oIF`feEhs}eBb!C@`dp`@$Tg< result = dialog.showAndWait(); if (result.isPresent()) { log("result is present."); - // add to storage + // update storage Contact updatedContact = (Contact) result.get(); try { + updatedContact.setId(ct.getId()); - ct.save(); + updatedContact.setStatus(EnumStatus.UPDATED); + updatedContact.save(); + ct.copy(updatedContact); + } catch (Exception ex) { logger.log(Level.WARNING, ex.getMessage()); } diff --git a/src/main/java/edu/bookocontacts/model/Contact.java b/src/main/java/edu/bookocontacts/model/Contact.java index 7e933a0..eacd8a3 100644 --- a/src/main/java/edu/bookocontacts/model/Contact.java +++ b/src/main/java/edu/bookocontacts/model/Contact.java @@ -13,7 +13,7 @@ public class Contact { private PhoneNumber phone_number; private EmailAddress email_address; private MailAddress mailing_address; - EnumStatus status = EnumStatus.STORED; + EnumStatus status = null; public Contact() { this("", ""); @@ -75,6 +75,16 @@ public class Contact { } } + public void copy(Contact ct){ + this.id = ct.id; + this.first_name = ct.first_name; + this.last_name = ct.last_name; + this.phone_number = ct.phone_number; + this.email_address = ct.email_address; + this.mailing_address = ct.mailing_address; + this.status = ct.status; + } + @Override public String toString() { @@ -89,7 +99,7 @@ public class Contact { public void save() throws IOException { Factory.save(this); - this.status = EnumStatus.STORED; + this.status = EnumStatus.INSTORE; } public void markDeleted() { @@ -104,6 +114,10 @@ public class Contact { this.id = id; } + public void setStatus(EnumStatus es){ + this.status = es; + } + public String getName() { return this.first_name + " " + last_name; } diff --git a/src/main/java/edu/bookocontacts/model/DATASET.java b/src/main/java/edu/bookocontacts/model/DATASET.java index 89cc35c..51fbccb 100644 --- a/src/main/java/edu/bookocontacts/model/DATASET.java +++ b/src/main/java/edu/bookocontacts/model/DATASET.java @@ -47,7 +47,7 @@ public final class DATASET { new EmailAddress(rs.getString("EMAIL_ADDRESS")), new PhoneNumber(rs.getString("PHONE_NUMBER")), new MailAddress(rs.getString("MAIL_ADDRESS"))); - ct.status = EnumStatus.STORED; + ct.status = EnumStatus.INSTORE; list.add(ct); } diff --git a/src/main/java/edu/bookocontacts/model/EnumStatus.java b/src/main/java/edu/bookocontacts/model/EnumStatus.java index cf0f340..c26c731 100644 --- a/src/main/java/edu/bookocontacts/model/EnumStatus.java +++ b/src/main/java/edu/bookocontacts/model/EnumStatus.java @@ -1,5 +1,5 @@ package edu.bookocontacts.model; public enum EnumStatus { - STORED,NEW,DELETED; + INSTORE,NEW,UPDATED,DELETED; }