All pastes #93464 Raw Edit

Someone

public text v1 · immutable
#93464 ·published 2006-07-20 13:40 UTC
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>