/** * Invokes to records the activity to Stream * * @param owner * @param entity * @param mentioners NULL is empty mentioner. * @return */ public static ProcessContext save(Identity owner, ActivityEntity entity, String[] mentioners) { // SocialServiceContext ctx = SocialServiceContextImpl.getInstance(); StreamProcessContext processCtx = StreamProcessContext.getIntance(StreamProcessContext.NEW_ACTIVITY_RELATIONS_PROCESS, ctx); processCtx.identity(owner).activityEntity(entity).mentioners(mentioners); try { if (ctx.isAsync()) { // ctx.getServiceExecutor().async(StreamProcessorFactory.saveStream(), processCtx); } else { ctx.getServiceExecutor().execute(StreamProcessorFactory.saveStream(), processCtx); } } finally { if (ctx.isTraced()) { LOG.debug(processCtx.getTraceLog()); } } return processCtx; }