@Configuration @EnableConfigurationProperties(value={JobsForwardingProperties.class,JobsLocationsProperties.class,JobsMemoryProperties.class,JobsUsersProperties.class,JobsActiveLimitProperties.class,AttachmentServiceProperties.class}) public class ServicesAutoConfiguration extends java.lang.Object
Constructor and Description |
---|
ServicesAutoConfiguration() |
Modifier and Type | Method and Description |
---|---|
ArchivedJobServiceImpl |
archivedJobService(DataServices dataServices,
org.springframework.core.io.ResourceLoader resourceLoader,
io.micrometer.core.instrument.MeterRegistry meterRegistry)
Provide a
ArchivedJobService implementation if one hasn't been provided already. |
AttachmentService |
attachmentService(S3ClientFactory s3ClientFactory,
AttachmentServiceProperties attachmentServiceProperties,
io.micrometer.core.instrument.MeterRegistry meterRegistry)
The attachment service to use.
|
JobDirectoryServerServiceImpl |
jobDirectoryServerService(org.springframework.core.io.ResourceLoader resourceLoader,
DataServices dataServices,
AgentFileStreamService agentFileStreamService,
ArchivedJobService archivedJobService,
io.micrometer.core.instrument.MeterRegistry meterRegistry,
AgentRoutingService agentRoutingService)
Provide the default implementation of
JobDirectoryServerService for serving job directory resources. |
JobLaunchServiceImpl |
jobLaunchService(DataServices dataServices,
JobResolverService jobResolverService,
AgentLauncherSelector agentLauncherSelector,
BraveTracingComponents tracingComponents,
io.micrometer.core.instrument.MeterRegistry registry)
Provide a
JobLaunchService implementation if one isn't available. |
JobResolverServiceImpl |
jobResolverService(DataServices dataServices,
@NotEmpty java.util.List<ClusterSelector> clusterSelectors,
CommandSelector commandSelector,
io.micrometer.core.instrument.MeterRegistry registry,
JobsProperties jobsProperties,
org.springframework.core.env.Environment environment,
BraveTracingComponents tracingComponents)
Get an implementation of
JobResolverService if one hasn't already been defined. |
JobsProperties |
jobsProperties(JobsForwardingProperties forwarding,
JobsLocationsProperties locations,
JobsMemoryProperties memory,
JobsUsersProperties users,
JobsActiveLimitProperties activeLimit)
Collection of properties related to job execution.
|
RequestForwardingServiceImpl |
requestForwardingService(org.springframework.web.client.RestTemplate genieRestTemplate,
GenieHostInfo hostInfo,
JobsForwardingProperties jobsForwardingProperties)
Provide a default implementation of
RequestForwardingService for use by other services. |
@Bean public JobsProperties jobsProperties(JobsForwardingProperties forwarding, JobsLocationsProperties locations, JobsMemoryProperties memory, JobsUsersProperties users, JobsActiveLimitProperties activeLimit)
forwarding
- forwarding propertieslocations
- locations propertiesmemory
- memory propertiesusers
- users propertiesactiveLimit
- active limit propertiesJobsProperties
instance@Bean @ConditionalOnMissingBean(value=AttachmentService.class) public AttachmentService attachmentService(S3ClientFactory s3ClientFactory, AttachmentServiceProperties attachmentServiceProperties, io.micrometer.core.instrument.MeterRegistry meterRegistry) throws java.io.IOException
s3ClientFactory
- the S3 client factoryattachmentServiceProperties
- the service propertiesmeterRegistry
- the meter registryjava.io.IOException
- if the local filesystem implmentation is used and it fails to initialize@Bean @ConditionalOnMissingBean(value=JobResolverService.class) public JobResolverServiceImpl jobResolverService(DataServices dataServices, @NotEmpty @NotEmpty java.util.List<ClusterSelector> clusterSelectors, CommandSelector commandSelector, io.micrometer.core.instrument.MeterRegistry registry, JobsProperties jobsProperties, org.springframework.core.env.Environment environment, BraveTracingComponents tracingComponents)
JobResolverService
if one hasn't already been defined.dataServices
- The DataServices
encapsulation instance to useclusterSelectors
- The ClusterSelector
implementations to usecommandSelector
- The CommandSelector
implementation to useregistry
- The metrics repository to usejobsProperties
- The properties for running a job set by the userenvironment
- The Spring application Environment
for dynamic property resolutiontracingComponents
- The BraveTracingComponents
to useJobResolverServiceImpl
instance@Bean @ConditionalOnMissingBean(value=JobDirectoryServerService.class) public JobDirectoryServerServiceImpl jobDirectoryServerService(org.springframework.core.io.ResourceLoader resourceLoader, DataServices dataServices, AgentFileStreamService agentFileStreamService, ArchivedJobService archivedJobService, io.micrometer.core.instrument.MeterRegistry meterRegistry, AgentRoutingService agentRoutingService)
JobDirectoryServerService
for serving job directory resources.resourceLoader
- The application resource loader used to get references to resourcesdataServices
- The DataServices
instance to useagentFileStreamService
- The service to request a file from an agent running a jobarchivedJobService
- The ArchivedJobService
implementation to use to get archived
job datameterRegistry
- The meter registry used to keep track of metricsagentRoutingService
- The agent routing serviceJobDirectoryServerServiceImpl
@Bean @ConditionalOnMissingBean(value=JobLaunchService.class) public JobLaunchServiceImpl jobLaunchService(DataServices dataServices, JobResolverService jobResolverService, AgentLauncherSelector agentLauncherSelector, BraveTracingComponents tracingComponents, io.micrometer.core.instrument.MeterRegistry registry)
JobLaunchService
implementation if one isn't available.dataServices
- The DataServices
instance to usejobResolverService
- The JobResolverService
implementation to useagentLauncherSelector
- The AgentLauncherSelector
implementation to usetracingComponents
- The BraveTracingComponents
instance to useregistry
- The metrics registry to useJobLaunchServiceImpl
instance@Bean @ConditionalOnMissingBean(value=ArchivedJobService.class) public ArchivedJobServiceImpl archivedJobService(DataServices dataServices, org.springframework.core.io.ResourceLoader resourceLoader, io.micrometer.core.instrument.MeterRegistry meterRegistry)
ArchivedJobService
implementation if one hasn't been provided already.dataServices
- The DataServices
instance to useresourceLoader
- The ResourceLoader
to usemeterRegistry
- The MeterRegistry
implementation to useArchivedJobServiceImpl
instance@Bean @ConditionalOnMissingBean(value=RequestForwardingService.class) public RequestForwardingServiceImpl requestForwardingService(@Qualifier(value="genieRestTemplate") org.springframework.web.client.RestTemplate genieRestTemplate, GenieHostInfo hostInfo, JobsForwardingProperties jobsForwardingProperties)
RequestForwardingService
for use by other services.genieRestTemplate
- The RestTemplate
configured to be used to call other Genie nodeshostInfo
- The GenieHostInfo
instance containing introspection information about
the current nodejobsForwardingProperties
- The properties for forwarding requests between Genie nodesRequestForwardingServiceImpl
instance