SCS IDL  1.2.1
scs.idl
1 #ifndef SCS_IDL
2 #define SCS_IDL
3 
4 /*
5  * \brief Módulo do SCS.
6  *
7  * O SCS possui três interfaces obrigatórias para a construção do componente,
8  * são elas: IComponent, IReceptacles e IMetaInterface.
9  */
10 module scs {
11  module core {
13  exception StartupFailed {};
15  exception ShutdownFailed {};
17  exception InvalidName {
18  string name;
19  };
21  exception InvalidConnection {};
23  exception AlreadyConnected {};
27  exception NoConnection {};
28 
30  typedef unsigned long ConnectionId;
32  typedef sequence<string> NameList;
33 
42  string name;
43  string interface_name;
45  Object facet_ref;
46  };
47  typedef sequence<FacetDescription> FacetDescriptions;
52  ConnectionId id;
53  Object objref;
54  };
55  typedef sequence<ConnectionDescription> ConnectionDescriptions;
70  string name;
76  string interface_name;
77  boolean is_multiplex;
79  ConnectionDescriptions connections;
81  };
82  typedef sequence<ReceptacleDescription> ReceptacleDescriptions;
94  struct ComponentId {
95  string name;
96  octet major_version;
97  octet minor_version;
98  octet patch_version;
99  string platform_spec;
101  };
102  typedef sequence<ComponentId> ComponentIdSeq;
111  interface IComponent {
117  void startup() raises (StartupFailed);
123  void shutdown() raises (ShutdownFailed);
132  Object getFacet (in string facet_interface);
140  Object getFacetByName (in string facet);
146  ComponentId getComponentId ();
147  };
148  typedef sequence<IComponent> IComponentSeq;
156  interface IReceptacles {
173  ConnectionId connect (in string receptacle, in Object obj)
184  void disconnect (in ConnectionId id)
195  ConnectionDescriptions getConnections (in string receptacle)
196  raises (InvalidName);
197  };
198 
205  interface IMetaInterface {
211  FacetDescriptions getFacets();
222  FacetDescriptions getFacetsByName(in NameList names)
223  raises (InvalidName);
229  ReceptacleDescriptions getReceptacles();
240  ReceptacleDescriptions getReceptaclesByName(in NameList names)
241  raises (InvalidName);
242  };
243  };
244 };
245 
246 #endif
Descrição da faceta.
Definition: scs.idl:41
string name
O nome identificador.
Definition: scs.idl:42
Descrição de um receptáculo.
Definition: scs.idl:69
Indica que o nome é inválido.
Definition: scs.idl:17
Object facet_ref
A referência para a faceta descrita.
Definition: scs.idl:45
Indica que foi ultrapassado o limite de conexões .
Definition: scs.idl:25
string name
O nome que está inválido.
Definition: scs.idl:18
ConnectionId id
Identificador da conexão.
Definition: scs.idl:52
Identificador do componente.
Definition: scs.idl:94
Descição da conexão.
Definition: scs.idl:51
Indica que a conexão é inválida.
Definition: scs.idl:21
Indica que a conexão ainda não foi estabelecida.
Definition: scs.idl:27
Representa a interface do componente.
Definition: scs.idl:111
Indica que ocorreu um erro na desativação.
Definition: scs.idl:15
octet patch_version
O número de revisão da versão.
Definition: scs.idl:98
boolean is_multiplex
Indica se o receptáculo suporta múltiplas facetas conectadas.
Definition: scs.idl:77
Representa a interface de receptáculos.
Definition: scs.idl:156
ConnectionDescriptions connections
As descrições das conexões que foram estabelecidas.
Definition: scs.idl:79
string platform_spec
A especificação da plataforma necessária para o funcionamento do componente.
Definition: scs.idl:99
string name
O nome identificador do componente.
Definition: scs.idl:95
Indica que a conexão já foi estabelecida.
Definition: scs.idl:23
octet major_version
O número principal da versão.
Definition: scs.idl:96
Indica que ocorreu um erro na ativação.
Definition: scs.idl:13
octet minor_version
O número secundário da versão.
Definition: scs.idl:97
string name
O nome identificador.
Definition: scs.idl:70
string interface_name
O nome da interface que a faceta implementa.
Definition: scs.idl:43
Object objref
Referência para uma conexão.
Definition: scs.idl:53
Representa a interface de introspecção.
Definition: scs.idl:205
string interface_name
O nome da interface que se conecta ao receptáculo.
Definition: scs.idl:76