root/trunk/mpdb-server/src/edu/rpi/metpetdb/server/dao/Project.hbm.xml @ 1015

Revision 1015, 3.7 KB (checked in by glickn, 4 years ago)

Part 1 of Project Invites: Front end for sending invites is done, but the back end is not yet finished.

  • Property svn:executable set to *
Line 
1<!DOCTYPE hibernate-mapping PUBLIC
2    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
3    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
4
5<hibernate-mapping package="edu.rpi.metpetdb.client.model">
6  <class name="Project" table="projects">
7    <id name="id" column="project_id" unsaved-value="0">
8      <generator class="sequence">
9        <param name="sequence">project_seq</param>
10      </generator>
11    </id>
12    <version name="version" />
13    <property name="name" column="name" />
14    <property name="description" column="description" />
15
16    <many-to-one name="owner" column="user_id" lazy="false" />
17
18    <set name="members" table="project_members">
19      <key column="project_id" />
20      <many-to-many class="User" column="user_id" />
21    </set>
22   
23    <set name="invites" table="project_invites">
24      <key column="project_id" />
25      <many-to-many class="User" column="user_id" />
26    </set>
27
28    <set name="samples" table="project_samples">
29      <key column="project_id" />
30      <many-to-many class="Sample" column="sample_id" />
31    </set>
32  </class>
33
34  <query name="Project.byId">
35    from Project p
36    inner join fetch p.owner
37    where p.id = :id
38  </query>
39 
40  <query name="Project.byOwnerId">
41    from Project p
42    inner join fetch p.owner
43    where p.owner.id = :ownerId
44  </query>
45 
46  <query name="Project.byOwnerId,size">
47    select count(*) from Project p
48    inner join p.owner
49    where p.owner.id = :ownerId
50  </query>
51 
52  <query name="Project.byOwnerId/name">
53    from Project p
54    inner join fetch p.owner
55    where p.owner.id = :ownerId
56    order by p.name
57  </query>
58 
59  <query name="Project.byOwnerId/owner">
60    from Project p
61    inner join fetch p.owner
62    where p.owner.id = :ownerId
63    order by p.owner.emailAddress
64  </query>
65 
66 
67  <query name="Project.samples,size">
68        select count(*) from Project p
69        inner join p.samples
70        where p.id = :id
71  </query>
72  <query name="Project.samples/sesarNumber">
73        from Project p
74        inner join p.samples as sample with sample.id = :id
75        order by sample.sesarNumber
76  </query>
77  <query name="Project.samples/alias">
78        from Project p
79        inner join p.samples
80        where p.id = :id
81  </query>
82  <query name="Project.samples/owner">
83        from Project p
84        inner join p.samples as sample with sample.id = :id
85        order by sample.owner
86  </query>
87  <query name="Project.samples/rockType">
88        from Project p
89        inner join p.samples as sample with sample.id = :id
90        order by sample.rockType
91  </query>
92  <query name="Project.samples/collectionDate">
93        from Project p
94        inner join p.samples as sample with sample.id = :id
95        order by sample.collectionDate
96  </query>
97  <query name="Project.samples/publicData">
98        from Project p
99        inner join p.samples as sample with sample.id = :id
100        order by sample.publicData
101  </query>
102  <query name="Project.samples/latitude">
103        from Project p
104        inner join p.samples as sample with sample.id = :id
105        order by sample.location
106  </query>
107  <query name="Project.samples/longitude">
108        from Project p
109        inner join p.samples as sample with sample.id = :id
110        order by sample.location
111  </query>
112  <query name="Project.samples/country">
113        from Project p
114        inner join p.samples as sample with sample.id = :id
115        order by sample.country
116  </query>
117  <query name="Project.samples/description">
118        from Project p
119        inner join p.samples as sample with sample.id = :id
120        order by sample.description
121  </query>
122  <query name="Project.samples/collector">
123        from Project p
124        inner join p.samples as sample with sample.id = :id
125        order by sample.collector
126  </query>
127  <query name="Project.samples/locationText">
128        from Project p
129        inner join p.samples as sample with sample.id = :id
130        order by sample.locationText
131  </query>
132</hibernate-mapping>
Note: See TracBrowser for help on using the browser.