Package com.yahoo.config.model
Class ApplicationConfigProducerRoot
- java.lang.Object
-
- com.yahoo.config.model.producer.AbstractConfigProducer<AbstractConfigProducer<?>>
-
- com.yahoo.config.model.ApplicationConfigProducerRoot
-
- All Implemented Interfaces:
com.yahoo.cloud.config.ApplicationIdConfig.Producer
,com.yahoo.cloud.config.ClusterListConfig.Producer
,com.yahoo.cloud.config.log.LogdConfig.Producer
,com.yahoo.cloud.config.ModelConfig.Producer
,com.yahoo.cloud.config.SlobroksConfig.Producer
,com.yahoo.cloud.config.ZookeepersConfig.Producer
,com.yahoo.config.ConfigInstance.Producer
,CommonConfigsProducer
,com.yahoo.document.config.DocumentmanagerConfig.Producer
,com.yahoo.document.config.DocumenttypesConfig.Producer
,com.yahoo.documentapi.messagebus.protocol.DocumentProtocolPoliciesConfig.Producer
,com.yahoo.documentapi.messagebus.protocol.DocumentrouteselectorpolicyConfig.Producer
,com.yahoo.messagebus.MessagebusConfig.Producer
,com.yahoo.vespa.config.content.AllClustersBucketSpacesConfig.Producer
,com.yahoo.vespa.config.content.DistributionConfig.Producer
,com.yahoo.vespa.config.content.LoadTypeConfig.Producer
,ConfigProducer
,Serializable
public class ApplicationConfigProducerRoot extends AbstractConfigProducer<AbstractConfigProducer<?>> implements CommonConfigsProducer
This is the parent of all ConfigProducers in the system resulting from configuring an application.- Author:
- gjoranv
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class com.yahoo.config.model.producer.AbstractConfigProducer
log
-
-
Constructor Summary
Constructors Constructor Description ApplicationConfigProducerRoot(AbstractConfigProducer parent, String name, DocumentModel documentModel, com.yahoo.component.Version vespaVersion, com.yahoo.config.provision.ApplicationId applicationId)
Creates and initializes a new Vespa from the service config file in the given application directory.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addDescendant(AbstractConfigProducer descendant)
Adds the descendant (at any depth level), so it can be looked up on configId in the Map.Admin
getAdmin()
void
getConfig(com.yahoo.cloud.config.ApplicationIdConfig.Builder builder)
void
getConfig(com.yahoo.cloud.config.ClusterListConfig.Builder builder)
void
getConfig(com.yahoo.cloud.config.log.LogdConfig.Builder builder)
void
getConfig(com.yahoo.cloud.config.ModelConfig.Builder builder)
void
getConfig(com.yahoo.cloud.config.SlobroksConfig.Builder builder)
void
getConfig(com.yahoo.cloud.config.ZookeepersConfig.Builder builder)
void
getConfig(com.yahoo.document.config.DocumentmanagerConfig.Builder builder)
void
getConfig(com.yahoo.document.config.DocumenttypesConfig.Builder builder)
void
getConfig(com.yahoo.documentapi.messagebus.protocol.DocumentProtocolPoliciesConfig.Builder builder)
void
getConfig(com.yahoo.documentapi.messagebus.protocol.DocumentrouteselectorpolicyConfig.Builder builder)
void
getConfig(com.yahoo.messagebus.MessagebusConfig.Builder builder)
void
getConfig(com.yahoo.vespa.config.content.AllClustersBucketSpacesConfig.Builder builder)
void
getConfig(com.yahoo.vespa.config.content.DistributionConfig.Builder builder)
void
getConfig(com.yahoo.vespa.config.content.LoadTypeConfig.Builder builder)
Set<String>
getConfigIds()
ConfigProducer
getConfigProducer(String configId)
Returns the ConfigProducer with the given id, or null if no such configId exists.FileDistributionConfigProducer
getFileDistributionConfigProducer()
static String
getPortTags(PortsMeta portsMeta, int portNumber)
Service
getService(String configId)
Returns the Service with the given id, or null if no such configId exists or if it belongs to a non-Service ConfigProducer.HostSystem
hostSystem()
Returns the one and only HostSystem of the root node.void
prepare(ConfigModelRepo plugins)
Prepares the model for start.void
setHostSystem(HostSystem hostSystem)
void
setupAdmin(Admin admin)
void
setupRouting(DeployState deployState, VespaModel vespaModel, ConfigModelRepo configModels)
void
useFeatureFlags(com.yahoo.config.model.api.ModelContext.FeatureFlags featureFlags)
-
Methods inherited from class com.yahoo.config.model.producer.AbstractConfigProducer
addChild, addConfigId, addDescendantService, addUserConfig, cascadeConfig, dump, getChildren, getChildrenByTypeRecursive, getConfigClassLoader, getConfigId, getDescendantServices, getMonitoringService, getParent, getRoot, getSubId, getUserConfigs, mergeUserConfigs, remove, removeChild, setParent, setUserConfigs, stateIsHosted, validate
-
-
-
-
Constructor Detail
-
ApplicationConfigProducerRoot
public ApplicationConfigProducerRoot(AbstractConfigProducer parent, String name, DocumentModel documentModel, com.yahoo.component.Version vespaVersion, com.yahoo.config.provision.ApplicationId applicationId)
Creates and initializes a new Vespa from the service config file in the given application directory.- Parameters:
parent
- the parent, usually VespaModelname
- the name, used as configIddocumentModel
- DocumentModel to serve global document config from.
-
-
Method Detail
-
useFeatureFlags
public void useFeatureFlags(com.yahoo.config.model.api.ModelContext.FeatureFlags featureFlags)
-
getConfigIds
public Set<String> getConfigIds()
- Returns:
- an unmodifiable copy of the set of configIds in this VespaModel.
-
getConfigProducer
public ConfigProducer getConfigProducer(String configId)
Returns the ConfigProducer with the given id, or null if no such configId exists.- Parameters:
configId
- The configId, e.g. "search.0/tld.0"- Returns:
- ConfigProducer with the given configId
-
getService
public Service getService(String configId)
Returns the Service with the given id, or null if no such configId exists or if it belongs to a non-Service ConfigProducer.- Parameters:
configId
- The configId, e.g. "search.0/tld.0"- Returns:
- Service with the given configId
-
addDescendant
public void addDescendant(AbstractConfigProducer descendant)
Adds the descendant (at any depth level), so it can be looked up on configId in the Map.- Parameters:
descendant
- The configProducer descendant to add
-
prepare
public void prepare(ConfigModelRepo plugins)
Prepares the model for start. TheVespaModel
calls this methods after it has loaded this and all plugins have been loaded and their initialize() methods have been called.- Parameters:
plugins
- All initialized plugins of the vespa model.
-
setupAdmin
public void setupAdmin(Admin admin)
-
setupRouting
public void setupRouting(DeployState deployState, VespaModel vespaModel, ConfigModelRepo configModels)
-
getConfig
public void getConfig(com.yahoo.document.config.DocumentmanagerConfig.Builder builder)
- Specified by:
getConfig
in interfacecom.yahoo.document.config.DocumentmanagerConfig.Producer
-
getConfig
public void getConfig(com.yahoo.document.config.DocumenttypesConfig.Builder builder)
- Specified by:
getConfig
in interfacecom.yahoo.document.config.DocumenttypesConfig.Producer
-
getConfig
public void getConfig(com.yahoo.documentapi.messagebus.protocol.DocumentrouteselectorpolicyConfig.Builder builder)
- Specified by:
getConfig
in interfacecom.yahoo.documentapi.messagebus.protocol.DocumentrouteselectorpolicyConfig.Producer
-
getConfig
public void getConfig(com.yahoo.documentapi.messagebus.protocol.DocumentProtocolPoliciesConfig.Builder builder)
- Specified by:
getConfig
in interfacecom.yahoo.documentapi.messagebus.protocol.DocumentProtocolPoliciesConfig.Producer
-
getConfig
public void getConfig(com.yahoo.messagebus.MessagebusConfig.Builder builder)
- Specified by:
getConfig
in interfacecom.yahoo.messagebus.MessagebusConfig.Producer
-
getConfig
public void getConfig(com.yahoo.cloud.config.log.LogdConfig.Builder builder)
- Specified by:
getConfig
in interfacecom.yahoo.cloud.config.log.LogdConfig.Producer
-
getConfig
public void getConfig(com.yahoo.cloud.config.SlobroksConfig.Builder builder)
- Specified by:
getConfig
in interfacecom.yahoo.cloud.config.SlobroksConfig.Producer
-
getConfig
public void getConfig(com.yahoo.cloud.config.ZookeepersConfig.Builder builder)
- Specified by:
getConfig
in interfacecom.yahoo.cloud.config.ZookeepersConfig.Producer
-
getConfig
public void getConfig(com.yahoo.vespa.config.content.LoadTypeConfig.Builder builder)
- Specified by:
getConfig
in interfacecom.yahoo.vespa.config.content.LoadTypeConfig.Producer
-
getConfig
public void getConfig(com.yahoo.cloud.config.ClusterListConfig.Builder builder)
- Specified by:
getConfig
in interfacecom.yahoo.cloud.config.ClusterListConfig.Producer
-
getConfig
public void getConfig(com.yahoo.vespa.config.content.DistributionConfig.Builder builder)
- Specified by:
getConfig
in interfacecom.yahoo.vespa.config.content.DistributionConfig.Producer
-
getConfig
public void getConfig(com.yahoo.vespa.config.content.AllClustersBucketSpacesConfig.Builder builder)
- Specified by:
getConfig
in interfacecom.yahoo.vespa.config.content.AllClustersBucketSpacesConfig.Producer
-
getConfig
public void getConfig(com.yahoo.cloud.config.ModelConfig.Builder builder)
- Specified by:
getConfig
in interfacecom.yahoo.cloud.config.ModelConfig.Producer
-
setHostSystem
public void setHostSystem(HostSystem hostSystem)
-
hostSystem
public HostSystem hostSystem()
Description copied from class:AbstractConfigProducer
Returns the one and only HostSystem of the root node. Must be overridden by root node.- Specified by:
hostSystem
in interfaceConfigProducer
- Overrides:
hostSystem
in classAbstractConfigProducer<AbstractConfigProducer<?>>
-
getFileDistributionConfigProducer
public FileDistributionConfigProducer getFileDistributionConfigProducer()
-
getAdmin
public Admin getAdmin()
-
getConfig
public void getConfig(com.yahoo.cloud.config.ApplicationIdConfig.Builder builder)
- Specified by:
getConfig
in interfacecom.yahoo.cloud.config.ApplicationIdConfig.Producer
-
-