Activity Service

- add PostgreSQL support
- add generic schema generation, plus extras (indexes, sequences, workaround for Derby)
- fix feed cleaner keepDate, also increase default from 14 to 31 days
- fix Oracle-specifc issue (when retrieving site feed)
- reformatting sqlMap config files
- improve exception handling
Add Derby warning message

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@9649 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Jan Vonka
2008-07-04 13:12:31 +00:00
parent 87096f0b2a
commit cc051d8274
28 changed files with 653 additions and 485 deletions

View File

@@ -7,19 +7,19 @@
<sqlMap namespace="ActivityFeed">
<typeAlias alias="ActivityFeed" type="org.alfresco.repo.activities.feed.ActivityFeedDAO"/>
<resultMap id="ActivityFeedResult" class="ActivityFeed">
<result property="id" column="ID"/>
<result property="feedUserId" column="FEED_USER_ID"/>
<resultMap id="ActivityFeedResult" class="ActivityFeed">
<result property="id" column="ID"/>
<result property="feedUserId" column="FEED_USER_ID"/>
<result property="postUserId" column="POST_USER_ID"/>
<result property="postDate" column="POST_DATE"/>
<result property="postId" column="POST_ID"/> <!-- not an explicit FK constraint, can dangle if and when activity post is deleted -->
<result property="siteNetwork" column="SITE_NETWORK"/>
<result property="activityType" column="ACTIVITY_TYPE"/>
<result property="activitySummary" column="ACTIVITY_SUMMARY"/>
<result property="postId" column="POST_ID"/> <!-- not an explicit FK constraint, can dangle if and when activity post is deleted -->
<result property="siteNetwork" column="SITE_NETWORK"/>
<result property="activityType" column="ACTIVITY_TYPE"/>
<result property="activitySummary" column="ACTIVITY_SUMMARY"/>
<result property="activitySummaryFormat" column="ACTIVITY_FORMAT"/>
<result property="feedDate" column="FEED_DATE"/>
</resultMap>
<result property="feedDate" column="FEED_DATE"/>
</resultMap>
<select id="select.activity.feed.for.feeduser" parameterClass="ActivityFeed" resultClass="ActivityFeed">
<![CDATA[
@@ -54,21 +54,21 @@
order by post_date desc
]]>
</select>
<insert id="insert.activity.feed" parameterClass="ActivityFeed">
<insert id="insert.activity.feed" parameterClass="ActivityFeed">
insert into alf_activity_feed (activity_type, activity_summary, activity_format, feed_user_id, post_user_id, post_date, post_id, site_network, app_tool, feed_date)
values (#activityType#, #activitySummary#, #activitySummaryFormat#, #feedUserId#, #postUserId#, #postDate#, #postId#, #siteNetwork#, #appTool#, #feedDate#)
<!-- optionally return auto-generated primary key - only required for debug (can be commented out) -->
<selectKey resultClass="long" keyProperty="id" type="post">
SELECT LAST_INSERT_ID() AS value
</selectKey>
</insert>
<delete id="delete.activity.feed.entries.older.than.date" parameterClass="Date">
<![CDATA[
delete from alf_activity_feed where post_date < #keepdate#
]]>
</delete>
</selectKey>
</insert>
<delete id="delete.activity.feed.entries.older.than.date" parameterClass="Date">
<![CDATA[
delete from alf_activity_feed where post_date < #keepdate#
]]>
</delete>
</sqlMap>

View File

@@ -7,14 +7,14 @@
<sqlMap namespace="ActivityFeedControl">
<typeAlias alias="FeedControl" type="org.alfresco.repo.activities.feed.control.FeedControlDAO"/>
<resultMap id="FeedControlResult" class="FeedControl">
<result property="id" column="ID"/>
<result property="feedUserId" column="FEED_USER_ID"/>
<result property="siteNetwork" column="SITE_NETWORK"/>
<resultMap id="FeedControlResult" class="FeedControl">
<result property="id" column="ID"/>
<result property="feedUserId" column="FEED_USER_ID"/>
<result property="siteNetwork" column="SITE_NETWORK"/>
<result property="appTool" column="APP_TOOL"/>
<result property="lastModified" column="LAST_MODIFIED"/>
</resultMap>
<result property="lastModified" column="LAST_MODIFIED"/>
</resultMap>
<select id="select.activity.feedcontrols.for.user" parameterClass="FeedControl" resultClass="FeedControl">
<![CDATA[
@@ -32,25 +32,25 @@
and site_network = #siteNetwork#
and app_tool = #appTool#
]]>
</select>
<insert id="insert.activity.feedcontrol" parameterClass="FeedControl">
</select>
<insert id="insert.activity.feedcontrol" parameterClass="FeedControl">
insert into alf_activity_feed_control (feed_user_id, site_network, app_tool, last_modified)
values (#feedUserId#, #siteNetwork#, #appTool#, #lastModified#)
<!-- optionally return auto-generated primary key - only required for debug (can be commented out) -->
<selectKey resultClass="long" keyProperty="id" type="post">
SELECT LAST_INSERT_ID() AS value
</selectKey>
</insert>
<delete id="delete.activity.feedcontrol" parameterClass="FeedControl">
<![CDATA[
</selectKey>
</insert>
<delete id="delete.activity.feedcontrol" parameterClass="FeedControl">
<![CDATA[
delete from alf_activity_feed_control
where feed_user_id = #feedUserId#
and site_network = #siteNetwork#
and app_tool = #appTool#
]]>
</delete>
and app_tool = #appTool#
]]>
</delete>
</sqlMap>

View File

@@ -10,11 +10,11 @@
<resultMap id="ActivityPostResult" class="ActivityPost">
<result property="id" column="SEQUENCE_ID"/>
<result property="activityData" column="ACTIVITY_DATA"/>
<result property="activityData" column="ACTIVITY_DATA"/>
<result property="activityType" column="ACTIVITY_TYPE"/>
<result property="userId" column="POST_USER_ID"/>
<result property="postDate" column="POST_DATE"/>
<result property="jobTaskNode" column="JOB_TASK_NODE"/>
<result property="postDate" column="POST_DATE"/>
<result property="jobTaskNode" column="JOB_TASK_NODE"/>
<result property="siteNetwork" column="SITE_NETWORK"/>
<result property="appTool" column="APP_TOOL"/>
<result property="status" column="STATUS"/>
@@ -22,7 +22,7 @@
</resultMap>
<select id="select.activity.posts" parameterClass="ActivityPost" resultClass="ActivityPost">
<![CDATA[
<![CDATA[
select
sequence_id as id,
activity_data as activityData,
@@ -36,10 +36,10 @@
from
alf_activity_post
where
job_task_node = #jobTaskNode# and
sequence_id >= #minId# and
job_task_node = #jobTaskNode# and
sequence_id >= #minId# and
sequence_id <= #maxId# and
status = #status#
status = #status#
]]>
</select>
@@ -60,27 +60,27 @@
where
status = #status#
]]>
</select>
<select id="select.activity.post.max.seq" resultClass="long">
select max(sequence_id) as maxId
</select>
<select id="select.activity.post.max.seq" resultClass="long">
select max(sequence_id) as maxId
from alf_activity_post
where status = 'POSTED'
</select>
<select id="select.activity.post.min.seq" resultClass="long">
select min(sequence_id) as minId
where status = 'POSTED'
</select>
<select id="select.activity.post.min.seq" resultClass="long">
select min(sequence_id) as minId
from alf_activity_post
where status = 'POSTED'
</select>
<select id="select.activity.post.max.jobtasknode" resultClass="int">
select max(job_task_node) as maxJobTaskNode
where status = 'POSTED'
</select>
<select id="select.activity.post.max.jobtasknode" resultClass="int">
select max(job_task_node) as maxJobTaskNode
from alf_activity_post
where status = 'POSTED'
</select>
<insert id="insert.activity.post" parameterClass="ActivityPost">
where status = 'POSTED'
</select>
<insert id="insert.activity.post" parameterClass="ActivityPost">
insert into alf_activity_post (status, activity_data, post_user_id, post_date, activity_type, site_network, app_tool, job_task_node, last_modified)
values (#status#, #activityData#, #userId#, #postDate#, #activityType#, #siteNetwork#, #appTool#, #jobTaskNode#, #lastModified#)
@@ -88,7 +88,7 @@
<selectKey resultClass="long" keyProperty="id" type="post">
SELECT LAST_INSERT_ID() AS value
</selectKey>
</insert>
<delete id="delete.activity.posts.older.than.date" parameterClass="ActivityPost">
@@ -97,7 +97,7 @@
where post_date < #postDate#
and status = #status#
]]>
</delete>
</delete>
<update id="update.activity.post.data" parameterClass="ActivityPost">
update alf_activity_post set status = #status#, activity_data=#activityData#, site_network=#siteNetwork#, last_modified=#lastModified#