33import java .io .InputStream ;
44import java .util .function .Function ;
55
6+ import org .springframework .beans .factory .annotation .Autowired ;
67import org .springframework .boot .autoconfigure .AutoConfiguration ;
78import org .springframework .boot .autoconfigure .condition .ConditionalOnMissingBean ;
89import org .springframework .boot .context .properties .EnableConfigurationProperties ;
10+ import org .springframework .boot .ssl .SslBundles ;
911import org .springframework .context .annotation .Bean ;
1012import org .springframework .context .annotation .Lazy ;
1113
5254public class FluentFormsAutoConfiguration {
5355
5456 @ SuppressWarnings ("unchecked" )
55- private <T extends Builder > T setAemFields (T builder , AemConfiguration aemConfig ) {
57+ private <T extends Builder > T setAemFields (T builder , AemConfiguration aemConfig , SslBundles sslBundles ) {
5658 return (T )(builder .machineName (aemConfig .servername ())
5759 .port (aemConfig .port ())
5860 .basicAuthentication (aemConfig .user (), aemConfig .password ())
5961 .useSsl (aemConfig .useSsl ())
62+ .clientFactory (()->JerseyClientFactory .createClient (sslBundles , aemConfig .sslBundle ()))
6063 );
6164 }
6265
6366 @ ConditionalOnMissingBean
6467 @ Bean
65- public AdaptiveFormsService adaptiveFormsService (AemConfiguration aemConfig , Function <InputStream , InputStream > afInputStreamFilter ) {
66- return setAemFields (AdaptiveFormsService .builder (), aemConfig )
68+ public AdaptiveFormsService adaptiveFormsService (AemConfiguration aemConfig , Function <InputStream , InputStream > afInputStreamFilter , @ Autowired ( required = false ) SslBundles sslBundles ) {
69+ return setAemFields (AdaptiveFormsService .builder (), aemConfig , sslBundles )
6770 .addRenderResultFilter (afInputStreamFilter )
6871 .build ();
6972 }
@@ -83,58 +86,58 @@ private Function<InputStream, InputStream> buildInputFilter(String aemPrefix, St
8386
8487 @ ConditionalOnMissingBean
8588 @ Bean
86- public AssemblerService assemblerService (AemConfiguration aemConfig ) {
87- RestServicesDocAssemblerServiceAdapter adapter = setAemFields (RestServicesDocAssemblerServiceAdapter .builder (), aemConfig ).build ();
89+ public AssemblerService assemblerService (AemConfiguration aemConfig , @ Autowired ( required = false ) SslBundles sslBundles ) {
90+ RestServicesDocAssemblerServiceAdapter adapter = setAemFields (RestServicesDocAssemblerServiceAdapter .builder (), aemConfig , sslBundles ).build ();
8891 return new AssemblerServiceImpl (adapter , UsageContext .CLIENT_SIDE );
8992 }
9093
9194 @ ConditionalOnMissingBean
9295 @ Bean
93- public DocAssuranceService docAssuranceService (AemConfiguration aemConfig ) {
94- RestServicesDocAssuranceServiceAdapter adapter = setAemFields (RestServicesDocAssuranceServiceAdapter .builder (), aemConfig ).build ();
96+ public DocAssuranceService docAssuranceService (AemConfiguration aemConfig , @ Autowired ( required = false ) SslBundles sslBundles ) {
97+ RestServicesDocAssuranceServiceAdapter adapter = setAemFields (RestServicesDocAssuranceServiceAdapter .builder (), aemConfig , sslBundles ).build ();
9598 return new DocAssuranceServiceImpl (adapter );
9699 }
97100
98101 @ ConditionalOnMissingBean
99102 @ Bean
100- public FormsService formsService (AemConfiguration aemConfig ) {
101- RestServicesFormsServiceAdapter adapter = setAemFields (RestServicesFormsServiceAdapter .builder (), aemConfig ).build ();
103+ public FormsService formsService (AemConfiguration aemConfig , @ Autowired ( required = false ) SslBundles sslBundles ) {
104+ RestServicesFormsServiceAdapter adapter = setAemFields (RestServicesFormsServiceAdapter .builder (), aemConfig , sslBundles ).build ();
102105 return new FormsServiceImpl (adapter , UsageContext .CLIENT_SIDE );
103106 }
104107
105108 @ ConditionalOnMissingBean
106109 @ Bean
107- public GeneratePDFService generatePDFService (AemConfiguration aemConfig ) {
108- RestServicesGeneratePDFServiceAdapter adapter = setAemFields (RestServicesGeneratePDFServiceAdapter .builder (), aemConfig ).build ();
110+ public GeneratePDFService generatePDFService (AemConfiguration aemConfig , @ Autowired ( required = false ) SslBundles sslBundles ) {
111+ RestServicesGeneratePDFServiceAdapter adapter = setAemFields (RestServicesGeneratePDFServiceAdapter .builder (), aemConfig , sslBundles ).build ();
109112 return new GeneratePDFServiceImpl (adapter );
110113 }
111114
112115 @ ConditionalOnMissingBean
113116 @ Bean
114- public Html5FormsService html5FormsService (AemConfiguration aemConfig , AemProxyConfiguration aemProxyConfig ) {
115- return setAemFields (Html5FormsService .builder (), aemConfig )
117+ public Html5FormsService html5FormsService (AemConfiguration aemConfig , AemProxyConfiguration aemProxyConfig , @ Autowired ( required = false ) SslBundles sslBundles ) {
118+ return setAemFields (Html5FormsService .builder (), aemConfig , sslBundles )
116119 .addRenderResultFilter (afInputStreamFilter (aemProxyConfig ))
117120 .build ();
118121 }
119122
120123 @ ConditionalOnMissingBean
121124 @ Bean
122- public OutputService outputService (AemConfiguration aemConfig ) {
123- RestServicesOutputServiceAdapter adapter = setAemFields (RestServicesOutputServiceAdapter .builder (), aemConfig ).build ();
125+ public OutputService outputService (AemConfiguration aemConfig , @ Autowired ( required = false ) SslBundles sslBundles ) {
126+ RestServicesOutputServiceAdapter adapter = setAemFields (RestServicesOutputServiceAdapter .builder (), aemConfig , sslBundles ).build ();
124127 return new OutputServiceImpl (adapter , UsageContext .CLIENT_SIDE );
125128 }
126129
127130 @ ConditionalOnMissingBean
128131 @ Bean
129- public PdfUtilityService pdfUtilityService (AemConfiguration aemConfig ) {
130- RestServicesPdfUtilityServiceAdapter adapter = setAemFields (RestServicesPdfUtilityServiceAdapter .builder (), aemConfig ).build ();
132+ public PdfUtilityService pdfUtilityService (AemConfiguration aemConfig , @ Autowired ( required = false ) SslBundles sslBundles ) {
133+ RestServicesPdfUtilityServiceAdapter adapter = setAemFields (RestServicesPdfUtilityServiceAdapter .builder (), aemConfig , sslBundles ).build ();
131134 return new PdfUtilityServiceImpl (adapter );
132135 }
133136
134137 @ ConditionalOnMissingBean
135138 @ Bean
136- public ConvertPdfService convertPdfService (AemConfiguration aemConfig ) {
137- RestServicesConvertPdfServiceAdapter adapter = setAemFields (RestServicesConvertPdfServiceAdapter .builder (), aemConfig ).build ();
139+ public ConvertPdfService convertPdfService (AemConfiguration aemConfig , @ Autowired ( required = false ) SslBundles sslBundles ) {
140+ RestServicesConvertPdfServiceAdapter adapter = setAemFields (RestServicesConvertPdfServiceAdapter .builder (), aemConfig , sslBundles ).build ();
138141 return new ConvertPdfServiceImpl (adapter );
139142 }
140143
0 commit comments