001 package com.mockrunner.jms; 002 003 import java.util.Iterator; 004 import java.util.List; 005 006 import javax.jms.JMSException; 007 import javax.jms.MessageConsumer; 008 import javax.jms.MessageListener; 009 import javax.jms.Queue; 010 import javax.jms.Session; 011 import javax.jms.Topic; 012 013 import com.mockrunner.base.NestedApplicationException; 014 import com.mockrunner.base.VerifyFailedException; 015 import com.mockrunner.mock.jms.JMSMockObjectFactory; 016 import com.mockrunner.mock.jms.MockConnection; 017 import com.mockrunner.mock.jms.MockMessage; 018 import com.mockrunner.mock.jms.MockMessageConsumer; 019 import com.mockrunner.mock.jms.MockMessageProducer; 020 import com.mockrunner.mock.jms.MockQueue; 021 import com.mockrunner.mock.jms.MockQueueBrowser; 022 import com.mockrunner.mock.jms.MockQueueConnection; 023 import com.mockrunner.mock.jms.MockQueueConnectionFactory; 024 import com.mockrunner.mock.jms.MockQueueReceiver; 025 import com.mockrunner.mock.jms.MockQueueSender; 026 import com.mockrunner.mock.jms.MockQueueSession; 027 import com.mockrunner.mock.jms.MockSession; 028 import com.mockrunner.mock.jms.MockTemporaryQueue; 029 import com.mockrunner.mock.jms.MockTemporaryTopic; 030 import com.mockrunner.mock.jms.MockTopic; 031 import com.mockrunner.mock.jms.MockTopicConnection; 032 import com.mockrunner.mock.jms.MockTopicConnectionFactory; 033 import com.mockrunner.mock.jms.MockTopicPublisher; 034 import com.mockrunner.mock.jms.MockTopicSession; 035 import com.mockrunner.mock.jms.MockTopicSubscriber; 036 037 /** 038 * Module for JMS tests. 039 * Note that all indices are zero based.<br> 040 * Note for JMS 1.1: 041 * If you use {@link MockQueueConnectionFactory} for creating your 042 * connections and sessions, you have to use the methods with <code>Queue</code> 043 * in their name. Same with {@link MockTopicConnectionFactory}. 044 * The methods without <code>Queue</code> and <code>Topic</code> 045 * in the method name are for connections and sessions that were 046 * created using the {@link com.mockrunner.mock.jms.MockConnectionFactory}. 047 * {@link com.mockrunner.mock.jms.MockConnectionFactory} 048 * also implements the <code>QueueConnectionFactory</code> and 049 * <code>TopicConnectionFactory</code> interfaces and can be used to create 050 * queue and topic connections as well as generic JMS 1.1 connections. 051 * It is recommended to use {@link com.mockrunner.mock.jms.MockQueueConnectionFactory} 052 * if you only use queues and {@link com.mockrunner.mock.jms.MockTopicConnectionFactory} 053 * if you only use topics and are not interested in having one factory for both. 054 * It is possible to create a {@link MockQueueConnection} or a {@link MockTopicConnection} 055 * using the {@link com.mockrunner.mock.jms.MockConnectionFactory}. 056 * However, the <code>Queue</code> methods (e.g. {@link #verifyAllQueueReceiversClosed}) 057 * only work, if you use {@link MockQueueConnectionFactory} and the 058 * <code>Topic</code> methods (e.g. {@link #verifyCreatedTopicMapMessageNotAcknowledged}) 059 * only work, if you use {@link MockTopicConnectionFactory}. 060 */ 061 public class JMSTestModule 062 { 063 private JMSMockObjectFactory mockFactory; 064 private int currentQueueConnectionIndex; 065 private int currentTopicConnectionIndex; 066 private int currentConnectionIndex; 067 068 public JMSTestModule(JMSMockObjectFactory mockFactory) 069 { 070 this.mockFactory = mockFactory; 071 currentQueueConnectionIndex = -1; 072 currentTopicConnectionIndex = -1; 073 currentConnectionIndex = -1; 074 } 075 076 /** 077 * Sets the index of the {@link MockQueueConnection} that should be used 078 * for the current test. Per default the latest created connection 079 * is used. 080 * @param connectionIndex the index of the connection 081 */ 082 public void setCurrentQueueConnectionIndex(int connectionIndex) 083 { 084 this.currentQueueConnectionIndex = connectionIndex; 085 } 086 087 /** 088 * Returns the current {@link MockQueueConnection} based on its 089 * index or <code>null</code> if no queue connection 090 * was created. The connection has to be created using the 091 * {@link MockQueueConnectionFactory}. 092 * @return the queue connection 093 */ 094 public MockQueueConnection getCurrentQueueConnection() 095 { 096 if(0 > currentQueueConnectionIndex) 097 { 098 return mockFactory.getMockQueueConnectionFactory().getLatestQueueConnection(); 099 } 100 return mockFactory.getMockQueueConnectionFactory().getQueueConnection(currentQueueConnectionIndex); 101 } 102 103 /** 104 * Sets the index of the {@link MockTopicConnection} that should be used 105 * for the current test. Per default the latest created connection 106 * is used. 107 * @param connectionIndex the index of the connection 108 */ 109 public void setCurrentTopicConnectionIndex(int connectionIndex) 110 { 111 this.currentTopicConnectionIndex = connectionIndex; 112 } 113 114 /** 115 * Returns the current {@link MockTopicConnection} based on its 116 * index or <code>null</code> if no topic connection 117 * was created. The connection has to be created using the 118 * {@link MockTopicConnectionFactory}. 119 * @return the topic connection 120 */ 121 public MockTopicConnection getCurrentTopicConnection() 122 { 123 if(0 > currentTopicConnectionIndex) 124 { 125 return mockFactory.getMockTopicConnectionFactory().getLatestTopicConnection(); 126 } 127 return mockFactory.getMockTopicConnectionFactory().getTopicConnection(currentTopicConnectionIndex); 128 } 129 130 /** 131 * Sets the index of the {@link MockConnection} that should be used 132 * for the current test. Per default the latest created connection 133 * is used. 134 * @param connectionIndex the index of the connection 135 */ 136 public void setCurrentConnectionIndex(int connectionIndex) 137 { 138 this.currentConnectionIndex = connectionIndex; 139 } 140 141 /** 142 * Returns the current {@link MockConnection} based on its 143 * index or <code>null</code> if no connection 144 * was created. The connection has to be created using the 145 * {@link com.mockrunner.mock.jms.MockConnectionFactory}. 146 * @return the topic connection 147 */ 148 public MockConnection getCurrentConnection() 149 { 150 if(0 > currentConnectionIndex) 151 { 152 return mockFactory.getMockConnectionFactory().getLatestConnection(); 153 } 154 return mockFactory.getMockConnectionFactory().getConnection(currentConnectionIndex); 155 } 156 157 /** 158 * Creates a new connection and uses it for creating a new session and receiver. 159 * Registers the specified listener. Starts the connection for message 160 * receiving. This method is useful for creating test listeners when 161 * testing senders. It can be used to register message driven beans. 162 * Note that the created connection is the latest created 163 * connection and automatically becomes the default connection for the 164 * test module. The created session is transacted. 165 * This method uses the {@link MockQueueConnectionFactory} for 166 * creating the connection and the session. If you want to use the 167 * {@link com.mockrunner.mock.jms.MockConnectionFactory} you have to create the connection on your own 168 * and call {@link #registerTestMessageListenerForQueue(MockConnection, String, MessageListener)}. 169 * @param queueName the name of the queue used for message receiving 170 * @param listener the listener that should be registered 171 */ 172 public void registerTestMessageListenerForQueue(String queueName, MessageListener listener) 173 { 174 try 175 { 176 MockQueueConnectionFactory factory = mockFactory.getMockQueueConnectionFactory(); 177 MockQueueConnection connection = (MockQueueConnection)factory.createQueueConnection(); 178 registerTestMessageListenerForQueue(connection, queueName, listener); 179 } 180 catch(JMSException exc) 181 { 182 throw new NestedApplicationException(exc); 183 } 184 } 185 186 /** 187 * Creates a new session and receiver using the specified connection and 188 * registers the specified listener. Starts the connection for message 189 * receiving. This method is useful for creating test listeners when 190 * testing senders. It can be used to register message driven beans. 191 * The created session is transacted. 192 * @param connection the connection used for creating the session 193 * @param queueName the name of the queue used for message receiving 194 * @param listener the listener that should be registered 195 */ 196 public void registerTestMessageListenerForQueue(MockConnection connection, String queueName, MessageListener listener) 197 { 198 registerTestMessageListenerForQueue(connection, queueName, true, Session.AUTO_ACKNOWLEDGE, listener); 199 } 200 201 /** 202 * Creates a new session and receiver using the specified connection and 203 * registers the specified listener. Starts the connection for message 204 * receiving. This method is useful for creating test listeners when 205 * testing senders. It can be used to register message driven beans. 206 * @param connection the connection used for creating the session 207 * @param queueName the name of the queue used for message receiving 208 * @param transacted should the created session be transacted 209 * @param acknowledgeMode the acknowledge mode of the created session 210 * @param listener the listener that should be registered 211 */ 212 public void registerTestMessageListenerForQueue(MockConnection connection, String queueName, boolean transacted, int acknowledgeMode, MessageListener listener) 213 { 214 registerTestMessageListenerForQueue(connection, queueName, transacted, acknowledgeMode, null, listener); 215 } 216 217 /** 218 * Creates a new session and receiver using the specified connection and 219 * registers the specified listener. Starts the connection for message 220 * receiving. This method is useful for creating test listeners when 221 * testing senders. It can be used to register message driven beans. 222 * @param connection the connection used for creating the session 223 * @param queueName the name of the queue used for message receiving 224 * @param transacted should the created session be transacted 225 * @param acknowledgeMode the acknowledge mode of the created session 226 * @param messageSelector the message selector 227 * @param listener the listener that should be registered 228 */ 229 public void registerTestMessageListenerForQueue(MockConnection connection, String queueName, boolean transacted, int acknowledgeMode, String messageSelector, MessageListener listener) 230 { 231 try 232 { 233 Queue queue = getDestinationManager().getQueue(queueName); 234 MockSession session = (MockSession)connection.createSession(transacted, acknowledgeMode); 235 MessageConsumer consumer = session.createConsumer(queue, messageSelector); 236 consumer.setMessageListener(listener); 237 connection.start(); 238 } 239 catch(JMSException exc) 240 { 241 throw new NestedApplicationException(exc); 242 } 243 } 244 245 /** 246 * Creates a new connection and uses it for creating a new session and subscriber. 247 * Registers the specified listener. Starts the connection for message 248 * receiving. This method is useful for creating test listeners when 249 * testing publishers. It can be used to resgister message driven beans. 250 * Note that the created connection is the latest created 251 * connection and automatically becomes the default connection for the 252 * test module. The created session is transacted. 253 * This method uses the {@link MockTopicConnectionFactory} for 254 * creating the connection and the session. If you want to use the 255 * {@link com.mockrunner.mock.jms.MockConnectionFactory} you have to create the connection on your own 256 * and call {@link #registerTestMessageListenerForTopic(MockConnection, String, MessageListener)}. 257 * @param topicName the name of the topic used for message receiving 258 * @param listener the listener that should be registered 259 */ 260 public void registerTestMessageListenerForTopic(String topicName, MessageListener listener) 261 { 262 try 263 { 264 MockTopicConnectionFactory factory = mockFactory.getMockTopicConnectionFactory(); 265 MockTopicConnection connection = (MockTopicConnection)factory.createTopicConnection(); 266 registerTestMessageListenerForTopic(connection, topicName, listener); 267 } 268 catch(JMSException exc) 269 { 270 throw new NestedApplicationException(exc); 271 } 272 } 273 274 /** 275 * Creates a new session and subscriber using the specified connection and 276 * registers the specified listener. Starts the connection for message 277 * receiving. This method is useful for creating test listeners when 278 * testing publishers. It can be used to resgister message driven beans. 279 * The created session is transacted. 280 * @param connection the connection used for creating the session 281 * @param topicName the name of the topic used for message receiving 282 * @param listener the listener that should be registered 283 */ 284 public void registerTestMessageListenerForTopic(MockConnection connection, String topicName, MessageListener listener) 285 { 286 registerTestMessageListenerForTopic(connection, topicName, true, Session.AUTO_ACKNOWLEDGE, listener); 287 } 288 289 /** 290 * Creates a new session and subscriber using the specified connection and 291 * registers the specified listener. Starts the connection for message 292 * receiving. This method is useful for creating test listeners when 293 * testing publishers. It can be used to resgister message driven beans. 294 * @param connection the connection used for creating the session 295 * @param topicName the name of the topic used for message receiving 296 * @param transacted should the created session be transacted 297 * @param acknowledgeMode the acknowledge mode of the created session 298 * @param listener the listener that should be registered 299 */ 300 public void registerTestMessageListenerForTopic(MockConnection connection, String topicName, boolean transacted, int acknowledgeMode, MessageListener listener) 301 { 302 registerTestMessageListenerForTopic(connection, topicName, transacted, acknowledgeMode, null, listener); 303 } 304 305 /** 306 * Creates a new session and subscriber using the specified connection and 307 * registers the specified listener. Starts the connection for message 308 * receiving. This method is useful for creating test listeners when 309 * testing publishers. It can be used to resgister message driven beans. 310 * @param connection the connection used for creating the session 311 * @param topicName the name of the topic used for message receiving 312 * @param transacted should the created session be transacted 313 * @param acknowledgeMode the acknowledge mode of the created session 314 * @param messageSelector the message selector 315 * @param listener the listener that should be registered 316 */ 317 public void registerTestMessageListenerForTopic(MockConnection connection, String topicName, boolean transacted, int acknowledgeMode, String messageSelector, MessageListener listener) 318 { 319 try 320 { 321 Topic topic = getDestinationManager().getTopic(topicName); 322 MockSession session = (MockSession)connection.createSession(transacted, acknowledgeMode); 323 MessageConsumer consumer = session.createConsumer(topic, messageSelector); 324 consumer.setMessageListener(listener); 325 connection.start(); 326 } 327 catch(JMSException exc) 328 { 329 throw new NestedApplicationException(exc); 330 } 331 } 332 333 /** 334 * Returns the {@link DestinationManager}. 335 * @return the {@link DestinationManager} 336 */ 337 public DestinationManager getDestinationManager() 338 { 339 return mockFactory.getDestinationManager(); 340 } 341 342 /** 343 * Returns the {@link ConfigurationManager}. 344 * @return the {@link ConfigurationManager} 345 */ 346 public ConfigurationManager getConfigurationManager() 347 { 348 return mockFactory.getConfigurationManager(); 349 } 350 351 /** 352 * Returns the {@link MessageManager} for the specified session 353 * or <code>null</code> if the session does not exist. The returned 354 * {@link MessageManager} is used to keep track of messages sent 355 * to queues. 356 * The session has to be created using the current {@link MockQueueConnection}. 357 * @param indexOfSession the index of the session 358 * @return the {@link MessageManager} 359 */ 360 public MessageManager getQueueMessageManager(int indexOfSession) 361 { 362 MockQueueSession session = getQueueSession(indexOfSession); 363 if(null == session) return null; 364 return session.getMessageManager(); 365 } 366 367 /** 368 * Returns the {@link MessageManager} for the specified session 369 * or <code>null</code> if the session does not exist. The returned 370 * {@link MessageManager} is used to keep track of messages sent 371 * to topics. 372 * The session has to be created using the current {@link MockTopicConnection}. 373 * @param indexOfSession the index of the session 374 * @return the {@link MessageManager} 375 */ 376 public MessageManager getTopicMessageManager(int indexOfSession) 377 { 378 MockTopicSession session = getTopicSession(indexOfSession); 379 if(null == session) return null; 380 return session.getMessageManager(); 381 } 382 383 /** 384 * Returns the {@link MessageManager} for the specified session 385 * or <code>null</code> if the session does not exist. The returned 386 * {@link MessageManager} is used to keep track of messages sent 387 * to topics. 388 * The session has to be created using the current {@link MockConnection}. 389 * @param indexOfSession the index of the session 390 * @return the {@link MessageManager} 391 */ 392 public MessageManager getMessageManager(int indexOfSession) 393 { 394 MockSession session = getSession(indexOfSession); 395 if(null == session) return null; 396 return session.getMessageManager(); 397 } 398 399 /** 400 * Returns the {@link QueueTransmissionManager} for the specified session 401 * or <code>null</code> if the session does not exist. 402 * The session has to be created using the current {@link MockQueueConnection}. 403 * @param indexOfSession the index of the session 404 * @return the {@link QueueTransmissionManager} 405 */ 406 public QueueTransmissionManager getQueueTransmissionManager(int indexOfSession) 407 { 408 MockQueueSession session = getQueueSession(indexOfSession); 409 if(null == session) return null; 410 return session.getQueueTransmissionManager(); 411 } 412 413 /** 414 * Returns the {@link TopicTransmissionManager} for the specified session 415 * or <code>null</code> if the session does not exist. 416 * The session has to be created using the current {@link MockTopicConnection}. 417 * @param indexOfSession the index of the session 418 * @return the {@link TopicTransmissionManager} 419 */ 420 public TopicTransmissionManager getTopicTransmissionManager(int indexOfSession) 421 { 422 MockTopicSession session = getTopicSession(indexOfSession); 423 if(null == session) return null; 424 return session.getTopicTransmissionManager(); 425 } 426 427 /** 428 * @deprecated use {@link #getTransmissionManagerWrapper} 429 */ 430 public TransmissionManagerWrapper getTransmissionManager(int indexOfSession) 431 { 432 return getTransmissionManagerWrapper(indexOfSession); 433 } 434 435 /** 436 * Returns the {@link TransmissionManagerWrapper} for the specified session 437 * or <code>null</code> if the session does not exist. 438 * The session has to be created using the current {@link MockConnection}. 439 * @param indexOfSession the index of the session 440 * @return the {@link TransmissionManagerWrapper} 441 */ 442 public TransmissionManagerWrapper getTransmissionManagerWrapper(int indexOfSession) 443 { 444 MockSession session = getSession(indexOfSession); 445 if(null == session) return null; 446 return session.getTransmissionManagerWrapper(); 447 } 448 449 /** 450 * Returns the {@link TransmissionManagerWrapper} for the specified session 451 * or <code>null</code> if the session does not exist. 452 * The session has to be created using the current {@link MockQueueConnection}. 453 * @param indexOfSession the index of the session 454 * @return the {@link TransmissionManagerWrapper} 455 */ 456 public TransmissionManagerWrapper getQueueTransmissionManagerWrapper(int indexOfSession) 457 { 458 MockQueueSession session = getQueueSession(indexOfSession); 459 if(null == session) return null; 460 return session.getTransmissionManagerWrapper(); 461 } 462 463 /** 464 * Returns the {@link TransmissionManagerWrapper} for the specified session 465 * or <code>null</code> if the session does not exist. 466 * The session has to be created using the current {@link MockTopicConnection}. 467 * @param indexOfSession the index of the session 468 * @return the {@link TransmissionManagerWrapper} 469 */ 470 public TransmissionManagerWrapper getTopicTransmissionManagerWrapper(int indexOfSession) 471 { 472 MockTopicSession session = getTopicSession(indexOfSession); 473 if(null == session) return null; 474 return session.getTransmissionManagerWrapper(); 475 } 476 477 /** 478 * Returns the list of {@link MockQueueSession} objects. 479 * The sessions have been created using the current {@link MockQueueConnection}. 480 * @return the {@link MockQueueSession} list 481 */ 482 public List getQueueSessionList() 483 { 484 if(null == getCurrentQueueConnection()) return null; 485 return getCurrentQueueConnection().getQueueSessionList(); 486 } 487 488 /** 489 * Returns the list of {@link MockTopicSession} objects. 490 * The sessions have been created using the current {@link MockTopicConnection}. 491 * @return the {@link MockTopicSession} list 492 */ 493 public List getTopicSessionList() 494 { 495 if(null == getCurrentTopicConnection()) return null; 496 return getCurrentTopicConnection().getTopicSessionList(); 497 } 498 499 /** 500 * Returns the list of {@link MockSession} objects. 501 * The sessions have been created using the current {@link MockConnection}. 502 * @return the {@link MockSession} list 503 */ 504 public List getSessionList() 505 { 506 if(null == getCurrentConnection()) return null; 507 return getCurrentConnection().getSessionList(); 508 } 509 510 /** 511 * Returns the {@link MockQueueSession} for the specified index 512 * or <code>null</code> if the session does not exist. 513 * The session has to be created using the current {@link MockQueueConnection}. 514 * @param indexOfSession the index of the session 515 * @return the {@link MockQueueSession} 516 */ 517 public MockQueueSession getQueueSession(int indexOfSession) 518 { 519 if(null == getCurrentQueueConnection()) return null; 520 return getCurrentQueueConnection().getQueueSession(indexOfSession); 521 } 522 523 /** 524 * Returns the {@link MockTopicSession} for the specified index 525 * or <code>null</code> if the session does not exist. 526 * The session has to be created using the current {@link MockTopicConnection}. 527 * @param indexOfSession the index of the session 528 * @return the {@link MockTopicSession} 529 */ 530 public MockTopicSession getTopicSession(int indexOfSession) 531 { 532 if(null == getCurrentTopicConnection()) return null; 533 return getCurrentTopicConnection().getTopicSession(indexOfSession); 534 } 535 536 /** 537 * Returns the {@link MockSession} for the specified index 538 * or <code>null</code> if the session does not exist. 539 * The session has to be created using the current {@link MockConnection}. 540 * @param indexOfSession the index of the session 541 * @return the {@link MockSession} 542 */ 543 public MockSession getSession(int indexOfSession) 544 { 545 if(null == getCurrentConnection()) return null; 546 return getCurrentConnection().getSession(indexOfSession); 547 } 548 549 /** 550 * Returns the {@link MockQueue} with the specified name 551 * or <code>null</code> if no such queue exists. 552 * @param name the name of the queue 553 * @return the {@link MockQueue} 554 */ 555 public MockQueue getQueue(String name) 556 { 557 return getDestinationManager().getQueue(name); 558 } 559 560 /** 561 * Returns the {@link MockTopic} with the specified name 562 * or <code>null</code> if no such topic exists. 563 * @param name the name of the topic 564 * @return the {@link MockTopic} 565 */ 566 public MockTopic getTopic(String name) 567 { 568 return getDestinationManager().getTopic(name); 569 } 570 571 /** 572 * Returns the list of {@link MockTemporaryQueue} objects 573 * for the specified session. The session has to be created using 574 * the current {@link MockQueueConnection}. 575 * @param indexOfSession the index of the session 576 * @return the {@link MockTemporaryQueue} list 577 */ 578 public List getTemporaryQueueList(int indexOfSession) 579 { 580 MockQueueSession session = getQueueSession(indexOfSession); 581 if(null == session) return null; 582 return session.getTemporaryQueueList(); 583 } 584 585 /** 586 * Returns the list of {@link MockTemporaryTopic} objects 587 * for the specified session. The session has to be created using 588 * the current {@link MockTopicConnection}. 589 * @param indexOfSession the index of the session 590 * @return the {@link MockTemporaryTopic} list 591 */ 592 public List getTemporaryTopicList(int indexOfSession) 593 { 594 MockTopicSession session = getTopicSession(indexOfSession); 595 if(null == session) return null; 596 return session.getTemporaryTopicList(); 597 } 598 599 /** 600 * Returns the {@link MockTemporaryQueue} with the specified index 601 * for the specified session. Returns <code>null</code> if no such 602 * temporary queue exists. The session has to be created using 603 * the current {@link MockQueueConnection}. 604 * @param indexOfSession the index of the session 605 * @param indexOfQueue the index of the temporary queue 606 * @return the {@link MockTemporaryQueue} 607 */ 608 public MockTemporaryQueue getTemporaryQueue(int indexOfSession, int indexOfQueue) 609 { 610 MockQueueSession session = getQueueSession(indexOfSession); 611 if(null == session) return null; 612 return session.getTemporaryQueue(indexOfQueue); 613 } 614 615 /** 616 * Returns the {@link MockTemporaryTopic} with the specified index 617 * for the specified session. Returns <code>null</code> if no such 618 * temporary queue exists. The session has to be created using 619 * the current {@link MockTopicConnection}. 620 * @param indexOfSession the index of the session 621 * @param indexOfTopic the index of the temporary queue 622 * @return the {@link MockTemporaryTopic} 623 */ 624 public MockTemporaryTopic getTemporaryTopic(int indexOfSession, int indexOfTopic) 625 { 626 MockTopicSession session = getTopicSession(indexOfSession); 627 if(null == session) return null; 628 return session.getTemporaryTopic(indexOfTopic); 629 } 630 631 /** 632 * Returns the list of messages that are currently present in the queue 633 * or <code>null</code> if no such queue exists. 634 * @param name the name of the queue 635 * @return the list of messages 636 */ 637 public List getCurrentMessageListFromQueue(String name) 638 { 639 MockQueue queue = getQueue(name); 640 if(null == queue) return null; 641 return queue.getCurrentMessageList(); 642 } 643 644 /** 645 * Returns the list of messages that are currently present in the 646 * temporary queue or <code>null</code> if no such queue exists. 647 * The session has to be created using the current {@link MockQueueConnection}. 648 * @param indexOfSession the index of the session 649 * @param indexOfQueue the index of the temporary queue 650 * @return the list of messages 651 */ 652 public List getCurrentMessageListFromTemporaryQueue(int indexOfSession, int indexOfQueue) 653 { 654 MockTemporaryQueue queue = getTemporaryQueue(indexOfSession, indexOfQueue); 655 if(null == queue) return null; 656 return queue.getCurrentMessageList(); 657 } 658 659 /** 660 * Returns the list of messages that were received by the queue 661 * or <code>null</code> if no such queue exists. 662 * @param name the name of the queue 663 * @return the list of messages 664 */ 665 public List getReceivedMessageListFromQueue(String name) 666 { 667 MockQueue queue = getQueue(name); 668 if(null == queue) return null; 669 return queue.getReceivedMessageList(); 670 } 671 672 /** 673 * Returns the list of messages that were received by the 674 * temporary queue or <code>null</code> if no such queue exists. 675 * The session has to be created using the current {@link MockQueueConnection}. 676 * @param indexOfSession the index of the session 677 * @param indexOfQueue the index of the temporary queue 678 * @return the list of messages 679 */ 680 public List getReceivedMessageListFromTemporaryQueue(int indexOfSession, int indexOfQueue) 681 { 682 MockTemporaryQueue queue = getTemporaryQueue(indexOfSession, indexOfQueue); 683 if(null == queue) return null; 684 return queue.getReceivedMessageList(); 685 } 686 687 /** 688 * Returns the list of messages that are currently present in the topic 689 * or <code>null</code> if no such topic exists. 690 * @param name the name of the queue 691 * @return the list of messages 692 */ 693 public List getCurrentMessageListFromTopic(String name) 694 { 695 MockTopic topic = getTopic(name); 696 if(null == topic) return null; 697 return topic.getCurrentMessageList(); 698 } 699 700 /** 701 * Returns the list of messages that are currently present in the 702 * temporary topic or <code>null</code> if no such topic exists. 703 * The session has to be created using the current {@link MockTopicConnection}. 704 * @param indexOfSession the index of the session 705 * @param indexOfTopic the index of the temporary topic 706 * @return the list of messages 707 */ 708 public List getCurrentMessageListFromTemporaryTopic(int indexOfSession, int indexOfTopic) 709 { 710 MockTemporaryTopic topic = getTemporaryTopic(indexOfSession, indexOfTopic); 711 if(null == topic) return null; 712 return topic.getCurrentMessageList(); 713 } 714 715 /** 716 * Returns the list of messages that were received by the topic 717 * or <code>null</code> if no such topic exists. 718 * @param name the name of the topic 719 * @return the list of messages 720 */ 721 public List getReceivedMessageListFromTopic(String name) 722 { 723 MockTopic topic = getTopic(name); 724 if(null == topic) return null; 725 return topic.getReceivedMessageList(); 726 } 727 728 /** 729 * Returns the list of messages that were received by the 730 * temporary topic or <code>null</code> if no such topic exists. 731 * The session has to be created using the current {@link MockTopicConnection}. 732 * @param indexOfSession the index of the session 733 * @param indexOfTopic the index of the temporary topic 734 * @return the list of messages 735 */ 736 public List getReceivedMessageListFromTemporaryTopic(int indexOfSession, int indexOfTopic) 737 { 738 MockTemporaryTopic topic = getTemporaryTopic(indexOfSession, indexOfTopic); 739 if(null == topic) return null; 740 return topic.getReceivedMessageList(); 741 } 742 743 /** 744 * Verifies that the current {@link MockQueueConnection} is closed. 745 * The connection has to be created using the current {@link MockQueueConnectionFactory}. 746 * @throws VerifyFailedException if verification fails 747 */ 748 public void verifyQueueConnectionClosed() 749 { 750 if(null == getCurrentQueueConnection()) 751 { 752 throw new VerifyFailedException("No QueueConnection present."); 753 } 754 if(!getCurrentQueueConnection().isClosed()) 755 { 756 throw new VerifyFailedException("QueueConnection is not closed."); 757 } 758 } 759 760 /** 761 * Verifies that the current {@link MockQueueConnection} is started. 762 * The connection has to be created using the current {@link MockQueueConnectionFactory}. 763 * @throws VerifyFailedException if verification fails 764 */ 765 public void verifyQueueConnectionStarted() 766 { 767 if(null == getCurrentQueueConnection()) 768 { 769 throw new VerifyFailedException("No QueueConnection present."); 770 } 771 if(!getCurrentQueueConnection().isStarted()) 772 { 773 throw new VerifyFailedException("QueueConnection is not started."); 774 } 775 } 776 777 /** 778 * Verifies that the current {@link MockQueueConnection} is stopped. 779 * The connection has to be created using the current {@link MockQueueConnectionFactory}. 780 * @throws VerifyFailedException if verification fails 781 */ 782 public void verifyQueueConnectionStopped() 783 { 784 if(null == getCurrentQueueConnection()) 785 { 786 throw new VerifyFailedException("No QueueConnection present."); 787 } 788 if(!getCurrentQueueConnection().isStopped()) 789 { 790 throw new VerifyFailedException("QueueConnection is not stopped."); 791 } 792 } 793 794 /** 795 * Verifies that the current {@link MockTopicConnection} is closed. 796 * The connection has to be created using the current {@link MockTopicConnectionFactory}. 797 * @throws VerifyFailedException if verification fails 798 */ 799 public void verifyTopicConnectionClosed() 800 { 801 if(null == getCurrentTopicConnection()) 802 { 803 throw new VerifyFailedException("No TopicConnection present."); 804 } 805 if(!getCurrentTopicConnection().isClosed()) 806 { 807 throw new VerifyFailedException("TopicConnection is not closed."); 808 } 809 } 810 811 /** 812 * Verifies that the current {@link MockTopicConnection} is started. 813 * The connection has to be created using the current {@link MockTopicConnectionFactory}. 814 * @throws VerifyFailedException if verification fails 815 */ 816 public void verifyTopicConnectionStarted() 817 { 818 if(null == getCurrentTopicConnection()) 819 { 820 throw new VerifyFailedException("No TopicConnection present."); 821 } 822 if(!getCurrentTopicConnection().isStarted()) 823 { 824 throw new VerifyFailedException("TopicConnection is not started."); 825 } 826 } 827 828 /** 829 * Verifies that the current {@link MockTopicConnection} is stopped. 830 * The connection has to be created using the current {@link MockTopicConnectionFactory}. 831 * @throws VerifyFailedException if verification fails 832 */ 833 public void verifyTopicConnectionStopped() 834 { 835 if(null == getCurrentTopicConnection()) 836 { 837 throw new VerifyFailedException("No TopicConnection present."); 838 } 839 if(!getCurrentTopicConnection().isStopped()) 840 { 841 throw new VerifyFailedException("TopicConnection is not stopped."); 842 } 843 } 844 845 /** 846 * Verifies that the current {@link MockConnection} is closed. 847 * The connection has to be created using the current {@link com.mockrunner.mock.jms.MockConnectionFactory}. 848 * @throws VerifyFailedException if verification fails 849 */ 850 public void verifyConnectionClosed() 851 { 852 if(null == getCurrentConnection()) 853 { 854 throw new VerifyFailedException("No Connection present."); 855 } 856 if(!getCurrentConnection().isClosed()) 857 { 858 throw new VerifyFailedException("Connection is not closed."); 859 } 860 } 861 862 /** 863 * Verifies that the current {@link MockConnection} is started. 864 * The connection has to be created using the current {@link com.mockrunner.mock.jms.MockConnectionFactory}. 865 * @throws VerifyFailedException if verification fails 866 */ 867 public void verifyConnectionStarted() 868 { 869 if(null == getCurrentConnection()) 870 { 871 throw new VerifyFailedException("No Connection present."); 872 } 873 if(!getCurrentConnection().isStarted()) 874 { 875 throw new VerifyFailedException("Connection is not started."); 876 } 877 } 878 879 /** 880 * Verifies that the current {@link MockConnection} is stopped. 881 * The connection has to be created using the current {@link com.mockrunner.mock.jms.MockConnectionFactory}. 882 * @throws VerifyFailedException if verification fails 883 */ 884 public void verifyConnectionStopped() 885 { 886 if(null == getCurrentConnection()) 887 { 888 throw new VerifyFailedException("No Connection present."); 889 } 890 if(!getCurrentConnection().isStopped()) 891 { 892 throw new VerifyFailedException("Connection is not stopped."); 893 } 894 } 895 896 /** 897 * Verifies that the queue session with the specified index is 898 * closed. 899 * The session has to be created using the current {@link MockQueueConnection}. 900 * @param indexOfSession the index of the session 901 * @throws VerifyFailedException if verification fails 902 */ 903 public void verifyQueueSessionClosed(int indexOfSession) 904 { 905 MockQueueSession session = checkAndGetQueueSessionByIndex(indexOfSession); 906 if(!session.isClosed()) 907 { 908 throw new VerifyFailedException("QueueSession with index " + indexOfSession + " is not closed."); 909 } 910 } 911 912 /** 913 * Verifies that the queue session with the specified index was 914 * committed. 915 * The session has to be created using the current {@link MockQueueConnection}. 916 * @param indexOfSession the index of the session 917 * @throws VerifyFailedException if verification fails 918 */ 919 public void verifyQueueSessionCommitted(int indexOfSession) 920 { 921 MockQueueSession session = checkAndGetQueueSessionByIndex(indexOfSession); 922 if(!session.isCommitted()) 923 { 924 throw new VerifyFailedException("QueueSession is not committed."); 925 } 926 } 927 928 /** 929 * Verifies that the queue session with the specified index was 930 * not committed. 931 * The session has to be created using the current {@link MockQueueConnection}. 932 * @param indexOfSession the index of the session 933 * @throws VerifyFailedException if verification fails 934 */ 935 public void verifyQueueSessionNotCommitted(int indexOfSession) 936 { 937 MockQueueSession session = checkAndGetQueueSessionByIndex(indexOfSession); 938 if(session.isCommitted()) 939 { 940 throw new VerifyFailedException("QueueSession is committed."); 941 } 942 } 943 944 /** 945 * Verifies the number of commits of the queue session with the specified index. 946 * The session has to be created using the current {@link MockQueueConnection}. 947 * @param indexOfSession the index of the session 948 * @param numberOfCommits the expected number of commits 949 * @throws VerifyFailedException if verification fails 950 */ 951 public void verifyQueueSessionNumberCommits(int indexOfSession, int numberOfCommits) 952 { 953 MockQueueSession session = checkAndGetQueueSessionByIndex(indexOfSession); 954 if(numberOfCommits != session.getNumberCommits()) 955 { 956 throw new VerifyFailedException("QueueSession was commited " + session.getNumberCommits() + " times, expected " + numberOfCommits + " times"); 957 } 958 } 959 960 /** 961 * Verifies that the queue session with the specified index was 962 * rolled back. 963 * The session has to be created using the current {@link MockQueueConnection}. 964 * @param indexOfSession the index of the session 965 * @throws VerifyFailedException if verification fails 966 */ 967 public void verifyQueueSessionRolledBack(int indexOfSession) 968 { 969 MockQueueSession session = checkAndGetQueueSessionByIndex(indexOfSession); 970 if(!session.isRolledBack()) 971 { 972 throw new VerifyFailedException("QueueSession is not rolled back."); 973 } 974 } 975 976 /** 977 * Verifies that the queue session with the specified index was 978 * not rolled back. 979 * The session has to be created using the current {@link MockQueueConnection}. 980 * @param indexOfSession the index of the session 981 * @throws VerifyFailedException if verification fails 982 */ 983 public void verifyQueueSessionNotRolledBack(int indexOfSession) 984 { 985 MockQueueSession session = checkAndGetQueueSessionByIndex(indexOfSession); 986 if(session.isRolledBack()) 987 { 988 throw new VerifyFailedException("QueueSession is rolled back."); 989 } 990 } 991 992 /** 993 * Verifies the number of rollbacks of the queue session with the specified index. 994 * The session has to be created using the current {@link MockQueueConnection}. 995 * @param indexOfSession the index of the session 996 * @param numberOfRollbacks the expected number of rollbacks 997 * @throws VerifyFailedException if verification fails 998 */ 999 public void verifyQueueSessionNumberRollbacks(int indexOfSession, int numberOfRollbacks) 1000 { 1001 MockQueueSession session = checkAndGetQueueSessionByIndex(indexOfSession); 1002 if(numberOfRollbacks != session.getNumberRollbacks()) 1003 { 1004 throw new VerifyFailedException("QueueSession was rolled back " + session.getNumberRollbacks() + " times, expected " + numberOfRollbacks + " times"); 1005 } 1006 } 1007 1008 /** 1009 * Verifies that the queue session with the specified index was 1010 * recovered. 1011 * The session has to be created using the current {@link MockQueueConnection}. 1012 * @param indexOfSession the index of the session 1013 * @throws VerifyFailedException if verification fails 1014 */ 1015 public void verifyQueueSessionRecovered(int indexOfSession) 1016 { 1017 MockQueueSession session = checkAndGetQueueSessionByIndex(indexOfSession); 1018 if(!session.isRecovered()) 1019 { 1020 throw new VerifyFailedException("QueueSession is not recovered."); 1021 } 1022 } 1023 1024 /** 1025 * Verifies that the queue session with the specified index was 1026 * not recovered. 1027 * The session has to be created using the current {@link MockQueueConnection}. 1028 * @param indexOfSession the index of the session 1029 * @throws VerifyFailedException if verification fails 1030 */ 1031 public void verifyQueueSessionNotRecovered(int indexOfSession) 1032 { 1033 MockQueueSession session = checkAndGetQueueSessionByIndex(indexOfSession); 1034 if(session.isRecovered()) 1035 { 1036 throw new VerifyFailedException("QueueSession is recovered."); 1037 } 1038 } 1039 1040 /** 1041 * Verifies that the topic session with the specified index is 1042 * closed. 1043 * The session has to be created using the current {@link MockTopicConnection}. 1044 * @param indexOfSession the index of the session 1045 * @throws VerifyFailedException if verification fails 1046 */ 1047 public void verifyTopicSessionClosed(int indexOfSession) 1048 { 1049 MockTopicSession session = checkAndGetTopicSessionByIndex(indexOfSession); 1050 if(!session.isClosed()) 1051 { 1052 throw new VerifyFailedException("TopicSession with index " + indexOfSession + " is not closed."); 1053 } 1054 } 1055 1056 /** 1057 * Verifies that the topic session with the specified index was 1058 * committed. 1059 * The session has to be created using the current {@link MockTopicConnection}. 1060 * @param indexOfSession the index of the session 1061 * @throws VerifyFailedException if verification fails 1062 */ 1063 public void verifyTopicSessionCommitted(int indexOfSession) 1064 { 1065 MockTopicSession session = checkAndGetTopicSessionByIndex(indexOfSession); 1066 if(!session.isCommitted()) 1067 { 1068 throw new VerifyFailedException("TopicSession is not committed."); 1069 } 1070 } 1071 1072 /** 1073 * Verifies that the topic session with the specified index was 1074 * not committed. 1075 * The session has to be created using the current {@link MockTopicConnection}. 1076 * @param indexOfSession the index of the session 1077 * @throws VerifyFailedException if verification fails 1078 */ 1079 public void verifyTopicSessionNotCommitted(int indexOfSession) 1080 { 1081 MockTopicSession session = checkAndGetTopicSessionByIndex(indexOfSession); 1082 if(session.isCommitted()) 1083 { 1084 throw new VerifyFailedException("TopicSession is committed."); 1085 } 1086 } 1087 1088 /** 1089 * Verifies the number of commits of the topic session with the specified index. 1090 * The session has to be created using the current {@link MockTopicConnection}. 1091 * @param indexOfSession the index of the session 1092 * @param numberOfCommits the expected number of commits 1093 * @throws VerifyFailedException if verification fails 1094 */ 1095 public void verifyTopicSessionNumberCommits(int indexOfSession, int numberOfCommits) 1096 { 1097 MockTopicSession session = checkAndGetTopicSessionByIndex(indexOfSession); 1098 if(numberOfCommits != session.getNumberCommits()) 1099 { 1100 throw new VerifyFailedException("TopicSession was commited " + session.getNumberCommits() + " times, expected " + numberOfCommits + " times"); 1101 } 1102 } 1103 1104 /** 1105 * Verifies that the topic session with the specified index was 1106 * rolled back. 1107 * The session has to be created using the current {@link MockTopicConnection}. 1108 * @param indexOfSession the index of the session 1109 * @throws VerifyFailedException if verification fails 1110 */ 1111 public void verifyTopicSessionRolledBack(int indexOfSession) 1112 { 1113 MockTopicSession session = checkAndGetTopicSessionByIndex(indexOfSession); 1114 if(!session.isRolledBack()) 1115 { 1116 throw new VerifyFailedException("TopicSession is not rolled back."); 1117 } 1118 } 1119 1120 /** 1121 * Verifies that the topic session with the specified index was 1122 * not rolled back. 1123 * The session has to be created using the current {@link MockTopicConnection}. 1124 * @param indexOfSession the index of the session 1125 * @throws VerifyFailedException if verification fails 1126 */ 1127 public void verifyTopicSessionNotRolledBack(int indexOfSession) 1128 { 1129 MockTopicSession session = checkAndGetTopicSessionByIndex(indexOfSession); 1130 if(session.isRolledBack()) 1131 { 1132 throw new VerifyFailedException("TopicSession is rolled back."); 1133 } 1134 } 1135 1136 /** 1137 * Verifies the number of rollbacks of the topic session with the specified index. 1138 * The session has to be created using the current {@link MockTopicConnection}. 1139 * @param indexOfSession the index of the session 1140 * @param numberOfRollbacks the expected number of rollbacks 1141 * @throws VerifyFailedException if verification fails 1142 */ 1143 public void verifyTopicSessionNumberRollbacks(int indexOfSession, int numberOfRollbacks) 1144 { 1145 MockTopicSession session = checkAndGetTopicSessionByIndex(indexOfSession); 1146 if(numberOfRollbacks != session.getNumberRollbacks()) 1147 { 1148 throw new VerifyFailedException("TopicSession was rolled back " + session.getNumberRollbacks() + " times, expected " + numberOfRollbacks + " times"); 1149 } 1150 } 1151 1152 /** 1153 * Verifies that the topic session with the specified index was 1154 * recovered. 1155 * The session has to be created using the current {@link MockTopicConnection}. 1156 * @param indexOfSession the index of the session 1157 * @throws VerifyFailedException if verification fails 1158 */ 1159 public void verifyTopicSessionRecovered(int indexOfSession) 1160 { 1161 MockTopicSession session = checkAndGetTopicSessionByIndex(indexOfSession); 1162 if(!session.isRecovered()) 1163 { 1164 throw new VerifyFailedException("TopicSession is not recovered."); 1165 } 1166 } 1167 1168 /** 1169 * Verifies that the topic session with the specified index was 1170 * not recovered. 1171 * The session has to be created using the current {@link MockTopicConnection}. 1172 * @param indexOfSession the index of the session 1173 * @throws VerifyFailedException if verification fails 1174 */ 1175 public void verifyTopicSessionNotRecovered(int indexOfSession) 1176 { 1177 MockTopicSession session = checkAndGetTopicSessionByIndex(indexOfSession); 1178 if(session.isRecovered()) 1179 { 1180 throw new VerifyFailedException("TopicSession is recovered."); 1181 } 1182 } 1183 1184 /** 1185 * Verifies that the session with the specified index is 1186 * closed. 1187 * The session has to be created using the current {@link MockConnection}. 1188 * @param indexOfSession the index of the session 1189 * @throws VerifyFailedException if verification fails 1190 */ 1191 public void verifySessionClosed(int indexOfSession) 1192 { 1193 MockSession session = checkAndGetSessionByIndex(indexOfSession); 1194 if(!session.isClosed()) 1195 { 1196 throw new VerifyFailedException("Session with index " + indexOfSession + " is not closed."); 1197 } 1198 } 1199 1200 /** 1201 * Verifies that the session with the specified index was 1202 * committed. 1203 * The session has to be created using the current {@link MockConnection}. 1204 * @param indexOfSession the index of the session 1205 * @throws VerifyFailedException if verification fails 1206 */ 1207 public void verifySessionCommitted(int indexOfSession) 1208 { 1209 MockSession session = checkAndGetSessionByIndex(indexOfSession); 1210 if(!session.isCommitted()) 1211 { 1212 throw new VerifyFailedException("Session is not committed."); 1213 } 1214 } 1215 1216 /** 1217 * Verifies that the session with the specified index was 1218 * not committed. 1219 * The session has to be created using the current {@link MockConnection}. 1220 * @param indexOfSession the index of the session 1221 * @throws VerifyFailedException if verification fails 1222 */ 1223 public void verifySessionNotCommitted(int indexOfSession) 1224 { 1225 MockSession session = checkAndGetSessionByIndex(indexOfSession); 1226 if(session.isCommitted()) 1227 { 1228 throw new VerifyFailedException("Session is committed."); 1229 } 1230 } 1231 1232 /** 1233 * Verifies the number of commits of session with the specified index. 1234 * The session has to be created using the current {@link MockConnection}. 1235 * @param indexOfSession the index of the session 1236 * @param numberOfCommits the expected number of commits 1237 * @throws VerifyFailedException if verification fails 1238 */ 1239 public void verifySessionNumberCommits(int indexOfSession, int numberOfCommits) 1240 { 1241 MockSession session = checkAndGetSessionByIndex(indexOfSession); 1242 if(numberOfCommits != session.getNumberCommits()) 1243 { 1244 throw new VerifyFailedException("Session was commited " + session.getNumberCommits() + " times, expected " + numberOfCommits + " times"); 1245 } 1246 } 1247 1248 /** 1249 * Verifies that the session with the specified index was 1250 * rolled back. 1251 * The session has to be created using the current {@link MockConnection}. 1252 * @param indexOfSession the index of the session 1253 * @throws VerifyFailedException if verification fails 1254 */ 1255 public void verifySessionRolledBack(int indexOfSession) 1256 { 1257 MockSession session = checkAndGetSessionByIndex(indexOfSession); 1258 if(!session.isRolledBack()) 1259 { 1260 throw new VerifyFailedException("Session is not rolled back."); 1261 } 1262 } 1263 1264 /** 1265 * Verifies that the session with the specified index was 1266 * not rolled back. 1267 * The session has to be created using the current {@link MockConnection}. 1268 * @param indexOfSession the index of the session 1269 * @throws VerifyFailedException if verification fails 1270 */ 1271 public void verifySessionNotRolledBack(int indexOfSession) 1272 { 1273 MockSession session = checkAndGetSessionByIndex(indexOfSession); 1274 if(session.isRolledBack()) 1275 { 1276 throw new VerifyFailedException("Session is rolled back."); 1277 } 1278 } 1279 1280 /** 1281 * Verifies the number of rollbacks of session with the specified index. 1282 * The session has to be created using the current {@link MockConnection}. 1283 * @param indexOfSession the index of the session 1284 * @param numberOfRollbacks the expected number of rollbacks 1285 * @throws VerifyFailedException if verification fails 1286 */ 1287 public void verifySessionNumberRollbacks(int indexOfSession, int numberOfRollbacks) 1288 { 1289 MockSession session = checkAndGetSessionByIndex(indexOfSession); 1290 if(numberOfRollbacks != session.getNumberRollbacks()) 1291 { 1292 throw new VerifyFailedException("Session was rolled back " + session.getNumberRollbacks() + " times, expected " + numberOfRollbacks + " times"); 1293 } 1294 } 1295 1296 /** 1297 * Verifies that the session with the specified index was 1298 * recovered. 1299 * The session has to be created using the current {@link MockConnection}. 1300 * @param indexOfSession the index of the session 1301 * @throws VerifyFailedException if verification fails 1302 */ 1303 public void verifySessionRecovered(int indexOfSession) 1304 { 1305 MockSession session = checkAndGetSessionByIndex(indexOfSession); 1306 if(!session.isRecovered()) 1307 { 1308 throw new VerifyFailedException("Session is not recovered."); 1309 } 1310 } 1311 1312 /** 1313 * Verifies that the session with the specified index was 1314 * not recovered. 1315 * The session has to be created using the current {@link MockConnection}. 1316 * @param indexOfSession the index of the session 1317 * @throws VerifyFailedException if verification fails 1318 */ 1319 public void verifySessionNotRecovered(int indexOfSession) 1320 { 1321 MockSession session = checkAndGetSessionByIndex(indexOfSession); 1322 if(session.isRecovered()) 1323 { 1324 throw new VerifyFailedException("Session is recovered."); 1325 } 1326 } 1327 1328 /** 1329 * Verifies that all queue sessions are closed. 1330 * The sessions have to be created using the current {@link MockQueueConnection}. 1331 * @throws VerifyFailedException if verification fails 1332 */ 1333 public void verifyAllQueueSessionsClosed() 1334 { 1335 List queueSessions = getQueueSessionList(); 1336 if(null == queueSessions) return; 1337 for(int ii = 0; ii < queueSessions.size(); ii++) 1338 { 1339 MockQueueSession currentSession = (MockQueueSession)queueSessions.get(ii); 1340 if(!currentSession.isClosed()) 1341 { 1342 throw new VerifyFailedException("QueueSession with index " + ii + " is not closed."); 1343 } 1344 } 1345 } 1346 1347 /** 1348 * Verifies that all queue sessions are recovered. 1349 * The sessions have to be created using the current {@link MockQueueConnection}. 1350 * @throws VerifyFailedException if verification fails 1351 */ 1352 public void verifyAllQueueSessionsRecovered() 1353 { 1354 List queueSessions = getQueueSessionList(); 1355 if(null == queueSessions) return; 1356 for(int ii = 0; ii < queueSessions.size(); ii++) 1357 { 1358 MockQueueSession currentSession = (MockQueueSession)queueSessions.get(ii); 1359 if(!currentSession.isRecovered()) 1360 { 1361 throw new VerifyFailedException("QueueSession with index " + ii + " is not recovered."); 1362 } 1363 } 1364 } 1365 1366 /** 1367 * Verifies that all queue sessions were commited. 1368 * The sessions have to be created using the current {@link MockQueueConnection}. 1369 * @throws VerifyFailedException if verification fails 1370 */ 1371 public void verifyAllQueueSessionsCommitted() 1372 { 1373 List queueSessions = getQueueSessionList(); 1374 if(null == queueSessions) return; 1375 for(int ii = 0; ii < queueSessions.size(); ii++) 1376 { 1377 MockQueueSession currentSession = (MockQueueSession)queueSessions.get(ii); 1378 if(!currentSession.isCommitted()) 1379 { 1380 throw new VerifyFailedException("QueueSession with index " + ii + " is not committed."); 1381 } 1382 } 1383 } 1384 1385 /** 1386 * Verifies that all queue sessions were rolled back. 1387 * The sessions have to be created using the current {@link MockQueueConnection}. 1388 * @throws VerifyFailedException if verification fails 1389 */ 1390 public void verifyAllQueueSessionsRolledBack() 1391 { 1392 List queueSessions = getQueueSessionList(); 1393 if(null == queueSessions) return; 1394 for(int ii = 0; ii < queueSessions.size(); ii++) 1395 { 1396 MockQueueSession currentSession = (MockQueueSession)queueSessions.get(ii); 1397 if(!currentSession.isRolledBack()) 1398 { 1399 throw new VerifyFailedException("QueueSession with index " + ii + " is not rolled back."); 1400 } 1401 } 1402 } 1403 1404 /** 1405 * Verifies that all topic sessions are closed. 1406 * The sessions have to be created using the current {@link MockTopicConnection}. 1407 * @throws VerifyFailedException if verification fails 1408 */ 1409 public void verifyAllTopicSessionsClosed() 1410 { 1411 List topicSessions = getTopicSessionList(); 1412 if(null == topicSessions) return; 1413 for(int ii = 0; ii < topicSessions.size(); ii++) 1414 { 1415 MockTopicSession currentSession = (MockTopicSession)topicSessions.get(ii); 1416 if(!currentSession.isClosed()) 1417 { 1418 throw new VerifyFailedException("TopicSession with index " + ii + " is not closed."); 1419 } 1420 } 1421 } 1422 1423 /** 1424 * Verifies that all topic sessions are recovered. 1425 * The sessions have to be created using the current {@link MockTopicConnection}. 1426 * @throws VerifyFailedException if verification fails 1427 */ 1428 public void verifyAllTopicSessionsRecovered() 1429 { 1430 List topicSessions = getTopicSessionList(); 1431 if(null == topicSessions) return; 1432 for(int ii = 0; ii < topicSessions.size(); ii++) 1433 { 1434 MockTopicSession currentSession = (MockTopicSession)topicSessions.get(ii); 1435 if(!currentSession.isRecovered()) 1436 { 1437 throw new VerifyFailedException("TopicSession with index " + ii + " is not recovered."); 1438 } 1439 } 1440 } 1441 1442 /** 1443 * Verifies that all topic sessions were commited. 1444 * The sessions have to be created using the current {@link MockTopicConnection}. 1445 * @throws VerifyFailedException if verification fails 1446 */ 1447 public void verifyAllTopicSessionsCommitted() 1448 { 1449 List topicSessions = getTopicSessionList(); 1450 if(null == topicSessions) return; 1451 for(int ii = 0; ii < topicSessions.size(); ii++) 1452 { 1453 MockTopicSession currentSession = (MockTopicSession)topicSessions.get(ii); 1454 if(!currentSession.isCommitted()) 1455 { 1456 throw new VerifyFailedException("TopicSession with index " + ii + " is not committed."); 1457 } 1458 } 1459 } 1460 1461 /** 1462 * Verifies that all topic sessions were rolled back. 1463 * The sessions have to be created using the current {@link MockTopicConnection}. 1464 * @throws VerifyFailedException if verification fails 1465 */ 1466 public void verifyAllTopicSessionsRolledBack() 1467 { 1468 List topicSessions = getTopicSessionList(); 1469 if(null == topicSessions) return; 1470 for(int ii = 0; ii < topicSessions.size(); ii++) 1471 { 1472 MockTopicSession currentSession = (MockTopicSession)topicSessions.get(ii); 1473 if(!currentSession.isRolledBack()) 1474 { 1475 throw new VerifyFailedException("TopicSession with index " + ii + " is not rolled back."); 1476 } 1477 } 1478 } 1479 1480 /** 1481 * Verifies that all sessions are closed. 1482 * The sessions have to be created using the current {@link MockConnection}. 1483 * @throws VerifyFailedException if verification fails 1484 */ 1485 public void verifyAllSessionsClosed() 1486 { 1487 List sessions = getSessionList(); 1488 if(null == sessions) return; 1489 for(int ii = 0; ii < sessions.size(); ii++) 1490 { 1491 MockSession currentSession = (MockSession)sessions.get(ii); 1492 if(!currentSession.isClosed()) 1493 { 1494 throw new VerifyFailedException("Session with index " + ii + " is not closed."); 1495 } 1496 } 1497 } 1498 1499 /** 1500 * Verifies that all sessions are recovered. 1501 * The sessions have to be created using the current {@link MockConnection}. 1502 * @throws VerifyFailedException if verification fails 1503 */ 1504 public void verifyAllSessionsRecovered() 1505 { 1506 List sessions = getSessionList(); 1507 if(null == sessions) return; 1508 for(int ii = 0; ii < sessions.size(); ii++) 1509 { 1510 MockSession currentSession = (MockSession)sessions.get(ii); 1511 if(!currentSession.isRecovered()) 1512 { 1513 throw new VerifyFailedException("Session with index " + ii + " is not recovered."); 1514 } 1515 } 1516 } 1517 1518 /** 1519 * Verifies that all sessions were commited. 1520 * The sessions have to be created using the current {@link MockConnection}. 1521 * @throws VerifyFailedException if verification fails 1522 */ 1523 public void verifyAllSessionsCommitted() 1524 { 1525 List sessions = getSessionList(); 1526 if(null == sessions) return; 1527 for(int ii = 0; ii < sessions.size(); ii++) 1528 { 1529 MockSession currentSession = (MockSession)sessions.get(ii); 1530 if(!currentSession.isCommitted()) 1531 { 1532 throw new VerifyFailedException("Session with index " + ii + " is not committed."); 1533 } 1534 } 1535 } 1536 1537 /** 1538 * Verifies that all topic sessions were rolled back. 1539 * The sessions have to be created using the current {@link MockConnection}. 1540 * @throws VerifyFailedException if verification fails 1541 */ 1542 public void verifyAllSessionsRolledBack() 1543 { 1544 List sessions = getSessionList(); 1545 if(null == sessions) return; 1546 for(int ii = 0; ii < sessions.size(); ii++) 1547 { 1548 MockSession currentSession = (MockSession)sessions.get(ii); 1549 if(!currentSession.isRolledBack()) 1550 { 1551 throw new VerifyFailedException("Session with index " + ii + " is not rolled back."); 1552 } 1553 } 1554 } 1555 1556 /** 1557 * Verifies the number of producers for the specified session. 1558 * The session has to be created using the current {@link MockConnection}. 1559 * @param indexOfSession the index of the session 1560 * @param numberOfProducers the expected number of producers 1561 * @throws VerifyFailedException if verification fails 1562 */ 1563 public void verifyNumberMessageProducers(int indexOfSession, int numberOfProducers) 1564 { 1565 checkAndGetSessionByIndex(indexOfSession); 1566 TransmissionManagerWrapper manager = getTransmissionManagerWrapper(indexOfSession); 1567 if(numberOfProducers != manager.getMessageProducerList().size()) 1568 { 1569 throw new VerifyFailedException("Expected " + numberOfProducers + " producers, actually " + manager.getMessageProducerList().size() + " producers present"); 1570 } 1571 } 1572 1573 /** 1574 * Verifies that all producers for the specified session are closed. 1575 * The session has to be created using the current {@link MockConnection}. 1576 * @param indexOfSession the index of the session 1577 * @throws VerifyFailedException if verification fails 1578 */ 1579 public void verifyAllMessageProducersClosed(int indexOfSession) 1580 { 1581 checkAndGetSessionByIndex(indexOfSession); 1582 TransmissionManagerWrapper manager = getTransmissionManagerWrapper(indexOfSession); 1583 List producers = manager.getMessageProducerList(); 1584 for(int ii = 0; ii < producers.size(); ii++) 1585 { 1586 MockMessageProducer currentProducer = (MockMessageProducer)producers.get(ii); 1587 if(!currentProducer.isClosed()) 1588 { 1589 throw new VerifyFailedException("MessageProducer with index " + ii + " not closed."); 1590 } 1591 } 1592 } 1593 1594 /** 1595 * Verifies the number of senders for the specified session. 1596 * The session has to be created using the current {@link MockQueueConnection}. 1597 * @param indexOfSession the index of the session 1598 * @param numberOfSenders the expected number of senders 1599 * @throws VerifyFailedException if verification fails 1600 */ 1601 public void verifyNumberQueueSenders(int indexOfSession, int numberOfSenders) 1602 { 1603 checkAndGetQueueSessionByIndex(indexOfSession); 1604 TransmissionManagerWrapper manager = getQueueTransmissionManagerWrapper(indexOfSession); 1605 if(numberOfSenders != manager.getQueueSenderList().size()) 1606 { 1607 throw new VerifyFailedException("Expected " + numberOfSenders + " senders, actually " + manager.getQueueSenderList().size() + " senders present"); 1608 } 1609 } 1610 1611 /** 1612 * Verifies the number of senders for the specified session and 1613 * the specified queue name. 1614 * The session has to be created using the current {@link MockQueueConnection}. 1615 * @param indexOfSession the index of the session 1616 * @param queueName the name of the queue 1617 * @param numberOfSenders the expected number of senders 1618 * @throws VerifyFailedException if verification fails 1619 */ 1620 public void verifyNumberQueueSenders(int indexOfSession, String queueName, int numberOfSenders) 1621 { 1622 checkAndGetQueueSessionByIndex(indexOfSession); 1623 checkQueueByName(queueName); 1624 QueueTransmissionManager manager = getQueueTransmissionManager(indexOfSession); 1625 if(numberOfSenders != manager.getQueueSenderList(queueName).size()) 1626 { 1627 throw new VerifyFailedException("Expected " + numberOfSenders + " senders for queue " + queueName + ", actually " + manager.getQueueSenderList(queueName).size() + " senders present"); 1628 } 1629 } 1630 1631 /** 1632 * Verifies that the specified sender is closed. 1633 * The session has to be created using the current {@link MockQueueConnection}. 1634 * @param indexOfSession the index of the session 1635 * @param queueName the name of the queue 1636 * @param indexOfSender the index of the sender 1637 * @throws VerifyFailedException if verification fails 1638 */ 1639 public void verifyQueueSenderClosed(int indexOfSession, String queueName, int indexOfSender) 1640 { 1641 checkAndGetQueueSessionByIndex(indexOfSession); 1642 checkQueueByName(queueName); 1643 QueueTransmissionManager manager = getQueueTransmissionManager(indexOfSession); 1644 List senders = manager.getQueueSenderList(queueName); 1645 if(indexOfSender >= senders.size()) 1646 { 1647 throw new VerifyFailedException("QueueSender with index " + indexOfSender + " is not present."); 1648 } 1649 MockQueueSender sender = (MockQueueSender)senders.get(indexOfSender); 1650 if(!sender.isClosed()) 1651 { 1652 throw new VerifyFailedException("QueueSender of queue " + queueName + " with index " + indexOfSender + " not closed."); 1653 } 1654 } 1655 1656 /** 1657 * Verifies that all senders for the specified session are closed. 1658 * The session has to be created using the current {@link MockQueueConnection}. 1659 * @param indexOfSession the index of the session 1660 * @throws VerifyFailedException if verification fails 1661 */ 1662 public void verifyAllQueueSendersClosed(int indexOfSession) 1663 { 1664 checkAndGetQueueSessionByIndex(indexOfSession); 1665 TransmissionManagerWrapper manager = getQueueTransmissionManagerWrapper(indexOfSession); 1666 List senders = manager.getQueueSenderList(); 1667 for(int ii = 0; ii < senders.size(); ii++) 1668 { 1669 MockQueueSender currentSender = (MockQueueSender)senders.get(ii); 1670 if(!currentSender.isClosed()) 1671 { 1672 throw new VerifyFailedException("QueueSender with index " + ii + " not closed."); 1673 } 1674 } 1675 } 1676 1677 /** 1678 * Verifies the number of publishers for the specified session. 1679 * The session has to be created using the current {@link MockTopicConnection}. 1680 * @param indexOfSession the index of the session 1681 * @param numberOfPublishers the expected number of publishers 1682 * @throws VerifyFailedException if verification fails 1683 */ 1684 public void verifyNumberTopicPublishers(int indexOfSession, int numberOfPublishers) 1685 { 1686 checkAndGetTopicSessionByIndex(indexOfSession); 1687 TransmissionManagerWrapper manager = getTopicTransmissionManagerWrapper(indexOfSession); 1688 if(numberOfPublishers != manager.getTopicPublisherList().size()) 1689 { 1690 throw new VerifyFailedException("Expected " + numberOfPublishers + " publishers, actually " + manager.getTopicPublisherList().size() + " publishers present"); 1691 } 1692 } 1693 1694 /** 1695 * Verifies the number of publishers for the specified session and 1696 * the specified topic name. 1697 * The session has to be created using the current {@link MockTopicConnection}. 1698 * @param indexOfSession the index of the session 1699 * @param topicName the name of the topic 1700 * @param numberOfPublishers the expected number of publishers 1701 * @throws VerifyFailedException if verification fails 1702 */ 1703 public void verifyNumberTopicPublishers(int indexOfSession, String topicName, int numberOfPublishers) 1704 { 1705 checkAndGetTopicSessionByIndex(indexOfSession); 1706 checkTopicByName(topicName); 1707 TopicTransmissionManager manager = getTopicTransmissionManager(indexOfSession); 1708 if(numberOfPublishers != manager.getTopicPublisherList(topicName).size()) 1709 { 1710 throw new VerifyFailedException("Expected " + numberOfPublishers + " publishers for topic " + topicName + ", actually " + manager.getTopicPublisherList(topicName).size() + " publishers present"); 1711 } 1712 } 1713 1714 /** 1715 * Verifies that the specified publisher is closed. 1716 * The session has to be created using the current {@link MockTopicConnection}. 1717 * @param indexOfSession the index of the session 1718 * @param topicName the name of the topic 1719 * @param indexOfPublisher the index of the publisher 1720 * @throws VerifyFailedException if verification fails 1721 */ 1722 public void verifyTopicPublisherClosed(int indexOfSession, String topicName, int indexOfPublisher) 1723 { 1724 checkAndGetTopicSessionByIndex(indexOfSession); 1725 checkTopicByName(topicName); 1726 TopicTransmissionManager manager = getTopicTransmissionManager(indexOfSession); 1727 List publishers = manager.getTopicPublisherList(topicName); 1728 if(indexOfPublisher >= publishers.size()) 1729 { 1730 throw new VerifyFailedException("TopicPublisher with index " + indexOfPublisher + " is not present."); 1731 } 1732 MockTopicPublisher publisher = (MockTopicPublisher)publishers.get(indexOfPublisher); 1733 if(!publisher.isClosed()) 1734 { 1735 throw new VerifyFailedException("TopicPublisher of topic " + topicName + " with index " + indexOfPublisher + " not closed."); 1736 } 1737 } 1738 1739 /** 1740 * Verifies that all publishers for the specified session are closed. 1741 * The session has to be created using the current {@link MockTopicConnection}. 1742 * @param indexOfSession the index of the session 1743 * @throws VerifyFailedException if verification fails 1744 */ 1745 public void verifyAllTopicPublishersClosed(int indexOfSession) 1746 { 1747 checkAndGetTopicSessionByIndex(indexOfSession); 1748 TransmissionManagerWrapper manager = getTopicTransmissionManagerWrapper(indexOfSession); 1749 List publishers = manager.getTopicPublisherList(); 1750 for(int ii = 0; ii < publishers.size(); ii++) 1751 { 1752 MockTopicPublisher currentPublisher = (MockTopicPublisher)publishers.get(ii); 1753 if(!currentPublisher.isClosed()) 1754 { 1755 throw new VerifyFailedException("TopicPublisher with index " + ii + " not closed."); 1756 } 1757 } 1758 } 1759 1760 /** 1761 * Verifies the number of consumers for the specified session. 1762 * The session has to be created using the current {@link MockConnection}. 1763 * @param indexOfSession the index of the session 1764 * @param numberOfConsumers the expected number of consumers 1765 * @throws VerifyFailedException if verification fails 1766 */ 1767 public void verifyNumberMessageConsumers(int indexOfSession, int numberOfConsumers) 1768 { 1769 checkAndGetSessionByIndex(indexOfSession); 1770 TransmissionManagerWrapper manager = getTransmissionManagerWrapper(indexOfSession); 1771 if(numberOfConsumers != manager.getMessageConsumerList().size()) 1772 { 1773 throw new VerifyFailedException("Expected " + numberOfConsumers + " consumers, actually " + manager.getMessageConsumerList().size() + " consumers present"); 1774 } 1775 } 1776 1777 /** 1778 * Verifies that all consumers for the specified session are closed. 1779 * The session has to be created using the current {@link MockConnection}. 1780 * @param indexOfSession the index of the session 1781 * @throws VerifyFailedException if verification fails 1782 */ 1783 public void verifyAllMessageConsumersClosed(int indexOfSession) 1784 { 1785 checkAndGetSessionByIndex(indexOfSession); 1786 TransmissionManagerWrapper manager = getTransmissionManagerWrapper(indexOfSession); 1787 List consumers = manager.getMessageConsumerList(); 1788 for(int ii = 0; ii < consumers.size(); ii++) 1789 { 1790 MockMessageConsumer currentConsumer = (MockMessageConsumer)consumers.get(ii); 1791 if(!currentConsumer.isClosed()) 1792 { 1793 throw new VerifyFailedException("MessageConsumer with index " + ii + " not closed."); 1794 } 1795 } 1796 } 1797 1798 /** 1799 * Verifies the number of receivers for the specified session. 1800 * The session has to be created using the current {@link MockQueueConnection}. 1801 * @param indexOfSession the index of the session 1802 * @param numberOfReceivers the expected number of receivers 1803 * @throws VerifyFailedException if verification fails 1804 */ 1805 public void verifyNumberQueueReceivers(int indexOfSession, int numberOfReceivers) 1806 { 1807 checkAndGetQueueSessionByIndex(indexOfSession); 1808 QueueTransmissionManager manager = getQueueTransmissionManager(indexOfSession); 1809 if(numberOfReceivers != manager.getQueueReceiverList().size()) 1810 { 1811 throw new VerifyFailedException("Expected " + numberOfReceivers + " receivers, actually " + manager.getQueueReceiverList().size() + " receivers present"); 1812 } 1813 } 1814 1815 /** 1816 * Verifies the number of receivers for the specified session and 1817 * the specified queue name. 1818 * The session has to be created using the current {@link MockQueueConnection}. 1819 * @param indexOfSession the index of the session 1820 * @param queueName the name of the queue 1821 * @param numberOfReceivers the expected number of receivers 1822 * @throws VerifyFailedException if verification fails 1823 */ 1824 public void verifyNumberQueueReceivers(int indexOfSession, String queueName, int numberOfReceivers) 1825 { 1826 checkAndGetQueueSessionByIndex(indexOfSession); 1827 checkQueueByName(queueName); 1828 QueueTransmissionManager manager = getQueueTransmissionManager(indexOfSession); 1829 if(numberOfReceivers != manager.getQueueReceiverList(queueName).size()) 1830 { 1831 throw new VerifyFailedException("Expected " + numberOfReceivers + " receivers for queue " + queueName + ", actually " + manager.getQueueReceiverList(queueName).size() + " receivers present"); 1832 } 1833 } 1834 1835 /** 1836 * Verifies that the specified receiver is closed. 1837 * The session has to be created using the current {@link MockQueueConnection}. 1838 * @param indexOfSession the index of the session 1839 * @param queueName the name of the queue 1840 * @param indexOfReceiver the index of the receiver 1841 * @throws VerifyFailedException if verification fails 1842 */ 1843 public void verifyQueueReceiverClosed(int indexOfSession, String queueName, int indexOfReceiver) 1844 { 1845 checkAndGetQueueSessionByIndex(indexOfSession); 1846 checkQueueByName(queueName); 1847 QueueTransmissionManager manager = getQueueTransmissionManager(indexOfSession); 1848 List receivers = manager.getQueueReceiverList(queueName); 1849 if(indexOfReceiver >= receivers.size()) 1850 { 1851 throw new VerifyFailedException("QueueReceiver with index " + indexOfReceiver + " is not present."); 1852 } 1853 MockQueueReceiver receiver = (MockQueueReceiver)receivers.get(indexOfReceiver); 1854 if(!receiver.isClosed()) 1855 { 1856 throw new VerifyFailedException("QueueReceiver of queue " + queueName + " with index " + indexOfReceiver + " not closed."); 1857 } 1858 } 1859 1860 /** 1861 * Verifies that all receivers for the specified session are closed. 1862 * The session has to be created using the current {@link MockQueueConnection}. 1863 * @param indexOfSession the index of the session 1864 * @throws VerifyFailedException if verification fails 1865 */ 1866 public void verifyAllQueueReceiversClosed(int indexOfSession) 1867 { 1868 checkAndGetQueueSessionByIndex(indexOfSession); 1869 QueueTransmissionManager manager = getQueueTransmissionManager(indexOfSession); 1870 List receivers = manager.getQueueReceiverList(); 1871 for(int ii = 0; ii < receivers.size(); ii++) 1872 { 1873 MockQueueReceiver currentReceiver = (MockQueueReceiver)receivers.get(ii); 1874 if(!currentReceiver.isClosed()) 1875 { 1876 throw new VerifyFailedException("QueueReceiver with index " + ii + " not closed."); 1877 } 1878 } 1879 } 1880 1881 /** 1882 * Verifies the number of subscribers for the specified session. 1883 * The session has to be created using the current {@link MockTopicConnection}. 1884 * @param indexOfSession the index of the session 1885 * @param numberOfSubscribers the expected number of subscribers 1886 * @throws VerifyFailedException if verification fails 1887 */ 1888 public void verifyNumberTopicSubscribers(int indexOfSession, int numberOfSubscribers) 1889 { 1890 checkAndGetTopicSessionByIndex(indexOfSession); 1891 TopicTransmissionManager manager = getTopicTransmissionManager(indexOfSession); 1892 if(numberOfSubscribers != manager.getTopicSubscriberList().size()) 1893 { 1894 throw new VerifyFailedException("Expected " + numberOfSubscribers + " subscribers, actually " + manager.getTopicSubscriberList().size() + " subscribers present"); 1895 } 1896 } 1897 1898 /** 1899 * Verifies the number of subscribers for the specified session and 1900 * the specified topic name. 1901 * The session has to be created using the current {@link MockTopicConnection}. 1902 * @param indexOfSession the index of the session 1903 * @param topicName the name of the topic 1904 * @param numberOfSubscribers the expected number of subscribers 1905 * @throws VerifyFailedException if verification fails 1906 */ 1907 public void verifyNumberTopicSubscribers(int indexOfSession, String topicName, int numberOfSubscribers) 1908 { 1909 checkAndGetTopicSessionByIndex(indexOfSession); 1910 checkTopicByName(topicName); 1911 TopicTransmissionManager manager = getTopicTransmissionManager(indexOfSession); 1912 if(numberOfSubscribers != manager.getTopicSubscriberList(topicName).size()) 1913 { 1914 throw new VerifyFailedException("Expected " + numberOfSubscribers + " subscribers for topic " + topicName + ", actually " + manager.getTopicSubscriberList(topicName).size() + " subscribers present"); 1915 } 1916 } 1917 1918 /** 1919 * Verifies that the specified subscriber is closed. 1920 * The session has to be created using the current {@link MockTopicConnection}. 1921 * @param indexOfSession the index of the session 1922 * @param topicName the name of the topic 1923 * @param indexOfSubscriber the index of the receiver 1924 * @throws VerifyFailedException if verification fails 1925 */ 1926 public void verifyTopicSubscriberClosed(int indexOfSession, String topicName, int indexOfSubscriber) 1927 { 1928 checkAndGetTopicSessionByIndex(indexOfSession); 1929 checkTopicByName(topicName); 1930 TopicTransmissionManager manager = getTopicTransmissionManager(indexOfSession); 1931 List subscribers = manager.getTopicSubscriberList(topicName); 1932 if(indexOfSubscriber >= subscribers.size()) 1933 { 1934 throw new VerifyFailedException("TopicSubscriber with index " + indexOfSubscriber + " is not present."); 1935 } 1936 MockTopicSubscriber subscriber = (MockTopicSubscriber)subscribers.get(indexOfSubscriber); 1937 if(!subscriber.isClosed()) 1938 { 1939 throw new VerifyFailedException("TopicSubscriber of topic " + topicName + " with index " + indexOfSubscriber + " not closed."); 1940 } 1941 } 1942 1943 /** 1944 * Verifies that all subscribers for the specified session are closed. 1945 * The session has to be created using the current {@link MockTopicConnection}. 1946 * @param indexOfSession the index of the session 1947 * @throws VerifyFailedException if verification fails 1948 */ 1949 public void verifyAllTopicSubscribersClosed(int indexOfSession) 1950 { 1951 checkAndGetTopicSessionByIndex(indexOfSession); 1952 TopicTransmissionManager manager = getTopicTransmissionManager(indexOfSession); 1953 List subscribers = manager.getTopicSubscriberList(); 1954 for(int ii = 0; ii < subscribers.size(); ii++) 1955 { 1956 MockTopicSubscriber currentSubscriber = (MockTopicSubscriber)subscribers.get(ii); 1957 if(!currentSubscriber.isClosed()) 1958 { 1959 throw new VerifyFailedException("TopicSubscriber with index " + ii + " not closed."); 1960 } 1961 } 1962 } 1963 1964 /** 1965 * Verifies the number of browsers for the specified session. 1966 * The session has to be created using the current {@link MockQueueConnection}. 1967 * @param indexOfSession the index of the session 1968 * @param numberOfBrowsers the expected number of browsers 1969 * @throws VerifyFailedException if verification fails 1970 */ 1971 public void verifyNumberQueueBrowsers(int indexOfSession, int numberOfBrowsers) 1972 { 1973 checkAndGetQueueSessionByIndex(indexOfSession); 1974 QueueTransmissionManager manager = getQueueTransmissionManager(indexOfSession); 1975 if(numberOfBrowsers != manager.getQueueBrowserList().size()) 1976 { 1977 throw new VerifyFailedException("Expected " + numberOfBrowsers + " browsers, actually " + manager.getQueueBrowserList().size() + " browsers present"); 1978 } 1979 } 1980 1981 /** 1982 * Verifies the number of browsers for the specified session and 1983 * the specified queue name. 1984 * The session has to be created using the current {@link MockQueueConnection}. 1985 * @param indexOfSession the index of the session 1986 * @param queueName the name of the queue 1987 * @param numberOfBrowsers the expected number of browsers 1988 * @throws VerifyFailedException if verification fails 1989 */ 1990 public void verifyNumberQueueBrowsers(int indexOfSession, String queueName, int numberOfBrowsers) 1991 { 1992 checkAndGetQueueSessionByIndex(indexOfSession); 1993 checkQueueByName(queueName); 1994 QueueTransmissionManager manager = getQueueTransmissionManager(indexOfSession); 1995 if(numberOfBrowsers != manager.getQueueBrowserList(queueName).size()) 1996 { 1997 throw new VerifyFailedException("Expected " + numberOfBrowsers + " browsers for queue " + queueName + ", actually " + manager.getQueueBrowserList(queueName).size() + " browsers present"); 1998 } 1999 } 2000 2001 /** 2002 * Verifies that the specified browser is closed. 2003 * The session has to be created using the current {@link MockQueueConnection}. 2004 * @param indexOfSession the index of the session 2005 * @param queueName the name of the queue 2006 * @param indexOfBrowser the index of the browser 2007 * @throws VerifyFailedException if verification fails 2008 */ 2009 public void verifyQueueBrowserClosed(int indexOfSession, String queueName, int indexOfBrowser) 2010 { 2011 checkAndGetQueueSessionByIndex(indexOfSession); 2012 checkQueueByName(queueName); 2013 QueueTransmissionManager manager = getQueueTransmissionManager(indexOfSession); 2014 List browsers = manager.getQueueBrowserList(queueName); 2015 if(indexOfBrowser >= browsers.size()) 2016 { 2017 throw new VerifyFailedException("QueueBrowser with index " + indexOfBrowser + " is not present."); 2018 } 2019 MockQueueBrowser browser = (MockQueueBrowser)browsers.get(indexOfBrowser); 2020 if(!browser.isClosed()) 2021 { 2022 throw new VerifyFailedException("QueueBrowser of queue " + queueName + " with index " + indexOfBrowser + " not closed."); 2023 } 2024 } 2025 2026 /** 2027 * Verifies that all browsers for the specified session are closed. 2028 * The session has to be created using the current {@link MockQueueConnection}. 2029 * @param indexOfSession the index of the session 2030 * @throws VerifyFailedException if verification fails 2031 */ 2032 public void verifyAllQueueBrowsersClosed(int indexOfSession) 2033 { 2034 checkAndGetQueueSessionByIndex(indexOfSession); 2035 QueueTransmissionManager manager = getQueueTransmissionManager(indexOfSession); 2036 List browsers = manager.getQueueBrowserList(); 2037 for(int ii = 0; ii < browsers.size(); ii++) 2038 { 2039 MockQueueBrowser currentBrowser = (MockQueueBrowser)browsers.get(ii); 2040 if(!currentBrowser.isClosed()) 2041 { 2042 throw new VerifyFailedException("QueueBrowser with index " + ii + " not closed."); 2043 } 2044 } 2045 } 2046 2047 /** 2048 * Verifies that a durable subscriber exists. 2049 * The session has to be created using the current {@link MockTopicConnection}. 2050 * @param indexOfSession the index of the session 2051 * @param name the name of the subscription 2052 * @throws VerifyFailedException if verification fails 2053 */ 2054 public void verifyDurableTopicSubscriberPresent(int indexOfSession, String name) 2055 { 2056 checkAndGetTopicSessionByIndex(indexOfSession); 2057 TopicTransmissionManager manager = getTopicTransmissionManager(indexOfSession); 2058 if(null == manager.getDurableTopicSubscriber(name)) 2059 { 2060 throw new VerifyFailedException("Durable subscriber with subscription name " + name + " not present."); 2061 } 2062 } 2063 2064 /** 2065 * Verifies the number of durable subscribers for the specified session. 2066 * The session has to be created using the current {@link MockTopicConnection}. 2067 * @param indexOfSession the index of the session 2068 * @param numberOfSubscribers the expected number of durable subscribers 2069 * @throws VerifyFailedException if verification fails 2070 */ 2071 public void verifyNumberDurableTopicSubscribers(int indexOfSession, int numberOfSubscribers) 2072 { 2073 checkAndGetTopicSessionByIndex(indexOfSession); 2074 TopicTransmissionManager manager = getTopicTransmissionManager(indexOfSession); 2075 if(numberOfSubscribers != manager.getDurableTopicSubscriberMap().size()) 2076 { 2077 throw new VerifyFailedException("Expected " + numberOfSubscribers + " durable subscribers, actually " + manager.getDurableTopicSubscriberMap().size() + " durable subscribers present"); 2078 } 2079 } 2080 2081 /** 2082 * Verifies the number of durable subscribers for the specified session and 2083 * the specified topic name. 2084 * The session has to be created using the current {@link MockTopicConnection}. 2085 * @param indexOfSession the index of the session 2086 * @param topicName the name of the topic 2087 * @param numberOfSubscribers the expected number of durable subscribers 2088 * @throws VerifyFailedException if verification fails 2089 */ 2090 public void verifyNumberDurableTopicSubscribers(int indexOfSession, String topicName, int numberOfSubscribers) 2091 { 2092 checkAndGetTopicSessionByIndex(indexOfSession); 2093 checkTopicByName(topicName); 2094 TopicTransmissionManager manager = getTopicTransmissionManager(indexOfSession); 2095 if(numberOfSubscribers != manager.getDurableTopicSubscriberMap(topicName).size()) 2096 { 2097 throw new VerifyFailedException("Expected " + numberOfSubscribers + " durable subscribers for topic " + topicName + ", actually " + manager.getDurableTopicSubscriberMap(topicName).size() + " durable subscribers present"); 2098 } 2099 } 2100 2101 /** 2102 * Verifies that the specified durable subscriber is closed. 2103 * The session has to be created using the current {@link MockTopicConnection}. 2104 * @param indexOfSession the index of the session 2105 * @param name the name of the subscription 2106 * @throws VerifyFailedException if verification fails 2107 */ 2108 public void verifyDurableTopicSubscriberClosed(int indexOfSession, String name) 2109 { 2110 checkAndGetTopicSessionByIndex(indexOfSession); 2111 TopicTransmissionManager manager = getTopicTransmissionManager(indexOfSession); 2112 MockTopicSubscriber subscriber = (MockTopicSubscriber)manager.getDurableTopicSubscriber(name); 2113 if(null == subscriber) 2114 { 2115 throw new VerifyFailedException("Durable TopicSubscriber with subscription name " + name + " not present."); 2116 } 2117 if(!subscriber.isClosed()) 2118 { 2119 throw new VerifyFailedException("Durable TopicSubscriber with subscription name " + name + " not closed."); 2120 } 2121 } 2122 2123 /** 2124 * Verifies that all durable subscribers for the specified session are closed. 2125 * The session has to be created using the current {@link MockTopicConnection}. 2126 * @param indexOfSession the index of the session 2127 * @throws VerifyFailedException if verification fails 2128 */ 2129 public void verifyAllDurableTopicSubscribersClosed(int indexOfSession) 2130 { 2131 checkAndGetTopicSessionByIndex(indexOfSession); 2132 TopicTransmissionManager manager = getTopicTransmissionManager(indexOfSession); 2133 Iterator keys = manager.getDurableTopicSubscriberMap().keySet().iterator(); 2134 while(keys.hasNext()) 2135 { 2136 MockTopicSubscriber currentSubscriber = (MockTopicSubscriber)manager.getDurableTopicSubscriberMap().get(keys.next()); 2137 if(!currentSubscriber.isClosed()) 2138 { 2139 throw new VerifyFailedException("Durable TopicSubscriber with name " + currentSubscriber.getName() + " not closed."); 2140 } 2141 } 2142 } 2143 2144 /** 2145 * Verifies the number of queue sessions. 2146 * The sessions have to be created using the current {@link MockQueueConnection}. 2147 * @param number the expected number of queue sessions 2148 * @throws VerifyFailedException if verification fails 2149 */ 2150 public void verifyNumberQueueSessions(int number) 2151 { 2152 if(number != getQueueSessionList().size()) 2153 { 2154 throw new VerifyFailedException("Expected " + number + " queue sessions, actually " + getQueueSessionList().size() + " sessions present"); 2155 } 2156 } 2157 2158 /** 2159 * Verifies the number of topic sessions. 2160 * The sessions have to be created using the current {@link MockTopicConnection}. 2161 * @param number the expected number of topic sessions 2162 * @throws VerifyFailedException if verification fails 2163 */ 2164 public void verifyNumberTopicSessions(int number) 2165 { 2166 if(number != getTopicSessionList().size()) 2167 { 2168 throw new VerifyFailedException("Expected " + number + " topic sessions, actually " + getTopicSessionList().size() + " sessions present"); 2169 } 2170 } 2171 2172 /** 2173 * Verifies the number of sessions. 2174 * The sessions have to be created using the current {@link MockConnection}. 2175 * @param number the expected number of sessions 2176 * @throws VerifyFailedException if verification fails 2177 */ 2178 public void verifyNumberSessions(int number) 2179 { 2180 if(number != getSessionList().size()) 2181 { 2182 throw new VerifyFailedException("Expected " + number + " sessions, actually " + getSessionList().size() + " sessions present"); 2183 } 2184 } 2185 2186 /** 2187 * Verifies the number of temporary queues. 2188 * The session has to be created using the current {@link MockQueueConnection}. 2189 * @param indexOfSession the index of the session 2190 * @param numberQueues the expected number of temporary queues 2191 * @throws VerifyFailedException if verification fails 2192 */ 2193 public void verifyNumberTemporaryQueues(int indexOfSession, int numberQueues) 2194 { 2195 checkAndGetQueueSessionByIndex(indexOfSession); 2196 if(numberQueues != getTemporaryQueueList(indexOfSession).size()) 2197 { 2198 throw new VerifyFailedException("Expected " + numberQueues + " temporary queues, actually " + getTemporaryQueueList(indexOfSession).size() + " temporary queues present"); 2199 } 2200 } 2201 2202 /** 2203 * Verifies the number of temporary topics. 2204 * The session has to be created using the current {@link MockTopicConnection}. 2205 * @param indexOfSession the index of the session 2206 * @param numberTopics the expected number of temporary topics 2207 * @throws VerifyFailedException if verification fails 2208 */ 2209 public void verifyNumberTemporaryTopics(int indexOfSession, int numberTopics) 2210 { 2211 checkAndGetTopicSessionByIndex(indexOfSession); 2212 if(numberTopics != getTemporaryTopicList(indexOfSession).size()) 2213 { 2214 throw new VerifyFailedException("Expected " + numberTopics + " temporary topics, actually " + getTemporaryTopicList(indexOfSession).size() + " temporary topics present"); 2215 } 2216 } 2217 2218 /** 2219 * Verifies that the temporary queue with the specified index 2220 * was deleted. 2221 * The session has to be created using the current {@link MockQueueConnection}. 2222 * @param indexOfSession the index of the session 2223 * @param indexOfQueue the index of the queue 2224 * @throws VerifyFailedException if verification fails 2225 */ 2226 public void verifyTemporaryQueueDeleted(int indexOfSession, int indexOfQueue) 2227 { 2228 checkAndGetQueueSessionByIndex(indexOfSession); 2229 MockTemporaryQueue queue = getTemporaryQueue(indexOfSession, indexOfQueue); 2230 if(null == queue) 2231 { 2232 throw new VerifyFailedException("TemporaryQueue with index " + indexOfQueue + " is not present."); 2233 } 2234 if(!queue.isDeleted()) 2235 { 2236 throw new VerifyFailedException("TemporaryQueue with index " + indexOfQueue + " not deleted."); 2237 } 2238 } 2239 2240 /** 2241 * Verifies that all temporary queues were deleted. 2242 * The session has to be created using the current {@link MockQueueConnection}. 2243 * @param indexOfSession the index of the session 2244 * @throws VerifyFailedException if verification fails 2245 */ 2246 public void verifyAllTemporaryQueuesDeleted(int indexOfSession) 2247 { 2248 checkAndGetQueueSessionByIndex(indexOfSession); 2249 List queueList = getTemporaryQueueList(indexOfSession); 2250 for(int ii = 0; ii < queueList.size(); ii++) 2251 { 2252 MockTemporaryQueue currentQueue = (MockTemporaryQueue)queueList.get(ii); 2253 if(!currentQueue.isDeleted()) 2254 { 2255 throw new VerifyFailedException("TemporaryQueue with index " + ii + " not deleted."); 2256 } 2257 } 2258 } 2259 2260 /** 2261 * Verifies that the temporary topic with the specified index 2262 * was closed. 2263 * The session has to be created using the current {@link MockTopicConnection}. 2264 * @param indexOfSession the index of the session 2265 * @param indexOfTopic the index of the topic 2266 * @throws VerifyFailedException if verification fails 2267 */ 2268 public void verifyTemporaryTopicDeleted(int indexOfSession, int indexOfTopic) 2269 { 2270 checkAndGetTopicSessionByIndex(indexOfSession); 2271 MockTemporaryTopic topic = getTemporaryTopic(indexOfSession, indexOfTopic); 2272 if(null == topic) 2273 { 2274 throw new VerifyFailedException("TemporaryTopic with index " + indexOfTopic + " is not present."); 2275 } 2276 if(!topic.isDeleted()) 2277 { 2278 throw new VerifyFailedException("TemporaryTopic with index " + indexOfTopic + " not deleted."); 2279 } 2280 } 2281 2282 /** 2283 * Verifies that all temporary topics were deleted. 2284 * The session has to be created using the current {@link MockTopicConnection}. 2285 * @param indexOfSession the index of the session 2286 * @throws VerifyFailedException if verification fails 2287 */ 2288 public void verifyAllTemporaryTopicsDeleted(int indexOfSession) 2289 { 2290 checkAndGetTopicSessionByIndex(indexOfSession); 2291 List topicList = getTemporaryTopicList(indexOfSession); 2292 for(int ii = 0; ii < topicList.size(); ii++) 2293 { 2294 MockTemporaryTopic currentTopic = (MockTemporaryTopic)topicList.get(ii); 2295 if(!currentTopic.isDeleted()) 2296 { 2297 throw new VerifyFailedException("TemporaryTopic with index " + ii + " not deleted."); 2298 } 2299 } 2300 } 2301 2302 /** 2303 * Verifies that the specified messages are equal by calling the 2304 * <code>equals()</code> method. All mock messages provide a 2305 * suitable implementation of <code>equals()</code>. 2306 * @param message1 the first message 2307 * @param message2 the second message 2308 * @throws VerifyFailedException if verification fails 2309 */ 2310 public void verifyMessageEquals(MockMessage message1, MockMessage message2) 2311 { 2312 if(null == message1) 2313 { 2314 throw new VerifyFailedException("message1 is null"); 2315 } 2316 if(null == message2) 2317 { 2318 throw new VerifyFailedException("message2 is null"); 2319 } 2320 if(!message1.equals(message2)) 2321 { 2322 throw new VerifyFailedException("messages not equal: message1: " + message1.toString() + ", message2: " + message2.toString()); 2323 } 2324 } 2325 2326 /** 2327 * Verifies that a message in the specified queue is equal to 2328 * the specified message by calling the <code>equals()</code> method. 2329 * All mock messages provide a suitable implementation of <code>equals()</code>. 2330 * @param nameOfQueue the name of the queue 2331 * @param indexOfSourceMessage the index of the message in the queue 2332 * @param targetMessage the message that will be used for comparison 2333 * @throws VerifyFailedException if verification fails 2334 */ 2335 public void verifyCurrentQueueMessageEquals(String nameOfQueue, int indexOfSourceMessage, MockMessage targetMessage) 2336 { 2337 checkQueueByName(nameOfQueue); 2338 List messageList = getCurrentMessageListFromQueue(nameOfQueue); 2339 if(indexOfSourceMessage >= messageList.size()) 2340 { 2341 throw new VerifyFailedException("Queue " + nameOfQueue + " contains only " + messageList.size() + " messages"); 2342 } 2343 MockMessage sourceMessage = (MockMessage)messageList.get(indexOfSourceMessage); 2344 verifyMessageEquals(sourceMessage, targetMessage); 2345 } 2346 2347 /** 2348 * Verifies that a received message is equal to the specified message 2349 * by calling the <code>equals()</code> method. 2350 * All mock messages provide a suitable implementation of <code>equals()</code>. 2351 * @param nameOfQueue the name of the queue 2352 * @param indexOfSourceMessage the index of the received message 2353 * @param targetMessage the message that will be used for comparison 2354 * @throws VerifyFailedException if verification fails 2355 */ 2356 public void verifyReceivedQueueMessageEquals(String nameOfQueue, int indexOfSourceMessage, MockMessage targetMessage) 2357 { 2358 checkQueueByName(nameOfQueue); 2359 List messageList = getReceivedMessageListFromQueue(nameOfQueue); 2360 if(indexOfSourceMessage >= messageList.size()) 2361 { 2362 throw new VerifyFailedException("Queue " + nameOfQueue + " received only " + messageList.size() + " messages"); 2363 } 2364 MockMessage sourceMessage = (MockMessage)messageList.get(indexOfSourceMessage); 2365 verifyMessageEquals(sourceMessage, targetMessage); 2366 } 2367 2368 /** 2369 * Verifies that a message in the specified temporary queue is equal to 2370 * the specified message by calling the <code>equals()</code> method. 2371 * All mock messages provide a suitable implementation of <code>equals()</code>. 2372 * The session has to be created using the current {@link MockQueueConnection}. 2373 * @param indexOfSession the index of the session 2374 * @param indexOfQueue the index of the temporary queue 2375 * @param indexOfSourceMessage the index of the message in the queue 2376 * @param targetMessage the message that will be used for comparison 2377 * @throws VerifyFailedException if verification fails 2378 */ 2379 public void verifyCurrentQueueMessageEquals(int indexOfSession, int indexOfQueue, int indexOfSourceMessage, MockMessage targetMessage) 2380 { 2381 checkAndGetQueueSessionByIndex(indexOfSession); 2382 List messageList = getCurrentMessageListFromTemporaryQueue(indexOfSession, indexOfQueue); 2383 if(null == messageList) 2384 { 2385 throw new VerifyFailedException("Temporary queue with index " + indexOfQueue + " of session with index " + indexOfSession + " does not exist"); 2386 } 2387 if(indexOfSourceMessage >= messageList.size()) 2388 { 2389 throw new VerifyFailedException("Temporary queue with index " + indexOfQueue + " contains only " + messageList.size() + " messages"); 2390 } 2391 MockMessage sourceMessage = (MockMessage)messageList.get(indexOfSourceMessage); 2392 verifyMessageEquals(sourceMessage, targetMessage); 2393 } 2394 2395 /** 2396 * Verifies that a message received by a temporary queue is equal to the specified message 2397 * by calling the <code>equals()</code> method. 2398 * All mock messages provide a suitable implementation of <code>equals()</code>. 2399 * The session has to be created using the current {@link MockQueueConnection}. 2400 * @param indexOfSession the index of the session 2401 * @param indexOfQueue the index of the temporary queue 2402 * @param indexOfSourceMessage the index of the received message 2403 * @param targetMessage the message that will be used for comparison 2404 * @throws VerifyFailedException if verification fails 2405 */ 2406 public void verifyReceivedQueueMessageEquals(int indexOfSession, int indexOfQueue, int indexOfSourceMessage, MockMessage targetMessage) 2407 { 2408 checkAndGetQueueSessionByIndex(indexOfSession); 2409 List messageList = getReceivedMessageListFromTemporaryQueue(indexOfSession, indexOfQueue); 2410 if(null == messageList) 2411 { 2412 throw new VerifyFailedException("Temporary queue with index " + indexOfQueue + " of session with index " + indexOfSession + " does not exist"); 2413 } 2414 if(indexOfSourceMessage >= messageList.size()) 2415 { 2416 throw new VerifyFailedException("Temporary queue with index " + indexOfQueue + " received only " + messageList.size() + " messages"); 2417 } 2418 MockMessage sourceMessage = (MockMessage)messageList.get(indexOfSourceMessage); 2419 verifyMessageEquals(sourceMessage, targetMessage); 2420 } 2421 2422 /** 2423 * Verifies the number of messages in a queue. 2424 * @param nameOfQueue the name of the queue 2425 * @param numberOfMessages the expected number of messages 2426 * @throws VerifyFailedException if verification fails 2427 */ 2428 public void verifyNumberOfCurrentQueueMessages(String nameOfQueue, int numberOfMessages) 2429 { 2430 checkQueueByName(nameOfQueue); 2431 List list = getCurrentMessageListFromQueue(nameOfQueue); 2432 if(numberOfMessages != list.size()) 2433 { 2434 throw new VerifyFailedException("Expected " + numberOfMessages + " messages in queue " + nameOfQueue + ", received " + list.size() + " messages"); 2435 } 2436 } 2437 2438 /** 2439 * Verifies the number of messages received by a queue. 2440 * @param nameOfQueue the name of the queue 2441 * @param numberOfMessages the expected number of messages 2442 * @throws VerifyFailedException if verification fails 2443 */ 2444 public void verifyNumberOfReceivedQueueMessages(String nameOfQueue, int numberOfMessages) 2445 { 2446 checkQueueByName(nameOfQueue); 2447 List list = getReceivedMessageListFromQueue(nameOfQueue); 2448 if(numberOfMessages != list.size()) 2449 { 2450 throw new VerifyFailedException("Expected " + numberOfMessages + " messages received by queue " + nameOfQueue + ", received " + list.size() + " messages"); 2451 } 2452 } 2453 2454 /** 2455 * Verifies the number of messages in a temporary queue. 2456 * The session has to be created using the current {@link MockQueueConnection}. 2457 * @param indexOfSession the index of the session 2458 * @param indexOfQueue the index of the temporary queue 2459 * @param numberOfMessages the expected number of messages 2460 * @throws VerifyFailedException if verification fails 2461 */ 2462 public void verifyNumberOfCurrentQueueMessages(int indexOfSession, int indexOfQueue, int numberOfMessages) 2463 { 2464 checkAndGetQueueSessionByIndex(indexOfSession); 2465 List list = getCurrentMessageListFromTemporaryQueue(indexOfSession, indexOfQueue); 2466 if(null == list) 2467 { 2468 throw new VerifyFailedException("Temporary queue with index " + indexOfQueue + " of session with index " + indexOfSession + " does not exist"); 2469 } 2470 if(numberOfMessages != list.size()) 2471 { 2472 throw new VerifyFailedException("Expected " + numberOfMessages + " messages, received " + list.size() + " messages"); 2473 } 2474 } 2475 2476 /** 2477 * Verifies the number of messages received by a temporary queue. 2478 * The session has to be created using the current {@link MockQueueConnection}. 2479 * @param indexOfSession the index of the session 2480 * @param indexOfQueue the index of the temporary queue 2481 * @param numberOfMessages the expected number of messages 2482 * @throws VerifyFailedException if verification fails 2483 */ 2484 public void verifyNumberOfReceivedQueueMessages(int indexOfSession, int indexOfQueue, int numberOfMessages) 2485 { 2486 checkAndGetQueueSessionByIndex(indexOfSession); 2487 List list = getReceivedMessageListFromTemporaryQueue(indexOfSession, indexOfQueue); 2488 if(null == list) 2489 { 2490 throw new VerifyFailedException("Temporary queue with index " + indexOfQueue + " of session with index " + indexOfSession + " does not exist"); 2491 } 2492 if(numberOfMessages != list.size()) 2493 { 2494 throw new VerifyFailedException("Expected " + numberOfMessages + " messages, received " + list.size() + " messages"); 2495 } 2496 } 2497 2498 /** 2499 * Verifies that all received messages of the specified queue 2500 * are acknowledged. 2501 * @param nameOfQueue the name of the queue 2502 * @throws VerifyFailedException if verification fails 2503 */ 2504 public void verifyAllReceivedQueueMessagesAcknowledged(String nameOfQueue) 2505 { 2506 checkQueueByName(nameOfQueue); 2507 List messageList = getReceivedMessageListFromQueue(nameOfQueue); 2508 for(int ii = 0; ii < messageList.size(); ii++) 2509 { 2510 MockMessage currentMessage = (MockMessage)messageList.get(ii); 2511 if(!currentMessage.isAcknowledged()) 2512 { 2513 throw new VerifyFailedException("Message " + ii + " of queue " + nameOfQueue + " is not acknowledged"); 2514 } 2515 } 2516 } 2517 2518 /** 2519 * Verifies that all received messages of the specified temporary queue 2520 * are acknowledged. 2521 * The session has to be created using the current {@link MockQueueConnection}. 2522 * @param indexOfSession the index of the session 2523 * @param indexOfQueue the index of the temporary queue 2524 * @throws VerifyFailedException if verification fails 2525 */ 2526 public void verifyAllReceivedQueueMessagesAcknowledged(int indexOfSession, int indexOfQueue) 2527 { 2528 checkAndGetQueueSessionByIndex(indexOfSession); 2529 List messageList = getReceivedMessageListFromTemporaryQueue(indexOfSession, indexOfQueue); 2530 if(null == messageList) 2531 { 2532 throw new VerifyFailedException("Temporary queue with index " + indexOfQueue + " of session with index " + indexOfSession + " does not exist"); 2533 } 2534 for(int ii = 0; ii < messageList.size(); ii++) 2535 { 2536 MockMessage currentMessage = (MockMessage)messageList.get(ii); 2537 if(!currentMessage.isAcknowledged()) 2538 { 2539 throw new VerifyFailedException("Message " + ii + " of temporary queue " + indexOfQueue + " is not acknowledged"); 2540 } 2541 } 2542 } 2543 2544 /** 2545 * Verifies that a received message is acknowledged. 2546 * @param nameOfQueue the name of the queue 2547 * @param indexOfMessage the index of the received message 2548 * @throws VerifyFailedException if verification fails 2549 */ 2550 public void verifyReceivedQueueMessageAcknowledged(String nameOfQueue, int indexOfMessage) 2551 { 2552 checkQueueByName(nameOfQueue); 2553 List messageList = getReceivedMessageListFromQueue(nameOfQueue); 2554 if(indexOfMessage >= messageList.size()) 2555 { 2556 throw new VerifyFailedException("Queue " + nameOfQueue + " received only " + messageList.size() + " messages"); 2557 } 2558 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 2559 if(!message.isAcknowledged()) 2560 { 2561 throw new VerifyFailedException("Message " + indexOfMessage + " of queue " + nameOfQueue + " is not acknowledged"); 2562 } 2563 } 2564 2565 /** 2566 * Verifies that a received message is not acknowledged. 2567 * @param nameOfQueue the name of the queue 2568 * @param indexOfMessage the index of the received message 2569 * @throws VerifyFailedException if verification fails 2570 */ 2571 public void verifyReceivedQueueMessageNotAcknowledged(String nameOfQueue, int indexOfMessage) 2572 { 2573 checkQueueByName(nameOfQueue); 2574 List messageList = getReceivedMessageListFromQueue(nameOfQueue); 2575 if(indexOfMessage >= messageList.size()) 2576 { 2577 throw new VerifyFailedException("Queue " + nameOfQueue + " received only " + messageList.size() + " messages"); 2578 } 2579 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 2580 if(message.isAcknowledged()) 2581 { 2582 throw new VerifyFailedException("Message " + indexOfMessage + " of queue " + nameOfQueue + " is acknowledged"); 2583 } 2584 } 2585 2586 /** 2587 * Verifies that message received by a temporary queue is acknowledged. 2588 * The session has to be created using the current {@link MockQueueConnection}. 2589 * @param indexOfSession the index of the session 2590 * @param indexOfQueue the index of the temporary queue 2591 * @param indexOfMessage the index of the received message 2592 * @throws VerifyFailedException if verification fails 2593 */ 2594 public void verifyReceivedQueueMessageAcknowledged(int indexOfSession, int indexOfQueue, int indexOfMessage) 2595 { 2596 checkAndGetQueueSessionByIndex(indexOfSession); 2597 List messageList = getReceivedMessageListFromTemporaryQueue(indexOfSession, indexOfQueue); 2598 if(null == messageList) 2599 { 2600 throw new VerifyFailedException("Temporary queue with index " + indexOfQueue + " of session with index " + indexOfSession + " does not exist"); 2601 } 2602 if(indexOfMessage >= messageList.size()) 2603 { 2604 throw new VerifyFailedException("Temporary queue with index " + indexOfQueue + " received only " + messageList.size() + " messages"); 2605 } 2606 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 2607 if(!message.isAcknowledged()) 2608 { 2609 throw new VerifyFailedException("Message " + indexOfMessage + " of temporary queue " + indexOfQueue + " is not acknowledged"); 2610 } 2611 } 2612 2613 /** 2614 * Verifies that a received by a temporary queue is not acknowledged. 2615 * The session has to be created using the current {@link MockQueueConnection}. 2616 * @param indexOfSession the index of the session 2617 * @param indexOfQueue the index of the temporary queue 2618 * @param indexOfMessage the index of the received message 2619 * @throws VerifyFailedException if verification fails 2620 */ 2621 public void verifyReceivedQueueMessageNotAcknowledged(int indexOfSession, int indexOfQueue, int indexOfMessage) 2622 { 2623 checkAndGetQueueSessionByIndex(indexOfSession); 2624 List messageList = getReceivedMessageListFromTemporaryQueue(indexOfSession, indexOfQueue); 2625 if(null == messageList) 2626 { 2627 throw new VerifyFailedException("Temporary queue with index " + indexOfQueue + " of session with index " + indexOfSession + " does not exist"); 2628 } 2629 if(indexOfMessage >= messageList.size()) 2630 { 2631 throw new VerifyFailedException("Temporary queue with index " + indexOfQueue + " received only " + messageList.size() + " messages"); 2632 } 2633 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 2634 if(message.isAcknowledged()) 2635 { 2636 throw new VerifyFailedException("Message " + indexOfMessage + " of temporary queue " + indexOfQueue + " is acknowledged"); 2637 } 2638 } 2639 2640 /** 2641 * Verifies the number of messages created with 2642 * {@link MockQueueSession#createMessage}. 2643 * The session has to be created using the current {@link MockQueueConnection}. 2644 * @param indexOfSession the index of the session 2645 * @param number the expected number of messages 2646 * @throws VerifyFailedException if verification fails 2647 */ 2648 public void verifyNumberOfCreatedQueueMessages(int indexOfSession, int number) 2649 { 2650 checkAndGetQueueSessionByIndex(indexOfSession); 2651 if(number != getQueueMessageManager(indexOfSession).getMessageList().size()) 2652 { 2653 throw new VerifyFailedException("Expected " + number + " messages, received " + getQueueMessageManager(indexOfSession).getMessageList().size() + " messages"); 2654 } 2655 } 2656 2657 /** 2658 * Verifies the number of bytes messages created with 2659 * {@link MockQueueSession#createBytesMessage}. 2660 * The session has to be created using the current {@link MockQueueConnection}. 2661 * @param indexOfSession the index of the session 2662 * @param number the expected number of bytes messages 2663 * @throws VerifyFailedException if verification fails 2664 */ 2665 public void verifyNumberOfCreatedQueueBytesMessages(int indexOfSession, int number) 2666 { 2667 checkAndGetQueueSessionByIndex(indexOfSession); 2668 if(number != getQueueMessageManager(indexOfSession).getBytesMessageList().size()) 2669 { 2670 throw new VerifyFailedException("Expected " + number + " bytes messages, received " + getQueueMessageManager(indexOfSession).getBytesMessageList().size() + " bytes messages"); 2671 } 2672 } 2673 2674 /** 2675 * Verifies the number of map messages created with 2676 * {@link MockQueueSession#createMapMessage}. 2677 * The session has to be created using the current {@link MockQueueConnection}. 2678 * @param indexOfSession the index of the session 2679 * @param number the expected number of map messages 2680 * @throws VerifyFailedException if verification fails 2681 */ 2682 public void verifyNumberOfCreatedQueueMapMessages(int indexOfSession, int number) 2683 { 2684 checkAndGetQueueSessionByIndex(indexOfSession); 2685 if(number != getQueueMessageManager(indexOfSession).getMapMessageList().size()) 2686 { 2687 throw new VerifyFailedException("Expected " + number + " map messages, received " + getQueueMessageManager(indexOfSession).getMapMessageList().size() + " map messages"); 2688 } 2689 } 2690 2691 /** 2692 * Verifies the number of text messages created with 2693 * {@link MockQueueSession#createTextMessage}. 2694 * The session has to be created using the current {@link MockQueueConnection}. 2695 * @param indexOfSession the index of the session 2696 * @param number the expected number of text messages 2697 * @throws VerifyFailedException if verification fails 2698 */ 2699 public void verifyNumberOfCreatedQueueTextMessages(int indexOfSession, int number) 2700 { 2701 checkAndGetQueueSessionByIndex(indexOfSession); 2702 if(number != getQueueMessageManager(indexOfSession).getTextMessageList().size()) 2703 { 2704 throw new VerifyFailedException("Expected " + number + " text messages, received " + getQueueMessageManager(indexOfSession).getTextMessageList().size() + " text messages"); 2705 } 2706 } 2707 2708 /** 2709 * Verifies the number of stream messages created with 2710 * {@link MockQueueSession#createStreamMessage}. 2711 * The session has to be created using the current {@link MockQueueConnection}. 2712 * @param indexOfSession the index of the session 2713 * @param number the expected number of stream messages 2714 * @throws VerifyFailedException if verification fails 2715 */ 2716 public void verifyNumberOfCreatedQueueStreamMessages(int indexOfSession, int number) 2717 { 2718 checkAndGetQueueSessionByIndex(indexOfSession); 2719 if(number != getQueueMessageManager(indexOfSession).getStreamMessageList().size()) 2720 { 2721 throw new VerifyFailedException("Expected " + number + " stream messages, received " + getQueueMessageManager(indexOfSession).getStreamMessageList().size() + " stream messages"); 2722 } 2723 } 2724 2725 /** 2726 * Verifies the number of object messages created with 2727 * {@link MockQueueSession#createObjectMessage}. 2728 * The session has to be created using the current {@link MockQueueConnection}. 2729 * @param indexOfSession the index of the session 2730 * @param number the expected number of object messages 2731 * @throws VerifyFailedException if verification fails 2732 */ 2733 public void verifyNumberOfCreatedQueueObjectMessages(int indexOfSession, int number) 2734 { 2735 checkAndGetQueueSessionByIndex(indexOfSession); 2736 if(number != getQueueMessageManager(indexOfSession).getObjectMessageList().size()) 2737 { 2738 throw new VerifyFailedException("Expected " + number + " object messages, received " + getQueueMessageManager(indexOfSession).getObjectMessageList().size() + " object messages"); 2739 } 2740 } 2741 2742 /** 2743 * Verifies that a message created with {@link MockQueueSession#createMessage} 2744 * is acknowledged. 2745 * This method makes sense if messages are not cloned 2746 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 2747 * If messages are cloned, the cloned message is acknowledged instead of 2748 * the created message. 2749 * The session has to be created using the current {@link MockQueueConnection}. 2750 * @param indexOfSession the index of the session 2751 * @param indexOfMessage the index of the message 2752 * @throws VerifyFailedException if verification fails 2753 */ 2754 public void verifyCreatedQueueMessageAcknowledged(int indexOfSession, int indexOfMessage) 2755 { 2756 checkAndGetQueueSessionByIndex(indexOfSession); 2757 List messageList = getQueueMessageManager(indexOfSession).getMessageList(); 2758 if(indexOfMessage >= messageList.size()) 2759 { 2760 throw new VerifyFailedException("Only " + messageList.size() + " messages created for session " + indexOfSession); 2761 } 2762 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 2763 if(!message.isAcknowledged()) 2764 { 2765 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 2766 } 2767 } 2768 2769 /** 2770 * Verifies that a message created with {@link MockQueueSession#createMessage} 2771 * is not acknowledged. 2772 * This method makes sense if messages are not cloned 2773 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 2774 * If messages are cloned, the cloned message is acknowledged instead of 2775 * the created message. 2776 * The session has to be created using the current {@link MockQueueConnection}. 2777 * @param indexOfSession the index of the session 2778 * @param indexOfMessage the index of the message 2779 * @throws VerifyFailedException if verification fails 2780 */ 2781 public void verifyCreatedQueueMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 2782 { 2783 checkAndGetQueueSessionByIndex(indexOfSession); 2784 List messageList = getQueueMessageManager(indexOfSession).getMessageList(); 2785 if(indexOfMessage >= messageList.size()) 2786 { 2787 throw new VerifyFailedException("Only " + messageList.size() + " messages created for session " + indexOfSession); 2788 } 2789 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 2790 if(message.isAcknowledged()) 2791 { 2792 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 2793 } 2794 } 2795 2796 /** 2797 * Verifies that a bytes message created with {@link MockQueueSession#createMessage} 2798 * is acknowledged. 2799 * This method makes sense if messages are not cloned 2800 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 2801 * If messages are cloned, the cloned message is acknowledged instead of 2802 * the created message. 2803 * The session has to be created using the current {@link MockQueueConnection}. 2804 * @param indexOfSession the index of the session 2805 * @param indexOfMessage the index of the message 2806 * @throws VerifyFailedException if verification fails 2807 */ 2808 public void verifyCreatedQueueBytesMessageAcknowledged(int indexOfSession, int indexOfMessage) 2809 { 2810 checkAndGetQueueSessionByIndex(indexOfSession); 2811 List messageList = getQueueMessageManager(indexOfSession).getBytesMessageList(); 2812 if(indexOfMessage >= messageList.size()) 2813 { 2814 throw new VerifyFailedException("Only " + messageList.size() + " bytes messages created for session " + indexOfSession); 2815 } 2816 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 2817 if(!message.isAcknowledged()) 2818 { 2819 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 2820 } 2821 } 2822 2823 /** 2824 * Verifies that a bytes message created with {@link MockQueueSession#createMessage} 2825 * is not acknowledged. 2826 * This method makes sense if messages are not cloned 2827 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 2828 * If messages are cloned, the cloned message is acknowledged instead of 2829 * the created message. 2830 * The session has to be created using the current {@link MockQueueConnection}. 2831 * @param indexOfSession the index of the session 2832 * @param indexOfMessage the index of the message 2833 * @throws VerifyFailedException if verification fails 2834 */ 2835 public void verifyCreatedQueueBytesMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 2836 { 2837 checkAndGetQueueSessionByIndex(indexOfSession); 2838 List messageList = getQueueMessageManager(indexOfSession).getBytesMessageList(); 2839 if(indexOfMessage >= messageList.size()) 2840 { 2841 throw new VerifyFailedException("Only " + messageList.size() + " bytes messages created for session " + indexOfSession); 2842 } 2843 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 2844 if(message.isAcknowledged()) 2845 { 2846 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 2847 } 2848 } 2849 2850 /** 2851 * Verifies that a map message created with {@link MockQueueSession#createMessage} 2852 * is acknowledged. 2853 * This method makes sense if messages are not cloned 2854 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 2855 * If messages are cloned, the cloned message is acknowledged instead of 2856 * the created message. 2857 * The session has to be created using the current {@link MockQueueConnection}. 2858 * @param indexOfSession the index of the session 2859 * @param indexOfMessage the index of the message 2860 * @throws VerifyFailedException if verification fails 2861 */ 2862 public void verifyCreatedQueueMapMessageAcknowledged(int indexOfSession, int indexOfMessage) 2863 { 2864 checkAndGetQueueSessionByIndex(indexOfSession); 2865 List messageList = getQueueMessageManager(indexOfSession).getMapMessageList(); 2866 if(indexOfMessage >= messageList.size()) 2867 { 2868 throw new VerifyFailedException("Only " + messageList.size() + " map messages created for session " + indexOfSession); 2869 } 2870 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 2871 if(!message.isAcknowledged()) 2872 { 2873 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 2874 } 2875 } 2876 2877 /** 2878 * Verifies that a map message created with {@link MockQueueSession#createMessage} 2879 * is not acknowledged. 2880 * This method makes sense if messages are not cloned 2881 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 2882 * If messages are cloned, the cloned message is acknowledged instead of 2883 * the created message. 2884 * The session has to be created using the current {@link MockQueueConnection}. 2885 * @param indexOfSession the index of the session 2886 * @param indexOfMessage the index of the message 2887 * @throws VerifyFailedException if verification fails 2888 */ 2889 public void verifyCreatedQueueMapMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 2890 { 2891 checkAndGetQueueSessionByIndex(indexOfSession); 2892 List messageList = getQueueMessageManager(indexOfSession).getMapMessageList(); 2893 if(indexOfMessage >= messageList.size()) 2894 { 2895 throw new VerifyFailedException("Only " + messageList.size() + " map messages created for session " + indexOfSession); 2896 } 2897 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 2898 if(message.isAcknowledged()) 2899 { 2900 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 2901 } 2902 } 2903 2904 /** 2905 * Verifies that a text message created with {@link MockQueueSession#createMessage} 2906 * is acknowledged. 2907 * This method makes sense if messages are not cloned 2908 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 2909 * If messages are cloned, the cloned message is acknowledged instead of 2910 * the created message. 2911 * The session has to be created using the current {@link MockQueueConnection}. 2912 * @param indexOfSession the index of the session 2913 * @param indexOfMessage the index of the message 2914 * @throws VerifyFailedException if verification fails 2915 */ 2916 public void verifyCreatedQueueTextMessageAcknowledged(int indexOfSession, int indexOfMessage) 2917 { 2918 checkAndGetQueueSessionByIndex(indexOfSession); 2919 List messageList = getQueueMessageManager(indexOfSession).getTextMessageList(); 2920 if(indexOfMessage >= messageList.size()) 2921 { 2922 throw new VerifyFailedException("Only " + messageList.size() + " text messages created for session " + indexOfSession); 2923 } 2924 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 2925 if(!message.isAcknowledged()) 2926 { 2927 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 2928 } 2929 } 2930 2931 /** 2932 * Verifies that a text message created with {@link MockQueueSession#createMessage} 2933 * is not acknowledged. 2934 * This method makes sense if messages are not cloned 2935 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 2936 * If messages are cloned, the cloned message is acknowledged instead of 2937 * the created message. 2938 * The session has to be created using the current {@link MockQueueConnection}. 2939 * @param indexOfSession the index of the session 2940 * @param indexOfMessage the index of the message 2941 * @throws VerifyFailedException if verification fails 2942 */ 2943 public void verifyCreatedQueueTextMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 2944 { 2945 checkAndGetQueueSessionByIndex(indexOfSession); 2946 List messageList = getQueueMessageManager(indexOfSession).getTextMessageList(); 2947 if(indexOfMessage >= messageList.size()) 2948 { 2949 throw new VerifyFailedException("Only " + messageList.size() + " text messages created for session " + indexOfSession); 2950 } 2951 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 2952 if(message.isAcknowledged()) 2953 { 2954 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 2955 } 2956 } 2957 2958 /** 2959 * Verifies that a stream message created with {@link MockQueueSession#createMessage} 2960 * is acknowledged. 2961 * This method makes sense if messages are not cloned 2962 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 2963 * If messages are cloned, the cloned message is acknowledged instead of 2964 * the created message. 2965 * The session has to be created using the current {@link MockQueueConnection}. 2966 * @param indexOfSession the index of the session 2967 * @param indexOfMessage the index of the message 2968 * @throws VerifyFailedException if verification fails 2969 */ 2970 public void verifyCreatedQueueStreamMessageAcknowledged(int indexOfSession, int indexOfMessage) 2971 { 2972 checkAndGetQueueSessionByIndex(indexOfSession); 2973 List messageList = getQueueMessageManager(indexOfSession).getStreamMessageList(); 2974 if(indexOfMessage >= messageList.size()) 2975 { 2976 throw new VerifyFailedException("Only " + messageList.size() + " stream messages created for session " + indexOfSession); 2977 } 2978 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 2979 if(!message.isAcknowledged()) 2980 { 2981 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 2982 } 2983 } 2984 2985 /** 2986 * Verifies that a stream message created with {@link MockQueueSession#createMessage} 2987 * is not acknowledged. 2988 * This method makes sense if messages are not cloned 2989 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 2990 * If messages are cloned, the cloned message is acknowledged instead of 2991 * the created message. 2992 * The session has to be created using the current {@link MockQueueConnection}. 2993 * @param indexOfSession the index of the session 2994 * @param indexOfMessage the index of the message 2995 * @throws VerifyFailedException if verification fails 2996 */ 2997 public void verifyCreatedQueueStreamMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 2998 { 2999 checkAndGetQueueSessionByIndex(indexOfSession); 3000 List messageList = getQueueMessageManager(indexOfSession).getStreamMessageList(); 3001 if(indexOfMessage >= messageList.size()) 3002 { 3003 throw new VerifyFailedException("Only " + messageList.size() + " stream messages created for session " + indexOfSession); 3004 } 3005 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3006 if(message.isAcknowledged()) 3007 { 3008 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 3009 } 3010 } 3011 3012 /** 3013 * Verifies that a object message created with {@link MockQueueSession#createMessage} 3014 * is acknowledged. 3015 * This method makes sense if messages are not cloned 3016 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3017 * If messages are cloned, the cloned message is acknowledged instead of 3018 * the created message. 3019 * The session has to be created using the current {@link MockQueueConnection}. 3020 * @param indexOfSession the index of the session 3021 * @param indexOfMessage the index of the message 3022 * @throws VerifyFailedException if verification fails 3023 */ 3024 public void verifyCreatedQueueObjectMessageAcknowledged(int indexOfSession, int indexOfMessage) 3025 { 3026 checkAndGetQueueSessionByIndex(indexOfSession); 3027 List messageList = getQueueMessageManager(indexOfSession).getObjectMessageList(); 3028 if(indexOfMessage >= messageList.size()) 3029 { 3030 throw new VerifyFailedException("Only " + messageList.size() + " object messages created for session " + indexOfSession); 3031 } 3032 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3033 if(!message.isAcknowledged()) 3034 { 3035 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 3036 } 3037 } 3038 3039 /** 3040 * Verifies that a object message created with {@link MockQueueSession#createMessage} 3041 * is not acknowledged. 3042 * This method makes sense if messages are not cloned 3043 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3044 * If messages are cloned, the cloned message is acknowledged instead of 3045 * the created message. 3046 * The session has to be created using the current {@link MockQueueConnection}. 3047 * @param indexOfSession the index of the session 3048 * @param indexOfMessage the index of the message 3049 * @throws VerifyFailedException if verification fails 3050 */ 3051 public void verifyCreatedQueueObjectMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 3052 { 3053 checkAndGetQueueSessionByIndex(indexOfSession); 3054 List messageList = getQueueMessageManager(indexOfSession).getObjectMessageList(); 3055 if(indexOfMessage >= messageList.size()) 3056 { 3057 throw new VerifyFailedException("Only " + messageList.size() + " object messages created for session " + indexOfSession); 3058 } 3059 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3060 if(message.isAcknowledged()) 3061 { 3062 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 3063 } 3064 } 3065 3066 /** 3067 * Verifies that a message in the specified topic is equal to 3068 * the specified message by calling the <code>equals()</code> method. 3069 * All mock messages provide a suitable implementation of <code>equals()</code>. 3070 * @param nameOfTopic the name of the topic 3071 * @param indexOfSourceMessage the index of the message in the topic 3072 * @param targetMessage the message that will be used for comparison 3073 * @throws VerifyFailedException if verification fails 3074 */ 3075 public void verifyCurrentTopicMessageEquals(String nameOfTopic, int indexOfSourceMessage, MockMessage targetMessage) 3076 { 3077 checkTopicByName(nameOfTopic); 3078 List messageList = getCurrentMessageListFromTopic(nameOfTopic); 3079 if(indexOfSourceMessage >= messageList.size()) 3080 { 3081 throw new VerifyFailedException("Topic " + nameOfTopic + " contains only " + messageList.size() + " messages"); 3082 } 3083 MockMessage sourceMessage = (MockMessage)messageList.get(indexOfSourceMessage); 3084 verifyMessageEquals(sourceMessage, targetMessage); 3085 } 3086 3087 /** 3088 * Verifies that a received message is equal to the specified message 3089 * by calling the <code>equals()</code> method. 3090 * All mock messages provide a suitable implementation of <code>equals()</code>. 3091 * @param nameOfTopic the name of the topic 3092 * @param indexOfSourceMessage the index of the received message 3093 * @param targetMessage the message that will be used for comparison 3094 * @throws VerifyFailedException if verification fails 3095 */ 3096 public void verifyReceivedTopicMessageEquals(String nameOfTopic, int indexOfSourceMessage, MockMessage targetMessage) 3097 { 3098 checkTopicByName(nameOfTopic); 3099 List messageList = getReceivedMessageListFromTopic(nameOfTopic); 3100 if(indexOfSourceMessage >= messageList.size()) 3101 { 3102 throw new VerifyFailedException("Topic " + nameOfTopic + " received only " + messageList.size() + " messages"); 3103 } 3104 MockMessage sourceMessage = (MockMessage)messageList.get(indexOfSourceMessage); 3105 verifyMessageEquals(sourceMessage, targetMessage); 3106 } 3107 3108 /** 3109 * Verifies that a message in the specified temporary topic is equal to 3110 * the specified message by calling the <code>equals()</code> method. 3111 * All mock messages provide a suitable implementation of <code>equals()</code>. 3112 * The session has to be created using the current {@link MockTopicConnection}. 3113 * @param indexOfSession the index of the session 3114 * @param indexOfTopic the index of the temporary topic 3115 * @param indexOfSourceMessage the index of the message in the topic 3116 * @param targetMessage the message that will be used for comparison 3117 * @throws VerifyFailedException if verification fails 3118 */ 3119 public void verifyCurrentTopicMessageEquals(int indexOfSession, int indexOfTopic, int indexOfSourceMessage, MockMessage targetMessage) 3120 { 3121 checkAndGetTopicSessionByIndex(indexOfSession); 3122 List messageList = getCurrentMessageListFromTemporaryTopic(indexOfSession, indexOfTopic); 3123 if(null == messageList) 3124 { 3125 throw new VerifyFailedException("Temporary topic with index " + indexOfTopic + " of session with index " + indexOfSession + " does not exist"); 3126 } 3127 if(indexOfSourceMessage >= messageList.size()) 3128 { 3129 throw new VerifyFailedException("Temporary topic with index " + indexOfTopic + " contains only " + messageList.size() + " messages"); 3130 } 3131 MockMessage sourceMessage = (MockMessage)messageList.get(indexOfSourceMessage); 3132 verifyMessageEquals(sourceMessage, targetMessage); 3133 } 3134 3135 /** 3136 * Verifies that a message received by a temporary topic is equal to the specified message 3137 * by calling the <code>equals()</code> method. 3138 * All mock messages provide a suitable implementation of <code>equals()</code>. 3139 * The session has to be created using the current {@link MockTopicConnection}. 3140 * @param indexOfSession the index of the session 3141 * @param indexOfTopic the index of the temporary topic 3142 * @param indexOfSourceMessage the index of the received message 3143 * @param targetMessage the message that will be used for comparison 3144 * @throws VerifyFailedException if verification fails 3145 */ 3146 public void verifyReceivedTopicMessageEquals(int indexOfSession, int indexOfTopic, int indexOfSourceMessage, MockMessage targetMessage) 3147 { 3148 checkAndGetTopicSessionByIndex(indexOfSession); 3149 List messageList = getReceivedMessageListFromTemporaryTopic(indexOfSession, indexOfTopic); 3150 if(null == messageList) 3151 { 3152 throw new VerifyFailedException("Temporary topic with index " + indexOfTopic + " of session with index " + indexOfSession + " does not exist"); 3153 } 3154 if(indexOfSourceMessage >= messageList.size()) 3155 { 3156 throw new VerifyFailedException("Temporary topic with index " + indexOfTopic + " received only " + messageList.size() + " messages"); 3157 } 3158 MockMessage sourceMessage = (MockMessage)messageList.get(indexOfSourceMessage); 3159 verifyMessageEquals(sourceMessage, targetMessage); 3160 } 3161 3162 /** 3163 * Verifies the number of messages in a topic. 3164 * @param nameOfTopic the name of the topic 3165 * @param numberOfMessages the expected number of messages 3166 * @throws VerifyFailedException if verification fails 3167 */ 3168 public void verifyNumberOfCurrentTopicMessages(String nameOfTopic, int numberOfMessages) 3169 { 3170 checkTopicByName(nameOfTopic); 3171 List list = getCurrentMessageListFromTopic(nameOfTopic); 3172 if(numberOfMessages != list.size()) 3173 { 3174 throw new VerifyFailedException("Expected " + numberOfMessages + " messages in topic " + nameOfTopic + ", received " + list.size() + " messages"); 3175 } 3176 } 3177 3178 /** 3179 * Verifies the number of messages received by a topic. 3180 * @param nameOfTopic the name of the topic 3181 * @param numberOfMessages the expected number of messages 3182 * @throws VerifyFailedException if verification fails 3183 */ 3184 public void verifyNumberOfReceivedTopicMessages(String nameOfTopic, int numberOfMessages) 3185 { 3186 checkTopicByName(nameOfTopic); 3187 List list = getReceivedMessageListFromTopic(nameOfTopic); 3188 if(numberOfMessages != list.size()) 3189 { 3190 throw new VerifyFailedException("Expected " + numberOfMessages + " messages received by topic " + nameOfTopic + ", received " + list.size() + " messages"); 3191 } 3192 } 3193 3194 /** 3195 * Verifies the number of messages in a temporary topic. 3196 * The session has to be created using the current {@link MockTopicConnection}. 3197 * @param indexOfSession the index of the session 3198 * @param indexOfTopic the index of the temporary topic 3199 * @param numberOfMessages the expected number of messages 3200 * @throws VerifyFailedException if verification fails 3201 */ 3202 public void verifyNumberOfCurrentTopicMessages(int indexOfSession, int indexOfTopic, int numberOfMessages) 3203 { 3204 checkAndGetTopicSessionByIndex(indexOfSession); 3205 List list = getCurrentMessageListFromTemporaryTopic(indexOfSession, indexOfTopic); 3206 if(null == list) 3207 { 3208 throw new VerifyFailedException("Temporary topic with index " + indexOfTopic + " of session with index " + indexOfSession + " does not exist"); 3209 } 3210 if(numberOfMessages != list.size()) 3211 { 3212 throw new VerifyFailedException("Expected " + numberOfMessages + " messages, received " + list.size() + " messages"); 3213 } 3214 } 3215 3216 /** 3217 * Verifies the number of messages received by a temporary topic. 3218 * The session has to be created using the current {@link MockTopicConnection}. 3219 * @param indexOfSession the index of the session 3220 * @param indexOfTopic the index of the temporary topic 3221 * @param numberOfMessages the expected number of messages 3222 * @throws VerifyFailedException if verification fails 3223 */ 3224 public void verifyNumberOfReceivedTopicMessages(int indexOfSession, int indexOfTopic, int numberOfMessages) 3225 { 3226 checkAndGetTopicSessionByIndex(indexOfSession); 3227 List list = getReceivedMessageListFromTemporaryTopic(indexOfSession, indexOfTopic); 3228 if(null == list) 3229 { 3230 throw new VerifyFailedException("Temporary topic with index " + indexOfTopic + " of session with index " + indexOfSession + " does not exist"); 3231 } 3232 if(numberOfMessages != list.size()) 3233 { 3234 throw new VerifyFailedException("Expected " + numberOfMessages + " messages, received " + list.size() + " messages"); 3235 } 3236 } 3237 3238 /** 3239 * Verifies that all received messages of the specified topic 3240 * are acknowledged. 3241 * @param nameOfTopic the name of the topic 3242 * @throws VerifyFailedException if verification fails 3243 */ 3244 public void verifyAllReceivedTopicMessagesAcknowledged(String nameOfTopic) 3245 { 3246 checkTopicByName(nameOfTopic); 3247 List messageList = getReceivedMessageListFromTopic(nameOfTopic); 3248 for(int ii = 0; ii < messageList.size(); ii++) 3249 { 3250 MockMessage currentMessage = (MockMessage)messageList.get(ii); 3251 if(!currentMessage.isAcknowledged()) 3252 { 3253 throw new VerifyFailedException("Message " + ii + " of topic " + nameOfTopic + " is not acknowledged"); 3254 } 3255 } 3256 } 3257 3258 /** 3259 * Verifies that all received messages of the specified temporary topic 3260 * are acknowledged. 3261 * The session has to be created using the current {@link MockTopicConnection}. 3262 * @param indexOfSession the index of the session 3263 * @param indexOfTopic the index of the temporary topic 3264 * @throws VerifyFailedException if verification fails 3265 */ 3266 public void verifyAllReceivedTopicMessagesAcknowledged(int indexOfSession, int indexOfTopic) 3267 { 3268 checkAndGetTopicSessionByIndex(indexOfSession); 3269 List messageList = getReceivedMessageListFromTemporaryTopic(indexOfSession, indexOfTopic); 3270 if(null == messageList) 3271 { 3272 throw new VerifyFailedException("Temporary topic with index " + indexOfTopic + " of session with index " + indexOfSession + " does not exist"); 3273 } 3274 for(int ii = 0; ii < messageList.size(); ii++) 3275 { 3276 MockMessage currentMessage = (MockMessage)messageList.get(ii); 3277 if(!currentMessage.isAcknowledged()) 3278 { 3279 throw new VerifyFailedException("Message " + ii + " of temporary topic " + indexOfTopic + " is not acknowledged"); 3280 } 3281 } 3282 } 3283 3284 /** 3285 * Verifies that a received message is acknowledged. 3286 * @param nameOfTopic the name of the topic 3287 * @param indexOfMessage the index of the received message 3288 * @throws VerifyFailedException if verification fails 3289 */ 3290 public void verifyReceivedTopicMessageAcknowledged(String nameOfTopic, int indexOfMessage) 3291 { 3292 checkTopicByName(nameOfTopic); 3293 List messageList = getReceivedMessageListFromTopic(nameOfTopic); 3294 if(indexOfMessage >= messageList.size()) 3295 { 3296 throw new VerifyFailedException("Topic " + nameOfTopic + " received only " + messageList.size() + " messages"); 3297 } 3298 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3299 if(!message.isAcknowledged()) 3300 { 3301 throw new VerifyFailedException("Message " + indexOfMessage + " of topic " + nameOfTopic + " is not acknowledged"); 3302 } 3303 } 3304 3305 /** 3306 * Verifies that a received message is not acknowledged. 3307 * @param nameOfTopic the name of the topic 3308 * @param indexOfMessage the index of the received message 3309 * @throws VerifyFailedException if verification fails 3310 */ 3311 public void verifyReceivedTopicMessageNotAcknowledged(String nameOfTopic, int indexOfMessage) 3312 { 3313 checkTopicByName(nameOfTopic); 3314 List messageList = getReceivedMessageListFromTopic(nameOfTopic); 3315 if(indexOfMessage >= messageList.size()) 3316 { 3317 throw new VerifyFailedException("Topic " + nameOfTopic + " received only " + messageList.size() + " messages"); 3318 } 3319 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3320 if(message.isAcknowledged()) 3321 { 3322 throw new VerifyFailedException("Message " + indexOfMessage + " of topic " + nameOfTopic + " is acknowledged"); 3323 } 3324 } 3325 3326 /** 3327 * Verifies that a message received by a temporary topic is acknowledged. 3328 * The session has to be created using the current {@link MockTopicConnection}. 3329 * @param indexOfSession the index of the session 3330 * @param indexOfTopic the index of the temporary topic 3331 * @param indexOfMessage the index of the received message 3332 * @throws VerifyFailedException if verification fails 3333 */ 3334 public void verifyReceivedTopicMessageAcknowledged(int indexOfSession, int indexOfTopic, int indexOfMessage) 3335 { 3336 checkAndGetTopicSessionByIndex(indexOfSession); 3337 List messageList = getReceivedMessageListFromTemporaryTopic(indexOfSession, indexOfTopic); 3338 if(null == messageList) 3339 { 3340 throw new VerifyFailedException("Temporary topic with index " + indexOfTopic + " of session with index " + indexOfSession + " does not exist"); 3341 } 3342 if(indexOfMessage >= messageList.size()) 3343 { 3344 throw new VerifyFailedException("Temporary topic with index " + indexOfTopic + " received only " + messageList.size() + " messages"); 3345 } 3346 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3347 if(!message.isAcknowledged()) 3348 { 3349 throw new VerifyFailedException("Message " + indexOfMessage + " of temporary topic " + indexOfTopic + " is not acknowledged"); 3350 } 3351 } 3352 3353 /** 3354 * Verifies that a message received by a temporary topic is not acknowledged. 3355 * The session has to be created using the current {@link MockTopicConnection}. 3356 * @param indexOfSession the index of the session 3357 * @param indexOfTopic the index of the temporary topic 3358 * @param indexOfMessage the index of the received message 3359 * @throws VerifyFailedException if verification fails 3360 */ 3361 public void verifyReceivedTopicMessageNotAcknowledged(int indexOfSession, int indexOfTopic, int indexOfMessage) 3362 { 3363 checkAndGetTopicSessionByIndex(indexOfSession); 3364 List messageList = getReceivedMessageListFromTemporaryTopic(indexOfSession, indexOfTopic); 3365 if(null == messageList) 3366 { 3367 throw new VerifyFailedException("Temporary topic with index " + indexOfTopic + " of session with index " + indexOfSession + " does not exist"); 3368 } 3369 if(indexOfMessage >= messageList.size()) 3370 { 3371 throw new VerifyFailedException("Temporary topic with index " + indexOfTopic + " received only " + messageList.size() + " messages"); 3372 } 3373 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3374 if(message.isAcknowledged()) 3375 { 3376 throw new VerifyFailedException("Message " + indexOfMessage + " of temporary topic " + indexOfTopic + " is acknowledged"); 3377 } 3378 } 3379 3380 /** 3381 * Verifies the number of messages created with 3382 * {@link MockTopicSession#createMessage}. 3383 * The session has to be created using the current {@link MockTopicConnection}. 3384 * @param indexOfSession the index of the session 3385 * @param number the expected number of messages 3386 * @throws VerifyFailedException if verification fails 3387 */ 3388 public void verifyNumberOfCreatedTopicMessages(int indexOfSession, int number) 3389 { 3390 checkAndGetTopicSessionByIndex(indexOfSession); 3391 if(number != getTopicMessageManager(indexOfSession).getMessageList().size()) 3392 { 3393 throw new VerifyFailedException("Expected " + number + " messages, received " + getTopicMessageManager(indexOfSession).getMessageList().size() + " messages"); 3394 } 3395 } 3396 3397 /** 3398 * Verifies the number of bytes messages created with 3399 * {@link MockTopicSession#createBytesMessage}. 3400 * The session has to be created using the current {@link MockTopicConnection}. 3401 * @param indexOfSession the index of the session 3402 * @param number the expected number of bytes messages 3403 * @throws VerifyFailedException if verification fails 3404 */ 3405 public void verifyNumberOfCreatedTopicBytesMessages(int indexOfSession, int number) 3406 { 3407 checkAndGetTopicSessionByIndex(indexOfSession); 3408 if(number != getTopicMessageManager(indexOfSession).getBytesMessageList().size()) 3409 { 3410 throw new VerifyFailedException("Expected " + number + " bytes messages, received " + getTopicMessageManager(indexOfSession).getBytesMessageList().size() + " bytes messages"); 3411 } 3412 } 3413 3414 /** 3415 * Verifies the number of map messages created with 3416 * {@link MockTopicSession#createMapMessage}. 3417 * The session has to be created using the current {@link MockTopicConnection}. 3418 * @param indexOfSession the index of the session 3419 * @param number the expected number of map messages 3420 * @throws VerifyFailedException if verification fails 3421 */ 3422 public void verifyNumberOfCreatedTopicMapMessages(int indexOfSession, int number) 3423 { 3424 checkAndGetTopicSessionByIndex(indexOfSession); 3425 if(number != getTopicMessageManager(indexOfSession).getMapMessageList().size()) 3426 { 3427 throw new VerifyFailedException("Expected " + number + " map messages, received " + getTopicMessageManager(indexOfSession).getMapMessageList().size() + " map messages"); 3428 } 3429 } 3430 3431 /** 3432 * Verifies the number of text messages created with 3433 * {@link MockTopicSession#createTextMessage}. 3434 * The session has to be created using the current {@link MockTopicConnection}. 3435 * @param indexOfSession the index of the session 3436 * @param number the expected number of text messages 3437 * @throws VerifyFailedException if verification fails 3438 */ 3439 public void verifyNumberOfCreatedTopicTextMessages(int indexOfSession, int number) 3440 { 3441 checkAndGetTopicSessionByIndex(indexOfSession); 3442 if(number != getTopicMessageManager(indexOfSession).getTextMessageList().size()) 3443 { 3444 throw new VerifyFailedException("Expected " + number + " text messages, received " + getTopicMessageManager(indexOfSession).getTextMessageList().size() + " text messages"); 3445 } 3446 } 3447 3448 /** 3449 * Verifies the number of stream messages created with 3450 * {@link MockTopicSession#createStreamMessage}. 3451 * The session has to be created using the current {@link MockTopicConnection}. 3452 * @param indexOfSession the index of the session 3453 * @param number the expected number of stream messages 3454 * @throws VerifyFailedException if verification fails 3455 */ 3456 public void verifyNumberOfCreatedTopicStreamMessages(int indexOfSession, int number) 3457 { 3458 checkAndGetTopicSessionByIndex(indexOfSession); 3459 if(number != getTopicMessageManager(indexOfSession).getStreamMessageList().size()) 3460 { 3461 throw new VerifyFailedException("Expected " + number + " stream messages, received " + getTopicMessageManager(indexOfSession).getStreamMessageList().size() + " stream messages"); 3462 } 3463 } 3464 3465 /** 3466 * Verifies the number of object messages created with 3467 * {@link MockTopicSession#createObjectMessage}. 3468 * The session has to be created using the current {@link MockTopicConnection}. 3469 * @param indexOfSession the index of the session 3470 * @param number the expected number of object messages 3471 * @throws VerifyFailedException if verification fails 3472 */ 3473 public void verifyNumberOfCreatedTopicObjectMessages(int indexOfSession, int number) 3474 { 3475 checkAndGetTopicSessionByIndex(indexOfSession); 3476 if(number != getTopicMessageManager(indexOfSession).getObjectMessageList().size()) 3477 { 3478 throw new VerifyFailedException("Expected " + number + " object messages, received " + getTopicMessageManager(indexOfSession).getObjectMessageList().size() + " object messages"); 3479 } 3480 } 3481 3482 /** 3483 * Verifies that a message created with {@link MockTopicSession#createMessage} 3484 * is acknowledged. This method makes sense if messages are not cloned 3485 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3486 * If messages are cloned, the cloned message is acknowledged instead of 3487 * the created message. 3488 * The session has to be created using the current {@link MockTopicConnection}. 3489 * @param indexOfSession the index of the session 3490 * @param indexOfMessage the index of the message 3491 * @throws VerifyFailedException if verification fails 3492 */ 3493 public void verifyCreatedTopicMessageAcknowledged(int indexOfSession, int indexOfMessage) 3494 { 3495 checkAndGetTopicSessionByIndex(indexOfSession); 3496 List messageList = getTopicMessageManager(indexOfSession).getMessageList(); 3497 if(indexOfMessage >= messageList.size()) 3498 { 3499 throw new VerifyFailedException("Only " + messageList.size() + " messages created for session " + indexOfSession); 3500 } 3501 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3502 if(!message.isAcknowledged()) 3503 { 3504 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 3505 } 3506 } 3507 3508 /** 3509 * Verifies that a message created with {@link MockTopicSession#createMessage} 3510 * is not acknowledged. This method makes sense if messages are not cloned 3511 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3512 * If messages are cloned, the cloned message is acknowledged instead of 3513 * the created message. 3514 * The session has to be created using the current {@link MockTopicConnection}. 3515 * @param indexOfSession the index of the session 3516 * @param indexOfMessage the index of the message 3517 * @throws VerifyFailedException if verification fails 3518 */ 3519 public void verifyCreatedTopicMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 3520 { 3521 checkAndGetTopicSessionByIndex(indexOfSession); 3522 List messageList = getTopicMessageManager(indexOfSession).getMessageList(); 3523 if(indexOfMessage >= messageList.size()) 3524 { 3525 throw new VerifyFailedException("Only " + messageList.size() + " messages created for session " + indexOfSession); 3526 } 3527 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3528 if(message.isAcknowledged()) 3529 { 3530 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 3531 } 3532 } 3533 3534 /** 3535 * Verifies that a bytes message created with {@link MockTopicSession#createMessage} 3536 * is acknowledged. This method makes sense if messages are not cloned 3537 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3538 * If messages are cloned, the cloned message is acknowledged instead of 3539 * the created message. 3540 * The session has to be created using the current {@link MockTopicConnection}. 3541 * @param indexOfSession the index of the session 3542 * @param indexOfMessage the index of the message 3543 * @throws VerifyFailedException if verification fails 3544 */ 3545 public void verifyCreatedTopicBytesMessageAcknowledged(int indexOfSession, int indexOfMessage) 3546 { 3547 checkAndGetTopicSessionByIndex(indexOfSession); 3548 List messageList = getTopicMessageManager(indexOfSession).getBytesMessageList(); 3549 if(indexOfMessage >= messageList.size()) 3550 { 3551 throw new VerifyFailedException("Only " + messageList.size() + " bytes messages created for session " + indexOfSession); 3552 } 3553 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3554 if(!message.isAcknowledged()) 3555 { 3556 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 3557 } 3558 } 3559 3560 /** 3561 * Verifies that a bytes message created with {@link MockTopicSession#createMessage} 3562 * is not acknowledged. This method makes sense if messages are not cloned 3563 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3564 * If messages are cloned, the cloned message is acknowledged instead of 3565 * the created message. 3566 * The session has to be created using the current {@link MockTopicConnection}. 3567 * @param indexOfSession the index of the session 3568 * @param indexOfMessage the index of the message 3569 * @throws VerifyFailedException if verification fails 3570 */ 3571 public void verifyCreatedTopicBytesMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 3572 { 3573 checkAndGetTopicSessionByIndex(indexOfSession); 3574 List messageList = getTopicMessageManager(indexOfSession).getBytesMessageList(); 3575 if(indexOfMessage >= messageList.size()) 3576 { 3577 throw new VerifyFailedException("Only " + messageList.size() + " bytes messages created for session " + indexOfSession); 3578 } 3579 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3580 if(message.isAcknowledged()) 3581 { 3582 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 3583 } 3584 } 3585 3586 /** 3587 * Verifies that a map message created with {@link MockTopicSession#createMessage} 3588 * is acknowledged. This method makes sense if messages are not cloned 3589 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3590 * If messages are cloned, the cloned message is acknowledged instead of 3591 * the created message. 3592 * The session has to be created using the current {@link MockTopicConnection}. 3593 * @param indexOfSession the index of the session 3594 * @param indexOfMessage the index of the message 3595 * @throws VerifyFailedException if verification fails 3596 */ 3597 public void verifyCreatedTopicMapMessageAcknowledged(int indexOfSession, int indexOfMessage) 3598 { 3599 checkAndGetTopicSessionByIndex(indexOfSession); 3600 List messageList = getTopicMessageManager(indexOfSession).getMapMessageList(); 3601 if(indexOfMessage >= messageList.size()) 3602 { 3603 throw new VerifyFailedException("Only " + messageList.size() + " map messages created for session " + indexOfSession); 3604 } 3605 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3606 if(!message.isAcknowledged()) 3607 { 3608 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 3609 } 3610 } 3611 3612 /** 3613 * Verifies that a map message created with {@link MockTopicSession#createMessage} 3614 * is not acknowledged. This method makes sense if messages are not cloned 3615 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3616 * If messages are cloned, the cloned message is acknowledged instead of 3617 * the created message. 3618 * The session has to be created using the current {@link MockTopicConnection}. 3619 * @param indexOfSession the index of the session 3620 * @param indexOfMessage the index of the message 3621 * @throws VerifyFailedException if verification fails 3622 */ 3623 public void verifyCreatedTopicMapMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 3624 { 3625 checkAndGetTopicSessionByIndex(indexOfSession); 3626 List messageList = getTopicMessageManager(indexOfSession).getMapMessageList(); 3627 if(indexOfMessage >= messageList.size()) 3628 { 3629 throw new VerifyFailedException("Only " + messageList.size() + " map messages created for session " + indexOfSession); 3630 } 3631 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3632 if(message.isAcknowledged()) 3633 { 3634 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 3635 } 3636 } 3637 3638 /** 3639 * Verifies that a text message created with {@link MockTopicSession#createMessage} 3640 * is acknowledged. This method makes sense if messages are not cloned 3641 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3642 * If messages are cloned, the cloned message is acknowledged instead of 3643 * the created message. 3644 * The session has to be created using the current {@link MockTopicConnection}. 3645 * @param indexOfSession the index of the session 3646 * @param indexOfMessage the index of the message 3647 * @throws VerifyFailedException if verification fails 3648 */ 3649 public void verifyCreatedTopicTextMessageAcknowledged(int indexOfSession, int indexOfMessage) 3650 { 3651 checkAndGetTopicSessionByIndex(indexOfSession); 3652 List messageList = getTopicMessageManager(indexOfSession).getTextMessageList(); 3653 if(indexOfMessage >= messageList.size()) 3654 { 3655 throw new VerifyFailedException("Only " + messageList.size() + " text messages created for session " + indexOfSession); 3656 } 3657 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3658 if(!message.isAcknowledged()) 3659 { 3660 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 3661 } 3662 } 3663 3664 /** 3665 * Verifies that a text message created with {@link MockTopicSession#createMessage} 3666 * is not acknowledged. This method makes sense if messages are not cloned 3667 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3668 * If messages are cloned, the cloned message is acknowledged instead of 3669 * the created message. 3670 * The session has to be created using the current {@link MockTopicConnection}. 3671 * @param indexOfSession the index of the session 3672 * @param indexOfMessage the index of the message 3673 * @throws VerifyFailedException if verification fails 3674 */ 3675 public void verifyCreatedTopicTextMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 3676 { 3677 checkAndGetTopicSessionByIndex(indexOfSession); 3678 List messageList = getTopicMessageManager(indexOfSession).getTextMessageList(); 3679 if(indexOfMessage >= messageList.size()) 3680 { 3681 throw new VerifyFailedException("Only " + messageList.size() + " text messages created for session " + indexOfSession); 3682 } 3683 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3684 if(message.isAcknowledged()) 3685 { 3686 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 3687 } 3688 } 3689 3690 /** 3691 * Verifies that a stream message created with {@link MockTopicSession#createMessage} 3692 * is acknowledged. This method makes sense if messages are not cloned 3693 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3694 * If messages are cloned, the cloned message is acknowledged instead of 3695 * the created message. 3696 * The session has to be created using the current {@link MockTopicConnection}. 3697 * @param indexOfSession the index of the session 3698 * @param indexOfMessage the index of the message 3699 * @throws VerifyFailedException if verification fails 3700 */ 3701 public void verifyCreatedTopicStreamMessageAcknowledged(int indexOfSession, int indexOfMessage) 3702 { 3703 checkAndGetTopicSessionByIndex(indexOfSession); 3704 List messageList = getTopicMessageManager(indexOfSession).getStreamMessageList(); 3705 if(indexOfMessage >= messageList.size()) 3706 { 3707 throw new VerifyFailedException("Only " + messageList.size() + " stream messages created for session " + indexOfSession); 3708 } 3709 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3710 if(!message.isAcknowledged()) 3711 { 3712 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 3713 } 3714 } 3715 3716 /** 3717 * Verifies that a stream message created with {@link MockTopicSession#createMessage} 3718 * is not acknowledged. This method makes sense if messages are not cloned 3719 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3720 * If messages are cloned, the cloned message is acknowledged instead of 3721 * the created message. 3722 * The session has to be created using the current {@link MockTopicConnection}. 3723 * @param indexOfSession the index of the session 3724 * @param indexOfMessage the index of the message 3725 * @throws VerifyFailedException if verification fails 3726 */ 3727 public void verifyCreatedTopicStreamMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 3728 { 3729 checkAndGetTopicSessionByIndex(indexOfSession); 3730 List messageList = getTopicMessageManager(indexOfSession).getStreamMessageList(); 3731 if(indexOfMessage >= messageList.size()) 3732 { 3733 throw new VerifyFailedException("Only " + messageList.size() + " stream messages created for session " + indexOfSession); 3734 } 3735 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3736 if(message.isAcknowledged()) 3737 { 3738 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 3739 } 3740 } 3741 3742 /** 3743 * Verifies that a object message created with {@link MockTopicSession#createMessage} 3744 * is acknowledged. This method makes sense if messages are not cloned 3745 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3746 * If messages are cloned, the cloned message is acknowledged instead of 3747 * the created message. 3748 * The session has to be created using the current {@link MockTopicConnection}. 3749 * @param indexOfSession the index of the session 3750 * @param indexOfMessage the index of the message 3751 * @throws VerifyFailedException if verification fails 3752 */ 3753 public void verifyCreatedTopicObjectMessageAcknowledged(int indexOfSession, int indexOfMessage) 3754 { 3755 checkAndGetTopicSessionByIndex(indexOfSession); 3756 List messageList = getTopicMessageManager(indexOfSession).getObjectMessageList(); 3757 if(indexOfMessage >= messageList.size()) 3758 { 3759 throw new VerifyFailedException("Only " + messageList.size() + " object messages created for session " + indexOfSession); 3760 } 3761 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3762 if(!message.isAcknowledged()) 3763 { 3764 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 3765 } 3766 } 3767 3768 /** 3769 * Verifies that a object message created with {@link MockTopicSession#createMessage} 3770 * is not acknowledged. This method makes sense if messages are not cloned 3771 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3772 * If messages are cloned, the cloned message is acknowledged instead of 3773 * the created message. 3774 * The session has to be created using the current {@link MockTopicConnection}. 3775 * @param indexOfSession the index of the session 3776 * @param indexOfMessage the index of the message 3777 * @throws VerifyFailedException if verification fails 3778 */ 3779 public void verifyCreatedTopicObjectMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 3780 { 3781 checkAndGetTopicSessionByIndex(indexOfSession); 3782 List messageList = getTopicMessageManager(indexOfSession).getObjectMessageList(); 3783 if(indexOfMessage >= messageList.size()) 3784 { 3785 throw new VerifyFailedException("Only " + messageList.size() + " object messages created for session " + indexOfSession); 3786 } 3787 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3788 if(message.isAcknowledged()) 3789 { 3790 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 3791 } 3792 } 3793 3794 /** 3795 * Verifies the number of messages created with 3796 * {@link MockSession#createMessage}. 3797 * The session has to be created using the current {@link MockConnection}. 3798 * @param indexOfSession the index of the session 3799 * @param number the expected number of messages 3800 * @throws VerifyFailedException if verification fails 3801 */ 3802 public void verifyNumberOfCreatedMessages(int indexOfSession, int number) 3803 { 3804 checkAndGetSessionByIndex(indexOfSession); 3805 if(number != getMessageManager(indexOfSession).getMessageList().size()) 3806 { 3807 throw new VerifyFailedException("Expected " + number + " messages, received " + getMessageManager(indexOfSession).getMessageList().size() + " messages"); 3808 } 3809 } 3810 3811 /** 3812 * Verifies the number of bytes messages created with 3813 * {@link MockSession#createBytesMessage}. 3814 * The session has to be created using the current {@link MockConnection}. 3815 * @param indexOfSession the index of the session 3816 * @param number the expected number of bytes messages 3817 * @throws VerifyFailedException if verification fails 3818 */ 3819 public void verifyNumberOfCreatedBytesMessages(int indexOfSession, int number) 3820 { 3821 checkAndGetSessionByIndex(indexOfSession); 3822 if(number != getMessageManager(indexOfSession).getBytesMessageList().size()) 3823 { 3824 throw new VerifyFailedException("Expected " + number + " bytes messages, received " + getMessageManager(indexOfSession).getBytesMessageList().size() + " bytes messages"); 3825 } 3826 } 3827 3828 /** 3829 * Verifies the number of map messages created with 3830 * {@link MockSession#createMapMessage}. 3831 * The session has to be created using the current {@link MockConnection}. 3832 * @param indexOfSession the index of the session 3833 * @param number the expected number of map messages 3834 * @throws VerifyFailedException if verification fails 3835 */ 3836 public void verifyNumberOfCreatedMapMessages(int indexOfSession, int number) 3837 { 3838 checkAndGetSessionByIndex(indexOfSession); 3839 if(number != getMessageManager(indexOfSession).getMapMessageList().size()) 3840 { 3841 throw new VerifyFailedException("Expected " + number + " map messages, received " + getMessageManager(indexOfSession).getMapMessageList().size() + " map messages"); 3842 } 3843 } 3844 3845 /** 3846 * Verifies the number of text messages created with 3847 * {@link MockSession#createTextMessage}. 3848 * The session has to be created using the current {@link MockConnection}. 3849 * @param indexOfSession the index of the session 3850 * @param number the expected number of text messages 3851 * @throws VerifyFailedException if verification fails 3852 */ 3853 public void verifyNumberOfCreatedTextMessages(int indexOfSession, int number) 3854 { 3855 checkAndGetSessionByIndex(indexOfSession); 3856 if(number != getMessageManager(indexOfSession).getTextMessageList().size()) 3857 { 3858 throw new VerifyFailedException("Expected " + number + " text messages, received " + getMessageManager(indexOfSession).getTextMessageList().size() + " text messages"); 3859 } 3860 } 3861 3862 /** 3863 * Verifies the number of stream messages created with 3864 * {@link MockSession#createStreamMessage}. 3865 * The session has to be created using the current {@link MockConnection}. 3866 * @param indexOfSession the index of the session 3867 * @param number the expected number of stream messages 3868 * @throws VerifyFailedException if verification fails 3869 */ 3870 public void verifyNumberOfCreatedStreamMessages(int indexOfSession, int number) 3871 { 3872 checkAndGetSessionByIndex(indexOfSession); 3873 if(number != getMessageManager(indexOfSession).getStreamMessageList().size()) 3874 { 3875 throw new VerifyFailedException("Expected " + number + " stream messages, received " + getMessageManager(indexOfSession).getStreamMessageList().size() + " stream messages"); 3876 } 3877 } 3878 3879 /** 3880 * Verifies the number of object messages created with 3881 * {@link MockSession#createObjectMessage}. 3882 * The session has to be created using the current {@link MockConnection}. 3883 * @param indexOfSession the index of the session 3884 * @param number the expected number of object messages 3885 * @throws VerifyFailedException if verification fails 3886 */ 3887 public void verifyNumberOfCreatedObjectMessages(int indexOfSession, int number) 3888 { 3889 checkAndGetSessionByIndex(indexOfSession); 3890 if(number != getMessageManager(indexOfSession).getObjectMessageList().size()) 3891 { 3892 throw new VerifyFailedException("Expected " + number + " object messages, received " + getMessageManager(indexOfSession).getObjectMessageList().size() + " object messages"); 3893 } 3894 } 3895 3896 /** 3897 * Verifies that a message created with {@link MockSession#createMessage} 3898 * is acknowledged. This method makes sense if messages are not cloned 3899 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3900 * If messages are cloned, the cloned message is acknowledged instead of 3901 * the created message. 3902 * The session has to be created using the current {@link MockConnection}. 3903 * @param indexOfSession the index of the session 3904 * @param indexOfMessage the index of the message 3905 * @throws VerifyFailedException if verification fails 3906 */ 3907 public void verifyCreatedMessageAcknowledged(int indexOfSession, int indexOfMessage) 3908 { 3909 checkAndGetSessionByIndex(indexOfSession); 3910 List messageList = getMessageManager(indexOfSession).getMessageList(); 3911 if(indexOfMessage >= messageList.size()) 3912 { 3913 throw new VerifyFailedException("Only " + messageList.size() + " messages created for session " + indexOfSession); 3914 } 3915 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3916 if(!message.isAcknowledged()) 3917 { 3918 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 3919 } 3920 } 3921 3922 /** 3923 * Verifies that a message created with {@link MockSession#createMessage} 3924 * is not acknowledged. This method makes sense if messages are not cloned 3925 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3926 * If messages are cloned, the cloned message is acknowledged instead of 3927 * the created message. 3928 * The session has to be created using the current {@link MockConnection}. 3929 * @param indexOfSession the index of the session 3930 * @param indexOfMessage the index of the message 3931 * @throws VerifyFailedException if verification fails 3932 */ 3933 public void verifyCreatedMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 3934 { 3935 checkAndGetSessionByIndex(indexOfSession); 3936 List messageList = getMessageManager(indexOfSession).getMessageList(); 3937 if(indexOfMessage >= messageList.size()) 3938 { 3939 throw new VerifyFailedException("Only " + messageList.size() + " messages created for session " + indexOfSession); 3940 } 3941 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3942 if(message.isAcknowledged()) 3943 { 3944 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 3945 } 3946 } 3947 3948 /** 3949 * Verifies that a bytes message created with {@link MockSession#createMessage} 3950 * is acknowledged. This method makes sense if messages are not cloned 3951 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3952 * If messages are cloned, the cloned message is acknowledged instead of 3953 * the created message. 3954 * The session has to be created using the current {@link MockConnection}. 3955 * @param indexOfSession the index of the session 3956 * @param indexOfMessage the index of the message 3957 * @throws VerifyFailedException if verification fails 3958 */ 3959 public void verifyCreatedBytesMessageAcknowledged(int indexOfSession, int indexOfMessage) 3960 { 3961 checkAndGetSessionByIndex(indexOfSession); 3962 List messageList = getMessageManager(indexOfSession).getBytesMessageList(); 3963 if(indexOfMessage >= messageList.size()) 3964 { 3965 throw new VerifyFailedException("Only " + messageList.size() + " bytes messages created for session " + indexOfSession); 3966 } 3967 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3968 if(!message.isAcknowledged()) 3969 { 3970 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 3971 } 3972 } 3973 3974 /** 3975 * Verifies that a bytes message created with {@link MockSession#createMessage} 3976 * is not acknowledged. This method makes sense if messages are not cloned 3977 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 3978 * If messages are cloned, the cloned message is acknowledged instead of 3979 * the created message. 3980 * The session has to be created using the current {@link MockConnection}. 3981 * @param indexOfSession the index of the session 3982 * @param indexOfMessage the index of the message 3983 * @throws VerifyFailedException if verification fails 3984 */ 3985 public void verifyCreatedBytesMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 3986 { 3987 checkAndGetSessionByIndex(indexOfSession); 3988 List messageList = getMessageManager(indexOfSession).getBytesMessageList(); 3989 if(indexOfMessage >= messageList.size()) 3990 { 3991 throw new VerifyFailedException("Only " + messageList.size() + " bytes messages created for session " + indexOfSession); 3992 } 3993 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 3994 if(message.isAcknowledged()) 3995 { 3996 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 3997 } 3998 } 3999 4000 /** 4001 * Verifies that a map message created with {@link MockSession#createMessage} 4002 * is acknowledged. This method makes sense if messages are not cloned 4003 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 4004 * If messages are cloned, the cloned message is acknowledged instead of 4005 * the created message. 4006 * The session has to be created using the current {@link MockConnection}. 4007 * @param indexOfSession the index of the session 4008 * @param indexOfMessage the index of the message 4009 * @throws VerifyFailedException if verification fails 4010 */ 4011 public void verifyCreatedMapMessageAcknowledged(int indexOfSession, int indexOfMessage) 4012 { 4013 checkAndGetSessionByIndex(indexOfSession); 4014 List messageList = getMessageManager(indexOfSession).getMapMessageList(); 4015 if(indexOfMessage >= messageList.size()) 4016 { 4017 throw new VerifyFailedException("Only " + messageList.size() + " map messages created for session " + indexOfSession); 4018 } 4019 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 4020 if(!message.isAcknowledged()) 4021 { 4022 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 4023 } 4024 } 4025 4026 /** 4027 * Verifies that a map message created with {@link MockSession#createMessage} 4028 * is not acknowledged. This method makes sense if messages are not cloned 4029 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 4030 * If messages are cloned, the cloned message is acknowledged instead of 4031 * the created message. 4032 * The session has to be created using the current {@link MockConnection}. 4033 * @param indexOfSession the index of the session 4034 * @param indexOfMessage the index of the message 4035 * @throws VerifyFailedException if verification fails 4036 */ 4037 public void verifyCreatedMapMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 4038 { 4039 checkAndGetSessionByIndex(indexOfSession); 4040 List messageList = getMessageManager(indexOfSession).getMapMessageList(); 4041 if(indexOfMessage >= messageList.size()) 4042 { 4043 throw new VerifyFailedException("Only " + messageList.size() + " map messages created for session " + indexOfSession); 4044 } 4045 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 4046 if(message.isAcknowledged()) 4047 { 4048 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 4049 } 4050 } 4051 4052 /** 4053 * Verifies that a text message created with {@link MockSession#createMessage} 4054 * is acknowledged. This method makes sense if messages are not cloned 4055 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 4056 * If messages are cloned, the cloned message is acknowledged instead of 4057 * the created message. 4058 * The session has to be created using the current {@link MockConnection}. 4059 * @param indexOfSession the index of the session 4060 * @param indexOfMessage the index of the message 4061 * @throws VerifyFailedException if verification fails 4062 */ 4063 public void verifyCreatedTextMessageAcknowledged(int indexOfSession, int indexOfMessage) 4064 { 4065 checkAndGetSessionByIndex(indexOfSession); 4066 List messageList = getMessageManager(indexOfSession).getTextMessageList(); 4067 if(indexOfMessage >= messageList.size()) 4068 { 4069 throw new VerifyFailedException("Only " + messageList.size() + " text messages created for session " + indexOfSession); 4070 } 4071 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 4072 if(!message.isAcknowledged()) 4073 { 4074 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 4075 } 4076 } 4077 4078 /** 4079 * Verifies that a text message created with {@link MockSession#createMessage} 4080 * is not acknowledged. This method makes sense if messages are not cloned 4081 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 4082 * If messages are cloned, the cloned message is acknowledged instead of 4083 * the created message. 4084 * The session has to be created using the current {@link MockConnection}. 4085 * @param indexOfSession the index of the session 4086 * @param indexOfMessage the index of the message 4087 * @throws VerifyFailedException if verification fails 4088 */ 4089 public void verifyCreatedTextMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 4090 { 4091 checkAndGetSessionByIndex(indexOfSession); 4092 List messageList = getMessageManager(indexOfSession).getTextMessageList(); 4093 if(indexOfMessage >= messageList.size()) 4094 { 4095 throw new VerifyFailedException("Only " + messageList.size() + " text messages created for session " + indexOfSession); 4096 } 4097 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 4098 if(message.isAcknowledged()) 4099 { 4100 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 4101 } 4102 } 4103 4104 /** 4105 * Verifies that a stream message created with {@link MockSession#createMessage} 4106 * is acknowledged. This method makes sense if messages are not cloned 4107 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 4108 * If messages are cloned, the cloned message is acknowledged instead of 4109 * the created message. 4110 * The session has to be created using the current {@link MockConnection}. 4111 * @param indexOfSession the index of the session 4112 * @param indexOfMessage the index of the message 4113 * @throws VerifyFailedException if verification fails 4114 */ 4115 public void verifyCreatedStreamMessageAcknowledged(int indexOfSession, int indexOfMessage) 4116 { 4117 checkAndGetSessionByIndex(indexOfSession); 4118 List messageList = getMessageManager(indexOfSession).getStreamMessageList(); 4119 if(indexOfMessage >= messageList.size()) 4120 { 4121 throw new VerifyFailedException("Only " + messageList.size() + " stream messages created for session " + indexOfSession); 4122 } 4123 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 4124 if(!message.isAcknowledged()) 4125 { 4126 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 4127 } 4128 } 4129 4130 /** 4131 * Verifies that a stream message created with {@link MockSession#createMessage} 4132 * is not acknowledged. This method makes sense if messages are not cloned 4133 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 4134 * If messages are cloned, the cloned message is acknowledged instead of 4135 * the created message. 4136 * The session has to be created using the current {@link MockConnection}. 4137 * @param indexOfSession the index of the session 4138 * @param indexOfMessage the index of the message 4139 * @throws VerifyFailedException if verification fails 4140 */ 4141 public void verifyCreatedStreamMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 4142 { 4143 checkAndGetSessionByIndex(indexOfSession); 4144 List messageList = getMessageManager(indexOfSession).getStreamMessageList(); 4145 if(indexOfMessage >= messageList.size()) 4146 { 4147 throw new VerifyFailedException("Only " + messageList.size() + " stream messages created for session " + indexOfSession); 4148 } 4149 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 4150 if(message.isAcknowledged()) 4151 { 4152 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 4153 } 4154 } 4155 4156 /** 4157 * Verifies that a object message created with {@link MockSession#createMessage} 4158 * is acknowledged. This method makes sense if messages are not cloned 4159 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 4160 * If messages are cloned, the cloned message is acknowledged instead of 4161 * the created message. 4162 * The session has to be created using the current {@link MockConnection}. 4163 * @param indexOfSession the index of the session 4164 * @param indexOfMessage the index of the message 4165 * @throws VerifyFailedException if verification fails 4166 */ 4167 public void verifyCreatedObjectMessageAcknowledged(int indexOfSession, int indexOfMessage) 4168 { 4169 checkAndGetSessionByIndex(indexOfSession); 4170 List messageList = getMessageManager(indexOfSession).getObjectMessageList(); 4171 if(indexOfMessage >= messageList.size()) 4172 { 4173 throw new VerifyFailedException("Only " + messageList.size() + " object messages created for session " + indexOfSession); 4174 } 4175 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 4176 if(!message.isAcknowledged()) 4177 { 4178 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is not acknowledged"); 4179 } 4180 } 4181 4182 /** 4183 * Verifies that a object message created with {@link MockSession#createMessage} 4184 * is not acknowledged. This method makes sense if messages are not cloned 4185 * when sending them. This is the default, use {@link ConfigurationManager#setDoCloneOnSend}. 4186 * If messages are cloned, the cloned message is acknowledged instead of 4187 * the created message. 4188 * The session has to be created using the current {@link MockConnection}. 4189 * @param indexOfSession the index of the session 4190 * @param indexOfMessage the index of the message 4191 * @throws VerifyFailedException if verification fails 4192 */ 4193 public void verifyCreatedObjectMessageNotAcknowledged(int indexOfSession, int indexOfMessage) 4194 { 4195 checkAndGetSessionByIndex(indexOfSession); 4196 List messageList = getMessageManager(indexOfSession).getObjectMessageList(); 4197 if(indexOfMessage >= messageList.size()) 4198 { 4199 throw new VerifyFailedException("Only " + messageList.size() + " object messages created for session " + indexOfSession); 4200 } 4201 MockMessage message = (MockMessage)messageList.get(indexOfMessage); 4202 if(message.isAcknowledged()) 4203 { 4204 throw new VerifyFailedException("Message " + indexOfMessage + " of session " + indexOfSession + " is acknowledged"); 4205 } 4206 } 4207 4208 private MockQueueSession checkAndGetQueueSessionByIndex(int indexOfSession) 4209 { 4210 if(null == getCurrentQueueConnection()) 4211 { 4212 throw new VerifyFailedException("No QueueConnection present."); 4213 } 4214 MockQueueSession session = getQueueSession(indexOfSession); 4215 if(null == session) 4216 { 4217 throw new VerifyFailedException("QueueSession with index " + indexOfSession + " does not exist."); 4218 } 4219 return session; 4220 } 4221 4222 private MockTopicSession checkAndGetTopicSessionByIndex(int indexOfSession) 4223 { 4224 if(null == getCurrentTopicConnection()) 4225 { 4226 throw new VerifyFailedException("No TopicConnection present."); 4227 } 4228 MockTopicSession session = getTopicSession(indexOfSession); 4229 if(null == session) 4230 { 4231 throw new VerifyFailedException("TopicSession with index " + indexOfSession + " does not exist."); 4232 } 4233 return session; 4234 } 4235 4236 private MockSession checkAndGetSessionByIndex(int indexOfSession) 4237 { 4238 if(null == getCurrentConnection()) 4239 { 4240 throw new VerifyFailedException("No Connection present."); 4241 } 4242 MockSession session = getSession(indexOfSession); 4243 if(null == session) 4244 { 4245 throw new VerifyFailedException("Session with index " + indexOfSession + " does not exist."); 4246 } 4247 return session; 4248 } 4249 4250 private void checkQueueByName(String queueName) 4251 { 4252 DestinationManager destinationManager = getDestinationManager(); 4253 if(null == destinationManager.getQueue(queueName)) 4254 { 4255 throw new VerifyFailedException("Queue with name " + queueName + " is not present."); 4256 } 4257 } 4258 4259 private void checkTopicByName(String topicName) 4260 { 4261 DestinationManager destinationManager = getDestinationManager(); 4262 if(null == destinationManager.getTopic(topicName)) 4263 { 4264 throw new VerifyFailedException("Topic with name " + topicName + " is not present."); 4265 } 4266 } 4267 }