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

#ifndef __gen_nsIPop3IncomingServer_h__
#define __gen_nsIPop3IncomingServer_h__


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

/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif
class nsIPop3Protocol; /* forward declaration */

class nsISupportsArray; /* forward declaration */


/* starting interface:    nsIPop3IncomingServer */
#define NS_IPOP3INCOMINGSERVER_IID_STR "758a8970-e628-11d2-b7fc-00805f05ffa5"

#define NS_IPOP3INCOMINGSERVER_IID \
  {0x758a8970, 0xe628, 0x11d2, \
    { 0xb7, 0xfc, 0x00, 0x80, 0x5f, 0x05, 0xff, 0xa5 }}

class NS_NO_VTABLE nsIPop3IncomingServer : public nsISupports {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_IPOP3INCOMINGSERVER_IID)

  /* attribute boolean leaveMessagesOnServer; */
  NS_IMETHOD GetLeaveMessagesOnServer(PRBool *aLeaveMessagesOnServer) = 0;
  NS_IMETHOD SetLeaveMessagesOnServer(PRBool aLeaveMessagesOnServer) = 0;

  /* attribute boolean deleteMailLeftOnServer; */
  NS_IMETHOD GetDeleteMailLeftOnServer(PRBool *aDeleteMailLeftOnServer) = 0;
  NS_IMETHOD SetDeleteMailLeftOnServer(PRBool aDeleteMailLeftOnServer) = 0;

  /* attribute boolean authLogin; */
  NS_IMETHOD GetAuthLogin(PRBool *aAuthLogin) = 0;
  NS_IMETHOD SetAuthLogin(PRBool aAuthLogin) = 0;

  /* attribute boolean dotFix; */
  NS_IMETHOD GetDotFix(PRBool *aDotFix) = 0;
  NS_IMETHOD SetDotFix(PRBool aDotFix) = 0;

  /* attribute unsigned long pop3CapabilityFlags; */
  NS_IMETHOD GetPop3CapabilityFlags(PRUint32 *aPop3CapabilityFlags) = 0;
  NS_IMETHOD SetPop3CapabilityFlags(PRUint32 aPop3CapabilityFlags) = 0;

  /* attribute boolean deleteByAgeFromServer; */
  NS_IMETHOD GetDeleteByAgeFromServer(PRBool *aDeleteByAgeFromServer) = 0;
  NS_IMETHOD SetDeleteByAgeFromServer(PRBool aDeleteByAgeFromServer) = 0;

  /* attribute long numDaysToLeaveOnServer; */
  NS_IMETHOD GetNumDaysToLeaveOnServer(PRInt32 *aNumDaysToLeaveOnServer) = 0;
  NS_IMETHOD SetNumDaysToLeaveOnServer(PRInt32 aNumDaysToLeaveOnServer) = 0;

  /* attribute nsIPop3Protocol runningProtocol; */
  NS_IMETHOD GetRunningProtocol(nsIPop3Protocol * *aRunningProtocol) = 0;
  NS_IMETHOD SetRunningProtocol(nsIPop3Protocol * aRunningProtocol) = 0;

  /* void markMessagesDeleted ([array, size_is (count)] in string aUidlStrings, in unsigned long count, in boolean aDeleteMsgs); */
  NS_IMETHOD MarkMessagesDeleted(const char **aUidlStrings, PRUint32 count, PRBool aDeleteMsgs) = 0;

  /* attribute boolean authenticated; */
  NS_IMETHOD GetAuthenticated(PRBool *aAuthenticated) = 0;
  NS_IMETHOD SetAuthenticated(PRBool aAuthenticated) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIPOP3INCOMINGSERVER \
  NS_IMETHOD GetLeaveMessagesOnServer(PRBool *aLeaveMessagesOnServer); \
  NS_IMETHOD SetLeaveMessagesOnServer(PRBool aLeaveMessagesOnServer); \
  NS_IMETHOD GetDeleteMailLeftOnServer(PRBool *aDeleteMailLeftOnServer); \
  NS_IMETHOD SetDeleteMailLeftOnServer(PRBool aDeleteMailLeftOnServer); \
  NS_IMETHOD GetAuthLogin(PRBool *aAuthLogin); \
  NS_IMETHOD SetAuthLogin(PRBool aAuthLogin); \
  NS_IMETHOD GetDotFix(PRBool *aDotFix); \
  NS_IMETHOD SetDotFix(PRBool aDotFix); \
  NS_IMETHOD GetPop3CapabilityFlags(PRUint32 *aPop3CapabilityFlags); \
  NS_IMETHOD SetPop3CapabilityFlags(PRUint32 aPop3CapabilityFlags); \
  NS_IMETHOD GetDeleteByAgeFromServer(PRBool *aDeleteByAgeFromServer); \
  NS_IMETHOD SetDeleteByAgeFromServer(PRBool aDeleteByAgeFromServer); \
  NS_IMETHOD GetNumDaysToLeaveOnServer(PRInt32 *aNumDaysToLeaveOnServer); \
  NS_IMETHOD SetNumDaysToLeaveOnServer(PRInt32 aNumDaysToLeaveOnServer); \
  NS_IMETHOD GetRunningProtocol(nsIPop3Protocol * *aRunningProtocol); \
  NS_IMETHOD SetRunningProtocol(nsIPop3Protocol * aRunningProtocol); \
  NS_IMETHOD MarkMessagesDeleted(const char **aUidlStrings, PRUint32 count, PRBool aDeleteMsgs); \
  NS_IMETHOD GetAuthenticated(PRBool *aAuthenticated); \
  NS_IMETHOD SetAuthenticated(PRBool aAuthenticated); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIPOP3INCOMINGSERVER(_to) \
  NS_IMETHOD GetLeaveMessagesOnServer(PRBool *aLeaveMessagesOnServer) { return _to GetLeaveMessagesOnServer(aLeaveMessagesOnServer); } \
  NS_IMETHOD SetLeaveMessagesOnServer(PRBool aLeaveMessagesOnServer) { return _to SetLeaveMessagesOnServer(aLeaveMessagesOnServer); } \
  NS_IMETHOD GetDeleteMailLeftOnServer(PRBool *aDeleteMailLeftOnServer) { return _to GetDeleteMailLeftOnServer(aDeleteMailLeftOnServer); } \
  NS_IMETHOD SetDeleteMailLeftOnServer(PRBool aDeleteMailLeftOnServer) { return _to SetDeleteMailLeftOnServer(aDeleteMailLeftOnServer); } \
  NS_IMETHOD GetAuthLogin(PRBool *aAuthLogin) { return _to GetAuthLogin(aAuthLogin); } \
  NS_IMETHOD SetAuthLogin(PRBool aAuthLogin) { return _to SetAuthLogin(aAuthLogin); } \
  NS_IMETHOD GetDotFix(PRBool *aDotFix) { return _to GetDotFix(aDotFix); } \
  NS_IMETHOD SetDotFix(PRBool aDotFix) { return _to SetDotFix(aDotFix); } \
  NS_IMETHOD GetPop3CapabilityFlags(PRUint32 *aPop3CapabilityFlags) { return _to GetPop3CapabilityFlags(aPop3CapabilityFlags); } \
  NS_IMETHOD SetPop3CapabilityFlags(PRUint32 aPop3CapabilityFlags) { return _to SetPop3CapabilityFlags(aPop3CapabilityFlags); } \
  NS_IMETHOD GetDeleteByAgeFromServer(PRBool *aDeleteByAgeFromServer) { return _to GetDeleteByAgeFromServer(aDeleteByAgeFromServer); } \
  NS_IMETHOD SetDeleteByAgeFromServer(PRBool aDeleteByAgeFromServer) { return _to SetDeleteByAgeFromServer(aDeleteByAgeFromServer); } \
  NS_IMETHOD GetNumDaysToLeaveOnServer(PRInt32 *aNumDaysToLeaveOnServer) { return _to GetNumDaysToLeaveOnServer(aNumDaysToLeaveOnServer); } \
  NS_IMETHOD SetNumDaysToLeaveOnServer(PRInt32 aNumDaysToLeaveOnServer) { return _to SetNumDaysToLeaveOnServer(aNumDaysToLeaveOnServer); } \
  NS_IMETHOD GetRunningProtocol(nsIPop3Protocol * *aRunningProtocol) { return _to GetRunningProtocol(aRunningProtocol); } \
  NS_IMETHOD SetRunningProtocol(nsIPop3Protocol * aRunningProtocol) { return _to SetRunningProtocol(aRunningProtocol); } \
  NS_IMETHOD MarkMessagesDeleted(const char **aUidlStrings, PRUint32 count, PRBool aDeleteMsgs) { return _to MarkMessagesDeleted(aUidlStrings, count, aDeleteMsgs); } \
  NS_IMETHOD GetAuthenticated(PRBool *aAuthenticated) { return _to GetAuthenticated(aAuthenticated); } \
  NS_IMETHOD SetAuthenticated(PRBool aAuthenticated) { return _to SetAuthenticated(aAuthenticated); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIPOP3INCOMINGSERVER(_to) \
  NS_IMETHOD GetLeaveMessagesOnServer(PRBool *aLeaveMessagesOnServer) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetLeaveMessagesOnServer(aLeaveMessagesOnServer); } \
  NS_IMETHOD SetLeaveMessagesOnServer(PRBool aLeaveMessagesOnServer) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetLeaveMessagesOnServer(aLeaveMessagesOnServer); } \
  NS_IMETHOD GetDeleteMailLeftOnServer(PRBool *aDeleteMailLeftOnServer) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDeleteMailLeftOnServer(aDeleteMailLeftOnServer); } \
  NS_IMETHOD SetDeleteMailLeftOnServer(PRBool aDeleteMailLeftOnServer) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDeleteMailLeftOnServer(aDeleteMailLeftOnServer); } \
  NS_IMETHOD GetAuthLogin(PRBool *aAuthLogin) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAuthLogin(aAuthLogin); } \
  NS_IMETHOD SetAuthLogin(PRBool aAuthLogin) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAuthLogin(aAuthLogin); } \
  NS_IMETHOD GetDotFix(PRBool *aDotFix) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDotFix(aDotFix); } \
  NS_IMETHOD SetDotFix(PRBool aDotFix) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDotFix(aDotFix); } \
  NS_IMETHOD GetPop3CapabilityFlags(PRUint32 *aPop3CapabilityFlags) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPop3CapabilityFlags(aPop3CapabilityFlags); } \
  NS_IMETHOD SetPop3CapabilityFlags(PRUint32 aPop3CapabilityFlags) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetPop3CapabilityFlags(aPop3CapabilityFlags); } \
  NS_IMETHOD GetDeleteByAgeFromServer(PRBool *aDeleteByAgeFromServer) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDeleteByAgeFromServer(aDeleteByAgeFromServer); } \
  NS_IMETHOD SetDeleteByAgeFromServer(PRBool aDeleteByAgeFromServer) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDeleteByAgeFromServer(aDeleteByAgeFromServer); } \
  NS_IMETHOD GetNumDaysToLeaveOnServer(PRInt32 *aNumDaysToLeaveOnServer) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetNumDaysToLeaveOnServer(aNumDaysToLeaveOnServer); } \
  NS_IMETHOD SetNumDaysToLeaveOnServer(PRInt32 aNumDaysToLeaveOnServer) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetNumDaysToLeaveOnServer(aNumDaysToLeaveOnServer); } \
  NS_IMETHOD GetRunningProtocol(nsIPop3Protocol * *aRunningProtocol) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetRunningProtocol(aRunningProtocol); } \
  NS_IMETHOD SetRunningProtocol(nsIPop3Protocol * aRunningProtocol) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetRunningProtocol(aRunningProtocol); } \
  NS_IMETHOD MarkMessagesDeleted(const char **aUidlStrings, PRUint32 count, PRBool aDeleteMsgs) { return !_to ? NS_ERROR_NULL_POINTER : _to->MarkMessagesDeleted(aUidlStrings, count, aDeleteMsgs); } \
  NS_IMETHOD GetAuthenticated(PRBool *aAuthenticated) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAuthenticated(aAuthenticated); } \
  NS_IMETHOD SetAuthenticated(PRBool aAuthenticated) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAuthenticated(aAuthenticated); } 

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

