From 641b9ef5d6e4187d90e7f969309ee4a6335c63bb Mon Sep 17 00:00:00 2001 From: Jeremy Chrimes Date: Mon, 14 Mar 2022 00:36:05 +1100 Subject: [PATCH 1/2] wip --- .idea/.gitignore | 8 ++ .idea/misc.xml | 6 + .idea/modules.xml | 8 ++ .idea/uiDesigner.xml | 124 ++++++++++++++++++ .idea/vcs.xml | 6 + TimeTableDataModel.iml | 11 ++ bin/TimeTable/ClassSession.class | Bin 5261 -> 0 bytes bin/TimeTable/DatabaseConnection.class | Bin 1666 -> 0 bytes bin/TimeTable/Period.class | Bin 2654 -> 0 bytes bin/TimeTable/Subject.class | Bin 2716 -> 0 bytes bin/TimeTable/Time.class | Bin 2633 -> 0 bytes bin/TimeTable/TimeTable.class | Bin 3597 -> 0 bytes bin/TimeTable/WeekDay.class | Bin 2020 -> 0 bytes file.java | 23 ---- .../TimeTable/SubjectProvider.class | Bin 0 -> 916 bytes .../TimeTable/TimeTable.class | Bin 0 -> 625 bytes .../TimeTable/TimeTableContext.class | Bin 0 -> 786 bytes .../TimeTable/TimeTableFactory.class | Bin 0 -> 2329 bytes .../TimeTable/models/ClassSession.class | Bin 0 -> 2001 bytes .../TimeTable/models/Period.class | Bin 0 -> 971 bytes .../TimeTable/models/Subject.class | Bin 0 -> 1581 bytes .../TimeTable/models/Time.class | Bin 0 -> 2959 bytes .../TimeTable/models/WeekDay.class | Bin 0 -> 2068 bytes .../plugins/ObjectTimetableStore.class | Bin 0 -> 2481 bytes .../TimeTable/stores/ClassSessionStore.class | Bin 0 -> 264 bytes .../TimeTable/stores/PeriodStore.class | Bin 0 -> 240 bytes .../TimeTable/stores/SubjectStore.class | Bin 0 -> 244 bytes .../TimeTable/stores/TimeTableStore.class | Bin 0 -> 320 bytes src/TimeTable/ClassSession.java | 72 ---------- src/TimeTable/DatabaseConnection.java | 29 ---- src/TimeTable/Subject.java | 54 -------- src/TimeTable/SubjectProvider.java | 21 +++ src/TimeTable/TimeTable.java | 41 ++---- src/TimeTable/TimeTableContext.java | 22 ++++ src/TimeTable/TimeTableFactory.java | 25 ++++ src/TimeTable/models/ClassSession.java | 49 +++++++ src/TimeTable/models/Period.java | 31 +++++ src/TimeTable/models/Subject.java | 55 ++++++++ src/TimeTable/{ => models}/Time.java | 33 +++-- src/TimeTable/{ => models}/WeekDay.java | 4 +- src/TimeTable/period.java | 47 ------- .../plugins/ObjectTimetableStore.java | 68 ++++++++++ src/TimeTable/stores/ClassSessionStore.java | 9 ++ src/TimeTable/stores/PeriodStore.java | 10 ++ src/TimeTable/stores/SubjectStore.java | 9 ++ src/TimeTable/stores/TimeTableStore.java | 7 + test.csv | 5 + 47 files changed, 508 insertions(+), 269 deletions(-) create mode 100644 .idea/.gitignore create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/uiDesigner.xml create mode 100644 .idea/vcs.xml create mode 100644 TimeTableDataModel.iml delete mode 100644 bin/TimeTable/ClassSession.class delete mode 100644 bin/TimeTable/DatabaseConnection.class delete mode 100644 bin/TimeTable/Period.class delete mode 100644 bin/TimeTable/Subject.class delete mode 100644 bin/TimeTable/Time.class delete mode 100644 bin/TimeTable/TimeTable.class delete mode 100644 bin/TimeTable/WeekDay.class delete mode 100644 file.java create mode 100644 out/production/TimeTableDataModel/TimeTable/SubjectProvider.class create mode 100644 out/production/TimeTableDataModel/TimeTable/TimeTable.class create mode 100644 out/production/TimeTableDataModel/TimeTable/TimeTableContext.class create mode 100644 out/production/TimeTableDataModel/TimeTable/TimeTableFactory.class create mode 100644 out/production/TimeTableDataModel/TimeTable/models/ClassSession.class create mode 100644 out/production/TimeTableDataModel/TimeTable/models/Period.class create mode 100644 out/production/TimeTableDataModel/TimeTable/models/Subject.class create mode 100644 out/production/TimeTableDataModel/TimeTable/models/Time.class create mode 100644 out/production/TimeTableDataModel/TimeTable/models/WeekDay.class create mode 100644 out/production/TimeTableDataModel/TimeTable/plugins/ObjectTimetableStore.class create mode 100644 out/production/TimeTableDataModel/TimeTable/stores/ClassSessionStore.class create mode 100644 out/production/TimeTableDataModel/TimeTable/stores/PeriodStore.class create mode 100644 out/production/TimeTableDataModel/TimeTable/stores/SubjectStore.class create mode 100644 out/production/TimeTableDataModel/TimeTable/stores/TimeTableStore.class delete mode 100644 src/TimeTable/ClassSession.java delete mode 100644 src/TimeTable/DatabaseConnection.java delete mode 100644 src/TimeTable/Subject.java create mode 100644 src/TimeTable/SubjectProvider.java create mode 100644 src/TimeTable/TimeTableContext.java create mode 100644 src/TimeTable/TimeTableFactory.java create mode 100644 src/TimeTable/models/ClassSession.java create mode 100644 src/TimeTable/models/Period.java create mode 100644 src/TimeTable/models/Subject.java rename src/TimeTable/{ => models}/Time.java (75%) rename src/TimeTable/{ => models}/WeekDay.java (98%) delete mode 100644 src/TimeTable/period.java create mode 100644 src/TimeTable/plugins/ObjectTimetableStore.java create mode 100644 src/TimeTable/stores/ClassSessionStore.java create mode 100644 src/TimeTable/stores/PeriodStore.java create mode 100644 src/TimeTable/stores/SubjectStore.java create mode 100644 src/TimeTable/stores/TimeTableStore.java diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..15cec4b --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..b8edd23 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/uiDesigner.xml b/.idea/uiDesigner.xml new file mode 100644 index 0000000..e96534f --- /dev/null +++ b/.idea/uiDesigner.xml @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/TimeTableDataModel.iml b/TimeTableDataModel.iml new file mode 100644 index 0000000..c90834f --- /dev/null +++ b/TimeTableDataModel.iml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/bin/TimeTable/ClassSession.class b/bin/TimeTable/ClassSession.class deleted file mode 100644 index 1ed0c72191381a042ba46dabfdce20374304e4aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5261 zcma)Ad3+S*8GgQGH_mD z(FXvWqvmUCf!76yY3iD=CHmqTR z!W^I3_bQt+EX#C~Na0x`VG&P5#?YtCN-{m0F|0DJa~xwr;*rE+ED^R-80i%&hega% z9j9TLLZfBw@dgSO{cc?m2GR#MjBO)UD5%aP(&*ICQGqC3^338B~V9GpcYM;&`S(DW3-BT!VbCPCrn=tv-$#2REY^i;y> z`?k^Y%pInqV=c~O>h3m*WpmT$Q;GK@8s*C*a6Z;)xPalVnmxVJaUuGcQhCEOT+f!2 znisKgn$8!qK}SC>q7gxTFvFXV&*mm<#B()VqA;rpuHdR;0E5gW*KG6r+BVCDM@j@aE+|3XqLqBXnDMY)Qmzg;mi|6OrS))(mmca8*rJgsoJRx;o-$khCc4 z*o~`cyOC#Wt?4D9>EdGw6FOcj{x^*o?$C6>&z8C$DvxhB9ly~_bGCCvaoBJQ()h#8 zMnY*?#yDfta$+4bo#dR!8Jt!6kwTrDlb&7$BkW@AkXlYgiuChX(eFJ8dH4;BEHiWq z88E>BQkWkprkdVMqJrgZrbp9yYs!|5j4^19SX4<5nl#%p$4g<5hkR!h&1 z7S-zy#=z)ke_uJQaQ^XhQQK-F+?$z6LIOAAT^eqw9S##NBdX)wcn|Z_F0;1g1`Y1AirX~2kC^$XQhTi9{W34Ll5iAx{rEtozQaV@>J->#lDHjhQW5)fd=PiB z3}x3~_dUK}Yz+6=Uhc++HQZB?=QpUzsg93GPl(BM)Nn6___q0x>l-tita(-0v~s2l zu>Cqd=8sa(4oX{wmzLPu`wZ7iU=)XS9Kj8|83g@4s6JshCe!HS3d^Fc zqEf^sMm>QN9?uI^#}d+cV+GcGW<{jARBA1<6;^6wr*h?xLP~OkWXt2@hBG1f{7A=-1)rEeBO5=} z@iW=bJk!XHnT{mHFLeA8zY-8V!|`Os$Q7VEYh*q8%xhnSP{*J%IJ?M4c%P1jgc!=InO+fGn`}* z#!AR!?4Hm(Dx!WS;M%6Ln2E4%nt*VPtO}I%20BjQ7mRzikaCBm}5 zPE&0Pi=Up97sepaXy*l|o|jem<1L53kSmt|BjP$e6%vBxcfY;o* zHl8%`{gGpsJCZ)cx<7{0NXH>896W}_BZtsFv=4W5PU6&_SSr@Cd=e{r;>VzP(%sXL zYDmTFR~^O~2XS^P9^>lV9&JB*4`BTfT&$4Nj$#OG;?J++&kGcK8dHsvc;U@xCM#Fl zAHwKCjHTl7RXquxac97oIEwKa#$+lv&BzrQO9$a}r5cXFtHV}WxaXFsZC&^JUcQ9C zL;QjSy-d*07Ooed6^k$rr=ks=n2)n~)mz8iORx}QJSp+R?`4eWUM#_FI0bi+a+2SD z50dX;EXPYJtrWzHbl31L!Lyg+6^v;MDX+zKjOqf;!o9eNQ9YH@{FS7OQQJ*;6|N^j zXW<6C8m}Qzm!OQ-@=c@et#}rH*znDH&IVJr3G?t4QVk&XBo=9yt1;}@IE5>b(2$oD1`Ai=amH8BKHWzq&D~Dg+=XS_*@kX@$#h{S?;RFa!NF=w z5QA%Rj*n)qUoqGDcu@rL6I|IkaRt7CZ_@i^=)t#$S3PAl_-Mu{MZ>r89i9p{I_ZUT zFK*;ha7ZII#gvK@13#v>lm2etzgRy-$#ucDpzt`ckpDCAS3Wpb^C`08titc!$3>m* zSdvfRT)Mf&H#$%l$MOCmMZATFE8X0EHhgJb~$xVPf>BeL#OW5Ilb}$S2YM z`6PZl6fA$oWlyZ-k3nX1Fd;f6510X|Sdam!xRh|<`vM=Jb<}(zL)XWsu4f@`;Hp0Y zV1Hk z-wBP`9IL;FJM}&eK^zuFFqnnE(K6+O9!H&ifucYThfv_^P+)=r?@v$SpCT*pE0DD$ vA}hiCkllLx&!>6Bu$xoVy|8L9sRGdNT| diff --git a/bin/TimeTable/DatabaseConnection.class b/bin/TimeTable/DatabaseConnection.class deleted file mode 100644 index 9d5f7d577d1b8cbf04d94a9e5128ba3964e6cb95..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1666 zcmaJ>TX)+;5dPLlEJvs$Rda!~6mxByx)p^&OWX@>(sFas7KfCS>&jYOrLv?-av?vZ zj~pI&1rEpIwCC^x_)l>7R&rA3a(K}0Xm)mHzHess?|+~C1>gb#10{hIYkpU)NjFf= zvdp9_Q?(R@p=xJ-6dD*6nB0_)q!Y-nTatw54K44h}^X=vW~ zv8`fFMQY$hf$1EuHf!B!?w%PqE-;lJ^)f$jZYNQ!lFV1Bi8)MGFg6Z>mo1E;tTnG# zconY^Y}_N67w3m)EEsMa)C@8lDnp|JL;HQxf`PJ@<}FlEu3$l6th>c5P1JGLz?nTo zEGlKe!CNF=J?zPVoJ}8+MeUw}w@J_bDqrvUfv1uR&NI-a=e8G3oWpy%Ru}ep8ni`i zU0b|wVG(4tEaO;(Y>+d5uueNE6fyt^v6L;A?0yQTAQSul0}pR+w1?L^5;UCxr88pmC182Dmu4Y$%vbuHY( zm!u@pZ8TlP_9M2RA7%unWS5+M&7(n2E3cYGRc|onCccF<@SVW19QWRv7F=CSBi7D> zkTcolv#=ZHz@$v*<6@w6`?I5F4kv>|wldj%up;ApY7O{18SHh+>1##3q^)lH0UwUp zgU{1hoj0l^Z-g&enI8v?EA&9*JI5j4*(&)?hVz}B!o9?g&kOHAPs!mfxQ{JtW8$~` z_$b$Mt~6j%wh99r!xaBW24?7Fmhve7UeIpDER)gc{4APJF}Jae6DxK5rG-CmvXAQB zy8SxEH?+w8lwIrN^kX!h;@pP)&NklF%04dIm$*>AqU8??`MQ>ux%6?f{wF?Z{*s%V zvTx@;>IZxb?tP~3tqtA#9qaa2eSCBJSEe}v4RV3K2TTymB&DMSW|P+`J|EMN1Q-+C vW4>HJ;do9&wSYJvqC|Zg9w{(srSLudbm-4Q=^uCo?i-jp&(lrnN_g-eGq#Yq diff --git a/bin/TimeTable/Period.class b/bin/TimeTable/Period.class deleted file mode 100644 index cb6bfd47232d8ed319c9996e4dda8aa724837ac2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2654 zcma)7`%@EF7(F*+vq@M{qGE$Zd?50sRa=E9))y^p0NYSBYHgQffyJ;JHyf0;R{MUx zUo-v#{@Qjbs7yQkx&KmUwCC<7BtSY-GQ-}z-~C?aJLm4-j~@OB;0S(J5fIoiVa^*9 z`c%&7KW8|momCO!?wr1$_vdtLrhj~D&d9g|THZ5{73Zf6M__BRa%9AEjTys92t*35 z?zl1}V!XwvMWTQ?6rLGl@=rtLU1!{-jxO=@dPC zBV*)U)3ypKb_le1U7B|Pu$eQ)Yc3KN{13Eb`sy} zOi?tWMMAMlV0*2wlPY!#G{i%#@S%wouEA~pqeYBPwOVuYj>9n7dt2mu>9DPxC z9z`1(q;H3YPIL)`E#rnOXCSbxqlA-3hZ1yQ^azNaDEjb}ivBf>@sDVD8V3cGLOy4b zJ_l-bacSdBR2&v)sEkvtqBw+>D7YWRQ4FdWD7WsFRHC1T1dfqo3wo|-j8FeZ%BqZI z+C~_8NP~iqTs@~jMOdy*X^0?Pk24rnahBODz)8$BJdYPhU_F~%HzZ#&iO!1>(HAwm zge2)Ws~5&rK_%@y>zIad$#*4_vkL?}JWZZiy3|jss?-wd6pFO76yH{!tU#cUS=D4U zAEfAf;Zg%ze6MQ02Xo$xBl6*~fl+Eqg~FJoU<?;&MWUKA(sp2TR3#Rb5qP4YpLYnwK6qp1Z~|m+P0E zpLa}Gia3uJ$vbkahy}7j?&_}1d$*~qMh}{i(te^IH}Iy4#d5qgRt<0AZE{CydcB@Y zTvhQ7V|%4|nmRqJJ1OH@(XcXjQbMd;mqUPAAnvVueDxDq_LjAsTz z{)^(hs4Eckd3G=y566|dgZFXd9*%Pzx`z{dsP}NPHy(a~(*c}k(2+Zj@A5I)`-@kc zY~+;JLL-Zc@wb(quWe{y@%vbK4|ZUH4_^#_*}YwC2;5QLqh$nq)gDGOcz-Nw6m`RM683WPNLt%E<0IxH&N(7 z7QL9I%p|Q2vs4gkiJAN}J#2Zq5wY*^J)3LinIDKx9sNTdqRJ{#zULMCNu+il@EALx W5G56TDwU*CVHhH$Khhk)PyYf_0(gl4 diff --git a/bin/TimeTable/Subject.class b/bin/TimeTable/Subject.class deleted file mode 100644 index 71432340a806e0944e72f8aa08f600a1d1daab50..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2716 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 diff --git a/bin/TimeTable/TimeTable.class b/bin/TimeTable/TimeTable.class deleted file mode 100644 index 449813c95f5a66892750fbe447a74d32ce7dcaa4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3597 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 diff --git a/file.java b/file.java deleted file mode 100644 index 0858086..0000000 --- a/file.java +++ /dev/null @@ -1,23 +0,0 @@ -MONDAY,1,FMA, -MONDAY,2,INF, -MONDAY,3,MAM, -MONDAY,4,MAM, -MONDAY,6,JAP, -TUESDAY,1,FMA, -TUESDAY,2,FMA, -TUESDAY,3,JAP, -TUESDAY,4,JAP, -WEDNESDAY,1,JAP, -WEDNESDAY,2,JAP, -THURSDAY,1,FMA, -THURSDAY,2,FMA, -THURSDAY,3,INF, -THURSDAY,4,INF, -THURSDAY,5,ENG, -THURSDAY,6,ENG, -FRIDAY,1,MAM, -FRIDAY,2,MAM, -FRIDAY,3,ENG, -FRIDAY,4,ENG, -FRIDAY,5,INF, -FRIDAY,6,INF, diff --git a/out/production/TimeTableDataModel/TimeTable/SubjectProvider.class b/out/production/TimeTableDataModel/TimeTable/SubjectProvider.class new file mode 100644 index 0000000000000000000000000000000000000000..4e2f83f2f88e3c8f24f23507e903a2c9ee595012 GIT binary patch literal 916 zcmZuv+iuf95IvKcxN)|m4J9GH5K6h^0{8*m992SXe`dd%T*zrm zC=Zmc;uFF~r#r4-6BQGdKox?}I#Y9b=1x3mj}nc49|o7|T!sX58u+pN#0&?+6)d+- z7q^au+o+k?7T7_Zu$Keu+{&PYotcdD=qL_CNjUCw3-nPMj8>@{_M5#(K?wT#7SGTC$NtLf`}H~$dcPPEBq(5iu-7rcpz|uhlIl$^%c>C z>Z-bk(B#VW)RI_v_UkZoKMz$DJN(X0K{w}IHoiM17^lHG_pmlpzI>a^Co3LFomx{b%kN9u(zM*xEL&6vK ZN=SLj`lhbA!~&IZbv35PvA(vR{RKB%;a>m% literal 0 HcmV?d00001 diff --git a/out/production/TimeTableDataModel/TimeTable/TimeTable.class b/out/production/TimeTableDataModel/TimeTable/TimeTable.class new file mode 100644 index 0000000000000000000000000000000000000000..7f81652c771643bd392bfcdc44e776737e528464 GIT binary patch literal 625 zcmaJ;T}#4H7=F%NTdw)hOv|*SJDt#efYOc7l~kYzUCw#1$=qO0>1P!rLP0;E9~Hf4 zlVx7Sf%lyEJP9kbA*|6Rq$1{BAiP^Du6R!RQB$ z?Tzfv6%B5Ka`fab7|J`6X$K@`OnJ1Ig5jds+JWzV6GYY3Zmp`!fhL`{V literal 0 HcmV?d00001 diff --git a/out/production/TimeTableDataModel/TimeTable/TimeTableContext.class b/out/production/TimeTableDataModel/TimeTable/TimeTableContext.class new file mode 100644 index 0000000000000000000000000000000000000000..a6d435ee47ce7a78bac20100bac9de2baca7a9ba GIT binary patch literal 786 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 K%>fB#aQF|jV)M2D literal 0 HcmV?d00001 diff --git a/out/production/TimeTableDataModel/TimeTable/models/Time.class b/out/production/TimeTableDataModel/TimeTable/models/Time.class new file mode 100644 index 0000000000000000000000000000000000000000..41d0be9956a5ad07a7ae5efc7ad9118615e3ea78 GIT binary patch literal 2959 zcma)8T~`xV6x~At6T?tVzyKmN&>~472Ek8=QUwGwsBI_~Dbyj1VKABCWTII6+W*mq zuH|dHRz+63Y~TAE`ZM}myYI{-nPBMZOYXgA=Ipc2Is2Z;pa1;&JAgD^1+MQpM7?Rw$>0L4to!c??2WL8owU-6>Vfa*&v( z6-3ZYZe`6{6h^_IiFbTeFz8iqM)=D`-Kbcajc`^$zd#5QVc9W@S3gz|wO=i3xstKX zSBLP4j87E|tIhHdg}gGl1MjFf_LT#(Rh2d!9oA!V{9`>6-2Wof3tgmR_go?c)D zliuvJmZ=;0X}2LCI!=oKlL{{4k|>I5<#t4)C%qW6JF1!0o>ep>r!_%ZcASWG1y^NU zQ!s_;CRE+`YGK$Yis(@g*KtF}jL^|%4YIpcDit)9xkX}+yoz$|40s*46wHcf%9iu8 ztYL+!# z4QjcW`;v^$B@ES7vQ#K&d9`rU%vXw%J_<9tH<`XFn~wAX2atX+oC{UE7-s$ zwd+7jxYi^YZz&wHS9M^|hgx+O@K}M0E#mK%barmu3+5#;?S*W3;O(>vOt@Lj2ni=M zx}n{x6t^_f9vu?GnNm(Itg5CiMu}_mTRS?{)tzZNW2lyntfl6jE~|U4gPhl_IeYG$ zj(Ov|gO45ozTr-nAh+(A;LPB`z1b4d-fXMB9u@tEDb7~PhW5f4f}P&#)Qcd5AyTgQ zwf0Qjs}6!*=W&y(-Z)jOw}`n}B?m`BS3~+W^mbFTDyHF%{$Q44HmBXTr_Bk$_`G0* zK~B6OeoOqkC7kixwTNMDuN=De%8AOg9aJZ}`J3bE6?}XXNRA#rI@R+d2A$3JA>>RV z@eA5%_dn+84ccG7|0^;22BDwn;KMe5Bm7{8ap3B0Y5? zeJ+uKqeOa1-s5w4{-Uj$M~XimSw0wTdqM#7&D`@;2KzXag$F3vP)e zJZyv1O`=g2NWNp>a1 z4$zlK9$-Y&+9|~uv~fR9j|`UBUmI(g;|Na7eUK=LiuGVG8SYcWrm<$ zMFqs26n%I|FQL7DPai^VKYHBN7QNF5XAI1d$UGZyo5EjUVHZ8k?yqU|IbOIyzGqO; zg8A@V+dDj5^M%*^?=ZCHqu@i?L#$`l{2o(}V`}x725i$IzR8T%l@_+^aR)KnWzFue ZUKyJR^A^EeBC|a0+jWxglJ*vS`!8cMXte+U literal 0 HcmV?d00001 diff --git a/out/production/TimeTableDataModel/TimeTable/models/WeekDay.class b/out/production/TimeTableDataModel/TimeTable/models/WeekDay.class new file mode 100644 index 0000000000000000000000000000000000000000..0fed9ce1e962667d192e16fe6fccbc9f21364531 GIT binary patch literal 2068 zcmaJ?>r&fB6#f=pBr5_O5eN_tdvQ13Vi!j0nWQo{vrsPff z0R5jjEo7Q$o8NtvzC)*HS8{MmsAjD7clO-&oNtf*{QKA60nEaY(8183x2k5|*s;xY z)!jAidV0$=50{MN7#PATB8W0X*IZ}UIA$2kU8J7j`m%}`*O&4QvrYzFc1eZGWw9-D z*Lf@LQqj$&a(=&2YpGsVp^0!SH7l^bqM}#m>4w*+1;VQ;`h}j};A!zFgDS3Jh$4>{ z7jlJVo#EQ!i*r>lg6k57RE**VL!@lGj>&K(k<1+!&y2KfIFG74^DT*56C zw{eG|>r7$UX;dlVGsA9}8+!~hi8kv++o;zwZ35k^SxzO>9)UX${*x+FxJz}OwH(Wv zW9Vyl6E_dh>6Fb(a$ClyoC(wn zvX}80r@->kdH@%A?^g?({^lYDTG`AB#bw&j7xINofxe&}y}(nDkYyM3GZEm(3&3avd2D7&@1X<59=;M)zFeh=NtD@fxo)^tPwmYD!T?M4{q-#g#T0 z67NvTo-cEf>|!!h8Qn588ND+4xtnbjkMV@FQILZQHJnKP4K!R1FQz!Bg?GC(zeaeKreT%YU^o!|M#o?EWqRO7z;)k+V zbE_@Tse4BGaLqUhyvVaRx?lx*=bH%bLs2U8MDc;)o zX)51MnoqI$0X};GT4|<;mF9?8X>y2_hJ{#ZLWq@y0$FPOegN@7J`o5@WdAjukl$|z zjnT>j(IKRY#!{~^_6CgWcl=A=Ac^X0VTZ@2 zeWDS)dBjzO5at@GyF;f)q$YpC#7{zp$LykA;4;P5a0xx&zWT_Ldn}9d@PE7HH3XBS z9ayJGdzcCGOVi3v6iNMziT|c{Rk-t0iv;dssJuPgU*wb_37uyBE!N#;PywN zEPtN9Ca2m)NZUBY!3@WOU8#T)CJE0{86H5vHZkmg%H0t#>5z)Y8CCrU0$`~9 literal 0 HcmV?d00001 diff --git a/out/production/TimeTableDataModel/TimeTable/plugins/ObjectTimetableStore.class b/out/production/TimeTableDataModel/TimeTable/plugins/ObjectTimetableStore.class new file mode 100644 index 0000000000000000000000000000000000000000..ee608670e755480308347bbf855622f93dacdcf4 GIT binary patch literal 2481 zcma)7+fEZf82+Y5DCHn$6r>>x!x0!OdqQp3t{ZP#E%T;qJ8ns`4`eYYsnge1%Whscvi2m4VOi^O+MX#V zjZuNwP~4F!ju8|*)ilNh=7XByHyuZu_QwFvZ9>{`Qg z+cNHsF5Z4QWVmWxSarvUdMO>21lGF*DsvuWqf3bI*25g-b)ZuB#lo3D;+P=>2FrHC zdf&b}w_4sOL14JtteW*Rvt`RqfL~0wA8j6dJ~D*=ePlR`@qcMk_YzO!3%cR)P^^i!2ff!v)l8+?ZdI*!cAekSDRrGoqv5^0CNE*k z@rI2dff0;h0#k@{$J-qO&-fb=!!-YRB?tQ%?s**t`{&4Toy08bIU+vunc#D@_yeN2 ze2a8( za-HK-bxqTW>XI(yY8cP?RwY^D+n31uK2P|RJt@y)=uG}3f~k|3@!X87uE0&ocO#YM z6v)7eR8}elu8Mk<{!Wz~RpuU0Q8SOK4ARk^$}(3gdX>nORh9*+EIy#3PBN+@Cw8Z@ z%GDYSP9Vpe26r-VviKe8uUy2uqfB|lf+wH`lJtkA2C~lg8(Nb7PLj0;Nj6Ecr6n2a yB-wh9WSb7q;rG3KaXW0Bz Y7!n8_{{#;Q>69aUn)6>}K*N z^S*gJZ+8F@0v98~DwUN;d8PzwO`}E2k}fMnZj#=)m=NYAzi_5_U9i(|A_Rpn?_5h* zt~c?J>5NqDpf$h7vNa*WOJq@V(`iB2{ZB>lm!N9SLVXCry>0N5rqj7NN@Xh+ziiw7 Zr9&W$?H+(E>J*Oku5}~KtnvoszW`V|LpT5c literal 0 HcmV?d00001 diff --git a/out/production/TimeTableDataModel/TimeTable/stores/TimeTableStore.class b/out/production/TimeTableDataModel/TimeTable/stores/TimeTableStore.class new file mode 100644 index 0000000000000000000000000000000000000000..0fb075be1efae70b50fde17a93f0ce661112031d GIT binary patch literal 320 zcmZvYO$x#=5QX1VZT(l!y}A+I*aPTJa3v_z3q&2H5)Cx1hjZZpJd~J*S_*cPVP@X< zn3wnG`2w&)$Ad!{9l{$Q#8I-ZV->OX^FfgI9;$@?RXl_*#r@*%j#oa#gzkmoJx8HB zTNz7;0#!wG>(htaYgF89FUP|8$0L1}ce8ya^=} l2KkBBW|0PS351II6QE+k*5D!y?V)aK15L9bw9M loadClasses(String filename) throws FileNotFoundException { - File file = new File(filename); - Scanner sc = new Scanner(file); - List classes = new ArrayList(); - while(sc.hasNextLine()) { - String line = sc.nextLine(); - String[] lineArray = line.split(","); - - ClassSession session = new ClassSession(); - session.day = WeekDay.fromString(lineArray[0]); - Integer intPNum = Integer.valueOf(lineArray[1]); - Optional a = TimeTable.datastore.periods.stream().filter(p -> p.periodNumber == intPNum).findFirst(); - // System.out.println(TimeTable.datastore.periods.size()); - if (a.isPresent()) { - session.period = a.get(); - } - String tempSubjectName = lineArray[2]; - Optional s = TimeTable.datastore.subjects.stream().filter(x -> x.shortname.matches(tempSubjectName)).findFirst(); - if (s.isPresent()) { - session.subject= s.get(); - } - classes.add(session); - } - return classes; - } - public static void saveToFile(List classes, String filename) { - System.out.println(filename); - try { - FileWriter fw = new FileWriter(filename); - for (ClassSession sesh : classes) { - String line = String.join(",", sesh.day.toString().toUpperCase(), String.valueOf(sesh.period.periodNumber), sesh.subject.shortname, "\n"); - fw.write(line); - } - fw.close(); - } catch (Exception e) { - System.out.println(e); - } - System.out.println("Succesfully written to file"); - - } - public ClassSession() { - } - public ClassSession(Subject subject, Period period, WeekDay day) { - this.subject = subject; - this.period = period; - this.day = day; - } - - public String getSummary() { - String name = this.subject.name; - String teacher = this.subject.teacher; - String startTime = this.period.startTime.toString(); - String endTime = this.period.endTime.toString(); - String returnValue = String.join(", ", name, teacher, startTime, endTime); - return returnValue; - } -} \ No newline at end of file diff --git a/src/TimeTable/DatabaseConnection.java b/src/TimeTable/DatabaseConnection.java deleted file mode 100644 index dc862ff..0000000 --- a/src/TimeTable/DatabaseConnection.java +++ /dev/null @@ -1,29 +0,0 @@ -package TimeTable; -import java.sql.Connection; -import java.sql.DriverManager; -import java.sql.SQLException; -import java.util.Properties; - -class DatabaseConnection { - String user; - String password; - String dbms; - String serverName; - String dbName; - String portNumber; - public Connection getConection() throws SQLException { - Connection conn = null; - var connectionProps = new Properties(); - connectionProps.put("user", this.user); - connectionProps.put("password", this.password); - - if (this.dbms.equals("mysql")) { - conn = DriverManager.getConnection("jdbc:" + this.dbms + "://" + this.serverName + ":" + this.portNumber + "/", connectionProps); - - } else if (this.dbms.equals("derby")) { - conn = DriverManager.getConnection("jdbc:" + this.dbms + ":" + this.dbName + ";create=true", connectionProps); - } - System.out.println("Connected to database"); - return conn; - } -} \ No newline at end of file diff --git a/src/TimeTable/Subject.java b/src/TimeTable/Subject.java deleted file mode 100644 index 1157f85..0000000 --- a/src/TimeTable/Subject.java +++ /dev/null @@ -1,54 +0,0 @@ -package TimeTable; - -import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileWriter; -import java.io.IOException; -import java.util.ArrayList; -import java.util.List; -import java.util.Scanner; - -class Subject { - public String name; - public String shortname; - public String teacher; - public String colour; - - public static List loadSubjects(String filename) throws FileNotFoundException { - List subjects = new ArrayList(); - File file = new File(filename); - Scanner sc = new Scanner(file); - while (sc.hasNextLine()) { - String line = sc.nextLine(); - String[] lineArray = line.split(","); - Subject s = new Subject(lineArray[0], lineArray[1], lineArray[2]); - s.colour = "Violet"; - subjects.add(s); - } - sc.close(); - return subjects; - } - - public static void saveToFile(List subjects, String filename) throws FileNotFoundException, IOException { - System.out.println(filename); - FileWriter fw = new FileWriter(filename); - for (Subject subject : subjects) { - String line = String.join(",", subject.shortname, subject.name, subject.teacher, "\n"); - fw.write(line); - } - fw.close(); - } - - public Subject(String shortname, String name, String teacher, String colour) { - this.name = name; - this.shortname = shortname; - this.teacher = teacher; - this.colour = colour; - } - - public Subject(String shortname, String name, String teacher) { - this.name = name; - this.shortname = shortname; - this.teacher = teacher; - } -} \ No newline at end of file diff --git a/src/TimeTable/SubjectProvider.java b/src/TimeTable/SubjectProvider.java new file mode 100644 index 0000000..67f61bd --- /dev/null +++ b/src/TimeTable/SubjectProvider.java @@ -0,0 +1,21 @@ +package TimeTable; + +import TimeTable.models.Subject; +import TimeTable.stores.SubjectStore; + +import java.util.ArrayList; + +public class SubjectProvider { + private TimeTableContext context; + private SubjectStore subjectStore; + + protected SubjectProvider(TimeTableContext context) { + this.context = context; + this.subjectStore = context.getTimeTableStore().getSubjectStore(); + } + + public ArrayList getSubjects() { + return subjectStore.getSubjects(); + } + +} diff --git a/src/TimeTable/TimeTable.java b/src/TimeTable/TimeTable.java index b1aaa38..fc100d0 100644 --- a/src/TimeTable/TimeTable.java +++ b/src/TimeTable/TimeTable.java @@ -1,39 +1,14 @@ package TimeTable; - -import java.util.List; -import java.util.Optional; -import java.util.stream.Collectors; -import java.io.FileNotFoundException; -import java.util.ArrayList; -import java.util.Collections; - public class TimeTable { - public List periods; - public List subjects = new ArrayList(); - public List classes = new ArrayList(); - public static TimeTable datastore; - - public TimeTable(String periodfile, String subjectsfile) throws Exception { - periods = Period.loadPeriods(periodfile); - subjects = Subject.loadSubjects(subjectsfile); - - } - public static List getClassesByDay(WeekDay day) { - List classes = new ArrayList(); - datastore.classes.stream().filter(c -> c.day == day).forEach(c -> classes.add(c)); - return classes; + private TimeTableContext context; + private SubjectProvider subjectProvider; + + TimeTable(TimeTableContext context) { + this.context = context; + this.subjectProvider = new SubjectProvider(context); } - public static List getClassesBySubject (Subject subject) { - List classes = new ArrayList(); - datastore.classes.stream().filter(c -> c.subject == subject).forEach(c -> classes.add(c)); - return classes; - }; - public static void main(String[] args) throws Exception { - // Load the data store into the computer - datastore = new TimeTable("./periods.csv", "./subjects.csv"); - // Load the classes into the data store due to async issues in java this needs to be done after init. - datastore.classes = ClassSession.loadClasses("./classes.csv"); - Subject.saveToFile(datastore.subjects, "subjects.csv"); + public SubjectProvider getSubjectProvider() { + return subjectProvider; } } \ No newline at end of file diff --git a/src/TimeTable/TimeTableContext.java b/src/TimeTable/TimeTableContext.java new file mode 100644 index 0000000..560392b --- /dev/null +++ b/src/TimeTable/TimeTableContext.java @@ -0,0 +1,22 @@ +package TimeTable; + +import TimeTable.stores.TimeTableStore; + +public class TimeTableContext { + private TimeTableStore timeTableStore; + private TimeTable timeTable; + + TimeTableContext(TimeTableStore timeTableStore) { + this.timeTableStore = timeTableStore; + timeTable = new TimeTable(this); + } + + public TimeTableStore getTimeTableStore() { + return timeTableStore; + } + + public TimeTable getTimeTable() { + return timeTable; + } + +} diff --git a/src/TimeTable/TimeTableFactory.java b/src/TimeTable/TimeTableFactory.java new file mode 100644 index 0000000..bdc1dfc --- /dev/null +++ b/src/TimeTable/TimeTableFactory.java @@ -0,0 +1,25 @@ +package TimeTable; + +import TimeTable.models.Subject; +import TimeTable.plugins.ObjectTimetableStore; +import TimeTable.stores.TimeTableStore; + +import java.util.ArrayList; + +public class TimeTableFactory { + public static TimeTable createTimeTable() { + ArrayList subjects = new ArrayList(); + Subject subject = new Subject("Further Mats", "FMA", "Read"); + subjects.add(subject); + TimeTableStore store = new ObjectTimetableStore(null, null, subjects); + + TimeTable timeTable = new TimeTableContext(store).getTimeTable(); + + timeTable.getSubjectProvider().getSubjects().forEach(subject1 -> System.out.println(subject1)); + return timeTable; + } + + public static void main(String[] args) { + createTimeTable(); + } +} diff --git a/src/TimeTable/models/ClassSession.java b/src/TimeTable/models/ClassSession.java new file mode 100644 index 0000000..7533c60 --- /dev/null +++ b/src/TimeTable/models/ClassSession.java @@ -0,0 +1,49 @@ +package TimeTable.models; + +public class ClassSession { + private Subject subject; + private Period period; + private WeekDay day; + + public Subject getSubject() { + return subject; + } + + public void setSubject(Subject subject) { + this.subject = subject; + } + + public Period getPeriod() { + return period; + } + + public void setPeriod(Period period) { + this.period = period; + } + + public WeekDay getDay() { + return day; + } + + public void setDay(WeekDay day) { + this.day = day; + } + + public ClassSession() { + } + public ClassSession(Subject subject, Period period, WeekDay day) { + this.subject = subject; + this.period = period; + this.day = day; + } + + @Override + public String toString() { + String name = this.subject.getName(); + String teacher = this.subject.getTeacher(); + String startTime = this.period.getStartTime().toString(); + String endTime = this.period.getEndTime().toString(); + String returnValue = String.join(", ", name, teacher, startTime, endTime); + return returnValue; + } +} diff --git a/src/TimeTable/models/Period.java b/src/TimeTable/models/Period.java new file mode 100644 index 0000000..ad83cab --- /dev/null +++ b/src/TimeTable/models/Period.java @@ -0,0 +1,31 @@ +package TimeTable.models; + +public class Period { + private int periodNumber; + private Time startTime; + private Time endTime; + + public int getPeriodNumber() { + return periodNumber; + } + + public void setPeriodNumber(int periodNumber) { + this.periodNumber = periodNumber; + } + + public Time getStartTime() { + return startTime; + } + + public void setStartTime(Time startTime) { + this.startTime = startTime; + } + + public Time getEndTime() { + return endTime; + } + + public void setEndTime(Time endTime) { + this.endTime = endTime; + } +} diff --git a/src/TimeTable/models/Subject.java b/src/TimeTable/models/Subject.java new file mode 100644 index 0000000..beadc18 --- /dev/null +++ b/src/TimeTable/models/Subject.java @@ -0,0 +1,55 @@ +package TimeTable.models; + +public class Subject { + private String name; + private String shortname; + private String teacher; + private String colour; + + public Subject(String name, String shortname, String teacher) { + this.name = name; + this.shortname = shortname; + this.teacher = teacher; + this.colour = "purple"; + } + + public Subject() { + + } + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getShortname() { + return shortname; + } + + public void setShortname(String shortname) { + this.shortname = shortname; + } + + public String getTeacher() { + return teacher; + } + + public void setTeacher(String teacher) { + this.teacher = teacher; + } + + public String getColour() { + return colour; + } + + public void setColour(String colour) { + this.colour = colour; + } + + public String toString() { + String line = String.join(",", shortname, name, teacher); + return line; + } +} diff --git a/src/TimeTable/Time.java b/src/TimeTable/models/Time.java similarity index 75% rename from src/TimeTable/Time.java rename to src/TimeTable/models/Time.java index a713830..785db15 100644 --- a/src/TimeTable/Time.java +++ b/src/TimeTable/models/Time.java @@ -1,11 +1,11 @@ -package TimeTable; +package TimeTable.models; import java.util.regex.Pattern; -class Time { - public Integer days; - public Integer hours; - public Integer minutes; - public Integer seconds; +public class Time { + private Integer days; + private Integer hours; + private Integer minutes; + private Integer seconds; public void setHours(Integer hours) { while (hours > 24) { @@ -29,7 +29,23 @@ public void setSeconds(Integer seconds) { this.seconds = seconds; } - public Time(Integer hours, Integer minutes, Integer seconds) { + public Integer getDays() { + return days; + } + + public Integer getHours() { + return hours; + } + + public Integer getMinutes() { + return minutes; + } + + public Integer getSeconds() { + return seconds; + } + + public Time(Integer hours, Integer minutes, Integer seconds) { this.days = 0; setHours(hours); setMinutes(minutes); @@ -55,7 +71,8 @@ public Time() { this.seconds = 0; } public String toString() { - String returnValue = String.join(":", String.format("%02d", this.hours), String.format("%02d", this.minutes) , String.format("%02d", this.seconds)); + String returnValue = String.join(":", String.format("%02d", this.hours), + String.format("%02d", this.minutes) , String.format("%02d", this.seconds)); return returnValue; } } \ No newline at end of file diff --git a/src/TimeTable/WeekDay.java b/src/TimeTable/models/WeekDay.java similarity index 98% rename from src/TimeTable/WeekDay.java rename to src/TimeTable/models/WeekDay.java index b6a7394..0cae0d5 100644 --- a/src/TimeTable/WeekDay.java +++ b/src/TimeTable/models/WeekDay.java @@ -1,4 +1,4 @@ -package TimeTable; +package TimeTable.models; public enum WeekDay { // Define the properties which the Enumerator can take @@ -42,6 +42,4 @@ public static WeekDay fromString(String dayname) { throw new IllegalArgumentException("Day not found"); } } - - } \ No newline at end of file diff --git a/src/TimeTable/period.java b/src/TimeTable/period.java deleted file mode 100644 index 701ef3b..0000000 --- a/src/TimeTable/period.java +++ /dev/null @@ -1,47 +0,0 @@ -package TimeTable; - -import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileWriter; -import java.io.IOException; -import java.util.ArrayList; -import java.util.List; -import java.util.Scanner; - -class Period { - public Integer periodNumber; - public Time startTime; - public Time endTime; - - public static List loadPeriods(String filename) throws FileNotFoundException { - File file = new File(filename); - Scanner sc = new Scanner(file); - List periods = new ArrayList(); - while (sc.hasNextLine()) { - String line = sc.nextLine(); - String[] lineArray = line.split(","); - Time startTime = new Time(lineArray[1]); - Time finishTime = new Time(lineArray[2]); - Period p = new Period(); - p.periodNumber = Integer.valueOf(lineArray[0]); - - // System.out.println(p.periodNumber); - p.startTime = startTime; - p.endTime = finishTime; - periods.add(p); - } - sc.close(); // CLose the scanner - return periods; - } - - public static void saveToFile(List periods, String filename) throws FileNotFoundException, IOException { - System.out.println(filename); - FileWriter fw = new FileWriter(filename); - for (Period period : periods) { - String line = String.join(",", String.valueOf(period.periodNumber), period.startTime.toString(), - period.endTime.toString(), "\n"); - fw.write(line); - } - fw.close(); - } -} \ No newline at end of file diff --git a/src/TimeTable/plugins/ObjectTimetableStore.java b/src/TimeTable/plugins/ObjectTimetableStore.java new file mode 100644 index 0000000..6e18d71 --- /dev/null +++ b/src/TimeTable/plugins/ObjectTimetableStore.java @@ -0,0 +1,68 @@ +package TimeTable.plugins; + +import TimeTable.models.ClassSession; +import TimeTable.models.Period; +import TimeTable.models.Subject; +import TimeTable.stores.ClassSessionStore; +import TimeTable.stores.PeriodStore; +import TimeTable.stores.SubjectStore; +import TimeTable.stores.TimeTableStore; + +import java.util.ArrayList; + +public class ObjectTimetableStore implements TimeTableStore, ClassSessionStore, PeriodStore, SubjectStore { + private ArrayList classSessions; + private ArrayList periods; + private ArrayList subjects; + + public ObjectTimetableStore(ArrayList classSessions, + ArrayList periods, + ArrayList subjects) { + this.classSessions = classSessions; + this.periods = periods; + this.subjects = subjects; + } + + + public void setClassSessions(ArrayList classSessions) { + this.classSessions = classSessions; + } + + public void setPeriods(ArrayList periods) { + this.periods = periods; + } + + public void setSubjects(ArrayList subjects) { + this.subjects = subjects; + } + + @Override + public ArrayList getClassSessions() { + return classSessions; + } + + @Override + public ArrayList getPeriods() { + return periods; + } + + @Override + public ArrayList getSubjects() { + return subjects; + } + + @Override + public PeriodStore getPeriodStore() { + return this; + } + + @Override + public SubjectStore getSubjectStore() { + return this; + } + + @Override + public ClassSessionStore getClassSessionStore() { + return this; + } +} diff --git a/src/TimeTable/stores/ClassSessionStore.java b/src/TimeTable/stores/ClassSessionStore.java new file mode 100644 index 0000000..4bf78f5 --- /dev/null +++ b/src/TimeTable/stores/ClassSessionStore.java @@ -0,0 +1,9 @@ +package TimeTable.stores; + +import TimeTable.models.ClassSession; + +import java.util.ArrayList; + +public interface ClassSessionStore { + public ArrayList getClassSessions(); +} diff --git a/src/TimeTable/stores/PeriodStore.java b/src/TimeTable/stores/PeriodStore.java new file mode 100644 index 0000000..1792ff6 --- /dev/null +++ b/src/TimeTable/stores/PeriodStore.java @@ -0,0 +1,10 @@ +package TimeTable.stores; + +import TimeTable.models.Period; + +import java.util.ArrayList; + +public interface PeriodStore { + public ArrayList getPeriods(); + +} diff --git a/src/TimeTable/stores/SubjectStore.java b/src/TimeTable/stores/SubjectStore.java new file mode 100644 index 0000000..348dd46 --- /dev/null +++ b/src/TimeTable/stores/SubjectStore.java @@ -0,0 +1,9 @@ +package TimeTable.stores; + +import TimeTable.models.Subject; + +import java.util.ArrayList; + +public interface SubjectStore { + public ArrayList getSubjects(); +} diff --git a/src/TimeTable/stores/TimeTableStore.java b/src/TimeTable/stores/TimeTableStore.java new file mode 100644 index 0000000..5a532bc --- /dev/null +++ b/src/TimeTable/stores/TimeTableStore.java @@ -0,0 +1,7 @@ +package TimeTable.stores; + +public interface TimeTableStore { + public PeriodStore getPeriodStore(); + public SubjectStore getSubjectStore(); + public ClassSessionStore getClassSessionStore(); +} diff --git a/test.csv b/test.csv index e69de29..25509ac 100644 --- a/test.csv +++ b/test.csv @@ -0,0 +1,5 @@ +ENG,English,Conway, +FMA,Further Maths,Read, +JAP,Japanese,Lyons, +MAM,Methods,Macharga, +INF,Informatics,Cummings, From 274128d4a93c9194cc6c4992b3112a74f39729c5 Mon Sep 17 00:00:00 2001 From: Jeremy Chrimes Date: Mon, 14 Mar 2022 18:13:44 +1100 Subject: [PATCH 2/2] Update gitignore --- .gitignore | 1 + .../TimeTable/SubjectProvider.class | Bin 916 -> 0 bytes .../TimeTableDataModel/TimeTable/TimeTable.class | Bin 625 -> 0 bytes .../TimeTable/TimeTableContext.class | Bin 786 -> 0 bytes .../TimeTable/TimeTableFactory.class | Bin 2329 -> 0 bytes .../TimeTable/models/ClassSession.class | Bin 2001 -> 0 bytes .../TimeTable/models/Period.class | Bin 971 -> 0 bytes .../TimeTable/models/Subject.class | Bin 1581 -> 0 bytes .../TimeTable/models/Time.class | Bin 2959 -> 0 bytes .../TimeTable/models/WeekDay.class | Bin 2068 -> 0 bytes .../TimeTable/plugins/ObjectTimetableStore.class | Bin 2481 -> 0 bytes .../TimeTable/stores/ClassSessionStore.class | Bin 264 -> 0 bytes .../TimeTable/stores/PeriodStore.class | Bin 240 -> 0 bytes .../TimeTable/stores/SubjectStore.class | Bin 244 -> 0 bytes .../TimeTable/stores/TimeTableStore.class | Bin 320 -> 0 bytes 15 files changed, 1 insertion(+) delete mode 100644 out/production/TimeTableDataModel/TimeTable/SubjectProvider.class delete mode 100644 out/production/TimeTableDataModel/TimeTable/TimeTable.class delete mode 100644 out/production/TimeTableDataModel/TimeTable/TimeTableContext.class delete mode 100644 out/production/TimeTableDataModel/TimeTable/TimeTableFactory.class delete mode 100644 out/production/TimeTableDataModel/TimeTable/models/ClassSession.class delete mode 100644 out/production/TimeTableDataModel/TimeTable/models/Period.class delete mode 100644 out/production/TimeTableDataModel/TimeTable/models/Subject.class delete mode 100644 out/production/TimeTableDataModel/TimeTable/models/Time.class delete mode 100644 out/production/TimeTableDataModel/TimeTable/models/WeekDay.class delete mode 100644 out/production/TimeTableDataModel/TimeTable/plugins/ObjectTimetableStore.class delete mode 100644 out/production/TimeTableDataModel/TimeTable/stores/ClassSessionStore.class delete mode 100644 out/production/TimeTableDataModel/TimeTable/stores/PeriodStore.class delete mode 100644 out/production/TimeTableDataModel/TimeTable/stores/SubjectStore.class delete mode 100644 out/production/TimeTableDataModel/TimeTable/stores/TimeTableStore.class diff --git a/.gitignore b/.gitignore index e43b0f9..42a67b1 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ .DS_Store +out/ \ No newline at end of file diff --git a/out/production/TimeTableDataModel/TimeTable/SubjectProvider.class b/out/production/TimeTableDataModel/TimeTable/SubjectProvider.class deleted file mode 100644 index 4e2f83f2f88e3c8f24f23507e903a2c9ee595012..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 916 zcmZuv+iuf95IvKcxN)|m4J9GH5K6h^0{8*m992SXe`dd%T*zrm zC=Zmc;uFF~r#r4-6BQGdKox?}I#Y9b=1x3mj}nc49|o7|T!sX58u+pN#0&?+6)d+- z7q^au+o+k?7T7_Zu$Keu+{&PYotcdD=qL_CNjUCw3-nPMj8>@{_M5#(K?wT#7SGTC$NtLf`}H~$dcPPEBq(5iu-7rcpz|uhlIl$^%c>C z>Z-bk(B#VW)RI_v_UkZoKMz$DJN(X0K{w}IHoiM17^lHG_pmlpzI>a^Co3LFomx{b%kN9u(zM*xEL&6vK ZN=SLj`lhbA!~&IZbv35PvA(vR{RKB%;a>m% diff --git a/out/production/TimeTableDataModel/TimeTable/TimeTable.class b/out/production/TimeTableDataModel/TimeTable/TimeTable.class deleted file mode 100644 index 7f81652c771643bd392bfcdc44e776737e528464..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 625 zcmaJ;T}#4H7=F%NTdw)hOv|*SJDt#efYOc7l~kYzUCw#1$=qO0>1P!rLP0;E9~Hf4 zlVx7Sf%lyEJP9kbA*|6Rq$1{BAiP^Du6R!RQB$ z?Tzfv6%B5Ka`fab7|J`6X$K@`OnJ1Ig5jds+JWzV6GYY3Zmp`!fhL`{V diff --git a/out/production/TimeTableDataModel/TimeTable/TimeTableContext.class b/out/production/TimeTableDataModel/TimeTable/TimeTableContext.class deleted file mode 100644 index a6d435ee47ce7a78bac20100bac9de2baca7a9ba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 786 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 K%>fB#aQF|jV)M2D diff --git a/out/production/TimeTableDataModel/TimeTable/models/Time.class b/out/production/TimeTableDataModel/TimeTable/models/Time.class deleted file mode 100644 index 41d0be9956a5ad07a7ae5efc7ad9118615e3ea78..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2959 zcma)8T~`xV6x~At6T?tVzyKmN&>~472Ek8=QUwGwsBI_~Dbyj1VKABCWTII6+W*mq zuH|dHRz+63Y~TAE`ZM}myYI{-nPBMZOYXgA=Ipc2Is2Z;pa1;&JAgD^1+MQpM7?Rw$>0L4to!c??2WL8owU-6>Vfa*&v( z6-3ZYZe`6{6h^_IiFbTeFz8iqM)=D`-Kbcajc`^$zd#5QVc9W@S3gz|wO=i3xstKX zSBLP4j87E|tIhHdg}gGl1MjFf_LT#(Rh2d!9oA!V{9`>6-2Wof3tgmR_go?c)D zliuvJmZ=;0X}2LCI!=oKlL{{4k|>I5<#t4)C%qW6JF1!0o>ep>r!_%ZcASWG1y^NU zQ!s_;CRE+`YGK$Yis(@g*KtF}jL^|%4YIpcDit)9xkX}+yoz$|40s*46wHcf%9iu8 ztYL+!# z4QjcW`;v^$B@ES7vQ#K&d9`rU%vXw%J_<9tH<`XFn~wAX2atX+oC{UE7-s$ zwd+7jxYi^YZz&wHS9M^|hgx+O@K}M0E#mK%barmu3+5#;?S*W3;O(>vOt@Lj2ni=M zx}n{x6t^_f9vu?GnNm(Itg5CiMu}_mTRS?{)tzZNW2lyntfl6jE~|U4gPhl_IeYG$ zj(Ov|gO45ozTr-nAh+(A;LPB`z1b4d-fXMB9u@tEDb7~PhW5f4f}P&#)Qcd5AyTgQ zwf0Qjs}6!*=W&y(-Z)jOw}`n}B?m`BS3~+W^mbFTDyHF%{$Q44HmBXTr_Bk$_`G0* zK~B6OeoOqkC7kixwTNMDuN=De%8AOg9aJZ}`J3bE6?}XXNRA#rI@R+d2A$3JA>>RV z@eA5%_dn+84ccG7|0^;22BDwn;KMe5Bm7{8ap3B0Y5? zeJ+uKqeOa1-s5w4{-Uj$M~XimSw0wTdqM#7&D`@;2KzXag$F3vP)e zJZyv1O`=g2NWNp>a1 z4$zlK9$-Y&+9|~uv~fR9j|`UBUmI(g;|Na7eUK=LiuGVG8SYcWrm<$ zMFqs26n%I|FQL7DPai^VKYHBN7QNF5XAI1d$UGZyo5EjUVHZ8k?yqU|IbOIyzGqO; zg8A@V+dDj5^M%*^?=ZCHqu@i?L#$`l{2o(}V`}x725i$IzR8T%l@_+^aR)KnWzFue ZUKyJR^A^EeBC|a0+jWxglJ*vS`!8cMXte+U diff --git a/out/production/TimeTableDataModel/TimeTable/models/WeekDay.class b/out/production/TimeTableDataModel/TimeTable/models/WeekDay.class deleted file mode 100644 index 0fed9ce1e962667d192e16fe6fccbc9f21364531..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2068 zcmaJ?>r&fB6#f=pBr5_O5eN_tdvQ13Vi!j0nWQo{vrsPff z0R5jjEo7Q$o8NtvzC)*HS8{MmsAjD7clO-&oNtf*{QKA60nEaY(8183x2k5|*s;xY z)!jAidV0$=50{MN7#PATB8W0X*IZ}UIA$2kU8J7j`m%}`*O&4QvrYzFc1eZGWw9-D z*Lf@LQqj$&a(=&2YpGsVp^0!SH7l^bqM}#m>4w*+1;VQ;`h}j};A!zFgDS3Jh$4>{ z7jlJVo#EQ!i*r>lg6k57RE**VL!@lGj>&K(k<1+!&y2KfIFG74^DT*56C zw{eG|>r7$UX;dlVGsA9}8+!~hi8kv++o;zwZ35k^SxzO>9)UX${*x+FxJz}OwH(Wv zW9Vyl6E_dh>6Fb(a$ClyoC(wn zvX}80r@->kdH@%A?^g?({^lYDTG`AB#bw&j7xINofxe&}y}(nDkYyM3GZEm(3&3avd2D7&@1X<59=;M)zFeh=NtD@fxo)^tPwmYD!T?M4{q-#g#T0 z67NvTo-cEf>|!!h8Qn588ND+4xtnbjkMV@FQILZQHJnKP4K!R1FQz!Bg?GC(zeaeKreT%YU^o!|M#o?EWqRO7z;)k+V zbE_@Tse4BGaLqUhyvVaRx?lx*=bH%bLs2U8MDc;)o zX)51MnoqI$0X};GT4|<;mF9?8X>y2_hJ{#ZLWq@y0$FPOegN@7J`o5@WdAjukl$|z zjnT>j(IKRY#!{~^_6CgWcl=A=Ac^X0VTZ@2 zeWDS)dBjzO5at@GyF;f)q$YpC#7{zp$LykA;4;P5a0xx&zWT_Ldn}9d@PE7HH3XBS z9ayJGdzcCGOVi3v6iNMziT|c{Rk-t0iv;dssJuPgU*wb_37uyBE!N#;PywN zEPtN9Ca2m)NZUBY!3@WOU8#T)CJE0{86H5vHZkmg%H0t#>5z)Y8CCrU0$`~9 diff --git a/out/production/TimeTableDataModel/TimeTable/plugins/ObjectTimetableStore.class b/out/production/TimeTableDataModel/TimeTable/plugins/ObjectTimetableStore.class deleted file mode 100644 index ee608670e755480308347bbf855622f93dacdcf4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2481 zcma)7+fEZf82+Y5DCHn$6r>>x!x0!OdqQp3t{ZP#E%T;qJ8ns`4`eYYsnge1%Whscvi2m4VOi^O+MX#V zjZuNwP~4F!ju8|*)ilNh=7XByHyuZu_QwFvZ9>{`Qg z+cNHsF5Z4QWVmWxSarvUdMO>21lGF*DsvuWqf3bI*25g-b)ZuB#lo3D;+P=>2FrHC zdf&b}w_4sOL14JtteW*Rvt`RqfL~0wA8j6dJ~D*=ePlR`@qcMk_YzO!3%cR)P^^i!2ff!v)l8+?ZdI*!cAekSDRrGoqv5^0CNE*k z@rI2dff0;h0#k@{$J-qO&-fb=!!-YRB?tQ%?s**t`{&4Toy08bIU+vunc#D@_yeN2 ze2a8( za-HK-bxqTW>XI(yY8cP?RwY^D+n31uK2P|RJt@y)=uG}3f~k|3@!X87uE0&ocO#YM z6v)7eR8}elu8Mk<{!Wz~RpuU0Q8SOK4ARk^$}(3gdX>nORh9*+EIy#3PBN+@Cw8Z@ z%GDYSP9Vpe26r-VviKe8uUy2uqfB|lf+wH`lJtkA2C~lg8(Nb7PLj0;Nj6Ecr6n2a yB-wh9WSb7q;rG3KaXW0Bz Y7!n8_{{#;Q>69aUn)6>}K*N z^S*gJZ+8F@0v98~DwUN;d8PzwO`}E2k}fMnZj#=)m=NYAzi_5_U9i(|A_Rpn?_5h* zt~c?J>5NqDpf$h7vNa*WOJq@V(`iB2{ZB>lm!N9SLVXCry>0N5rqj7NN@Xh+ziiw7 Zr9&W$?H+(E>J*Oku5}~KtnvoszW`V|LpT5c diff --git a/out/production/TimeTableDataModel/TimeTable/stores/TimeTableStore.class b/out/production/TimeTableDataModel/TimeTable/stores/TimeTableStore.class deleted file mode 100644 index 0fb075be1efae70b50fde17a93f0ce661112031d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 320 zcmZvYO$x#=5QX1VZT(l!y}A+I*aPTJa3v_z3q&2H5)Cx1hjZZpJd~J*S_*cPVP@X< zn3wnG`2w&)$Ad!{9l{$Q#8I-ZV->OX^FfgI9;$@?RXl_*#r@*%j#oa#gzkmoJx8HB zTNz7;0#!wG>(htaYgF89FUP|8$0L1}ce8ya^=} l2KkBBW|0PS351II6QE+k*5D!y?V)aK15L9bw9M