public abstract class AbstractServicesManager extends java.lang.Object implements ServicesManager
AbstractServicesManager
.Constructor and Description |
---|
AbstractServicesManager(ServiceRegistry serviceRegistry,
org.springframework.context.ApplicationEventPublisher eventPublisher) |
Modifier and Type | Method and Description |
---|---|
int |
count()
Return a count of loaded services by this manager.
|
RegisteredService |
delete(long id)
Delete the entry for this RegisteredService.
|
RegisteredService |
delete(RegisteredService service)
Delete the entry for this RegisteredService.
|
void |
deleteAll()
Delete all entries in the underlying storage service.
|
protected void |
deleteInternal(RegisteredService service)
Delete internal.
|
RegisteredService |
findServiceBy(long id)
Find a RegisteredService by matching with the supplied id.
|
java.util.Collection<RegisteredService> |
findServiceBy(java.util.function.Predicate<RegisteredService> predicate)
Find a collection of services by type.
|
RegisteredService |
findServiceBy(Service service)
Find a RegisteredService by matching with the supplied service.
|
<T extends RegisteredService> |
findServiceBy(Service serviceId,
java.lang.Class<T> clazz)
Find service by type.
|
RegisteredService |
findServiceBy(java.lang.String serviceId)
Find a RegisteredService by matching with the supplied service.
|
<T extends RegisteredService> |
findServiceBy(java.lang.String serviceId,
java.lang.Class<T> clazz)
Find service by type.
|
java.util.Collection<RegisteredService> |
getAllServices()
Retrieve the collection of all registered services.
|
protected abstract java.util.Collection<RegisteredService> |
getCandidateServicesToMatch(java.lang.String serviceId)
Gets candidate services to match the service id.
|
protected java.time.LocalDateTime |
getCurrentSystemTime()
Gets current system time.
|
java.util.Collection<RegisteredService> |
load()
Load services that are provided by the DAO.
|
protected void |
loadInternal()
Load internal.
|
boolean |
matchesExistingService(Service service)
Convenience method to let one know if a service exists in the data store.
|
boolean |
matchesExistingService(java.lang.String service)
Convenience method to let one know if a service exists in the data store.
|
RegisteredService |
save(RegisteredService registeredService)
Register a service with CAS, or update an existing an entry.
|
RegisteredService |
save(RegisteredService registeredService,
boolean publishEvent)
Register a service with CAS, or update an existing an entry.
|
protected void |
saveInternal(RegisteredService service)
Save internal.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getDomains, getServicesForDomain
public AbstractServicesManager(ServiceRegistry serviceRegistry, org.springframework.context.ApplicationEventPublisher eventPublisher)
public java.util.Collection<RegisteredService> getAllServices()
ServicesManager
getAllServices
in interface ServicesManager
public java.util.Collection<RegisteredService> findServiceBy(java.util.function.Predicate<RegisteredService> predicate)
ServicesManager
findServiceBy
in interface ServicesManager
predicate
- the clazzpublic RegisteredService findServiceBy(java.lang.String serviceId)
ServicesManager
findServiceBy
in interface ServicesManager
serviceId
- the service to match with.public RegisteredService findServiceBy(Service service)
ServicesManager
findServiceBy
in interface ServicesManager
service
- the service to match with.public <T extends RegisteredService> T findServiceBy(java.lang.String serviceId, java.lang.Class<T> clazz)
ServicesManager
findServiceBy
in interface ServicesManager
T
- the type parameterserviceId
- the service idclazz
- the clazzpublic <T extends RegisteredService> T findServiceBy(Service serviceId, java.lang.Class<T> clazz)
ServicesManager
findServiceBy
in interface ServicesManager
T
- the type parameterserviceId
- the service idclazz
- the clazzpublic RegisteredService findServiceBy(long id)
ServicesManager
findServiceBy
in interface ServicesManager
id
- the id to match with.public int count()
ServicesManager
count
in interface ServicesManager
public boolean matchesExistingService(Service service)
ServicesManager
matchesExistingService
in interface ServicesManager
service
- the service to check.public boolean matchesExistingService(java.lang.String service)
ServicesManager
matchesExistingService
in interface ServicesManager
service
- the service to check.public RegisteredService delete(long id)
ServicesManager
delete
in interface ServicesManager
id
- the id of the registeredService to delete.public RegisteredService delete(RegisteredService service)
ServicesManager
delete
in interface ServicesManager
service
- the registered service to delete.public RegisteredService save(RegisteredService registeredService)
ServicesManager
save
in interface ServicesManager
registeredService
- the RegisteredService to update or add.public RegisteredService save(RegisteredService registeredService, boolean publishEvent)
ServicesManager
save
in interface ServicesManager
registeredService
- the RegisteredService to update or add.publishEvent
- whether events should be published to indicate the save operation.@Scheduled(initialDelayString="${cas.serviceRegistry.schedule.startDelay:20000}", fixedDelayString="${cas.serviceRegistry.schedule.repeatInterval:60000}") @PostConstruct public java.util.Collection<RegisteredService> load()
load
in interface ServicesManager
public void deleteAll()
ServicesManager
deleteAll
in interface ServicesManager
protected java.time.LocalDateTime getCurrentSystemTime()
protected abstract java.util.Collection<RegisteredService> getCandidateServicesToMatch(java.lang.String serviceId)
serviceId
- the service idprotected void deleteInternal(RegisteredService service)
service
- the serviceprotected void saveInternal(RegisteredService service)
service
- the serviceprotected void loadInternal()