mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
Part of MOB-436: Cluster-wide Locking Service: Implement DB Changes and Service
- Unit test not checked in as it requires some schema change work that has been done manually - Moved activities DAO code and renamed data services to DAOs (as per iBatis and Wikipedia, etc) - DAO code should now go into org.alfresco.repo.domain... - DAO components are bean:xyzDAO and class:XyzDAO - Entity beans are XyzEntity, etc git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@13922 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -6,9 +6,9 @@
|
||||
|
||||
<sqlMap namespace="alfresco.activities">
|
||||
|
||||
<typeAlias alias="ActivityFeed" type="org.alfresco.repo.activities.feed.ActivityFeedDAO"/>
|
||||
<typeAlias alias="FeedControl" type="org.alfresco.repo.activities.feed.control.FeedControlDAO"/>
|
||||
<typeAlias alias="ActivityPost" type="org.alfresco.repo.activities.post.ActivityPostDAO"/>
|
||||
<typeAlias alias="ActivityFeed" type="org.alfresco.repo.domain.activities.ActivityFeedEntity"/>
|
||||
<typeAlias alias="FeedControl" type="org.alfresco.repo.domain.activities.FeedControlEntity"/>
|
||||
<typeAlias alias="ActivityPost" type="org.alfresco.repo.domain.activities.ActivityPostEntity"/>
|
||||
|
||||
<resultMap id="ActivityFeedResult" class="ActivityFeed">
|
||||
<result property="id" column="id" jdbcType="BIGINT" javaType="java.lang.Long"/>
|
||||
|
@@ -0,0 +1,77 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
|
||||
<!DOCTYPE sqlMap
|
||||
PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"
|
||||
"http://ibatis.apache.org/dtd/sql-map-2.dtd">
|
||||
|
||||
<sqlMap namespace="alfresco.lock">
|
||||
|
||||
<!-- -->
|
||||
<!-- Type Defs -->
|
||||
<!-- -->
|
||||
|
||||
<typeAlias alias="LockResource" type="org.alfresco.repo.domain.locks.LockResourceEntity"/>
|
||||
<typeAlias alias="Lock" type="org.alfresco.repo.domain.locks.LockEntity"/>
|
||||
|
||||
<!-- -->
|
||||
<!-- Result Maps -->
|
||||
<!-- -->
|
||||
|
||||
<resultMap id="result.LockResource" class="LockResource">
|
||||
<result property="id" column="id" jdbcType="BIGINT" javaType="java.lang.Long"/>
|
||||
<result property="qnameNamespaceId" column="qname_ns_id" jdbcType="BIGINT" javaType="java.lang.Long"/>
|
||||
<result property="qnameLocalName" column="qname_localname" jdbcType="VARCHAR" javaType="java.lang.String"/>
|
||||
</resultMap>
|
||||
|
||||
<resultMap id="result.Lock" class="Lock">
|
||||
<result property="id" column="id" jdbcType="BIGINT" javaType="java.lang.Long"/>
|
||||
<result property="sharedResourceId" column="shared_resource_id" jdbcType="BIGINT" javaType="java.lang.Long"/>
|
||||
<result property="exclusiveResourceId" column="excl_resource_id" jdbcType="BIGINT" javaType="java.lang.Long"/>
|
||||
<result property="lockHolder" column="lock_holder" jdbcType="VARCHAR" javaType="java.lang.String"/>
|
||||
</resultMap>
|
||||
|
||||
<!-- -->
|
||||
<!-- SQL Snippets -->
|
||||
<!-- -->
|
||||
|
||||
<sql id="insert.LockResource.AutoIncrement">
|
||||
insert into alf_lock_resource (version, qname_ns_id, qname_localname)
|
||||
values (#version#, #qnameNamespaceId#, lower(#qnameLocalName#))
|
||||
</sql>
|
||||
|
||||
<sql id="insert.Lock.AutoIncrement">
|
||||
insert into alf_lock (version, shared_resource_id, excl_resource_id, lock_holder)
|
||||
values (#version#, #sharedResourceId#, #exclusiveResourceId#, lower(#lockHolder#))
|
||||
</sql>
|
||||
|
||||
<!-- -->
|
||||
<!-- Statements -->
|
||||
<!-- -->
|
||||
|
||||
<!-- Get the lock resource entity that is referenced by the locks -->
|
||||
<select id="select.LockResourceByQName" parameterClass="LockResource" resultMap="result.LockResource">
|
||||
select
|
||||
*
|
||||
from
|
||||
alf_lock_resource
|
||||
where
|
||||
qname_ns_id = #qnameNamespaceId# and
|
||||
qname_localname = lower(#qnameLocalName#)
|
||||
</select>
|
||||
|
||||
<!-- Get all locks for a given list of resource IDs -->
|
||||
<select id="select.LockBySharedIds" resultMap="result.Lock">
|
||||
select
|
||||
*
|
||||
from
|
||||
alf_lock
|
||||
where
|
||||
shared_resource_id in
|
||||
<dynamic>
|
||||
<iterate open="(" close=")" conjunction=", ">
|
||||
#[]#
|
||||
</iterate>
|
||||
</dynamic>
|
||||
</select>
|
||||
|
||||
</sqlMap>
|
Reference in New Issue
Block a user