hmService: Código-Fonte de algorithm_service.idl
AlgorithmService
1.0.0
|
00001 00016 #ifndef _ALGORITHMSERVICE_IDL 00017 #define _ALGORITHMSERVICE_IDL 00018 00019 #include "configurator.idl" 00020 00021 module tecgraf { 00022 00023 module openbus { 00024 00025 module algorithmservice { 00026 00027 module v1_0 { 00028 typedef sequence<string> StringList; 00029 00030 exception UserDoesNotExistsException {string message;}; 00031 exception AlgorithmDoesNotExistsException {string message;}; 00032 exception VersionDoesNotExistsException {string message;}; 00033 exception ConfiguratorErrorException {string message;}; 00034 exception NoPermissionException {string message;}; 00035 exception AuthorizationException {string message;}; 00036 00040 struct AlgorithmBasicInfo { 00044 string name; 00048 string description; 00049 }; 00050 00051 typedef sequence<AlgorithmBasicInfo> AlgorithmBasicInfoList; 00052 00056 struct FTCFile { 00060 sequence<octet> id; 00064 string host; 00068 long port; 00072 sequence<octet> key; 00073 }; 00074 00078 struct Program { 00082 string name; 00086 sequence<string> requirements; 00087 }; 00088 00092 struct Version { 00096 long major; 00100 long minor; 00104 long patch; 00108 string stringValue; 00112 FTCFile configFile; 00116 sequence<Program> programs; 00117 }; 00118 00122 struct Property { 00126 string key; 00130 string value; 00131 }; 00132 00136 typedef string Category; 00137 00141 struct AlgorithmDetailedInfo { 00145 string name; 00149 string description; 00153 sequence<Version> versions; 00157 sequence<Property> properties; 00161 sequence<Category> categories; 00162 }; 00163 00167 typedef sequence<AlgorithmDetailedInfo> AlgorithmDetailedInfoList; 00168 00172 interface AlgorithmService { 00178 AlgorithmBasicInfoList getAlgorithms() 00179 raises (AuthorizationException); 00180 00190 AlgorithmDetailedInfo getAlgorithmDetail(in string algorithmName) 00191 raises (AlgorithmDoesNotExistsException, 00192 ConfiguratorErrorException, 00193 NoPermissionException, 00194 AuthorizationException); 00195 00205 AlgorithmDetailedInfoList getAlgorithmsDetails(in StringList algorithmNameList) 00206 raises (AlgorithmDoesNotExistsException, 00207 ConfiguratorErrorException, 00208 NoPermissionException, 00209 AuthorizationException); 00210 00220 boolean checkUserPermission(in string algorithmName, in string userId) 00221 raises (UserDoesNotExistsException, 00222 AlgorithmDoesNotExistsException); 00223 00234 Configurator getConfigurator(in string algorithmName, in string version) 00235 raises (AlgorithmDoesNotExistsException, 00236 VersionDoesNotExistsException, 00237 ConfiguratorErrorException, 00238 AuthorizationException); 00239 }; 00240 00241 }; // version 00242 00243 }; // algorithmservice 00244 00245 }; // openbus 00246 00247 }; // tecgraf 00248 00249 #endif