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

#ifndef __gen_flockISocialWebService_h__
#define __gen_flockISocialWebService_h__


#ifndef __gen_nsISimpleEnumerator_h__
#include "nsISimpleEnumerator.h"
#endif

#ifndef __gen_flockIListener_h__
#include "flockIListener.h"
#endif

#ifndef __gen_flockIWebService_h__
#include "flockIWebService.h"
#endif

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


/* starting interface:    flockISocialWebService */
#define FLOCKISOCIALWEBSERVICE_IID_STR "98332f29-f973-40c5-8cb1-6d93b1064fb1"

#define FLOCKISOCIALWEBSERVICE_IID \
  {0x98332f29, 0xf973, 0x40c5, \
    { 0x8c, 0xb1, 0x6d, 0x93, 0xb1, 0x06, 0x4f, 0xb1 }}

/**
 * A "Social" web service is one which supports the concept of "contacts"
 * (a.k.a. "friends", "buddies", etc.).  This generally means that Flock will
 * try to import the contacts so that they can appear in the browser UI, along
 * with relevant notifications as to their status, new content, etc.
 *
 * More documentation here:
 * http://wiki.flock.com/index.php?title=Danphe:AccountsAndServices
 *
 * @see flockISocialWebServiceAccount
 */
class NS_NO_VTABLE flockISocialWebService : public flockIWebService {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(FLOCKISOCIALWEBSERVICE_IID)

  /**
   * Clear media notification for a given person
   *
   * Typically, this function is called when the user consumes the
   * media of one of his friends. This function set the unseen items
   * count to 0, dismissing the notification for that friend.
   *
   * @param aPersonUrn (in) the RDF URN of the person to clear media
   */
  /* void markAllMediaSeen (in AString aPersonUrn); */
  NS_IMETHOD MarkAllMediaSeen(const nsAString & aPersonUrn) = 0;

  /**
   * Maximum length (in characters) that a status message can be.
   * For services which do not support status, set to 0.
   */
  /* readonly attribute long maxStatusLength; */
  NS_IMETHOD GetMaxStatusLength(PRInt32 *aMaxStatusLength) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_FLOCKISOCIALWEBSERVICE \
  NS_IMETHOD MarkAllMediaSeen(const nsAString & aPersonUrn); \
  NS_IMETHOD GetMaxStatusLength(PRInt32 *aMaxStatusLength); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_FLOCKISOCIALWEBSERVICE(_to) \
  NS_IMETHOD MarkAllMediaSeen(const nsAString & aPersonUrn) { return _to MarkAllMediaSeen(aPersonUrn); } \
  NS_IMETHOD GetMaxStatusLength(PRInt32 *aMaxStatusLength) { return _to GetMaxStatusLength(aMaxStatusLength); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_FLOCKISOCIALWEBSERVICE(_to) \
  NS_IMETHOD MarkAllMediaSeen(const nsAString & aPersonUrn) { return !_to ? NS_ERROR_NULL_POINTER : _to->MarkAllMediaSeen(aPersonUrn); } \
  NS_IMETHOD GetMaxStatusLength(PRInt32 *aMaxStatusLength) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMaxStatusLength(aMaxStatusLength); } 

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

/* Header file */
class _MYCLASS_ : public flockISocialWebService
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_FLOCKISOCIALWEBSERVICE

  _MYCLASS_();

private:
  ~_MYCLASS_();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(_MYCLASS_, flockISocialWebService)

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

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

/* void markAllMediaSeen (in AString aPersonUrn); */
NS_IMETHODIMP _MYCLASS_::MarkAllMediaSeen(const nsAString & aPersonUrn)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute long maxStatusLength; */
NS_IMETHODIMP _MYCLASS_::GetMaxStatusLength(PRInt32 *aMaxStatusLength)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

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


/* starting interface:    flockISocialWebServiceAccount */
#define FLOCKISOCIALWEBSERVICEACCOUNT_IID_STR "c43a99f7-0c33-4f0b-9a97-485f2d5eb8ca"

#define FLOCKISOCIALWEBSERVICEACCOUNT_IID \
  {0xc43a99f7, 0x0c33, 0x4f0b, \
    { 0x9a, 0x97, 0x48, 0x5f, 0x2d, 0x5e, 0xb8, 0xca }}

/**
 * Represents an account with a "social" web service.
 *
 * More documentation here:
 * http://wiki.flock.com/index.php?title=Danphe:AccountsAndServices
 *
 * @see flockISocialWebService
 */
class NS_NO_VTABLE flockISocialWebServiceAccount : public flockIWebServiceAccount {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(FLOCKISOCIALWEBSERVICEACCOUNT_IID)

