Skip to content

Commit 84cad5c

Browse files
Вывод количества пользователей
1 parent 0bce97c commit 84cad5c

File tree

4 files changed

+27
-19
lines changed

4 files changed

+27
-19
lines changed

ConnectFour.iml

+1-9
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,6 @@
99
</content>
1010
<orderEntry type="inheritedJdk" />
1111
<orderEntry type="sourceFolder" forTests="false" />
12-
<orderEntry type="module-library">
13-
<library>
14-
<CLASSES>
15-
<root url="jar://$APPLICATION_HOME_DIR$/lib/org.json-20120521.jar!/" />
16-
</CLASSES>
17-
<JAVADOC />
18-
<SOURCES />
19-
</library>
20-
</orderEntry>
2112
<orderEntry type="library" name="Maven: org.freemarker:freemarker:2.3.20" level="project" />
2213
<orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-server:9.3.0.M0" level="project" />
2314
<orderEntry type="library" name="Maven: javax.servlet:javax.servlet-api:3.1.0" level="project" />
@@ -31,5 +22,6 @@
3122
<orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-rewrite:9.3.0.M0" level="project" />
3223
<orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-client:9.3.0.M0" level="project" />
3324
<orderEntry type="library" name="Maven: org.json:json:20131018" level="project" />
25+
<orderEntry type="library" name="Maven: com.intellij:annotations:9.0.4" level="project" />
3426
</component>
3527
</module>

src/main/java/admin/AdminServlet.java

+16-4
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,15 @@
22

33
import org.jetbrains.annotations.NotNull;
44
import main.AccountService;
5+
import org.json.JSONObject;
56

67
import javax.servlet.ServletException;
78
import javax.servlet.http.HttpServlet;
89
import javax.servlet.http.HttpServletRequest;
910
import javax.servlet.http.HttpServletResponse;
1011
import java.io.IOException;
11-
import java.io.PrintWriter;
12+
import java.util.HashMap;
13+
import java.util.Map;
1214

1315

1416
public class AdminServlet extends HttpServlet {
@@ -25,25 +27,35 @@ public AdminServlet(@NotNull AccountService accountService) {
2527
public void doGet(HttpServletRequest request,
2628
HttpServletResponse response) throws ServletException, IOException {
2729
String shutdown = request.getParameter("shutdown");
30+
String registCount = request.getParameter("count_regist");
31+
String logCount = request.getParameter("count_logged");
2832

29-
PrintWriter writer = response.getWriter();
33+
Map<String, Object> objResponse = new HashMap<>();
34+
objResponse.put("count_regist", -1);
35+
objResponse.put("count_logged", -1);
3036

3137
if (shutdown != null && !shutdown.isEmpty()) {
3238
try {
3339
int shut = Integer.parseInt(shutdown);
3440
System.out.print("выключение сервера через " + shut + " ms");
3541
Thread.sleep(shut);
36-
3742
} catch (InterruptedException e) {
3843
e.printStackTrace();
3944
}
4045
System.out.print("\nShutdown");
4146
System.exit(0);
4247
}
48+
if (registCount != null && registCount.equals("true")) {
49+
objResponse.put("count_regist", accountService.getRegisteredUsersCount());
50+
}
51+
if (logCount != null && logCount.equals("true")) {
52+
objResponse.put("count_logged", accountService.getLoggedUsersCount());
53+
}
4354

55+
JSONObject jsonResponse = new JSONObject(objResponse);
4456
response.setContentType("application/json");
4557
response.setCharacterEncoding("UTF-8");
46-
//response.getWriter().write(jsonResponse.toString());
58+
response.getWriter().write(jsonResponse.toString());
4759
response.setStatus(HttpServletResponse.SC_OK);
4860
}
4961
}

src/main/java/main/AccountService.java

+10-1
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ public long singIn(HttpSession session, String login, String password) {
4343
return -1;
4444
}
4545

46+
/////// наверно надо сделать deleteSession()
4647
public boolean logOut(HttpSession session) {
4748
Long userId = (Long) session.getAttribute("userId");
4849
if (!sessions.isEmpty()) {
@@ -117,7 +118,15 @@ public boolean validationPassword(String password) {
117118
*/
118119
}
119120

120-
public void addUser(UserProfile userProfile) {
121+
public int getRegisteredUsersCount(){
122+
return users.size();
123+
}
124+
125+
public int getLoggedUsersCount(){
126+
return sessions.size();
127+
}
128+
129+
private void addUser(UserProfile userProfile) {
121130
users.put(userProfile.getLogin(), userProfile);
122131
}
123132

src/main/java/main/Main.java

-5
Original file line numberDiff line numberDiff line change
@@ -20,18 +20,13 @@ public class Main {
2020
public static void main(String[] args) throws Exception {
2121
//int port = 8080;
2222
if (args.length != 1) {
23-
/*
24-
String portString = args[0];
25-
port = Integer.valueOf(portString);
26-
*/
2723
System.out.append("Use port as the first argument");
2824
System.exit(1);
2925
}
3026

3127
String portString = args[0];
3228
int port = Integer.valueOf(portString);
3329
System.out.append("Starting at port: ").append(portString).append('\n');
34-
//System.out.append("Starting at port: ").append(String.valueOf(port)).append('\n');
3530

3631
AccountService accountService = new AccountService();
3732

0 commit comments

Comments
 (0)