Package com.collabnet.ce.soap60.webservices.monitoring

# Interface IMonitoringAppSoap

All Known Implementing Classes:
  `MonitoringAppSoap`, `MonitoringAppSoapMockStub`, `MonitoringAppSoapStub`

public interface IMonitoringAppSoap

- ## Method Summary

  Modifier and Type
  Method
  Description
  `SoapNamedValues`
  `getApplicationMonitoringNotificationPreferences(String sessionId, String projectId)`
  Gets current user's application level monitoring notification preferences for the spcified project
  `int`
  `getMonitoringNotificationPreference(String sessionId)`
  Gets monitoring notification preference for current user
  `MonitoringSubscriptionSoapDO`
  `getMonitoringSubscription(String sessionId, String objectId)`
  Gets the current user's subscription data on the specified object.
  `MonitoringSubscriptionSoapList`
  `getMonitoringSubscriptions(String sessionId, SoapFilter[] filters)`
  Gets the list of current user's subscriptions optionally filtered by the specified filters
  `boolean`
  `isMonitoring(String sessionId, String objectId)`
  Gets whether the specified object is being monitored by current user or not.
  `boolean`
  `isUserMonitoring(String sessionId, String userName, String objectId)`
  Gets whether the specified object is being monitored by the given user name or not.
  `MonitoringUserSoapList`
  `listMonitoringUsers(String sessionId, String objectId)`
  Gets the list of users monitoring the specified object.
  `void`
  `setApplicationMonitoringNotificationPreferences(String sessionId, String projectId, SoapNamedValues appPreferences)`
  Sets current user's application level monitoring notification preferences for the specified project
  `void`
  `setMonitoringNotificationPreference(String sessionId, int preference)`
  Sets monitoring notification preference for current user.
  `void`
  `startMonitoring(String sessionId, String objectId)`
  Starts monitoring the specified object for current user
  `void`
  `startMonitoringByUser(String sessionId, String userName, String objectId)`
  Starts monitoring the specified object for the given user
  `void`
  `stopMonitoring(String sessionId, String objectId)`
  Stops monitoring the specified object for current user.
  `void`
  `stopMonitoringByUser(String sessionId, String userName, String objectId)`
  Stops monitoring the specified object for the given user.

