Skip to content

Commit eef6ff7

Browse files
committed
Merge conflict 처리
2 parents 7c3d144 + 4f5ea60 commit eef6ff7

File tree

7 files changed

+210
-3
lines changed

7 files changed

+210
-3
lines changed
Binary file not shown.
0 Bytes
Binary file not shown.
Binary file not shown.

.idea/workspace.xml

+11-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
package com.sprint.mission.discodeit.jcf;
2+
3+
import com.sprint.mission.discodeit.entity.Channel;
4+
import com.sprint.mission.discodeit.entity.User;
5+
import com.sprint.mission.discodeit.service.ChannelService;
6+
7+
import java.util.ArrayList;
8+
import java.util.List;
9+
10+
public class JCFChannelService implements ChannelService {
11+
// 초기 채널 입력
12+
private final List<Channel> channels = new ArrayList<>();
13+
public JCFChannelService(){
14+
channels.add(new Channel("ch01","default Channel","관리자",1744036548250L,1744036548250L));
15+
16+
}
17+
// 채널 생성 메서드
18+
@Override
19+
public Channel addChannel(String channelName, String channelDesc, User user){
20+
long now = System.currentTimeMillis();
21+
Channel channel = new Channel(channelName,channelDesc,user.getName(),now,now);
22+
channels.add(channel);
23+
System.out.print("\n ▶ [새로운 채널 생성완료]");
24+
System.out.println(" ▶ 채널명 : " + channel.getChannelName() + " ▶ 생성시간 : " + channel.getCreatedAt());
25+
return channel;
26+
};
27+
// 채널 수정 메서드
28+
@Override
29+
public void UpdateChannel(Channel channel, String channelName, String channelDescription){
30+
long now = System.currentTimeMillis();
31+
channel.setChannelName(channelName);
32+
channel.setChannelDescription(channelDescription);
33+
channel.setUpdatedAt(now);
34+
System.out.print("\n ▶ [채널 정보 수정 완료]");
35+
System.out.println(channel);
36+
};
37+
// 채널 삭제 메서드
38+
@Override
39+
public void deleteChannel(Channel channel){
40+
channels.remove(channel);
41+
};
42+
// 전체채널목록 출력 메서드
43+
@Override
44+
public void printAllChannels(){
45+
System.out.println("<< 생성된 전체 채널 >>");
46+
System.out.println("채널명 | 개설자 | 채널설명(개설시간)");
47+
channels.forEach(chan -> System.out.println(chan.getChannelName()+" | "+chan.getChannelCreater()+" | "+chan.getChannelDescription()+" ("+chan.getCreatedAt() + ")"));
48+
System.out.println("");
49+
}
50+
51+
@Override
52+
public List<Channel> getAllChannels() {
53+
return List.of();
54+
}
55+
56+
@Override // 이름으로 채널 검색 메서드. 채널객체를 return
57+
public Channel findChannelByName(String name){
58+
for (Channel channel : channels) {
59+
if (channel.getChannelName().equals(name)) {
60+
return channel; // 일치하는 name 발견시 channel 객체를 리턴
61+
}
62+
}
63+
return null; // 없으면 null
64+
}
65+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
package com.sprint.mission.discodeit.jcf;
2+
3+
import com.sprint.mission.discodeit.entity.Message;
4+
import com.sprint.mission.discodeit.entity.User;
5+
import com.sprint.mission.discodeit.service.MessageService;
6+
7+
import java.util.ArrayList;
8+
import java.util.List;
9+
10+
public class JCFMessageService implements MessageService {
11+
private final List<Message> messages = new ArrayList<>();
12+
// 테스트용 초기 더미 데이터 입력
13+
public JCFMessageService() {
14+
messages.add(new Message(001,"희동이","더미 데이터 1 요리보고 조리봐도", 1744036548250L , 1744036548250L));
15+
messages.add(new Message(002,"희동이","더미 데이터 2 알수없는 둘리둘리", 1744036558250L , 1744036558250L));
16+
messages.add(new Message(003,"도우너","더미 데이터 3 빙하타고~내려와아", 1744036938250L , 1744036938250L));
17+
messages.add(new Message(004,"고길동","더미 데이터 4 치인구를 만났지만", 1744036938250L , 1744036938250L));
18+
}
19+
@Override
20+
public void uploadMsg(User user,String txtMsg){
21+
long now = System.currentTimeMillis();
22+
Message message = new Message(messages.size() + 1,user.getName(),txtMsg,now,now);
23+
messages.add(message);
24+
}
25+
26+
@Override
27+
public void updateMsg(User user, Message message,String newMsg) {
28+
String resetColor = "\u001B[0m";
29+
String setColorYellow = "\u001B[33m";
30+
message.setTextMsg(newMsg + setColorYellow + " *** [" + user.getName() + "] 에 의해 수정됨" + resetColor);
31+
message.setUpdatedAt(System.currentTimeMillis());
32+
}
33+
34+
public void deleteMessage(User user, Message message){
35+
String resetColor = "\u001B[0m";
36+
String setColorRed = "\u001B[31m";
37+
message.setTextMsg(setColorRed + " - ////// " + user.getName() + " 사용자에 의해 삭제됨 ////// -" +message.getUpdatedAt() + resetColor);
38+
message.setUpdatedAt(System.currentTimeMillis());
39+
}
40+
public Message findMessageByNum(int num){
41+
for (Message message : messages) {
42+
if (message.getMsgNumber() == num) {
43+
return message; // 일치하는 메세지 번호 발견시 message 리턴
44+
}
45+
}return null;
46+
}
47+
public void printAllMessages() {
48+
System.out.println("<< 입력된 전체 메세지 >>");
49+
System.out.println("번호 | 사용자 : 메세지");
50+
messages.forEach(m -> System.out.printf("%4d | %-10s: %s \n 생성일 : %s 수정일 : %s UUID : %s\n",m.getMsgNumber(),m.getAuthor(),m.getTextMsg(),m.getCreatedAt(),m.getUpdatedAt(),m.getId()));
51+
System.out.println();
52+
}
53+
public void printOneMessage(int msgNum){
54+
Message message = findMessageByNum(msgNum);
55+
System.out.printf("%4d | %-10s: %s \n 생성일 : %s 수정일 : %s UUID : %s\n", message.getMsgNumber(),message.getAuthor(),message.getTextMsg(),message.getCreatedAt(),message.getUpdatedAt(),message.getId() );
56+
}
57+
public List<Message> getMessagesList() {
58+
return messages;
59+
}
60+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
package com.sprint.mission.discodeit.jcf;
2+
3+
import com.sprint.mission.discodeit.entity.User;
4+
import com.sprint.mission.discodeit.service.UserService;
5+
6+
import java.util.*;
7+
8+
public class JCFUserService implements UserService {
9+
private final List<User> users = new ArrayList<>();
10+
// 테스트용 초기 더미 데이터 입력
11+
public JCFUserService() {
12+
users.add(new User("희동이" , 1744036538250L , 1744036538250L));
13+
users.add(new User("고길동" , 1744036738250L , 1744071238250L));
14+
users.add(new User("도우너" , 1744036938250L , 1744036538250L));
15+
}
16+
17+
@Override // 유저 생성 메서드 createUser()
18+
public User createUser(String name) {
19+
long now = System.currentTimeMillis();
20+
User user = new User(name, now, now);
21+
users.add(user);
22+
System.out.println("사용자의 이름을 [" + user.getName() + "] 으로 생성하였습니다. | " + user.getCreatedAt());
23+
return user;
24+
}
25+
26+
@Override //유저 이름 변경 메서드 updateUserName()
27+
public void updateUserName(User user, String newName) {
28+
String oldName = user.getName();
29+
user.setName(newName);
30+
user.setUpdatedAt(System.currentTimeMillis());
31+
System.out.println("[" + oldName + "] 사용자의 이름을 [" + user.getName() + "] 으로 변경하였습니다. | " + user.getUpdatedAt());
32+
}
33+
34+
@Override
35+
public boolean deleteUser(UUID id) {
36+
return users.removeIf(user -> user.getId().equals(id));
37+
}
38+
39+
@Override
40+
public boolean deleteUser(String name) {
41+
return users.removeIf(user -> user.getName().equals(name));
42+
}
43+
44+
@Override
45+
public User findUserById(UUID id) {
46+
for (User user : users) {
47+
if (user.getId().equals(id)) {
48+
return user; // 일치하는 ID 발견시 user 리턴
49+
}
50+
}
51+
return null; // 없으면 null 리턴
52+
}
53+
54+
@Override
55+
public User findUserByName(String name) {
56+
for (User user : users) {
57+
if (user.getName().equals(name)) {
58+
return user; // 일치하는 name 발견시 user 리턴
59+
}
60+
}
61+
return null; // 없으면 null 리턴
62+
}
63+
64+
// 유틸 메서드: 모든 사용자 출력
65+
public void printAllUsers(){
66+
System.out.println(" □ □ □ 전체 사용자 목록 □ □ □ \n 사용자이름 | 사용자생성시간 | 사용자정보 수정시간 | 사용자UUID");
67+
users.forEach(u -> System.out.println(" " + u.getName() + " | " + u.getCreatedAt() + " | " + u.getUpdatedAt() + " | " + u.getId()));
68+
System.out.println();
69+
}
70+
public List<User> getUserslist() {
71+
return users;
72+
}
73+
74+
}

0 commit comments

Comments
 (0)