@openapi-generator-plus/java-cxf-cdi-server-generator
Version:
An OpenAPI Generator Plus template for a Java API server using CXF and CDI
50 lines (40 loc) • 1.7 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.testConfiguration = testConfiguration;
const template_utils_1 = require("@openapi-generator-plus/template-utils");
const java_jaxrs_generator_common_1 = require("@openapi-generator-plus/java-jaxrs-generator-common");
/** Configures the local CXF/Weld environment used by the generated API tests. */
function testConfiguration(root) {
const jx = (0, java_jaxrs_generator_common_1.javax)(root.useJakarta);
const jacksonProvider = root.useJakarta ? 'JacksonXmlBindJsonProvider' : 'JacksonJaxbJsonProvider';
const jacksonProviderPackage = root.useJakarta ? 'jakarta.rs' : 'jaxrs';
return (0, template_utils_1.ts) `
package ${root.apiPackage};
import java.util.ArrayList;
import java.util.List;
import ${jx}.enterprise.context.Dependent;
import org.apache.cxf.jaxrs.JAXRSServerFactoryBean;
import org.apache.cxf.jaxrs.ext.JAXRSServerFactoryCustomizationExtension;
import com.fasterxml.jackson.${jacksonProviderPackage}.json.${jacksonProvider};
/**
* Configures the environment for testing.
*/
public class TestConfiguration implements JAXRSServerFactoryCustomizationExtension {
public static final String ENDPOINT_ADDRESS = "local://api";
/**
* Configures the {@link JAXRSServerFactoryBean} so that it uses the local connection
* for testing, which is higher performance than using a servlet server.
*/
public void customize(JAXRSServerFactoryBean bean) {
bean.setAddress(ENDPOINT_ADDRESS);
}
public static List<Object> defaultProviders() {
List<Object> providers = new ArrayList<>();
providers.add(new ${jacksonProvider}());
return providers;
}
}
`;
}