AlgorithmService  1.0.0
configurator.idl
Vá para a documentação deste arquivo.
00001 
00017 #ifndef _CONFIGURATOR_IDL
00018 #define _CONFIGURATOR_IDL
00019 
00020 #include "iparameter.idl"
00021 
00022 module tecgraf {
00023 
00024 module openbus {
00025 
00026 module algorithmservice {
00027 
00028 module v1_0 {
00029     exception ParameterDoesNotExistsException {string message;};
00030     exception AlgorithmDoesNotExistsInFlowException {string message;};
00031     exception AlgorithmIdDoesNotExistsInFlowException {string message;};
00032     exception AlgorithmIsDuplicatedInFlowException {string message;};
00033     exception IncorrectParamTypeException {string message;};
00034     exception InvalidParameterException {string message;};
00035 
00036     typedef sequence< sequence<string,2> > Dictionary;
00037     typedef sequence<string> StringSeq;
00038 
00042     enum ExecutionType {
00043         SIMPLE,
00044         MULTIPLE
00045     };
00046 
00050     enum AlgorithmType {
00051         ALGORITHM,  
00052         FLOW        
00053     };
00054 
00058     valuetype Configurator {
00062         public string algorithmName;
00063 
00067         public string algorithmVersion;
00068 
00072         public ExecutionType execType;
00073 
00077         public AlgorithmType type;
00078 
00082         Dictionary getParameters()
00083             raises(ConversionToTextException);
00084 
00088         StringSeq getAlgoritmInfo();
00089     };
00090 
00094     struct Parameter {
00098         string name;
00099 
00103         string type;
00104 
00108         IParameterValue value;
00109     };
00110 
00114     valuetype SimpleConfigurator : Configurator {
00118         public sequence<Parameter> parameters;
00119 
00129         void setParameterValue(in string name, in IParameterValue value)
00130             raises (ParameterDoesNotExistsException,
00131             IncorrectParamTypeException,
00132             InvalidParameterException);
00133 
00142         void setParameterValueAsText(in string name, in string valueAsText)
00143             raises (ParameterDoesNotExistsException);
00144     };
00145 
00149     struct FlowNode {
00153         long id;
00154 
00158         string name;
00159 
00163         Configurator config;
00164     };
00165 
00169     valuetype FlowConfigurator : Configurator {
00173         public sequence<FlowNode> algorithms;
00174 
00186         void setParameterValueById(in long algorithmId, in string parameterName, in IParameterValue value)
00187             raises (ParameterDoesNotExistsException,
00188             IncorrectParamTypeException,
00189             InvalidParameterException,
00190             AlgorithmIdDoesNotExistsInFlowException);
00191 
00202         void setParameterValueAsTextById(in long algorithmId, in string parameterName, in string valueAsText)
00203             raises (ParameterDoesNotExistsException,
00204             AlgorithmIdDoesNotExistsInFlowException);
00205     };
00206 
00207 }; // version
00208 
00209 }; // algorithmservice
00210 
00211 }; // openbus
00212 
00213 }; // tecgraf
00214 
00215 #endif
 Todos Classes Arquivos Funções Variáveis