00001 #ifndef _IT_BUS_PDK_WSRM_CONFIG_CONTEXT_H_
00002 #define _IT_BUS_PDK_WSRM_CONFIG_CONTEXT_H_
00003
00004
00005
00006 #include <it_bus/api_defines.h>
00007 #include <it_bus_pdk/context.h>
00008 #include <it_bus_pdk/context_attrs/wsaddressing_2004_xsdTypes.h>
00009
00010 namespace IT_Bus
00011 {
00012 class IT_CONTEXT_ATTRIBUTE_API WSRMConfigurationContext
00013 : public IT_Bus::Context
00014 {
00015 public:
00016
00017 void
00018 set_wsrm_acknowledgement_uri(
00019 const WS_Addressing_2004::AttributedURI& wsrm_acknowledgement_uri
00020 );
00021
00022 const WS_Addressing_2004::AttributedURI&
00023 get_wsrm_acknowledgement_uri();
00024
00025 void
00026 set_base_retransmission_interval(
00027 unsigned long base_retransmission_interval
00028 );
00029
00030 unsigned long
00031 get_base_retransmission_interval();
00032
00033 void
00034 disable_exponential_backoff();
00035
00036 bool
00037 is_exponential_backoff_disabled();
00038
00039 void
00040 set_max_unacked_messages_threshold(
00041 long threshold
00042 );
00043
00044 long
00045 get_max_unacked_messages_threshold();
00046
00047 void
00048 set_acknowledgement_interval(
00049 unsigned long acknowledgement_interval
00050 );
00051
00052 unsigned long
00053 get_acknowledgement_interval();
00054
00055 void
00056 set_max_messages_per_sequence(
00057 long max_messages_per_sequence
00058 );
00059
00060 long
00061 get_max_messages_per_sequence();
00062
00063 WSRMConfigurationContext();
00064
00065 WSRMConfigurationContext&
00066 operator =(
00067 const WSRMConfigurationContext& rhs
00068 );
00069
00070 WSRMConfigurationContext(
00071 const WSRMConfigurationContext& rhs
00072 );
00073
00074 ~WSRMConfigurationContext();
00075
00076 private:
00077
00078 WS_Addressing_2004::AttributedURI m_wsrm_acknowledgement_uri;
00079 unsigned long m_base_retransmission_interval;
00080 bool m_exponential_backoff_enabled;
00081 long m_max_unacked_messages_threshold;
00082 unsigned long m_acknowledgement_interval;
00083 long m_max_messages_per_sequence;
00084 };
00085 }
00086
00087 #endif
00088