package org.opencds.cqf.ruler.plugin.hello;

import org.hl7.fhir.r4.model.OperationOutcome;
import org.opencds.cqf.ruler.api.OperationProvider;
import org.springframework.beans.factory.annotation.Autowired;

import ca.uhn.fhir.rest.annotation.Operation;

public class HelloWorldProvider implements OperationProvider {

    @Autowired
    HelloWorldProperties helloWorldProperties;


    @Operation(idempotent=true, name = "$hello-world")
    public OperationOutcome message() {
        OperationOutcome outcome = new OperationOutcome();
        outcome.addIssue().setDiagnostics(helloWorldProperties.getMessage());
        return outcome;
    }
}

@@ -224,163 +224,1402 @@
 hir.
-rest.annotation.Operation;%0A%0Apublic class HelloWorldProvider implements OperationProvider %7B%0A%0A    @Autowired%0A    HelloWorldProperties helloWorldProperties;%0A%0A
+model.api.annotation.Description;%0Aimport ca.uhn.fhir.rest.annotation.Operation;%0A%0A/**%0A * This is an example OperationProvider that returns a simple greeting. This is meant to be a demonstration of how to implement an OperationProvider,%0A * and not an actual implementation of anything. It also shows hows to use the  %3Ca href=%22#%7B@link%7D%22%3E%7B@link Description%7D%3C/a%3E and  %3Ca href=%22#%7B@link%7D%22%3E%7B@link Operation%7D%3C/a%3E%0A * annotations.%0A * %3Cp%3E%0A * When implementing the operations it's important to capture the specific IG the operation is defined in. Additional, release versions should be used whenever possible.%0A * Please add both the appropriate Javadoc comments so that implementors have documentation when writing Java code, and also use the %3Ca href=%22#%7B@link%7D%22%3E%7B@link Description%7D%3C/a%3E%0A * annotation so that the relevant information is surfaced via the Tester UI and Swagger UI.%0A */%0Apublic class HelloWorldProvider implements OperationProvider %7B%0A%0A    @Autowired%0A    HelloWorldProperties helloWorldProperties;%0A%0A%0A    /**%0A     * Implements the $hello-world operation found in the %3Ca href=%22https://www.hl7.org/fhir/clinicalreasoning-module.html%22%3EFHIR CR Module%3C/a%3E%0A     * %0A     * @return a greeting%0A     */%0A    @Description(shortDefinition = %22returns a greeting%22, value = %22Implements the $hello-world operation found in the %3Ca href=%5C%22https://www.hl7.org/fhir/clinicalreasoning-module.html%5C%22%3EFHIR CR Module%3C/a%3E%22)
 %0A   
@@ -1702,15 +1702,19 @@
 ome 
-message
+hello_world
 () %7B

Add doc examples