<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!--
 Licensed to the Apache Software Foundation (ASF) under one
 or more contributor license agreements.  See the NOTICE file
 distributed with this work for additional information
 regarding copyright ownership.  The ASF licenses this file
 to you under the Apache License, Version 2.0 (the
 "License"); you may not use this file except in compliance
 with the License.  You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing,
 software distributed under the License is distributed on an
 "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 KIND, either express or implied.  See the License for the
 specific language governing permissions and limitations
 under the License.
-->


<!-- ======================================================================== -->
<!--                                                                          -->
<!--  Turbine Torque based Security Service Schema                            -->
<!--                                                                          -->
<!--  Schema documentation                                                    -->
<!--  http://db.apache.org/torque/torque-4.0/documentation/orm-reference/database-4-0-strict.xsd -->
<!--  http://db.apache.org/torque/torque-4.0/documentation/orm-reference/database-4-0.xsd -->
<!--                                                                          -->
<!-- $Id: turbine-security-schema.xml 615328 2008-01-25 20:25:05Z tv $ -->
<!--                                                                          -->
<!-- ======================================================================== -->

<database xmlns="http://db.apache.org/torque/4.0/templates/database"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://db.apache.org/torque/4.0/templates/database
        http://db.apache.org/torque/4.0/templates/database-strict.xsd"
  name="${turbine_database_name}"
  defaultIdMethod="none">


  <table name="TURBINE_PERMISSION" idMethod="native" baseClass="org.apache.fulcrum.security.torque.turbine.DefaultAbstractTurbinePermission" interface="org.apache.fulcrum.security.model.turbine.entity.TurbinePermission">
    <column name="PERMISSION_ID" required="true" primaryKey="true" type="INTEGER" javaType="object" javaName="EntityId" autoIncrement="true"/>
    <column name="PERMISSION_NAME" required="true" size="64" type="VARCHAR" javaName="EntityName"/>

    <unique>
      <unique-column name="PERMISSION_NAME"/>
    </unique>

  </table>

  <table name="TURBINE_ROLE" idMethod="native" baseClass="org.apache.fulcrum.security.torque.turbine.DefaultAbstractTurbineRole" interface="org.apache.fulcrum.security.model.turbine.entity.TurbineRole">
    <column name="ROLE_ID" required="true" primaryKey="true" type="INTEGER" javaType="object" javaName="EntityId" autoIncrement="true"/>
    <column name="ROLE_NAME" required="true" size="64" type="VARCHAR" javaName="EntityName"/>

    <unique>
        <unique-column name="ROLE_NAME"/>
    </unique>

  </table>

  <table name="TURBINE_GROUP" idMethod="native" baseClass="org.apache.fulcrum.security.torque.turbine.DefaultAbstractTurbineGroup" interface="org.apache.fulcrum.security.model.turbine.entity.TurbineGroup">
    <column name="GROUP_ID" required="true" primaryKey="true" type="INTEGER" javaType="object" javaName="EntityId" autoIncrement="true"/>
    <column name="GROUP_NAME" required="true" type="VARCHAR" size="64" javaName="EntityName"/>

    <unique>
        <unique-column name="GROUP_NAME"/>
    </unique>

  </table>

  <table name="TURBINE_ROLE_PERMISSION">
    <column name="ROLE_ID" required="true" primaryKey="true" type="INTEGER"/>
    <column name="PERMISSION_ID" required="true" primaryKey="true" type="INTEGER"/>

    <!-- Turbine service revokeAll(role) manages removal, but you might want to handle it just with onDelete="cascade" -->
    <foreign-key foreignTable="TURBINE_ROLE">
      <reference local="ROLE_ID" foreign="ROLE_ID"/>
    </foreign-key>

    <foreign-key foreignTable="TURBINE_PERMISSION">
      <reference local="PERMISSION_ID" foreign="PERMISSION_ID"/>
    </foreign-key>
  </table>

  <!-- org.apache.fulcrum.security.torque.TorqueAbstractSecurityEntity -->
  <table name="TURBINE_USER" idMethod="native" baseClass="org.apache.fulcrum.security.torque.turbine.DefaultAbstractTurbineUser"
  interface="org.apache.fulcrum.security.model.turbine.entity.TurbineUser">
    <column name="USER_ID" required="true" primaryKey="true" type="INTEGER" javaType="object" javaName="EntityId" autoIncrement="true"/>
    <column name="LOGIN_NAME" required="true" size="64" type="VARCHAR" javaName="EntityName"/>
    <column name="PASSWORD_VALUE" required="true" size="16" type="VARCHAR" javaName="Password"/>
    <column name="FIRST_NAME" required="true" size="64" type="VARCHAR"/>
    <column name="LAST_NAME" required="true" size="64" type="VARCHAR"/>
    <column name="EMAIL" size="64" type="VARCHAR"/>
    <column name="CONFIRM_VALUE" size="16" type="VARCHAR" javaName="Confirmed"/>
    <column name="MODIFIED_DATE" type="TIMESTAMP" javaName="ModifiedDate"/>
    <column name="CREATED" type="TIMESTAMP" javaName="CreateDate"/>
    <column name="LAST_LOGIN" type="TIMESTAMP"/>
    <column name="OBJECTDATA" type="VARBINARY"/>

    <unique>
        <unique-column name="LOGIN_NAME"/>
    </unique>

  </table>

  <table name="TURBINE_USER_GROUP_ROLE" interface="org.apache.fulcrum.security.torque.peer.TurbineUserGroupRoleModelPeerMapper">
    <column name="USER_ID" required="true" primaryKey="true" type="INTEGER"/>
    <column name="GROUP_ID" required="true" primaryKey="true" type="INTEGER"/>
    <column name="ROLE_ID" required="true" primaryKey="true" type="INTEGER"/>
    <!-- Turbine service revokeAll(user) manages removal, but you might want to handle it just with onDelete="cascade" -->
    <foreign-key foreignTable="TURBINE_USER">
      <reference local="USER_ID" foreign="USER_ID"/>
    </foreign-key>

    <foreign-key foreignTable="TURBINE_GROUP">
      <reference local="GROUP_ID" foreign="GROUP_ID"/>
    </foreign-key>

    <foreign-key foreignTable="TURBINE_ROLE">
      <reference local="ROLE_ID" foreign="ROLE_ID"/>
    </foreign-key>
  </table>

</database>
