/*
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM nsIMsgIdentity.idl
 */

#ifndef __gen_nsIMsgIdentity_h__
#define __gen_nsIMsgIdentity_h__


#ifndef __gen_nsISupports_h__
#include "nsISupports.h"
#endif

#ifndef __gen_nsIMsgSignature_h__
#include "nsIMsgSignature.h"
#endif

#ifndef __gen_nsILocalFile_h__
#include "nsILocalFile.h"
#endif

#ifndef __gen_nsIMsgVCard_h__
#include "nsIMsgVCard.h"
#endif

/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif

/* starting interface:    nsIMsgIdentity */
#define NS_IMSGIDENTITY_IID_STR "d3b4a420-d5ac-11d2-806a-006008128c4e"

#define NS_IMSGIDENTITY_IID \
  {0xd3b4a420, 0xd5ac, 0x11d2, \
    { 0x80, 0x6a, 0x00, 0x60, 0x08, 0x12, 0x8c, 0x4e }}

class NS_NO_VTABLE nsIMsgIdentity : public nsISupports {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_IMSGIDENTITY_IID)

  /* attribute string key; */
  NS_IMETHOD GetKey(char * *aKey) = 0;
  NS_IMETHOD SetKey(const char * aKey) = 0;

  /* attribute wstring identityName; */
  NS_IMETHOD GetIdentityName(PRUnichar * *aIdentityName) = 0;
  NS_IMETHOD SetIdentityName(const PRUnichar * aIdentityName) = 0;

  /* attribute wstring fullName; */
  NS_IMETHOD GetFullName(PRUnichar * *aFullName) = 0;
  NS_IMETHOD SetFullName(const PRUnichar * aFullName) = 0;

  /* attribute string email; */
  NS_IMETHOD GetEmail(char * *aEmail) = 0;
  NS_IMETHOD SetEmail(const char * aEmail) = 0;

  /* attribute string replyTo; */
  NS_IMETHOD GetReplyTo(char * *aReplyTo) = 0;
  NS_IMETHOD SetReplyTo(const char * aReplyTo) = 0;

  /* attribute wstring organization; */
  NS_IMETHOD GetOrganization(PRUnichar * *aOrganization) = 0;
  NS_IMETHOD SetOrganization(const PRUnichar * aOrganization) = 0;

  /* attribute boolean composeHtml; */
  NS_IMETHOD GetComposeHtml(PRBool *aComposeHtml) = 0;
  NS_IMETHOD SetComposeHtml(PRBool aComposeHtml) = 0;

  /* attribute boolean attachSignature; */
  NS_IMETHOD GetAttachSignature(PRBool *aAttachSignature) = 0;
  NS_IMETHOD SetAttachSignature(PRBool aAttachSignature) = 0;

  /* attribute boolean attachVCard; */
  NS_IMETHOD GetAttachVCard(PRBool *aAttachVCard) = 0;
  NS_IMETHOD SetAttachVCard(PRBool aAttachVCard) = 0;

  /* attribute nsILocalFile signature; */
  NS_IMETHOD GetSignature(nsILocalFile * *aSignature) = 0;
  NS_IMETHOD SetSignature(nsILocalFile * aSignature) = 0;

  /* attribute long signatureDate; */
  NS_IMETHOD GetSignatureDate(PRInt32 *aSignatureDate) = 0;
  NS_IMETHOD SetSignatureDate(PRInt32 aSignatureDate) = 0;

  /* attribute nsIMsgVCard vCard; */
  NS_IMETHOD GetVCard(nsIMsgVCard * *aVCard) = 0;
  NS_IMETHOD SetVCard(nsIMsgVCard * aVCard) = 0;

  /* attribute boolean doFcc; */
  NS_IMETHOD GetDoFcc(PRBool *aDoFcc) = 0;
  NS_IMETHOD SetDoFcc(PRBool aDoFcc) = 0;

  /* attribute string fccFolder; */
  NS_IMETHOD GetFccFolder(char * *aFccFolder) = 0;
  NS_IMETHOD SetFccFolder(const char * aFccFolder) = 0;

  /* attribute boolean bccSelf; */
  NS_IMETHOD GetBccSelf(PRBool *aBccSelf) = 0;
  NS_IMETHOD SetBccSelf(PRBool aBccSelf) = 0;

  /* attribute boolean bccOthers; */
  NS_IMETHOD GetBccOthers(PRBool *aBccOthers) = 0;
  NS_IMETHOD SetBccOthers(PRBool aBccOthers) = 0;

  /* attribute string bccList; */
  NS_IMETHOD GetBccList(char * *aBccList) = 0;
  NS_IMETHOD SetBccList(const char * aBccList) = 0;

  /* attribute string draftFolder; */
  NS_IMETHOD GetDraftFolder(char * *aDraftFolder) = 0;
  NS_IMETHOD SetDraftFolder(const char * aDraftFolder) = 0;

  /* attribute string stationeryFolder; */
  NS_IMETHOD GetStationeryFolder(char * *aStationeryFolder) = 0;
  NS_IMETHOD SetStationeryFolder(const char * aStationeryFolder) = 0;

  /* attribute string junkMailFolder; */
  NS_IMETHOD GetJunkMailFolder(char * *aJunkMailFolder) = 0;
  NS_IMETHOD SetJunkMailFolder(const char * aJunkMailFolder) = 0;

  /* attribute boolean showSaveMsgDlg; */
  NS_IMETHOD GetShowSaveMsgDlg(PRBool *aShowSaveMsgDlg) = 0;
  NS_IMETHOD SetShowSaveMsgDlg(PRBool aShowSaveMsgDlg) = 0;

  /* attribute string directoryServer; */
  NS_IMETHOD GetDirectoryServer(char * *aDirectoryServer) = 0;
  NS_IMETHOD SetDirectoryServer(const char * aDirectoryServer) = 0;

  /* attribute boolean overrideGlobalPref; */
  NS_IMETHOD GetOverrideGlobalPref(PRBool *aOverrideGlobalPref) = 0;
  NS_IMETHOD SetOverrideGlobalPref(PRBool aOverrideGlobalPref) = 0;

  /**
   * valid determines if the UI should use this identity
   * and the wizard uses this to determine whether or not
   * to ask the user to complete all the fields
   */
  /* attribute boolean valid; */
  NS_IMETHOD GetValid(PRBool *aValid) = 0;
  NS_IMETHOD SetValid(PRBool aValid) = 0;

  /**
   * this is really dangerous. this destroys all pref values
   * do not call this unless you know what you're doing!
   */
  /* void clearAllValues (); */
  NS_IMETHOD ClearAllValues(void) = 0;

  /**
   * the preferred smtp server for this identity.
   * if this is set, this the smtp server that should be used
   * for the message send
   */
  /* attribute string smtpServerKey; */
  NS_IMETHOD GetSmtpServerKey(char * *aSmtpServerKey) = 0;
  NS_IMETHOD SetSmtpServerKey(const char * aSmtpServerKey) = 0;

  /* void copy (in nsIMsgIdentity identity); */
  NS_IMETHOD Copy(nsIMsgIdentity *identity) = 0;

  /* wstring toString (); */
  NS_IMETHOD ToString(PRUnichar **_retval) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIMSGIDENTITY \
  NS_IMETHOD GetKey(char * *aKey); \
  NS_IMETHOD SetKey(const char * aKey); \
  NS_IMETHOD GetIdentityName(PRUnichar * *aIdentityName); \
  NS_IMETHOD SetIdentityName(const PRUnichar * aIdentityName); \
  NS_IMETHOD GetFullName(PRUnichar * *aFullName); \
  NS_IMETHOD SetFullName(const PRUnichar * aFullName); \
  NS_IMETHOD GetEmail(char * *aEmail); \
  NS_IMETHOD SetEmail(const char * aEmail); \
  NS_IMETHOD GetReplyTo(char * *aReplyTo); \
  NS_IMETHOD SetReplyTo(const char * aReplyTo); \
  NS_IMETHOD GetOrganization(PRUnichar * *aOrganization); \
  NS_IMETHOD SetOrganization(const PRUnichar * aOrganization); \
  NS_IMETHOD GetComposeHtml(PRBool *aComposeHtml); \
  NS_IMETHOD SetComposeHtml(PRBool aComposeHtml); \
  NS_IMETHOD GetAttachSignature(PRBool *aAttachSignature); \
  NS_IMETHOD SetAttachSignature(PRBool aAttachSignature); \
  NS_IMETHOD GetAttachVCard(PRBool *aAttachVCard); \
  NS_IMETHOD SetAttachVCard(PRBool aAttachVCard); \
  NS_IMETHOD GetSignature(nsILocalFile * *aSignature); \
  NS_IMETHOD SetSignature(nsILocalFile * aSignature); \
  NS_IMETHOD GetSignatureDate(PRInt32 *aSignatureDate); \
  NS_IMETHOD SetSignatureDate(PRInt32 aSignatureDate); \
  NS_IMETHOD GetVCard(nsIMsgVCard * *aVCard); \
  NS_IMETHOD SetVCard(nsIMsgVCard * aVCard); \
  NS_IMETHOD GetDoFcc(PRBool *aDoFcc); \
  NS_IMETHOD SetDoFcc(PRBool aDoFcc); \
  NS_IMETHOD GetFccFolder(char * *aFccFolder); \
  NS_IMETHOD SetFccFolder(const char * aFccFolder); \
  NS_IMETHOD GetBccSelf(PRBool *aBccSelf); \
  NS_IMETHOD SetBccSelf(PRBool aBccSelf); \
  NS_IMETHOD GetBccOthers(PRBool *aBccOthers); \
  NS_IMETHOD SetBccOthers(PRBool aBccOthers); \
  NS_IMETHOD GetBccList(char * *aBccList); \
  NS_IMETHOD SetBccList(const char * aBccList); \
  NS_IMETHOD GetDraftFolder(char * *aDraftFolder); \
  NS_IMETHOD SetDraftFolder(const char * aDraftFolder); \
  NS_IMETHOD GetStationeryFolder(char * *aStationeryFolder); \
  NS_IMETHOD SetStationeryFolder(const char * aStationeryFolder); \
  NS_IMETHOD GetJunkMailFolder(char * *aJunkMailFolder); \
  NS_IMETHOD SetJunkMailFolder(const char * aJunkMailFolder); \
  NS_IMETHOD GetShowSaveMsgDlg(PRBool *aShowSaveMsgDlg); \
  NS_IMETHOD SetShowSaveMsgDlg(PRBool aShowSaveMsgDlg); \
  NS_IMETHOD GetDirectoryServer(char * *aDirectoryServer); \
  NS_IMETHOD SetDirectoryServer(const char * aDirectoryServer); \
  NS_IMETHOD GetOverrideGlobalPref(PRBool *aOverrideGlobalPref); \
  NS_IMETHOD SetOverrideGlobalPref(PRBool aOverrideGlobalPref); \
  NS_IMETHOD GetValid(PRBool *aValid); \
  NS_IMETHOD SetValid(PRBool aValid); \
  NS_IMETHOD ClearAllValues(void); \
  NS_IMETHOD GetSmtpServerKey(char * *aSmtpServerKey); \
  NS_IMETHOD SetSmtpServerKey(const char * aSmtpServerKey); \
  NS_IMETHOD Copy(nsIMsgIdentity *identity); \
  NS_IMETHOD ToString(PRUnichar **_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIMSGIDENTITY(_to) \
  NS_IMETHOD GetKey(char * *aKey) { return _to ## GetKey(aKey); } \
  NS_IMETHOD SetKey(const char * aKey) { return _to ## SetKey(aKey); } \
  NS_IMETHOD GetIdentityName(PRUnichar * *aIdentityName) { return _to ## GetIdentityName(aIdentityName); } \
  NS_IMETHOD SetIdentityName(const PRUnichar * aIdentityName) { return _to ## SetIdentityName(aIdentityName); } \
  NS_IMETHOD GetFullName(PRUnichar * *aFullName) { return _to ## GetFullName(aFullName); } \
  NS_IMETHOD SetFullName(const PRUnichar * aFullName) { return _to ## SetFullName(aFullName); } \
  NS_IMETHOD GetEmail(char * *aEmail) { return _to ## GetEmail(aEmail); } \
  NS_IMETHOD SetEmail(const char * aEmail) { return _to ## SetEmail(aEmail); } \
  NS_IMETHOD GetReplyTo(char * *aReplyTo) { return _to ## GetReplyTo(aReplyTo); } \
  NS_IMETHOD SetReplyTo(const char * aReplyTo) { return _to ## SetReplyTo(aReplyTo); } \
  NS_IMETHOD GetOrganization(PRUnichar * *aOrganization) { return _to ## GetOrganization(aOrganization); } \
  NS_IMETHOD SetOrganization(const PRUnichar * aOrganization) { return _to ## SetOrganization(aOrganization); } \
  NS_IMETHOD GetComposeHtml(PRBool *aComposeHtml) { return _to ## GetComposeHtml(aComposeHtml); } \
  NS_IMETHOD SetComposeHtml(PRBool aComposeHtml) { return _to ## SetComposeHtml(aComposeHtml); } \
  NS_IMETHOD GetAttachSignature(PRBool *aAttachSignature) { return _to ## GetAttachSignature(aAttachSignature); } \
  NS_IMETHOD SetAttachSignature(PRBool aAttachSignature) { return _to ## SetAttachSignature(aAttachSignature); } \
  NS_IMETHOD GetAttachVCard(PRBool *aAttachVCard) { return _to ## GetAttachVCard(aAttachVCard); } \
  NS_IMETHOD SetAttachVCard(PRBool aAttachVCard) { return _to ## SetAttachVCard(aAttachVCard); } \
  NS_IMETHOD GetSignature(nsILocalFile * *aSignature) { return _to ## GetSignature(aSignature); } \
  NS_IMETHOD SetSignature(nsILocalFile * aSignature) { return _to ## SetSignature(aSignature); } \
  NS_IMETHOD GetSignatureDate(PRInt32 *aSignatureDate) { return _to ## GetSignatureDate(aSignatureDate); } \
  NS_IMETHOD SetSignatureDate(PRInt32 aSignatureDate) { return _to ## SetSignatureDate(aSignatureDate); } \
  NS_IMETHOD GetVCard(nsIMsgVCard * *aVCard) { return _to ## GetVCard(aVCard); } \
  NS_IMETHOD SetVCard(nsIMsgVCard * aVCard) { return _to ## SetVCard(aVCard); } \
  NS_IMETHOD GetDoFcc(PRBool *aDoFcc) { return _to ## GetDoFcc(aDoFcc); } \
  NS_IMETHOD SetDoFcc(PRBool aDoFcc) { return _to ## SetDoFcc(aDoFcc); } \
  NS_IMETHOD GetFccFolder(char * *aFccFolder) { return _to ## GetFccFolder(aFccFolder); } \
  NS_IMETHOD SetFccFolder(const char * aFccFolder) { return _to ## SetFccFolder(aFccFolder); } \
  NS_IMETHOD GetBccSelf(PRBool *aBccSelf) { return _to ## GetBccSelf(aBccSelf); } \
  NS_IMETHOD SetBccSelf(PRBool aBccSelf) { return _to ## SetBccSelf(aBccSelf); } \
  NS_IMETHOD GetBccOthers(PRBool *aBccOthers) { return _to ## GetBccOthers(aBccOthers); } \
  NS_IMETHOD SetBccOthers(PRBool aBccOthers) { return _to ## SetBccOthers(aBccOthers); } \
  NS_IMETHOD GetBccList(char * *aBccList) { return _to ## GetBccList(aBccList); } \
  NS_IMETHOD SetBccList(const char * aBccList) { return _to ## SetBccList(aBccList); } \
  NS_IMETHOD GetDraftFolder(char * *aDraftFolder) { return _to ## GetDraftFolder(aDraftFolder); } \
  NS_IMETHOD SetDraftFolder(const char * aDraftFolder) { return _to ## SetDraftFolder(aDraftFolder); } \
  NS_IMETHOD GetStationeryFolder(char * *aStationeryFolder) { return _to ## GetStationeryFolder(aStationeryFolder); } \
  NS_IMETHOD SetStationeryFolder(const char * aStationeryFolder) { return _to ## SetStationeryFolder(aStationeryFolder); } \
  NS_IMETHOD GetJunkMailFolder(char * *aJunkMailFolder) { return _to ## GetJunkMailFolder(aJunkMailFolder); } \
  NS_IMETHOD SetJunkMailFolder(const char * aJunkMailFolder) { return _to ## SetJunkMailFolder(aJunkMailFolder); } \
  NS_IMETHOD GetShowSaveMsgDlg(PRBool *aShowSaveMsgDlg) { return _to ## GetShowSaveMsgDlg(aShowSaveMsgDlg); } \
  NS_IMETHOD SetShowSaveMsgDlg(PRBool aShowSaveMsgDlg) { return _to ## SetShowSaveMsgDlg(aShowSaveMsgDlg); } \
  NS_IMETHOD GetDirectoryServer(char * *aDirectoryServer) { return _to ## GetDirectoryServer(aDirectoryServer); } \
  NS_IMETHOD SetDirectoryServer(const char * aDirectoryServer) { return _to ## SetDirectoryServer(aDirectoryServer); } \
  NS_IMETHOD GetOverrideGlobalPref(PRBool *aOverrideGlobalPref) { return _to ## GetOverrideGlobalPref(aOverrideGlobalPref); } \
  NS_IMETHOD SetOverrideGlobalPref(PRBool aOverrideGlobalPref) { return _to ## SetOverrideGlobalPref(aOverrideGlobalPref); } \
  NS_IMETHOD GetValid(PRBool *aValid) { return _to ## GetValid(aValid); } \
  NS_IMETHOD SetValid(PRBool aValid) { return _to ## SetValid(aValid); } \
  NS_IMETHOD ClearAllValues(void) { return _to ## ClearAllValues(); } \
  NS_IMETHOD GetSmtpServerKey(char * *aSmtpServerKey) { return _to ## GetSmtpServerKey(aSmtpServerKey); } \
  NS_IMETHOD SetSmtpServerKey(const char * aSmtpServerKey) { return _to ## SetSmtpServerKey(aSmtpServerKey); } \
  NS_IMETHOD Copy(nsIMsgIdentity *identity) { return _to ## Copy(identity); } \
  NS_IMETHOD ToString(PRUnichar **_retval) { return _to ## ToString(_retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIMSGIDENTITY(_to) \
  NS_IMETHOD GetKey(char * *aKey) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetKey(aKey); } \
  NS_IMETHOD SetKey(const char * aKey) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetKey(aKey); } \
  NS_IMETHOD GetIdentityName(PRUnichar * *aIdentityName) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetIdentityName(aIdentityName); } \
  NS_IMETHOD SetIdentityName(const PRUnichar * aIdentityName) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetIdentityName(aIdentityName); } \
  NS_IMETHOD GetFullName(PRUnichar * *aFullName) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetFullName(aFullName); } \
  NS_IMETHOD SetFullName(const PRUnichar * aFullName) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetFullName(aFullName); } \
  NS_IMETHOD GetEmail(char * *aEmail) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetEmail(aEmail); } \
  NS_IMETHOD SetEmail(const char * aEmail) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetEmail(aEmail); } \
  NS_IMETHOD GetReplyTo(char * *aReplyTo) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetReplyTo(aReplyTo); } \
  NS_IMETHOD SetReplyTo(const char * aReplyTo) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetReplyTo(aReplyTo); } \
  NS_IMETHOD GetOrganization(PRUnichar * *aOrganization) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetOrganization(aOrganization); } \
  NS_IMETHOD SetOrganization(const PRUnichar * aOrganization) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetOrganization(aOrganization); } \
  NS_IMETHOD GetComposeHtml(PRBool *aComposeHtml) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetComposeHtml(aComposeHtml); } \
  NS_IMETHOD SetComposeHtml(PRBool aComposeHtml) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetComposeHtml(aComposeHtml); } \
  NS_IMETHOD GetAttachSignature(PRBool *aAttachSignature) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetAttachSignature(aAttachSignature); } \
  NS_IMETHOD SetAttachSignature(PRBool aAttachSignature) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetAttachSignature(aAttachSignature); } \
  NS_IMETHOD GetAttachVCard(PRBool *aAttachVCard) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetAttachVCard(aAttachVCard); } \
  NS_IMETHOD SetAttachVCard(PRBool aAttachVCard) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetAttachVCard(aAttachVCard); } \
  NS_IMETHOD GetSignature(nsILocalFile * *aSignature) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetSignature(aSignature); } \
  NS_IMETHOD SetSignature(nsILocalFile * aSignature) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetSignature(aSignature); } \
  NS_IMETHOD GetSignatureDate(PRInt32 *aSignatureDate) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetSignatureDate(aSignatureDate); } \
  NS_IMETHOD SetSignatureDate(PRInt32 aSignatureDate) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetSignatureDate(aSignatureDate); } \
  NS_IMETHOD GetVCard(nsIMsgVCard * *aVCard) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetVCard(aVCard); } \
  NS_IMETHOD SetVCard(nsIMsgVCard * aVCard) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetVCard(aVCard); } \
  NS_IMETHOD GetDoFcc(PRBool *aDoFcc) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetDoFcc(aDoFcc); } \
  NS_IMETHOD SetDoFcc(PRBool aDoFcc) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetDoFcc(aDoFcc); } \
  NS_IMETHOD GetFccFolder(char * *aFccFolder) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetFccFolder(aFccFolder); } \
  NS_IMETHOD SetFccFolder(const char * aFccFolder) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetFccFolder(aFccFolder); } \
  NS_IMETHOD GetBccSelf(PRBool *aBccSelf) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetBccSelf(aBccSelf); } \
  NS_IMETHOD SetBccSelf(PRBool aBccSelf) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetBccSelf(aBccSelf); } \
  NS_IMETHOD GetBccOthers(PRBool *aBccOthers) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetBccOthers(aBccOthers); } \
  NS_IMETHOD SetBccOthers(PRBool aBccOthers) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetBccOthers(aBccOthers); } \
  NS_IMETHOD GetBccList(char * *aBccList) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetBccList(aBccList); } \
  NS_IMETHOD SetBccList(const char * aBccList) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetBccList(aBccList); } \
  NS_IMETHOD GetDraftFolder(char * *aDraftFolder) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetDraftFolder(aDraftFolder); } \
  NS_IMETHOD SetDraftFolder(const char * aDraftFolder) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetDraftFolder(aDraftFolder); } \
  NS_IMETHOD GetStationeryFolder(char * *aStationeryFolder) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetStationeryFolder(aStationeryFolder); } \
  NS_IMETHOD SetStationeryFolder(const char * aStationeryFolder) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetStationeryFolder(aStationeryFolder); } \
  NS_IMETHOD GetJunkMailFolder(char * *aJunkMailFolder) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetJunkMailFolder(aJunkMailFolder); } \
  NS_IMETHOD SetJunkMailFolder(const char * aJunkMailFolder) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetJunkMailFolder(aJunkMailFolder); } \
  NS_IMETHOD GetShowSaveMsgDlg(PRBool *aShowSaveMsgDlg) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetShowSaveMsgDlg(aShowSaveMsgDlg); } \
  NS_IMETHOD SetShowSaveMsgDlg(PRBool aShowSaveMsgDlg) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetShowSaveMsgDlg(aShowSaveMsgDlg); } \
  NS_IMETHOD GetDirectoryServer(char * *aDirectoryServer) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetDirectoryServer(aDirectoryServer); } \
  NS_IMETHOD SetDirectoryServer(const char * aDirectoryServer) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetDirectoryServer(aDirectoryServer); } \
  NS_IMETHOD GetOverrideGlobalPref(PRBool *aOverrideGlobalPref) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetOverrideGlobalPref(aOverrideGlobalPref); } \
  NS_IMETHOD SetOverrideGlobalPref(PRBool aOverrideGlobalPref) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetOverrideGlobalPref(aOverrideGlobalPref); } \
  NS_IMETHOD GetValid(PRBool *aValid) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetValid(aValid); } \
  NS_IMETHOD SetValid(PRBool aValid) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetValid(aValid); } \
  NS_IMETHOD ClearAllValues(void) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##-> ClearAllValues(); } \
  NS_IMETHOD GetSmtpServerKey(char * *aSmtpServerKey) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->GetSmtpServerKey(aSmtpServerKey); } \
  NS_IMETHOD SetSmtpServerKey(const char * aSmtpServerKey) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##->SetSmtpServerKey(aSmtpServerKey); } \
  NS_IMETHOD Copy(nsIMsgIdentity *identity) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##-> Copy(identity); } \
  NS_IMETHOD ToString(PRUnichar **_retval) { return !_to ## ? NS_ERROR_NULL_POINTER : _to ##-> ToString(_retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsMsgIdentity : public nsIMsgIdentity
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIMSGIDENTITY

  nsMsgIdentity();
  virtual ~nsMsgIdentity();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsMsgIdentity, nsIMsgIdentity)

nsMsgIdentity::nsMsgIdentity()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsMsgIdentity::~nsMsgIdentity()
{
  /* destructor code */
}

/* attribute string key; */
NS_IMETHODIMP nsMsgIdentity::GetKey(char * *aKey)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetKey(const char * aKey)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute wstring identityName; */
NS_IMETHODIMP nsMsgIdentity::GetIdentityName(PRUnichar * *aIdentityName)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetIdentityName(const PRUnichar * aIdentityName)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute wstring fullName; */
NS_IMETHODIMP nsMsgIdentity::GetFullName(PRUnichar * *aFullName)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetFullName(const PRUnichar * aFullName)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string email; */
NS_IMETHODIMP nsMsgIdentity::GetEmail(char * *aEmail)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetEmail(const char * aEmail)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string replyTo; */
NS_IMETHODIMP nsMsgIdentity::GetReplyTo(char * *aReplyTo)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetReplyTo(const char * aReplyTo)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute wstring organization; */
NS_IMETHODIMP nsMsgIdentity::GetOrganization(PRUnichar * *aOrganization)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetOrganization(const PRUnichar * aOrganization)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean composeHtml; */
NS_IMETHODIMP nsMsgIdentity::GetComposeHtml(PRBool *aComposeHtml)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetComposeHtml(PRBool aComposeHtml)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean attachSignature; */
NS_IMETHODIMP nsMsgIdentity::GetAttachSignature(PRBool *aAttachSignature)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetAttachSignature(PRBool aAttachSignature)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean attachVCard; */
NS_IMETHODIMP nsMsgIdentity::GetAttachVCard(PRBool *aAttachVCard)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetAttachVCard(PRBool aAttachVCard)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute nsILocalFile signature; */
NS_IMETHODIMP nsMsgIdentity::GetSignature(nsILocalFile * *aSignature)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetSignature(nsILocalFile * aSignature)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute long signatureDate; */
NS_IMETHODIMP nsMsgIdentity::GetSignatureDate(PRInt32 *aSignatureDate)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetSignatureDate(PRInt32 aSignatureDate)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute nsIMsgVCard vCard; */
NS_IMETHODIMP nsMsgIdentity::GetVCard(nsIMsgVCard * *aVCard)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetVCard(nsIMsgVCard * aVCard)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean doFcc; */
NS_IMETHODIMP nsMsgIdentity::GetDoFcc(PRBool *aDoFcc)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetDoFcc(PRBool aDoFcc)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string fccFolder; */
NS_IMETHODIMP nsMsgIdentity::GetFccFolder(char * *aFccFolder)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetFccFolder(const char * aFccFolder)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean bccSelf; */
NS_IMETHODIMP nsMsgIdentity::GetBccSelf(PRBool *aBccSelf)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetBccSelf(PRBool aBccSelf)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean bccOthers; */
NS_IMETHODIMP nsMsgIdentity::GetBccOthers(PRBool *aBccOthers)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetBccOthers(PRBool aBccOthers)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string bccList; */
NS_IMETHODIMP nsMsgIdentity::GetBccList(char * *aBccList)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetBccList(const char * aBccList)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string draftFolder; */
NS_IMETHODIMP nsMsgIdentity::GetDraftFolder(char * *aDraftFolder)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetDraftFolder(const char * aDraftFolder)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string stationeryFolder; */
NS_IMETHODIMP nsMsgIdentity::GetStationeryFolder(char * *aStationeryFolder)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetStationeryFolder(const char * aStationeryFolder)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string junkMailFolder; */
NS_IMETHODIMP nsMsgIdentity::GetJunkMailFolder(char * *aJunkMailFolder)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetJunkMailFolder(const char * aJunkMailFolder)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean showSaveMsgDlg; */
NS_IMETHODIMP nsMsgIdentity::GetShowSaveMsgDlg(PRBool *aShowSaveMsgDlg)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetShowSaveMsgDlg(PRBool aShowSaveMsgDlg)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string directoryServer; */
NS_IMETHODIMP nsMsgIdentity::GetDirectoryServer(char * *aDirectoryServer)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetDirectoryServer(const char * aDirectoryServer)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean overrideGlobalPref; */
NS_IMETHODIMP nsMsgIdentity::GetOverrideGlobalPref(PRBool *aOverrideGlobalPref)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetOverrideGlobalPref(PRBool aOverrideGlobalPref)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean valid; */
NS_IMETHODIMP nsMsgIdentity::GetValid(PRBool *aValid)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetValid(PRBool aValid)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void clearAllValues (); */
NS_IMETHODIMP nsMsgIdentity::ClearAllValues()
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string smtpServerKey; */
NS_IMETHODIMP nsMsgIdentity::GetSmtpServerKey(char * *aSmtpServerKey)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgIdentity::SetSmtpServerKey(const char * aSmtpServerKey)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void copy (in nsIMsgIdentity identity); */
NS_IMETHODIMP nsMsgIdentity::Copy(nsIMsgIdentity *identity)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* wstring toString (); */
NS_IMETHODIMP nsMsgIdentity::ToString(PRUnichar **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


#endif /* __gen_nsIMsgIdentity_h__ */
