Skip to content

Commit 5347ab9

Browse files
authored
Server java files
1 parent f80fd68 commit 5347ab9

File tree

7 files changed

+742
-0
lines changed

7 files changed

+742
-0
lines changed

src/META-INF/MANIFEST.MF

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
Manifest-Version: 1.0
2+
Main-Class: com.company.Main
3+

src/com/company/CSVHandling.java

Lines changed: 208 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,208 @@
1+
package com.company;
2+
3+
4+
import java.io.*;
5+
import java.util.*;
6+
7+
8+
public class CSVHandling {
9+
private final String filename;
10+
private String User;
11+
private String pass;
12+
private int Score = 0;
13+
private int Time = 0;
14+
private int numberWins =0;
15+
private int rank = 0;
16+
public int id =0;
17+
public ArrayList<String[]> array;
18+
19+
public void ObtainRanking(){
20+
for (int i=0;i<array.size();i++){
21+
String[] Temp = array.get(i);
22+
Temp[5] = String.valueOf(i);
23+
}
24+
}
25+
26+
public void SortArray(){
27+
boolean swap = true;
28+
while (swap)
29+
swap = false;
30+
for (int j=0;j<array.size();j++){
31+
try {
32+
if (Integer.parseInt(array.get(j)[2]) < Integer.parseInt(array.get(j+1)[2])) {
33+
String[] Temp = array.get(j);
34+
array.set(j, array.get(j + 1));
35+
array.set(j + 1, Temp);
36+
swap = true;
37+
}
38+
} catch (Exception e){
39+
System.out.println("hello");
40+
}
41+
}
42+
ObtainRanking();
43+
44+
}
45+
46+
private void write() {
47+
try(FileWriter fw = new FileWriter(filename, false);
48+
BufferedWriter bw = new BufferedWriter(fw);
49+
PrintWriter out = new PrintWriter(bw))
50+
{
51+
out.println(User + "," + pass + "," + Score + "," + Time + "," + numberWins + "," + rank +",");
52+
//more code
53+
} catch (IOException e) {
54+
55+
}
56+
}
57+
58+
public boolean append(){
59+
try(FileWriter fw = new FileWriter(filename, true);
60+
BufferedWriter bw = new BufferedWriter(fw);
61+
PrintWriter out = new PrintWriter(bw))
62+
{
63+
out.println(User + "," + pass + "," + Score + "," + Time + "," + numberWins + "," + rank +",");
64+
return true;
65+
} catch (IOException e) {
66+
return false;
67+
}
68+
}
69+
70+
71+
public boolean update(){
72+
73+
String[] temp = new String[6];
74+
temp[0] = User;
75+
temp[1] = pass;
76+
temp[2] = String.valueOf(Score);
77+
temp[3] = String.valueOf(Time);
78+
temp[4] = String.valueOf(numberWins);
79+
temp[5] = String.valueOf(rank);
80+
array.set(id,temp);
81+
SortArray();
82+
try(FileWriter fw = new FileWriter(filename, false);
83+
BufferedWriter bw = new BufferedWriter(fw);
84+
PrintWriter out = new PrintWriter(bw))
85+
{
86+
for (int i=0;i<array.size();i++) {
87+
out.println(array.get(i)[0] + "," + array.get(i)[1] + "," + array.get(i)[2] + "," + array.get(i)[3] + "," + array.get(i)[4] + "," + array.get(i)[5] + ",");
88+
}
89+
out.close();
90+
bw.close();
91+
fw.close();
92+
return true;
93+
} catch (IOException e) {
94+
return false;
95+
}
96+
}
97+
public void setUser(String user) {
98+
User = user;
99+
}
100+
101+
public void setPass(String pass) {
102+
this.pass = pass;
103+
}
104+
105+
public void setScore(int score) {
106+
Score = score;
107+
}
108+
109+
public void setTime(int time) {
110+
Time = time;
111+
}
112+
113+
public void setNumberWins(int numberWins) {
114+
this.numberWins = numberWins;
115+
}
116+
117+
public void setRank(int rank) {
118+
this.rank = rank;
119+
}
120+
121+
public void setId(int id) {
122+
this.id = id;
123+
}
124+
125+
public String getUser() {
126+
return User;
127+
}
128+
129+
130+
131+
public int getScore() {
132+
return Score;
133+
}
134+
135+
public int getTime() {
136+
return Time;
137+
}
138+
139+
public int getNumberWins() {
140+
return numberWins;
141+
}
142+
143+
public void read(){
144+
array = new ArrayList();
145+
try {
146+
File myObj = new File(filename);
147+
Scanner myReader = new Scanner(myObj);
148+
while (myReader.hasNextLine()) {
149+
String[] data = myReader.nextLine().split(",");
150+
if (data.length > 1) {
151+
array.add(data);
152+
System.out.println(Arrays.toString(data));
153+
}
154+
}
155+
myReader.close();
156+
} catch (FileNotFoundException e) {
157+
System.out.println("An error occurred.");
158+
e.printStackTrace();
159+
}
160+
}
161+
162+
163+
//CSV constructor
164+
public CSVHandling(String filename, int type, String user, String pass){
165+
this.filename = filename;
166+
this.User = user;
167+
this.pass = pass;
168+
switch (type){
169+
case 1:
170+
read();
171+
break;
172+
default:
173+
write();
174+
}
175+
}
176+
public boolean ExistingAC(String username,String password){
177+
boolean auth = false;
178+
for (int i=0;i<array.size();i++){
179+
if (array.get(i)[0].equals(username)){
180+
auth = true;
181+
}
182+
}
183+
return auth;
184+
}
185+
186+
public boolean CheckAuth(String username,String password){
187+
boolean auth = false;
188+
for (int i=0;i<array.size();i++){
189+
if (array.get(i)[0].equals(username) && array.get(i)[1].equals(password)){
190+
auth = true;
191+
String[] data = array.get(i);
192+
User = data[0];
193+
pass = data[1];
194+
Score = Integer.parseInt(data[2]);
195+
Time = Integer.parseInt(data[3]);
196+
numberWins = Integer.parseInt(data[4]);
197+
rank = Integer.parseInt(data[5]);
198+
id = i;
199+
i=array.size()+2;
200+
}
201+
}
202+
return auth;
203+
204+
}
205+
206+
207+
}
208+

src/com/company/GetRecv.java

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
package com.company;
2+
3+
import java.io.BufferedReader;
4+
import java.io.PrintWriter;
5+
6+
public class GetRecv implements Runnable {
7+
private final BufferedReader out;
8+
private final PrintWriter in;
9+
public String result = "";
10+
11+
public static String Recv(BufferedReader in){
12+
String userOut =null;
13+
try {
14+
while ((userOut = in.readLine()) != null) //Waits for response
15+
{
16+
//System.out.println("Server says: " + userOut); //Prints response
17+
break;
18+
}
19+
} catch (Exception e){
20+
System.out.println(e);
21+
}
22+
23+
24+
return userOut.replace(";::;","\n");
25+
}
26+
27+
28+
public GetRecv(PrintWriter in, BufferedReader out){
29+
this.in = in;
30+
this.out = out;
31+
}
32+
33+
@Override
34+
public void run() {
35+
while (true){
36+
try {
37+
String hold = Recv(out);
38+
if (!hold.isEmpty()) {
39+
result = hold;
40+
}
41+
}
42+
catch (Exception e){
43+
result = "end";
44+
break;
45+
}
46+
}
47+
}
48+
}

0 commit comments

Comments
 (0)