1/*2* Licensed to the Apache Software Foundation (ASF) under one or more3* contributor license agreements. See the NOTICE file distributed with4* this work for additional information regarding copyright ownership.5* The ASF licenses this file to You under the Apache License, Version 2.06* (the "License"); you may not use this file except in compliance with7* the License. You may obtain a copy of the License at8*9* http://www.apache.org/licenses/LICENSE-2.010*11* Unless required by applicable law or agreed to in writing, software12* distributed under the License is distributed on an "AS IS" BASIS,13* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.14* See the License for the specific language governing permissions and15* limitations under the License.16*/17packageorg.apache.jetspeed.security.spi.impl.ldap;
1819import javax.naming.NamingException;
20import javax.naming.directory.SearchControls;
2122publicinterfaceLdapMembershipDao {
2324publicabstract String[] searchGroupMemberShipByGroup(
25final String userPrincipalUid, SearchControls cons)
26 throws NamingException;
2728publicabstract String[] searchGroupMemberShipByUser(
29final String userPrincipalUid, SearchControls cons)
30 throws NamingException;
3132publicabstract String[] searchRoleMemberShipByRole(
33final String userPrincipalUid, SearchControls cons)
34 throws NamingException;
3536publicabstract String[] searchRoleMemberShipByUser(
37final String userPrincipalUid, SearchControls cons)
38 throws NamingException;
3940/***41 * <p>42 * Search user by group using the GroupMembershipAttribute.43 * </p>44 * 45 * @param groupPrincipalUid46 * @param cons47 * @return48 * @throws NamingException A {@link NamingException}.49 */50publicabstract String[] searchUsersFromGroupByGroup(
51final String groupPrincipalUid, SearchControls cons)
52 throws NamingException;
5354/***55 * <p>56 * Search user by group using the UserGroupMembershipAttribute.57 * </p>58 * 59 * @param groupPrincipalUid60 * @param cons61 * @return62 * @throws NamingException A {@link NamingException}.63 */64publicabstract String[] searchUsersFromGroupByUser(
65final String groupPrincipalUid, SearchControls cons)
66 throws NamingException;
6768/***69 * <p>70 * Search user by role using the RoleMembershipAttribute.71 * </p>72 * 73 * @param groupPrincipalUid74 * @param cons75 * @return76 * @throws NamingException A {@link NamingException}.77 */78publicabstract String[] searchUsersFromRoleByRole(
79final String rolePrincipalUid, SearchControls cons)
80 throws NamingException;
8182/***83 * <p>84 * Search user by role using the UserRoleMembershipAttribute.85 * </p>86 * 87 * @param groupPrincipalUid88 * @param cons89 * @return90 * @throws NamingException A {@link NamingException}.91 */92publicabstract String[] searchUsersFromRoleByUser(
93final String groupPrincipalUid, SearchControls cons)
94 throws NamingException;
9596publicabstract String[] searchRolesFromGroupByGroup(final String groupPrincipalUid,
97 SearchControls cons) throws NamingException;
9899publicabstract String[] searchRolesFromGroupByRole(final String groupPrincipalUid,
100 SearchControls cons) throws NamingException;
101102 }