public void addSubscription( Long classNameId, Long classPK, Integer type, String extraData, Long userId) throws PortalException, SystemException { if (activitySubscriptionPersistence .findByClassNameIdClassPKTypeExtraDataReceiverId( classNameId, classPK, type, extraData, userId) .size() > 0) { // subscription exists, do nothing return; } Long pk = CounterLocalServiceUtil.increment(ActivitySubscription.class.getName()); ActivitySubscription subscription = ActivitySubscriptionLocalServiceUtil.createActivitySubscription(pk); subscription.setClassNameId(classNameId); subscription.setClassPK(classPK); subscription.setType(type); subscription.setExtraData(extraData); subscription.setReceiverId(userId); subscription.setModifiedDate(new Date()); subscription.setCreateDate(new Date()); subscription.store(); }