  /** Indicates whether accounts have friend actions */
  /* readonly attribute boolean hasFriendActions; */
  NS_IMETHOD GetHasFriendActions(PRBool *aHasFriendActions) = 0;

  /** Indicates whether accounts have status message for display */
  /* readonly attribute boolean isStatusSupported; */
  NS_IMETHOD GetIsStatusSupported(PRBool *aIsStatusSupported) = 0;

  /** Indicates whether accounts status message can be set via API call */
  /* readonly attribute boolean isStatusEditable; */
  NS_IMETHOD GetIsStatusEditable(PRBool *aIsStatusEditable) = 0;

  /** Indicates whether accounts support a "Post Link" action */
  /* readonly attribute boolean isPostLinkSupported; */
  NS_IMETHOD GetIsPostLinkSupported(PRBool *aIsPostLinkSupported) = 0;

  /** Indicates whether accounts support a "My Media Favorites" action */
  /* readonly attribute boolean isMyMediaFavoritesSupported; */
  NS_IMETHOD GetIsMyMediaFavoritesSupported(PRBool *aIsMyMediaFavoritesSupported) = 0;

  /**
   * Set the status message.
   *
   * @param aStatusMessage (in) the status message to be set
   * @param aListener (in) aListener.onSuccess() will be called
   *        back when the call succeeds
   */
  /* void setStatus (in AString aStatusMessage, in flockIListener aListener); */
  NS_IMETHOD SetStatus(const nsAString & aStatusMessage, flockIListener *aListener) = 0;

  /**
   * Returns the status string to be used in the editor widget
   *
   * @return the editable status string
   */
  /* AString getEditableStatus (); */
  NS_IMETHOD GetEditableStatus(nsAString & _retval) = 0;

  /**
   * Formats a status message as it ought to be displayed.
   *
   * @param aStatusMessage (in) the pre-formatted status string
   * @return the full status message
   */
  /* AString formatStatusForDisplay (in AString aStatusMessage); */
  NS_IMETHOD FormatStatusForDisplay(const nsAString & aStatusMessage, nsAString & _retval) = 0;

  /**
   * Formats a friend activity description as it ought to be displayed.
   *
   * @param aFriendActivityUrn (in) the RDF node ID of the friend activity
   *        to be used.
   * @return the formatted friend activity description
   */
  /* AString formatFriendActivityForDisplay (in AString aFriendActivityUrn); */
  NS_IMETHOD FormatFriendActivityForDisplay(const nsAString & aFriendActivityUrn, nsAString & _retval) = 0;

  /**
   * Returns an array of me-notification descriptors, each of which consists of
   * the following pieces of information:
   * - tooltip (used as a tooltip in the UI, eg. "Poke", "Message",
   *            "Friend Request"...)
   * - metricsName (the name to be reported to the metrics services when the
                    me-notificaitons is clicked)
   * - class (class name)
   * - count (the number of new notifications of this type. 0 always means no
   *          new. -1 means that there are new noties, but we can't tell how 
              many.)
   * - URL (to be opened in a new tab, to view the actual notifications on the
   *        web service) 
   *
   * @return a JSON string, since we know it will only ever be called from
   *         JavaScript, and JSON is easier to deal with than nsIArrays, etc. 
   */
  /* AString getMeNotifications (); */
  NS_IMETHOD GetMeNotifications(nsAString & _retval) = 0;

  /**
   * Returns an array of action descriptors. Each action descriptor has the
   * following fields:
   * o label - the name of the action as it should be displayed in the UI
   * o icon - the chrome address of the icon graphic corresponding to the action
   *     (optional)
   * o spec - possible values:
   *   o "newtab:<url>" - tells the UI to open a new tab with the specified URL
   *   o "mediaquery:<query>" - tells the UI to open the media bar with the
   *       specified stream
   *   o "method:<interface>:<methodname>" - tells the UI to QI the service to
   *       the specified interface and then call the specified method.
   *       aFriendURN is always passed in as a parameter to this method. 
   *
   * @param aFriendURN (in) the RDF node ID of the friend for whom we are
   *        trying to get a list of actions for.
   * @return a JSON string, since we know it will only ever be called from
   * JavaScript, and JSON is easier to deal with than nsIArrays, etc. 
   */
  /* AString getFriendActions (in AString aFriendURN); */
  NS_IMETHOD GetFriendActions(const nsAString & aFriendURN, nsAString & _retval) = 0;

  /**
   * @return the number of friends associated with this account.
   */
  /* long getFriendCount (); */
  NS_IMETHOD GetFriendCount(PRInt32 *_retval) = 0;

