Skip to content

Commit

Permalink
[FIX] 파일 못찾는 문제 해결 (#52)
Browse files Browse the repository at this point in the history
* [CHORE] 투표 ID 순으로 불러오기

* [FEAT] 팝업스토어 [내 정보 + TOP 5] 리스트 조회

* [FEAT] 사용자 리스트 조회할 때 총 리스트 정보 보내주기

* [FEAT] 사용자 리스트 조회 시 페이징처리

* [FEAT] 사업계획서에 따른 팝업스토어 상세 정보 보기

* [CHORE] 나의 팝업이 top5 에 들지 못했어도 찾기

* [FEAT] 채팅방 리스트 보여주기, 생성하기 RestController 로 변경

* [FEAT] 주석 추가

* [CHORE] 이름 추가

* [CHORE] preflight 추가

* [CHORE] preflight 추가

* [FIX] cors 해결

* [FIX] 컬렉션 오류 해결

* [FIX] 사업계획서 상세 조회 생성일 추가

* [FEAT] 채팅에 jwt 추가

* [CHORE] 필요없는 파일 삭제

* [CHORE] A페이지에서 채팅 보낼시 B페이지에서 내가 보낸 채팅으로 뜨는 문제 해결

* [FEAT] 알람 기능 추가

* [FEAT] firebase 정보 추가

* [CHORE] firebase 정보 확인

* [FIX] 파일 못찬는 문제 해결
  • Loading branch information
sangminee authored Mar 10, 2024
1 parent ca0cfa8 commit fc1d16f
Showing 1 changed file with 33 additions and 15 deletions.
48 changes: 33 additions & 15 deletions src/main/java/com/oya/kr/chat/config/FCMInitializer.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,12 @@

import javax.annotation.PostConstruct;

import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.springframework.core.io.InputStreamResource;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import org.springframework.core.io.support.ResourcePatternResolver;
import org.springframework.core.io.DefaultResourceLoader;

import org.springframework.stereotype.Service;

import com.google.auth.oauth2.GoogleCredentials;
Expand All @@ -21,7 +26,6 @@
@Slf4j
public class FCMInitializer {

private static final String FIREBASE_CONFIG_PATH = "firebase.json";
private static boolean initialized = false;

/**
Expand All @@ -31,23 +35,37 @@ public class FCMInitializer {
* @since 2024.03.07
*/
@PostConstruct
public void initialize() {
public void initialize() throws IOException {
if (!initialized) {
try {
GoogleCredentials googleCredentials = GoogleCredentials
.fromStream(new ClassPathResource(FIREBASE_CONFIG_PATH).getInputStream());
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredentials(googleCredentials)
.build();
FirebaseApp.initializeApp(options);
initialized = true;
log.info("FCM 성공");
} catch (IOException e) {
log.info("FCM 오류");
log.error("FCM 오류 메시지: " + e.getMessage());

Resource[] resources = new PathMatchingResourcePatternResolver(new DefaultResourceLoader())
.getResources("classpath*:firebase.json");

if (resources.length > 0) {
Resource resource = resources[0];
if (!initialized) {
try {
GoogleCredentials googleCredentials = GoogleCredentials.fromStream(resource.getInputStream());
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredentials(googleCredentials)
.build();
FirebaseApp.initializeApp(options);
initialized = true;
log.info("FCM 성공");
} catch (IOException e) {
log.info("FCM 오류");
log.error("FCM 오류 메시지: " + e.getMessage());
}
} else {
log.warn("FirebaseApp 이름 [DEFAULT]으로 초기화된 앱이 이미 존재합니다.");
}
} else {
// 리소스를 찾을 수 없을 때의 처리 로직
log.error("Resource not found: firebase.json");
}
} else {
log.warn("FirebaseApp 이름 [DEFAULT]으로 초기화된 앱이 이미 존재합니다.");
}
}

}

0 comments on commit fc1d16f

Please sign in to comment.