Skip to content

Commit c06e541

Browse files
committed
Update StringUtils.java
BFD-3666 simpler method
1 parent afbd498 commit c06e541

File tree

3 files changed

+16
-16
lines changed

3 files changed

+16
-16
lines changed

apps/bfd-server/bfd-server-war/src/main/java/gov/cms/bfd/server/war/V1SamhsaConsentInterceptor.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package gov.cms.bfd.server.war;
22

3-
import static gov.cms.bfd.server.war.commons.StringUtils.parseBoolean;
3+
import static gov.cms.bfd.server.war.commons.StringUtils.parseBooleansFromRequest;
44

55
import ca.uhn.fhir.rest.api.server.RequestDetails;
66
import ca.uhn.fhir.rest.server.exceptions.BaseServerResponseException;
@@ -38,12 +38,12 @@ public ConsentOutcome willSeeResource(
3838
logger.debug("V1SamhsaConsentInterceptor - Processing willSeeResource.");
3939

4040
// Determine if SAMHSA filtering is required from request parameters
41-
boolean excludeSAMHSAParam =
42-
parseBoolean(
43-
theRequestDetails.getParameters().get(AbstractResourceProvider.EXCLUDE_SAMHSA));
41+
boolean excludeSamhsaParam =
42+
parseBooleansFromRequest(theRequestDetails, AbstractResourceProvider.EXCLUDE_SAMHSA)
43+
.getFirst();
4444
boolean shouldFilterSamhsa =
4545
CommonTransformerUtils.shouldFilterSamhsa(
46-
String.valueOf(excludeSAMHSAParam), theRequestDetails);
46+
String.valueOf(excludeSamhsaParam), theRequestDetails);
4747

4848
// No filtering needed, proceed
4949
if (!shouldFilterSamhsa) {

apps/bfd-server/bfd-server-war/src/main/java/gov/cms/bfd/server/war/V2SamhsaConsentInterceptor.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package gov.cms.bfd.server.war;
22

3-
import static gov.cms.bfd.server.war.commons.StringUtils.parseBoolean;
3+
import static gov.cms.bfd.server.war.commons.StringUtils.parseBooleansFromRequest;
44

55
import ca.uhn.fhir.rest.api.server.RequestDetails;
66
import ca.uhn.fhir.rest.server.exceptions.BaseServerResponseException;
@@ -56,8 +56,8 @@ public ConsentOutcome willSeeResource(
5656

5757
// Determine if SAMHSA filtering is required from request parameters
5858
boolean excludeSamhsaParam =
59-
parseBoolean(
60-
theRequestDetails.getParameters().get(AbstractResourceProvider.EXCLUDE_SAMHSA));
59+
parseBooleansFromRequest(theRequestDetails, AbstractResourceProvider.EXCLUDE_SAMHSA)
60+
.getFirst();
6161
boolean shouldFilterSamhsa =
6262
CommonTransformerUtils.shouldFilterSamhsa(
6363
String.valueOf(excludeSamhsaParam), theRequestDetails);

apps/bfd-server/bfd-server-war/src/main/java/gov/cms/bfd/server/war/commons/StringUtils.java

+8-8
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,15 @@ public static String[] splitOnCommas(String input) {
4242
/**
4343
* Custom function to retrieve the boolean value from a string input.
4444
*
45-
* @param input a String that needs to remove whitespace and commas.
46-
* @return Split Array.
45+
* @param requestDetails the request details.
46+
* @param parameterToParse the parameter To Parse.
47+
* @return true or false.
4748
*/
48-
public static Boolean parseBoolean(String[] input) {
49-
50-
return Optional.ofNullable(input)
51-
.flatMap(params -> params.length > 0 ? Optional.of(params[0]) : Optional.empty())
52-
.map(Boolean::parseBoolean)
53-
.orElse(false);
49+
public static List<Boolean> parseBooleansFromRequest(
50+
RequestDetails requestDetails, String parameterToParse) {
51+
return getParametersFromRequest(requestDetails, parameterToParse)
52+
.map(p -> Boolean.parseBoolean(parameterToParse))
53+
.toList();
5454
}
5555

5656
/**

0 commit comments

Comments
 (0)