diff --git a/src/main/java/org/gcube/portal/PortalSchedulerService.java b/src/main/java/org/gcube/portal/PortalSchedulerService.java
index 5ec7106..1901e6f 100644
--- a/src/main/java/org/gcube/portal/PortalSchedulerService.java
+++ b/src/main/java/org/gcube/portal/PortalSchedulerService.java
@@ -82,14 +82,15 @@ public class PortalSchedulerService extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
- ScheduledExecutorService pop3Scheduler = Executors.newScheduledThreadPool(1);
- pop3Scheduler.scheduleAtFixedRate(new PeriodicTask(store, portalName, host, user, password), 0, POP3_MINUTES_DELAY, TimeUnit.MINUTES);
- String toReturn = "
Check Notification Email Started ...
";
-
ScheduledExecutorService ldapScheduler = Executors.newScheduledThreadPool(1);
ldapScheduler.scheduleAtFixedRate(new LDAPSync(), 0, LDAP_MINUTES_DELAY, TimeUnit.MINUTES);
- toReturn += "LDAPSync SCRIPT Started ...
";
+ ScheduledExecutorService pop3Scheduler = Executors.newScheduledThreadPool(1);
+ pop3Scheduler.scheduleAtFixedRate(new PeriodicTask(store, portalName, host, user, password), 0, POP3_MINUTES_DELAY, TimeUnit.MINUTES);
+
+
+ String toReturn = "Check Notification Email Started ...
";
+ toReturn += "LDAPSync SCRIPT Started ...
";
response.setContentType("text/html");
response.getWriter().write(toReturn);
diff --git a/src/main/java/org/gcube/portal/ldapexport/LDAPSync.java b/src/main/java/org/gcube/portal/ldapexport/LDAPSync.java
index 60c1890..4a4a327 100644
--- a/src/main/java/org/gcube/portal/ldapexport/LDAPSync.java
+++ b/src/main/java/org/gcube/portal/ldapexport/LDAPSync.java
@@ -2,7 +2,6 @@ package org.gcube.portal.ldapexport;
import java.util.List;
import java.util.Properties;
-import java.util.ResourceBundle;
import javax.naming.Context;
import javax.naming.NamingEnumeration;
@@ -31,15 +30,18 @@ import com.liferay.portal.service.UserLocalServiceUtil;
public class LDAPSync implements Runnable {
private static final Logger _log = LoggerFactory.getLogger(LDAPSync.class);
- private ResourceBundle rb;
+ private static final String ldapUrl = "ldap://ldap-liferay.d4science.org";
+ private static final String ldapPrincipal = "cn=admin,dc=d4science,dc=org";
+ private static final String ldapPwd = "poiwefhaewfkhj";
+ private static final String filter = "(objectClass=inetOrgPerson)";
public LDAPSync() {
+ super();
_log.debug("LDAPSync()");
}
@Override
public void run() {
- ResourceBundle rb = ResourceBundle.getBundle("org.gcube.portal.settings");
_log.debug("Reading Portal Users ...");
List users = null;
try {
@@ -50,10 +52,7 @@ public class LDAPSync implements Runnable {
}
_log.debug("Initializing LDAP exporter ...");
- String ldapUrl = rb.getString("LDAP_PROVIDER_URL");
- String ldapPrincipal = rb.getString("LDAP_SECURITY_PRINCIPAL");
- String ldapPwd = rb.getString("LDAP_SECURITY_CREDENTIALS");
- String filter = rb.getString("LDAP_FILTER");
+
Properties env = new Properties();
env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");
@@ -66,9 +65,9 @@ public class LDAPSync implements Runnable {
_log.debug("Initiating LDAP Sync ...");
for (User user : users) {
updateUserInLDAP(user.getScreenName(), user.getFirstName(), user.getLastName(), user.getEmailAddress(), "{SHA}"+user.getPassword(), ctx, filter);
- _log.debug("Updated " + user.getScreenName());
+ //_log.debug("Updated " + user.getScreenName());
}
- _log.debug("LDAP Sync done ... reading LDAP users now ..");
+ _log.debug("LDAP Sync cycle done");
} catch (NamingException e) {
_log.error("Something went Wrong during LDAP Sync");
@@ -83,10 +82,16 @@ public class LDAPSync implements Runnable {
}
- private boolean checkIfLDAPUserExists(String username, DirContext ctx, String filter) throws NamingException {
+ private boolean checkIfLDAPUserExists(String username, DirContext ctx, String filter) {
SearchControls ctls = new SearchControls();
ctls.setSearchScope(SearchControls.SUBTREE_SCOPE);
- NamingEnumeration answer = ctx.search(getSubContext(username), filter, ctls);
+ NamingEnumeration answer;
+ try {
+ answer = ctx.search(getSubContext(username), filter, ctls);
+ } catch (NamingException e) {
+ _log.info("user: " + username + " not found checkIfLDAPUserExists returning false");
+ return false;
+ }
return answer.hasMoreElements();
}
/**
@@ -121,12 +126,12 @@ public class LDAPSync implements Runnable {
attributes.put(userPassword);
if (checkIfLDAPUserExists(username, ctx, filter)) {
- _log.debug("User " + username + " already exists, replacing attributes");
+ //_log.debug("User " + username + " already exists, replacing attributes");
ctx.modifyAttributes(getSubContext(username), DirContext.REPLACE_ATTRIBUTE, attributes);
}
else {
ctx.createSubcontext(getSubContext(username),attributes);
- _log.debug("New User with uid=" + username + " created");
+ _log.debug("New User Found with uid=" + username + " created");
}
}
diff --git a/src/main/java/org/gcube/portal/settings.properties b/src/main/java/org/gcube/portal/settings.properties
deleted file mode 100644
index e69de29..0000000
diff --git a/src/main/java/org/gcube/portal/socialmail/PeriodicTask.java b/src/main/java/org/gcube/portal/socialmail/PeriodicTask.java
index fab55cd..cdc1a5e 100644
--- a/src/main/java/org/gcube/portal/socialmail/PeriodicTask.java
+++ b/src/main/java/org/gcube/portal/socialmail/PeriodicTask.java
@@ -149,7 +149,7 @@ public class PeriodicTask implements Runnable {
for (int i = 0, n = messages.length; i < n; i++) {
Message message = messages[i];
- _log.debug("--------------- FOUND EMAIL ------------------");
+ _log.info("--------------- FOUND EMAIL ------------------");
String subject = message.getSubject();
_log.debug("Parsing email of " + message.getFrom()[0] + " with subject: " + subject);
diff --git a/src/main/webapp/index.jsp b/src/main/webapp/index.jsp
index e75a1d4..8ef950e 100644
--- a/src/main/webapp/index.jsp
+++ b/src/main/webapp/index.jsp
@@ -1,5 +1,7 @@
Hello From Portal Scheduler service!
+
+RUN Scheduler