Package net.solarnetwork.node.job
Class DatumDataSourcePollManagedJob
java.lang.Object
net.solarnetwork.service.support.BasicIdentifiable
net.solarnetwork.node.service.support.BaseIdentifiable
net.solarnetwork.node.job.DatumDataSourcePollManagedJob
- All Implemented Interfaces:
JobService,net.solarnetwork.service.Identifiable,net.solarnetwork.service.ServiceLifecycleObserver,net.solarnetwork.settings.SettingsChangeObserver,net.solarnetwork.settings.SettingSpecifierProvider
public class DatumDataSourcePollManagedJob
extends BaseIdentifiable
implements JobService, net.solarnetwork.settings.SettingsChangeObserver, net.solarnetwork.service.ServiceLifecycleObserver
Job to poll a
DatumDataSource or MultiDatumDataSource for
datum and offer them to a DatumQueue.
The multi-datum data source will be used if configured. Otherwise the datum
data source will be used. This class implements
SettingSpecifierProvider but delegates that API to the configured
data source.
- Since:
- 2.0
- Version:
- 1.0
- Author:
- matt
-
Field Summary
Fields inherited from class net.solarnetwork.node.service.support.BaseIdentifiable
logFields inherited from interface net.solarnetwork.service.Identifiable
GROUP_UID_PROPERTY, UID_PROPERTY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidconfigurationChanged(Map<String, Object> properties) Handle configuration changes.voidExecute the service job.Get the datum data source.net.solarnetwork.service.OptionalService<DatumMetadataService> Get the configuredDatumMetadataService.net.solarnetwork.service.OptionalService<DatumQueue> Get the datum queue.org.springframework.context.MessageSourceGet the multi-datum data source.List<net.solarnetwork.settings.SettingSpecifier> voidHandle service shutdown.voidHandle service startup.voidsetDatumDataSource(DatumDataSource datumDataSource) Set the datum data source.voidsetDatumMetadataService(net.solarnetwork.service.OptionalService<DatumMetadataService> datumMetadataService) Set aDatumMetadataServiceto use for managing datum metadata.voidsetDatumQueue(net.solarnetwork.service.OptionalService<DatumQueue> datumQueue) Set the datum queue.voidsetMultiDatumDataSource(MultiDatumDataSource multiDatumDataSource) Set the multi-datum data source.toString()Methods inherited from class net.solarnetwork.node.service.support.BaseIdentifiable
baseIdentifiableSettings, baseIdentifiableSettings, getExpressionServices, getPlaceholderService, populateExpressionDatumProperties, resolvePlaceholders, resolvePlaceholders, setExpressionServices, setPlaceholderServiceMethods inherited from class net.solarnetwork.service.support.BasicIdentifiable
basicIdentifiableMetadataSettings, basicIdentifiableSettings, basicIdentifiableSettings, basicIdentifiableSettings, doubleMetadataValue, getGroupUid, getGroupUID, getMetadata, getMetadataCount, getUid, getUID, integerMetadataValue, metadataValue, numberMetadataValue, saveMetadataValue, saveMetadataValue, setDisplayName, setGroupUid, setGroupUID, setMessageSource, setMetadata, setMetadataCount, setUid, setUID, smartMetadataValueMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface net.solarnetwork.service.Identifiable
getGroupUid, getUidMethods inherited from interface net.solarnetwork.settings.SettingSpecifierProvider
templateSettingSpecifiers
-
Constructor Details
-
DatumDataSourcePollManagedJob
public DatumDataSourcePollManagedJob()Default constructor.
-
-
Method Details
-
executeJobService
Description copied from interface:JobServiceExecute the service job.- Specified by:
executeJobServicein interfaceJobService- Throws:
Exception- if anything goes wrong
-
toString
-
serviceDidStartup
public void serviceDidStartup()Handle service startup.This method will delegate to the configured
datumDataSourceormultiDatumDataSourceproperties if they also implementServiceLifecycleObserver.- Specified by:
serviceDidStartupin interfacenet.solarnetwork.service.ServiceLifecycleObserver
-
serviceDidShutdown
public void serviceDidShutdown()Handle service shutdown.This method will delegate to the configured
datumDataSourceormultiDatumDataSourceproperties if they also implementServiceLifecycleObserver.- Specified by:
serviceDidShutdownin interfacenet.solarnetwork.service.ServiceLifecycleObserver
-
configurationChanged
Handle configuration changes.This method will delegate to the configured
datumDataSourceormultiDatumDataSourceproperties if they also implementSettingsChangeObserver.- Specified by:
configurationChangedin interfacenet.solarnetwork.settings.SettingsChangeObserver
-
getSettingUid
- Specified by:
getSettingUidin interfacenet.solarnetwork.settings.SettingSpecifierProvider
-
getDisplayName
- Specified by:
getDisplayNamein interfacenet.solarnetwork.service.Identifiable- Specified by:
getDisplayNamein interfacenet.solarnetwork.settings.SettingSpecifierProvider- Overrides:
getDisplayNamein classnet.solarnetwork.service.support.BasicIdentifiable
-
getMessageSource
public org.springframework.context.MessageSource getMessageSource()- Specified by:
getMessageSourcein interfacenet.solarnetwork.settings.SettingSpecifierProvider- Overrides:
getMessageSourcein classnet.solarnetwork.service.support.BasicIdentifiable
-
getSettingSpecifiers
- Specified by:
getSettingSpecifiersin interfacenet.solarnetwork.settings.SettingSpecifierProvider
-
getDatumDataSource
Get the datum data source.- Returns:
- the data source
-
setDatumDataSource
Set the datum data source.- Parameters:
datumDataSource- the data source
-
getMultiDatumDataSource
Get the multi-datum data source.- Returns:
- the data source
-
setMultiDatumDataSource
Set the multi-datum data source.- Parameters:
multiDatumDataSource- the data source
-
getDatumQueue
Get the datum queue.- Returns:
- the queue
-
setDatumQueue
Set the datum queue.- Parameters:
datumQueue- the queue
-
getDatumMetadataService
Get the configuredDatumMetadataService.- Returns:
- the service to use
-
setDatumMetadataService
public void setDatumMetadataService(net.solarnetwork.service.OptionalService<DatumMetadataService> datumMetadataService) Set aDatumMetadataServiceto use for managing datum metadata.- Parameters:
datumMetadataService- the service to use
-