forked from Archives/Athou_commafeed
43 lines
3.3 KiB
XML
43 lines
3.3 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<entity-mappings version="2.0"
|
|
xmlns="http://java.sun.com/xml/ns/persistence/orm" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xsi:schemaLocation="
|
|
http://java.sun.com/xml/ns/persistence/orm
|
|
http://java.sun.com/xml/ns/persistence/orm_2_0.xsd">
|
|
|
|
<named-query name="User.byName">
|
|
<query>select u FROM User u WHERE lower(u.name)=:name</query>
|
|
</named-query>
|
|
|
|
<named-query name="Entry.byGuids">
|
|
<query>select DISTINCT e from FeedEntry e LEFT JOIN FETCH e.feeds where e.guid in (:guids) order by e.updated desc</query>
|
|
</named-query>
|
|
|
|
<named-query name="Entry.unread">
|
|
<query>select e, s from FeedEntry e LEFT JOIN e.statuses s WITH (s.user.id=:userId) LEFT JOIN FETCH e.feeds where exists (select s2 from FeedSubscription s2 where s2.user=:user and s2.feed member of e.feeds) and not exists (select s3 from FeedEntryStatus s3 where s3.entry = e and s3.user =:user and s3.read=true) order by e.updated desc</query>
|
|
</named-query>
|
|
<named-query name="Entry.all">
|
|
<query>select e, s from FeedEntry e LEFT JOIN e.statuses s WITH (s.user.id=:userId)LEFT JOIN FETCH e.feeds where exists (select s2 from FeedSubscription s2 where s2.user=:user and s2.feed member of e.feeds) order by e.updated desc</query>
|
|
</named-query>
|
|
|
|
<named-query name="Entry.unreadByFeed">
|
|
<query>select e, s from FeedEntry e LEFT JOIN e.statuses s WITH (s.user.id=:userId) LEFT JOIN FETCH e.feeds where :feed member of e.feeds and not exists (select s2 from FeedEntryStatus s2 where s2.entry=e and s2.user.id=:userId and s2.read=true) order by e.updated desc</query>
|
|
</named-query>
|
|
<named-query name="Entry.unreadByFeedCount">
|
|
<query>select count(e) from FeedEntry e LEFT JOIN e.statuses s WITH (s.user.id=:userId) where :feed member of e.feeds and not exists (select s2 from FeedEntryStatus s2 where s2.entry=e and s2.user.id=:userId and s2.read=true)</query>
|
|
</named-query>
|
|
<named-query name="Entry.allByFeed">
|
|
<query>select e, s from FeedEntry e LEFT JOIN e.statuses s WITH (s.user.id=:userId) LEFT JOIN FETCH e.feeds where :feed member of e.feeds order by e.updated desc</query>
|
|
</named-query>
|
|
|
|
<named-query name="Entry.unreadByCategories">
|
|
<query>select e, s from FeedEntry e LEFT JOIN e.statuses s WITH (s.user.id=:userId) LEFT JOIN FETCH e.feeds where exists (select s2 from FeedSubscription s2 where s2.user=:user and s2.feed member of e.feeds and s2.category in (:categories) ) and not exists (select s3 from FeedEntryStatus s3 where s3.entry = e and s3.user =:user and s3.read=true) order by e.updated desc</query>
|
|
</named-query>
|
|
<named-query name="Entry.allByCategories">
|
|
<query>select e, s from FeedEntry e LEFT JOIN e.statuses s WITH (s.user.id=:userId) LEFT JOIN FETCH e.feeds where exists (select s2 from FeedSubscription s2 where s2.user=:user and s2.feed member of e.feeds and s2.category in (:categories) ) order by e.updated desc</query>
|
|
</named-query>
|
|
|
|
<named-query name="Entry.allByKeywords">
|
|
<query>select e, s from FeedEntry e LEFT JOIN e.statuses s WITH (s.user.id=:userId) LEFT JOIN FETCH e.feeds where exists (select s2 from FeedSubscription s2 where s2.user=:user and s2.feed member of e.feeds) and (lower(e.content) like :keywords or lower(e.title) like :keywords) order by e.updated desc</query>
|
|
</named-query>
|
|
</entity-mappings> |