text: # DO NOT EDIT.
  # generated by smc (http://smc.sourceforge.net/)
  # from file : loginrequest.sm
  
  import statemap
  
  
  class LoginRequestState(statemap.State):
  
      def Entry(self, fsm):
          pass
  
      def Exit(self, fsm):
          pass
  
      def AuthRequest(self, fsm):
          self.Default(fsm)
  
      def BlankLine(self, fsm):
          self.Default(fsm)
  
      def CommandReply(self, fsm):
          self.Default(fsm)
  
      def ProcessLine(self, fsm, line):
          self.Default(fsm)
  
      def ReplyText(self, fsm):
          self.Default(fsm)
  
      def Default(self, fsm):
          if fsm.getDebugFlag() == True:
              fsm.getDebugStream().write('TRANSITION   : Default\n')
          msg = "\n\tState: %s\n\tTransition: %s" % (
              fsm.getState().getName(), fsm.getTransition())
          raise statemap.TransitionUndefinedException, msg
  
  class MainMap_Default(LoginRequestState):
  
      def BlankLine(self, fsm):
          ctxt = fsm.getOwner()
          if fsm.getDebugFlag() == True:
              fsm.getDebugStream().write("TRANSITION   : MainMap.Default.BlankLine()\n")
  
          endState = fsm.getState()
          fsm.clearState()
          try:
              ctxt.setRequestFinished()
              ctxt.errbackDeferred("Protocol failure - Was not expecting a blank line")
          finally:
              fsm.setState(endState)
  
      def AuthRequest(self, fsm):
          ctxt = fsm.getOwner()
          if fsm.getDebugFlag() == True:
              fsm.getDebugStream().write("TRANSITION   : MainMap.Default.AuthRequest()\n")
  
          endState = fsm.getState()
          fsm.clearState()
          try:
              ctxt.setRequestFinished()
              ctxt.errbackDeferred("Protocol failure - Was not expecting auth request")
          finally:
              fsm.setState(endState)
  
      def CommandReply(self, fsm):
          ctxt = fsm.getOwner()
          if fsm.getDebugFlag() == True:
              fsm.getDebugStream().write("TRANSITION   : MainMap.Default.CommandReply()\n")
  
          endState = fsm.getState()
          fsm.clearState()
          try:
              ctxt.setRequestFinished()
              ctxt.errbackDeferred("Protocol failure - was not expecting a command reply")
          finally:
              fsm.setState(endState)
  
      def ReplyText(self, fsm):
          ctxt = fsm.getOwner()
          if fsm.getDebugFlag() == True:
              fsm.getDebugStream().write("TRANSITION   : MainMap.Default.ReplyText()\n")
  
          endState = fsm.getState()
          fsm.clearState()
          try:
              ctxt.setRequestFinished()
              ctxt.errbackDeferred("Protocol failure - was not expecting reply text")
          finally:
              fsm.setState(endState)
  
      def ProcessLine(self, fsm, line):
          ctxt = fsm.getOwner()
          if fsm.getDebugFlag() == True:
              fsm.getDebugStream().write("TRANSITION   : MainMap.Default.ProcessLine(line)\n")
  
          endState = fsm.getState()
          fsm.clearState()
          try:
              ctxt.setRequestFinished()
              ctxt.errbackDeferred("Protocol failure - was not expecting need to receive a line that needs to be processed")
          finally:
              fsm.setState(endState)
  
  class MainMap_Startup(MainMap_Default):
  
      def AuthRequest(self, fsm):
          if fsm.getDebugFlag() == True:
              fsm.getDebugStream().write("TRANSITION   : MainMap.Startup.AuthRequest()\n")
  
          fsm.getState().Exit(fsm)
          fsm.setState(MainMap.AuthRequestStarted)
          fsm.getState().Entry(fsm)
  
  class MainMap_AuthRequestStarted(MainMap_Default):
  
      def BlankLine(self, fsm):
          if fsm.getDebugFlag() == True:
              fsm.getDebugStream().write("TRANSITION   : MainMap.AuthRequestStarted.BlankLine()\n")
  
          fsm.getState().Exit(fsm)
          fsm.setState(MainMap.AuthRequestFinished)
          fsm.getState().Entry(fsm)
  
  class MainMap_AuthRequestFinished(MainMap_Default):
  
      def CommandReply(self, fsm):
          if fsm.getDebugFlag() == True:
              fsm.getDebugStream().write("TRANSITION   : MainMap.AuthRequestFinished.CommandReply()\n")
  
          fsm.getState().Exit(fsm)
          fsm.setState(MainMap.CommandReplyStarted)
          fsm.getState().Entry(fsm)
  
  class MainMap_CommandReplyStarted(MainMap_Default):
  
      def ReplyText(self, fsm):
          if fsm.getDebugFlag() == True:
              fsm.getDebugStream().write("TRANSITION   : MainMap.CommandReplyStarted.ReplyText()\n")
  
          fsm.getState().Exit(fsm)
          fsm.setState(MainMap.GotReplyText)
          fsm.getState().Entry(fsm)
  
  class MainMap_GotReplyText(MainMap_Default):
  
      def BlankLine(self, fsm):
          ctxt = fsm.getOwner()
          if fsm.getDebugFlag() == True:
              fsm.getDebugStream().write("TRANSITION   : MainMap.GotReplyText.BlankLine()\n")
  
          fsm.getState().Exit(fsm)
          fsm.clearState()
          try:
              ctxt.setRequestFinished()
              ctxt.callOrErrback()
          finally:
              fsm.setState(MainMap.Startup)
              fsm.getState().Entry(fsm)
  
  class MainMap:
  
      Startup = MainMap_Startup('MainMap.Startup', 0)
      AuthRequestStarted = MainMap_AuthRequestStarted('MainMap.AuthRequestStarted', 1)
      AuthRequestFinished = MainMap_AuthRequestFinished('MainMap.AuthRequestFinished', 2)
      CommandReplyStarted = MainMap_CommandReplyStarted('MainMap.CommandReplyStarted', 3)
      GotReplyText = MainMap_GotReplyText('MainMap.GotReplyText', 4)
      Default = MainMap_Default('MainMap.Default', -1)
  
  class LoginRequest_sm(statemap.FSMContext):
  
      def __init__(self, owner):
          statemap.FSMContext.__init__(self)
          self._owner = owner
          self.setState(MainMap.Startup)
          MainMap.Startup.Entry(self)
  
      def AuthRequest(self):
          self._transition = 'AuthRequest'
          self.getState().AuthRequest(self)
          self._transition = None
  
      def BlankLine(self):
          self._transition = 'BlankLine'
          self.getState().BlankLine(self)
          self._transition = None
  
      def CommandReply(self):
          self._transition = 'CommandReply'
          self.getState().CommandReply(self)
          self._transition = None
  
      def ProcessLine(self, *arglist):
          self._transition = 'ProcessLine'
          self.getState().ProcessLine(self, *arglist)
          self._transition = None
  
      def ReplyText(self):
          self._transition = 'ReplyText'
          self.getState().ReplyText(self)
          self._transition = None
  
      def getState(self):
          if self._state == None:
              raise statemap.StateUndefinedException
          return self._state
  
      def getOwner(self):
          return self._owner
  
  