1 /*******************************************************************************
2 * Copyright © Igor Barma, Alexandre Desoubeaux, Christian Martel, Eric Brun, Mathieu Amblard, Gwenael Gevet, Pierre Guillot, 2012
4 * This file is part of the work and learning management system Pentila Nero.
6 * Pentila Nero is free software. You can redistribute it and/or modify since
7 * you respect the terms of either (at least one of the both license) :
8 * - under the terms of the GNU Affero General Public License as
9 * published by the Free Software Foundation, either version 3 of the
10 * License, or (at your option) any later version.
11 * - the CeCILL-C as published by CeCILL-C; either version 1 of the
12 * License, or any later version
13 * - the GNU Lesser General Public License as published by the
14 * Free Software Foundation, either version 3 of the license,
15 * or (at your option) any later version.
17 * There are special exceptions to the terms and conditions of the
18 * licenses as they are applied to this software. View the full text of
19 * the exception in file LICENSE-PROJECT.txt in the directory of this software
22 * Pentila Nero is distributed in the hope that it will be useful,
23 * but WITHOUT ANY WARRANTY; without even the implied warranty of
24 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25 * Licenses for more details.
27 * You should have received a copy of the GNU Affero General Public License
28 * and the CeCILL-C and the GNU Lesser General Public License along with
29 * Pentila Nero. If not, see :
30 * <http://www.gnu.org/licenses/> and
31 * <http://www.cecill.info/licences.fr.html>.
32 ******************************************************************************/
33 package com.pentila.entSavoie.utils;
35 import javax.naming.Binding;
36 import javax.naming.ldap.LdapContext;
38 import com.liferay.portal.model.User;
40 public class LDAPUtilsLocalServiceUtil{
42 private static LDAPUtilsLocalService _service;
45 * Recherche et retourne la classe de rattachement de l'utilisateur élève donné.
47 * @param u L'utilisateur dont nous voulons la classe de ratachement
51 public static String getStudentClassName(User u) throws Exception {
52 return getService().getStudentClassName(u);
55 public static LDAPUtilsLocalService getService() {
56 if (_service == null) {
57 throw new RuntimeException("LDAPUtilsLocalService is not set");
63 public void setService(LDAPUtilsLocalService service) {
68 * Recherche et retourne la valeur de l'attribut Ldap "attributeName" de l'utilisateur élève donné.
70 * @param u L'utilisateur dont nous voulons la valeur de l'attribut Ldap "attributeName"
74 public static String getLdapAttribute(User u, String attributeName) throws Exception {
75 return getService().getLdapAttribute(u, attributeName);
78 public static LdapContext getLdapContext(User u) throws Exception {
79 return getService().getLdapContext(u);
82 public static Binding getUser(long companyId, String screenName) throws Exception{
83 return getService().getUser(companyId, screenName);
86 public static String getNameInNamespace(long companyId, Binding binding) throws Exception{
87 return getService().getNameInNamespace(companyId, binding);