/* Header file */
class nsPop3IncomingServer : public nsIPop3IncomingServer
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIPOP3INCOMINGSERVER

  nsPop3IncomingServer();

private:
  ~nsPop3IncomingServer();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsPop3IncomingServer, nsIPop3IncomingServer)

nsPop3IncomingServer::nsPop3IncomingServer()
{
  /* member initializers and constructor code */
}

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

/* attribute boolean leaveMessagesOnServer; */
NS_IMETHODIMP nsPop3IncomingServer::GetLeaveMessagesOnServer(PRBool *aLeaveMessagesOnServer)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsPop3IncomingServer::SetLeaveMessagesOnServer(PRBool aLeaveMessagesOnServer)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean deleteMailLeftOnServer; */
NS_IMETHODIMP nsPop3IncomingServer::GetDeleteMailLeftOnServer(PRBool *aDeleteMailLeftOnServer)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsPop3IncomingServer::SetDeleteMailLeftOnServer(PRBool aDeleteMailLeftOnServer)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean authLogin; */
NS_IMETHODIMP nsPop3IncomingServer::GetAuthLogin(PRBool *aAuthLogin)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsPop3IncomingServer::SetAuthLogin(PRBool aAuthLogin)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean dotFix; */
NS_IMETHODIMP nsPop3IncomingServer::GetDotFix(PRBool *aDotFix)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsPop3IncomingServer::SetDotFix(PRBool aDotFix)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute unsigned long pop3CapabilityFlags; */
NS_IMETHODIMP nsPop3IncomingServer::GetPop3CapabilityFlags(PRUint32 *aPop3CapabilityFlags)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsPop3IncomingServer::SetPop3CapabilityFlags(PRUint32 aPop3CapabilityFlags)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean deleteByAgeFromServer; */
NS_IMETHODIMP nsPop3IncomingServer::GetDeleteByAgeFromServer(PRBool *aDeleteByAgeFromServer)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsPop3IncomingServer::SetDeleteByAgeFromServer(PRBool aDeleteByAgeFromServer)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute long numDaysToLeaveOnServer; */
NS_IMETHODIMP nsPop3IncomingServer::GetNumDaysToLeaveOnServer(PRInt32 *aNumDaysToLeaveOnServer)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsPop3IncomingServer::SetNumDaysToLeaveOnServer(PRInt32 aNumDaysToLeaveOnServer)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute nsIPop3Protocol runningProtocol; */
NS_IMETHODIMP nsPop3IncomingServer::GetRunningProtocol(nsIPop3Protocol * *aRunningProtocol)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsPop3IncomingServer::SetRunningProtocol(nsIPop3Protocol * aRunningProtocol)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void markMessagesDeleted ([array, size_is (count)] in string aUidlStrings, in unsigned long count, in boolean aDeleteMsgs); */
NS_IMETHODIMP nsPop3IncomingServer::MarkMessagesDeleted(const char **aUidlStrings, PRUint32 count, PRBool aDeleteMsgs)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean authenticated; */
NS_IMETHODIMP nsPop3IncomingServer::GetAuthenticated(PRBool *aAuthenticated)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsPop3IncomingServer::SetAuthenticated(PRBool aAuthenticated)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

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


#endif /* __gen_nsIPop3IncomingServer_h__ */
