public abstract class AbstractConfigurationAdministrator extends Object implements FreezableConfigurationAdministrator
| Modifier and Type | Class and Description |
|---|---|
protected static class |
AbstractConfigurationAdministrator.CompositeFuture<T> |
protected static class |
AbstractConfigurationAdministrator.ConfigurationFuture |
protected static class |
AbstractConfigurationAdministrator.PatchFuture |
protected static class |
AbstractConfigurationAdministrator.PurgeFuture |
FACTORY_ID| Constructor and Description |
|---|
AbstractConfigurationAdministrator(BundleContext context) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
addFactoryService(String factoryId,
ConfigurationFactory service,
String description) |
protected ConfigurationFactory |
addingService(ServiceReference<ConfigurationFactory> reference) |
protected void |
addStoredFactory(String factoryId,
ConfigurationImpl[] configurations) |
protected void |
applyConfiguration(org.eclipse.scada.sec.UserInformation userInformation,
AbstractConfigurationAdministrator.ConfigurationFuture future,
ConfigurationFactory factoryService,
FactoryImpl factory,
ConfigurationImpl configuration)
Apply the configuration to the assigned service
|
org.eclipse.scada.utils.concurrent.NotifyFuture<Void> |
applyDiff(org.eclipse.scada.sec.UserInformation userInformation,
Collection<DiffEntry> changeSet)
Applies a change set to an existing configuration manager.
|
protected void |
changeConfiguration(org.eclipse.scada.sec.UserInformation userInformation,
String factoryId,
String configurationId,
Map<String,String> properties,
AbstractConfigurationAdministrator.ConfigurationFuture future)
Request a change of the configuration
|
org.eclipse.scada.utils.concurrent.NotifyFuture<Configuration> |
createConfiguration(org.eclipse.scada.sec.UserInformation userInformation,
String factoryId,
String configurationId,
Map<String,String> properties) |
org.eclipse.scada.utils.concurrent.NotifyFuture<Configuration> |
deleteConfiguration(org.eclipse.scada.sec.UserInformation userInformation,
String factoryId,
String configurationId) |
void |
dispose() |
void |
freeze() |
Configuration |
getConfiguration(String factoryId,
String configurationId) |
Configuration[] |
getConfigurations(String factoryId) |
FactoryImpl |
getFactory(String factoryId) |
FactoryImpl[] |
getKnownFactories() |
protected abstract void |
performDeleteConfiguration(org.eclipse.scada.sec.UserInformation userInformation,
String factoryId,
String configurationId,
AbstractConfigurationAdministrator.ConfigurationFuture future) |
protected abstract void |
performPurge(org.eclipse.scada.sec.UserInformation userInformation,
String factoryId,
AbstractConfigurationAdministrator.PurgeFuture future) |
protected abstract void |
performStoreConfiguration(org.eclipse.scada.sec.UserInformation userInformation,
String factoryId,
String configurationId,
Map<String,String> properties,
boolean fullSet,
AbstractConfigurationAdministrator.ConfigurationFuture future) |
org.eclipse.scada.utils.concurrent.NotifyFuture<Void> |
purgeFactory(org.eclipse.scada.sec.UserInformation userInformation,
String factoryId) |
protected void |
removedService(ServiceReference<ConfigurationFactory> reference,
ConfigurationFactory service) |
protected void |
removeFactoryService(String factoryId,
ConfigurationFactory service) |
protected void |
setFactoryState(FactoryImpl factory,
FactoryState state) |
void |
start() |
void |
stop() |
void |
thaw() |
org.eclipse.scada.utils.concurrent.NotifyFuture<Configuration> |
updateConfiguration(org.eclipse.scada.sec.UserInformation userInformation,
String factoryId,
String configurationId,
Map<String,String> properties,
boolean fullSet) |
public AbstractConfigurationAdministrator(BundleContext context)
public void dispose()
public void freeze()
throws Exception
freeze in interface FreezableConfigurationAdministratorExceptionpublic void thaw()
throws Exception
thaw in interface FreezableConfigurationAdministratorExceptionprotected void addStoredFactory(String factoryId, ConfigurationImpl[] configurations)
protected void setFactoryState(FactoryImpl factory, FactoryState state)
protected void addFactoryService(String factoryId, ConfigurationFactory service, String description)
protected void removeFactoryService(String factoryId, ConfigurationFactory service)
protected abstract void performPurge(org.eclipse.scada.sec.UserInformation userInformation,
String factoryId,
AbstractConfigurationAdministrator.PurgeFuture future)
throws Exception
Exceptionprotected abstract void performStoreConfiguration(org.eclipse.scada.sec.UserInformation userInformation,
String factoryId,
String configurationId,
Map<String,String> properties,
boolean fullSet,
AbstractConfigurationAdministrator.ConfigurationFuture future)
throws Exception
Exceptionprotected abstract void performDeleteConfiguration(org.eclipse.scada.sec.UserInformation userInformation,
String factoryId,
String configurationId,
AbstractConfigurationAdministrator.ConfigurationFuture future)
throws Exception
Exceptionprotected void changeConfiguration(org.eclipse.scada.sec.UserInformation userInformation,
String factoryId,
String configurationId,
Map<String,String> properties,
AbstractConfigurationAdministrator.ConfigurationFuture future)
userInformation - factoryId - configurationId - properties - future - protected void applyConfiguration(org.eclipse.scada.sec.UserInformation userInformation,
AbstractConfigurationAdministrator.ConfigurationFuture future,
ConfigurationFactory factoryService,
FactoryImpl factory,
ConfigurationImpl configuration)
This method can block for some while
userInformation - future - factory - factoryService - configuration - public org.eclipse.scada.utils.concurrent.NotifyFuture<Void> purgeFactory(org.eclipse.scada.sec.UserInformation userInformation, String factoryId)
purgeFactory in interface ConfigurationAdministratorpublic org.eclipse.scada.utils.concurrent.NotifyFuture<Configuration> createConfiguration(org.eclipse.scada.sec.UserInformation userInformation, String factoryId, String configurationId, Map<String,String> properties)
createConfiguration in interface ConfigurationAdministratorpublic org.eclipse.scada.utils.concurrent.NotifyFuture<Configuration> updateConfiguration(org.eclipse.scada.sec.UserInformation userInformation, String factoryId, String configurationId, Map<String,String> properties, boolean fullSet)
updateConfiguration in interface ConfigurationAdministratorpublic org.eclipse.scada.utils.concurrent.NotifyFuture<Configuration> deleteConfiguration(org.eclipse.scada.sec.UserInformation userInformation, String factoryId, String configurationId)
deleteConfiguration in interface ConfigurationAdministratorpublic Configuration getConfiguration(String factoryId, String configurationId)
getConfiguration in interface ConfigurationAdministratorpublic Configuration[] getConfigurations(String factoryId)
getConfigurations in interface ConfigurationAdministratorpublic FactoryImpl getFactory(String factoryId)
getFactory in interface ConfigurationAdministratorpublic FactoryImpl[] getKnownFactories()
getKnownFactories in interface ConfigurationAdministratorprotected ConfigurationFactory addingService(ServiceReference<ConfigurationFactory> reference)
protected void removedService(ServiceReference<ConfigurationFactory> reference, ConfigurationFactory service)
public org.eclipse.scada.utils.concurrent.NotifyFuture<Void> applyDiff(org.eclipse.scada.sec.UserInformation userInformation, Collection<DiffEntry> changeSet)
ConfigurationAdministratorThe operation must be atomic to the configuration system.
Note that there are two or more entries for one factory/configuration combination it is unspecified which entry will be applied.
applyDiff in interface ConfigurationAdministratorchangeSet - the change set to apply