#include <Dependency.h>
Inheritance diagram for Omniifr::Dependency3< T_xxxDescriptionSeq >:


Public Member Functions | |
| Dependency3 (IRObject_impl *owner) | |
| virtual | ~Dependency3 () |
| const T_xxxDescriptionSeq & | in () |
| T_xxxDescriptionSeq * | copy () |
| void | assign (const T_xxxDescriptionSeq &descriptionSeq) |
| void | uncheckedAssign (const T_xxxDescriptionSeq &descriptionSeq) |
| Performs an assignment but does not call check(). | |
| void | clear () |
| release the current dependencies. | |
Private Member Functions | |
| void | check (const T_xxxDescriptionSeq &descriptionSeq) |
| Throws BAD_PARAM if any description in the sequence has the same name as any other, or if a NIL reference is found. | |
| void | set (const T_xxxDescriptionSeq &descriptionSeq) |
| establish a new set of dependencies. | |
Private Attributes | |
| T_xxxDescriptionSeq | _descriptionSeq |
| list< IRObject_impl * > | _servants |
Definition at line 231 of file Dependency.h.
|
||||||||||
|
Definition at line 237 of file Dependency.h. 00238 :DependencyBase(owner),_descriptionSeq(),_servants(){}
|
|
|||||||||
|
Definition at line 239 of file Dependency.h. 00239 {}
|
|
||||||||||
|
Definition at line 245 of file Dependency.h. Referenced by Omniifr::UnionDef_impl::discriminator_type_def(), Omniifr::StructDef_impl::members(), Omniifr::ExceptionDef_impl::members(), and Omniifr::OperationDef_impl::params(). 00246 {
00247 check(descriptionSeq); // Throws BAD_PARAM if a problem is found.
00248 uncheckedAssign(descriptionSeq);
00249 }
|
|
||||||||||
|
Throws BAD_PARAM if any description in the sequence has the same name as any other, or if a NIL reference is found.
Definition at line 280 of file Dependency.h. Referenced by Omniifr::Dependency3< StructMemberSeq >::assign(). 00281 {
00282 for(CORBA::ULong i(0); i<descriptionSeq.length(); i++)
00283 {
00284 IdentifierUtil::checkInvalid(descriptionSeq[i].name);
00285 if(CORBA::is_nil(descriptionSeq[i].type_def))
00286 throw CORBA::BAD_PARAM(
00287 IFELSE_OMNIORB4(omni::BAD_PARAM_InvalidObjectRef,43),
00288 CORBA::COMPLETED_NO
00289 );
00290 for(CORBA::ULong j(i+1); j<descriptionSeq.length(); j++)
00291 {
00292 if(0==strcasecmp(descriptionSeq[i].name,descriptionSeq[j].name))
00293 throw CORBA::BAD_PARAM(
00294 IFELSE_OMNIORB4(omni::BAD_PARAM_InvalidMemberName,17),
00295 CORBA::COMPLETED_NO
00296 );
00297 }
00298 }
00299 }
|
|
|||||||||
|
release the current dependencies.
Definition at line 259 of file Dependency.h. Referenced by Omniifr::Dependency3< StructMemberSeq >::uncheckedAssign(), Omniifr::UnionDef_impl::uncheckedDestroy(), Omniifr::StructDef_impl::uncheckedDestroy(), Omniifr::OperationDef_impl::uncheckedDestroy(), and Omniifr::ExceptionDef_impl::uncheckedDestroy(). 00260 {
00261 for(typename list<IRObject_impl*>::iterator i=_servants.begin();
00262 i!=_servants.end();
00263 ++i)
00264 {
00265 if(*i)
00266 (*i)->undepend(this);
00267 }
00268 _servants.clear();
00269 _descriptionSeq.length(0);
00270 }
|
|
|||||||||
|
Definition at line 241 of file Dependency.h. Referenced by Omniifr::UnionDef_impl::members(), Omniifr::StructDef_impl::members(), Omniifr::ExceptionDef_impl::members(), and Omniifr::OperationDef_impl::params(). 00242 {
00243 return new T_xxxDescriptionSeq(_descriptionSeq);
00244 }
|
|
|||||||||
|
||||||||||
|
establish a new set of dependencies.
Definition at line 304 of file Dependency.h. Referenced by Omniifr::Dependency3< StructMemberSeq >::uncheckedAssign(). 00305 {
00306 assert(_servants.empty());
00307 assert(0==_descriptionSeq.length());
00308 _descriptionSeq=descriptionSeq;
00309 for(CORBA::ULong i(0); i<descriptionSeq.length(); i++)
00310 {
00311 // referenceToServant() implicitly calls _add_ref()
00312 IRObject_impl* irobject =referenceToServant(descriptionSeq[i].type_def);
00313 if(irobject)
00314 {
00315 irobject->depend(this);
00316 // cancel the implicit _add_ref() in referenceToServant().
00317 irobject->_remove_ref();
00318 }
00319 _servants.push_back(irobject);
00320 }
00321 }
|
|
||||||||||
|
Performs an assignment but does not call check(). Used when the owner has already permormed its own checks (in UnionDef_impl). Definition at line 253 of file Dependency.h. Referenced by Omniifr::Dependency3< StructMemberSeq >::assign(), Omniifr::UnionDef_impl::members(), Omniifr::UnionDef_impl::reincarnate(), Omniifr::StructDef_impl::reincarnate(), Omniifr::OperationDef_impl::reincarnate(), and Omniifr::ExceptionDef_impl::reincarnate().
|
|
|||||
|
Definition at line 234 of file Dependency.h. |
|
|||||
|
Definition at line 235 of file Dependency.h. |
1.4.1