Class EvaluateMeasureOperation
- java.lang.Object
-
- org.linuxforhealth.fhir.server.spi.operation.AbstractOperation
-
- org.linuxforhealth.fhir.operation.cqf.AbstractMeasureOperation
-
- org.linuxforhealth.fhir.operation.cqf.EvaluateMeasureOperation
-
- All Implemented Interfaces:
FHIROperation
- Direct Known Subclasses:
MeasureCollectDataOperation
public class EvaluateMeasureOperation extends AbstractMeasureOperation
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
PARAM_IN_MEASURE
static java.lang.String
PARAM_IN_PRACTITIONER
static java.lang.String
PARAM_IN_REPORT_TYPE
static java.lang.String
PARAM_IN_SUBJECT
static java.lang.String
PARAM_OUT_RETURN
-
Fields inherited from class org.linuxforhealth.fhir.operation.cqf.AbstractMeasureOperation
CQL_PARAM_MEASUREMENT_PERIOD, PARAM_IN_PERIOD_END, PARAM_IN_PERIOD_START
-
Fields inherited from class org.linuxforhealth.fhir.server.spi.operation.AbstractOperation
definition
-
-
Constructor Summary
Constructors Constructor Description EvaluateMeasureOperation()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected OperationDefinition
buildOperationDefinition()
protected Parameters
doInvoke(FHIROperationContext operationContext, java.lang.Class<? extends Resource> resourceType, java.lang.String logicalId, java.lang.String versionId, Parameters parameters, FHIRResourceHelpers resourceHelper, SearchHelper searchHelper)
This is the method that concrete subclasses must implement to perform the operation logic.java.lang.String
getPractitioner(ParameterMap paramMap)
Retrieve the practitioner parameter from operation inputMeasureReportType
getReportType(ParameterMap paramMap, java.lang.String subject)
Retrieve the MeasureReportType to use based on operation inputs.java.lang.String
getSubject(ParameterMap paramMap)
Retrieve the subject parameter from operation input-
Methods inherited from class org.linuxforhealth.fhir.operation.cqf.AbstractMeasureOperation
doMeasureEvaluation, getMeasurementPeriod, getRetrieveProvider, getTerminologyProvider, getZoneOffset
-
Methods inherited from class org.linuxforhealth.fhir.server.spi.operation.AbstractOperation
buildExceptionWithIssue, buildExceptionWithIssue, countParameters, findOpDefParameter, getDefinition, getName, getParameter, getParameterDefinitions, getParameters, getResourceTypeNames, invoke, isAbstractResourceTypesDisallowed, isAdditionalMethodAllowed, validateInputParameters, validateOperationContext, validateOutputParameters, validateParameters
-
-
-
-
Field Detail
-
PARAM_IN_MEASURE
public static final java.lang.String PARAM_IN_MEASURE
- See Also:
- Constant Field Values
-
PARAM_IN_PRACTITIONER
public static final java.lang.String PARAM_IN_PRACTITIONER
- See Also:
- Constant Field Values
-
PARAM_IN_SUBJECT
public static final java.lang.String PARAM_IN_SUBJECT
- See Also:
- Constant Field Values
-
PARAM_IN_REPORT_TYPE
public static final java.lang.String PARAM_IN_REPORT_TYPE
- See Also:
- Constant Field Values
-
PARAM_OUT_RETURN
public static final java.lang.String PARAM_OUT_RETURN
- See Also:
- Constant Field Values
-
-
Method Detail
-
buildOperationDefinition
protected OperationDefinition buildOperationDefinition()
- Specified by:
buildOperationDefinition
in classAbstractOperation
-
doInvoke
protected Parameters doInvoke(FHIROperationContext operationContext, java.lang.Class<? extends Resource> resourceType, java.lang.String logicalId, java.lang.String versionId, Parameters parameters, FHIRResourceHelpers resourceHelper, SearchHelper searchHelper) throws FHIROperationException
Description copied from class:AbstractOperation
This is the method that concrete subclasses must implement to perform the operation logic.- Specified by:
doInvoke
in classAbstractOperation
- Returns:
- the Parameters object to return or null if there is no response Parameters object to return
- Throws:
FHIROperationException
-
getReportType
public MeasureReportType getReportType(ParameterMap paramMap, java.lang.String subject)
Retrieve the MeasureReportType to use based on operation inputs. The logic is defined as first use the provided code value, second use INDIVIDUAL if a subject is provided, and, last, use SUMMARY if neither a code or subject is available.- Parameters:
paramMap
- operation inputsubject
- subject value- Returns:
- MeasureReportType
-
getSubject
public java.lang.String getSubject(ParameterMap paramMap)
Retrieve the subject parameter from operation input- Parameters:
paramMap
- operation input- Returns:
- subject parameter or null if not found.
-
getPractitioner
public java.lang.String getPractitioner(ParameterMap paramMap)
Retrieve the practitioner parameter from operation input- Parameters:
paramMap
- operation input- Returns:
- practitioner parameter or null if not found.
-
-