3 //=============================================================================
5 * @file FT_Property_Validator.h
7 * @author Curt Hibbs <hibbs_c@ociweb.com>
9 //=============================================================================
11 #ifndef FT_PROPERTY_VALIDATOR_H
12 #define FT_PROPERTY_VALIDATOR_H
14 #include /**/ "ace/pre.h"
16 #include "orbsvcs/PortableGroup/PG_Default_Property_Validator.h"
17 #include "orbsvcs/PortableGroupC.h"
19 #if !defined (ACE_LACKS_PRAGMA_ONCE)
21 #endif /* ACE_LACKS_PRAGMA_ONCE */
23 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
28 * @class FT_Property_Validator
30 * @brief Default property validator implementation.
32 * This Property_Validator verifies that all properties defined in the
33 * FT CORBA IDL are valid.
35 class FT_Property_Validator
: public TAO_PG_Default_Property_Validator
39 FT_Property_Validator ();
42 virtual ~FT_Property_Validator ();
44 /// Validate the given properties. Throw an exception when the
45 /// first invalid property is encountered. The remaining properties
46 /// will not be validated.
48 void validate_property (const PortableGroup::Properties
& props
);
50 /// Validate the given properties/criteria. All criteria
51 /// will be validated regardless of whether or not an invalid
52 /// property was encountered.
54 void validate_criteria (const PortableGroup::Properties
& criteria
);
58 * @name Pre-initialize property Names.
60 * These properties are pre-initialized once to reduce property
61 * validation overhead. Note that the following properties are
62 * not validated since there are no restrictions for these values:
63 * InitialNumberMembers
64 * MinimumNumberMembers
65 * FaultMonitoringInterval
69 PortableGroup::Name replication_style_
;
70 PortableGroup::Name membership_style_
;
71 PortableGroup::Name consistency_style_
;
72 PortableGroup::Name fault_monitoring_style_
;
73 PortableGroup::Name fault_monitoring_granularity_
;
74 PortableGroup::Name factories_
;
80 TAO_END_VERSIONED_NAMESPACE_DECL
82 #include /**/ "ace/post.h"
84 #endif /* FT_PROPERTY_VALIDATOR_H */