Skip to content

Commit db19ad8

Browse files
committed
Fixing bug with not adding existing hashtag to post object
1 parent 7c3eb22 commit db19ad8

File tree

3 files changed

+18
-1
lines changed

3 files changed

+18
-1
lines changed

src/main/java/org/kryptokrona/hugin/repository/HashtagRepository.java

+2
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ public interface HashtagRepository extends JpaRepository<Hashtag, Long> {
1818

1919
boolean existsHashtagByName(String name);
2020

21+
Hashtag findHashtagByName(String name);
22+
2123
// @Query(value = "", nativeQuery = true)
2224
// Page<Hashtag> findAllTrending(Pageable pageable);
2325

src/main/java/org/kryptokrona/hugin/service/HashtagService.java

+12
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,18 @@ public Hashtag getById(long id) {
6868
return null;
6969
}
7070

71+
public Hashtag getByName(String name) {
72+
if (hashtagRepository.existsHashtagByName(name)) {
73+
Hashtag hashtag = hashtagRepository.findHashtagByName(name);
74+
logger.info("Hashtag found with name: " + name);
75+
return hashtag;
76+
}
77+
78+
logger.info("Unable to find hashtag with name: " + name);
79+
80+
return null;
81+
}
82+
7183
public boolean existsByName(String hashtagName) {
7284
return hashtagRepository.existsHashtagByName(hashtagName);
7385
}

src/main/java/org/kryptokrona/hugin/service/PostService.java

+4-1
Original file line numberDiff line numberDiff line change
@@ -109,10 +109,13 @@ public void save(Post post) {
109109

110110
var hashtagName = matcher.group().replaceAll("#", "");
111111

112-
// create one if it doesn't already exist in db
112+
// find the hashtag object if it already exists and put it in hashtagList
113113
if (hashtagService.existsByName(hashtagName)) {
114114
logger.debug("Hashtag already exists in db, skipping.");
115+
var hashtagObj = hashtagService.getByName(hashtagName);
116+
hashtagList.add(hashtagObj);
115117
} else {
118+
// create a new hashtag and put in hashtagList
116119
var hashtagObj = new Hashtag();
117120
hashtagObj.setName(hashtagName);
118121
hashtagService.save(hashtagObj);

0 commit comments

Comments
 (0)