Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
db1c562
Update pom.xml
5Amogh Sep 25, 2025
6bdd822
add status of women
SauravBizbRolly Mar 18, 2026
58f3d5c
add status of women
SauravBizbRolly Mar 18, 2026
c16275a
add status of women
SauravBizbRolly Mar 18, 2026
a137f00
add status of women
SauravBizbRolly Mar 18, 2026
e96a152
add status of women
SauravBizbRolly Mar 18, 2026
ef58275
add status of women
SauravBizbRolly Mar 18, 2026
452b809
add status of women
SauravBizbRolly Mar 18, 2026
0f4f378
add status of women
SauravBizbRolly Mar 24, 2026
b46f369
add status of women
SauravBizbRolly Mar 24, 2026
7022cc4
Merge branch 'add/hwc_status_of_women' into feature/status_of_women_hwc
SauravBizbRolly Mar 25, 2026
6e0d0f7
Merge Release 3.6.2 to Main (#163)
vanitha1822 May 22, 2026
553a6c6
Merge branch 'release-3.6.2' into feature/status_of_women_hwc
SauravBizbRolly Jun 4, 2026
9fa1857
merge with release-3.6.2
SauravBizbRolly Jun 4, 2026
b95b68e
merge with release-3.6.2
SauravBizbRolly Jun 4, 2026
bc39ce1
merge with release-3.6.2
SauravBizbRolly Jun 4, 2026
f46b693
fix beneficiary save
SauravBizbRolly Jun 12, 2026
3162f66
fix beneficiary save
SauravBizbRolly Jun 12, 2026
c1e2e2d
fix beneficiary save
SauravBizbRolly Jun 12, 2026
853ec97
fix beneficiary save
SauravBizbRolly Jun 13, 2026
52caaa1
fix beneficiary save
SauravBizbRolly Jun 13, 2026
d75ed23
fix beneficiary save
SauravBizbRolly Jun 16, 2026
028e1b7
fix beneficiary save
SauravBizbRolly Jun 16, 2026
6258dae
fix beneficiary save
SauravBizbRolly Jun 16, 2026
ee77095
change release version
SauravBizbRolly Jun 17, 2026
c3e95f2
Merge pull request #166 from PSMRI/change/release_version
SauravBizbRolly Jun 17, 2026
effbfcc
Merge branch 'release-3.6.2' into release-3.9.0
SauravBizbRolly Jun 17, 2026
8d83a9a
save abha id in health maping with beneficiaryID
SauravBizbRolly Jun 17, 2026
3b7dd52
abha id add in entity class
SauravBizbRolly Jun 17, 2026
1d8dbe7
abha id add in entity class
SauravBizbRolly Jun 17, 2026
1801efe
abha id add in entity class
SauravBizbRolly Jun 17, 2026
594ab59
abha id add in entity class
SauravBizbRolly Jun 17, 2026
ec021c4
abha id add in entity class
SauravBizbRolly Jun 17, 2026
5a83005
abha id add in entity class
SauravBizbRolly Jun 17, 2026
32db7e1
abha id add in entity class
SauravBizbRolly Jun 17, 2026
a90fe13
abha id add in entity class
SauravBizbRolly Jun 17, 2026
59dbd6c
Merge pull request #169 from PSMRI/feature/save_health_id_in_health_m…
SauravBizbRolly Jun 19, 2026
dc2ad36
abha id add in entity class
SauravBizbRolly Jun 22, 2026
107d6a9
Merge branch 'release-3.6.2' into release-3.8.0
SauravBizbRolly Jun 24, 2026
f1ec971
fixed issue of Query did not return a unique result: 2 results were r…
SauravBizbRolly Jun 24, 2026
ad138d7
fixed issue of Query did not return a unique result: 2 results were r…
SauravBizbRolly Jun 24, 2026
40924cb
Merge branch 'main' into release-3.8.0
snehar-nd Jun 30, 2026
83b6046
attach logger in response
SauravBizbRolly Jul 3, 2026
45d2e03
Merge pull request #171 from PSMRI/release-3.8.0
snehar-nd Jul 6, 2026
5696472
Fix the Elasticsearch Health Status (#173)
vanitha1822 Jul 14, 2026
26032ed
Merge 3.8.2 code (#177)
vishwab1 Jul 28, 2026
cd5de78
feat(household): add totalHhMembers and registeredAtCampSite fields
vishwab1 Jul 17, 2026
439a64f
feat(rmnch): add placeOfCurrentLiving, otherPlaceOfCurrentLiving, ins…
vishwab1 Jul 29, 2026
5d72275
fix(household): accept Pincode key variant during RMNCH sync deserial…
vishwab1 Jul 20, 2026
f6cc245
feat(household): add address column mapping to i_householddetails
vishwab1 Jul 20, 2026
1e08d4b
chore(merge): bring release-3.8.3 into vb/release-3.8.3-fix
vishwab1 Jul 29, 2026
95ee1d1
Merge remote-tracking branch 'origin/release-3.8.3' into vb/release-3…
vishwab1 Aug 5, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,13 @@
import java.util.List;
import java.util.Objects;

import com.iemr.common.identity.data.rmnch.RMNCHBeneficiaryDetailsRmnch;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
Expand Down Expand Up @@ -315,6 +318,17 @@ public String searchBeneficiaryByVillageIdAndLastModDate(
}
return response;
}


@PostMapping("/getRmnchDataByBenRedID")
public ResponseEntity<RMNCHBeneficiaryDetailsRmnch> getRmnchDataByBenID(@RequestBody BigInteger object) {
try {
RMNCHBeneficiaryDetailsRmnch data = svc.getRmnchDataByBenID(object);
return ResponseEntity.ok(data);
} catch (Exception e) {
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(null);
}
}
// search beneficiary by lastModDate and districtID
@Operation(summary ="Get count of beneficiary by villageId and last modified date-time")
@PostMapping(path = "/countBenByVillageIdAndLastModifiedDate")
Expand Down Expand Up @@ -593,7 +607,6 @@ public String createIdentity(@Param(value = "{\r\n" + " \"eventTypeName\": \"St
+ " \"sexualOrientationType\": \"String\",\r\n" + " \"vanID\": \"Integer\",\r\n"
+ " \"createdDate\": \"Timestamp\"\r\n" + " \"faceEmbedding\": [\"Float\"]\r\n" + "}") @RequestBody String identityData) throws IEMRException {
logger.info("IdentityController.createIdentity - start");
System.out.println("[TRACE][Identity-API] /id/create raw request body : " + identityData);

// Bare Gson matches Common-API's RegisterBenificiaryServiceImpl, which also
// serializes the outgoing identity payload with a bare new Gson(). dob relies
Expand All @@ -602,10 +615,8 @@ public String createIdentity(@Param(value = "{\r\n" + " \"eventTypeName\": \"St
// works regardless of which Gson instance performs the parse.
IdentityDTO identity = new Gson().fromJson(identityData, IdentityDTO.class);
logger.info("identity hit: " + identity);
System.out.println("[TRACE][Identity-API] /id/create parsed IdentityDTO : " + identity);
BeneficiaryCreateResp map;
map = svc.createIdentity(identity);
System.out.println("[TRACE][Identity-API] /id/create svc.createIdentity result : " + InputMapper.getInstance().gson().toJson(map));
String data = InputMapper.getInstance().gson().toJson(map);
String response = getSuccessResponseString(data, 200, "success", "createIdentityByAgent");

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,13 @@

import java.sql.Timestamp;

import com.google.gson.Gson;
import com.google.gson.JsonObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
Expand Down Expand Up @@ -56,14 +59,17 @@ public class RMNCHMobileAppController {

@PostMapping(value = "/syncDataToAmrit", consumes = "application/json", produces = "application/json")
@Operation(summary = "Sync data to AMRIT for already regestered beneficiary with AMRIT beneficiary id ")
public String syncDataToAmrit(@RequestBody String requestOBJ) {
public String syncDataToAmrit(@RequestBody String requestOBJ,@RequestHeader(value = "jwttoken") String authorization) {
OutputResponse response = new OutputResponse();
try {
if (requestOBJ != null) {
System.out.println("syncDataToAmrit request body : " + requestOBJ);
String s = rmnchDataSyncService.syncDataToAmrit(requestOBJ);
System.out.println("syncDataToAmrit response body : " + s);

String s = rmnchDataSyncService.syncDataToAmrit(requestOBJ,authorization);
logger.info("syncDataToAmrit Response: {}", s);

response.setResponse(s);

logger.info(" syncDataToAmrit Final API Response: {}", response.toString());
} else
response.setError(5000, "Invalid/NULL request obj");
} catch (Exception e) {
Expand All @@ -75,6 +81,46 @@ public String syncDataToAmrit(@RequestBody String requestOBJ) {

}

@PostMapping(value = "/syncDataToAmritByHwc", consumes = "application/json", produces = "application/json")
@Operation(summary = "Sync data to AMRIT for already registered beneficiary with AMRIT beneficiary id")
public ResponseEntity<?> syncDataToAmritHwc(@RequestBody String requestOBJ) {

try {
if (requestOBJ == null || requestOBJ.isEmpty()) {
return ResponseEntity.badRequest().body("Invalid/NULL request obj");
}

JsonObject requestObj = new Gson().fromJson(requestOBJ, JsonObject.class);

Long beneficiaryID = requestObj.has("benficieryid") && !requestObj.get("benficieryid").isJsonNull()
? requestObj.get("benficieryid").getAsLong()
: null;

Long beneficiaryRegID = requestObj.has("benRegId") && !requestObj.get("benRegId").isJsonNull()
? requestObj.get("benRegId").getAsLong()
: null;

if (beneficiaryID == null || beneficiaryRegID == null) {
return ResponseEntity.badRequest().body("beneficiaryID or beneficiaryRegID is missing");
}

String result = rmnchDataSyncService.saveBeneficiaryDetailsAfterRegistration(
beneficiaryID,
beneficiaryRegID,
requestOBJ
);

return ResponseEntity.ok(result);

} catch (Exception e) {
logger.error("Error in RMNCH mobile data sync : {}", e.getMessage());
return ResponseEntity.internalServerError()
.body("Error in RMNCH mobile data sync : " + e.getMessage());
}
}



// @Deprecated
@PostMapping(value = "/getBeneficiaryDataForVillage", consumes = "application/json", produces = "application/json")
@Operation(summary = "Get beneficiary data for given village ")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -564,6 +564,29 @@ public class RMNCHBeneficiaryDetailsRmnch {
@Expose
private Boolean isDeactivate;

@Expose
@Transient
private String abhaId;

@Expose
@Transient
private String familyId;

// Anthropometry fields sent by Stop TB mobile app via beneficiaryDetails payload.
// i_beneficiarydetails_rmnch has no these columns β€” stored in i_beneficiarydetails.otherFields instead.
@Expose
@Transient
private Double height;
@Expose
@Transient
private Double weight;
@Expose
@Transient
private Double bmi;
@Expose
@Transient
private Double temperature; // stored as "temperatureValue" in otherFields to match getBeneficiaryData key

@Expose
@Column(name = "gpsLatitude")
private Double gpsLatitude;
Expand All @@ -589,19 +612,4 @@ public class RMNCHBeneficiaryDetailsRmnch {
@Column(name = "gpsUnavailableReason")
private String gpsUnavailableReason;

// Anthropometry fields sent by Stop TB mobile app via beneficiaryDetails payload.
// i_beneficiarydetails_rmnch has no these columns β€” stored in i_beneficiarydetails.otherFields instead.
@Expose
@Transient
private Double height;
@Expose
@Transient
private Double weight;
@Expose
@Transient
private Double bmi;
@Expose
@Transient
private Double temperature; // stored as "temperatureValue" in otherFields to match getBeneficiaryData key

}
Original file line number Diff line number Diff line change
Expand Up @@ -215,6 +215,14 @@ public class RMNCHMBeneficiarydetail {
@Transient
private Integer ProviderServiceMapID;

@Expose
@Transient
private String abhaId;

@Expose
@Column(name = "familyid")
private String familyId;

@Expose
private String placeOfCurrentLiving;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,8 @@ public int compareTo(BeneficiariesDTO ben) {
private BigInteger religionId;
private String religion;
private String monthlyFamilyIncome;
private String reproductiveStatus;
private Integer reproductiveStatusId;
// End Outreach

// Start 1097
Expand Down
2 changes: 2 additions & 0 deletions src/main/java/com/iemr/common/identity/dto/IdentityDTO.java
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,8 @@ public class IdentityDTO {
private Integer incomeStatusId;
private String incomeStatus;
private String monthlyFamilyIncome;
private String reproductiveStatus;
private Integer reproductiveStatusId;

@Expose
private Integer vanID;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
import java.math.BigInteger;
import java.util.List;

import io.swagger.v3.oas.annotations.info.License;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.CrudRepository;
import org.springframework.data.repository.query.Param;
Expand All @@ -36,8 +37,16 @@ public interface RMNCHBenDetailsRepo extends CrudRepository<RMNCHMBeneficiarydet
@Query(" SELECT t FROM RMNCHMBeneficiarydetail t WHERE t.id = :vanSerialNo AND t.VanID = :vanID")
public RMNCHMBeneficiarydetail getByIdAndVanID(@Param("vanSerialNo") BigInteger vanSerialNo,
@Param("vanID") int vanID);

@Query(" SELECT t FROM RMNCHMBeneficiarydetail t WHERE t.id = " +
"(SELECT m.benDetailsId from RMNCHMBeneficiarymapping m where m.benRegId = :beneficiaryRegID)")
public List<RMNCHMBeneficiarydetail> getByBenRegID(@Param("beneficiaryRegID") BigInteger beneficiaryRegID);

@Query("""
SELECT t
FROM RMNCHMBeneficiarydetail t
WHERE t.id IN (
SELECT m.benDetailsId
FROM RMNCHMBeneficiarymapping m
WHERE m.benRegId = :beneficiaryRegID
)
""")
List<RMNCHMBeneficiarydetail> getByBenRegID(
@Param("beneficiaryRegID") BigInteger beneficiaryRegID);
}
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ public interface RMNCHCBACDetailsRepo extends CrudRepository<RMNCHCBACdetails, L
public RMNCHCBACdetails getByIdAndVanID(@Param("vanSerialNo") Long vanSerialNo, @Param("vanID") int vanID);

@Query(" SELECT t FROM RMNCHCBACdetails t WHERE t.BenRegId =:benRegID")
public RMNCHCBACdetails getByRegID(@Param("benRegID") BigInteger benRegID);
public List<RMNCHCBACdetails> getByRegID(@Param("benRegID") BigInteger benRegID);

@Query(value = "select beneficiary_visit_code,visit_category from db_iemr.i_ben_flow_outreach where beneficiary_reg_id=:benRegID AND beneficiary_visit_code is not null AND visit_category is not null order by created_date desc limit 1", nativeQuery = true)
public List<Object[]> getVisitDetailsbyRegID(@Param("benRegID") Long benRegID);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -809,6 +809,16 @@ public List<BeneficiariesDTO> searchBeneficiaryByVillageIdAndLastModifyDate(List
return beneficiaryList;
}


public RMNCHBeneficiaryDetailsRmnch getRmnchDataByBenID(BigInteger benID) {
RMNCHBeneficiaryDetailsRmnch rmnchBeneficiaryDetailsRmnch = new RMNCHBeneficiaryDetailsRmnch();

if(!rMNCHBeneficiaryDetailsRmnchRepo.getByRegID(benID).isEmpty()){
rmnchBeneficiaryDetailsRmnch = rMNCHBeneficiaryDetailsRmnchRepo.getByRegID(benID).get(0);
}
return rmnchBeneficiaryDetailsRmnch;
}

public Long countBeneficiaryByVillageIdAndLastModifyDate(List<Integer> villageIDs, Timestamp lastModifiedDate) {
Long beneficiaryCount = 0L;
try {
Expand Down Expand Up @@ -1492,10 +1502,8 @@ public BeneficiaryCreateResp createIdentity(IdentityDTO identity) {
Timestamp ts = Timestamp.valueOf(dateToStoreInDataBase);
mDetl.setCreatedDate(ts);
}
System.out.println("[TRACE][Identity-API] before detailRepo.save mDetl.getDob()=" + mDetl.getDob());
mDetl = detailRepo.save(mDetl);
logger.info("IdentityService.createIdentity - Details saved - id = " + mDetl.getBeneficiaryDetailsId());
System.out.println("[TRACE][Identity-API] after detailRepo.save mDetl.getDob()=" + mDetl.getDob() + " id=" + mDetl.getBeneficiaryDetailsId());

// Update van serial no for data sync
detailRepo.updateVanSerialNo(mDetl.getBeneficiaryDetailsId());
Expand Down Expand Up @@ -1689,7 +1697,6 @@ private MBeneficiarydetail convertIdentityDTOToMBeneficiarydetail(IdentityDTO dt
}
beneficiarydetail.setCommunity(dto.getCommunity());
beneficiarydetail.setCommunityId(dto.getCommunityId());
System.out.println("[TRACE][Identity-API] convertIdentityDTOToMBeneficiarydetail dto.getDob()=" + dto.getDob());
beneficiarydetail.setDob(dto.getDob());
beneficiarydetail.setEducation(dto.getEducation());
beneficiarydetail.setEducationId(dto.getEducationId());
Expand Down Expand Up @@ -1999,6 +2006,7 @@ public List<BeneficiariesDTO> getBeneficiariesDeatilsByBenRegIdList(List<BigInte
* @return
*/
private BeneficiariesDTO getBeneficiariesDTO(MBeneficiarymapping benMap) {
RMNCHBeneficiaryDetailsRmnch rmnchBeneficiaryDetailsRmnch = new RMNCHBeneficiaryDetailsRmnch();
BeneficiariesDTO bdto = mapper.mBeneficiarymappingToBeneficiariesDTO(benMap);
if (null != benMap && null != benMap.getMBeneficiarydetail()
&& !StringUtils.isEmpty(benMap.getMBeneficiarydetail().getFaceEmbedding())) {
Expand All @@ -2014,6 +2022,13 @@ private BeneficiariesDTO getBeneficiariesDTO(MBeneficiarymapping benMap) {
bdto.setFaceEmbedding(floatList);
}
// bdto.setOtherFields(benMap.getMBeneficiarydetail().getOtherFields());

if(!rMNCHBeneficiaryDetailsRmnchRepo.getByRegID(benMap.getBenRegId()).isEmpty() ){
rmnchBeneficiaryDetailsRmnch = rMNCHBeneficiaryDetailsRmnchRepo.getByRegID(benMap.getBenRegId()).get(0);
bdto.setReproductiveStatus(rmnchBeneficiaryDetailsRmnch.getReproductiveStatus());
bdto.setReproductiveStatusId(rmnchBeneficiaryDetailsRmnch.getReproductiveStatusId());
}

bdto.setBeneficiaryFamilyTags(
mapper.mapToMBeneficiaryfamilymappingWithBenFamilyDTOList(benMap.getMBeneficiaryfamilymappings()));
bdto.setBeneficiaryIdentites(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,10 +48,14 @@
import javax.management.ObjectName;
import jakarta.annotation.PostConstruct;
import org.apache.http.HttpHost;
import org.apache.http.auth.AuthScope;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.http.client.config.RequestConfig;
import org.apache.http.impl.client.BasicCredentialsProvider;
import org.elasticsearch.client.Request;
import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestClientBuilder;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
Expand Down Expand Up @@ -116,6 +120,8 @@ public class HealthService {
private final boolean elasticsearchEnabled;
private final boolean elasticsearchIndexingRequired;
private final String elasticsearchTargetIndex;
private final String elasticsearchUsername;
private final String elasticsearchPassword;
private static final ObjectMapper objectMapper = new ObjectMapper();

private RestClient elasticsearchRestClient;
Expand All @@ -139,7 +145,9 @@ public HealthService(
@Value("${elasticsearch.port:9200}") int elasticsearchPort,
@Value("${elasticsearch.enabled:false}") boolean elasticsearchEnabled,
@Value("${elasticsearch.target-index:amrit_data}") String elasticsearchTargetIndex,
@Value("${elasticsearch.indexing-required:false}") boolean elasticsearchIndexingRequired) {
@Value("${elasticsearch.indexing-required:false}") boolean elasticsearchIndexingRequired,
@Value("${elasticsearch.username:}") String elasticsearchUsername,
@Value("${elasticsearch.password:}") String elasticsearchPassword) {

this.dataSource = dataSource;
this.advancedCheckExecutor = Executors.newSingleThreadExecutor(r -> {
Expand All @@ -153,6 +161,8 @@ public HealthService(
this.elasticsearchEnabled = elasticsearchEnabled;
this.elasticsearchIndexingRequired = elasticsearchIndexingRequired;
this.elasticsearchTargetIndex = (elasticsearchTargetIndex != null) ? elasticsearchTargetIndex : "amrit_data";
this.elasticsearchUsername = elasticsearchUsername;
this.elasticsearchPassword = elasticsearchPassword;
}

@PostConstruct
Expand All @@ -176,15 +186,30 @@ public void cleanup() {

private void initializeElasticsearchClient() {
try {
this.elasticsearchRestClient = RestClient.builder(
RestClientBuilder builder = RestClient.builder(
new HttpHost(elasticsearchHost, elasticsearchPort, "http"))
.setRequestConfigCallback(cb -> cb
.setConnectTimeout(ELASTICSEARCH_CONNECT_TIMEOUT_MS)
.setSocketTimeout(ELASTICSEARCH_SOCKET_TIMEOUT_MS))
.build();
.setSocketTimeout(ELASTICSEARCH_SOCKET_TIMEOUT_MS));

// Attach Basic Auth when credentials are configured, so the health
// probes authenticate against a security-enabled cluster (matches
// ElasticsearchConfig). When username is blank (security disabled),
// the client stays unauthenticated.
if (elasticsearchUsername != null && !elasticsearchUsername.isEmpty()) {
BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
credentialsProvider.setCredentials(
AuthScope.ANY,
new UsernamePasswordCredentials(elasticsearchUsername, elasticsearchPassword));
builder.setHttpClientConfigCallback(httpClientBuilder ->
httpClientBuilder.setDefaultCredentialsProvider(credentialsProvider));
}

this.elasticsearchRestClient = builder.build();
this.elasticsearchClientReady = true;
logger.info("Elasticsearch client initialized (connect/socket timeout: {}ms)",
ELASTICSEARCH_CONNECT_TIMEOUT_MS);
logger.info("Elasticsearch client initialized (connect/socket timeout: {}ms, auth: {})",
ELASTICSEARCH_CONNECT_TIMEOUT_MS,
(elasticsearchUsername != null && !elasticsearchUsername.isEmpty()) ? "enabled" : "disabled");
} catch (Exception e) {
logger.warn("Failed to initialize Elasticsearch client: {}", e.getMessage());
this.elasticsearchClientReady = false;
Expand Down
Loading
Loading