diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/AsesmenGiziAwalController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/AsesmenGiziAwalController.java index 52663f7a..fbd33e7e 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/AsesmenGiziAwalController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/AsesmenGiziAwalController.java @@ -48,7 +48,7 @@ public class AsesmenGiziAwalController extends LocaleController result = asesmenGiziAwalService.saveAsesmenGiziAwal(vo); if (null != result) mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); - SaveLog("Assesment Gizi Awal", "Pemeriksaan", request); + SaveLog("Assesment Gizi Awal", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when saveAsesmenGiziAwal", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/AsesmenGiziLanjutController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/AsesmenGiziLanjutController.java index bb31ecde..b1856152 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/AsesmenGiziLanjutController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/AsesmenGiziLanjutController.java @@ -43,7 +43,7 @@ public class AsesmenGiziLanjutController extends LocaleController result = asesmenGiziLanjutService.saveAsesmenGiziLanjut(vo); if (null != result) mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); - SaveLog("Assesment Gizi Lanjut", "Pemeriksaan Khusus", request); + SaveLog("Assesment Gizi Lanjut", "Pemeriksaan Khusus"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when saveAsesmenGiziLanjut", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/AuthenticateController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/AuthenticateController.java index 0cca96a2..bfc03759 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/AuthenticateController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/AuthenticateController.java @@ -101,8 +101,7 @@ public class AuthenticateController { return RestUtil.getJsonHttpStatus(HttpStatus.NOT_ACCEPTABLE, mapHeaderMessage); } GrantedAuthority authority = new SimpleGrantedAuthority("USER"); - String token = tokenAuthenticationService.addAuthentication(httpResponse, - new UserAuthentication(new User(loginUserVo.getNamaUser(), loginUserVo.getKataSandi(), + String token = tokenAuthenticationService.addAuthentication(new UserAuthentication(new User(loginUserVo.getNamaUser(), loginUserVo.getKataSandi(), Collections.singletonList(authority)))); boolean isSupervising = request.getHeader(Constants.HttpHeader.SUPERVISING) != null; if (isSupervising) { // supervising login @@ -168,8 +167,7 @@ public class AuthenticateController { return RestUtil.getJsonHttpStatus(HttpStatus.NOT_ACCEPTABLE, mapHeaderMessage); } GrantedAuthority authority = new SimpleGrantedAuthority("USER"); - String token = tokenAuthenticationService.addAuthentication(httpResponse, - new UserAuthentication(new User(loginUserVo.getNamaUser(), loginUserVo.getKataSandi(), + String token = tokenAuthenticationService.addAuthentication(new UserAuthentication(new User(loginUserVo.getNamaUser(), loginUserVo.getKataSandi(), Collections.singletonList(authority)))); boolean isSupervising = request.getHeader(Constants.HttpHeader.SUPERVISING) != null; if (isSupervising) { // supervising login diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/FisisPemeriksaanDokterController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/FisisPemeriksaanDokterController.java index b0ad2deb..e0dbf8da 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/FisisPemeriksaanDokterController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/FisisPemeriksaanDokterController.java @@ -55,7 +55,7 @@ public class FisisPemeriksaanDokterController extends LocaleController } else { mapHeaderMessage.put(LABEL_ERROR, getMessage(MessageResource.LABEL_ERROR, request)); } - SaveLog("Kebutuhan Dasar Perawat", "Perawat", request); + SaveLog("Kebutuhan Dasar Perawat", "Perawat"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addKebutuhanDasar", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/KelasController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/KelasController.java index 69959daf..41cfca11 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/KelasController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/KelasController.java @@ -102,7 +102,7 @@ public class KelasController extends LocaleController { Map result = kelasService.findKelasByRuangan(ruanganId); if (null != result) mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); - SaveLog("Get kelas by ruangan", "Permintaan", request); + SaveLog("Get kelas by ruangan", "Permintaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when findKelasByRuangan", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/KonsepDiriController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/KonsepDiriController.java index b88d0291..4887cc42 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/KonsepDiriController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/KonsepDiriController.java @@ -53,7 +53,7 @@ public class KonsepDiriController extends LocaleController { } else { mapHeaderMessage.put(LABEL_ERROR, getMessage(MessageResource.LABEL_ERROR, request)); } - SaveLog("Konsep Diri", "Pemeriksaan", request); + SaveLog("Konsep Diri", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addKonsepDiri", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/KonsultasiController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/KonsultasiController.java index 94b08b48..62bb83e8 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/KonsultasiController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/KonsultasiController.java @@ -61,7 +61,7 @@ public class KonsultasiController extends LocaleController { } else { mapHeaderMessage.put(LABEL_ERROR, getMessage(MessageResource.LABEL_ERROR, request)); } - SaveLog("Koping", "Pemeriksaan", request); + SaveLog("Koping", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addKoping", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/MasalahKeperawatanController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/MasalahKeperawatanController.java index 09a55900..03c982df 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/MasalahKeperawatanController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/MasalahKeperawatanController.java @@ -49,7 +49,7 @@ public class MasalahKeperawatanController extends LocaleController { if (null != result) mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); getJsonHttpStatus(CREATED); - SaveLog("Masalah Keperawatan", "Pemeriksaan", request); + SaveLog("Masalah Keperawatan", "Pemeriksaan"); return getJsonResponse("Status Sukses", CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when saveMasalahKeperawatanService", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/NilaiNilaiController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/NilaiNilaiController.java index 00530dc0..a60bb1a2 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/NilaiNilaiController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/NilaiNilaiController.java @@ -53,7 +53,7 @@ public class NilaiNilaiController extends LocaleController { } else { mapHeaderMessage.put(LABEL_ERROR, getMessage(MessageResource.LABEL_ERROR, request)); } - SaveLog("Nilai Nilai", "Pemeriksaan", request); + SaveLog("Nilai Nilai", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addNilaiNilai", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapAlergiController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapAlergiController.java index 0123e5f7..a4f2ad52 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapAlergiController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapAlergiController.java @@ -49,7 +49,7 @@ public class PapAlergiController extends LocaleController { Map result = papAlergiService.addAlergi(vo); mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); result.put("message", "Berhasil"); - SaveLog("Alergi", "Pemeriksaan", request); + SaveLog("Alergi", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addAlergi", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapAnamesisController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapAnamesisController.java index 17aaa824..524518b4 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapAnamesisController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapAnamesisController.java @@ -49,7 +49,7 @@ public class PapAnamesisController extends LocaleController { Map result = papAnamesisService.addAnamesis(vo); mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); result.put("message", "Berhasil"); - SaveLog("Anamnesis", "Pemeriksaan", request); + SaveLog("Anamnesis", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addAnamesis", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapEliminasiController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapEliminasiController.java index 171edda4..12c8ec84 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapEliminasiController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapEliminasiController.java @@ -49,7 +49,7 @@ public class PapEliminasiController extends LocaleController { Map result = papEliminasiService.addEliminasi(vo); mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); result.put("message", "Berhasil"); - SaveLog("Eliminasi", "Pemeriksaan", request); + SaveLog("Eliminasi", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addEliminasi", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapGastrointestinalController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapGastrointestinalController.java index 2abfc4d0..07a06f35 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapGastrointestinalController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapGastrointestinalController.java @@ -50,7 +50,7 @@ public class PapGastrointestinalController extends LocaleController result = papGastrointestinalService.addGastrointestinal(vo); mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); result.put("message", "Berhasil"); - SaveLog("Gastrointestinal", "Pemeriksaan", request); + SaveLog("Gastrointestinal", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addGastrointestinal", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapGenataliaController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapGenataliaController.java index fc680e11..f36f7dfd 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapGenataliaController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapGenataliaController.java @@ -53,7 +53,7 @@ public class PapGenataliaController extends LocaleController { Map result = papGenataliaService.addGenatalia(vo); mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); result.put("message", "Berhasil"); - SaveLog("Genatalia", "Pemeriksaan", request); + SaveLog("Genatalia", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addGenatalia", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapGigiMulutController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapGigiMulutController.java index 8eb7881d..0cb2afee 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapGigiMulutController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapGigiMulutController.java @@ -49,7 +49,7 @@ public class PapGigiMulutController extends LocaleController { Map result = papGigiMulutService.addGigiMulut(vo); mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); result.put("message", "Berhasil"); - SaveLog("Gigi Mulut", "Pemeriksaan Khusus", request); + SaveLog("Gigi Mulut", "Pemeriksaan Khusus"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addGigiMulut", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapInstruksiPerjanjianController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapInstruksiPerjanjianController.java index dcae9cac..b4d0322a 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapInstruksiPerjanjianController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapInstruksiPerjanjianController.java @@ -52,7 +52,7 @@ public class PapInstruksiPerjanjianController extends LocaleController result = papInstruksiPerjanjianService.addInstruksiPerjanjian(vo); mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); result.put("message", "Berhasil"); - SaveLog("Perjanjian", "Instruksi", request); + SaveLog("Perjanjian", "Instruksi"); return getJsonResponse(result, CREATED); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addInstruksiPerjanjian", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapIntegumenController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapIntegumenController.java index 964ba2ec..75626677 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapIntegumenController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapIntegumenController.java @@ -49,7 +49,7 @@ public class PapIntegumenController extends LocaleController { Map result = papIntegumenService.addIntegumen(vo); mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); result.put("message", "Berhasil"); - SaveLog("Integumen", "Pemeriksaan", request); + SaveLog("Integumen", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addIntegumen", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapKebutuhanEdukasiController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapKebutuhanEdukasiController.java index 5fd738d5..487f0949 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapKebutuhanEdukasiController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapKebutuhanEdukasiController.java @@ -45,7 +45,7 @@ public class PapKebutuhanEdukasiController extends LocaleController result = papKebutuhanEdukasiService.addKebutuhanEdukasi(vo); if (null != result) mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); - SaveLog("Kebutuhan Edukasi", "Pemeriksaan", request); + SaveLog("Kebutuhan Edukasi", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addKebutuhanEdukasi", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapKeluhanTambahanController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapKeluhanTambahanController.java index bd64fc3b..f2bb848e 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapKeluhanTambahanController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapKeluhanTambahanController.java @@ -52,7 +52,7 @@ public class PapKeluhanTambahanController extends LocaleController result = papKeluhanTambahanService.addKeluhanTambahan(vo); mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); result.put("message", "Berhasil"); - SaveLog("Keluhan Tambahan", "Pemeriksaan", request); + SaveLog("Keluhan Tambahan", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addKeluhanTambahan", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapKeluhanUtamaController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapKeluhanUtamaController.java index cb8d680f..92512e63 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapKeluhanUtamaController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapKeluhanUtamaController.java @@ -54,7 +54,7 @@ public class PapKeluhanUtamaController extends LocaleController result = papKeluhanUtamaService.addKeluhanUtama(vo); mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); result.put("message", "Berhasil"); - SaveLog("Keluhan Utama", "Pemeriksaan", request); + SaveLog("Keluhan Utama", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addKeluhanUtama", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapMuskuloskeletalController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapMuskuloskeletalController.java index 1536d285..d70870ba 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapMuskuloskeletalController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapMuskuloskeletalController.java @@ -50,7 +50,7 @@ public class PapMuskuloskeletalController extends LocaleController result = papMuskuloskeletalService.addMuskuloskeletal(vo); mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); result.put("message", "Berhasil"); - SaveLog("Muskuloskeletal", "Pemeriksaan", request); + SaveLog("Muskuloskeletal", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addMuskuloskeletal", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapNeurologiController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapNeurologiController.java index 6f27747a..b8f38b6a 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapNeurologiController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapNeurologiController.java @@ -49,7 +49,7 @@ public class PapNeurologiController extends LocaleController { Map result = papNeurologiService.addNeurologi(vo); mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); result.put("message", "Berhasil"); - SaveLog("Neurologi", "Pemeriksaan", request); + SaveLog("Neurologi", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addNeurologi", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapObstetriController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapObstetriController.java index f46f8a86..4f3305f9 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapObstetriController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapObstetriController.java @@ -53,7 +53,7 @@ public class PapObstetriController extends LocaleController { } else { mapHeaderMessage.put(LABEL_ERROR, getMessage(MessageResource.LABEL_ERROR, request)); } - SaveLog("Pengkajian Khusus Obstetri", "Pengkajian Khusus", request); + SaveLog("Pengkajian Khusus Obstetri", "Pengkajian Khusus"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when savePapObstetri", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapPernapasanController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapPernapasanController.java index 3ca3fdba..adba24ff 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapPernapasanController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapPernapasanController.java @@ -50,7 +50,7 @@ public class PapPernapasanController extends LocaleController { Map result = papPernapasanService.addPernapasan(vo); mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); result.put("message", "Berhasil"); - SaveLog("Pernapasan", "Pemeriksaan", request); + SaveLog("Pernapasan", "Pemeriksaan"); return getJsonResponse(result, CREATED); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addPernapasan", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapRiwayatPsikososialController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapRiwayatPsikososialController.java index 060292f4..3e196e2d 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapRiwayatPsikososialController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapRiwayatPsikososialController.java @@ -50,7 +50,7 @@ public class PapRiwayatPsikososialController extends LocaleController result = papRiwayatPsikososialService.addRiwayatPsikososial(vo); mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); result.put("message", "Berhasil"); - SaveLog("Riwayat Psikososial", "Pemeriksaan", request); + SaveLog("Riwayat Psikososial", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addRiwayatPsikososial", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapSirkulasiController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapSirkulasiController.java index d64ae8d3..58023d39 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapSirkulasiController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PapSirkulasiController.java @@ -49,7 +49,7 @@ public class PapSirkulasiController extends LocaleController { Map result = papSirkulasiService.addSirkulasi(vo); mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); result.put("message", "Berhasil"); - SaveLog("Sirkulasi", "Pemeriksaan", request); + SaveLog("Sirkulasi", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addSirkulasi", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PasienPulangController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PasienPulangController.java index c810ba9b..68c6917f 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PasienPulangController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PasienPulangController.java @@ -56,7 +56,7 @@ public class PasienPulangController extends LocaleController { mapHeaderMessage.put(LABEL_ERROR, getMessage(MessageResource.LABEL_ERROR, request)); } } - SaveLog("Pasien Pulang", "Instruksi", request); + SaveLog("Pasien Pulang", "Instruksi"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when updatepasienPulang", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PembedahanDanInstruksiController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PembedahanDanInstruksiController.java index 3d58122d..93595217 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PembedahanDanInstruksiController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PembedahanDanInstruksiController.java @@ -50,7 +50,7 @@ public class PembedahanDanInstruksiController extends LocaleController result = pembedahanDanInstruksiService.addPembedahanDanInstruksi(vo); mapHeaderMessage.clear(); mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); - SaveLog("Laporan Pembedahan dan Instruksi Bedah", "Bedah", request); + SaveLog("Laporan Pembedahan dan Instruksi Bedah", "Bedah"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addPembedahanDanInstruksi", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PeranHubunganController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PeranHubunganController.java index 4d891815..da30334d 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PeranHubunganController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PeranHubunganController.java @@ -54,7 +54,7 @@ public class PeranHubunganController extends LocaleController { } else { mapHeaderMessage.put(LABEL_ERROR, getMessage(MessageResource.LABEL_ERROR, request)); } - SaveLog("Peran Hubungan", "Pemeriksaan", request); + SaveLog("Peran Hubungan", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addPeranHubungan", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PersepsiKognisiController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PersepsiKognisiController.java index e9b97c8a..c9de38fc 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PersepsiKognisiController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/PersepsiKognisiController.java @@ -54,7 +54,7 @@ public class PersepsiKognisiController extends LocaleController } else { mapHeaderMessage.put(LABEL_ERROR, getMessage(MessageResource.LABEL_ERROR, request)); } - SaveLog("Persepsi Pasien", "Pemeriksaan", request); + SaveLog("Persepsi Pasien", "Pemeriksaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when addPersepsiPasien", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/ProdukDetailLabAnatomiController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/ProdukDetailLabAnatomiController.java index 1771c9e8..b69f7556 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/ProdukDetailLabAnatomiController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/ProdukDetailLabAnatomiController.java @@ -58,7 +58,7 @@ public class ProdukDetailLabAnatomiController extends LocaleController result = pelayananObatService.savePelayananObat3(vo); if (null != result) mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); - SaveLog("Order Farmasi", "Permintaan", request); + SaveLog("Order Farmasi", "Permintaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when savePelayananObat3", e.getMessage()); @@ -1189,9 +1190,8 @@ public class RegistrasiPelayananController extends LocaleController list = registrasiPelayananService.getHasilPemeriksaanByNoOrder(noOrder); List dtos = new ArrayList<>(); Alamat alamatPasien = alamatService.findByPasienId2(strukOrder.getNoCm().getId()); - Integer usia = new Date( - strukOrder.getNoCm().getTglDaftar().getTime() - strukOrder.getNoCm().getTglLahir().getTime()).getYear() - - 70; + int selisihTahunSaatDaftar = DateUtil.getYear(new Date(strukOrder.getNoCm().getTglDaftar().getTime() - strukOrder.getNoCm().getTglLahir().getTime())); + Integer usia = selisihTahunSaatDaftar - 70; Date now = new Date(); PapPengambilanSpesimen papPengambilanSpesimen = papPengambilanSpesimenService .findByNoOrderAndTglOrder2(strukOrder.getNoOrder(), strukOrder.getTglOrder()); @@ -1501,7 +1501,7 @@ public class RegistrasiPelayananController extends LocaleController result = registrasiPelayananService.getTindakanPelayanan(noRec); if (null != result) mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); - SaveLog("Order Tindakan", "Permintaan", request); + SaveLog("Order Tindakan", "Permintaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} getTindakanPelayanan", e.getMessage()); @@ -1691,7 +1691,7 @@ public class RegistrasiPelayananController extends LocaleController> result = orderProdukService.saveVerifikasiGiziAll(dtos); if (result != null) { mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); - SaveLog("Produk Gizi", "Permintaan", request); + SaveLog("Produk Gizi", "Permintaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } else { mapHeaderMessage.put(ERROR_MESSAGE, getMessage(MessageResource.LABEL_ERROR, request)); @@ -1715,7 +1715,7 @@ public class RegistrasiPelayananController extends LocaleController> result = orderProdukService.cekStokGiziProduksi(vo); if (result != null) { mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); - SaveLog("Cek Produk Gizi", "Permintaan", request); + SaveLog("Cek Produk Gizi", "Permintaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } else { mapHeaderMessage.put(ERROR_MESSAGE, getMessage(MessageResource.LABEL_ERROR, request)); @@ -1740,7 +1740,7 @@ public class RegistrasiPelayananController extends LocaleController result = orderProdukService.getOrderPelayananKirimMenuGiziMakanan(ruanganId); if (null != result) mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); - SaveLog("Order Gizi", "Permintaan", request); + SaveLog("Order Gizi", "Permintaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when getOrderPelayananKirimMenuGiziMakanan", e.getMessage()); @@ -1809,7 +1809,7 @@ public class RegistrasiPelayananController extends LocaleController result = orderProdukService.getOrderPelayananKirimMenuGiziMinuman(ruanganId); if (null != result) mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); - SaveLog("Order Gizi", "Permintaan", request); + SaveLog("Order Gizi", "Permintaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when getOrderPelayananKirimMenuGiziMinuman", e.getMessage()); @@ -1829,7 +1829,7 @@ public class RegistrasiPelayananController extends LocaleController result = orderProdukService.getOrder(noOrder); if (null != result) mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); - SaveLog("Order Gizi", "Permintaan", request); + SaveLog("Order Gizi", "Permintaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when getOrder", e.getMessage()); @@ -1869,7 +1869,7 @@ public class RegistrasiPelayananController extends LocaleController result = orderProdukService.updateOrderProduklab(map, cito); if (null != result) mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); - SaveLog("Order ", "Ubah order laboratorium", request); + SaveLog("Order ", "Ubah order laboratorium"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when updateOrderProduklab", e.getMessage()); @@ -1932,7 +1932,7 @@ public class RegistrasiPelayananController extends LocaleController> result = orderProdukService.getAllProdukProduksiGizi(menu); if (null != result) mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); - SaveLog("Order Gizi", "Permintaan", request); + SaveLog("Order Gizi", "Permintaan"); return getJsonResponse(result, CREATED, mapHeaderMessage); } catch (ServiceVOException e) { LOGGER.error("Got ServiceVOException {} when getAllProdukProduksiGizi", e.getMessage()); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/BaseRestController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/BaseRestController.java index 0e73c735..9ee2214e 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/BaseRestController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/BaseRestController.java @@ -4,39 +4,29 @@ import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.ResponseBody; import com.jasamedika.medifirst2000.base.vo.BaseVO; +import static org.springframework.web.bind.annotation.RequestMethod.*; + /** * Base Rest Operation for Controller Class * * @author Roberto */ -public interface BaseRestController extends - RestPageController { +public interface BaseRestController extends RestPageController { - @RequestMapping(value = "/{id}", method = RequestMethod.GET) + @RequestMapping(value = "/{id}", method = GET) @ResponseBody - public ResponseEntity getVO(@PathVariable("id") String id); - - @RequestMapping(value = "/", method = RequestMethod.PUT) + ResponseEntity getVO(@PathVariable("id") String id); + + @RequestMapping(value = "/", method = POST, consumes = { "application/json" }) @ResponseBody - public ResponseEntity addVO(@RequestBody V vo); + ResponseEntity addVO(@RequestBody V vo); - @RequestMapping(value = "/", method = RequestMethod.POST, consumes = { "application/json" }) + @RequestMapping(value = "/", method = PUT, consumes = { "application/json" }) @ResponseBody - public ResponseEntity editVO(@RequestBody V vo); - - // @RequestMapping(value = "/{id}", method = RequestMethod.DELETE) - // @ResponseBody - // public ResponseEntity deleteVO(@PathVariable("id") Integer id); - - // @RequestMapping(value = "/", method = RequestMethod.GET) - // @ResponseBody - // public ResponseEntity> getAllVO(); - - + ResponseEntity editVO(@RequestBody V vo); } diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/IBaseRestController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/IBaseRestController.java index 76abc9e0..15002a00 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/IBaseRestController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/IBaseRestController.java @@ -19,11 +19,11 @@ public interface IBaseRestController extends IRestPageCon @ResponseBody ResponseEntity getVO(@PathVariable("id") Integer id); - @RequestMapping(value = "/", method = PUT, consumes = { "application/json" }) + @RequestMapping(value = "/", method = POST, consumes = { "application/json" }) @ResponseBody ResponseEntity addVO(@RequestBody V vo); - @RequestMapping(value = "/", method = POST, consumes = { "application/json" }) + @RequestMapping(value = "/", method = PUT, consumes = { "application/json" }) @ResponseBody ResponseEntity editVO(@RequestBody V vo); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/IRestPageController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/IRestPageController.java index f9f7f890..7ee9a1e8 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/IRestPageController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/IRestPageController.java @@ -1,16 +1,15 @@ package com.jasamedika.medifirst2000.controller.base; -import java.util.Collection; - -import javax.servlet.http.HttpServletRequest; - +import com.jasamedika.medifirst2000.base.vo.BaseModelVO; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; -import com.jasamedika.medifirst2000.base.vo.BaseModelVO; +import javax.servlet.http.HttpServletRequest; +import java.util.Collection; + +import static org.springframework.web.bind.annotation.RequestMethod.GET; /** * Base Rest Operation for 'pagination' Controller Class @@ -30,10 +29,9 @@ public interface IRestPageController { * : direction {asc:desc} * @return Collection of VO, Total-Count & Total Pages on response header */ - @RequestMapping(value = "/list", method = RequestMethod.GET) + @RequestMapping(value = "/list", method = GET) @ResponseBody - public ResponseEntity> getAllVOWithQueryString( - HttpServletRequest request, + ResponseEntity> getAllVOWithQueryString(HttpServletRequest request, @RequestParam(value = "page", required = false) Integer page, @RequestParam(value = "limit", required = false) Integer limit, @RequestParam(value = "sort", required = false, defaultValue = "id") String sort, diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/LocaleController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/LocaleController.java index dc2f7f1c..17179962 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/LocaleController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/LocaleController.java @@ -22,11 +22,9 @@ import org.json.JSONObject; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.MessageSource; import org.springframework.http.HttpStatus; -import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; @@ -37,6 +35,11 @@ import java.io.InputStreamReader; import java.net.URISyntaxException; import java.util.*; +import static com.jasamedika.medifirst2000.constants.Constants.Locale.INA; +import static org.springframework.http.HttpStatus.OK; +import static org.springframework.http.MediaType.APPLICATION_JSON_VALUE; +import static org.springframework.web.bind.annotation.RequestMethod.GET; + /** * Base Controller Class for handling messaga resource for internationalization * & locale @@ -45,10 +48,6 @@ import java.util.*; */ public abstract class LocaleController { - /* - * messageSource bean injected for each controller for accessing message - * source - */ @Autowired private ActivityPegawaiService activityPegawaiServiceImpl; @@ -66,14 +65,11 @@ public abstract class LocaleController { protected Map mapHeaderMessage = new HashMap<>(); - /* - * code locale - */ protected String getMessage(String code, HttpServletRequest request) { return messageSource.getMessage(code, null, new Locale(getCoociesLanguage(request))); } - protected void SaveLog(String keterangan, String group, HttpServletRequest request) { + protected void SaveLog(String keterangan, String group) { activityPegawaiServiceImpl.record( pegawaiConverter.transferModelToVO(loginUserService.getLoginUser().getPegawai(), new PegawaiVO()), new Date(), keterangan, group); @@ -115,7 +111,7 @@ public abstract class LocaleController { } } - @RequestMapping(value = "/lang/{lang}", method = RequestMethod.GET) + @RequestMapping(value = "/lang/{lang}", method = GET) public boolean preHandle(HttpServletRequest request, HttpServletResponse response, @PathVariable("lang") String lang) { Cookie[] cookies = request.getCookies(); @@ -150,27 +146,24 @@ public abstract class LocaleController { return true; } - /* - * default locale ID - */ protected String getMessage(String code) { - return messageSource.getMessage(code, null, new Locale(Constants.Locale.INA)); + return messageSource.getMessage(code, null, new Locale(INA)); } protected void addHeaderMessage(String key, String message) { this.mapHeaderMessage.put(key, message); } - @RequestMapping(value = "/entity-serelize/{entity}", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE) + @RequestMapping(value = "/entity-serelize/{entity}", method = GET, produces = APPLICATION_JSON_VALUE) public ResponseEntity serializeEntity(@PathVariable("entity") String entity, HttpServletRequest request) { ModelVO modelDTO = modelService.getModelSerializeEntity(entity, getCoociesLanguage(request)); - return RestUtil.getJsonResponse(modelDTO, HttpStatus.OK); + return RestUtil.getJsonResponse(modelDTO, OK); } public String getCoociesLanguage(HttpServletRequest request) { Cookie[] cookie = request.getCookies(); Cookie cook; - String lang = Constants.Locale.INA; + String lang = INA; if (cookie != null) { for (Cookie value : cookie) { cook = value; @@ -190,12 +183,12 @@ public abstract class LocaleController { return RestUtil.getJsonResponse(null, HttpStatus.BAD_REQUEST, mapHeaderMessage); } else { Collection vos = (Collection) map.get(WebConstants.PageParameter.LIST_DATA); - Map mapHeaderMessage = new HashMap<>(); + Map mapHeaderMessage = new HashMap<>(); mapHeaderMessage.put(WebConstants.HttpHeaderInfo.TOTAL_PAGE_HEADER, String.valueOf(map.get(WebConstants.PageParameter.TOTAL_PAGES))); mapHeaderMessage.put(WebConstants.HttpHeaderInfo.TOTAL_COUNT_HEADER, String.valueOf(map.get(WebConstants.PageParameter.TOTAL_ELEMENTS))); - return RestUtil.getJsonResponse(vos, HttpStatus.OK, mapHeaderMessage); + return RestUtil.getJsonResponse(vos, OK, mapHeaderMessage); } } diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/ParamRestController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/ParamRestController.java index 30a686df..f97c32b9 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/ParamRestController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/ParamRestController.java @@ -1,39 +1,33 @@ package com.jasamedika.medifirst2000.controller.base; -import java.util.List; - -import org.springframework.core.GenericTypeResolver; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RequestParam; - import com.jasamedika.medifirst2000.base.vo.BaseModelVO; import com.jasamedika.medifirst2000.constants.Constants; import com.jasamedika.medifirst2000.util.rest.RestUtil; import com.monitorjbl.json.JsonResult; import com.monitorjbl.json.JsonView; import com.monitorjbl.json.Match; +import org.springframework.core.GenericTypeResolver; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; /** - * Base Controller Class for handling "include" parameter to controller - * @see https://github.com/monitorjbl/json-view + * Base Controller Class for handling "include" parameter to controller * + * @see reference + * * @author Roberto */ public abstract class ParamRestController { - private JsonResult jsonResult = JsonResult.instance(); - /* - * Belum selesai, baru di parameter includes. Untuk field object juga belom. - * example : - * http://localhost:8080/jasamedika-web/{typeVOClass}/list-using-param - * ?includes =id,nama - */ + private final JsonResult jsonResult = JsonResult.instance(); + @RequestMapping(value = "/list-using-param", method = RequestMethod.GET) - public ResponseEntity> listUsingParam( - @RequestParam(value = "includes", required = false) String includes, + public ResponseEntity> listUsingParam(@RequestParam(value = "includes", required = false) String includes, @RequestParam(value = "excludes", required = false) String excludes) { List listVO = getAllVOFromService(); String[] arrExcludes = null; @@ -44,35 +38,27 @@ public abstract class ParamRestController { arrIncludes = includes.split(Constants.COMMA); if (arrExcludes != null && arrIncludes != null) { listVO = jsonResult.use( - JsonView.with(listVO).onClass( - getClazz(), - Match.match().exclude(arrExcludes) - .include(arrIncludes))).returnValue(); + JsonView.with(listVO).onClass(getClazz(), Match.match().exclude(arrExcludes).include(arrIncludes))) + .returnValue(); } if (arrExcludes != null && arrIncludes == null) { - listVO = jsonResult.use( - JsonView.with(listVO).onClass(getClazz(), - Match.match().include("*").exclude(arrExcludes))) + listVO = jsonResult + .use(JsonView.with(listVO).onClass(getClazz(), Match.match().include("*").exclude(arrExcludes))) .returnValue(); } if (arrExcludes == null && arrIncludes != null) { - listVO = jsonResult.use( - JsonView.with(listVO).onClass(getClazz(), - Match.match().exclude("*").include(arrIncludes))) + listVO = jsonResult + .use(JsonView.with(listVO).onClass(getClazz(), Match.match().exclude("*").include(arrIncludes))) .returnValue(); } - return RestUtil.getJsonResponse(listVO, HttpStatus.OK); } @SuppressWarnings("unchecked") protected Class getClazz() { - return (Class) GenericTypeResolver.resolveTypeArgument(getClass(), - ParamRestController.class); + return (Class) GenericTypeResolver.resolveTypeArgument(getClass(), ParamRestController.class); } - /* - * method untuk mendapatkan all VO from service - * */ protected abstract List getAllVOFromService(); + } diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/RestPageController.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/RestPageController.java index 2cdcfbf0..509cfc9f 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/RestPageController.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/controller/base/RestPageController.java @@ -1,14 +1,14 @@ package com.jasamedika.medifirst2000.controller.base; -import java.util.Collection; - +import com.jasamedika.medifirst2000.base.vo.BaseVO; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; -import com.jasamedika.medifirst2000.base.vo.BaseVO; +import java.util.Collection; + +import static org.springframework.web.bind.annotation.RequestMethod.GET; /** * Base Rest Operation for 'pagination' Controller Class @@ -28,10 +28,9 @@ public interface RestPageController { * : direction {asc:desc} * @return Collection of VO, Total-Count & Total Pages on response header */ - @RequestMapping(value = "/list", method = RequestMethod.GET) + @RequestMapping(value = "/list", method = GET) @ResponseBody - public ResponseEntity> getAllVOWithQueryString( - @RequestParam(value = "page", required = false) Integer page, + ResponseEntity> getAllVOWithQueryString(@RequestParam(value = "page", required = false) Integer page, @RequestParam(value = "limit", required = false) Integer limit, @RequestParam(value = "sort", required = false, defaultValue = "id") String sort, @RequestParam(value = "dir", required = false, defaultValue = "asc") String dir); diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/filter/CORSFilter.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/filter/CORSFilter.java index ed6bcd4d..9ffb4eed 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/filter/CORSFilter.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/filter/CORSFilter.java @@ -1,30 +1,19 @@ package com.jasamedika.medifirst2000.filter; -import java.io.BufferedReader; -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.util.Iterator; - -import javax.servlet.Filter; -import javax.servlet.FilterChain; -import javax.servlet.FilterConfig; -import javax.servlet.ServletException; -import javax.servlet.ServletInputStream; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletRequestWrapper; -import javax.servlet.http.HttpServletResponse; - +import com.jasamedika.medifirst2000.constants.Constants; import org.json.JSONArray; +import org.json.JSONException; import org.json.JSONObject; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; -import com.jasamedika.medifirst2000.constants.Constants; +import javax.servlet.*; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletRequestWrapper; +import javax.servlet.http.HttpServletResponse; +import java.io.*; +import java.util.Iterator; /** * CORSFilter class @@ -33,132 +22,113 @@ import com.jasamedika.medifirst2000.constants.Constants; */ @Component public class CORSFilter implements Filter { - - // Start Syamsu + + private static final Logger LOGGER = LoggerFactory.getLogger(CORSFilter.class); + + public CORSFilter() { + LOGGER.info("CORSFilter JasaMedika Web init"); + } + private static class RequestWrapper extends HttpServletRequestWrapper { final String body; - + public RequestWrapper(ServletRequest req) throws IOException { super((HttpServletRequest) req); - HttpServletRequest request = (HttpServletRequest) req; - - StringBuilder stringBuilder = new StringBuilder(); - BufferedReader reader = null; - try { - InputStream inputStream = request.getInputStream(); - if (inputStream != null) { - reader = new BufferedReader(new InputStreamReader(inputStream)); - String hasil; - while ( (hasil = reader.readLine()) != null) { - stringBuilder.append(hasil); - } - } else { - stringBuilder.append(""); - } - } catch (IOException ex) { - throw ex; - } finally { - if (reader != null) { - try { - reader.close(); - } catch (IOException ex) { - throw ex; - } - } - } - body = stringBuilder.toString(); - - String idRuanganTujuan = request.getHeader(Constants.HttpHeader.KD_RUANGAN_T) == null ? "" - : request.getHeader(Constants.HttpHeader.KD_RUANGAN_T); - - if ("".equals(idRuanganTujuan.trim())){ - try{ - JSONObject jObject = new JSONObject(body); - ExtractObjectJson(jObject, false); - }catch(Exception e){ - - } - } - } - - public String getHeader(String key){ - if (key.equals(Constants.HttpHeader.KD_RUANGAN_A)) { - if (autoIdTujuan.length() > 0){ - return autoIdTujuan.toString(); - } + StringBuilder stringBuilder = getStringBuilder(request); + body = stringBuilder.toString(); + String idRuanganTujuan = request.getHeader(Constants.HttpHeader.KD_RUANGAN_T) == null ? "" + : request.getHeader(Constants.HttpHeader.KD_RUANGAN_T); + if (idRuanganTujuan.trim().isEmpty()) { + JSONObject jObject; + try { + jObject = new JSONObject(body); + } catch (JSONException e) { + throw new RuntimeException(e); + } + try { + ExtractObjectJson(jObject, false); + } catch (Exception e) { + throw new RuntimeException(e); + } + } + } + + public String getHeader(String key) { + if (key.equals(Constants.HttpHeader.KD_RUANGAN_A)) { + if (autoIdTujuan.length() > 0) { + return autoIdTujuan.toString(); + } } - return super.getHeader(key); } - + JSONArray autoIdTujuan = new JSONArray(); - - void ExtractObjectJson(JSONObject jObject, boolean ruangan) throws Exception{ - Iterator iterator = jObject.keys(); - while (iterator.hasNext()){ - String key = String.valueOf(iterator.next()); - Object o = jObject.get(key); - - if (key.toLowerCase().contains("ruangan")){ - if (o instanceof Integer){ - autoIdTujuan.put(o); - } else if (o instanceof JSONObject){ - ExtractObjectJson((JSONObject) o, true); - } - } else if (ruangan && "id".equals(key)){ - if (o instanceof Integer){ - autoIdTujuan.put(o); - return; - } - } else if (o instanceof JSONObject && !ruangan) { - ExtractObjectJson((JSONObject) o, false); - } - } + + void ExtractObjectJson(JSONObject jObject, boolean ruangan) throws Exception { + Iterator iterator = jObject.keys(); + while (iterator.hasNext()) { + String key = String.valueOf(iterator.next()); + Object o = jObject.get(key); + if (key.toLowerCase().contains("ruangan")) { + if (o instanceof Integer) { + autoIdTujuan.put(o); + } else if (o instanceof JSONObject) { + ExtractObjectJson((JSONObject) o, true); + } + } else if (ruangan && "id".equals(key)) { + if (o instanceof Integer) { + autoIdTujuan.put(o); + return; + } + } else if (o instanceof JSONObject && !ruangan) { + ExtractObjectJson((JSONObject) o, false); + } + } } - + @Override - public ServletInputStream getInputStream() throws IOException { + public ServletInputStream getInputStream() { final ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(body.getBytes()); - ServletInputStream servletInputStream = new ServletInputStream() { - public int read() throws IOException { + return new ServletInputStream() { + public int read() { return byteArrayInputStream.read(); } }; - return servletInputStream; } @Override - public BufferedReader getReader() throws IOException { + public BufferedReader getReader() { return new BufferedReader(new InputStreamReader(getInputStream())); } - - public String getBody() { - return this.body; - } } - // End Syamsu - - private final Logger log = LoggerFactory.getLogger(CORSFilter.class); - - public CORSFilter() { - log.info("CORSFilter JasaMedika Web init"); + private static StringBuilder getStringBuilder(HttpServletRequest request) throws IOException { + StringBuilder stringBuilder = new StringBuilder(); + BufferedReader reader = null; + try { + InputStream inputStream = request.getInputStream(); + if (inputStream != null) { + reader = new BufferedReader(new InputStreamReader(inputStream)); + String hasil; + while ((hasil = reader.readLine()) != null) { + stringBuilder.append(hasil); + } + } + } finally { + if (reader != null) + reader.close(); + } + return stringBuilder; } @Override public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException { - - // Start Syamsu - RequestWrapper myReq = new RequestWrapper((HttpServletRequest) req); - // End Syamsu - HttpServletRequest request = (HttpServletRequest) myReq; + RequestWrapper myReq = new RequestWrapper(req); HttpServletResponse response = (HttpServletResponse) res; - - response.setHeader("Access-Control-Allow-Origin", request.getHeader("Origin")); + response.setHeader("Access-Control-Allow-Origin", myReq.getHeader("Origin")); response.setHeader("Access-Control-Allow-Credentials", "true"); - response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE"); response.setHeader("Access-Control-Max-Age", "3600"); response.setHeader("Access-Control-Allow-Headers", @@ -166,19 +136,11 @@ public class CORSFilter implements Filter { + "Supervising, RequestSupervisor, Module, Form, Action, AlamatUrlForm, KdRuangan, KdUser, " + "MandatoriData, idRuanganTujuan, ruanganTujuan"); response.setHeader("Content-Type", "application/json"); - - -// String body = myReq.getBody(); -// if (!"".equals(body.trim())){ -// log.info("\n\n" + myReq.getBody() + "\n"); -// } - chain.doFilter(myReq, res); } @Override public void init(FilterConfig filterConfig) { - } @Override diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/filter/StatelessAuthenticationFilter.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/filter/StatelessAuthenticationFilter.java index cc1c7452..74b7cf83 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/filter/StatelessAuthenticationFilter.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/filter/StatelessAuthenticationFilter.java @@ -1,8 +1,12 @@ package com.jasamedika.medifirst2000.filter; +import com.fasterxml.jackson.core.JsonParseException; +import com.jasamedika.medifirst2000.constants.Constants; +import com.jasamedika.medifirst2000.security.service.TokenAuthenticationService; import io.jsonwebtoken.MalformedJwtException; - -import java.io.IOException; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.web.filter.GenericFilterBean; import javax.servlet.FilterChain; import javax.servlet.ServletException; @@ -10,14 +14,7 @@ import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; - -import org.springframework.security.core.Authentication; -import org.springframework.security.core.context.SecurityContextHolder; -import org.springframework.web.filter.GenericFilterBean; - -import com.fasterxml.jackson.core.JsonParseException; -import com.jasamedika.medifirst2000.constants.Constants; -import com.jasamedika.medifirst2000.security.service.TokenAuthenticationService; +import java.io.IOException; /** * StatelessAuthenticationFilter class @@ -27,41 +24,34 @@ import com.jasamedika.medifirst2000.security.service.TokenAuthenticationService; public class StatelessAuthenticationFilter extends GenericFilterBean { private final TokenAuthenticationService authenticationService; - public StatelessAuthenticationFilter( - TokenAuthenticationService authenticationService) { + public StatelessAuthenticationFilter(TokenAuthenticationService authenticationService) { this.authenticationService = authenticationService; } - public void doFilter(ServletRequest request, ServletResponse response, - FilterChain filterChain) throws IOException, ServletException { + public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain) + throws IOException, ServletException { HttpServletRequest httpRequest = (HttpServletRequest) request; HttpServletRequest req = (HttpServletRequest) request; HttpServletResponse res = (HttpServletResponse) response; - - res.setHeader("Access-Control-Allow-Origin", - req.getHeader("Origin")); + res.setHeader("Access-Control-Allow-Origin", req.getHeader("Origin")); res.setHeader("Access-Control-Allow-Credentials", "true"); - - res.setHeader("Access-Control-Allow-Methods", - "POST, GET, OPTIONS, DELETE"); + res.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE"); res.setHeader("Access-Control-Max-Age", "3600"); res.setHeader("Access-Control-Allow-Headers", "Content-Type, Accept, X-Requested-With, remember-me, X-AUTH-TOKEN, Supervising, " - + "RequestSupervisor, Module, Form, Action, AlamatUrlForm, KdRuangan, KdUser, " - + "MandatoriData"); - + + "RequestSupervisor, Module, Form, Action, AlamatUrlForm, KdRuangan, KdUser, " + + "MandatoriData"); Authentication authentication = null; try { - authentication = authenticationService.getAuthentication(httpRequest); } catch (JsonParseException | MalformedJwtException e) { HttpServletResponse httpResponse = (HttpServletResponse) response; - httpResponse.addHeader(Constants.MessageInfo.ERROR_MESSAGE, - "Error Token (Not Valid Token)"); + httpResponse.addHeader(Constants.MessageInfo.ERROR_MESSAGE, "Error Token (Not Valid Token)"); filterChain.doFilter(request, response); } SecurityContextHolder.getContext().setAuthentication(authentication); filterChain.doFilter(request, response); SecurityContextHolder.getContext().setAuthentication(null); } + } diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/handler/RestErrorHandler.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/handler/RestErrorHandler.java index e4c43798..ed914baf 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/handler/RestErrorHandler.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/handler/RestErrorHandler.java @@ -1,8 +1,7 @@ package com.jasamedika.medifirst2000.handler; -import java.util.List; -import java.util.Locale; - +import com.jasamedika.medifirst2000.base.vo.validation.ValidationErrorVO; +import com.jasamedika.medifirst2000.constants.Constants; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -18,8 +17,9 @@ import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.ResponseStatus; -import com.jasamedika.medifirst2000.base.vo.validation.ValidationErrorVO; -import com.jasamedika.medifirst2000.constants.Constants;; +import java.util.List; +import java.util.Locale; + /** * Exception Handler Rest Controller class * @@ -27,13 +27,12 @@ import com.jasamedika.medifirst2000.constants.Constants;; */ @ControllerAdvice -@Order(1) // Pertama masuk +@Order(1) public class RestErrorHandler { - private static final Logger LOGGER = LoggerFactory - .getLogger(RestErrorHandler.class); + private static final Logger LOGGER = LoggerFactory.getLogger(RestErrorHandler.class); - private MessageSource messageSource; + private final MessageSource messageSource; @Autowired public RestErrorHandler(MessageSource validationNessageSource) { @@ -43,62 +42,39 @@ public class RestErrorHandler { @ExceptionHandler(MethodArgumentNotValidException.class) @ResponseStatus(HttpStatus.BAD_REQUEST) @ResponseBody - public ValidationErrorVO processValidationError( - MethodArgumentNotValidException ex) { + public ValidationErrorVO processValidationError(MethodArgumentNotValidException ex) { LOGGER.warn("Handling data validation error"); BindingResult result = ex.getBindingResult(); List fieldErrors = result.getFieldErrors(); - return processFieldErrors(fieldErrors); } private ValidationErrorVO processFieldErrors(List fieldErrors) { ValidationErrorVO dto = new ValidationErrorVO(); - for (FieldError fieldError : fieldErrors) { String localizedErrorMessage = resolveLocalizedErrorMessage(fieldError); dto.addFieldError(fieldError.getField(), localizedErrorMessage); } - return dto; } - - /* - * resolve error message with parameter locale - */ + private String resolveLocalizedErrorMessage(FieldError fieldError, String locale) { Locale currentLocale = LocaleContextHolder.getLocale(); - String localizedErrorMessage = messageSource.getMessage(fieldError, - currentLocale); - - // If the message was not found, return the most accurate field error - // code instead. - // You can remove this check if you prefer to get the default error - // message. + String localizedErrorMessage = messageSource.getMessage(fieldError, currentLocale); if (localizedErrorMessage.equals(fieldError.getDefaultMessage())) { String[] fieldErrorCodes = fieldError.getCodes(); localizedErrorMessage = fieldErrorCodes[0]; } - return localizedErrorMessage; } - - /* - * resolve error message with default locale - */ + private String resolveLocalizedErrorMessage(FieldError fieldError) { - String localizedErrorMessage = messageSource.getMessage(fieldError, - new Locale(Constants.Locale.INA)); - - // If the message was not found, return the most accurate field error - // code instead. - // You can remove this check if you prefer to get the default error - // message. + String localizedErrorMessage = messageSource.getMessage(fieldError, new Locale(Constants.Locale.INA)); if (localizedErrorMessage.equals(fieldError.getDefaultMessage())) { String[] fieldErrorCodes = fieldError.getCodes(); localizedErrorMessage = fieldErrorCodes[0]; } - return localizedErrorMessage; } + } diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/interceptor/AppInterceptor.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/interceptor/AppInterceptor.java index 84fdce48..2b405e5f 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/interceptor/AppInterceptor.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/interceptor/AppInterceptor.java @@ -364,4 +364,5 @@ public class AppInterceptor implements HandlerInterceptor { } } } + } diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/RestAuthenticationEntryPoint.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/RestAuthenticationEntryPoint.java index 6fa5cc34..451f4ce8 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/RestAuthenticationEntryPoint.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/RestAuthenticationEntryPoint.java @@ -1,43 +1,35 @@ package com.jasamedika.medifirst2000.security; -import java.io.IOException; - -import javax.servlet.ServletException; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - +import com.jasamedika.medifirst2000.constants.Constants; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.security.core.AuthenticationException; import org.springframework.security.web.AuthenticationEntryPoint; import org.springframework.stereotype.Component; -import com.jasamedika.medifirst2000.constants.Constants; +import javax.servlet.ServletException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; /** - * RestAuthenticationEntryPoint class - * set Unauthorized response from "Unauthorized client" + * RestAuthenticationEntryPoint class set Unauthorized response from + * "Unauthorized client" * * @author Roberto */ @Component("RestAuthenticationEntryPoint") public class RestAuthenticationEntryPoint implements AuthenticationEntryPoint { - - private static final Logger LOGGER = LoggerFactory.getLogger(RestAuthenticationEntryPoint.class); - - /// Alter Syamsu + private static final Logger LOGGER = LoggerFactory.getLogger(RestAuthenticationEntryPoint.class); + @Override - public void commence(HttpServletRequest request, - HttpServletResponse response, AuthenticationException ae) + public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException ae) throws IOException, ServletException { - LOGGER.error("Mencoba akses tanpa login"); response.getWriter().write("{" + Constants.MessageInfo.ERROR_MESSAGE + ":'Please login to get access'}"); response.setHeader(Constants.MessageInfo.ERROR_MESSAGE, "Please login to get access"); response.setStatus(HttpServletResponse.SC_FORBIDDEN); - - //response.sendError(HttpServletResponse.SC_UNAUTHORIZED, "Unauthorized"); } } \ No newline at end of file diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/SpringSecurityConfig.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/SpringSecurityConfig.java index 8553b91e..923cd74a 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/SpringSecurityConfig.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/SpringSecurityConfig.java @@ -4,7 +4,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.core.annotation.Order; -import org.springframework.scheduling.annotation.EnableScheduling; import org.springframework.security.authentication.AuthenticationManager; import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; import org.springframework.security.config.annotation.web.builders.HttpSecurity; @@ -19,8 +18,8 @@ import com.jasamedika.medifirst2000.security.service.TokenAuthenticationService; import com.jasamedika.medifirst2000.security.service.UserService; /** - * SpringSecurityConfig class - * Di sini Kita tidak menggunakan XML Config untuk Spring Security + * SpringSecurityConfig class Di sini Kita tidak menggunakan XML Config untuk + * Spring Security * * @author Roberto */ @@ -31,92 +30,32 @@ public class SpringSecurityConfig extends WebSecurityConfigurerAdapter { @Autowired private RestAuthenticationEntryPoint restAuthenticationEntryPoint; - + private final UserService userService; private final TokenAuthenticationService tokenAuthenticationService; public SpringSecurityConfig() { super(true); this.userService = new UserService(); - tokenAuthenticationService = new TokenAuthenticationService( - Constants.JASAMEDIKA, userService); + tokenAuthenticationService = new TokenAuthenticationService(Constants.JASAMEDIKA, userService); } @Override protected void configure(HttpSecurity http) throws Exception { - http.exceptionHandling() - //restAuthenticationEntryPoint - .authenticationEntryPoint(restAuthenticationEntryPoint) - - .and() - .anonymous() - .and() - .servletApi() - .and() - .headers() - .cacheControl() - .and() - .authorizeRequests() - - - // Allow anonymous resource requests - .antMatchers("/favicon.ico") - .permitAll() - .antMatchers("**/*.html") - .permitAll() - .antMatchers("**/*.css") - .permitAll() - .antMatchers("**/*.js") - .permitAll() - - // Allow anonymous logins - .antMatchers("/auth/**") - .permitAll() - - // Allow SMS gateway - .antMatchers("/registrasi-pasien-sms/**") - .permitAll() - - // Allow SMS gateway - .antMatchers("/report/**") - .permitAll() - - // URL tanpa auth deklarasikan di sini - .antMatchers("/test-tanpa-auth/**") - .permitAll() - .antMatchers("/test/**") - .permitAll() - - .antMatchers("/api-docs.json") - .permitAll() - - .antMatchers("/api-docs/**") - .permitAll() - - /*//Allow Download File Surat Masuk - .antMatchers("/surat-masuk/download-dokumen-template/**") - .permitAll() - .antMatchers("/surat-masuk/get-draft-surat/**") - .permitAll()*/ - - // All other request need to be authenticated - .anyRequest() - .authenticated() - .and() - - // Custom Token based authentication based on the header - // previously given to the client - .addFilterBefore( - new StatelessAuthenticationFilter( - tokenAuthenticationService), + http.exceptionHandling().authenticationEntryPoint(restAuthenticationEntryPoint).and().anonymous().and() + .servletApi().and().headers().cacheControl().and().authorizeRequests().antMatchers("/favicon.ico") + .permitAll().antMatchers("**/*.html").permitAll().antMatchers("**/*.css").permitAll() + .antMatchers("**/*.js").permitAll().antMatchers("/auth/**").permitAll() + .antMatchers("/registrasi-pasien-sms/**").permitAll().antMatchers("/report/**").permitAll() + .antMatchers("/test-tanpa-auth/**").permitAll().antMatchers("/test/**").permitAll() + .antMatchers("/api-docs.json").permitAll().antMatchers("/api-docs/**").permitAll().anyRequest() + .authenticated().and().addFilterBefore(new StatelessAuthenticationFilter(tokenAuthenticationService), UsernamePasswordAuthenticationFilter.class); } @Override - protected void configure(AuthenticationManagerBuilder auth) - throws Exception { - auth.userDetailsService(userDetailsService()).passwordEncoder( - new BCryptPasswordEncoder()); + protected void configure(AuthenticationManagerBuilder auth) throws Exception { + auth.userDetailsService(userDetailsService()).passwordEncoder(new BCryptPasswordEncoder()); } @Bean @@ -135,11 +74,5 @@ public class SpringSecurityConfig extends WebSecurityConfigurerAdapter { public TokenAuthenticationService tokenAuthenticationService() { return tokenAuthenticationService; } - - -// @Bean(name = "springSecurityFilterChain", autowire = Autowire.BY_NAME) -// public DelegatingFilterProxy springSecurityFilterChain(){ -// return new DelegatingFilterProxy(); -// } - + } diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/handler/TokenHandler.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/handler/TokenHandler.java index 1252d6f3..70259690 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/handler/TokenHandler.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/handler/TokenHandler.java @@ -8,33 +8,28 @@ import org.springframework.security.core.userdetails.User; import com.jasamedika.medifirst2000.security.service.UserService; /** - * TokenHandler class - * using jjwt https://github.com/jwtk/jjwt - * + * TokenHandler class using jjwt + * * @author Roberto */ public class TokenHandler { - private final String secret; - private final UserService userService; - public TokenHandler(String secret, UserService userService) { - this.secret = secret; - this.userService = userService; - } + private final String secret; + private final UserService userService; - public User parseUserFromToken(String token) { - String username = Jwts.parser() - .setSigningKey(secret) - .parseClaimsJws(token) - .getBody() - .getSubject(); - return userService.loadUserByUsername(username); - } + public TokenHandler(String secret, UserService userService) { + this.secret = secret; + this.userService = userService; + } + + public User parseUserFromToken(String token) { + String username = Jwts.parser().setSigningKey(secret).parseClaimsJws(token).getBody().getSubject(); + return userService.loadUserByUsername(username); + } + + public String createTokenForUser(User user) { + return Jwts.builder().setHeaderParam("typ", "JWT").setSubject(user.getUsername()) + .signWith(SignatureAlgorithm.HS512, secret).compact(); + } - public String createTokenForUser(User user) { - return Jwts.builder().setHeaderParam("typ", "JWT") - .setSubject(user.getUsername()) - .signWith(SignatureAlgorithm.HS512, secret) - .compact(); - } } diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/model/AppPermission.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/model/AppPermission.java index 4025f543..0777640a 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/model/AppPermission.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/model/AppPermission.java @@ -6,20 +6,22 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; /** - * AppPermission annotation, digunakan untuk method yang butuh authorized dari database - * can use in method only. + * AppPermission annotation, digunakan untuk method yang butuh authorized dari + * database can use in method only. + * * @author Roberto */ @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.METHOD) -public @interface AppPermission { - public static final int ADD = 100; - public static final int UPDATE = 200; - public static final int DELETE = 300; - public static final int PRINT = 400; - public static final int VIEW = 500; - - public static final int SPECIALS = 600; - +public @interface AppPermission { + + int ADD = 100; + int UPDATE = 200; + int DELETE = 300; + int PRINT = 400; + int VIEW = 500; + int SPECIALS = 600; + int value(); + } diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/model/UserAuthentication.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/model/UserAuthentication.java index 6e3add0f..68a512eb 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/model/UserAuthentication.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/model/UserAuthentication.java @@ -1,20 +1,18 @@ package com.jasamedika.medifirst2000.security.model; -import java.util.Collection; - import org.springframework.security.core.Authentication; import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.userdetails.User; +import java.util.Collection; + /** * UserAuthentication class * * @author Roberto */ public class UserAuthentication implements Authentication { - /** - * serialVersionUID - */ + private static final long serialVersionUID = -7410905698525654537L; private final User user; private boolean authenticated = true; @@ -57,4 +55,5 @@ public class UserAuthentication implements Authentication { public void setAuthenticated(boolean authenticated) { this.authenticated = authenticated; } + } diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/service/TokenAuthenticationService.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/service/TokenAuthenticationService.java index 0ed2b075..0fed5358 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/service/TokenAuthenticationService.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/service/TokenAuthenticationService.java @@ -1,16 +1,15 @@ package com.jasamedika.medifirst2000.security.service; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.springframework.security.core.Authentication; -import org.springframework.security.core.userdetails.User; -import org.springframework.stereotype.Component; - import com.fasterxml.jackson.core.JsonParseException; import com.jasamedika.medifirst2000.core.web.WebConstants; import com.jasamedika.medifirst2000.security.handler.TokenHandler; import com.jasamedika.medifirst2000.security.model.UserAuthentication; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.userdetails.User; +import org.springframework.stereotype.Component; + +import javax.servlet.http.HttpServletRequest; +import java.util.Objects; /** * TokenAuthenticationService class @@ -20,8 +19,8 @@ import com.jasamedika.medifirst2000.security.model.UserAuthentication; @Component public class TokenAuthenticationService { - public static TokenHandler tokenHandler; - + public static TokenHandler tokenHandler; + public TokenAuthenticationService() { } @@ -29,44 +28,32 @@ public class TokenAuthenticationService { tokenHandler = new TokenHandler(secret, userService); } - public String addAuthentication(HttpServletResponse response, - UserAuthentication authentication) { + public String addAuthentication(UserAuthentication authentication) { final User user = authentication.getDetails(); - return tokenHandler.createTokenForUser(user); + return tokenHandler.createTokenForUser(user); } - public Authentication getAuthentication(HttpServletRequest request) - throws JsonParseException { - + public Authentication getAuthentication(HttpServletRequest request) throws JsonParseException { String token = request.getHeader(WebConstants.AUTH_HEADER_NAME); if (token != null) { final User user = tokenHandler.parseUserFromToken(token); - if (user != null) { + if (user != null) return new UserAuthentication(user); - } - } - else{ - try - { - if(request.getQueryString()=="")return null; - final String[] tokens= request.getQueryString().split("&"); - for (String tokenTemp : tokens) { - if(tokenTemp.toLowerCase().indexOf(WebConstants.AUTH_HEADER_NAME.toLowerCase())>=0) - { - token =tokenTemp.split("=")[1]; - final User user = tokenHandler.parseUserFromToken(token); - if (user != null) { - return new UserAuthentication(user); - } + } else { + if (Objects.equals(request.getQueryString(), "")) + return null; + final String[] tokens = request.getQueryString().split("&"); + for (String tokenTemp : tokens) { + if (tokenTemp.toLowerCase().contains(WebConstants.AUTH_HEADER_NAME.toLowerCase())) { + token = tokenTemp.split("=")[1]; + final User user = tokenHandler.parseUserFromToken(token); + if (user != null) { + return new UserAuthentication(user); } } } - catch(Exception e) - { - - } - } return null; } + } diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/service/UserService.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/service/UserService.java index b883d19e..a40346c1 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/service/UserService.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/security/service/UserService.java @@ -1,29 +1,27 @@ package com.jasamedika.medifirst2000.security.service; -import java.util.Arrays; -import java.util.List; - +import com.jasamedika.medifirst2000.dao.LoginUserDao; +import com.jasamedika.medifirst2000.entities.LoginUser; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.authentication.AccountStatusUserDetailsChecker; import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.authority.SimpleGrantedAuthority; import org.springframework.security.core.userdetails.User; -import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.core.userdetails.UsernameNotFoundException; import org.springframework.stereotype.Component; -import com.jasamedika.medifirst2000.dao.LoginUserDao; -import com.jasamedika.medifirst2000.entities.LoginUser; +import java.util.Collections; +import java.util.List; /** * UserService implements - org.springframework.security.core.userdetails.UserDetailsService + * org.springframework.security.core.userdetails.UserDetailsService * * @author Roberto */ @Component -public class UserService implements - org.springframework.security.core.userdetails.UserDetailsService { +public class UserService implements UserDetailsService { @Autowired private LoginUserDao loginUserDao; @@ -34,28 +32,17 @@ public class UserService implements super(); } - /** - * this method is called for rest authentication from client - * - * @author Roberto - */ @Override - public final User loadUserByUsername(String username) - throws UsernameNotFoundException { + public final User loadUserByUsername(String username) throws UsernameNotFoundException { List loginUsers = loginUserDao.findByNamaUser(username); - if (loginUsers.isEmpty()) { + if (loginUsers.isEmpty()) throw new UsernameNotFoundException("user not found"); - } LoginUser loginUser = loginUsers.get(0); - //validasi tambahan lakukan di sini - -// GrantedAuthority authority = new SimpleGrantedAuthority(loginUser -// .getKelompokUser().getKelompokUser()); GrantedAuthority authority = new SimpleGrantedAuthority("USER"); - UserDetails userDetails = (UserDetails) new User( - loginUser.getNamaUser(), loginUser.getKataSandi(), - Arrays.asList(authority)); + User userDetails = new User(loginUser.getNamaUser(), loginUser.getKataSandi(), + Collections.singletonList(authority)); detailsChecker.check(userDetails); - return (User) userDetails; + return userDetails; } + } \ No newline at end of file diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/util/rest/JacksonConfiguration.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/util/rest/JacksonConfiguration.java index 5a5cf6bd..c39352a8 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/util/rest/JacksonConfiguration.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/util/rest/JacksonConfiguration.java @@ -9,21 +9,17 @@ import com.fasterxml.jackson.databind.SerializationFeature; @Component public class JacksonConfiguration { - private ObjectMapper mapper; public JacksonConfiguration() { } public JacksonConfiguration(ObjectMapper mapper) { - this.mapper = mapper; configureJackson(mapper); } - public static ObjectMapper configureJackson(ObjectMapper mapper) { + public static void configureJackson(ObjectMapper mapper) { mapper.enable(SerializationFeature.INDENT_OUTPUT); mapper.setSerializationInclusion(Include.NON_NULL); - mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, - false); - return mapper; + mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); } } diff --git a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/util/rest/RestUtil.java b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/util/rest/RestUtil.java index 6351eb04..e8e6741b 100644 --- a/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/util/rest/RestUtil.java +++ b/jasamedika-web/src/main/java/com/jasamedika/medifirst2000/util/rest/RestUtil.java @@ -38,7 +38,8 @@ public class RestUtil { /** * get JSON response from Object with HTTP status * - * @param source class + * @param + * source class * @return @ResponseEntity */ public static ResponseEntity getJsonResponse(T src, HttpStatus status) { @@ -159,7 +160,7 @@ public class RestUtil { * string source JSON * @param type * class type result - */ + */ public static T jsonToObject(String strJson, Class type) { Gson gson = new Gson(); return gson.fromJson(strJson, type); @@ -168,7 +169,7 @@ public class RestUtil { /** * convert object to json * - */ + */ public static String toJson(Object object) { Gson gson = new Gson(); return gson.toJson(object); diff --git a/jasamedika-web/src/main/java/com/monitorjbl/json/JsonResult.java b/jasamedika-web/src/main/java/com/monitorjbl/json/JsonResult.java index faa7ed20..9ccd6c7f 100644 --- a/jasamedika-web/src/main/java/com/monitorjbl/json/JsonResult.java +++ b/jasamedika-web/src/main/java/com/monitorjbl/json/JsonResult.java @@ -2,7 +2,7 @@ package com.monitorjbl.json; public class JsonResult { private static final JsonResult instance = new JsonResult(); - private static final ThreadLocal current = new ThreadLocal<>(); + private static final ThreadLocal> current = new ThreadLocal<>(); private JsonResult() { } @@ -16,7 +16,6 @@ public class JsonResult { * Type of object being rendered * @return ResultWrapper to provide return value */ - @SuppressWarnings("unchecked") public ResultWrapper use(JsonView view) { current.set(view); return new ResultWrapper<>(view); @@ -26,7 +25,7 @@ public class JsonResult { return instance; } - static JsonView get() { + static JsonView get() { return current.get(); } @@ -35,7 +34,7 @@ public class JsonResult { } public static class ResultWrapper { - private JsonView obj; + private final JsonView obj; private ResultWrapper(JsonView obj) { this.obj = obj; diff --git a/jasamedika-web/src/main/java/com/monitorjbl/json/JsonResultRetriever.java b/jasamedika-web/src/main/java/com/monitorjbl/json/JsonResultRetriever.java index 48bf0992..180335f9 100644 --- a/jasamedika-web/src/main/java/com/monitorjbl/json/JsonResultRetriever.java +++ b/jasamedika-web/src/main/java/com/monitorjbl/json/JsonResultRetriever.java @@ -1,18 +1,15 @@ package com.monitorjbl.json; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - public class JsonResultRetriever { - private static final Logger log = LoggerFactory.getLogger(JsonResultRetriever.class); - static boolean hasValue() { - return JsonResult.get() != null; - } + static boolean hasValue() { + return JsonResult.get() != null; + } + + static JsonView retrieve() { + JsonView val = JsonResult.get(); + JsonResult.unset(); + return val; + } - static JsonView retrieve() { - JsonView val = JsonResult.get(); - JsonResult.unset(); - return val; - } } diff --git a/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewHttpEntityMethodProcessor.java b/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewHttpEntityMethodProcessor.java index 4fe78048..4062465a 100644 --- a/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewHttpEntityMethodProcessor.java +++ b/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewHttpEntityMethodProcessor.java @@ -11,23 +11,19 @@ import java.util.List; public class JsonViewHttpEntityMethodProcessor extends HttpEntityMethodProcessor { - public JsonViewHttpEntityMethodProcessor(List> converters) { - super(converters); - } + public JsonViewHttpEntityMethodProcessor(List> converters) { + super(converters); + } - @Override - public void handleReturnValue(Object returnValue, MethodParameter returnType, - - ModelAndViewContainer mavContainer, NativeWebRequest webRequest) throws Exception { - if(returnValue instanceof ResponseEntity && JsonResultRetriever.hasValue()) { - JsonView json = JsonResultRetriever.retrieve(); - ResponseEntity re = (ResponseEntity) returnValue; - returnValue = ResponseEntity.status(re.getStatusCode()) - .headers(re.getHeaders()) - .body(json); - } - - super.handleReturnValue(returnValue, returnType, mavContainer, webRequest); - } + @Override + public void handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, + NativeWebRequest webRequest) throws Exception { + if (returnValue instanceof ResponseEntity && JsonResultRetriever.hasValue()) { + JsonView json = JsonResultRetriever.retrieve(); + ResponseEntity re = (ResponseEntity) returnValue; + returnValue = ResponseEntity.status(re.getStatusCode()).headers(re.getHeaders()).body(json); + } + super.handleReturnValue(returnValue, returnType, mavContainer, webRequest); + } } diff --git a/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewMessageConverter.java b/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewMessageConverter.java index b7dc45bd..59cced56 100644 --- a/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewMessageConverter.java +++ b/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewMessageConverter.java @@ -10,26 +10,27 @@ import java.io.IOException; public class JsonViewMessageConverter extends MappingJackson2HttpMessageConverter { - public JsonViewMessageConverter() { - super(); - ObjectMapper defaultMapper = new ObjectMapper(); - SimpleModule module = new SimpleModule(); - module.addSerializer(JsonView.class, new JsonViewSerializer()); - defaultMapper.registerModule(module); - setObjectMapper(defaultMapper); - } + public JsonViewMessageConverter() { + super(); + ObjectMapper defaultMapper = new ObjectMapper(); + SimpleModule module = new SimpleModule(); + module.addSerializer(JsonView.class, new JsonViewSerializer()); + defaultMapper.registerModule(module); + setObjectMapper(defaultMapper); + } - public JsonViewMessageConverter(ObjectMapper mapper) { - super(); - SimpleModule module = new SimpleModule(); - module.addSerializer(JsonView.class, new JsonViewSerializer()); - mapper.registerModule(module); - setObjectMapper(mapper); - } + public JsonViewMessageConverter(ObjectMapper mapper) { + super(); + SimpleModule module = new SimpleModule(); + module.addSerializer(JsonView.class, new JsonViewSerializer()); + mapper.registerModule(module); + setObjectMapper(mapper); + } - @Override - protected void writeInternal(Object object, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException { - super.writeInternal(object, outputMessage); - } + @Override + protected void writeInternal(Object object, HttpOutputMessage outputMessage) + throws IOException, HttpMessageNotWritableException { + super.writeInternal(object, outputMessage); + } } \ No newline at end of file diff --git a/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewResponseProcessor.java b/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewResponseProcessor.java index 2d7d97e8..494fd51c 100644 --- a/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewResponseProcessor.java +++ b/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewResponseProcessor.java @@ -6,7 +6,9 @@ import org.springframework.web.servlet.mvc.method.annotation.RequestResponseBody import java.util.List; public class JsonViewResponseProcessor extends RequestResponseBodyMethodProcessor { - public JsonViewResponseProcessor(List> messageConverters) { - super(messageConverters); - } + + public JsonViewResponseProcessor(List> messageConverters) { + super(messageConverters); + } + } diff --git a/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewReturnValueHandler.java b/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewReturnValueHandler.java index aeb728ce..aa9b88be 100644 --- a/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewReturnValueHandler.java +++ b/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewReturnValueHandler.java @@ -11,30 +11,31 @@ import org.springframework.web.method.support.ModelAndViewContainer; import java.util.List; public class JsonViewReturnValueHandler implements HandlerMethodReturnValueHandler { - private static final Logger log = LoggerFactory.getLogger(JsonViewReturnValueHandler.class); - private final HandlerMethodReturnValueHandler delegate; + private static final Logger LOGGER = LoggerFactory.getLogger(JsonViewReturnValueHandler.class); - public JsonViewReturnValueHandler(List> converters) { - this.delegate = new JsonViewResponseProcessor(converters); - } + private final HandlerMethodReturnValueHandler delegate; - @Override - public boolean supportsReturnType(MethodParameter returnType) { - return delegate.supportsReturnType(returnType); - } + public JsonViewReturnValueHandler(List> converters) { + this.delegate = new JsonViewResponseProcessor(converters); + } - @Override - public void handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest) throws Exception { - Object val = returnValue; - if(JsonResultRetriever.hasValue()) { - val = JsonResultRetriever.retrieve(); - log.debug("Found [" + ((JsonView) val).getValue().getClass() + "] to serialize"); - } else { - log.debug("No JsonView found for thread, using returned value"); - } + @Override + public boolean supportsReturnType(MethodParameter returnType) { + return delegate.supportsReturnType(returnType); + } - delegate.handleReturnValue(val, returnType, mavContainer, webRequest); - } + @Override + public void handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, + NativeWebRequest webRequest) throws Exception { + Object val = returnValue; + if (JsonResultRetriever.hasValue()) { + val = JsonResultRetriever.retrieve(); + LOGGER.debug("Found [{}] to serialize", ((JsonView) val).getValue().getClass()); + } else { + LOGGER.debug("No JsonView found for thread, using returned value"); + } + delegate.handleReturnValue(val, returnType, mavContainer, webRequest); + } } \ No newline at end of file diff --git a/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewSupportFactoryBean.java b/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewSupportFactoryBean.java index 6eb9b92e..03d823bf 100644 --- a/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewSupportFactoryBean.java +++ b/jasamedika-web/src/main/java/com/monitorjbl/json/JsonViewSupportFactoryBean.java @@ -15,38 +15,38 @@ import java.util.List; public class JsonViewSupportFactoryBean implements InitializingBean { - @Autowired - private RequestMappingHandlerAdapter adapter; - private final JsonViewMessageConverter converter; + @Autowired + private RequestMappingHandlerAdapter adapter; + private final JsonViewMessageConverter converter; - public JsonViewSupportFactoryBean() { - this(new ObjectMapper()); - } + public JsonViewSupportFactoryBean() { + this(new ObjectMapper()); + } - public JsonViewSupportFactoryBean(ObjectMapper mapper) { - this.converter = new JsonViewMessageConverter(mapper.copy()); - } + public JsonViewSupportFactoryBean(ObjectMapper mapper) { + this.converter = new JsonViewMessageConverter(mapper.copy()); + } - @Override - public void afterPropertiesSet() throws Exception { - List handlers = new ArrayList<>(adapter.getReturnValueHandlers()); - adapter.setMessageConverters(Collections.>singletonList(converter)); - decorateHandlers(handlers); - adapter.setReturnValueHandlers(handlers); - } + @Override + public void afterPropertiesSet() throws Exception { + List handlers = new ArrayList<>(adapter.getReturnValueHandlers()); + adapter.setMessageConverters(Collections.singletonList(converter)); + decorateHandlers(handlers); + adapter.setReturnValueHandlers(handlers); + } - private void decorateHandlers(List handlers) { - List> converters = new ArrayList<>(adapter.getMessageConverters()); - converters.add(converter); - for(HandlerMethodReturnValueHandler handler : handlers) { - int index = handlers.indexOf(handler); - if(handler instanceof HttpEntityMethodProcessor) { - handlers.set(index, new JsonViewHttpEntityMethodProcessor(converters)); - } else if(handler instanceof RequestResponseBodyMethodProcessor) { - handlers.set(index, new JsonViewReturnValueHandler(converters)); - break; - } - } - } + private void decorateHandlers(List handlers) { + List> converters = new ArrayList<>(adapter.getMessageConverters()); + converters.add(converter); + for (HandlerMethodReturnValueHandler handler : handlers) { + int index = handlers.indexOf(handler); + if (handler instanceof HttpEntityMethodProcessor) { + handlers.set(index, new JsonViewHttpEntityMethodProcessor(converters)); + } else if (handler instanceof RequestResponseBodyMethodProcessor) { + handlers.set(index, new JsonViewReturnValueHandler(converters)); + break; + } + } + } } \ No newline at end of file