public void logout(MsnMessenger arg0) {
   // I believe that this gets called for a wrong password etc.
   // But here is a literal quote from the javadocs:
   // "Logout. Even not login completed may logout."
   theEvents.loginError(this);
   isConn = false;
 }
  public void instantMessageReceived(MsnSwitchboard arg0, MsnInstantMessage arg1, MsnContact arg2) {
    IM myIM = new IM();
    myIM.theAccount = this;
    myIM.from = arg2.getEmail().toString();
    myIM.message = arg1.getContent();

    theEvents.gotIM(myIM);
  }
  protected void dispatchContactList(MsnContactList theList, boolean firstTime) {
    MsnContact[] theContacts = theList.getContacts();

    for (MsnContact myMC : theContacts) {
      // System.out.println(myMC);
      if (theStopper.checkBuddy(myMC.getId())) {
        theEvents.buddyStatusChange(this.MSNContactToJimBuddy(myMC), firstTime);
      }
    }
  }
 public void contactStatusChanged(MsnMessenger arg0, MsnContact arg1) {
   theEvents.buddyStatusChange(this.MSNContactToJimBuddy(arg1), false);
 }
 public void contactRemoveCompleted(MsnMessenger arg0, MsnContact arg1) {
   theEvents.buddyDeleted(this.MSNContactToJimBuddy(arg1));
 }
 public void contactAddCompleted(MsnMessenger arg0, MsnContact arg1) {
   Buddy b = this.MSNContactToJimBuddy(arg1);
   theEvents.buddyStatusChange(b, false);
 }
 public void loginCompleted(MsnMessenger arg0) {
   isConn = true;
   theEvents.loggedIn(this);
 }