  /**
   * enumerateFriends
   * Returns an enumerator on the friends for this account
   *
   * @return a nsISimpleEnumerator of flockIPerson
   */
  /* nsISimpleEnumerator enumerateFriends (); */
  NS_IMETHOD EnumerateFriends(nsISimpleEnumerator **_retval) = 0;

  /**
   * Returns an array of action descriptors. Each action descriptor has the
   * following field:
   * o spec - possible values:
   *   o "newtab:<url>" - tells the UI to open a new tab with the specified URL
   *   o "mediaquery:<query>" - tells the UI to open the media bar with the
   *       specified stream
   *   o "method:<interface>:<methodname>" - tells the UI to QI the service to
   *       the specified interface and then call the specified method.
   *       aFriendURN is always passed in as a parameter to this method. 
   *
   * When some piece of content is dragged onto a FriendCard to be shared with
   * that friend, getSharingAction() is called to find out how this service
   * wants to share that particular piece of content. The nsITransferable object
   * is passed in as an argument so that the service can switch sharing methods
   * based on the type of content, if desired.
   *
   * @param aFriendURN (in) the RDF node ID of the friend for whom we are
   *        trying to get a list of actions for.
   * @param aTransferable (in) use to determine type of content
   * @return a JSON string, since we know it will only ever be called from
   * JavaScript, and JSON is easier to deal with than nsIArrays, etc. 
   */
  /* AString getSharingAction (in AString aFriendURN, in nsITransferable aTransferable); */
  NS_IMETHOD GetSharingAction(const nsAString & aFriendURN, nsITransferable *aTransferable, nsAString & _retval) = 0;

  /**
   * Returns the URL of the profile page associated to the identity specified
   * by aFriendURN
   *
   * @return the URL of the friend profile page
   */
  /* AString getProfileURLForFriend (in AString aFriendURN); */
  NS_IMETHOD GetProfileURLForFriend(const nsAString & aFriendURN, nsAString & _retval) = 0;

  /**
   * Returns an action spec to be performed if the user executes the
   * "Post Link" action for this account.
   *
   * @param aTransferable (in) resulting from a drag and drop onto the Post
   *        Link button. Extract the URL from this transferable. If null, then
   *        the Post Link button was clicked: use the current tab's URL.
   */
  /* AString getPostLinkAction (in nsITransferable aTransferable); */
  NS_IMETHOD GetPostLinkAction(nsITransferable *aTransferable, nsAString & _retval) = 0;

