FileDocCategorySizeDatePackage
JmsClient_ReservationProducer.javaAPI DocExample2725Sun May 26 00:33:18 BST 2002com.titan.clients

JmsClient_ReservationProducer

public class JmsClient_ReservationProducer extends Object

Fields Summary
Constructors Summary
Methods Summary
public static javax.naming.ContextgetInitialContext()

      return new InitialContext ();
   
public static voidmain(java.lang.String[] args)

      
      if (args.length != 2)
         throw new Exception ("Usage: java JmsClient_ReservationProducer <CruiseID> <count>");
      
      Integer cruiseID = new Integer (args[0]);
      int count = new Integer (args[1]).intValue ();
      
      Context jndiContext = getInitialContext ();
      
      QueueConnectionFactory factory = (QueueConnectionFactory)jndiContext.lookup ("ConnectionFactory");
      
      Queue reservationQueue = (Queue)jndiContext.lookup ("queue/titan-ReservationQueue");
      Queue ticketQueue = (Queue)jndiContext.lookup ("queue/titan-TicketQueue");
      
      QueueConnection connect = factory.createQueueConnection ();      
      QueueSession session = connect.createQueueSession (false,Session.AUTO_ACKNOWLEDGE);      
      QueueSender sender = session.createSender (reservationQueue);
      
      for (int i = 0; i < count; i++)
      {         
         MapMessage message = session.createMapMessage ();
         
         message.setJMSReplyTo (ticketQueue);  // Used in ReservationProcessor to send Tickets back out
         
         message.setStringProperty ("MessageFormat", "Version 3.4");
         
         message.setInt ("CruiseID", cruiseID.intValue ());
         message.setInt ("CustomerID", i%2 + 1);  // either Customer 1 or 2, all we've got in database
         message.setInt ("CabinID", i%10 + 100);  // cabins 100-109 only
         message.setDouble ("Price", (double)1000 + i);
         
         // the card expires in about 30 days
         //
         Date expDate = new Date (System.currentTimeMillis () + 30*24*60*60*1000L);
         
         message.setString ("CreditCardNum", "5549861006051975");
         message.setLong ("CreditCardExpDate", expDate.getTime ());
         message.setString ("CreditCardType", CreditCardDO.MASTER_CARD);
         
         System.out.println ("Sending reservation message #"+i);
         sender.send (message);
      }
      
      connect.close ();