Hi Georg,
I went back to fulcrum/security revision 1849110 and turbine in SVN builds fine. However, this set of updates causes failures in some of the turbine unit tests with the security service. I haven't had time to dig further, but thought you might like to know if you have already addressed it and just not checked in the code yet :-) If I get some time tomorrow, I can take a look at it further, but I won't be able to before then. Thanks! Jeff On 1/11/19 5:09 AM, [email protected] wrote: > Author: gk > Date: Fri Jan 11 10:09:52 2019 > New Revision: 1851024 > > URL: http://svn.apache.org/viewvc?rev=1851024&view=rev > Log: > - Use DatabackendException as a wrapper for TorqueException to get internal > (secondary) database errors stack more transparently. Othwerwise > TorqueTurbineUserManagerImpl may not get the error stack for attached > objects. > > Modified: > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/TorqueAbstractUserManager.java > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/basic/TorqueAbstractBasicGroup.java > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/basic/TorqueAbstractBasicUser.java > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicGroup.java > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicPermission.java > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicRole.java > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicUser.java > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/security/TorqueAbstractSecurityEntity.java > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/security/turbine/TorqueAbstractTurbineTurbineSecurityEntityDefault.java > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbineGroup.java > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbinePermission.java > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbineRole.java > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbineUser.java > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/FulcrumAbstractTurbineGroup.java > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/FulcrumAbstractTurbinePermission.java > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/FulcrumAbstractTurbineRole.java > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/FulcrumAbstractTurbineUser.java > > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/TorqueTurbineUserManagerImpl.java > > Modified: > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/TorqueAbstractUserManager.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/TorqueAbstractUserManager.java?rev=1851024&r1=1851023&r2=1851024&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/TorqueAbstractUserManager.java > (original) > +++ > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/TorqueAbstractUserManager.java > Fri Jan 11 10:09:52 2019 > @@ -198,6 +198,8 @@ public abstract class TorqueAbstractUser > > /** > * Retrieve a user from persistent storage using username as the key. > + * > + * Additionally retrieves all attached objects from {@link > TorqueAbstractSecurityEntity#retrieveAttachedObjects(Connection, Boolean)} > * > * @param userName the name of the user. > * @return an User object. > > Modified: > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/basic/TorqueAbstractBasicGroup.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/basic/TorqueAbstractBasicGroup.java?rev=1851024&r1=1851023&r2=1851024&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/basic/TorqueAbstractBasicGroup.java > (original) > +++ > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/basic/TorqueAbstractBasicGroup.java > Fri Jan 11 10:09:52 2019 > @@ -27,6 +27,7 @@ import org.apache.fulcrum.security.torqu > import org.apache.fulcrum.security.torque.om.TorqueBasicUserGroup; > import org.apache.fulcrum.security.torque.om.TorqueBasicUserGroupPeer; > import > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity; > +import org.apache.fulcrum.security.util.DataBackendException; > import org.apache.fulcrum.security.util.UserSet; > import org.apache.torque.TorqueException; > import org.apache.torque.criteria.Criteria; > @@ -133,7 +134,7 @@ public abstract class TorqueAbstractBasi > > @Override > public void retrieveAttachedObjects( Connection con ) > - throws TorqueException > + throws DataBackendException > { > retrieveAttachedObjects( con, false ); > } > @@ -143,16 +144,20 @@ public abstract class TorqueAbstractBasi > */ > @Override > public void retrieveAttachedObjects( Connection con, Boolean lazy ) > - throws TorqueException > + throws DataBackendException > { > this.userSet = new UserSet(); > > - List<TorqueBasicUserGroup> usergroups = > - getTorqueBasicUserGroupsJoinTorqueBasicUser(new Criteria(), > con); > - > - for (TorqueBasicUserGroup tbug : usergroups) > - { > - userSet.add(tbug.getTorqueBasicUser()); > + try { > + List<TorqueBasicUserGroup> usergroups = > + getTorqueBasicUserGroupsJoinTorqueBasicUser(new Criteria(), > con); > + > + for (TorqueBasicUserGroup tbug : usergroups) > + { > + userSet.add(tbug.getTorqueBasicUser()); > + } > + } catch (TorqueException e ) { > + throw new DataBackendException( e.getMessage(),e ); > } > } > > > Modified: > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/basic/TorqueAbstractBasicUser.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/basic/TorqueAbstractBasicUser.java?rev=1851024&r1=1851023&r2=1851024&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/basic/TorqueAbstractBasicUser.java > (original) > +++ > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/basic/TorqueAbstractBasicUser.java > Fri Jan 11 10:09:52 2019 > @@ -27,6 +27,7 @@ import org.apache.fulcrum.security.torqu > import org.apache.fulcrum.security.torque.om.TorqueBasicUserGroupPeer; > import org.apache.fulcrum.security.torque.om.TorqueBasicUserPeer; > import > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity; > +import org.apache.fulcrum.security.util.DataBackendException; > import org.apache.fulcrum.security.util.GroupSet; > import org.apache.torque.TorqueException; > import org.apache.torque.criteria.Criteria; > @@ -134,7 +135,7 @@ public abstract class TorqueAbstractBasi > */ > @Override > public void retrieveAttachedObjects( Connection con ) > - throws TorqueException > + throws DataBackendException > { > retrieveAttachedObjects( con, false ); > } > @@ -144,15 +145,19 @@ public abstract class TorqueAbstractBasi > */ > @Override > public void retrieveAttachedObjects( Connection con, Boolean lazy ) > - throws TorqueException > + throws DataBackendException > { > this.groupSet = new GroupSet(); > > - List<TorqueBasicUserGroup> usergroups = > getTorqueBasicUserGroupsJoinTorqueBasicGroup(new Criteria(), con); > - > - for (TorqueBasicUserGroup tbug : usergroups) > - { > - groupSet.add(tbug.getTorqueBasicGroup()); > + try { > + List<TorqueBasicUserGroup> usergroups = > getTorqueBasicUserGroupsJoinTorqueBasicGroup(new Criteria(), con); > + > + for (TorqueBasicUserGroup tbug : usergroups) > + { > + groupSet.add(tbug.getTorqueBasicGroup()); > + } > + } catch (TorqueException e ) { > + throw new DataBackendException( e.getMessage(),e ); > } > } > > > Modified: > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicGroup.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicGroup.java?rev=1851024&r1=1851023&r2=1851024&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicGroup.java > (original) > +++ > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicGroup.java > Fri Jan 11 10:09:52 2019 > @@ -30,6 +30,7 @@ import org.apache.fulcrum.security.torqu > import org.apache.fulcrum.security.torque.om.TorqueDynamicUserGroup; > import org.apache.fulcrum.security.torque.om.TorqueDynamicUserGroupPeer; > import > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity; > +import org.apache.fulcrum.security.util.DataBackendException; > import org.apache.fulcrum.security.util.RoleSet; > import org.apache.fulcrum.security.util.UserSet; > import org.apache.torque.TorqueException; > @@ -234,7 +235,7 @@ public abstract class TorqueAbstractDyna > */ > @Override > public void retrieveAttachedObjects( Connection con ) > - throws TorqueException > + throws DataBackendException > { > retrieveAttachedObjects( con, false ); > } > @@ -244,24 +245,30 @@ public abstract class TorqueAbstractDyna > */ > @Override > public void retrieveAttachedObjects( Connection con, Boolean lazy ) > - throws TorqueException > + throws DataBackendException > { > this.userSet = new UserSet<User>(); > + > + try { > > - List<TorqueDynamicUserGroup> usergroups = > getTorqueDynamicUserGroupsJoinTorqueDynamicUser(new Criteria(), con); > - > - for (TorqueDynamicUserGroup tdug : usergroups) > - { > - userSet.add(tdug.getTorqueDynamicUser()); > - } > - > - this.roleSet = new RoleSet(); > - > - List<TorqueDynamicGroupRole> grouproles = > getTorqueDynamicGroupRolesJoinTorqueDynamicRole(new Criteria(), con); > - > - for (TorqueDynamicGroupRole tdgr : grouproles) > - { > - roleSet.add(tdgr.getTorqueDynamicRole()); > + List<TorqueDynamicUserGroup> usergroups = > getTorqueDynamicUserGroupsJoinTorqueDynamicUser(new Criteria(), con); > + > + for (TorqueDynamicUserGroup tdug : usergroups) > + { > + userSet.add(tdug.getTorqueDynamicUser()); > + } > + > + this.roleSet = new RoleSet(); > + > + List<TorqueDynamicGroupRole> grouproles = > getTorqueDynamicGroupRolesJoinTorqueDynamicRole(new Criteria(), con); > + > + for (TorqueDynamicGroupRole tdgr : grouproles) > + { > + roleSet.add(tdgr.getTorqueDynamicRole()); > + } > + > + } catch (TorqueException e ) { > + throw new DataBackendException( e.getMessage(),e ); > } > } > > > Modified: > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicPermission.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicPermission.java?rev=1851024&r1=1851023&r2=1851024&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicPermission.java > (original) > +++ > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicPermission.java > Fri Jan 11 10:09:52 2019 > @@ -27,6 +27,7 @@ import org.apache.fulcrum.security.torqu > import org.apache.fulcrum.security.torque.om.TorqueDynamicRolePermission; > import org.apache.fulcrum.security.torque.om.TorqueDynamicRolePermissionPeer; > import > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity; > +import org.apache.fulcrum.security.util.DataBackendException; > import org.apache.fulcrum.security.util.RoleSet; > import org.apache.torque.TorqueException; > import org.apache.torque.criteria.Criteria; > @@ -139,7 +140,7 @@ public abstract class TorqueAbstractDyna > > @Override > public void retrieveAttachedObjects( Connection con ) > - throws TorqueException > + throws DataBackendException > { > retrieveAttachedObjects( con, false ); > } > @@ -149,15 +150,19 @@ public abstract class TorqueAbstractDyna > */ > @Override > public void retrieveAttachedObjects( Connection con, Boolean lazy ) > - throws TorqueException > + throws DataBackendException > { > this.roleSet = new RoleSet(); > > - List<TorqueDynamicRolePermission> rolepermissions = > getTorqueDynamicRolePermissionsJoinTorqueDynamicRole(new Criteria(), con); > - > - for (TorqueDynamicRolePermission tdrp : rolepermissions) > - { > - roleSet.add(tdrp.getTorqueDynamicRole()); > + try { > + List<TorqueDynamicRolePermission> rolepermissions = > getTorqueDynamicRolePermissionsJoinTorqueDynamicRole(new Criteria(), con); > + > + for (TorqueDynamicRolePermission tdrp : rolepermissions) > + { > + roleSet.add(tdrp.getTorqueDynamicRole()); > + } > + } catch (TorqueException e ) { > + throw new DataBackendException( e.getMessage(),e ); > } > } > > > Modified: > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicRole.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicRole.java?rev=1851024&r1=1851023&r2=1851024&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicRole.java > (original) > +++ > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicRole.java > Fri Jan 11 10:09:52 2019 > @@ -31,6 +31,7 @@ import org.apache.fulcrum.security.torqu > import org.apache.fulcrum.security.torque.om.TorqueDynamicRolePermission; > import org.apache.fulcrum.security.torque.om.TorqueDynamicRolePermissionPeer; > import > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity; > +import org.apache.fulcrum.security.util.DataBackendException; > import org.apache.fulcrum.security.util.GroupSet; > import org.apache.fulcrum.security.util.PermissionSet; > import org.apache.torque.TorqueException; > @@ -232,7 +233,7 @@ public abstract class TorqueAbstractDyna > > @Override > public void retrieveAttachedObjects( Connection con ) > - throws TorqueException > + throws DataBackendException > { > retrieveAttachedObjects( con, false ); > } > @@ -242,24 +243,28 @@ public abstract class TorqueAbstractDyna > */ > @Override > public void retrieveAttachedObjects( Connection con, Boolean lazy ) > - throws TorqueException > + throws DataBackendException > { > this.permissionSet = new PermissionSet(); > - > - List<TorqueDynamicRolePermission> rolepermissions = > getTorqueDynamicRolePermissionsJoinTorqueDynamicPermission(new Criteria(), > con); > - > - for (TorqueDynamicRolePermission tdrp : rolepermissions) > - { > - permissionSet.add(tdrp.getTorqueDynamicPermission()); > - } > - > - this.groupSet = new GroupSet(); > - > - List<TorqueDynamicGroupRole> grouproles = > getTorqueDynamicGroupRolesJoinTorqueDynamicGroup(new Criteria(), con); > - > - for (TorqueDynamicGroupRole tdgr : grouproles) > - { > - groupSet.add(tdgr.getTorqueDynamicGroup()); > + > + try { > + List<TorqueDynamicRolePermission> rolepermissions = > getTorqueDynamicRolePermissionsJoinTorqueDynamicPermission(new Criteria(), > con); > + > + for (TorqueDynamicRolePermission tdrp : rolepermissions) > + { > + permissionSet.add(tdrp.getTorqueDynamicPermission()); > + } > + > + this.groupSet = new GroupSet(); > + > + List<TorqueDynamicGroupRole> grouproles = > getTorqueDynamicGroupRolesJoinTorqueDynamicGroup(new Criteria(), con); > + > + for (TorqueDynamicGroupRole tdgr : grouproles) > + { > + groupSet.add(tdgr.getTorqueDynamicGroup()); > + } > + } catch (TorqueException e ) { > + throw new DataBackendException( e.getMessage(),e ); > } > } > > > Modified: > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicUser.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicUser.java?rev=1851024&r1=1851023&r2=1851024&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicUser.java > (original) > +++ > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueAbstractDynamicUser.java > Fri Jan 11 10:09:52 2019 > @@ -1,361 +1,369 @@ > -package org.apache.fulcrum.security.torque.dynamic; > - > -/* > - * 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. > - */ > -import java.sql.Connection; > -import java.util.List; > -import java.util.Set; > - > -import org.apache.fulcrum.security.entity.Group; > -import org.apache.fulcrum.security.entity.User; > -import org.apache.fulcrum.security.model.dynamic.entity.DynamicUser; > -import org.apache.fulcrum.security.torque.om.TorqueDynamicUserDelegates; > -import org.apache.fulcrum.security.torque.om.TorqueDynamicUserDelegatesPeer; > -import org.apache.fulcrum.security.torque.om.TorqueDynamicUserGroup; > -import org.apache.fulcrum.security.torque.om.TorqueDynamicUserGroupPeer; > -import org.apache.fulcrum.security.torque.om.TorqueDynamicUserPeer; > -import > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity; > -import org.apache.fulcrum.security.util.GroupSet; > -import org.apache.fulcrum.security.util.UserSet; > -import org.apache.torque.TorqueException; > -import org.apache.torque.criteria.Criteria; > -import org.apache.torque.om.SimpleKey; > - > -/** > - * This abstract class provides the SecurityInterface to the managers. > - * > - * @author <a href="mailto:[email protected]">Thomas Vandahl</a> > - * @version $Id:$ > - */ > -public abstract class TorqueAbstractDynamicUser extends > TorqueAbstractSecurityEntity implements DynamicUser { > - /** Serial version */ > - private static final long serialVersionUID = -7307211992287876455L; > - > - /** a cache of group objects */ > - private Set<Group> groupSet = null; > - > - /** a cache of delegator (user) objects */ > - private Set<User> delegators = null; > - > - /** a cache of delegatee(user) objects */ > - private Set<User> delegatees = null; > - > - /** > - * Forward reference to generated code > - * > - * Get a list of association objects, pre-populated with their > - * TorqueDynamicGroup objects. > - * > - * @param criteria Criteria to define the selection of records > - * @param con a database connection > - * @throws TorqueException if any database error occurs > - * > - * @return a list of User/Group relations > - */ > - protected List<TorqueDynamicUserGroup> > getTorqueDynamicUserGroupsJoinTorqueDynamicGroup(Criteria criteria, > - Connection con) throws TorqueException { > - criteria.and(TorqueDynamicUserGroupPeer.USER_ID, getEntityId()); > - return > TorqueDynamicUserGroupPeer.doSelectJoinTorqueDynamicGroup(criteria, con); > - } > - > - /** > - * Forward reference to generated code > - * > - * Get a list of delegator association objects, pre-populated with their > - * TorqueDynamicUserDelegates objects. > - * > - * @param criteria Criteria to define the selection of records > - * @param con a database connection > - * @throws TorqueException if any database error occurs > - * > - * @return a list of User/Delegator relations > - */ > - protected List<TorqueDynamicUserDelegates> > getTorqueDynamicUserDelegatessRelatedByDelegateeUserIdJoinTorqueDynamicUserRelatedByDelegatorUserId( > - Criteria criteria, Connection con) throws > TorqueException { > - criteria.and(TorqueDynamicUserDelegatesPeer.DELEGATEE_USER_ID, > getEntityId()); > - return > TorqueDynamicUserDelegatesPeer.doSelectJoinTorqueDynamicUserRelatedByDelegatorUserId(criteria, > con); > - } > - > - /** > - * Forward reference to generated code > - * > - * Get a list of delegatee association objects, pre-populated with their > - * TorqueDynamicUserDelegates objects. > - * > - * @param criteria Criteria to define the selection of records > - * @param con a database connection > - * @throws TorqueException if any database error occurs > - * > - * @return a list of User/Delegator relations > - */ > - protected List<TorqueDynamicUserDelegates> > getTorqueDynamicUserDelegatessRelatedByDelegatorUserIdJoinTorqueDynamicUserRelatedByDelegateeUserId( > - Criteria criteria, Connection con) throws > TorqueException { > - criteria.and(TorqueDynamicUserDelegatesPeer.DELEGATOR_USER_ID, > getEntityId()); > - return > TorqueDynamicUserDelegatesPeer.doSelectJoinTorqueDynamicUserRelatedByDelegateeUserId(criteria, > con); > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.model.basic.entity.BasicUser#addGroup(org.apache. > - * fulcrum.security.entity.Group) > - */ > - public void addGroup(Group group) { > - getGroups().add(group); > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > org.apache.fulcrum.security.model.basic.entity.BasicUser#getGroups() > - */ > - public GroupSet getGroups() { > - if (groupSet == null) { > - groupSet = new GroupSet(); > - } else if (!(groupSet instanceof GroupSet)) { > - groupSet = new GroupSet(groupSet); > - } > - > - return (GroupSet) groupSet; > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.model.basic.entity.BasicUser#getGroupsAsSet() > - */ > - @SuppressWarnings("unchecked") > - public <T extends Group> Set<T> getGroupsAsSet() { > - return (Set<T>) groupSet; > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.model.basic.entity.BasicUser#removeGroup(org. > - * apache.fulcrum.security.entity.Group) > - */ > - public void removeGroup(Group group) { > - getGroups().remove(group); > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.model.basic.entity.BasicUser#setGroups(org.apache > - * .fulcrum.security.util.GroupSet) > - */ > - public void setGroups(GroupSet groups) { > - if (groups != null) { > - this.groupSet = groups; > - } else { > - this.groupSet = new GroupSet(); > - } > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.model.basic.entity.BasicUser#setGroupsAsSet(java. > - * util.Set) > - */ > - public <T extends Group> void setGroupsAsSet(Set<T> groups) { > - setGroups(new GroupSet(groups)); > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.model.dynamic.entity.DynamicUser#getDelegatees() > - */ > - @SuppressWarnings("unchecked") > - public <T extends User> Set<T> getDelegatees() { > - if (delegatees == null) { > - delegatees = new UserSet<T>(); > - } > - > - return (Set<T>) delegatees; > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.model.dynamic.entity.DynamicUser#getDelegators() > - */ > - @SuppressWarnings("unchecked") > - public <T extends User> Set<T> getDelegators() { > - if (delegators == null) { > - delegators = new UserSet<T>(); > - } > - > - return (Set<T>) delegators; > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.model.dynamic.entity.DynamicUser#setDelegatees( > - * java.util.Set) > - */ > - public <T extends User> void setDelegatees(Set<T> delegatees) { > - if (delegatees != null) { > - this.delegatees = new UserSet<T>(delegatees); > - } else { > - this.delegatees = new UserSet<T>(); > - } > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.model.dynamic.entity.DynamicUser#setDelegators( > - * java.util.Set) > - */ > - public <T extends User> void setDelegators(Set<T> delegates) { > - if (delegators != null) { > - this.delegators = new UserSet<T>(delegates); > - } else { > - this.delegators = new UserSet<T>(); > - } > - } > - > - /** > - * @return the database name > - */ > - public String getDatabaseName() { > - return TorqueDynamicUserPeer.DATABASE_NAME; > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity# > - * retrieveAttachedObjects(java.sql.Connection) > - */ > - @Override > - public void retrieveAttachedObjects(Connection con) throws > TorqueException { > - retrieveAttachedObjects(con, false); > - } > - > - /** > - * @see > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity#retrieveAttachedObjects(Connection, > - * Boolean) > - */ > - @Override > - public void retrieveAttachedObjects(Connection con, Boolean lazy) > throws TorqueException { > - this.groupSet = new GroupSet(); > - > - List<TorqueDynamicUserGroup> usergroups = > getTorqueDynamicUserGroupsJoinTorqueDynamicGroup(new Criteria(), con); > - > - for (TorqueDynamicUserGroup tdug : usergroups) { > - groupSet.add(tdug.getTorqueDynamicGroup()); > - } > - > - this.delegators = new UserSet<User>(); > - > - List<TorqueDynamicUserDelegates> delegatorlist = > getTorqueDynamicUserDelegatessRelatedByDelegateeUserIdJoinTorqueDynamicUserRelatedByDelegatorUserId( > - new Criteria(), con); > - > - for (TorqueDynamicUserDelegates tdud : delegatorlist) { > - > delegators.add(tdud.getTorqueDynamicUserRelatedByDelegatorUserId()); > - } > - > - this.delegatees = new UserSet<User>(); > - > - List<TorqueDynamicUserDelegates> delegateelist = > getTorqueDynamicUserDelegatessRelatedByDelegatorUserIdJoinTorqueDynamicUserRelatedByDelegateeUserId( > - new Criteria(), con); > - > - for (TorqueDynamicUserDelegates tdud : delegateelist) { > - > delegatees.add(tdud.getTorqueDynamicUserRelatedByDelegateeUserId()); > - } > - } > - > - /** > - * @see > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity#update(java.sql.Connection) > - */ > - public void update(Connection con) throws TorqueException { > - if (groupSet != null) { > - Criteria criteria = new Criteria(); > - > - /* remove old entries */ > - criteria.where(TorqueDynamicUserGroupPeer.USER_ID, > getEntityId()); > - TorqueDynamicUserGroupPeer.doDelete(criteria, con); > - > - for (Group g : groupSet) { > - TorqueDynamicUserGroup ug = new > TorqueDynamicUserGroup(); > - ug.setUserId(getEntityId()); > - ug.setGroupId((Integer) g.getId()); > - ug.save(con); > - } > - } > - > - if (delegators != null) { > - Criteria criteria = new Criteria(); > - > - /* remove old entries */ > - > criteria.where(TorqueDynamicUserDelegatesPeer.DELEGATEE_USER_ID, > getEntityId()); > - TorqueDynamicUserDelegatesPeer.doDelete(criteria, con); > - > - for (User u : delegators) { > - TorqueDynamicUserDelegates ud = new > TorqueDynamicUserDelegates(); > - ud.setDelegateeUserId(getEntityId()); > - ud.setDelegatorUserId((Integer) u.getId()); > - ud.save(con); > - } > - } > - > - if (delegatees != null) { > - Criteria criteria = new Criteria(); > - > - /* remove old entries */ > - > criteria.where(TorqueDynamicUserDelegatesPeer.DELEGATOR_USER_ID, > getEntityId()); > - TorqueDynamicUserDelegatesPeer.doDelete(criteria, con); > - > - for (User u : delegatees) { > - TorqueDynamicUserDelegates ud = new > TorqueDynamicUserDelegates(); > - ud.setDelegatorUserId(getEntityId()); > - ud.setDelegateeUserId((Integer) u.getId()); > - ud.save(con); > - } > - } > - > - try { > - save(con); > - } catch (Exception e) { > - throw new TorqueException(e); > - } > - } > - > - /** > - * @see > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity#delete() > - */ > - public void delete() throws TorqueException { > - TorqueDynamicUserPeer.doDelete(SimpleKey.keyFor(getEntityId())); > - } > -} > +package org.apache.fulcrum.security.torque.dynamic; > + > +/* > + * 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. > + */ > +import java.sql.Connection; > +import java.util.List; > +import java.util.Set; > + > +import org.apache.fulcrum.security.entity.Group; > +import org.apache.fulcrum.security.entity.User; > +import org.apache.fulcrum.security.model.dynamic.entity.DynamicUser; > +import org.apache.fulcrum.security.torque.om.TorqueDynamicUserDelegates; > +import org.apache.fulcrum.security.torque.om.TorqueDynamicUserDelegatesPeer; > +import org.apache.fulcrum.security.torque.om.TorqueDynamicUserGroup; > +import org.apache.fulcrum.security.torque.om.TorqueDynamicUserGroupPeer; > +import org.apache.fulcrum.security.torque.om.TorqueDynamicUserPeer; > +import > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity; > +import org.apache.fulcrum.security.util.DataBackendException; > +import org.apache.fulcrum.security.util.GroupSet; > +import org.apache.fulcrum.security.util.UserSet; > +import org.apache.torque.TorqueException; > +import org.apache.torque.criteria.Criteria; > +import org.apache.torque.om.SimpleKey; > + > +/** > + * This abstract class provides the SecurityInterface to the managers. > + * > + * @author <a href="mailto:[email protected]">Thomas Vandahl</a> > + * @version $Id:$ > + */ > +public abstract class TorqueAbstractDynamicUser extends > TorqueAbstractSecurityEntity implements DynamicUser { > + /** Serial version */ > + private static final long serialVersionUID = -7307211992287876455L; > + > + /** a cache of group objects */ > + private Set<Group> groupSet = null; > + > + /** a cache of delegator (user) objects */ > + private Set<User> delegators = null; > + > + /** a cache of delegatee(user) objects */ > + private Set<User> delegatees = null; > + > + /** > + * Forward reference to generated code > + * > + * Get a list of association objects, pre-populated with their > + * TorqueDynamicGroup objects. > + * > + * @param criteria Criteria to define the selection of records > + * @param con a database connection > + * @throws TorqueException if any database error occurs > + * > + * @return a list of User/Group relations > + */ > + protected List<TorqueDynamicUserGroup> > getTorqueDynamicUserGroupsJoinTorqueDynamicGroup(Criteria criteria, > + Connection con) throws TorqueException { > + criteria.and(TorqueDynamicUserGroupPeer.USER_ID, getEntityId()); > + return > TorqueDynamicUserGroupPeer.doSelectJoinTorqueDynamicGroup(criteria, con); > + } > + > + /** > + * Forward reference to generated code > + * > + * Get a list of delegator association objects, pre-populated with their > + * TorqueDynamicUserDelegates objects. > + * > + * @param criteria Criteria to define the selection of records > + * @param con a database connection > + * @throws TorqueException if any database error occurs > + * > + * @return a list of User/Delegator relations > + */ > + protected List<TorqueDynamicUserDelegates> > getTorqueDynamicUserDelegatessRelatedByDelegateeUserIdJoinTorqueDynamicUserRelatedByDelegatorUserId( > + Criteria criteria, Connection con) throws TorqueException { > + criteria.and(TorqueDynamicUserDelegatesPeer.DELEGATEE_USER_ID, > getEntityId()); > + return > TorqueDynamicUserDelegatesPeer.doSelectJoinTorqueDynamicUserRelatedByDelegatorUserId(criteria, > con); > + } > + > + /** > + * Forward reference to generated code > + * > + * Get a list of delegatee association objects, pre-populated with their > + * TorqueDynamicUserDelegates objects. > + * > + * @param criteria Criteria to define the selection of records > + * @param con a database connection > + * @throws TorqueException if any database error occurs > + * > + * @return a list of User/Delegator relations > + */ > + protected List<TorqueDynamicUserDelegates> > getTorqueDynamicUserDelegatessRelatedByDelegatorUserIdJoinTorqueDynamicUserRelatedByDelegateeUserId( > + Criteria criteria, Connection con) throws TorqueException { > + criteria.and(TorqueDynamicUserDelegatesPeer.DELEGATOR_USER_ID, > getEntityId()); > + return > TorqueDynamicUserDelegatesPeer.doSelectJoinTorqueDynamicUserRelatedByDelegateeUserId(criteria, > con); > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.model.basic.entity.BasicUser#addGroup(org.apache. > + * fulcrum.security.entity.Group) > + */ > + public void addGroup(Group group) { > + getGroups().add(group); > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > org.apache.fulcrum.security.model.basic.entity.BasicUser#getGroups() > + */ > + public GroupSet getGroups() { > + if (groupSet == null) { > + groupSet = new GroupSet(); > + } else if (!(groupSet instanceof GroupSet)) { > + groupSet = new GroupSet(groupSet); > + } > + > + return (GroupSet) groupSet; > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.model.basic.entity.BasicUser#getGroupsAsSet() > + */ > + @SuppressWarnings("unchecked") > + public <T extends Group> Set<T> getGroupsAsSet() { > + return (Set<T>) groupSet; > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.model.basic.entity.BasicUser#removeGroup(org. > + * apache.fulcrum.security.entity.Group) > + */ > + public void removeGroup(Group group) { > + getGroups().remove(group); > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.model.basic.entity.BasicUser#setGroups(org.apache > + * .fulcrum.security.util.GroupSet) > + */ > + public void setGroups(GroupSet groups) { > + if (groups != null) { > + this.groupSet = groups; > + } else { > + this.groupSet = new GroupSet(); > + } > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.model.basic.entity.BasicUser#setGroupsAsSet(java. > + * util.Set) > + */ > + public <T extends Group> void setGroupsAsSet(Set<T> groups) { > + setGroups(new GroupSet(groups)); > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.model.dynamic.entity.DynamicUser#getDelegatees() > + */ > + @SuppressWarnings("unchecked") > + public <T extends User> Set<T> getDelegatees() { > + if (delegatees == null) { > + delegatees = new UserSet<T>(); > + } > + > + return (Set<T>) delegatees; > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.model.dynamic.entity.DynamicUser#getDelegators() > + */ > + @SuppressWarnings("unchecked") > + public <T extends User> Set<T> getDelegators() { > + if (delegators == null) { > + delegators = new UserSet<T>(); > + } > + > + return (Set<T>) delegators; > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.model.dynamic.entity.DynamicUser#setDelegatees( > + * java.util.Set) > + */ > + public <T extends User> void setDelegatees(Set<T> delegatees) { > + if (delegatees != null) { > + this.delegatees = new UserSet<T>(delegatees); > + } else { > + this.delegatees = new UserSet<T>(); > + } > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.model.dynamic.entity.DynamicUser#setDelegators( > + * java.util.Set) > + */ > + public <T extends User> void setDelegators(Set<T> delegates) { > + if (delegators != null) { > + this.delegators = new UserSet<T>(delegates); > + } else { > + this.delegators = new UserSet<T>(); > + } > + } > + > + /** > + * @return the database name > + */ > + public String getDatabaseName() { > + return TorqueDynamicUserPeer.DATABASE_NAME; > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity# > + * retrieveAttachedObjects(java.sql.Connection) > + */ > + @Override > + public void retrieveAttachedObjects(Connection con) throws > DataBackendException { > + retrieveAttachedObjects(con, false); > + } > + > + /** > + * @see > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity#retrieveAttachedObjects(Connection, > + * Boolean) > + */ > + @Override > + public void retrieveAttachedObjects(Connection con, Boolean lazy) throws > DataBackendException { > + > + this.groupSet = new GroupSet(); > + > + try { > + > + List<TorqueDynamicUserGroup> usergroups = > getTorqueDynamicUserGroupsJoinTorqueDynamicGroup(new Criteria(), con); > + > + for (TorqueDynamicUserGroup tdug : usergroups) { > + groupSet.add(tdug.getTorqueDynamicGroup()); > + } > + > + this.delegators = new UserSet<User>(); > + > + List<TorqueDynamicUserDelegates> delegatorlist = > getTorqueDynamicUserDelegatessRelatedByDelegateeUserIdJoinTorqueDynamicUserRelatedByDelegatorUserId( > + new Criteria(), con); > + > + for (TorqueDynamicUserDelegates tdud : delegatorlist) { > + > delegators.add(tdud.getTorqueDynamicUserRelatedByDelegatorUserId()); > + } > + > + this.delegatees = new UserSet<User>(); > + > + List<TorqueDynamicUserDelegates> delegateelist = > getTorqueDynamicUserDelegatessRelatedByDelegatorUserIdJoinTorqueDynamicUserRelatedByDelegateeUserId( > + new Criteria(), con); > + > + for (TorqueDynamicUserDelegates tdud : delegateelist) { > + > delegatees.add(tdud.getTorqueDynamicUserRelatedByDelegateeUserId()); > + } > + > + } catch (TorqueException e ) { > + throw new DataBackendException( e.getMessage(),e ); > + } > + } > + > + /** > + * @see > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity#update(java.sql.Connection) > + */ > + public void update(Connection con) throws TorqueException { > + if (groupSet != null) { > + Criteria criteria = new Criteria(); > + > + /* remove old entries */ > + criteria.where(TorqueDynamicUserGroupPeer.USER_ID, > getEntityId()); > + TorqueDynamicUserGroupPeer.doDelete(criteria, con); > + > + for (Group g : groupSet) { > + TorqueDynamicUserGroup ug = new TorqueDynamicUserGroup(); > + ug.setUserId(getEntityId()); > + ug.setGroupId((Integer) g.getId()); > + ug.save(con); > + } > + } > + > + if (delegators != null) { > + Criteria criteria = new Criteria(); > + > + /* remove old entries */ > + criteria.where(TorqueDynamicUserDelegatesPeer.DELEGATEE_USER_ID, > getEntityId()); > + TorqueDynamicUserDelegatesPeer.doDelete(criteria, con); > + > + for (User u : delegators) { > + TorqueDynamicUserDelegates ud = new > TorqueDynamicUserDelegates(); > + ud.setDelegateeUserId(getEntityId()); > + ud.setDelegatorUserId((Integer) u.getId()); > + ud.save(con); > + } > + } > + > + if (delegatees != null) { > + Criteria criteria = new Criteria(); > + > + /* remove old entries */ > + criteria.where(TorqueDynamicUserDelegatesPeer.DELEGATOR_USER_ID, > getEntityId()); > + TorqueDynamicUserDelegatesPeer.doDelete(criteria, con); > + > + for (User u : delegatees) { > + TorqueDynamicUserDelegates ud = new > TorqueDynamicUserDelegates(); > + ud.setDelegatorUserId(getEntityId()); > + ud.setDelegateeUserId((Integer) u.getId()); > + ud.save(con); > + } > + } > + > + try { > + save(con); > + } catch (Exception e) { > + throw new TorqueException(e); > + } > + } > + > + /** > + * @see > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity#delete() > + */ > + public void delete() throws TorqueException { > + TorqueDynamicUserPeer.doDelete(SimpleKey.keyFor(getEntityId())); > + } > +} > > Modified: > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/security/TorqueAbstractSecurityEntity.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/security/TorqueAbstractSecurityEntity.java?rev=1851024&r1=1851023&r2=1851024&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/security/TorqueAbstractSecurityEntity.java > (original) > +++ > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/security/TorqueAbstractSecurityEntity.java > Fri Jan 11 10:09:52 2019 > @@ -21,6 +21,7 @@ import java.io.Serializable; > import java.sql.Connection; > > import org.apache.fulcrum.security.entity.SecurityEntity; > +import org.apache.fulcrum.security.util.DataBackendException; > import org.apache.torque.TorqueException; > import org.apache.torque.om.Persistent; > /** > @@ -71,16 +72,16 @@ public abstract class TorqueAbstractSecu > * @param lazy if <code>true</code>, may load some or all relationships > later > * @throws TorqueException database not found exception > */ > - public abstract void retrieveAttachedObjects(Connection con, Boolean > lazy) throws TorqueException; > + public abstract void retrieveAttachedObjects(Connection con, Boolean > lazy) throws DataBackendException; > > > /** > * old contract, lazy is set to <code>false</code>. > * > * @param con A database connection > - * @throws TorqueException database not found exception > + * @throws DataBackendException wrapper exception: user information not > found exception > */ > - public abstract void retrieveAttachedObjects(Connection con) throws > TorqueException; > + public abstract void retrieveAttachedObjects(Connection con) throws > DataBackendException; > > /** > * Update this instance to the database with all dependent objects > > Modified: > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/security/turbine/TorqueAbstractTurbineTurbineSecurityEntityDefault.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/security/turbine/TorqueAbstractTurbineTurbineSecurityEntityDefault.java?rev=1851024&r1=1851023&r2=1851024&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/security/turbine/TorqueAbstractTurbineTurbineSecurityEntityDefault.java > (original) > +++ > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/security/turbine/TorqueAbstractTurbineTurbineSecurityEntityDefault.java > Fri Jan 11 10:09:52 2019 > @@ -23,6 +23,7 @@ import java.util.List; > import org.apache.fulcrum.security.model.ACLFactory; > import > org.apache.fulcrum.security.model.turbine.entity.TurbineUserGroupRoleEntity; > import > org.apache.fulcrum.security.torque.peer.TurbineUserGroupRoleModelPeerMapper; > +import org.apache.fulcrum.security.util.DataBackendException; > import org.apache.torque.TorqueException; > > /** > @@ -47,8 +48,8 @@ public abstract class TorqueAbstractTurb > * @param con A database connection > * @param lazy if <code>true</code>, fetches objects lazily > * @param ugrs The custom TurbineUserGroupRole set > - * @throws TorqueException if data connection not found > + * @throws DataBackendException if data connection or user information > (table objects) not found > */ > - public abstract <T extends TurbineUserGroupRoleModelPeerMapper> void > retrieveAttachedObjects( Connection con, Boolean lazy, List<T> ugrs ) throws > TorqueException; > + public abstract <T extends TurbineUserGroupRoleModelPeerMapper> void > retrieveAttachedObjects( Connection con, Boolean lazy, List<T> ugrs ) throws > DataBackendException; > > } > > Modified: > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbineGroup.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbineGroup.java?rev=1851024&r1=1851023&r2=1851024&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbineGroup.java > (original) > +++ > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbineGroup.java > Fri Jan 11 10:09:52 2019 > @@ -65,7 +65,7 @@ public abstract class DefaultAbstractTur > > @Override > public void retrieveAttachedObjects( Connection con ) > - throws TorqueException > + throws DataBackendException > { > retrieveAttachedObjects( con, false ); > } > @@ -74,23 +74,26 @@ public abstract class DefaultAbstractTur > * @see > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity#retrieveAttachedObjects(java.sql.Connection, > java.lang.Boolean) > */ > @Override > - public void retrieveAttachedObjects( Connection con, Boolean lazy ) > throws TorqueException > + public void retrieveAttachedObjects( Connection con, Boolean lazy ) > throws DataBackendException > { > - if (!lazy) { > - Set<TurbineUserGroupRole> userGroupRoleSet = new > HashSet<TurbineUserGroupRole>(); > - > - List<org.apache.fulcrum.security.torque.om.TurbineUserGroupRole> > ugrs = getTurbineUserGroupRolesJoinTurbineRole(new Criteria(), con); > - > - for (org.apache.fulcrum.security.torque.om.TurbineUserGroupRole > ttugr : ugrs) > - { > - TurbineUserGroupRole ugr = new TurbineUserGroupRole(); > - ugr.setGroup(this); > - ugr.setRole(ttugr.getTurbineRole()); > - ugr.setUser(ttugr.getTurbineUser(con)); > - userGroupRoleSet.add(ugr); > + try { > + if (!lazy) { > + Set<TurbineUserGroupRole> userGroupRoleSet = new > HashSet<TurbineUserGroupRole>(); > + > + > List<org.apache.fulcrum.security.torque.om.TurbineUserGroupRole> ugrs = > getTurbineUserGroupRolesJoinTurbineRole(new Criteria(), con); > + > + for > (org.apache.fulcrum.security.torque.om.TurbineUserGroupRole ttugr : ugrs) > + { > + TurbineUserGroupRole ugr = new TurbineUserGroupRole(); > + ugr.setGroup(this); > + ugr.setRole(ttugr.getTurbineRole()); > + ugr.setUser(ttugr.getTurbineUser(con)); > + userGroupRoleSet.add(ugr); > + } > + setUserGroupRoleSet(userGroupRoleSet); > } > - > - setUserGroupRoleSet(userGroupRoleSet); > + } catch (TorqueException e ) { > + throw new DataBackendException( e.getMessage(),e ); > } > } > > > Modified: > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbinePermission.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbinePermission.java?rev=1851024&r1=1851023&r2=1851024&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbinePermission.java > (original) > +++ > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbinePermission.java > Fri Jan 11 10:09:52 2019 > @@ -27,6 +27,7 @@ import org.apache.fulcrum.security.torqu > import org.apache.fulcrum.security.torque.om.TurbineRolePermission; > import org.apache.fulcrum.security.torque.om.TurbineRolePermissionPeer; > import > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity; > +import org.apache.fulcrum.security.util.DataBackendException; > import org.apache.fulcrum.security.util.RoleSet; > import org.apache.torque.TorqueException; > import org.apache.torque.criteria.Criteria; > @@ -138,7 +139,7 @@ public abstract class DefaultAbstractTur > > @Override > public void retrieveAttachedObjects( Connection con ) > - throws TorqueException > + throws DataBackendException > { > retrieveAttachedObjects( con, false ); > } > @@ -148,15 +149,21 @@ public abstract class DefaultAbstractTur > */ > @Override > public void retrieveAttachedObjects( Connection con, Boolean lazy ) > - throws TorqueException > + throws DataBackendException > { > - this.roleSet = new RoleSet(); > - > - List<TurbineRolePermission> rolepermissions = > getTurbineRolePermissionsJoinTurbineRole(new Criteria(), con); > - > - for (TurbineRolePermission ttrp : rolepermissions) > - { > - roleSet.add(ttrp.getTurbineRole()); > + try { > + > + this.roleSet = new RoleSet(); > + > + List<TurbineRolePermission> rolepermissions = > getTurbineRolePermissionsJoinTurbineRole(new Criteria(), con); > + > + for (TurbineRolePermission ttrp : rolepermissions) > + { > + roleSet.add(ttrp.getTurbineRole()); > + } > + > + } catch (TorqueException e ) { > + throw new DataBackendException( e.getMessage(),e ); > } > } > > > Modified: > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbineRole.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbineRole.java?rev=1851024&r1=1851023&r2=1851024&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbineRole.java > (original) > +++ > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbineRole.java > Fri Jan 11 10:09:52 2019 > @@ -162,7 +162,7 @@ public abstract class DefaultAbstractTur > > @Override > public void retrieveAttachedObjects( Connection con ) > - throws TorqueException > + throws DataBackendException > { > retrieveAttachedObjects( con, false ); > } > @@ -173,33 +173,37 @@ public abstract class DefaultAbstractTur > */ > @Override > public void retrieveAttachedObjects( Connection con, Boolean lazy ) > - throws TorqueException > + throws DataBackendException > { > this.permissionSet = new PermissionSet(); > > - List<TurbineRolePermission> rolepermissions = > getTurbineRolePermissionsJoinTurbinePermission(new Criteria(), con); > - > - for (TurbineRolePermission ttrp : rolepermissions) > - { > - permissionSet.add(ttrp.getTurbinePermission()); > - } > - > - if (!lazy) { > - Set<TurbineUserGroupRole> userGroupRoleSet = new > HashSet<TurbineUserGroupRole>(); > - > - List<org.apache.fulcrum.security.torque.om.TurbineUserGroupRole> > ugrs = getTurbineUserGroupRolesJoinTurbineGroup(new Criteria(), con); > + try { > + List<TurbineRolePermission> rolepermissions = > getTurbineRolePermissionsJoinTurbinePermission(new Criteria(), con); > > - for (org.apache.fulcrum.security.torque.om.TurbineUserGroupRole > ttugr : ugrs) > + for (TurbineRolePermission ttrp : rolepermissions) > { > - TurbineUserGroupRole ugr = new TurbineUserGroupRole(); > - ugr.setRole(this); > - ugr.setGroup(ttugr.getTurbineGroup()); > - ugr.setUser(ttugr.getTurbineUser(con)); > - userGroupRoleSet.add(ugr); > + permissionSet.add(ttrp.getTurbinePermission()); > } > > - setUserGroupRoleSet(userGroupRoleSet); > + if (!lazy) { > + Set<TurbineUserGroupRole> userGroupRoleSet = new > HashSet<TurbineUserGroupRole>(); > > + > List<org.apache.fulcrum.security.torque.om.TurbineUserGroupRole> ugrs = > getTurbineUserGroupRolesJoinTurbineGroup(new Criteria(), con); > + > + for > (org.apache.fulcrum.security.torque.om.TurbineUserGroupRole ttugr : ugrs) > + { > + TurbineUserGroupRole ugr = new TurbineUserGroupRole(); > + ugr.setRole(this); > + ugr.setGroup(ttugr.getTurbineGroup()); > + ugr.setUser(ttugr.getTurbineUser(con)); > + userGroupRoleSet.add(ugr); > + } > + > + setUserGroupRoleSet(userGroupRoleSet); > + > + } > + } catch (TorqueException e ) { > + throw new DataBackendException( e.getMessage(),e ); > } > } > > > Modified: > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbineUser.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbineUser.java?rev=1851024&r1=1851023&r2=1851024&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbineUser.java > (original) > +++ > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/DefaultAbstractTurbineUser.java > Fri Jan 11 10:09:52 2019 > @@ -28,8 +28,8 @@ import org.apache.fulcrum.security.model > import org.apache.fulcrum.security.torque.om.TurbineUserGroupRolePeer; > import org.apache.fulcrum.security.torque.om.TurbineUserPeer; > import > org.apache.fulcrum.security.torque.peer.TurbineUserGroupRoleModelPeerMapper; > -import > org.apache.fulcrum.security.torque.security.turbine.TorqueAbstractTurbineTurbineSecurityEntity; > import > org.apache.fulcrum.security.torque.security.turbine.TorqueAbstractTurbineTurbineSecurityEntityDefault; > +import org.apache.fulcrum.security.util.DataBackendException; > import org.apache.torque.TorqueException; > import org.apache.torque.criteria.Criteria; > import org.apache.torque.om.SimpleKey; > @@ -55,27 +55,31 @@ public abstract class DefaultAbstractTur > * > * Does intentionally not initialize the cache collTurbineUserGroupRoles > for referenced objects. > * > - * Be careful not call any of the generated getTurbineUserGroupRoles > methods in derived classes, > + * Be careful not to call any of the generated getTurbineUserGroupRoles > methods in derived classes, > * the link {@link #save()} method otherwise might not update the right > relationships. > * > * @param criteria Criteria to define the selection of records > * @param con a database connection > - * @throws TorqueException if any database error occurs > + * @throws DataBackendException if any database error occurs > * > * @return a list of User/Group/Role relations > */ > protected <T extends TurbineUserGroupRoleModelPeerMapper> List<T> > getTurbineUserGroupRolesJoinTurbineRole(Criteria criteria, Connection con) > - throws TorqueException > + throws DataBackendException > { > criteria.and(TurbineUserGroupRolePeer.USER_ID, getEntityId() ); > - return (List<T>) > TurbineUserGroupRolePeer.doSelectJoinTurbineRole(criteria, con); > + try { > + return (List<T>) > TurbineUserGroupRolePeer.doSelectJoinTurbineRole(criteria, con); > + } catch ( TorqueException e) { > + throw new DataBackendException( e.getMessage(), e ); > + } > } > > /* (non-Javadoc) > * @see > org.apache.fulcrum.security.torque.security.turbine.TorqueAbstractTurbineTurbineSecurityEntityDefault#retrieveAttachedObjects(java.sql.Connection, > java.lang.Boolean, java.util.List) > */ > @Override > - public <T extends TurbineUserGroupRoleModelPeerMapper> void > retrieveAttachedObjects( Connection con, Boolean lazy, List<T> ugrs ) throws > TorqueException > + public <T extends TurbineUserGroupRoleModelPeerMapper> void > retrieveAttachedObjects( Connection con, Boolean lazy, List<T> ugrs ) throws > DataBackendException > { > if (!lazy ) { // !lazy > Set<TurbineUserGroupRole> userGroupRoleSet = new > HashSet<TurbineUserGroupRole>(); > @@ -94,7 +98,7 @@ public abstract class DefaultAbstractTur > * @see > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity#retrieveAttachedObjects(java.sql.Connection, > java.lang.Boolean) > */ > @Override > - public void retrieveAttachedObjects( Connection con, Boolean lazy ) > throws TorqueException > + public void retrieveAttachedObjects( Connection con, Boolean lazy ) > throws DataBackendException > { > if (!lazy) { > Set<TurbineUserGroupRole> userGroupRoleSet = new > HashSet<TurbineUserGroupRole>(); > @@ -113,7 +117,7 @@ public abstract class DefaultAbstractTur > */ > @Override > public void retrieveAttachedObjects( Connection con ) > - throws TorqueException > + throws DataBackendException > { > retrieveAttachedObjects( con, false ); //false > } > @@ -169,19 +173,23 @@ public abstract class DefaultAbstractTur > */ > private <T extends TurbineUserGroupRoleModelPeerMapper> void maptoModel( > Connection con, Set<TurbineUserGroupRole> userGroupRoleSet, > List<T> ugrs ) > - throws TorqueException > + throws DataBackendException > { > - for (TurbineUserGroupRoleModelPeerMapper ttugr : ugrs) > - { > - TurbineUserGroupRole ugr = new TurbineUserGroupRole(); > - ugr.setUser((User) this); > - ugr.setRole(ttugr.getTurbineRole(con)); > - > - // org.apache.fulcrum.security.torque.om.TurbineGroup implements > - // org.apache.fulcrum.security.model.turbine.entity.TurbineGroup > - // but may be hides it? > - ugr.setGroup(ttugr.getTurbineGroup(con)); > - userGroupRoleSet.add(ugr); > + try { > + for (TurbineUserGroupRoleModelPeerMapper ttugr : ugrs) > + { > + TurbineUserGroupRole ugr = new TurbineUserGroupRole(); > + ugr.setUser((User) this); > + ugr.setRole(ttugr.getTurbineRole(con)); > + > + // org.apache.fulcrum.security.torque.om.TurbineGroup > implements > + // > org.apache.fulcrum.security.model.turbine.entity.TurbineGroup > + // but may be hides it? > + ugr.setGroup(ttugr.getTurbineGroup(con)); > + userGroupRoleSet.add(ugr); > + } > + } catch (TorqueException e ) { > + throw new DataBackendException( e.getMessage(),e ); > } > } > } > > Modified: > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/FulcrumAbstractTurbineGroup.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/FulcrumAbstractTurbineGroup.java?rev=1851024&r1=1851023&r2=1851024&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/FulcrumAbstractTurbineGroup.java > (original) > +++ > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/FulcrumAbstractTurbineGroup.java > Fri Jan 11 10:09:52 2019 > @@ -66,7 +66,7 @@ public abstract class FulcrumAbstractTur > > @Override > public void retrieveAttachedObjects( Connection con ) > - throws TorqueException > + throws DataBackendException > { > retrieveAttachedObjects( con, false ); > } > @@ -75,22 +75,26 @@ public abstract class FulcrumAbstractTur > * @see > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity#retrieveAttachedObjects(Connection, > Boolean) > */ > @Override > - public void retrieveAttachedObjects( Connection con, Boolean lazy ) > throws TorqueException > + public void retrieveAttachedObjects( Connection con, Boolean lazy ) > throws DataBackendException > { > - if (!lazy) { > - Set<TurbineUserGroupRole> userGroupRoleSet = new > HashSet<TurbineUserGroupRole>(); > - List<TorqueTurbineUserGroupRole> ugrs = > getTorqueTurbineUserGroupRolesJoinTorqueTurbineRole(new Criteria(), con); > - > - for (TorqueTurbineUserGroupRole ttugr : ugrs) > - { > - TurbineUserGroupRole ugr = new TurbineUserGroupRole(); > - ugr.setGroup(this); > - ugr.setRole(ttugr.getTorqueTurbineRole()); > - ugr.setUser(ttugr.getTorqueTurbineUser(con)); > - userGroupRoleSet.add(ugr); > + try { > + if (!lazy) { > + Set<TurbineUserGroupRole> userGroupRoleSet = new > HashSet<TurbineUserGroupRole>(); > + List<TorqueTurbineUserGroupRole> ugrs = > getTorqueTurbineUserGroupRolesJoinTorqueTurbineRole(new Criteria(), con); > + > + for (TorqueTurbineUserGroupRole ttugr : ugrs) > + { > + TurbineUserGroupRole ugr = new TurbineUserGroupRole(); > + ugr.setGroup(this); > + ugr.setRole(ttugr.getTorqueTurbineRole()); > + ugr.setUser(ttugr.getTorqueTurbineUser(con)); > + userGroupRoleSet.add(ugr); > + } > + > + setUserGroupRoleSet(userGroupRoleSet); > } > - > - setUserGroupRoleSet(userGroupRoleSet); > + } catch (TorqueException e ) { > + throw new DataBackendException( e.getMessage(),e ); > } > } > > > Modified: > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/FulcrumAbstractTurbinePermission.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/FulcrumAbstractTurbinePermission.java?rev=1851024&r1=1851023&r2=1851024&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/FulcrumAbstractTurbinePermission.java > (original) > +++ > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/FulcrumAbstractTurbinePermission.java > Fri Jan 11 10:09:52 2019 > @@ -27,6 +27,7 @@ import org.apache.fulcrum.security.torqu > import org.apache.fulcrum.security.torque.om.TorqueTurbineRolePermission; > import org.apache.fulcrum.security.torque.om.TorqueTurbineRolePermissionPeer; > import > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity; > +import org.apache.fulcrum.security.util.DataBackendException; > import org.apache.fulcrum.security.util.RoleSet; > import org.apache.torque.TorqueException; > import org.apache.torque.criteria.Criteria; > @@ -143,7 +144,7 @@ public abstract class FulcrumAbstractTur > */ > @Override > public void retrieveAttachedObjects( Connection con ) > - throws TorqueException > + throws DataBackendException > { > retrieveAttachedObjects( con, false ); > } > @@ -153,15 +154,19 @@ public abstract class FulcrumAbstractTur > */ > @Override > public void retrieveAttachedObjects( Connection con, Boolean lazy ) > - throws TorqueException > + throws DataBackendException > { > this.roleSet = new RoleSet(); > > - List<TorqueTurbineRolePermission> rolepermissions = > getTorqueTurbineRolePermissionsJoinTorqueTurbineRole(new Criteria(), con); > - > - for (TorqueTurbineRolePermission ttrp : rolepermissions) > - { > - roleSet.add(ttrp.getTorqueTurbineRole()); > + try { > + List<TorqueTurbineRolePermission> rolepermissions = > getTorqueTurbineRolePermissionsJoinTorqueTurbineRole(new Criteria(), con); > + > + for (TorqueTurbineRolePermission ttrp : rolepermissions) > + { > + roleSet.add(ttrp.getTorqueTurbineRole()); > + } > + } catch (TorqueException e ) { > + throw new DataBackendException( e.getMessage(),e ); > } > } > > > Modified: > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/FulcrumAbstractTurbineRole.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/FulcrumAbstractTurbineRole.java?rev=1851024&r1=1851023&r2=1851024&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/FulcrumAbstractTurbineRole.java > (original) > +++ > turbine/fulcrum/trunk/security/torque/src/java/org/apache/fulcrum/security/torque/turbine/FulcrumAbstractTurbineRole.java > Fri Jan 11 10:09:52 2019 > @@ -1,310 +1,314 @@ > -package org.apache.fulcrum.security.torque.turbine; > - > -/* > - * 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. > - */ > -import java.sql.Connection; > -import java.util.HashSet; > -import java.util.List; > -import java.util.Set; > - > -import org.apache.fulcrum.security.entity.Permission; > -import org.apache.fulcrum.security.model.turbine.entity.TurbineRole; > -import org.apache.fulcrum.security.model.turbine.entity.TurbineUserGroupRole; > -import org.apache.fulcrum.security.torque.om.TorqueTurbineRolePeer; > -import org.apache.fulcrum.security.torque.om.TorqueTurbineRolePermission; > -import org.apache.fulcrum.security.torque.om.TorqueTurbineRolePermissionPeer; > -import org.apache.fulcrum.security.torque.om.TorqueTurbineUserGroupRole; > -import org.apache.fulcrum.security.torque.om.TorqueTurbineUserGroupRolePeer; > -import > org.apache.fulcrum.security.torque.security.turbine.TorqueAbstractTurbineTurbineSecurityEntity; > -import org.apache.fulcrum.security.util.DataBackendException; > -import org.apache.fulcrum.security.util.PermissionSet; > -import org.apache.torque.TorqueException; > -import org.apache.torque.criteria.Criteria; > -import org.apache.torque.om.SimpleKey; > -import org.apache.torque.util.Transaction; > - > -/** > - * This abstract class provides the SecurityInterface to the managers. > - * > - * @author <a href="mailto:[email protected]">Thomas Vandahl</a> > - * @version $Id:$ > - */ > -public abstract class FulcrumAbstractTurbineRole extends > TorqueAbstractTurbineTurbineSecurityEntity > - implements TurbineRole { > - /** Serial version */ > - private static final long serialVersionUID = -1782236723198646728L; > - > - /** a cache of permission objects */ > - private Set<Permission> permissionSet = null; > - > - /** > - * Forward reference to generated code > - * > - * Get a list of association objects, pre-populated with their > - * TorqueTurbinePermission objects. > - * > - * @param criteria Criteria to define the selection of records > - * @param con a database connection > - * @throws TorqueException if any database error occurs > - * > - * @return a list of Role/Permission relations > - */ > - protected List<TorqueTurbineRolePermission> > getTorqueTurbineRolePermissionsJoinTorqueTurbinePermission( > - Criteria criteria, Connection con) throws > TorqueException { > - criteria.and(TorqueTurbineRolePermissionPeer.ROLE_ID, > getEntityId()); > - return > TorqueTurbineRolePermissionPeer.doSelectJoinTorqueTurbinePermission(criteria, > con); > - } > - > - /** > - * Forward reference to generated code > - * > - * Get a list of association objects, pre-populated with their > - * TorqueTurbineGroup objects. > - * > - * @param criteria Criteria to define the selection of records > - * @param con a database connection > - * @throws TorqueException if any database error occurs > - * > - * @return a list of User/Group/Role relations > - */ > - protected List<TorqueTurbineUserGroupRole> > getTorqueTurbineUserGroupRolesJoinTorqueTurbineGroup(Criteria criteria, > - Connection con) throws TorqueException { > - criteria.and(TorqueTurbineUserGroupRolePeer.ROLE_ID, > getEntityId()); > - return > TorqueTurbineUserGroupRolePeer.doSelectJoinTorqueTurbineGroup(criteria, con); > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.model.turbine.entity.TurbineRole#addPermission( > - * org.apache.fulcrum.security.entity.Permission) > - */ > - public void addPermission(Permission permission) { > - getPermissions().add(permission); > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.model.turbine.entity.TurbineRole#getPermissions() > - */ > - public PermissionSet getPermissions() { > - if (permissionSet == null) { > - permissionSet = new PermissionSet(); > - } else if (!(permissionSet instanceof PermissionSet)) { > - permissionSet = new PermissionSet(permissionSet); > - } > - > - return (PermissionSet) permissionSet; > - } > - > - /* > - * (non-Javadoc) > - * > - * @see org.apache.fulcrum.security.model.turbine.entity.TurbineRole# > - * getPermissionsAsSet() > - */ > - @SuppressWarnings("unchecked") > - public <T extends Permission> Set<T> getPermissionsAsSet() { > - return (Set<T>) permissionSet; > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.model.turbine.entity.TurbineRole#removePermission > - * (org.apache.fulcrum.security.entity.Permission) > - */ > - public void removePermission(Permission permission) { > - getPermissions().remove(permission); > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.model.turbine.entity.TurbineRole#setPermissions( > - * org.apache.fulcrum.security.util.PermissionSet) > - */ > - public void setPermissions(PermissionSet permissionSet) { > - if (permissionSet != null) { > - this.permissionSet = permissionSet; > - } else { > - this.permissionSet = new PermissionSet(); > - } > - } > - > - /* > - * (non-Javadoc) > - * > - * @see org.apache.fulcrum.security.model.turbine.entity.TurbineRole# > - * setPermissionsAsSet(java.util.Set) > - */ > - public <T extends Permission> void setPermissionsAsSet(Set<T> > permissions) { > - setPermissions(new PermissionSet(permissions)); > - } > - > - /** > - * @return the database name > - */ > - public String getDatabaseName() { > - return TorqueTurbineRolePeer.DATABASE_NAME; > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity# > - * retrieveAttachedObjects(java.sql.Connection) > - */ > - @Override > - public void retrieveAttachedObjects(Connection con) throws > TorqueException { > - retrieveAttachedObjects(con, false); > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity# > - * retrieveAttachedObjects(java.sql.Connection, java.lang.Boolean) > - */ > - public void retrieveAttachedObjects(Connection con, Boolean lazy) > throws TorqueException { > - this.permissionSet = new PermissionSet(); > - > - List<TorqueTurbineRolePermission> rolepermissions = > getTorqueTurbineRolePermissionsJoinTorqueTurbinePermission( > - new Criteria(), con); > - > - for (TorqueTurbineRolePermission ttrp : rolepermissions) { > - permissionSet.add(ttrp.getTorqueTurbinePermission()); > - } > - > - if (!lazy) { > - Set<TurbineUserGroupRole> userGroupRoleSet = new > HashSet<TurbineUserGroupRole>(); > - > - List<TorqueTurbineUserGroupRole> ugrs = > getTorqueTurbineUserGroupRolesJoinTorqueTurbineGroup(new Criteria(), > - con); > - > - for (TorqueTurbineUserGroupRole ttugr : ugrs) { > - TurbineUserGroupRole ugr = new > TurbineUserGroupRole(); > - ugr.setRole(this); > - ugr.setGroup(ttugr.getTorqueTurbineGroup()); > - ugr.setUser(ttugr.getTorqueTurbineUser(con)); > - userGroupRoleSet.add(ugr); > - } > - > - setUserGroupRoleSet(userGroupRoleSet); > - } > - } > - > - /* > - * (non-Javadoc) > - * > - * @see org.apache.fulcrum.security.torque.security.turbine. > - * TorqueAbstractTurbineTurbineSecurityEntity#getUserGroupRoleSet() > - */ > - @Override > - public <T extends TurbineUserGroupRole> Set<T> getUserGroupRoleSet() > throws DataBackendException { > - if (super.getUserGroupRoleSet() == null || > super.getUserGroupRoleSet().isEmpty()) { > - Connection con = null; > - try { > - con = Transaction.begin(); > - > - retrieveAttachedObjects(con, false); // not > configurable, we set it > - > - Transaction.commit(con); > - con = null; > - } catch (TorqueException e) { > - throw new DataBackendException("Error > retrieving group information", e); > - } finally { > - if (con != null) { > - Transaction.safeRollback(con); > - } > - } > - } > - > - return super.getUserGroupRoleSet(); > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity# > - * update(java.sql.Connection) > - */ > - public void update(Connection con) throws TorqueException { > - if (permissionSet != null) { > - Criteria criteria = new Criteria(); > - > - /* remove old entries */ > - criteria.where(TorqueTurbineRolePermissionPeer.ROLE_ID, > getEntityId()); > - TorqueTurbineRolePermissionPeer.doDelete(criteria, con); > - > - for (Permission p : permissionSet) { > - TorqueTurbineRolePermission rp = new > TorqueTurbineRolePermission(); > - rp.setPermissionId((Integer) p.getId()); > - rp.setRoleId(getEntityId()); > - rp.save(con); > - } > - } > - // not needed > -// try > -// { > -// Set<TurbineUserGroupRole> userGroupRoleSet = > getUserGroupRoleSet(); > -// if (userGroupRoleSet != null) > -// { > -// Criteria criteria = new Criteria(); > -// > -// /* remove old entries */ > -// criteria.where(TorqueTurbineUserGroupRolePeer.ROLE_ID, > getEntityId()); > -// TorqueTurbineUserGroupRolePeer.doDelete(criteria, con); > -// > -// for (TurbineUserGroupRole ugr : userGroupRoleSet) > -// { > -// TorqueTurbineUserGroupRole ttugr = new > TorqueTurbineUserGroupRole(); > -// ttugr.setGroupId((Integer)ugr.getGroup().getId()); > -// ttugr.setUserId((Integer)ugr.getUser().getId()); > -// ttugr.setRoleId((Integer)ugr.getRole().getId()); > -// ttugr.save(con); > -// } > -// } > -// save(con); > -// } > -// catch (Exception e) > -// { > -// throw new TorqueException(e); > -// } > - } > - > - /* > - * (non-Javadoc) > - * > - * @see > - * > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity# > - * delete() > - */ > - public void delete() throws TorqueException { > - TorqueTurbineRolePeer.doDelete(SimpleKey.keyFor(getEntityId())); > - } > -} > +package org.apache.fulcrum.security.torque.turbine; > + > +/* > + * 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. > + */ > +import java.sql.Connection; > +import java.util.HashSet; > +import java.util.List; > +import java.util.Set; > + > +import org.apache.fulcrum.security.entity.Permission; > +import org.apache.fulcrum.security.model.turbine.entity.TurbineRole; > +import org.apache.fulcrum.security.model.turbine.entity.TurbineUserGroupRole; > +import org.apache.fulcrum.security.torque.om.TorqueTurbineRolePeer; > +import org.apache.fulcrum.security.torque.om.TorqueTurbineRolePermission; > +import org.apache.fulcrum.security.torque.om.TorqueTurbineRolePermissionPeer; > +import org.apache.fulcrum.security.torque.om.TorqueTurbineUserGroupRole; > +import org.apache.fulcrum.security.torque.om.TorqueTurbineUserGroupRolePeer; > +import > org.apache.fulcrum.security.torque.security.turbine.TorqueAbstractTurbineTurbineSecurityEntity; > +import org.apache.fulcrum.security.util.DataBackendException; > +import org.apache.fulcrum.security.util.PermissionSet; > +import org.apache.torque.TorqueException; > +import org.apache.torque.criteria.Criteria; > +import org.apache.torque.om.SimpleKey; > +import org.apache.torque.util.Transaction; > + > +/** > + * This abstract class provides the SecurityInterface to the managers. > + * > + * @author <a href="mailto:[email protected]">Thomas Vandahl</a> > + * @version $Id:$ > + */ > +public abstract class FulcrumAbstractTurbineRole extends > TorqueAbstractTurbineTurbineSecurityEntity > + implements TurbineRole { > + /** Serial version */ > + private static final long serialVersionUID = -1782236723198646728L; > + > + /** a cache of permission objects */ > + private Set<Permission> permissionSet = null; > + > + /** > + * Forward reference to generated code > + * > + * Get a list of association objects, pre-populated with their > + * TorqueTurbinePermission objects. > + * > + * @param criteria Criteria to define the selection of records > + * @param con a database connection > + * @throws TorqueException if any database error occurs > + * > + * @return a list of Role/Permission relations > + */ > + protected List<TorqueTurbineRolePermission> > getTorqueTurbineRolePermissionsJoinTorqueTurbinePermission( > + Criteria criteria, Connection con) throws TorqueException { > + criteria.and(TorqueTurbineRolePermissionPeer.ROLE_ID, getEntityId()); > + return > TorqueTurbineRolePermissionPeer.doSelectJoinTorqueTurbinePermission(criteria, > con); > + } > + > + /** > + * Forward reference to generated code > + * > + * Get a list of association objects, pre-populated with their > + * TorqueTurbineGroup objects. > + * > + * @param criteria Criteria to define the selection of records > + * @param con a database connection > + * @throws TorqueException if any database error occurs > + * > + * @return a list of User/Group/Role relations > + */ > + protected List<TorqueTurbineUserGroupRole> > getTorqueTurbineUserGroupRolesJoinTorqueTurbineGroup(Criteria criteria, > + Connection con) throws TorqueException { > + criteria.and(TorqueTurbineUserGroupRolePeer.ROLE_ID, getEntityId()); > + return > TorqueTurbineUserGroupRolePeer.doSelectJoinTorqueTurbineGroup(criteria, con); > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.model.turbine.entity.TurbineRole#addPermission( > + * org.apache.fulcrum.security.entity.Permission) > + */ > + public void addPermission(Permission permission) { > + getPermissions().add(permission); > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.model.turbine.entity.TurbineRole#getPermissions() > + */ > + public PermissionSet getPermissions() { > + if (permissionSet == null) { > + permissionSet = new PermissionSet(); > + } else if (!(permissionSet instanceof PermissionSet)) { > + permissionSet = new PermissionSet(permissionSet); > + } > + > + return (PermissionSet) permissionSet; > + } > + > + /* > + * (non-Javadoc) > + * > + * @see org.apache.fulcrum.security.model.turbine.entity.TurbineRole# > + * getPermissionsAsSet() > + */ > + @SuppressWarnings("unchecked") > + public <T extends Permission> Set<T> getPermissionsAsSet() { > + return (Set<T>) permissionSet; > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.model.turbine.entity.TurbineRole#removePermission > + * (org.apache.fulcrum.security.entity.Permission) > + */ > + public void removePermission(Permission permission) { > + getPermissions().remove(permission); > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.model.turbine.entity.TurbineRole#setPermissions( > + * org.apache.fulcrum.security.util.PermissionSet) > + */ > + public void setPermissions(PermissionSet permissionSet) { > + if (permissionSet != null) { > + this.permissionSet = permissionSet; > + } else { > + this.permissionSet = new PermissionSet(); > + } > + } > + > + /* > + * (non-Javadoc) > + * > + * @see org.apache.fulcrum.security.model.turbine.entity.TurbineRole# > + * setPermissionsAsSet(java.util.Set) > + */ > + public <T extends Permission> void setPermissionsAsSet(Set<T> > permissions) { > + setPermissions(new PermissionSet(permissions)); > + } > + > + /** > + * @return the database name > + */ > + public String getDatabaseName() { > + return TorqueTurbineRolePeer.DATABASE_NAME; > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity# > + * retrieveAttachedObjects(java.sql.Connection) > + */ > + @Override > + public void retrieveAttachedObjects(Connection con) throws > DataBackendException { > + retrieveAttachedObjects(con, false); > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity# > + * retrieveAttachedObjects(java.sql.Connection, java.lang.Boolean) > + */ > + public void retrieveAttachedObjects(Connection con, Boolean lazy) throws > DataBackendException { > + this.permissionSet = new PermissionSet(); > + > + try { > + List<TorqueTurbineRolePermission> rolepermissions = > getTorqueTurbineRolePermissionsJoinTorqueTurbinePermission( > + new Criteria(), con); > + > + for (TorqueTurbineRolePermission ttrp : rolepermissions) { > + permissionSet.add(ttrp.getTorqueTurbinePermission()); > + } > + > + if (!lazy) { > + Set<TurbineUserGroupRole> userGroupRoleSet = new > HashSet<TurbineUserGroupRole>(); > + > + List<TorqueTurbineUserGroupRole> ugrs = > getTorqueTurbineUserGroupRolesJoinTorqueTurbineGroup(new Criteria(), > + con); > + > + for (TorqueTurbineUserGroupRole ttugr : ugrs) { > + TurbineUserGroupRole ugr = new TurbineUserGroupRole(); > + ugr.setRole(this); > + ugr.setGroup(ttugr.getTorqueTurbineGroup()); > + ugr.setUser(ttugr.getTorqueTurbineUser(con)); > + userGroupRoleSet.add(ugr); > + } > + > + setUserGroupRoleSet(userGroupRoleSet); > + } > + } catch (TorqueException e ) { > + throw new DataBackendException( e.getMessage(),e ); > + } > + } > + > + /* > + * (non-Javadoc) > + * > + * @see org.apache.fulcrum.security.torque.security.turbine. > + * TorqueAbstractTurbineTurbineSecurityEntity#getUserGroupRoleSet() > + */ > + @Override > + public <T extends TurbineUserGroupRole> Set<T> getUserGroupRoleSet() > throws DataBackendException { > + if (super.getUserGroupRoleSet() == null || > super.getUserGroupRoleSet().isEmpty()) { > + Connection con = null; > + try { > + con = Transaction.begin(); > + > + retrieveAttachedObjects(con, false); // not configurable, we > set it > + > + Transaction.commit(con); > + con = null; > + } catch (TorqueException e) { > + throw new DataBackendException("Error retrieving group > information", e); > + } finally { > + if (con != null) { > + Transaction.safeRollback(con); > + } > + } > + } > + > + return super.getUserGroupRoleSet(); > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity# > + * update(java.sql.Connection) > + */ > + public void update(Connection con) throws TorqueException { > + if (permissionSet != null) { > + Criteria criteria = new Criteria(); > + > + /* remove old entries */ > + criteria.where(TorqueTurbineRolePermissionPeer.ROLE_ID, > getEntityId()); > + TorqueTurbineRolePermissionPeer.doDelete(criteria, con); > + > + for (Permission p : permissionSet) { > + TorqueTurbineRolePermission rp = new > TorqueTurbineRolePermission(); > + rp.setPermissionId((Integer) p.getId()); > + rp.setRoleId(getEntityId()); > + rp.save(con); > + } > + } > + // not needed > +// try > +// { > +// Set<TurbineUserGroupRole> userGroupRoleSet = > getUserGroupRoleSet(); > +// if (userGroupRoleSet != null) > +// { > +// Criteria criteria = new Criteria(); > +// > +// /* remove old entries */ > +// criteria.where(TorqueTurbineUserGroupRolePeer.ROLE_ID, > getEntityId()); > +// TorqueTurbineUserGroupRolePeer.doDelete(criteria, con); > +// > +// for (TurbineUserGroupRole ugr : userGroupRoleSet) > +// { > +// TorqueTurbineUserGroupRole ttugr = new > TorqueTurbineUserGroupRole(); > +// ttugr.setGroupId((Integer)ugr.getGroup().getId()); > +// ttugr.setUserId((Integer)ugr.getUser().getId()); > +// ttugr.setRoleId((Integer)ugr.getRole().getId()); > +// ttugr.save(con); > +// } > +// } > +// save(con); > +// } > +// catch (Exception e) > +// { > +// throw new TorqueException(e); > +// } > + } > + > + /* > + * (non-Javadoc) > + * > + * @see > + * > org.apache.fulcrum.security.torque.security.TorqueAbstractSecurityEntity# > + * delete() > + */ > + public void delete() throws TorqueException { > + TorqueTurbineRolePeer.doDelete(SimpleKey.keyFor(getEntityId())); > + } > +} > > -- Jeff Painter CEO and Founder of JiveCast Software and analytics, made together https://jivecast.com 301 Fayetteville St. Unit 2301, Raleigh, NC 27601 (919) 533-9024 --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
