Package br.ufsc.labsec.component
Class AbstractComponentConfiguration
java.lang.Object
br.ufsc.labsec.component.AbstractComponentConfiguration
- Direct Known Subclasses:
ComponentConfiguration,ConformanceVerifier,ReferenceSigner
public class AbstractComponentConfiguration extends Object
Esta classe engloba os métodos de configuração de componentes
-
Field Summary
Fields Modifier and Type Field Description protected static StringATTR_NAMEprotected static StringCOMPONENT_ERROR_MESSAGEprotected static StringCOMPONENT_ERROR_NOT_IN_LISTprotected Map<String,List<String>>componentDependenciesprotected Map<String,Map<String,List<Object>>>componentParamsprotected Map<String,List<String>>componentProvidersprotected Map<String,List<String>>componentProvidesprotected Map<String,Map<String,Set<String>>>connectionsprotected static AbstractComponentConfigurationinstanceprotected booleanisReady -
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractComponentConfiguration() -
Method Summary
Modifier and Type Method Description protected voidaddSchedulers(SchedulerManager... schedulers)AbstractComponentConfigurationcomponent(Class<? extends Component> componentClass)Define um component que receberá uma conexãoAbstractComponentConfigurationconnect(Class<? extends Component> componentClass)Define qual o componente que será conectado para prover o serviço necessárioObjectgetComponentParam(Class<? extends Component> component, String paramName)ObjectgetComponentParam(String componentName, String paramName)Obtém o valor para um parâmetro de um dado componente.List<Object>getComponentParams(String componentName, String paramName)Obtém o valor para um parâmetro de um dado componente.List<String>getComponents()Obtém a lista de componentes presentes no arquivo de configuraçãoStringgetComponentStrParam(String componentName, String paramName)Obtém o valor para um parâmetro de um dado componente.List<String>getDependencies(String componentName)Obtém a lista de dependências do componente.static AbstractComponentConfigurationgetInstance()protected StringgetPathAppend(String path, String append)Set<String>getProviders(String componentName, String role)Obtém o conjunto de serviços providos para o componente.List<SchedulerManager>getSchedulers()protected static voidinitializeConfiguration(AbstractComponentConfiguration configuration, boolean immediateAnchorUpdate, boolean downloadLpa)AbstractComponentConfigurationon(Class<?> role)O papel em qual deve ser executada a conexãoAbstractComponentConfigurationparam(String name, Object value)This method is responsible for handling the contents that might be stored inside the "componentParams" attribute. 1.AbstractComponentConfigurationparamAppend(String name, String value)Pretty much the same thing as above; at the end of the method, though, we do not create a singleton list. 1.voidreplaceComponent(String oldComponent, String newComponent)voidsetComponentParam(String componentName, String paramName, Object paramValue)Redefine um parâmetro do componente ou o cria.voidsetIsReady(boolean isReady)voidsetup()Faz download, caso necessário, das âncoras e/ou listas de confiança.voidshutdownSchedulers()voidwaitUntilReady()
-
Field Details
-
COMPONENT_ERROR_NOT_IN_LIST
- See Also:
- Constant Field Values
-
COMPONENT_ERROR_MESSAGE
- See Also:
- Constant Field Values
-
ATTR_NAME
- See Also:
- Constant Field Values
-
componentDependencies
-
componentProvides
-
componentProviders
-
componentParams
-
connections
-
instance
-
isReady
protected boolean isReady
-
-
Constructor Details
-
AbstractComponentConfiguration
protected AbstractComponentConfiguration()
-
-
Method Details
-
setup
public void setup()Faz download, caso necessário, das âncoras e/ou listas de confiança. Quando realizado verificação/assinatura como lib, é necessário chamar este método antes de fazer a operação final (sign/verify) -
setIsReady
public void setIsReady(boolean isReady) -
getComponents
Obtém a lista de componentes presentes no arquivo de configuração- Returns:
- Uma
Listcom os nomes do componente.
-
getDependencies
Obtém a lista de dependências do componente.- Parameters:
componentName- Nome do componente do qual se quer a lista de dependências- Returns:
- Uma
Listcom os nomes das dependências.
-
getProviders
Obtém o conjunto de serviços providos para o componente.- Parameters:
componentName- u Nome do componente que depende do serviçorole- Nome do serviço- Returns:
- Um
Setcom os componentes que provém o serviço para esse componente.
-
getComponentStrParam
Obtém o valor para um parâmetro de um dado componente.- Parameters:
componentName- Nome do componente do qual se quer os parâmetrosparamName- Nome do parâmetro- Returns:
- O valor do parâmetro em forma de
String
-
getComponentParam
Obtém o valor para um parâmetro de um dado componente.- Parameters:
componentName- Nome do componente do qual se quer os parâmetrosparamName- Nome do parâmetro- Returns:
- O valor do parâmetro em forma de
String
-
getComponentParam
-
getComponentParams
Obtém o valor para um parâmetro de um dado componente.- Parameters:
componentName- Nome do componente do qual se quer os parâmetrosparamName- Nome do parâmetro- Returns:
- O valor do parâmetro em forma de
String
-
setComponentParam
Redefine um parâmetro do componente ou o cria. -
replaceComponent
-
getInstance
-
component
Define um component que receberá uma conexão- Parameters:
componentClass- A classe do componente- Returns:
- A própria configuração de componentes atualizada
-
connect
Define qual o componente que será conectado para prover o serviço necessário- Parameters:
componentClass- Classe do componente provedor do serviço- Returns:
- A própria configuração de componentes atualizada
-
on
O papel em qual deve ser executada a conexão- Parameters:
role- A classe do papel da conexão- Returns:
- A própria configuração de componentes atualizada
-
param
This method is responsible for handling the contents that might be stored inside the "componentParams" attribute. 1.Map<String, Map<String, List<String>>>We get map inside the map. 2. Check if it is null; if it is, we initialize and add something inside it. 3. Finally, we put a key and content to be linked to that same key; that content will be a list with only one element, a singleton list.- Returns:
- AbstractComponentConfiguration
-
paramAppend
Pretty much the same thing as above; at the end of the method, though, we do not create a singleton list. 1.Map<String, Map<String, List<String>>>We get map inside the map. 2. Check if it is null; if it is, we add something inside it. 3. We get the Listfrom "params". 4. We check if it is null; if it is, we initialize it. 5. We add the "value" inside the "values" list. 6. Finally, we put the the "values" list linked to the "name" key inside "params". NOTE: See, this method, as it is called, appends objects to a list. If it starts as an empty/null list, we initialize it first and we get to append content to that same list every time this method is called. - Returns:
- AbstractComponentConfiguration
-
getPathAppend
-
addSchedulers
-
shutdownSchedulers
public void shutdownSchedulers() -
getSchedulers
-
initializeConfiguration
protected static void initializeConfiguration(AbstractComponentConfiguration configuration, boolean immediateAnchorUpdate, boolean downloadLpa) -
waitUntilReady
public void waitUntilReady()
-