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 String
ATTR_NAME
protected static String
COMPONENT_ERROR_MESSAGE
protected static String
COMPONENT_ERROR_NOT_IN_LIST
protected Map<String,List<String>>
componentDependencies
protected Map<String,Map<String,List<Object>>>
componentParams
protected Map<String,List<String>>
componentProviders
protected Map<String,List<String>>
componentProvides
protected Map<String,Map<String,Set<String>>>
connections
protected static AbstractComponentConfiguration
instance
protected boolean
isReady
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractComponentConfiguration()
-
Method Summary
Modifier and Type Method Description AbstractComponentConfiguration
component(Class<? extends Component> componentClass)
Define um component que receberá uma conexãoAbstractComponentConfiguration
connect(Class<? extends Component> componentClass)
Define qual o componente que será conectado para prover o serviço necessárioObject
getComponentParam(Class<? extends Component> component, String paramName)
Object
getComponentParam(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çãoString
getComponentStrParam(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 AbstractComponentConfiguration
getInstance()
protected String
getPathAppend(String path, String append)
Set<String>
getProviders(String componentName, String role)
Obtém o conjunto de serviços providos para o componente.AbstractComponentConfiguration
on(Class<?> role)
O papel em qual deve ser executada a conexãoAbstractComponentConfiguration
param(String name, Object value)
This method is responsible for handling the contents that might be stored inside the "componentParams" attribute.AbstractComponentConfiguration
paramAppend(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.void
replaceComponent(String oldComponent, String newComponent)
protected void
run(String[] args)
void
setComponentParam(String componentName, String paramName, Object paramValue)
Redefine um parâmetro do componente ou o cria.void
setIsReady(boolean isReady)
void
setup()
Faz download, caso necessário, das âncoras e/ou listas de confiança.
-
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
List
com 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
List
com 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
Set
com 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
-
run
-
getPathAppend
-