rendered paste body<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.scanplus.mail.external.model">
<class name="MailMessageFilter" table="mailfilter_object">
<cache usage="read-write"/>
<id name="id" column="filter_id">
<generator class="sequence">
<param name="sequence">primekey_sequence</param>
</generator>
</id>
<property name="userId" column="user_id" />
<property name="name" />
<property name="predecessorId" column="predecessor" />
<property name="action"
type="com.scanplus.mail.data.dao.sql.enums.ActionMapping" />
<property name="status"
type="com.scanplus.mail.data.dao.sql.enums.StatusMapping" />
<property name="destinationFolder" column="dest_folder" />
<property name="combination"
type="com.scanplus.mail.data.dao.sql.enums.CombinationMapping" />
<property name="forwardAddress" column="forw_addr" />
<!-- TODO: fix lazy initialization -->
<set name="rules" inverse="true" lazy="false" cascade="all">
<cache usage="read-write"/>
<key column="filter_id" not-null="true" />
<one-to-many class="MailMessageFilterRule" />
</set>
</class>
<class name="MailMessageFilterRule" table="mailfilter_rule">
<cache usage="read-write"/>
<id name="id" column="rule_id">
<generator class="sequence">
<param name="sequence">primekey_sequence</param>
</generator>
</id>
<property name="userId"
column="user_id" />
<property name="type"
column="filter_type"
type="com.scanplus.mail.data.dao.sql.enums.RuleTypeMapping" />
<property name="textField"
column="text_field"
type="com.scanplus.mail.data.dao.sql.enums.TextRuleFieldMapping" />
<property name="textSearch"
column="text_search" />
<property name="textMatch"
column="text_match"
type="com.scanplus.mail.data.dao.sql.enums.TextMatchTypeMapping" />
<property name="textMatchSensitivity"
column="text_case"
type="com.scanplus.mail.data.dao.sql.enums.TextMatchSensitivityMapping" />
<property name="sizeMatch"
column="size_match"
type="com.scanplus.mail.data.dao.sql.enums.SizeMatchTypeMapping" />
<property name="sizeLabel"
column="size_label"
type="com.scanplus.mail.data.dao.sql.enums.SizeLabelMapping" />
<property name="sizeBytes" column="size_bytes" />
<many-to-one name="mailFilter" column="filter_id"
class="MailMessageFilter" />
</class>
<query name="MailMessageFilterRule.getOneById">
from MailMessageFilterRule where id = :ruleId
</query>
<query name="MailMessageFilterRule.listByFilterId">
from MailMessageFilterRule where mailFilter.id = :filterId order by id
</query>
<query name="MailMessageFilter.getOneByUserId">
from MailMessageFilter where id = :filterId and userId = :userId
</query>
<query name="MailMessageFilter.listByUserId">
from MailMessageFilter where userId = :userId order by predecessor
</query>
<query name="MailMessageFilter.getOneByPredecessorId">
from MailMessageFilter where predecessorId = :predecessorId and userId = :userId
</query>
</hibernate-mapping>