Skip to content

Instantly share code, notes, and snippets.

View kaansonmezoz's full-sized avatar

Kaan Sonmezoz kaansonmezoz

View GitHub Profile
public List<Trip> getTripsByUser(User user) throws UserNotLoggedInException {
User loggedUser = UserSession.getInstance().getLoggedUser();
if(loggedUser == null){
throw new UserNotLoggedInException();
}
return isFriend(user.getFriends(), loggedUser) ?
TripDAO.findTripsByUser(user) : new ArrayList<Trip>();
}
public List<Trip> getTripsByUser(User user) throws UserNotLoggedInException {
User loggedUser = UserSession.getInstance().getLoggedUser();
if(loggedUser == null){
throw new UserNotLoggedInException();
}
List<Trip> tripList = new ArrayList<Trip>();
boolean isFriend = isFriendOf(user, loggedUser);
private boolean isFriendOf(User user, User loggedUser) {
for (User friend: user.getFriends()) {
if (friend.equals(loggedUser)) {
return true;
}
}
return false;
}
public List<Trip> getTripsByUser(User user) throws UserNotLoggedInException {
User loggedUser = UserSession.getInstance().getLoggedUser();
if(loggedUser == null){
throw new UserNotLoggedInException();
}
List<Trip> tripList = new ArrayList<Trip>();
boolean isFriend = false;
@kaansonmezoz
kaansonmezoz / refactoring-ornek-1.java
Created March 25, 2020 19:16
Refactoring Örnek - 1
public List<Trip> getTripsByUser(User user) throws UserNotLoggedInException {
List<Trip> tripList = new ArrayList<Trip>();
User loggedUser = UserSession.getInstance().getLoggedUser();
boolean isFriend = false;
if (loggedUser != null) {
for (User friend : user.getFriends()) {
if (friend.equals(loggedUser)) {
isFriend = true;
break;
}
@kaansonmezoz
kaansonmezoz / FileReaderFactory.java
Last active December 19, 2019 23:00
Factory Pattern ~ A Modern Approach - 4 (FileReaderFactory)
@Service
public class FileReaderFactory {
private EnumMap<FileType, FileReader> fileReaders;
public FileReaderFactory(List<FileReader> fileReaderList){
fileReaders = new EnumMap<>(FileType.class);
fileReaderList.forEach(reader -> fileReaders.put(reader.getSupportedFileType(), reader));
}
public FileReader getFileReader(String extension){
@kaansonmezoz
kaansonmezoz / CsvReader.java
Created December 19, 2019 22:55
Factory Pattern ~ A Modern Approach - 4 (FileReader)
@Service
public class CsvReader extends FileReader {
public CsvReader(){
super(FileType.CSV);
}
@Override
public void readFile(String filePath) {
System.out.println(String.format("CsvReader --> Reading file: %s", filePath));
@kaansonmezoz
kaansonmezoz / FileType.java
Created December 19, 2019 22:51
Factory Pattern ~ A Modern Approach - 4 (FileType enum)
public enum FileType {
CSV("csv"),
EXCEL("xlsx"),
PDF("pdf");
FileType(String extension){
this.extension = extension;
}
private String extension;
@kaansonmezoz
kaansonmezoz / FileOperations.java
Created December 19, 2019 22:31
Factory Pattern ~ A Modern Approach - 3
public class FileOperations {
private FileReaderFactory readerFactory;
// some code here
public String readFile(String filePath){
return readerFactory.createFileReader(filePath).readFile(FilePath);
}
}
@kaansonmezoz
kaansonmezoz / CsvReader.java
Created December 19, 2019 22:11
Factory Pattern ~ A Modern Approach - 3
public class CsvReader implements FileReader {
// some code here
public String readFile(String filePath) {
// ...
return fileContent;
}
}