From 09ea4d653e114405221c040f7a923462d91915a5 Mon Sep 17 00:00:00 2001 From: salsaasy Date: Mon, 24 Feb 2020 12:11:52 +0000 Subject: [PATCH 01/10] Assignment 1 --- assigntment-01/H071191054/StudIdMain.class | Bin 0 -> 1752 bytes assigntment-01/H071191054/StudIdMain.java | 60 ++++++++++ .../H071191054/StudentIdentity.class | Bin 0 -> 3949 bytes .../H071191054/StudentIdentity.java | 109 ++++++++++++++++++ 4 files changed, 169 insertions(+) create mode 100644 assigntment-01/H071191054/StudIdMain.class create mode 100644 assigntment-01/H071191054/StudIdMain.java create mode 100644 assigntment-01/H071191054/StudentIdentity.class create mode 100644 assigntment-01/H071191054/StudentIdentity.java diff --git a/assigntment-01/H071191054/StudIdMain.class b/assigntment-01/H071191054/StudIdMain.class new file mode 100644 index 0000000000000000000000000000000000000000..6daf7460a04d99d2ad2b3c2d59be6918b5bdee85 GIT binary patch literal 1752 zcmZWpO;lS|5dJRYkxLT(E`>Jz4gG;Y2>(z7tmP*_3`r5_57t^QSBR#59t z)noVW-Me#PdbHTP3dd$K^Ub{Z=FXj&o1g#r?t1`}_$+{{ zxbDYn0Cl*|F~>0^4B|jWL$_x!NhGjU{80w?Fw-|i$c2;L-Surd7YxS@NiYOm*IYR(4C-ZumX?lgN+MHi-Ow-{w`i1V)(BOWGEBq$G|J$gGwg!BYpBRE)eeVghvW}pu~qte1wlfc#Kb|$W$VeNi1wKfO?V2$%k~5b7)f4 z&2lR%3k8{r$ebxD`KM}PbPaEi46R3lzp=HaZ##5{qlvoHtf#v$Oh%9GNHui&MNjXG zE{0G^cNUFe$;n8Q7OCTSreoU{q_7p~MYWK%rtea__2Q;3sh7TJ(p^fGO>UP9s&P$Z zEa>~P=$O@PLF`(6j|p;(-5HbJq7!k0K+uN2G{9BBWCb2VG6C2s3$+zlV_;g ze2V&&noh@rPiWtwp&qwm!Y{Z78%4l_K@sv`lW6u}i)i&=n-Css7bmK)Uv!9051tgK zJQx>O%SI{399TmjmqN{>|c&xvI!Fa5Kp|DR36M@tSF~Ytog-pdErAVX{E9`S=q!dpR zql%}AF~!qrJgv&psywaA)2cj8@!}PXhkZ(DB#y@QBZl3farn^+jx#j4ZUo31qydJo zgeI(^8TZhF97UASMsHK#3EJ@mPT)&);45_E8=S-s2;(Q5#xIoRSK5!?a2|i)0{%n< zf6*TOjf?mfmzajjEP!s-h8}hbQ5Hcj>p>qIK#Yx}pUoi7<}k>T7-Fj!W_K{c?qihg gV2qg facultyMap = new HashMap<>(); + Map majorMap = new HashMap<>(); + facultyMap.put("Ekonomi dan Bisnis", "A"); + facultyMap.put("Hukum", "B"); + facultyMap.put("Kedokteran", "C"); + facultyMap.put("Teknik", "D"); + facultyMap.put("Ilmu Sosial dan Ilmu Politik", "E"); + facultyMap.put("Ilmu Budaya", "F"); + facultyMap.put("Pertanian", "G"); + facultyMap.put("MIPA", "H"); + majorMap.put("Matematika", "01"); + majorMap.put("Fisika", "02"); + majorMap.put("Kimia", "03"); + majorMap.put("Biologi", "04"); + majorMap.put("Statistika", "05"); + majorMap.put("Geofisika", "06"); + majorMap.put("Ilmu Komputer", "07"); + majorMap.put("Aktuaria", "08"); + + StudentIdentity student1 = new StudentIdentity(); + StudentIdentity student2 = new StudentIdentity(); + StudentIdentity student3 = new StudentIdentity(); + + student1.setFirstName("mUHammAd"); + student1.setLastName("fITRAH"); + student1.setRegisterYear(2017); + student1.setFaculty("MIPA"); + student1.setDepartment("Matematika"); + student1.setMajor("Ilmu Komputer"); + student1.setId(facultyMap, majorMap); + student1.setEmail(facultyMap); + + student2.setFirstName("KENNEDY"); + student2.setLastName(""); + student2.setRegisterYear(2017); + student2.setFaculty("MIPA"); + student2.setDepartment("Matematika"); + student2.setMajor("Ilmu Komputer"); + student2.setId(facultyMap, majorMap); + student2.setEmail(facultyMap); + + student3.setFirstName("Khawaritzmi"); + student3.setLastName("abdallah ahmad"); + student3.setRegisterYear(2017); + student3.setFaculty("MIPA"); + student3.setDepartment("Matematika"); + student3.setMajor("Ilmu Komputer"); + student3.setId(facultyMap, majorMap); + student3.setEmail(facultyMap); + + student1.description(); + student2.description(); + student3.description(); + } +} \ No newline at end of file diff --git a/assigntment-01/H071191054/StudentIdentity.class b/assigntment-01/H071191054/StudentIdentity.class new file mode 100644 index 0000000000000000000000000000000000000000..4411e3c1f0df89cbfeced716d9b955c6fb1dcf30 GIT binary patch literal 3949 zcmb7HTYDST6>8dpgpuw~08p-mw+ZonZy!FGa`keZahSQ^V?OEaow zl;GZ*(n3q`R|+j{(+j;9XrcsBQd-`4?tA|S572eaOrnuI?MMB6-skKyYxY_D?7hz( zz5QCh))Rdm=NcLcwEI3NhEP50bRv%l1s%tlwgS2 zN)lzPipORWyRep`eM`*j1ZraZq!9HK6u2rHDMWA~fhWb{h7g|;;?pVg;IqB>96m2> zej$Y@E++9MJSEgGrw|ir4o{~L$Hf#>PyJd738D7lqKa=Qh?pe>skt@%ygpgct@32S zt(#VPNPv=RSD@q-s4IH0QE@jEBuhq3 zue(*lauvj?`kGBheA={3cSb?a$mk;qqO*31rU&Ls%UEbsmyP-W4M;B>KrWOO7i3?zkt8&vzL90{-$2If7&v9d>G+sNo< zCOi~A_P0uM+O|lg!y@T=_ah+^sd{lf>!QEZB|6_|jaa4^;#Y?QdlHnBVX3aHii-9TF zje5~IYKk=2R&X07CQx1o)7_X5IjXS`@6j-UNey=jv0sP-LfnN9Yxszm9TeiDm{c$* z^I9J7qHdM!Dzhi!WSsq((*DeycQMI4gv|UC%WFo_)sV+A72neEZG1<=LqhqkhVS9~ z8h(HuYWNYJ<7@ZZw(Gccy*6*St9Hp5h~vizJg?ye{6xb~af~IA*6<>Jrs3!KMFN+^ zqhEGx=#^RmzY>prtpFN+gO@b?7RNOF4!=*}58}xmRs2cApYazB1sqG@WwH2*idQxK z758d5Di$wmcu2TE~Zx#xW@YGIz|Os&u-2cM!9`d3^j|CaZ+%*ALzgVO$Cd= zJ2T!ETiQ2B-g1qy!Gc%M>y?IaVnxAr7G7XeAHmmD%XreI%Ikm--XZZ7yI$3)-xJ)~ zzm$T+{hfnmeN+;!p+yIjw4z`~RbMw|ZL6reXH0jMGso2}*J00fE=kbbRmEBc&qce6<@=7Z>9&!$w zIc#1D^)*nRg$=eFR&bBq;L#0v226YMBpa4XhK62cMx}VM=;^@UA)akV8vD+KZnssY zai>vcX-#ZV;SH5q$j=9Cr_;iEN_K(tyv|6N&IR3DJgTp=8S2grxI}t=!C+(bmgVBf zx?Qg8)wHNolk0~R6|ajT|GR>H?Yc6p^Y*&oH)t=V*>haGzMWq2t9<8#N;Y9?bQS^7Kv2>Xk~tbd4z$ z|5T9KF0M;f*(ul4xB|qgODS8gdEu>Y#NvR}xNErX-@ z>|&FlJVb3bN8ZecWv@bcg%br+lySKjrJTmSlmfb!TSmmQ?AR4V+SsIA-NFwtVR|MU z-_wmBB7QsZ9}CAvyYV}T-$nf4aD1#Aznl1B;_t)#l%4!vDbz`6W!1mg7`5J0`2XFihxXGj%g#@a`@>U<@nI+NG@GP-$FK}sc)cvsb?(P z#4WF3AcDeDbezhduf(#K5g#nou3<}IDV`ggZXy+ZLTJ~pwIesT^Atf=33@z5SB`Kz z&aLOU8o>gI9L5Qs$W>wm+M@Ly{zqHb1~f4=Kc3p&#Eyk*E_XdzI&cNCo`cb$s8B9p zIJIK+oDfA_kEt4 zX|c}Q>K!eN1k_tv7!9b|7RCbVU<>0?ZC97adxfW1Cbd;wt0t3ijk&u{Zz}xJd0P7T w2*l6gB#HeEZ{iKcb)EVQS1MeqO6f>>Udqo%`9&$eBIPquepSk6rTqGT0J(H?(*OVf literal 0 HcmV?d00001 diff --git a/assigntment-01/H071191054/StudentIdentity.java b/assigntment-01/H071191054/StudentIdentity.java new file mode 100644 index 0000000..7014c41 --- /dev/null +++ b/assigntment-01/H071191054/StudentIdentity.java @@ -0,0 +1,109 @@ +import java.util.Map; +import java.util.Random; + +public class StudentIdentity { + + private String id; + private String firstName; + private String lastName; + private String email; + private int registerYear; + private String faculty; + private String department; + private String major; + + // method set + public void setId(String id) { + this.id = id; + } + + public void setFirstName(String firstName) { + this.firstName = firstName; + } + + public void setLastName(String lastName) { + this.lastName = lastName; + } + + public void setEmail(String email) { + this.email = email; + } + + public void setRegisterYear(int registerYear) { + this.registerYear = registerYear; + } + + public void setFaculty(String faculty) { + this.faculty = faculty; + } + + public void setDepartment(String department) { + this.department = department; + } + + public void setMajor(String major) { + this.major = major; + } + + // method get + public String getId() { + return id; + } + + public String getEmail() { + return email; + } + + public String getFaculty() { + return faculty; + } + + public String getDepartment() { + return department; + } + + public String getMajor() { + return major; + } + + // method behaviour + public void setId(Map facultymap, Map majormap) { + Random rdm = new Random(); + + id = String.format("%s%s1%d1%03d", facultymap.get(getFaculty()), majormap.get(getMajor()), registerYear % 100, + rdm.nextInt(60) + 1); + + } + + public void setEmail(Map facultymap) { + String fullName = (firstName + " " + lastName).toLowerCase(); + String[] splitName = fullName.split(" "); + email = splitName[splitName.length - 1]; + for (int i = 0; i < splitName.length - 1; i++) { + email += splitName[i].charAt(0); + } + email += (registerYear % 100) + facultymap.get(faculty).toLowerCase() + "@student.unhas.ac.id"; + + } + + public String getFullName() { + String fullName = (firstName + " " + lastName).toLowerCase(); + String[] splitName = fullName.split(" "); + + String finalName = ""; + for (int i = 0; i < splitName.length; i++) { + finalName += splitName[i].substring(0, 1).toUpperCase() + splitName[i].substring(1, splitName[i].length()) + + " "; + } + return finalName; + } + + public void description() { + System.out.println("Nama :" + getFullName()); + System.out.println("NIM :" + getId()); + System.out.println("Email Mahasiswa :" + getEmail()); + System.out.println("Fakultas :" + getFaculty()); + System.out.println("Departemen :" + getDepartment()); + System.out.println("Program Studi :" + getMajor()); + } +} \ No newline at end of file From 9218fb71ecd67f693b5d8fdeba93a7627815d01a Mon Sep 17 00:00:00 2001 From: Nurul Salsabila Syam <54732798+salsaasy@users.noreply.github.com> Date: Fri, 6 Mar 2020 14:51:45 +0000 Subject: [PATCH 02/10] Delete App.java --- assignment-02/H071191054/App.java | 7 ------- 1 file changed, 7 deletions(-) delete mode 100644 assignment-02/H071191054/App.java diff --git a/assignment-02/H071191054/App.java b/assignment-02/H071191054/App.java deleted file mode 100644 index a945d05..0000000 --- a/assignment-02/H071191054/App.java +++ /dev/null @@ -1,7 +0,0 @@ -public class App { - public static void main(String[] args) throws Exception { - Login login = new Login(); - login.auth("naim", "Naim"); - login.status(); - } -} \ No newline at end of file From 840d390818c57029fdae029f6c65252251d46a1b Mon Sep 17 00:00:00 2001 From: Nurul Salsabila Syam <54732798+salsaasy@users.noreply.github.com> Date: Fri, 6 Mar 2020 14:51:58 +0000 Subject: [PATCH 03/10] Delete DataSource.java --- assignment-02/H071191054/DataSource.java | 71 ------------------------ 1 file changed, 71 deletions(-) delete mode 100644 assignment-02/H071191054/DataSource.java diff --git a/assignment-02/H071191054/DataSource.java b/assignment-02/H071191054/DataSource.java deleted file mode 100644 index f4c0bbc..0000000 --- a/assignment-02/H071191054/DataSource.java +++ /dev/null @@ -1,71 +0,0 @@ -import java.io.*; -import java.util.HashMap; -import java.util.ArrayList; -import java.util.Arrays; - -public class DataSource { - private HashMap userMap = new HashMap<>(); - private HashMap userDetailMap = new HashMap<>(); - - DataSource() { - putUserDetail(); - putUser(); - } - - private void putUserDetail() { - BufferedReader br = null; - try { - br = new BufferedReader(new FileReader("UserDetail.txt")); - String s = ""; - while ((s = br.readLine()) != null) { - ArrayList sList = new ArrayList(Arrays.asList(s.split(";"))); - UserDetail userDetail = new UserDetail(Integer.valueOf(sList.get(0)), sList.get(1), sList.get(2), - sList.get(3)); - userDetailMap.put(Integer.valueOf(sList.get(0)), userDetail); - // System.out.println(userDetail); - } - } catch (IOException e) { - System.out.println(e.getMessage()); - } finally { - try { - if (br != null) { - br.close(); - } - } catch (IOException e) { - System.out.println(e); - } - } - } - - private void putUser() { - BufferedReader br = null; - try { - br = new BufferedReader(new FileReader("User.txt")); - String s; - while ((s = br.readLine()) != null) { - ArrayList sList = new ArrayList(Arrays.asList(s.split(";"))); - User user = new User(Integer.valueOf(sList.get(0)), sList.get(1), sList.get(2), - userDetailMap.get(Integer.valueOf(sList.get(0)))); - userMap.put(sList.get(1), user); - } - } catch (IOException e) { - System.out.println(e.getMessage()); - } finally { - try { - if (br != null) { - br.close(); - } - } catch (IOException e) { - System.out.println(e); - } - } - } - - public User getUser(String key) { - return userMap.get(key); - } - - public UserDetail getUserDetail(Integer key) { - return userDetailMap.get(key); - } -} \ No newline at end of file From 8ee0f0bee757dae34c9ffe55457ed0da16f4ce43 Mon Sep 17 00:00:00 2001 From: Nurul Salsabila Syam <54732798+salsaasy@users.noreply.github.com> Date: Fri, 6 Mar 2020 14:52:44 +0000 Subject: [PATCH 04/10] Delete Login.java --- assignment-02/H071191054/Login.java | 26 -------------------------- 1 file changed, 26 deletions(-) delete mode 100644 assignment-02/H071191054/Login.java diff --git a/assignment-02/H071191054/Login.java b/assignment-02/H071191054/Login.java deleted file mode 100644 index 8f1651f..0000000 --- a/assignment-02/H071191054/Login.java +++ /dev/null @@ -1,26 +0,0 @@ -public class Login { - private User user; - private UserDetail userDetail; - private DataSource dataSource; - - public void auth(String name, String pass) { - dataSource = new DataSource(); - if ((user = dataSource.getUser(name)) != null) { - if (user.getPassword().equals(pass)) { - userDetail = user.getUserDetail(); - } else { - System.out.println("Wrong password"); - } - } else { - System.out.println("User not found"); - } - } - - public void status() { - if (userDetail != null) { - System.out.println(userDetail.getName()); - System.out.println(userDetail.getEmail()); - System.out.println(userDetail.getDateOfBirth()); - } - } -} \ No newline at end of file From 775225a6686e47b53b1597a7598a80bdf8905373 Mon Sep 17 00:00:00 2001 From: Nurul Salsabila Syam <54732798+salsaasy@users.noreply.github.com> Date: Fri, 6 Mar 2020 14:53:29 +0000 Subject: [PATCH 05/10] Delete User.java --- assignment-02/H071191054/User.java | 29 ----------------------------- 1 file changed, 29 deletions(-) delete mode 100644 assignment-02/H071191054/User.java diff --git a/assignment-02/H071191054/User.java b/assignment-02/H071191054/User.java deleted file mode 100644 index 512e1e9..0000000 --- a/assignment-02/H071191054/User.java +++ /dev/null @@ -1,29 +0,0 @@ -public class User { - private Integer id; - private String userName; - private String password; - private UserDetail userDetail; - - public User(Integer id, String userName, String password, UserDetail userDetail) { - this.id = id; - this.userName = userName; - this.password = password; - this.userDetail = userDetail; - } - - public Integer getId() { - return id; - } - - public String getUserName() { - return userName; - } - - public String getPassword() { - return password; - } - - public UserDetail getUserDetail() { - return userDetail; - } -} \ No newline at end of file From ae275aa8019f0644692880704058b60c4e4dba30 Mon Sep 17 00:00:00 2001 From: Nurul Salsabila Syam <54732798+salsaasy@users.noreply.github.com> Date: Fri, 6 Mar 2020 14:53:43 +0000 Subject: [PATCH 06/10] Delete User.txt --- assignment-02/H071191054/User.txt | 5 ----- 1 file changed, 5 deletions(-) delete mode 100644 assignment-02/H071191054/User.txt diff --git a/assignment-02/H071191054/User.txt b/assignment-02/H071191054/User.txt deleted file mode 100644 index 70d291f..0000000 --- a/assignment-02/H071191054/User.txt +++ /dev/null @@ -1,5 +0,0 @@ -1;fitrh;12345678 -2;arzk;qwerty -3;ken;asdf -4;naim;Naim -5;farhan;Parhan \ No newline at end of file From 741344fab0bda96ce23b336693c4ef719806d4fe Mon Sep 17 00:00:00 2001 From: Nurul Salsabila Syam <54732798+salsaasy@users.noreply.github.com> Date: Fri, 6 Mar 2020 14:54:15 +0000 Subject: [PATCH 07/10] Delete UserDetail.java --- assignment-02/H071191054/UserDetail.java | 29 ------------------------ 1 file changed, 29 deletions(-) delete mode 100644 assignment-02/H071191054/UserDetail.java diff --git a/assignment-02/H071191054/UserDetail.java b/assignment-02/H071191054/UserDetail.java deleted file mode 100644 index a166c33..0000000 --- a/assignment-02/H071191054/UserDetail.java +++ /dev/null @@ -1,29 +0,0 @@ -public class UserDetail { - private Integer id; - private String name; - private String dateOfBirth; - private String email; - - public UserDetail(Integer id, String name, String dateOfBirth, String email) { - this.id = id; - this.name = name; - this.dateOfBirth = dateOfBirth; - this.email = email; - } - - public Integer getId() { - return this.id; - } - - public String getName() { - return this.name; - } - - public String getDateOfBirth() { - return this.dateOfBirth; - } - - public String getEmail() { - return this.email; - } -} \ No newline at end of file From 36b949cfa3fcafc34511171c3b8fa487e6b8253d Mon Sep 17 00:00:00 2001 From: Nurul Salsabila Syam <54732798+salsaasy@users.noreply.github.com> Date: Fri, 6 Mar 2020 14:54:26 +0000 Subject: [PATCH 08/10] Delete UserDetail.txt --- assignment-02/H071191054/UserDetail.txt | 5 ----- 1 file changed, 5 deletions(-) delete mode 100644 assignment-02/H071191054/UserDetail.txt diff --git a/assignment-02/H071191054/UserDetail.txt b/assignment-02/H071191054/UserDetail.txt deleted file mode 100644 index 908948c..0000000 --- a/assignment-02/H071191054/UserDetail.txt +++ /dev/null @@ -1,5 +0,0 @@ -1;Muhammad Fitrah;04-09-1998;fitrahm17h@student.unhas.ac.id -2;Muhammad Arizki;00-00-0000;arizkim17h@student.unhas.ac.id -3;Kennedy;00-02-2000;kennedy17h@student.unhas.ac.id -4;Muhammad Muflihun Naim;00-00-0000;naimmm17h@student.unhas.ac.id -5;Farhan Ramdhani;00-00-0000;ramdhanif17h@student.unhas.ac.id \ No newline at end of file From 184e5ea15c6599b155f4f4bc631d4a2df8ed6032 Mon Sep 17 00:00:00 2001 From: salsaasy Date: Fri, 6 Mar 2020 22:40:52 +0000 Subject: [PATCH 09/10] added assignment 02 --- assignment-02/H071191054/App.java | 7 +++ assignment-02/H071191054/DataSource.java | 71 ++++++++++++++++++++++++ assignment-02/H071191054/Login.java | 26 +++++++++ assignment-02/H071191054/User.java | 29 ++++++++++ assignment-02/H071191054/User.txt | 5 ++ assignment-02/H071191054/UserDetail.java | 29 ++++++++++ assignment-02/H071191054/UserDetail.txt | 5 ++ 7 files changed, 172 insertions(+) create mode 100644 assignment-02/H071191054/App.java create mode 100644 assignment-02/H071191054/DataSource.java create mode 100644 assignment-02/H071191054/Login.java create mode 100644 assignment-02/H071191054/User.java create mode 100644 assignment-02/H071191054/User.txt create mode 100644 assignment-02/H071191054/UserDetail.java create mode 100644 assignment-02/H071191054/UserDetail.txt diff --git a/assignment-02/H071191054/App.java b/assignment-02/H071191054/App.java new file mode 100644 index 0000000..a945d05 --- /dev/null +++ b/assignment-02/H071191054/App.java @@ -0,0 +1,7 @@ +public class App { + public static void main(String[] args) throws Exception { + Login login = new Login(); + login.auth("naim", "Naim"); + login.status(); + } +} \ No newline at end of file diff --git a/assignment-02/H071191054/DataSource.java b/assignment-02/H071191054/DataSource.java new file mode 100644 index 0000000..f4c0bbc --- /dev/null +++ b/assignment-02/H071191054/DataSource.java @@ -0,0 +1,71 @@ +import java.io.*; +import java.util.HashMap; +import java.util.ArrayList; +import java.util.Arrays; + +public class DataSource { + private HashMap userMap = new HashMap<>(); + private HashMap userDetailMap = new HashMap<>(); + + DataSource() { + putUserDetail(); + putUser(); + } + + private void putUserDetail() { + BufferedReader br = null; + try { + br = new BufferedReader(new FileReader("UserDetail.txt")); + String s = ""; + while ((s = br.readLine()) != null) { + ArrayList sList = new ArrayList(Arrays.asList(s.split(";"))); + UserDetail userDetail = new UserDetail(Integer.valueOf(sList.get(0)), sList.get(1), sList.get(2), + sList.get(3)); + userDetailMap.put(Integer.valueOf(sList.get(0)), userDetail); + // System.out.println(userDetail); + } + } catch (IOException e) { + System.out.println(e.getMessage()); + } finally { + try { + if (br != null) { + br.close(); + } + } catch (IOException e) { + System.out.println(e); + } + } + } + + private void putUser() { + BufferedReader br = null; + try { + br = new BufferedReader(new FileReader("User.txt")); + String s; + while ((s = br.readLine()) != null) { + ArrayList sList = new ArrayList(Arrays.asList(s.split(";"))); + User user = new User(Integer.valueOf(sList.get(0)), sList.get(1), sList.get(2), + userDetailMap.get(Integer.valueOf(sList.get(0)))); + userMap.put(sList.get(1), user); + } + } catch (IOException e) { + System.out.println(e.getMessage()); + } finally { + try { + if (br != null) { + br.close(); + } + } catch (IOException e) { + System.out.println(e); + } + } + } + + public User getUser(String key) { + return userMap.get(key); + } + + public UserDetail getUserDetail(Integer key) { + return userDetailMap.get(key); + } +} \ No newline at end of file diff --git a/assignment-02/H071191054/Login.java b/assignment-02/H071191054/Login.java new file mode 100644 index 0000000..8f1651f --- /dev/null +++ b/assignment-02/H071191054/Login.java @@ -0,0 +1,26 @@ +public class Login { + private User user; + private UserDetail userDetail; + private DataSource dataSource; + + public void auth(String name, String pass) { + dataSource = new DataSource(); + if ((user = dataSource.getUser(name)) != null) { + if (user.getPassword().equals(pass)) { + userDetail = user.getUserDetail(); + } else { + System.out.println("Wrong password"); + } + } else { + System.out.println("User not found"); + } + } + + public void status() { + if (userDetail != null) { + System.out.println(userDetail.getName()); + System.out.println(userDetail.getEmail()); + System.out.println(userDetail.getDateOfBirth()); + } + } +} \ No newline at end of file diff --git a/assignment-02/H071191054/User.java b/assignment-02/H071191054/User.java new file mode 100644 index 0000000..512e1e9 --- /dev/null +++ b/assignment-02/H071191054/User.java @@ -0,0 +1,29 @@ +public class User { + private Integer id; + private String userName; + private String password; + private UserDetail userDetail; + + public User(Integer id, String userName, String password, UserDetail userDetail) { + this.id = id; + this.userName = userName; + this.password = password; + this.userDetail = userDetail; + } + + public Integer getId() { + return id; + } + + public String getUserName() { + return userName; + } + + public String getPassword() { + return password; + } + + public UserDetail getUserDetail() { + return userDetail; + } +} \ No newline at end of file diff --git a/assignment-02/H071191054/User.txt b/assignment-02/H071191054/User.txt new file mode 100644 index 0000000..70d291f --- /dev/null +++ b/assignment-02/H071191054/User.txt @@ -0,0 +1,5 @@ +1;fitrh;12345678 +2;arzk;qwerty +3;ken;asdf +4;naim;Naim +5;farhan;Parhan \ No newline at end of file diff --git a/assignment-02/H071191054/UserDetail.java b/assignment-02/H071191054/UserDetail.java new file mode 100644 index 0000000..a166c33 --- /dev/null +++ b/assignment-02/H071191054/UserDetail.java @@ -0,0 +1,29 @@ +public class UserDetail { + private Integer id; + private String name; + private String dateOfBirth; + private String email; + + public UserDetail(Integer id, String name, String dateOfBirth, String email) { + this.id = id; + this.name = name; + this.dateOfBirth = dateOfBirth; + this.email = email; + } + + public Integer getId() { + return this.id; + } + + public String getName() { + return this.name; + } + + public String getDateOfBirth() { + return this.dateOfBirth; + } + + public String getEmail() { + return this.email; + } +} \ No newline at end of file diff --git a/assignment-02/H071191054/UserDetail.txt b/assignment-02/H071191054/UserDetail.txt new file mode 100644 index 0000000..908948c --- /dev/null +++ b/assignment-02/H071191054/UserDetail.txt @@ -0,0 +1,5 @@ +1;Muhammad Fitrah;04-09-1998;fitrahm17h@student.unhas.ac.id +2;Muhammad Arizki;00-00-0000;arizkim17h@student.unhas.ac.id +3;Kennedy;00-02-2000;kennedy17h@student.unhas.ac.id +4;Muhammad Muflihun Naim;00-00-0000;naimmm17h@student.unhas.ac.id +5;Farhan Ramdhani;00-00-0000;ramdhanif17h@student.unhas.ac.id \ No newline at end of file From 84ef0d4d112a37cdaca7f9eb9512fd60f396a522 Mon Sep 17 00:00:00 2001 From: salsaasy Date: Fri, 6 Mar 2020 23:15:33 +0000 Subject: [PATCH 10/10] added assignment 02 --- assignment-02/H071191054/App.java | 4 ++-- assignment-02/H071191054/DataSource.java | 12 +++++++--- assignment-02/H071191054/Login.java | 28 ++++++++++++++++++------ assignment-02/H071191054/User.java | 2 +- assignment-02/H071191054/UserDetail.java | 2 +- 5 files changed, 34 insertions(+), 14 deletions(-) diff --git a/assignment-02/H071191054/App.java b/assignment-02/H071191054/App.java index a945d05..8120ac7 100644 --- a/assignment-02/H071191054/App.java +++ b/assignment-02/H071191054/App.java @@ -1,6 +1,6 @@ -public class App { +class App { public static void main(String[] args) throws Exception { - Login login = new Login(); + Login login = Login.getInstance(); login.auth("naim", "Naim"); login.status(); } diff --git a/assignment-02/H071191054/DataSource.java b/assignment-02/H071191054/DataSource.java index f4c0bbc..aca656c 100644 --- a/assignment-02/H071191054/DataSource.java +++ b/assignment-02/H071191054/DataSource.java @@ -3,15 +3,22 @@ import java.util.ArrayList; import java.util.Arrays; -public class DataSource { +class DataSource { + static DataSource instance = null; private HashMap userMap = new HashMap<>(); private HashMap userDetailMap = new HashMap<>(); - DataSource() { + private DataSource() { putUserDetail(); putUser(); } + static public DataSource getInstance() { + if (instance == null) + instance = new DataSource(); + return instance; + } + private void putUserDetail() { BufferedReader br = null; try { @@ -22,7 +29,6 @@ private void putUserDetail() { UserDetail userDetail = new UserDetail(Integer.valueOf(sList.get(0)), sList.get(1), sList.get(2), sList.get(3)); userDetailMap.put(Integer.valueOf(sList.get(0)), userDetail); - // System.out.println(userDetail); } } catch (IOException e) { System.out.println(e.getMessage()); diff --git a/assignment-02/H071191054/Login.java b/assignment-02/H071191054/Login.java index 8f1651f..1bd44f8 100644 --- a/assignment-02/H071191054/Login.java +++ b/assignment-02/H071191054/Login.java @@ -1,18 +1,32 @@ -public class Login { +import java.util.NoSuchElementException; + +class Login { + static Login instance = null private User user; private UserDetail userDetail; private DataSource dataSource; - public void auth(String name, String pass) { - dataSource = new DataSource(); - if ((user = dataSource.getUser(name)) != null) { + private Login() { + + } + + static public Login getInstance() { + if (instance == null) + instance = new Login(); + return instance; + } + + public void auth(String name, String pass) throws NoSuchElementException { + dataSource = DataSource.getInstance(); + try { + user = dataSource.getUser(name); if (user.getPassword().equals(pass)) { userDetail = user.getUserDetail(); } else { - System.out.println("Wrong password"); + System.out.println("wrong password"); } - } else { - System.out.println("User not found"); + } catch (Exception e) { + throw new NoSuchElementException("user not found: " + name); } } diff --git a/assignment-02/H071191054/User.java b/assignment-02/H071191054/User.java index 512e1e9..d9c3277 100644 --- a/assignment-02/H071191054/User.java +++ b/assignment-02/H071191054/User.java @@ -1,4 +1,4 @@ -public class User { +class User { private Integer id; private String userName; private String password; diff --git a/assignment-02/H071191054/UserDetail.java b/assignment-02/H071191054/UserDetail.java index a166c33..e25cad5 100644 --- a/assignment-02/H071191054/UserDetail.java +++ b/assignment-02/H071191054/UserDetail.java @@ -1,4 +1,4 @@ -public class UserDetail { +class UserDetail { private Integer id; private String name; private String dateOfBirth;