  /**
   * Clear me notifications of a certain type
   *
   * Typically, this function is called when the user consumes
   * a notification of type aType from their me-card.
   *
   * @param aType (in) the type of me notification to clear
   */
  /* void markAllMeNotificationsSeen (in AString aType); */
  NS_IMETHOD MarkAllMeNotificationsSeen(const nsAString & aType) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_FLOCKISOCIALWEBSERVICEACCOUNT \
  NS_IMETHOD GetHasFriendActions(PRBool *aHasFriendActions); \
  NS_IMETHOD GetIsStatusSupported(PRBool *aIsStatusSupported); \
  NS_IMETHOD GetIsStatusEditable(PRBool *aIsStatusEditable); \
  NS_IMETHOD GetIsPostLinkSupported(PRBool *aIsPostLinkSupported); \
  NS_IMETHOD GetIsMyMediaFavoritesSupported(PRBool *aIsMyMediaFavoritesSupported); \
  NS_IMETHOD SetStatus(const nsAString & aStatusMessage, flockIListener *aListener); \
  NS_IMETHOD GetEditableStatus(nsAString & _retval); \
  NS_IMETHOD FormatStatusForDisplay(const nsAString & aStatusMessage, nsAString & _retval); \
  NS_IMETHOD FormatFriendActivityForDisplay(const nsAString & aFriendActivityUrn, nsAString & _retval); \
  NS_IMETHOD GetMeNotifications(nsAString & _retval); \
  NS_IMETHOD GetFriendActions(const nsAString & aFriendURN, nsAString & _retval); \
  NS_IMETHOD GetFriendCount(PRInt32 *_retval); \
  NS_IMETHOD EnumerateFriends(nsISimpleEnumerator **_retval); \
  NS_IMETHOD GetSharingAction(const nsAString & aFriendURN, nsITransferable *aTransferable, nsAString & _retval); \
  NS_IMETHOD GetProfileURLForFriend(const nsAString & aFriendURN, nsAString & _retval); \
  NS_IMETHOD GetPostLinkAction(nsITransferable *aTransferable, nsAString & _retval); \
  NS_IMETHOD MarkAllMeNotificationsSeen(const nsAString & aType); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_FLOCKISOCIALWEBSERVICEACCOUNT(_to) \
  NS_IMETHOD GetHasFriendActions(PRBool *aHasFriendActions) { return _to GetHasFriendActions(aHasFriendActions); } \
  NS_IMETHOD GetIsStatusSupported(PRBool *aIsStatusSupported) { return _to GetIsStatusSupported(aIsStatusSupported); } \
  NS_IMETHOD GetIsStatusEditable(PRBool *aIsStatusEditable) { return _to GetIsStatusEditable(aIsStatusEditable); } \
  NS_IMETHOD GetIsPostLinkSupported(PRBool *aIsPostLinkSupported) { return _to GetIsPostLinkSupported(aIsPostLinkSupported); } \
  NS_IMETHOD GetIsMyMediaFavoritesSupported(PRBool *aIsMyMediaFavoritesSupported) { return _to GetIsMyMediaFavoritesSupported(aIsMyMediaFavoritesSupported); } \
  NS_IMETHOD SetStatus(const nsAString & aStatusMessage, flockIListener *aListener) { return _to SetStatus(aStatusMessage, aListener); } \
  NS_IMETHOD GetEditableStatus(nsAString & _retval) { return _to GetEditableStatus(_retval); } \
  NS_IMETHOD FormatStatusForDisplay(const nsAString & aStatusMessage, nsAString & _retval) { return _to FormatStatusForDisplay(aStatusMessage, _retval); } \
  NS_IMETHOD FormatFriendActivityForDisplay(const nsAString & aFriendActivityUrn, nsAString & _retval) { return _to FormatFriendActivityForDisplay(aFriendActivityUrn, _retval); } \
  NS_IMETHOD GetMeNotifications(nsAString & _retval) { return _to GetMeNotifications(_retval); } \
  NS_IMETHOD GetFriendActions(const nsAString & aFriendURN, nsAString & _retval) { return _to GetFriendActions(aFriendURN, _retval); } \
  NS_IMETHOD GetFriendCount(PRInt32 *_retval) { return _to GetFriendCount(_retval); } \
  NS_IMETHOD EnumerateFriends(nsISimpleEnumerator **_retval) { return _to EnumerateFriends(_retval); } \
  NS_IMETHOD GetSharingAction(const nsAString & aFriendURN, nsITransferable *aTransferable, nsAString & _retval) { return _to GetSharingAction(aFriendURN, aTransferable, _retval); } \
  NS_IMETHOD GetProfileURLForFriend(const nsAString & aFriendURN, nsAString & _retval) { return _to GetProfileURLForFriend(aFriendURN, _retval); } \
  NS_IMETHOD GetPostLinkAction(nsITransferable *aTransferable, nsAString & _retval) { return _to GetPostLinkAction(aTransferable, _retval); } \
  NS_IMETHOD MarkAllMeNotificationsSeen(const nsAString & aType) { return _to MarkAllMeNotificationsSeen(aType); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_FLOCKISOCIALWEBSERVICEACCOUNT(_to) \
  NS_IMETHOD GetHasFriendActions(PRBool *aHasFriendActions) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetHasFriendActions(aHasFriendActions); } \
  NS_IMETHOD GetIsStatusSupported(PRBool *aIsStatusSupported) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIsStatusSupported(aIsStatusSupported); } \
  NS_IMETHOD GetIsStatusEditable(PRBool *aIsStatusEditable) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIsStatusEditable(aIsStatusEditable); } \
  NS_IMETHOD GetIsPostLinkSupported(PRBool *aIsPostLinkSupported) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIsPostLinkSupported(aIsPostLinkSupported); } \
  NS_IMETHOD GetIsMyMediaFavoritesSupported(PRBool *aIsMyMediaFavoritesSupported) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIsMyMediaFavoritesSupported(aIsMyMediaFavoritesSupported); } \
  NS_IMETHOD SetStatus(const nsAString & aStatusMessage, flockIListener *aListener) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetStatus(aStatusMessage, aListener); } \
  NS_IMETHOD GetEditableStatus(nsAString & _retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetEditableStatus(_retval); } \
  NS_IMETHOD FormatStatusForDisplay(const nsAString & aStatusMessage, nsAString & _retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->FormatStatusForDisplay(aStatusMessage, _retval); } \
  NS_IMETHOD FormatFriendActivityForDisplay(const nsAString & aFriendActivityUrn, nsAString & _retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->FormatFriendActivityForDisplay(aFriendActivityUrn, _retval); } \
  NS_IMETHOD GetMeNotifications(nsAString & _retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMeNotifications(_retval); } \
  NS_IMETHOD GetFriendActions(const nsAString & aFriendURN, nsAString & _retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFriendActions(aFriendURN, _retval); } \
  NS_IMETHOD GetFriendCount(PRInt32 *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFriendCount(_retval); } \
  NS_IMETHOD EnumerateFriends(nsISimpleEnumerator **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->EnumerateFriends(_retval); } \
  NS_IMETHOD GetSharingAction(const nsAString & aFriendURN, nsITransferable *aTransferable, nsAString & _retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSharingAction(aFriendURN, aTransferable, _retval); } \
  NS_IMETHOD GetProfileURLForFriend(const nsAString & aFriendURN, nsAString & _retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetProfileURLForFriend(aFriendURN, _retval); } \
  NS_IMETHOD GetPostLinkAction(nsITransferable *aTransferable, nsAString & _retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPostLinkAction(aTransferable, _retval); } \
  NS_IMETHOD MarkAllMeNotificationsSeen(const nsAString & aType) { return !_to ? NS_ERROR_NULL_POINTER : _to->MarkAllMeNotificationsSeen(aType); } 

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

