*/
public class NtlmAuthEngineImpl extends fr.gouv.finances.dgfip.xemelios.auth.impl.std.db.StdDbAuthEngineImpl {
- private static final Logger logger = Logger.getLogger(NtlmAuthEngineImpl.class);
+ private static final Logger logger = Logger.getLogger(NtlmAuthEngineImpl.class);
- public NtlmAuthEngineImpl() throws SQLException {
- super(false);
- }
+ public NtlmAuthEngineImpl() throws SQLException {
+ super(false);
+ }
- @Override
- public boolean isLoginRequired() {
- return false;
- }
+ @Override
+ public boolean isLoginRequired() {
+ return false;
+ }
- @Override
- public boolean isPasswordRequired() {
- return false;
- }
+ @Override
+ public boolean isPasswordRequired() {
+ return false;
+ }
- @Override
- public XemeliosUser createUser(String unusedlogin, String unusedpassword) {
- ThreadLocal tl = fr.gouv.finances.dgfip.xemelios.web2.connexion.ConnexionAction.getThreadLocalRequestHolder();
- HttpServletRequest request;
- String userLogin;
- Connection connection = null;
- try {
- connection = PoolManager.getInstance().getConnection();
- request = (HttpServletRequest) (tl.get());
- userLogin = request.getRemoteUser();
- logger.info("userLogin=" + userLogin);
- if (userLogin != null) {
- // Pour rire
-// if( request.isUserInRole("AXYUS\\commercial") ) {
-// logger.info("connect as adamin");
-// return doCreateUser(connection, "admin");
-// } else {
-// logger.info("connect as " + userLogin);
- XemeliosUser dejala = doCreateUser(connection, userLogin);
- if (dejala != null) {
- return dejala;
- } else {
- DataHelper.StdUser stdUser = new DataHelper.StdUser(userLogin, userLogin, userLogin, false, false, false, -1);
- DataHelper.saveUser(stdUser, "*");
- return doCreateUser(connection, userLogin);
- }
+ @Override
+ public XemeliosUser createUser(String unusedlogin, String unusedpassword) {
+ XemeliosUser user = null;
+
+ Connection connection = PoolManager.getInstance().getConnection();
+ try {
+ ThreadLocal tl = fr.gouv.finances.dgfip.xemelios.web2.connexion.ConnexionAction.getThreadLocalRequestHolder();
+ HttpServletRequest request;
+
+ request = (HttpServletRequest) (tl.get());
+ String userLogin = request.getRemoteUser();
+ logger.info("userLogin=" + userLogin);
- // }
- } else {
- return null;
- }
- } catch (Exception e) {
- e.printStackTrace();
- return null;
- } finally {
- PoolManager.getInstance().releaseConnection(connection);
- }
+ if (userLogin != null) {
+ user = doCreateUser(connection, userLogin);
+ }
+ } catch (Exception e) {
+ logger.error(e, e);
+ } finally {
+ PoolManager.getInstance().releaseConnection(connection);
+ }
- }
+ return user;
+ }
- @Override
- protected void insertAdminMenu() {
- boolean doNotStop = false;
- Class clazz = null;
- Object instance = null;
- try {
- clazz = Class.forName("fr.gouv.finances.cp.xemelios.ui.MainWindow");
- Method meth = clazz.getMethod("getInstance");
- instance = meth.invoke(null);
- doNotStop = (instance != null);
- } catch (Throwable t) {
- }
+ @Override
+ protected void insertAdminMenu() {
+ boolean doNotStop = false;
+ Class clazz = null;
+ Object instance = null;
+ try {
+ clazz = Class.forName("fr.gouv.finances.cp.xemelios.ui.MainWindow");
+ Method meth = clazz.getMethod("getInstance");
+ instance = meth.invoke(null);
+ doNotStop = (instance != null);
+ } catch (Throwable t) {
+ }
- }
+ }
}