/**
* Copyright (c) 2000-present Liferay, Inc. All rights reserved.
*
* This library is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 2.1 of the License, or (at your option)
* any later version.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*/
package com.liferay.social.kernel.service;
import aQute.bnd.annotation.ProviderType;
import com.liferay.portal.kernel.exception.PortalException;
import com.liferay.portal.kernel.exception.SystemException;
import com.liferay.portal.kernel.jsonwebservice.JSONWebService;
import com.liferay.portal.kernel.security.access.control.AccessControlled;
import com.liferay.portal.kernel.service.BaseService;
import com.liferay.portal.kernel.transaction.Isolation;
import com.liferay.portal.kernel.transaction.Propagation;
import com.liferay.portal.kernel.transaction.Transactional;
import com.liferay.social.kernel.model.SocialActivity;
import java.util.List;
/**
* Provides the remote service interface for SocialActivity. Methods of this
* service are expected to have security checks based on the propagated JAAS
* credentials because this service can be accessed remotely.
*
* @author Brian Wing Shun Chan
* @see SocialActivityServiceUtil
* @see com.liferay.portlet.social.service.base.SocialActivityServiceBaseImpl
* @see com.liferay.portlet.social.service.impl.SocialActivityServiceImpl
* @generated
*/
@AccessControlled
@JSONWebService
@ProviderType
@Transactional(isolation = Isolation.PORTAL, rollbackFor = {
PortalException.class, SystemException.class})
public interface SocialActivityService extends BaseService {
/*
* NOTE FOR DEVELOPERS:
*
* Never modify or reference this interface directly. Always use {@link SocialActivityServiceUtil} to access the social activity remote service. Add custom service methods to {@link com.liferay.portlet.social.service.impl.SocialActivityServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
*/
/**
* Returns the activity identified by its primary key.
*
* @param activityId the primary key of the activity
* @return Returns the activity
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public SocialActivity getActivity(long activityId)
throws PortalException;
/**
* Returns the activity that has the mirror activity.
*
* @param mirrorActivityId the primary key of the mirror activity
* @return Returns the mirror activity
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public SocialActivity getMirrorActivity(long mirrorActivityId)
throws PortalException;
/**
* Returns the number of activities done on assets identified by class name.
*
* @param className the target asset's class name
* @return the number of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public int getActivitiesCount(java.lang.String className);
/**
* Returns the number of activities done on assets identified by the class
* name ID.
*
* @param classNameId the target asset's class name ID
* @return the number of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public int getActivitiesCount(long classNameId);
/**
* Returns the number of activities done on the asset identified by the
* class name and class primary key that are mirrors of the activity
* identified by the mirror activity ID.
*
* @param mirrorActivityId the primary key of the mirror activity
* @param className the target asset's class name
* @param classPK the primary key of the target asset
* @return the number of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public int getActivitiesCount(long mirrorActivityId,
java.lang.String className, long classPK);
/**
* Returns the number of activities done on the asset identified by the
* class name ID and class primary key that are mirrors of the activity
* identified by the mirror activity ID.
*
* @param mirrorActivityId the primary key of the mirror activity
* @param classNameId the target asset's class name ID
* @param classPK the primary key of the target asset
* @return the number of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public int getActivitiesCount(long mirrorActivityId, long classNameId,
long classPK);
/**
* Returns the number of activities done in the group.
*
* <p>
* This method only counts activities without mirrors.
* </p>
*
* @param groupId the primary key of the group
* @return the number of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public int getGroupActivitiesCount(long groupId);
/**
* Returns the number of activities done by users that are members of the
* group.
*
* <p>
* This method only counts activities without mirrors.
* </p>
*
* @param groupId the primary key of the group
* @return the number of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public int getGroupUsersActivitiesCount(long groupId);
/**
* Returns the number of activities done in the organization. This method
* only counts activities without mirrors.
*
* @param organizationId the primary key of the organization
* @return the number of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public int getOrganizationActivitiesCount(long organizationId);
/**
* Returns the number of activities done by users of the organization. This
* method only counts activities without mirrors.
*
* @param organizationId the primary key of the organization
* @return the number of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public int getOrganizationUsersActivitiesCount(long organizationId);
/**
* Returns the number of activities done by users in a relationship with the
* user identified by userId.
*
* @param userId the primary key of the user
* @return the number of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public int getRelationActivitiesCount(long userId);
/**
* Returns the number of activities done by users in a relationship of type
* <code>type</code> with the user identified by <code>userId</code>. This
* method only counts activities without mirrors.
*
* @param userId the primary key of the user
* @param type the relationship type
* @return the number of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public int getRelationActivitiesCount(long userId, int type);
/**
* Returns the number of activities done by the user.
*
* @param userId the primary key of the user
* @return the number of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public int getUserActivitiesCount(long userId);
/**
* Returns the number of activities done in user's groups. This method only
* counts activities without mirrors.
*
* @param userId the primary key of the user
* @return the number of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public int getUserGroupsActivitiesCount(long userId);
/**
* Returns the number of activities done in user's groups and organizations.
* This method only counts activities without mirrors.
*
* @param userId the primary key of the user
* @return the number of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public int getUserGroupsAndOrganizationsActivitiesCount(long userId);
/**
* Returns the number of activities done in the user's organizations. This
* method only counts activities without mirrors.
*
* @param userId the primary key of the user
* @return the number of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public int getUserOrganizationsActivitiesCount(long userId);
/**
* Returns the OSGi service identifier.
*
* @return the OSGi service identifier
*/
public java.lang.String getOSGiServiceIdentifier();
/**
* Returns a range of all the activities done on assets identified by the
* class name.
*
* <p>
* Useful when paginating results. Returns a maximum of <code>end -
* start</code> instances. <code>start</code> and <code>end</code> are not
* primary keys, they are indexes in the result set. Thus, <code>0</code>
* refers to the first result in the set. Setting both <code>start</code>
* and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
* result set.
* </p>
*
* @param className the target asset's class name
* @param start the lower bound of the range of results
* @param end the upper bound of the range of results (not inclusive)
* @return the range of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List<SocialActivity> getActivities(java.lang.String className,
int start, int end) throws PortalException;
/**
* Returns a range of all the activities done on assets identified by the
* class name ID.
*
* <p>
* Useful when paginating results. Returns a maximum of <code>end -
* start</code> instances. <code>start</code> and <code>end</code> are not
* primary keys, they are indexes in the result set. Thus, <code>0</code>
* refers to the first result in the set. Setting both <code>start</code>
* and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
* result set.
* </p>
*
* @param classNameId the target asset's class name ID
* @param start the lower bound of the range of results
* @param end the upper bound of the range of results (not inclusive)
* @return the range of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List<SocialActivity> getActivities(long classNameId, int start,
int end) throws PortalException;
/**
* Returns a range of all the activities done on the asset identified by the
* class name and the class primary key that are mirrors of the activity
* identified by the mirror activity ID.
*
* <p>
* Useful when paginating results. Returns a maximum of <code>end -
* start</code> instances. <code>start</code> and <code>end</code> are not
* primary keys, they are indexes in the result set. Thus, <code>0</code>
* refers to the first result in the set. Setting both <code>start</code>
* and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
* result set.
* </p>
*
* @param mirrorActivityId the primary key of the mirror activity
* @param className the target asset's class name
* @param classPK the primary key of the target asset
* @param start the lower bound of the range of results
* @param end the upper bound of the range of results (not inclusive)
* @return the range of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List<SocialActivity> getActivities(long mirrorActivityId,
java.lang.String className, long classPK, int start, int end)
throws PortalException;
/**
* Returns a range of all the activities done on the asset identified by the
* class name ID and class primary key that are mirrors of the activity
* identified by the mirror activity ID.
*
* <p>
* Useful when paginating results. Returns a maximum of <code>end -
* start</code> instances. <code>start</code> and <code>end</code> are not
* primary keys, they are indexes in the result set. Thus, <code>0</code>
* refers to the first result in the set. Setting both <code>start</code>
* and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
* result set.
* </p>
*
* @param mirrorActivityId the primary key of the mirror activity
* @param classNameId the target asset's class name ID
* @param classPK the primary key of the target asset
* @param start the lower bound of the range of results
* @param end the upper bound of the range of results (not inclusive)
* @return the range of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List<SocialActivity> getActivities(long mirrorActivityId,
long classNameId, long classPK, int start, int end)
throws PortalException;
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List<SocialActivity> getActivitySetActivities(long activitySetId,
int start, int end) throws PortalException;
/**
* Returns a range of all the activities done in the group.
*
* <p>
* This method only finds activities without mirrors.
* </p>
*
* <p>
* Useful when paginating results. Returns a maximum of <code>end -
* start</code> instances. <code>start</code> and <code>end</code> are not
* primary keys, they are indexes in the result set. Thus, <code>0</code>
* refers to the first result in the set. Setting both <code>start</code>
* and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
* result set.
* </p>
*
* @param groupId the primary key of the group
* @param start the lower bound of the range of results
* @param end the upper bound of the range of results (not inclusive)
* @return the range of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List<SocialActivity> getGroupActivities(long groupId, int start,
int end) throws PortalException;
/**
* Returns a range of activities done by users that are members of the
* group.
*
* <p>
* This method only finds activities without mirrors.
* </p>
*
* <p>
* Useful when paginating results. Returns a maximum of <code>end -
* start</code> instances. <code>start</code> and <code>end</code> are not
* primary keys, they are indexes in the result set. Thus, <code>0</code>
* refers to the first result in the set. Setting both <code>start</code>
* and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
* result set.
* </p>
*
* @param groupId the primary key of the group
* @param start the lower bound of the range of results
* @param end the upper bound of the range of results (not inclusive)
* @return the range of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List<SocialActivity> getGroupUsersActivities(long groupId,
int start, int end) throws PortalException;
/**
* Returns a range of all the activities done in the organization. This
* method only finds activities without mirrors.
*
* <p>
* Useful when paginating results. Returns a maximum of <code>end -
* start</code> instances. <code>start</code> and <code>end</code> are not
* primary keys, they are indexes in the result set. Thus, <code>0</code>
* refers to the first result in the set. Setting both <code>start</code>
* and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
* result set.
* </p>
*
* @param organizationId the primary key of the organization
* @param start the lower bound of the range of results
* @param end the upper bound of the range of results (not inclusive)
* @return the range of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List<SocialActivity> getOrganizationActivities(long organizationId,
int start, int end) throws PortalException;
/**
* Returns a range of all the activities done by users of the organization.
* This method only finds activities without mirrors.
*
* <p>
* Useful when paginating results. Returns a maximum of <code>end -
* start</code> instances. <code>start</code> and <code>end</code> are not
* primary keys, they are indexes in the result set. Thus, <code>0</code>
* refers to the first result in the set. Setting both <code>start</code>
* and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
* result set.
* </p>
*
* @param organizationId the primary key of the organization
* @param start the lower bound of the range of results
* @param end the upper bound of the range of results (not inclusive)
* @return the range of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List<SocialActivity> getOrganizationUsersActivities(
long organizationId, int start, int end) throws PortalException;
/**
* Returns a range of all the activities done by users in a relationship
* with the user identified by the user ID.
*
* <p>
* Useful when paginating results. Returns a maximum of <code>end -
* start</code> instances. <code>start</code> and <code>end</code> are not
* primary keys, they are indexes in the result set. Thus, <code>0</code>
* refers to the first result in the set. Setting both <code>start</code>
* and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
* result set.
* </p>
*
* @param userId the primary key of the user
* @param start the lower bound of the range of results
* @param end the upper bound of the range of results (not inclusive)
* @return the range of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List<SocialActivity> getRelationActivities(long userId, int start,
int end) throws PortalException;
/**
* Returns a range of all the activities done by users in a relationship of
* type <code>type</code> with the user identified by <code>userId</code>.
* This method only finds activities without mirrors.
*
* <p>
* Useful when paginating results. Returns a maximum of <code>end -
* start</code> instances. <code>start</code> and <code>end</code> are not
* primary keys, they are indexes in the result set. Thus, <code>0</code>
* refers to the first result in the set. Setting both <code>start</code>
* and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
* result set.
* </p>
*
* @param userId the primary key of the user
* @param type the relationship type
* @param start the lower bound of the range of results
* @param end the upper bound of the range of results (not inclusive)
* @return the range of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List<SocialActivity> getRelationActivities(long userId, int type,
int start, int end) throws PortalException;
/**
* Returns a range of all the activities done by the user.
*
* <p>
* Useful when paginating results. Returns a maximum of <code>end -
* start</code> instances. <code>start</code> and <code>end</code> are not
* primary keys, they are indexes in the result set. Thus, <code>0</code>
* refers to the first result in the set. Setting both <code>start</code>
* and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
* result set.
* </p>
*
* @param userId the primary key of the user
* @param start the lower bound of the range of results
* @param end the upper bound of the range of results (not inclusive)
* @return the range of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List<SocialActivity> getUserActivities(long userId, int start,
int end) throws PortalException;
/**
* Returns a range of all the activities done in the user's groups. This
* method only finds activities without mirrors.
*
* <p>
* Useful when paginating results. Returns a maximum of <code>end -
* start</code> instances. <code>start</code> and <code>end</code> are not
* primary keys, they are indexes in the result set. Thus, <code>0</code>
* refers to the first result in the set. Setting both <code>start</code>
* and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
* result set.
* </p>
*
* @param userId the primary key of the user
* @param start the lower bound of the range of results
* @param end the upper bound of the range of results (not inclusive)
* @return the range of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List<SocialActivity> getUserGroupsActivities(long userId, int start,
int end) throws PortalException;
/**
* Returns a range of all the activities done in the user's groups and
* organizations. This method only finds activities without mirrors.
*
* <p>
* Useful when paginating results. Returns a maximum of <code>end -
* start</code> instances. <code>start</code> and <code>end</code> are not
* primary keys, they are indexes in the result set. Thus, <code>0</code>
* refers to the first result in the set. Setting both <code>start</code>
* and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
* result set.
* </p>
*
* @param userId the primary key of the user
* @param start the lower bound of the range of results
* @param end the upper bound of the range of results (not inclusive)
* @return the range of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List<SocialActivity> getUserGroupsAndOrganizationsActivities(
long userId, int start, int end) throws PortalException;
/**
* Returns a range of all activities done in the user's organizations. This
* method only finds activities without mirrors.
*
* <p>
* Useful when paginating results. Returns a maximum of <code>end -
* start</code> instances. <code>start</code> and <code>end</code> are not
* primary keys, they are indexes in the result set. Thus, <code>0</code>
* refers to the first result in the set. Setting both <code>start</code>
* and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
* result set.
* </p>
*
* @param userId the primary key of the user
* @param start the lower bound of the range of results
* @param end the upper bound of the range of results (not inclusive)
* @return the range of matching activities
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List<SocialActivity> getUserOrganizationsActivities(long userId,
int start, int end) throws PortalException;
}