001 /**
002 * Licensed to the Apache Software Foundation (ASF) under one or more
003 * contributor license agreements. See the NOTICE file distributed with
004 * this work for additional information regarding copyright ownership.
005 * The ASF licenses this file to You under the Apache License, Version 2.0
006 * (the "License"); you may not use this file except in compliance with
007 * the License. You may obtain a copy of the License at
008 *
009 * http://www.apache.org/licenses/LICENSE-2.0
010 *
011 * Unless required by applicable law or agreed to in writing, software
012 * distributed under the License is distributed on an "AS IS" BASIS,
013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014 * See the License for the specific language governing permissions and
015 * limitations under the License.
016 */
017 package org.apache.activemq.broker;
018
019 import java.net.URI;
020 import java.util.Collections;
021 import java.util.Map;
022 import java.util.Set;
023 import java.util.concurrent.ThreadPoolExecutor;
024 import org.apache.activemq.broker.region.Destination;
025 import org.apache.activemq.broker.region.MessageReference;
026 import org.apache.activemq.broker.region.Subscription;
027 import org.apache.activemq.command.ActiveMQDestination;
028 import org.apache.activemq.command.BrokerId;
029 import org.apache.activemq.command.BrokerInfo;
030 import org.apache.activemq.command.ConnectionInfo;
031 import org.apache.activemq.command.ConsumerControl;
032 import org.apache.activemq.command.ConsumerInfo;
033 import org.apache.activemq.command.DestinationInfo;
034 import org.apache.activemq.command.Message;
035 import org.apache.activemq.command.MessageAck;
036 import org.apache.activemq.command.MessageDispatch;
037 import org.apache.activemq.command.MessageDispatchNotification;
038 import org.apache.activemq.command.MessagePull;
039 import org.apache.activemq.command.ProducerInfo;
040 import org.apache.activemq.command.RemoveSubscriptionInfo;
041 import org.apache.activemq.command.Response;
042 import org.apache.activemq.command.SessionInfo;
043 import org.apache.activemq.command.TransactionId;
044 import org.apache.activemq.store.kahadb.plist.PListStore;
045 import org.apache.activemq.thread.Scheduler;
046 import org.apache.activemq.usage.Usage;
047
048 /**
049 * Dumb implementation - used to be overriden by listeners
050 *
051 *
052 */
053 public class EmptyBroker implements Broker {
054
055 public BrokerId getBrokerId() {
056 return null;
057 }
058
059 public String getBrokerName() {
060 return null;
061 }
062
063 public Broker getAdaptor(Class type) {
064 if (type.isInstance(this)) {
065 return this;
066 }
067 return null;
068 }
069
070 @SuppressWarnings("unchecked")
071 public Map<ActiveMQDestination, Destination> getDestinationMap() {
072 return Collections.EMPTY_MAP;
073 }
074
075 public Set getDestinations(ActiveMQDestination destination) {
076 return Collections.EMPTY_SET;
077 }
078
079 public void addConnection(ConnectionContext context, ConnectionInfo info) throws Exception {
080
081 }
082
083 public void removeConnection(ConnectionContext context, ConnectionInfo info, Throwable error) throws Exception {
084
085 }
086
087 public void addSession(ConnectionContext context, SessionInfo info) throws Exception {
088
089 }
090
091 public void removeSession(ConnectionContext context, SessionInfo info) throws Exception {
092
093 }
094
095 public void addProducer(ConnectionContext context, ProducerInfo info) throws Exception {
096
097 }
098
099 public void removeProducer(ConnectionContext context, ProducerInfo info) throws Exception {
100
101 }
102
103 public Connection[] getClients() throws Exception {
104
105 return null;
106 }
107
108 public ActiveMQDestination[] getDestinations() throws Exception {
109
110 return null;
111 }
112
113 public TransactionId[] getPreparedTransactions(ConnectionContext context) throws Exception {
114
115 return null;
116 }
117
118 public void beginTransaction(ConnectionContext context, TransactionId xid) throws Exception {
119
120 }
121
122 public int prepareTransaction(ConnectionContext context, TransactionId xid) throws Exception {
123
124 return 0;
125 }
126
127 public void rollbackTransaction(ConnectionContext context, TransactionId xid) throws Exception {
128
129 }
130
131 public void commitTransaction(ConnectionContext context, TransactionId xid, boolean onePhase) throws Exception {
132
133 }
134
135 public void forgetTransaction(ConnectionContext context, TransactionId transactionId) throws Exception {
136
137 }
138
139 public Destination addDestination(ConnectionContext context, ActiveMQDestination destination,boolean flag) throws Exception {
140
141 return null;
142 }
143
144 public void removeDestination(ConnectionContext context, ActiveMQDestination destination, long timeout) throws Exception {
145
146 }
147
148 public Subscription addConsumer(ConnectionContext context, ConsumerInfo info) throws Exception {
149 return null;
150 }
151
152 public void removeConsumer(ConnectionContext context, ConsumerInfo info) throws Exception {
153
154 }
155
156 public void removeSubscription(ConnectionContext context, RemoveSubscriptionInfo info) throws Exception {
157
158 }
159
160 public void send(ProducerBrokerExchange producerExchange, Message message) throws Exception {
161
162 }
163
164 public void acknowledge(ConsumerBrokerExchange consumerExchange, MessageAck ack) throws Exception {
165
166 }
167
168 public void gc() {
169
170 }
171
172 public void start() throws Exception {
173
174 }
175
176 public void stop() throws Exception {
177
178 }
179
180 public void addBroker(Connection connection, BrokerInfo info) {
181
182 }
183
184 public void removeBroker(Connection connection, BrokerInfo info) {
185
186 }
187
188 public BrokerInfo[] getPeerBrokerInfos() {
189 return null;
190 }
191
192 public void preProcessDispatch(MessageDispatch messageDispatch) {
193 }
194
195 public void postProcessDispatch(MessageDispatch messageDispatch) {
196 }
197
198 public void processDispatchNotification(MessageDispatchNotification messageDispatchNotification) throws Exception {
199
200 }
201
202 public boolean isStopped() {
203 return false;
204 }
205
206 public Set<ActiveMQDestination> getDurableDestinations() {
207 return null;
208 }
209
210 public void addDestinationInfo(ConnectionContext context, DestinationInfo info) throws Exception {
211 }
212
213 public void removeDestinationInfo(ConnectionContext context, DestinationInfo info) throws Exception {
214 }
215
216 public boolean isFaultTolerantConfiguration() {
217 return false;
218 }
219
220 public ConnectionContext getAdminConnectionContext() {
221 return null;
222 }
223
224 public void setAdminConnectionContext(ConnectionContext adminConnectionContext) {
225 }
226
227 public Response messagePull(ConnectionContext context, MessagePull pull) throws Exception {
228 return null;
229 }
230
231 public PListStore getTempDataStore() {
232 return null;
233 }
234
235 public URI getVmConnectorURI() {
236 return null;
237 }
238
239 public void brokerServiceStarted() {
240 }
241
242 public BrokerService getBrokerService() {
243 return null;
244 }
245
246 public boolean isExpired(MessageReference messageReference) {
247 return false;
248 }
249
250 public void messageExpired(ConnectionContext context, MessageReference message, Subscription subscription) {
251 }
252
253 public void sendToDeadLetterQueue(ConnectionContext context,
254 MessageReference messageReference,
255 Subscription subscription) {
256 }
257
258 public Broker getRoot() {
259 return null;
260 }
261
262 public long getBrokerSequenceId() {
263 return -1l;
264 }
265
266 public void fastProducer(ConnectionContext context,ProducerInfo producerInfo) {
267 }
268
269 public void isFull(ConnectionContext context, Destination destination,Usage usage) {
270 }
271
272 public void messageConsumed(ConnectionContext context,MessageReference messageReference) {
273 }
274
275 public void messageDelivered(ConnectionContext context,MessageReference messageReference) {
276 }
277
278 public void messageDiscarded(ConnectionContext context, Subscription sub, MessageReference messageReference) {
279 }
280
281 public void slowConsumer(ConnectionContext context,Destination destination, Subscription subs) {
282 }
283
284 public void nowMasterBroker() {
285 }
286
287 public void networkBridgeStarted(BrokerInfo brokerInfo, boolean createdByDuplex, String remoteIp) {
288 }
289
290 public void networkBridgeStopped(BrokerInfo brokerInfo) {
291 }
292
293 public void processConsumerControl(ConsumerBrokerExchange consumerExchange,
294 ConsumerControl control) {
295 }
296
297 public Scheduler getScheduler() {
298 return null;
299 }
300
301 public ThreadPoolExecutor getExecutor() {
302 return null;
303 }
304 }