From 3f226cc29f246bfd3991a5d6da93f5be6cffbf8d Mon Sep 17 00:00:00 2001 From: Artem Trofimov Date: Mon, 16 Feb 2015 02:45:37 +0200 Subject: [PATCH 01/15] The testing commit --- Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java diff --git a/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java b/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java new file mode 100644 index 0000000..02d4913 --- /dev/null +++ b/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java @@ -0,0 +1,7 @@ +package AutomateUsingJava.lesson1; + + +public class WebBlog { + + +} From dec4becc24a9dc91dca57d2ab8789ccb50920d77 Mon Sep 17 00:00:00 2001 From: Artem Trofimov Date: Mon, 16 Feb 2015 03:24:32 +0200 Subject: [PATCH 02/15] adding 2 more classes (empty for now) --- Trofimov/src/AutomateUsingJava/lesson1/BlogPost.java | 7 +++++++ Trofimov/src/AutomateUsingJava/lesson1/Comments.java | 7 +++++++ Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java | 2 +- 3 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 Trofimov/src/AutomateUsingJava/lesson1/BlogPost.java create mode 100644 Trofimov/src/AutomateUsingJava/lesson1/Comments.java diff --git a/Trofimov/src/AutomateUsingJava/lesson1/BlogPost.java b/Trofimov/src/AutomateUsingJava/lesson1/BlogPost.java new file mode 100644 index 0000000..1aef2de --- /dev/null +++ b/Trofimov/src/AutomateUsingJava/lesson1/BlogPost.java @@ -0,0 +1,7 @@ +package AutomateUsingJava.lesson1; + + +public class BlogPost { + + +} diff --git a/Trofimov/src/AutomateUsingJava/lesson1/Comments.java b/Trofimov/src/AutomateUsingJava/lesson1/Comments.java new file mode 100644 index 0000000..d0a5c5a --- /dev/null +++ b/Trofimov/src/AutomateUsingJava/lesson1/Comments.java @@ -0,0 +1,7 @@ +package AutomateUsingJava.lesson1; + + +public class Comments { + + +} diff --git a/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java b/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java index 02d4913..385d57a 100644 --- a/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java +++ b/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java @@ -2,6 +2,6 @@ public class WebBlog { - + } From 04dde5784fb02c1d10043a0e68f37dce1ad6153e Mon Sep 17 00:00:00 2001 From: Artem Trofimov Date: Mon, 16 Feb 2015 19:07:56 +0200 Subject: [PATCH 03/15] updated 3 classes for comments, post and users with Alexey Gershkovich --- .../AutomateUsingJava/lesson1/Comments.java | 21 ++++++++++ .../src/AutomateUsingJava/lesson1/Post.java | 38 +++++++++++++++++++ .../src/AutomateUsingJava/lesson1/Users.java | 25 ++++++++++++ 3 files changed, 84 insertions(+) create mode 100644 Trofimov/src/AutomateUsingJava/lesson1/Post.java create mode 100644 Trofimov/src/AutomateUsingJava/lesson1/Users.java diff --git a/Trofimov/src/AutomateUsingJava/lesson1/Comments.java b/Trofimov/src/AutomateUsingJava/lesson1/Comments.java index d0a5c5a..5b70356 100644 --- a/Trofimov/src/AutomateUsingJava/lesson1/Comments.java +++ b/Trofimov/src/AutomateUsingJava/lesson1/Comments.java @@ -1,7 +1,28 @@ package AutomateUsingJava.lesson1; +import java.util.Date; + public class Comments { + private String commentAuthor; + private String commentContent; + private long commentDate; + +public Comments (String commentAuthor, String commentContent){ + this.commentAuthor = commentAuthor; + this.commentContent = commentContent; + this.commentDate = new Date().getTime(); +} + + public String getCommentAuthor() { + return commentAuthor; + } + public String getCommentContent() { + return commentContent; + } + public long getCommentDate() { + return commentDate; + } } diff --git a/Trofimov/src/AutomateUsingJava/lesson1/Post.java b/Trofimov/src/AutomateUsingJava/lesson1/Post.java new file mode 100644 index 0000000..be37a36 --- /dev/null +++ b/Trofimov/src/AutomateUsingJava/lesson1/Post.java @@ -0,0 +1,38 @@ +package AutomateUsingJava.lesson1; + + +import java.util.Date; + +public class Post { + + private String postName; + private String postContent; + private Users postAuthor; + private long postDate; + Comments [] postComments; + + public Post (String postName, String postContent, Users postAuthor) { + this.postAuthor = postAuthor; + this.postName = postName; + this.postContent = postContent; + this.postDate = new Date().getTime(); + } + + public String getPostName() { + return postName; + } + + public String getPostContent() { + return postContent; + } + + public Users getPostAuthor() { + return postAuthor; + } + + public long getPostDate() { + return postDate; + } + + +} diff --git a/Trofimov/src/AutomateUsingJava/lesson1/Users.java b/Trofimov/src/AutomateUsingJava/lesson1/Users.java new file mode 100644 index 0000000..1943341 --- /dev/null +++ b/Trofimov/src/AutomateUsingJava/lesson1/Users.java @@ -0,0 +1,25 @@ +package AutomateUsingJava.lesson1; + + +public class Users { + + + private String userName; + private String userPassword; + private boolean isAdmin; + + public Users (String userName, String userPassword) { + this.userName = userName; + this.userPassword = userPassword; + this.isAdmin = false; + } + + public void setIsAdmin (boolean isAdmin) { + this.isAdmin = isAdmin; + } + + public String getUserName (){ + return this.userName; + } + +} From 25a26476aa5b68998b19e7600e92b21094786fe3 Mon Sep 17 00:00:00 2001 From: mrtrofa Date: Mon, 16 Feb 2015 21:08:51 +0200 Subject: [PATCH 04/15] Delete BlogPost.java --- Trofimov/src/AutomateUsingJava/lesson1/BlogPost.java | 7 ------- 1 file changed, 7 deletions(-) delete mode 100644 Trofimov/src/AutomateUsingJava/lesson1/BlogPost.java diff --git a/Trofimov/src/AutomateUsingJava/lesson1/BlogPost.java b/Trofimov/src/AutomateUsingJava/lesson1/BlogPost.java deleted file mode 100644 index 1aef2de..0000000 --- a/Trofimov/src/AutomateUsingJava/lesson1/BlogPost.java +++ /dev/null @@ -1,7 +0,0 @@ -package AutomateUsingJava.lesson1; - - -public class BlogPost { - - -} From 20df084f6b22a41b179ad96b25308c62ca7a86a2 Mon Sep 17 00:00:00 2001 From: alex Date: Mon, 16 Feb 2015 22:58:18 +0200 Subject: [PATCH 05/15] test commit ffrom idea --- Trofimov/src/AutomateUsingJava/lesson1/test.java | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 Trofimov/src/AutomateUsingJava/lesson1/test.java diff --git a/Trofimov/src/AutomateUsingJava/lesson1/test.java b/Trofimov/src/AutomateUsingJava/lesson1/test.java new file mode 100644 index 0000000..46c2010 --- /dev/null +++ b/Trofimov/src/AutomateUsingJava/lesson1/test.java @@ -0,0 +1,7 @@ +package AutomateUsingJava.lesson1; + +/** + * Created by alex on 16.02.15. + */ +public class test { +} From 45caa03642c4c30f08586d52d40e5cd6ce14fae8 Mon Sep 17 00:00:00 2001 From: Artem Trofimov Date: Mon, 16 Feb 2015 23:01:06 +0200 Subject: [PATCH 06/15] removed test --- Trofimov/src/AutomateUsingJava/lesson1/test.java | 7 ------- 1 file changed, 7 deletions(-) delete mode 100644 Trofimov/src/AutomateUsingJava/lesson1/test.java diff --git a/Trofimov/src/AutomateUsingJava/lesson1/test.java b/Trofimov/src/AutomateUsingJava/lesson1/test.java deleted file mode 100644 index 46c2010..0000000 --- a/Trofimov/src/AutomateUsingJava/lesson1/test.java +++ /dev/null @@ -1,7 +0,0 @@ -package AutomateUsingJava.lesson1; - -/** - * Created by alex on 16.02.15. - */ -public class test { -} From 4949de68c092f36a9b69309c6f7dbf1a2bfc59ed Mon Sep 17 00:00:00 2001 From: Artem Trofimov Date: Tue, 17 Feb 2015 00:07:11 +0200 Subject: [PATCH 07/15] updated post, adding comments to post isn't defined - need to ask Dmitry & Igor. For comments we replaced array with list --- Trofimov/src/AutomateUsingJava/lesson1/Post.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Trofimov/src/AutomateUsingJava/lesson1/Post.java b/Trofimov/src/AutomateUsingJava/lesson1/Post.java index be37a36..a365396 100644 --- a/Trofimov/src/AutomateUsingJava/lesson1/Post.java +++ b/Trofimov/src/AutomateUsingJava/lesson1/Post.java @@ -1,7 +1,9 @@ package AutomateUsingJava.lesson1; +import java.util.ArrayList; import java.util.Date; +import java.util.List; public class Post { @@ -9,7 +11,7 @@ public class Post { private String postContent; private Users postAuthor; private long postDate; - Comments [] postComments; + List postComments = new ArrayList (); public Post (String postName, String postContent, Users postAuthor) { this.postAuthor = postAuthor; @@ -34,5 +36,8 @@ public long getPostDate() { return postDate; } + public Comments addComment2Post (String commentAuthor, String commentContent) { + postComments.add( ) + } } From ce45ef26b23a73bdf9b48c87be4d64585576d0ec Mon Sep 17 00:00:00 2001 From: Artem Trofimov Date: Tue, 17 Feb 2015 00:24:27 +0200 Subject: [PATCH 08/15] added main to WebBlog - need to ask Dmitry & Igor. For comments we replaced array with list --- Trofimov/src/AutomateUsingJava/lesson1/Post.java | 2 +- Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/Trofimov/src/AutomateUsingJava/lesson1/Post.java b/Trofimov/src/AutomateUsingJava/lesson1/Post.java index a365396..26c942e 100644 --- a/Trofimov/src/AutomateUsingJava/lesson1/Post.java +++ b/Trofimov/src/AutomateUsingJava/lesson1/Post.java @@ -38,6 +38,6 @@ public long getPostDate() { public Comments addComment2Post (String commentAuthor, String commentContent) { - postComments.add( ) + //postComments.add(); } } diff --git a/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java b/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java index 385d57a..c4ec3b4 100644 --- a/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java +++ b/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java @@ -1,7 +1,15 @@ package AutomateUsingJava.lesson1; +import java.util.ArrayList; +import java.util.List; + public class WebBlog { + protected String webBlogName; + List blogPost = new ArrayList(); + public static void main(String[] args) { + System.out.println("Please login :)"); + } } From b7f15a43bdb08cd1a3f346807d75dcd8a507212d Mon Sep 17 00:00:00 2001 From: vdergach Date: Wed, 18 Feb 2015 11:53:09 +0200 Subject: [PATCH 09/15] class added by Viktor --- Trofimov/src/AutomateUsingJava/lesson1/viktorTest.java | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 Trofimov/src/AutomateUsingJava/lesson1/viktorTest.java diff --git a/Trofimov/src/AutomateUsingJava/lesson1/viktorTest.java b/Trofimov/src/AutomateUsingJava/lesson1/viktorTest.java new file mode 100644 index 0000000..0a603f2 --- /dev/null +++ b/Trofimov/src/AutomateUsingJava/lesson1/viktorTest.java @@ -0,0 +1,9 @@ +package AutomateUsingJava.lesson1; + +/** + * Created by vdergach on 2/18/2015. + */ +public class viktorTest { + +} + From 614d1c677f8e28d0dbd7b696713415b121619b15 Mon Sep 17 00:00:00 2001 From: Artem Trofimov Date: Wed, 18 Feb 2015 19:41:59 +0200 Subject: [PATCH 10/15] updated classes - post, users, webblog, need to finish the actions call in main. (Alexey, Artem, Viktor D) --- .../src/AutomateUsingJava/lesson1/Post.java | 25 ++++-- .../src/AutomateUsingJava/lesson1/Users.java | 8 ++ .../AutomateUsingJava/lesson1/WebBlog.java | 77 ++++++++++++++++++- 3 files changed, 99 insertions(+), 11 deletions(-) diff --git a/Trofimov/src/AutomateUsingJava/lesson1/Post.java b/Trofimov/src/AutomateUsingJava/lesson1/Post.java index 26c942e..16213c2 100644 --- a/Trofimov/src/AutomateUsingJava/lesson1/Post.java +++ b/Trofimov/src/AutomateUsingJava/lesson1/Post.java @@ -1,9 +1,8 @@ package AutomateUsingJava.lesson1; -import java.util.ArrayList; import java.util.Date; -import java.util.List; +//import java.System; public class Post { @@ -11,7 +10,8 @@ public class Post { private String postContent; private Users postAuthor; private long postDate; - List postComments = new ArrayList (); + Comments [] postComments = new Comments [10]; + int commentId = 0; public Post (String postName, String postContent, Users postAuthor) { this.postAuthor = postAuthor; @@ -28,16 +28,27 @@ public String getPostContent() { return postContent; } - public Users getPostAuthor() { - return postAuthor; + public String getPostAuthor() { + return postAuthor.getUserName(); } public long getPostDate() { return postDate; } - public Comments addComment2Post (String commentAuthor, String commentContent) { + public void addComment2Post (Comments k) { - //postComments.add(); + if (commentId <10) { + postComments[commentId] = k; + commentId++;} + else System.out.println("huy vam!"); + } + + public void showComments2Post () { + //for (each Comments a : postComments + for (int i=0; i< commentId; i++) { + System.out.println(postComments[i].getCommentAuthor() + " commented at: " + postComments[i].getCommentDate()); + System.out.println(postComments[i].getCommentContent()); + } } } diff --git a/Trofimov/src/AutomateUsingJava/lesson1/Users.java b/Trofimov/src/AutomateUsingJava/lesson1/Users.java index 1943341..2d03bdb 100644 --- a/Trofimov/src/AutomateUsingJava/lesson1/Users.java +++ b/Trofimov/src/AutomateUsingJava/lesson1/Users.java @@ -22,4 +22,12 @@ public String getUserName (){ return this.userName; } + + public boolean getIsAdmin (){ + return this.isAdmin; + } + + public String getUserPassword() { + return userPassword; + } } diff --git a/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java b/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java index c4ec3b4..176647d 100644 --- a/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java +++ b/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java @@ -1,15 +1,84 @@ package AutomateUsingJava.lesson1; +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; public class WebBlog { - protected String webBlogName; - List blogPost = new ArrayList(); + protected String webBlogName = "Team work: Lesha, Artem, Viktor"; + Post [] blogPosts = new Post [10]; + int postId = 0; + Users [] blogUser = new Users [10]; + int userId =0; + int curUserId=-1; + BufferedReader readit = new BufferedReader(new InputStreamReader(System.in)); - public static void main(String[] args) { - System.out.println("Please login :)"); + public void addPost2Blog (Post p) { + + if (postId <10) { + blogPosts[postId] = p; + postId++;} + else System.out.println("huy vam!"); + } + + public void showPosts4Blog () { + //for (each Comments a : postComments + for (int i=0; i< postId; i++) { + System.out.println(blogPosts[i].getPostName() + " created by: " + blogPosts[i].getPostAuthor() + " at " + blogPosts[i].getPostDate()); + System.out.println(blogPosts[i].getPostContent()); + blogPosts[i].showComments2Post(); + } + } + + public void addUser(Users u) { + if (userId < 10) { + blogUser[userId] = u; + userId++; + } + else System.out.println("huy vam!"); + } + + + public void login (String l, String p){ + for (int i=0; i<10; i++) { + if (l==blogUser[i].getUserName()){ + if (p==blogUser[i].getUserPassword()) curUserId=i; + } + } } + + public void action (int a) throws IOException { + // 1 - show Posts, 2 - login, 3 - add post, 4 - add user, 5 - add comment, 6 - make admin, 7 - exit + if (a==1) showPosts4Blog(); + if (a==2) { + System.out.println("Enter user name: "); + String cUname = readit.readLine(); + System.out.println("Enter user password: "); + String cUpass = readit.readLine(); + login(cUname,cUpass); + } + if (a==3) { + if (curUserId >-1){ + System.out.println("Enter post name: "); + String curpName = readit.readLine(); + System.out.println("Enter post content: "); + String curpContent = readit.readLine(); + + new Post(curpName, curpContent, blogUser[curUserId]); + } + else System.out.println("Please login first"); + } + } + + public static void main(String[] args) { + //System.out.println("Please login :)"); + WebBlog controller = new WebBlog(); + + + + } } From 71522cb6bf9985da2d61186e7e907694e01a39d8 Mon Sep 17 00:00:00 2001 From: Artem Trofimov Date: Wed, 18 Feb 2015 19:43:27 +0200 Subject: [PATCH 11/15] removed test class from Viktor --- Trofimov/src/AutomateUsingJava/lesson1/viktorTest.java | 9 --------- 1 file changed, 9 deletions(-) delete mode 100644 Trofimov/src/AutomateUsingJava/lesson1/viktorTest.java diff --git a/Trofimov/src/AutomateUsingJava/lesson1/viktorTest.java b/Trofimov/src/AutomateUsingJava/lesson1/viktorTest.java deleted file mode 100644 index 0a603f2..0000000 --- a/Trofimov/src/AutomateUsingJava/lesson1/viktorTest.java +++ /dev/null @@ -1,9 +0,0 @@ -package AutomateUsingJava.lesson1; - -/** - * Created by vdergach on 2/18/2015. - */ -public class viktorTest { - -} - From 5219b2a22a2ddb38b4f622246b953f8fcea196a9 Mon Sep 17 00:00:00 2001 From: Artem Trofimov Date: Fri, 20 Feb 2015 00:35:42 +0200 Subject: [PATCH 12/15] minor updates to WebBlog class. having issue to call non-static methods from static main --- Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java b/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java index 176647d..3a87145 100644 --- a/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java +++ b/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java @@ -10,6 +10,7 @@ public class WebBlog { protected String webBlogName = "Team work: Lesha, Artem, Viktor"; + protected static String legend = "1 - show Posts, 2 - login, 3 - add post, 4 - add user, 5 - add comment, 6 - make admin, 7 - exit"; Post [] blogPosts = new Post [10]; int postId = 0; Users [] blogUser = new Users [10]; @@ -79,6 +80,13 @@ public static void main(String[] args) { WebBlog controller = new WebBlog(); + boolean toExit = false; + while (toExit) { + System.out.println("Please select action: " + legend); + action(Integer.parseInt(readit.readLine())); + } + + } } From 3c35636b38ceadac9ca765ecde609f3212f567df Mon Sep 17 00:00:00 2001 From: Artem Trofimov Date: Mon, 23 Feb 2015 20:57:07 +0200 Subject: [PATCH 13/15] minor updates to WebBlog class. resolved issue with calling non-static methods from static main --- .../src/AutomateUsingJava/lesson1/WebBlog.java | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java b/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java index 3a87145..2790c35 100644 --- a/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java +++ b/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java @@ -16,7 +16,7 @@ public class WebBlog { Users [] blogUser = new Users [10]; int userId =0; int curUserId=-1; - BufferedReader readit = new BufferedReader(new InputStreamReader(System.in)); + public static BufferedReader readit = new BufferedReader(new InputStreamReader(System.in)); public void addPost2Blog (Post p) { @@ -73,17 +73,25 @@ public void action (int a) throws IOException { } else System.out.println("Please login first"); } + if (a==4) { + if (curUserId != -1) { + if () + } + System.out.println(""); + } } - public static void main(String[] args) { + public static void main(String[] args) throws IOException { //System.out.println("Please login :)"); WebBlog controller = new WebBlog(); + Users admin = new Users ("admin", "admin"); + admin.setIsAdmin(true); boolean toExit = false; while (toExit) { System.out.println("Please select action: " + legend); - action(Integer.parseInt(readit.readLine())); + controller.action(Integer.parseInt(readit.readLine())); } From 9020f10d70e2be2108468c2870f9d9e3118f2f2b Mon Sep 17 00:00:00 2001 From: Artem Trofimov Date: Tue, 24 Feb 2015 17:57:40 +0200 Subject: [PATCH 14/15] more updates to WebBlog class - implemented rest of the actions. the only leftover is "add comment to post" --- .../AutomateUsingJava/lesson1/WebBlog.java | 105 +++++++++++++----- 1 file changed, 78 insertions(+), 27 deletions(-) diff --git a/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java b/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java index 2790c35..3787a00 100644 --- a/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java +++ b/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java @@ -52,32 +52,82 @@ public void login (String l, String p){ } } - public void action (int a) throws IOException { + public boolean action (int a) throws IOException { // 1 - show Posts, 2 - login, 3 - add post, 4 - add user, 5 - add comment, 6 - make admin, 7 - exit - if (a==1) showPosts4Blog(); - if (a==2) { - System.out.println("Enter user name: "); - String cUname = readit.readLine(); - System.out.println("Enter user password: "); - String cUpass = readit.readLine(); - login(cUname,cUpass); - } - if (a==3) { - if (curUserId >-1){ - System.out.println("Enter post name: "); - String curpName = readit.readLine(); - System.out.println("Enter post content: "); - String curpContent = readit.readLine(); - - new Post(curpName, curpContent, blogUser[curUserId]); + switch (a) { + case 1: { + showPosts4Blog(); //show Posts + return false; } - else System.out.println("Please login first"); - } - if (a==4) { - if (curUserId != -1) { - if () + break; + + case 2: { //login + System.out.println("Enter user name: "); + String cUname = readit.readLine(); + System.out.println("Enter user password: "); + String cUpass = readit.readLine(); + login(cUname, cUpass); + return false; + } + break; + + case 3: { //add post + if (curUserId != -1) { + System.out.println("Enter post name: "); + String curpName = readit.readLine(); + System.out.println("Enter post content: "); + String curpContent = readit.readLine(); + + new Post(curpName, curpContent, blogUser[curUserId]); + } else System.out.println("Please login first"); + return false; + } + break; + + case 4: { //add user + if (curUserId != -1) { + if (blogUser[curUserId].getIsAdmin()) { + System.out.println("Please enter user name"); + String s1 = readit.readLine(); + System.out.println("Please enter user password"); + String s2 = readit.readLine(); + addUser(new Users(s1, s2)); + } else System.out.println("ERROR: You don't have admin permissions"); + } else System.out.println("ERROR: Please login first with account having admin permissions"); + return false; + } + break; + + case 5: { //add comment + + return false; + } + break; + + case 6: { //make admin + if (curUserId != -1) { + if (blogUser[curUserId].getIsAdmin()) { + System.out.println("Please enter user name"); + String sn = readit.readLine(); + for (int i = 0; i < 10; i++) { + if (blogUser[i].getUserName().equals(sn)) blogUser[i].setIsAdmin(true); + } + } else System.out.println("ERROR: You don't have admin permissions"); + } else System.out.println("ERROR: Please login first with account having admin permissions"); + return false; + } + break; + + case 7: { //exit + return true; + } + break; + + default: { + + return false; } - System.out.println(""); + break; } } @@ -85,13 +135,14 @@ public static void main(String[] args) throws IOException { //System.out.println("Please login :)"); WebBlog controller = new WebBlog(); - Users admin = new Users ("admin", "admin"); - admin.setIsAdmin(true); + Users admin = new Users ("admin", "admin"); + admin.setIsAdmin(true); + controller.addUser(admin); boolean toExit = false; - while (toExit) { + while (!toExit) { System.out.println("Please select action: " + legend); - controller.action(Integer.parseInt(readit.readLine())); + toExit = controller.action(Integer.parseInt(readit.readLine())); } From 9c1a905216a3e17923fc944a90637a4b577d3787 Mon Sep 17 00:00:00 2001 From: Artem Trofimov Date: Thu, 26 Feb 2015 17:47:29 +0200 Subject: [PATCH 15/15] compilation passed. found errors are fixed. It's working!!! :) Adding comments still not fully implemented. --- .../AutomateUsingJava/lesson1/Comments.java | 6 +- .../src/AutomateUsingJava/lesson1/Post.java | 6 +- .../AutomateUsingJava/lesson1/WebBlog.java | 77 +++++++++++-------- 3 files changed, 50 insertions(+), 39 deletions(-) diff --git a/Trofimov/src/AutomateUsingJava/lesson1/Comments.java b/Trofimov/src/AutomateUsingJava/lesson1/Comments.java index 5b70356..d3f60eb 100644 --- a/Trofimov/src/AutomateUsingJava/lesson1/Comments.java +++ b/Trofimov/src/AutomateUsingJava/lesson1/Comments.java @@ -6,12 +6,12 @@ public class Comments { private String commentAuthor; private String commentContent; - private long commentDate; + private Date commentDate; public Comments (String commentAuthor, String commentContent){ this.commentAuthor = commentAuthor; this.commentContent = commentContent; - this.commentDate = new Date().getTime(); + this.commentDate = new Date(); } public String getCommentAuthor() { @@ -22,7 +22,7 @@ public String getCommentContent() { return commentContent; } - public long getCommentDate() { + public Date getCommentDate() { return commentDate; } } diff --git a/Trofimov/src/AutomateUsingJava/lesson1/Post.java b/Trofimov/src/AutomateUsingJava/lesson1/Post.java index 16213c2..bf4cd15 100644 --- a/Trofimov/src/AutomateUsingJava/lesson1/Post.java +++ b/Trofimov/src/AutomateUsingJava/lesson1/Post.java @@ -9,7 +9,7 @@ public class Post { private String postName; private String postContent; private Users postAuthor; - private long postDate; + private Date postDate; Comments [] postComments = new Comments [10]; int commentId = 0; @@ -17,7 +17,7 @@ public Post (String postName, String postContent, Users postAuthor) { this.postAuthor = postAuthor; this.postName = postName; this.postContent = postContent; - this.postDate = new Date().getTime(); + this.postDate = new Date(); } public String getPostName() { @@ -32,7 +32,7 @@ public String getPostAuthor() { return postAuthor.getUserName(); } - public long getPostDate() { + public Date getPostDate() { return postDate; } diff --git a/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java b/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java index 3787a00..bfbd19b 100644 --- a/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java +++ b/Trofimov/src/AutomateUsingJava/lesson1/WebBlog.java @@ -9,46 +9,60 @@ public class WebBlog { - protected String webBlogName = "Team work: Lesha, Artem, Viktor"; + protected static String webBlogName = "Homework #1 & #2. Team work: Lesha, Artem, Viktor"; protected static String legend = "1 - show Posts, 2 - login, 3 - add post, 4 - add user, 5 - add comment, 6 - make admin, 7 - exit"; - Post [] blogPosts = new Post [10]; + public static Post [] blogPosts = new Post [10]; int postId = 0; - Users [] blogUser = new Users [10]; + public static Users [] blogUser = new Users [10]; int userId =0; int curUserId=-1; public static BufferedReader readit = new BufferedReader(new InputStreamReader(System.in)); public void addPost2Blog (Post p) { - if (postId <10) { + if (postId < blogPosts.length) { blogPosts[postId] = p; postId++;} - else System.out.println("huy vam!"); + else System.out.println("ERROR: This nice blog is designed to contain no more than " + blogPosts.length + " posts! Please stop adding the content"); } public void showPosts4Blog () { //for (each Comments a : postComments for (int i=0; i< postId; i++) { - System.out.println(blogPosts[i].getPostName() + " created by: " + blogPosts[i].getPostAuthor() + " at " + blogPosts[i].getPostDate()); + System.out.println(""); + System.out.println("#" + i + " " + blogPosts[i].getPostName() + " created by: " + blogPosts[i].getPostAuthor() + " at " + blogPosts[i].getPostDate()); System.out.println(blogPosts[i].getPostContent()); blogPosts[i].showComments2Post(); + System.out.println(""); } } public void addUser(Users u) { - if (userId < 10) { + if (userId < blogUser.length) { blogUser[userId] = u; userId++; - } - else System.out.println("huy vam!"); + } + else System.out.println("ERROR: You reached the limit for maximum users of this nice blog! The current limit is: " + blogUser.length); } public void login (String l, String p){ - for (int i=0; i<10; i++) { - if (l==blogUser[i].getUserName()){ - if (p==blogUser[i].getUserPassword()) curUserId=i; + for (int i = 0; i < WebBlog.blogUser.length; i++) { +// System.out.println(WebBlog.blogUser.length + " , i: " + i); //for test purposes +// System.out.println(WebBlog.blogUser[i].getUserName() + " " + WebBlog.blogUser[i].getUserPassword()); //for test purposes + if (WebBlog.blogUser[i] == null) break; +// try { + if (blogUser[i].getUserName().equals(l)) { + if (blogUser[i].getUserPassword().equals(p)) { + System.out.println("Welcome " + l + " id: " + i); + curUserId = i; + break; + } } +// } +// catch (NullPointerException e) { +// +// } } } @@ -59,7 +73,6 @@ public boolean action (int a) throws IOException { showPosts4Blog(); //show Posts return false; } - break; case 2: { //login System.out.println("Enter user name: "); @@ -69,7 +82,6 @@ public boolean action (int a) throws IOException { login(cUname, cUpass); return false; } - break; case 3: { //add post if (curUserId != -1) { @@ -77,12 +89,10 @@ public boolean action (int a) throws IOException { String curpName = readit.readLine(); System.out.println("Enter post content: "); String curpContent = readit.readLine(); - - new Post(curpName, curpContent, blogUser[curUserId]); + addPost2Blog(new Post(curpName, curpContent, blogUser[curUserId])); } else System.out.println("Please login first"); return false; } - break; case 4: { //add user if (curUserId != -1) { @@ -92,17 +102,16 @@ public boolean action (int a) throws IOException { System.out.println("Please enter user password"); String s2 = readit.readLine(); addUser(new Users(s1, s2)); + System.out.println("User " + s1 + " created."); } else System.out.println("ERROR: You don't have admin permissions"); } else System.out.println("ERROR: Please login first with account having admin permissions"); return false; } - break; case 5: { //add comment return false; } - break; case 6: { //make admin if (curUserId != -1) { @@ -116,36 +125,38 @@ public boolean action (int a) throws IOException { } else System.out.println("ERROR: Please login first with account having admin permissions"); return false; } - break; case 7: { //exit return true; } - break; default: { - + System.out.println("Please enter valid action id. You entered: \"" + a + "\" which isn't associated with any action yet!"); return false; } - break; } } - public static void main(String[] args) throws IOException { - //System.out.println("Please login :)"); - WebBlog controller = new WebBlog(); - + public static void main(String[] args) throws IOException { + //System.out.println("Please login :)"); + WebBlog controller = new WebBlog(); + System.out.println(webBlogName); Users admin = new Users ("admin", "admin"); admin.setIsAdmin(true); controller.addUser(admin); - boolean toExit = false; - while (!toExit) { - System.out.println("Please select action: " + legend); - toExit = controller.action(Integer.parseInt(readit.readLine())); - } + boolean toExit = false; + while (!toExit) { + System.out.println(""); + System.out.println("Please select action: " + legend); + try { + toExit = controller.action(Integer.parseInt(readit.readLine())); + } catch (NumberFormatException e) { + System.out.println("ERROR: Please enter the number associated with required action."); + } + } - } + } }