Class: MessageDriver::Adapters::ContextBase
- Inherits:
-
Object
- Object
- MessageDriver::Adapters::ContextBase
show all
- Defined in:
- lib/message_driver/adapters/base.rb
Instance Attribute Summary collapse
Instance Method Summary
collapse
-
#ack_message(message, options = {}) ⇒ Object
-
#begin_transaction(options = {}) ⇒ Object
-
#commit_transaction(options = {}) ⇒ Object
-
#consumer_count(destination) ⇒ Object
-
#create_destination(name, dest_options = {}, message_props = {}) ⇒ Object
-
#handle_ack_message(_message, _options = {}) ⇒ Object
-
#handle_begin_transaction(_options = {}) ⇒ Object
-
#handle_commit_transaction(_options = {}) ⇒ Object
-
#handle_consumer_count(destination) ⇒ Object
-
#handle_create_destination(_name, _dest_options = {}, _message_props = {}) ⇒ Object
-
#handle_message_count(destination) ⇒ Object
-
#handle_nack_message(_message, _options = {}) ⇒ Object
-
#handle_pop_message(_destination, _options = {}) ⇒ Object
-
#handle_publish(_destination, _body, _headers = {}, _properties = {}) ⇒ Object
-
#handle_rollback_transaction(_options = {}) ⇒ Object
-
#handle_subscribe(_destination, _options = {}, &_consumer) ⇒ Object
-
#in_transaction? ⇒ Boolean
-
#initialize(adapter) ⇒ ContextBase
constructor
A new instance of ContextBase.
-
#invalidate ⇒ Object
-
#message_count(destination) ⇒ Object
-
#nack_message(message, options = {}) ⇒ Object
-
#pop_message(destination, options = {}) ⇒ Object
-
#publish(destination, body, headers = {}, properties = {}) ⇒ Object
-
#rollback_transaction(options = {}) ⇒ Object
-
#subscribe(destination, options = {}, &consumer) ⇒ Object
-
#supports_client_acks? ⇒ Boolean
-
#supports_subscriptions? ⇒ Boolean
-
#supports_transactions? ⇒ Boolean
-
#valid? ⇒ Boolean
Constructor Details
#initialize(adapter) ⇒ ContextBase
Returns a new instance of ContextBase.
45
46
47
48
|
# File 'lib/message_driver/adapters/base.rb', line 45
def initialize(adapter)
@adapter = adapter
@valid = true
end
|
Instance Attribute Details
#adapter ⇒ Object
Returns the value of attribute adapter.
42
43
44
|
# File 'lib/message_driver/adapters/base.rb', line 42
def adapter
@adapter
end
|
#valid ⇒ Object
Returns the value of attribute valid.
43
44
45
|
# File 'lib/message_driver/adapters/base.rb', line 43
def valid
@valid
end
|
Instance Method Details
#ack_message(message, options = {}) ⇒ Object
66
67
68
|
# File 'lib/message_driver/adapters/base.rb', line 66
def ack_message(message, options = {})
handle_ack_message(message, options)
end
|
#begin_transaction(options = {}) ⇒ Object
74
75
76
|
# File 'lib/message_driver/adapters/base.rb', line 74
def begin_transaction(options = {})
handle_begin_transaction(options)
end
|
#commit_transaction(options = {}) ⇒ Object
78
79
80
|
# File 'lib/message_driver/adapters/base.rb', line 78
def commit_transaction(options = {})
handle_commit_transaction(options)
end
|
#consumer_count(destination) ⇒ Object
90
91
92
|
# File 'lib/message_driver/adapters/base.rb', line 90
def consumer_count(destination)
handle_consumer_count(destination)
end
|
#create_destination(name, dest_options = {}, message_props = {}) ⇒ Object
62
63
64
|
# File 'lib/message_driver/adapters/base.rb', line 62
def create_destination(name, dest_options = {}, message_props = {})
handle_create_destination(name, dest_options, message_props)
end
|
#handle_ack_message(_message, _options = {}) ⇒ Object
142
143
144
145
146
147
148
|
# File 'lib/message_driver/adapters/base.rb', line 142
def handle_ack_message(_message, _options = {})
if supports_client_acks?
raise 'Must be implemented in subclass'
else
raise "#ack_message is not supported by #{adapter.class}"
end
end
|
#handle_begin_transaction(_options = {}) ⇒ Object
158
159
160
161
162
163
164
|
# File 'lib/message_driver/adapters/base.rb', line 158
def handle_begin_transaction(_options = {})
if supports_transactions?
raise 'Must be implemented in subclass'
else
raise "transactions are not supported by #{adapter.class}"
end
end
|
#handle_commit_transaction(_options = {}) ⇒ Object
166
167
168
169
170
171
172
|
# File 'lib/message_driver/adapters/base.rb', line 166
def handle_commit_transaction(_options = {})
if supports_transactions?
raise 'Must be implemented in subclass'
else
raise "transactions are not supported by #{adapter.class}"
end
end
|
#handle_consumer_count(destination) ⇒ Object
186
187
188
|
# File 'lib/message_driver/adapters/base.rb', line 186
def handle_consumer_count(destination)
raise "#consumer_count is not supported by #{destination.class}"
end
|
#handle_create_destination(_name, _dest_options = {}, _message_props = {}) ⇒ Object
122
123
124
|
# File 'lib/message_driver/adapters/base.rb', line 122
def handle_create_destination(_name, _dest_options = {}, _message_props = {})
raise 'Must be implemented in subclass'
end
|
#handle_message_count(destination) ⇒ Object
182
183
184
|
# File 'lib/message_driver/adapters/base.rb', line 182
def handle_message_count(destination)
raise "#message_count is not supported by #{destination.class}"
end
|
#handle_nack_message(_message, _options = {}) ⇒ Object
150
151
152
153
154
155
156
|
# File 'lib/message_driver/adapters/base.rb', line 150
def handle_nack_message(_message, _options = {})
if supports_client_acks?
raise 'Must be implemented in subclass'
else
raise "#nack_message is not supported by #{adapter.class}"
end
end
|
#handle_pop_message(_destination, _options = {}) ⇒ Object
130
131
132
|
# File 'lib/message_driver/adapters/base.rb', line 130
def handle_pop_message(_destination, _options = {})
raise 'Must be implemented in subclass'
end
|
#handle_publish(_destination, _body, _headers = {}, _properties = {}) ⇒ Object
126
127
128
|
# File 'lib/message_driver/adapters/base.rb', line 126
def handle_publish(_destination, _body, = {}, _properties = {})
raise 'Must be implemented in subclass'
end
|
#handle_rollback_transaction(_options = {}) ⇒ Object
174
175
176
177
178
179
180
|
# File 'lib/message_driver/adapters/base.rb', line 174
def handle_rollback_transaction(_options = {})
if supports_transactions?
raise 'Must be implemented in subclass'
else
raise "transactions are not supported by #{adapter.class}"
end
end
|
#handle_subscribe(_destination, _options = {}, &_consumer) ⇒ Object
134
135
136
137
138
139
140
|
# File 'lib/message_driver/adapters/base.rb', line 134
def handle_subscribe(_destination, _options = {}, &_consumer)
if supports_subscriptions?
raise 'Must be implemented in subclass'
else
raise "#subscribe is not supported by #{adapter.class}"
end
end
|
#in_transaction? ⇒ Boolean
94
95
96
97
98
99
100
|
# File 'lib/message_driver/adapters/base.rb', line 94
def in_transaction?
if supports_transactions?
raise 'must be implemented in subclass'
else
raise "#in_transaction? not supported by #{adapter.class}"
end
end
|
#invalidate ⇒ Object
106
107
108
|
# File 'lib/message_driver/adapters/base.rb', line 106
def invalidate
@valid = false
end
|
#message_count(destination) ⇒ Object
86
87
88
|
# File 'lib/message_driver/adapters/base.rb', line 86
def message_count(destination)
handle_message_count(destination)
end
|
#nack_message(message, options = {}) ⇒ Object
70
71
72
|
# File 'lib/message_driver/adapters/base.rb', line 70
def nack_message(message, options = {})
handle_nack_message(message, options)
end
|
#pop_message(destination, options = {}) ⇒ Object
54
55
56
|
# File 'lib/message_driver/adapters/base.rb', line 54
def pop_message(destination, options = {})
handle_pop_message(destination, options)
end
|
#publish(destination, body, headers = {}, properties = {}) ⇒ Object
50
51
52
|
# File 'lib/message_driver/adapters/base.rb', line 50
def publish(destination, body, = {}, properties = {})
handle_publish(destination, body, , properties)
end
|
#rollback_transaction(options = {}) ⇒ Object
82
83
84
|
# File 'lib/message_driver/adapters/base.rb', line 82
def rollback_transaction(options = {})
handle_rollback_transaction(options)
end
|
#subscribe(destination, options = {}, &consumer) ⇒ Object
58
59
60
|
# File 'lib/message_driver/adapters/base.rb', line 58
def subscribe(destination, options = {}, &consumer)
handle_subscribe(destination, options, &consumer)
end
|
#supports_client_acks? ⇒ Boolean
114
115
116
|
# File 'lib/message_driver/adapters/base.rb', line 114
def supports_client_acks?
false
end
|
#supports_subscriptions? ⇒ Boolean
118
119
120
|
# File 'lib/message_driver/adapters/base.rb', line 118
def supports_subscriptions?
false
end
|
#supports_transactions? ⇒ Boolean
110
111
112
|
# File 'lib/message_driver/adapters/base.rb', line 110
def supports_transactions?
false
end
|
#valid? ⇒ Boolean
102
103
104
|
# File 'lib/message_driver/adapters/base.rb', line 102
def valid?
@valid
end
|