org.lsst.ccs.bus
Class MessagingApplicationLayer

java.lang.Object
  extended by org.lsst.ccs.bus.MessagingApplicationLayer

public class MessagingApplicationLayer
extends Object

this is to distinguish the transport layer for message from their Application layer. This code I do not understand is copied from JMSMessagingFactory with extraction of what should be relevant to the application layer!!

SPECS TO BE IMPLEMENTED:
each Subsystems should have its own Application layer (an instance for each subsystem).
this instance deals with linking command/response and data that links subsystem name with routing data for the transport layer
the fact that the transport layer is a singleton should be transparent (for instance in Jgroups this is not the case! each subssystem can have its own Address on the net!)

So this class should be dumped and MessagingFactroy changed the messaging should be a protected member of subsystem

Author:
bamade

Constructor Summary
MessagingApplicationLayer()
           
 
Method Summary
 org.lsst.ccs.bus.Command commandForSending(org.lsst.ccs.bus.Command cmd)
          the command id tagged with a token, an origin, and a correlation
 String getToken()
           
 boolean isReplyRequested()
           
 org.lsst.ccs.bus.LogEvent logForSending(org.lsst.ccs.bus.LogEvent log)
           
 void noAutoReply()
           
 org.lsst.ccs.bus.Command receivingCommand(org.lsst.ccs.bus.Command command)
           
 org.lsst.ccs.bus.LogEvent receivingLog(org.lsst.ccs.bus.LogEvent log)
           
 org.lsst.ccs.bus.CommandAckOrReply receivingReply(org.lsst.ccs.bus.CommandAckOrReply reply)
          if you are not the one who initiated the command, ditch it! it means that CommandReply should have a destination ! is this a transport or an application layer problem?
 org.lsst.ccs.bus.Status receivingStatus(org.lsst.ccs.bus.Status status)
           
 org.lsst.ccs.bus.CommandAckOrReply replyForSending(org.lsst.ccs.bus.CommandAckOrReply reply)
          this method shoudl be modified to us a transport layer information to be returned
 org.lsst.ccs.bus.Status statusForSending(org.lsst.ccs.bus.Status status)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MessagingApplicationLayer

public MessagingApplicationLayer()
Method Detail

getToken

public String getToken()

isReplyRequested

public boolean isReplyRequested()

noAutoReply

public void noAutoReply()

commandForSending

public org.lsst.ccs.bus.Command commandForSending(org.lsst.ccs.bus.Command cmd)
the command id tagged with a token, an origin, and a correlation

Parameters:
cmd -
Returns:

receivingReply

public org.lsst.ccs.bus.CommandAckOrReply receivingReply(org.lsst.ccs.bus.CommandAckOrReply reply)
if you are not the one who initiated the command, ditch it! it means that CommandReply should have a destination ! is this a transport or an application layer problem?

Parameters:
reply -
Returns:
null if this is not for you!

receivingCommand

public org.lsst.ccs.bus.Command receivingCommand(org.lsst.ccs.bus.Command command)

replyForSending

public org.lsst.ccs.bus.CommandAckOrReply replyForSending(org.lsst.ccs.bus.CommandAckOrReply reply)
this method shoudl be modified to us a transport layer information to be returned

Parameters:
reply -
Returns:

statusForSending

public org.lsst.ccs.bus.Status statusForSending(org.lsst.ccs.bus.Status status)

logForSending

public org.lsst.ccs.bus.LogEvent logForSending(org.lsst.ccs.bus.LogEvent log)

receivingStatus

public org.lsst.ccs.bus.Status receivingStatus(org.lsst.ccs.bus.Status status)

receivingLog

public org.lsst.ccs.bus.LogEvent receivingLog(org.lsst.ccs.bus.LogEvent log)


Copyright © 2012 LSST. All Rights Reserved.