/* Header file */
class _MYCLASS_ : public flockISocialWebServiceAccount
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_FLOCKISOCIALWEBSERVICEACCOUNT

  _MYCLASS_();

private:
  ~_MYCLASS_();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(_MYCLASS_, flockISocialWebServiceAccount)

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

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

/* readonly attribute boolean hasFriendActions; */
NS_IMETHODIMP _MYCLASS_::GetHasFriendActions(PRBool *aHasFriendActions)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute boolean isStatusSupported; */
NS_IMETHODIMP _MYCLASS_::GetIsStatusSupported(PRBool *aIsStatusSupported)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute boolean isStatusEditable; */
NS_IMETHODIMP _MYCLASS_::GetIsStatusEditable(PRBool *aIsStatusEditable)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute boolean isPostLinkSupported; */
NS_IMETHODIMP _MYCLASS_::GetIsPostLinkSupported(PRBool *aIsPostLinkSupported)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute boolean isMyMediaFavoritesSupported; */
NS_IMETHODIMP _MYCLASS_::GetIsMyMediaFavoritesSupported(PRBool *aIsMyMediaFavoritesSupported)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void setStatus (in AString aStatusMessage, in flockIListener aListener); */
NS_IMETHODIMP _MYCLASS_::SetStatus(const nsAString & aStatusMessage, flockIListener *aListener)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* AString getEditableStatus (); */
NS_IMETHODIMP _MYCLASS_::GetEditableStatus(nsAString & _retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* AString formatStatusForDisplay (in AString aStatusMessage); */
NS_IMETHODIMP _MYCLASS_::FormatStatusForDisplay(const nsAString & aStatusMessage, nsAString & _retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* AString formatFriendActivityForDisplay (in AString aFriendActivityUrn); */
NS_IMETHODIMP _MYCLASS_::FormatFriendActivityForDisplay(const nsAString & aFriendActivityUrn, nsAString & _retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* AString getMeNotifications (); */
NS_IMETHODIMP _MYCLASS_::GetMeNotifications(nsAString & _retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* AString getFriendActions (in AString aFriendURN); */
NS_IMETHODIMP _MYCLASS_::GetFriendActions(const nsAString & aFriendURN, nsAString & _retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* long getFriendCount (); */
NS_IMETHODIMP _MYCLASS_::GetFriendCount(PRInt32 *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* nsISimpleEnumerator enumerateFriends (); */
NS_IMETHODIMP _MYCLASS_::EnumerateFriends(nsISimpleEnumerator **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* AString getSharingAction (in AString aFriendURN, in nsITransferable aTransferable); */
NS_IMETHODIMP _MYCLASS_::GetSharingAction(const nsAString & aFriendURN, nsITransferable *aTransferable, nsAString & _retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* AString getProfileURLForFriend (in AString aFriendURN); */
NS_IMETHODIMP _MYCLASS_::GetProfileURLForFriend(const nsAString & aFriendURN, nsAString & _retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* AString getPostLinkAction (in nsITransferable aTransferable); */
NS_IMETHODIMP _MYCLASS_::GetPostLinkAction(nsITransferable *aTransferable, nsAString & _retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void markAllMeNotificationsSeen (in AString aType); */
NS_IMETHODIMP _MYCLASS_::MarkAllMeNotificationsSeen(const nsAString & aType)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

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


#endif /* __gen_flockISocialWebService_h__ */
