From 721f00bdf854d97d18a88eed55c2f7fe35e5c0d0 Mon Sep 17 00:00:00 2001 From: MathewFrancis Date: Fri, 4 Apr 2025 14:13:39 +0530 Subject: [PATCH] Link to JPA established and writing :) --- MySQL_conf_pbx/test1/mariadb_data/ib_logfile0 | Bin 100663296 -> 100663296 bytes .../cezenPBX/DAO/BasicAsteriskOpsDAO.java | 3 +++ .../controller/CezenPbxController.java | 18 +++++++++++++++++- .../example/cezenPBX/entity/PsEndPoints.java | 2 ++ .../cezenPBX/service/BasicPbxService.java | 8 +++++++- .../src/main/resources/application.properties | 6 +++--- 6 files changed, 32 insertions(+), 5 deletions(-) diff --git a/MySQL_conf_pbx/test1/mariadb_data/ib_logfile0 b/MySQL_conf_pbx/test1/mariadb_data/ib_logfile0 index 74a6ad81a4ace3e149204f972cbcc29e6334a8ee..e83782210066a811322b6ff285a216651beef5a3 100644 GIT binary patch delta 7709 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 W;36*JGOpk%u4UK|>o3E^=Kli$Oyo!a delta 7451 zcmWmEXA}rz8^__-%m|T0Rw5%Kqq4~gS!E(L3uj1>e&X!e2^tO?up~j0FiI39 zj*>)4qX(j7QSvB7lrnlSN)@G!(nJqMX`^(}!%_O^ktjp-Xp}L^6g?JYj9d(R4MV+H} zqApR_s9V%M>Jhyg^^AH&y`%S{KGFM8->6^IKN=7Xj0Q!6qao4IXjt??G&~v+jf_S` zqoWU_G11uQqv+#kTr@tK5PcF&j3z~&MxRBWN0Xy3qA#N<(bQ;K^i?!H`Z}5s&5XW@ zW<|53Inmr`UNk>i5G{-rMT?_vqb1SOXj!y8`Yu`#eINZ0t&CPhtD`m1+Gt(0KH3od z82uD&j5bA^qb@Jc^9S zgvXE>S&$XkkR6XB2cAGqY+Xw;1x8)t7wGAXo99_ zhURF2mUs=XqZL}C4cej|-avc2i4J%RZ=)kRp)=k=7j#88bVm=oi=OC(-gpmv@ILyY zANpee24WBfV+e*~7(T#ojKD~Y!f1SmF&K-F@G-_=JSN~1OvEI7iqG&lCgTfyi7A+h zY4{4$@ik^(CceQe%*Gtd#XQW%0xZNLEXKE3f~8o7<@gRO@I8LOO02?atif8W!+LDM zkN622u?d^81zWKV+pz;Xu?xGg2Yc}|_F+E`;2;j+Fn+F_Yp;}K-QqsWL%cnq151zC{|+3`4X;0feJEMDhF~a$;R6iE2#mxi zjK+r;gR%GsA7dQGV*)j_KKh~``eOhFVh{#n2!>)9KEQB{z(|b3Xncq<7>keaF~(s$Cg2lH#3X!* z&+s`W;|qL=DVU0B_zKhUHD+KYzQHWa#vIJWJj}-eEW{!##u>(7?3%jugd+{^&VLuMwAP(U$e!;Ief}{8i z$M8Fj;{;CP6i(w0oWY;?3ukc-=WziSaS4}k1%KlzuHiav;3jV2AKbZ1W(K|{QXMre#CXo_ZNjuvQ%*YG-8 zp*7l|E!yD?w8xw1fVc2AI-(Og;~jKCS9C*n^uW95iC*Z9_s|FLqc8fQKL%hR24OIU zU?_&+0}RIqjKnC6#)lY#vG@odV;sg~0zSb+Ov0!544-2%zQC85f~lB>uP_~7V+Lm8 z8_dFN%)wmD!+b2jLM*~!e2XPmie*@i@2~>j;|Hw7Dy+sDti?L4#|Hd}pRf^|uo+vh z72B{KJFpYGup4`@7e8Yk_TvB!;t&qw7yODNIEvqJ48P+zPT(X?;WYlh8T^UAa2Drq z9v5&Cmv9+Z@HejF8m{98ZsHdH!EM~ZUHprCxR3u5$NVLUBLNa35fUQ_lHvg*Lvo}* zN<4^ENR2dj2x*ZH4jWTB8lxq8;8qd%TGbcnfc%BRZio z-a!|1MK^Ru54?+>=!M>R4}I`H`l28DV*mzX5C&rihGG~#z;KMfNQ}a0e26g^i;wUz z#$h}r;1f*5Bz%g`@Hr;q3w((wn2Krm3e)j5W?&}1!7R+i9L&W$%*O&O#3C%lw^)Lu zScc{J4lD3Ie!xns!fLF+TCBr*Y`~BB2^+Bqo3RC3u?^d?13R$`yRip*@iX>eKMvp^ z4&g9v<1Ww`MCT`&$ a+{PW;#lN_R`$^Wu{3YpEb8+DT3H}e*`l0Ip diff --git a/MySQL_conf_pbx/test1/springCezenPBX/src/main/java/com/example/cezenPBX/DAO/BasicAsteriskOpsDAO.java b/MySQL_conf_pbx/test1/springCezenPBX/src/main/java/com/example/cezenPBX/DAO/BasicAsteriskOpsDAO.java index f1ee799..125b507 100644 --- a/MySQL_conf_pbx/test1/springCezenPBX/src/main/java/com/example/cezenPBX/DAO/BasicAsteriskOpsDAO.java +++ b/MySQL_conf_pbx/test1/springCezenPBX/src/main/java/com/example/cezenPBX/DAO/BasicAsteriskOpsDAO.java @@ -3,6 +3,7 @@ package com.example.cezenPBX.DAO; import com.example.cezenPBX.entity.PsEndPoints; import jakarta.persistence.Entity; import jakarta.persistence.EntityManager; +import jakarta.transaction.Transactional; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; @@ -16,8 +17,10 @@ public class BasicAsteriskOpsDAO implements CezenPbxOpsDAO { // takes the required data from the service class and persists the entity to the database // returns true if operation was carried out without an exception @Override + @Transactional public boolean addNewEndPoint(PsEndPoints psEndPoints) { + // if there is an exception in the transaction try{ this.entityManager.persist(psEndPoints); }catch (Exception e){ diff --git a/MySQL_conf_pbx/test1/springCezenPBX/src/main/java/com/example/cezenPBX/controller/CezenPbxController.java b/MySQL_conf_pbx/test1/springCezenPBX/src/main/java/com/example/cezenPBX/controller/CezenPbxController.java index a4f336f..a74f66e 100644 --- a/MySQL_conf_pbx/test1/springCezenPBX/src/main/java/com/example/cezenPBX/controller/CezenPbxController.java +++ b/MySQL_conf_pbx/test1/springCezenPBX/src/main/java/com/example/cezenPBX/controller/CezenPbxController.java @@ -22,6 +22,22 @@ public class CezenPbxController { System.out.println(psEndPointsRecordDTO); - return false; + // now pass the DTO data to the service + + return this.basicPbxServiceInterface.createANewEndpointService( + psEndPointsRecordDTO.id(), + psEndPointsRecordDTO.transport(), + psEndPointsRecordDTO.aors(), + psEndPointsRecordDTO.auth(), + psEndPointsRecordDTO.context(), + psEndPointsRecordDTO.disallow(), + psEndPointsRecordDTO.allow(), + psEndPointsRecordDTO.directMedia(), + psEndPointsRecordDTO.connectedLineMethod(), + psEndPointsRecordDTO.callerid(), + psEndPointsRecordDTO.dtmfMode(), + psEndPointsRecordDTO.mohsuggest(), + psEndPointsRecordDTO.mailboxes() + ); } } diff --git a/MySQL_conf_pbx/test1/springCezenPBX/src/main/java/com/example/cezenPBX/entity/PsEndPoints.java b/MySQL_conf_pbx/test1/springCezenPBX/src/main/java/com/example/cezenPBX/entity/PsEndPoints.java index a9a38b3..af7cb57 100644 --- a/MySQL_conf_pbx/test1/springCezenPBX/src/main/java/com/example/cezenPBX/entity/PsEndPoints.java +++ b/MySQL_conf_pbx/test1/springCezenPBX/src/main/java/com/example/cezenPBX/entity/PsEndPoints.java @@ -1,9 +1,11 @@ package com.example.cezenPBX.entity; import jakarta.persistence.Column; +import jakarta.persistence.Entity; import jakarta.persistence.Id; import jakarta.persistence.Table; +@Entity @Table(name = "ps_endpoints") public class PsEndPoints { diff --git a/MySQL_conf_pbx/test1/springCezenPBX/src/main/java/com/example/cezenPBX/service/BasicPbxService.java b/MySQL_conf_pbx/test1/springCezenPBX/src/main/java/com/example/cezenPBX/service/BasicPbxService.java index eb7ec4d..eb41ce8 100644 --- a/MySQL_conf_pbx/test1/springCezenPBX/src/main/java/com/example/cezenPBX/service/BasicPbxService.java +++ b/MySQL_conf_pbx/test1/springCezenPBX/src/main/java/com/example/cezenPBX/service/BasicPbxService.java @@ -35,6 +35,12 @@ public class BasicPbxService implements BasicPbxServiceInterface { mailboxes ); - return cezenPbxOpsDAO.addNewEndPoint(psEndPoints); + // if there is an exception in the entity or transaction + try{ + return cezenPbxOpsDAO.addNewEndPoint(psEndPoints); + }catch (Exception e) { + System.out.println(e); + return false; + } } } diff --git a/MySQL_conf_pbx/test1/springCezenPBX/src/main/resources/application.properties b/MySQL_conf_pbx/test1/springCezenPBX/src/main/resources/application.properties index 1843c44..48cb15e 100644 --- a/MySQL_conf_pbx/test1/springCezenPBX/src/main/resources/application.properties +++ b/MySQL_conf_pbx/test1/springCezenPBX/src/main/resources/application.properties @@ -2,9 +2,9 @@ spring.application.name=cezenPBX server.port=8081 #server.port=8088 -#spring.datasource.url = jdbc:mariadb://localhost:3308/asterisk_db -#spring.datasource.username = asterisk_user -#spring.datasource.password = 12345 +spring.datasource.url = jdbc:mariadb://localhost:3308/asterisk_db +spring.datasource.username = asterisk_user +spring.datasource.password = 12345 logging.level.org.hibernate.SQL=DEBUG logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE