Separating security into a part that depends only on the JPA and into a
[utils] / security / impl / src / main / resources / hbm / User.hbm.xml
diff --git a/security/impl/src/main/resources/hbm/User.hbm.xml b/security/impl/src/main/resources/hbm/User.hbm.xml
new file mode 100644 (file)
index 0000000..eefbfa2
--- /dev/null
@@ -0,0 +1,38 @@
+<?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>
+    
+    <class name="org.wamblee.usermgt.User" table="USERS" select-before-update="true">
+        <id name="primaryKey" column="ID" type="long">
+            <generator class="native"/>
+        </id>
+        <version name="persistedVersion" column="VERSION"/>
+        <property name="name" column="NAME" unique="true"/>
+        <property name="passwordString" column="PASSWORD"/>
+        <set name="groupSet" table="USER_GROUPS" lazy="false"> 
+            <key column="USER_ID"/>
+            <many-to-many class="org.wamblee.usermgt.Group" column="GROUP_ID"/>
+        </set>
+    </class>
+    
+    <query name="findUserByName">
+        from org.wamblee.usermgt.User user where user.name = :name
+    </query>
+    
+    <query name="findUserByGroupName">
+      select user
+          from org.wamblee.usermgt.User user
+            join user.groupSet grp
+            where grp.name = :name 
+    </query>
+    
+    <query name="countUsers">
+        select count(*)
+        from org.wamblee.usermgt.User user 
+    </query>
+    
+    
+</hibernate-mapping>
\ No newline at end of file