- ## Method Details

  - ### isMonitoring

    boolean isMonitoring(String sessionId, String objectId) throws RemoteException
    Gets whether the specified object is being monitored by current user or not.
    Parameters:
      `sessionId` - User session id
      `objectId` - the object id for which we are doing the check
    Returns:
      whether the current user is monitoring the specified object
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `SystemFault` - when an unexpected system level error occurs.
      `RemoteException`
    Since:
      16.3

  - ### isUserMonitoring

    boolean isUserMonitoring(String sessionId, String userName, String objectId) throws RemoteException
    Gets whether the specified object is being monitored by the given user name or not.
    Parameters:
      `sessionId` - User session id
      `objectId` - the object id for which we are doing the check
    Returns:
      whether the specified user is monitoring the specified object
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `PermissionDeniedFault` - when userName isn't the current user, and current user can't view the object.
      `SystemFault` - when an unexpected system level error occurs.
      `IllegalArgumentFault` - when the specified userName is invalid.
      `RemoteException`
    Since:
      16.3

  - ### stopMonitoring

    void stopMonitoring(String sessionId, String objectId) throws RemoteException
    Stops monitoring the specified object for current user.
    Parameters:
      `sessionId` - User session id
      `objectId` - the object id which current user will stop monitoring
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `SystemFault` - when an unexpected system level error occurs.
      `PermissionDeniedFault` - when current user does not enough permission on the given object.
      `RemoteException`
    Since:
      16.3

  - ### stopMonitoringByUser

    void stopMonitoringByUser(String sessionId, String userName, String objectId) throws RemoteException
    Stops monitoring the specified object for the given user.
    Parameters:
      `sessionId` - User session id
      `userName` - user name of the user who needs to stop monitoring
      `objectId` - the object id which the given user will stop monitoring
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `PermissionDeniedFault` - when userName isn't the current user
      `SystemFault` - when an unexpected system level error occurs.
      `IllegalArgumentFault` - when the specified user name is invalid.
      `InvalidOperationFault` - when site is configured not to allow removing users from monitoring.
      `RemoteException`
    Since:
      16.3

  - ### startMonitoring

    void startMonitoring(String sessionId, String objectId) throws RemoteException
    Starts monitoring the specified object for current user
    Parameters:
      `sessionId` - User session id
      `objectId` - the object id which current user will start monitoring
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `PermissionDeniedFault` - when current user can't view the object,
      `SystemFault` - when an unexpected system level error occurs.
      `RemoteException`
    Since:
      16.3

  - ### startMonitoringByUser

    void startMonitoringByUser(String sessionId, String userName, String objectId) throws RemoteException
    Starts monitoring the specified object for the given user
    Parameters:
      `sessionId` - User session id
      `userName` - user name of the user who needs to monitor
      `objectId` - the object id which the given user will start monitoring
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `PermissionDeniedFault` - when userName does not have view permission on the object
      `SystemFault` - when an unexpected system level error occurs.
      `IllegalArgumentFault` - when the given user name is not valid.
      `RemoteException`
    Since:
      16.3

  - ### listMonitoringUsers

    MonitoringUserSoapList listMonitoringUsers(String sessionId, String objectId) throws RemoteException
    Gets the list of users monitoring the specified object.
    Parameters:
      `sessionId` - User session id
      `objectId` - the object id
    Returns:
      List of users monitoring the specified object.
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `PermissionDeniedFault` - when current user can't view the object.
      `SystemFault` - when an unexpected system level error occurs.
      `RemoteException`
    Since:
      16.3

  - ### getMonitoringSubscriptions

    MonitoringSubscriptionSoapList getMonitoringSubscriptions(String sessionId, SoapFilter[] filters) throws RemoteException
    Gets the list of current user's subscriptions optionally filtered by the specified filters
    Parameters:
      `sessionId` - User session id
      `filters` - Array of filters to apply (null to return unfiltered list).
    Returns:
      List of filtered monitoring subscriptions.
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `InvalidFilterFault` - when an unsupported filter exists in the filter collection.
      `SystemFault` - when an unexpected system level error occurs.
      `RemoteException`
    Since:
      16.3

  - ### getMonitoringSubscription

    MonitoringSubscriptionSoapDO getMonitoringSubscription(String sessionId, String objectId) throws RemoteException
    Gets the current user's subscription data on the specified object.
    Parameters:
      `sessionId` - User session id
      `objectId` - Id of the object
    Returns:
      The subscription data
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `SystemFault` - when an unexpected system level error occurs.
      `RemoteException`
    Since:
      16.3

  - ### getMonitoringNotificationPreference

    int getMonitoringNotificationPreference(String sessionId) throws RemoteException
    Gets monitoring notification preference for current user
    Parameters:
      `sessionId` - User session id
    Returns:
      Subscription type; 1:email, 2:digest, 3:none, 0 otherwise
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `SystemFault` - when an unexpected system level error occurs.
      `RemoteException`
    Since:
      16.3

  - ### setMonitoringNotificationPreference

    void setMonitoringNotificationPreference(String sessionId, int preference) throws RemoteException
    Sets monitoring notification preference for current user.
    Parameters:
      `sessionId` - User session id
      `preference` - Integer value representing the subscription type; 1:email, 2:digest, 3:none
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `SystemFault` - when an unexpected system level error occurs.
      `RemoteException`
    Since:
      16.3

  - ### setApplicationMonitoringNotificationPreferences

    void setApplicationMonitoringNotificationPreferences(String sessionId, String projectId, SoapNamedValues appPreferences) throws RemoteException
    Sets current user's application level monitoring notification preferences for the specified project
    Parameters:
      `sessionId` - User session id
      `projectId` - Project id
      `appPreferences` - Application preferences.
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified project id is invalid, when an application name is invalid.
      `IllegalArgumentFault` - when the application preferences are invalid.
      `PermissionDeniedFault` - when current user can view the object.
      `SystemFault` - when an unexpected system level error occurs.
      `RemoteException`
    Since:
      16.3

  - ### getApplicationMonitoringNotificationPreferences

    SoapNamedValues getApplicationMonitoringNotificationPreferences(String sessionId, String projectId) throws RemoteException
    Gets current user's application level monitoring notification preferences for the spcified project
    Parameters:
      `sessionId` - User session id
      `projectId` - Project id
    Returns:
      SoapNamedValues which includes notification preferences for project applications
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified project id is invalid.
      `RemoteException`
    Since:
      16.3