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
40 FT_Property_Validator (void);
43 virtual ~FT_Property_Validator (void);
45 /// Validate the given properties. Throw an exception when the
46 /// first invalid property is encountered. The remaining properties
47 /// will not be validated.
49 void validate_property (const PortableGroup::Properties
& props
);
51 /// Validate the given properties/criteria. All criteria
52 /// will be validated regardless of whether or not an invalid
53 /// property was encountered.
55 void validate_criteria (const PortableGroup::Properties
& criteria
);
60 * @name Pre-initialize property Names.
62 * These properties are pre-initialized once to reduce property
63 * validation overhead. Note that the following properties are
64 * not validated since there are no restrictions for these values:
65 * InitialNumberMembers
66 * MinimumNumberMembers
67 * FaultMonitoringInterval
71 PortableGroup::Name replication_style_
;
72 PortableGroup::Name membership_style_
;
73 PortableGroup::Name consistency_style_
;
74 PortableGroup::Name fault_monitoring_style_
;
75 PortableGroup::Name fault_monitoring_granularity_
;
76 PortableGroup::Name factories_
;
83 TAO_END_VERSIONED_NAMESPACE_DECL
85 #include /**/ "ace/post.h"
87 #endif /* FT_PROPERTY_VALIDATOR_H */