Author: tolusha
Date: 2010-04-28 04:33:22 -0400 (Wed, 28 Apr 2010)
New Revision: 2334
Added:
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/GroupEventListenerHandler.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipEventListenerHandler.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserEventListenerHandler.java
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserProfileEventListenerHandler.java
Modified:
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/GroupDAOImpl.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/MembershipDAOImpl.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/UserDAOImpl.java
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/UserProfileDAOImpl.java
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/GroupDAOImpl.java
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/MembershipDAOImpl.java
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserDAOImpl.java
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserProfileDAOImpl.java
Log:
EXOJCR-705: Expose listeners in OrganizationService
Added:
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/GroupEventListenerHandler.java
===================================================================
---
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/GroupEventListenerHandler.java
(rev 0)
+++
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/GroupEventListenerHandler.java 2010-04-28
08:33:22 UTC (rev 2334)
@@ -0,0 +1,37 @@
+/*
+ * Copyright (C) 2010 eXo Platform SAS.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.exoplatform.services.organization;
+
+import java.util.List;
+
+/**
+ * @author <a href="anatoliy.bazko(a)exoplatform.org">Anatoliy
Bazko</a>
+ * @version $Id: GroupEventListenerHandler.java 111 2010-11-11 11:11:11Z tolusha $
+ *
+ */
+public interface GroupEventListenerHandler
+{
+
+ /**
+ * Return list of GroupEventListener. List should be unmodifiable to prevent
modification outside of GroupHandler.
+ *
+ * @return list of GroupEventListener
+ */
+ public List<GroupEventListener> getGroupListeners();
+}
Added:
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipEventListenerHandler.java
===================================================================
---
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipEventListenerHandler.java
(rev 0)
+++
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/MembershipEventListenerHandler.java 2010-04-28
08:33:22 UTC (rev 2334)
@@ -0,0 +1,38 @@
+/*
+ * Copyright (C) 2010 eXo Platform SAS.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.exoplatform.services.organization;
+
+import java.util.List;
+
+/**
+ * @author <a href="anatoliy.bazko(a)exoplatform.org">Anatoliy
Bazko</a>
+ * @version $Id: MembershipEventListenerHandler.java 111 2010-11-11 11:11:11Z tolusha $
+ *
+ */
+public interface MembershipEventListenerHandler
+{
+
+ /**
+ * Return list of MembershipEventListener. List should be unmodifiable to prevent
modification outside of MembershipHandler.
+ *
+ * @return list of MembershipEventListener
+ */
+ public List<MembershipEventListener> getMembershipListeners();
+
+}
Added:
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserEventListenerHandler.java
===================================================================
---
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserEventListenerHandler.java
(rev 0)
+++
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserEventListenerHandler.java 2010-04-28
08:33:22 UTC (rev 2334)
@@ -0,0 +1,38 @@
+/*
+ * Copyright (C) 2010 eXo Platform SAS.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.exoplatform.services.organization;
+
+import java.util.List;
+
+/**
+ * @author <a href="anatoliy.bazko(a)exoplatform.org">Anatoliy
Bazko</a>
+ * @version $Id: UserEventListenerHandler.java 111 2010-11-11 11:11:11Z tolusha
+ * $
+ */
+public interface UserEventListenerHandler {
+
+ /**
+ * Return list of UserEventListener. List should be unmodifiable to prevent
+ * modification outside of UserHandler.
+ *
+ * @return list of UserEventListener
+ */
+ public List<UserEventListener> getUserListeners();
+
+}
Added:
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserProfileEventListenerHandler.java
===================================================================
---
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserProfileEventListenerHandler.java
(rev 0)
+++
core/trunk/exo.core.component.organization.api/src/main/java/org/exoplatform/services/organization/UserProfileEventListenerHandler.java 2010-04-28
08:33:22 UTC (rev 2334)
@@ -0,0 +1,37 @@
+/*
+ * Copyright (C) 2010 eXo Platform SAS.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.exoplatform.services.organization;
+
+import java.util.List;
+
+/**
+ * @author <a href="anatoliy.bazko(a)exoplatform.org">Anatoliy
Bazko</a>
+ * @version $Id: UserProfileEventListenerHandler.java 111 2010-11-11 11:11:11Z
+ * tolusha $
+ */
+public interface UserProfileEventListenerHandler {
+
+ /**
+ * Return list of UserProfileEventListener. List should be unmodifiable to
+ * prevent modification outside of UserProfileHandler.
+ *
+ * @return list of UserProfileEventListener
+ */
+ public List<UserProfileEventListener> getUserProfileListeners();
+}
Modified:
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/GroupDAOImpl.java
===================================================================
---
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/GroupDAOImpl.java 2010-04-28
08:06:14 UTC (rev 2333)
+++
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/GroupDAOImpl.java 2010-04-28
08:33:22 UTC (rev 2334)
@@ -22,6 +22,7 @@
import org.exoplatform.services.database.HibernateService;
import org.exoplatform.services.organization.Group;
import org.exoplatform.services.organization.GroupEventListener;
+import org.exoplatform.services.organization.GroupEventListenerHandler;
import org.exoplatform.services.organization.GroupHandler;
import org.exoplatform.services.organization.impl.GroupImpl;
import org.hibernate.Query;
@@ -29,6 +30,7 @@
import java.util.ArrayList;
import java.util.Collection;
+import java.util.Collections;
import java.util.List;
/**
@@ -36,7 +38,7 @@
* benjmestrallet(a)users.sourceforge.net Author : Tuan Nguyen
* tuan08(a)users.sourceforge.net Date: Aug 22, 2003 Time: 4:51:21 PM
*/
-public class GroupDAOImpl implements GroupHandler
+public class GroupDAOImpl implements GroupHandler, GroupEventListenerHandler
{
public static final String queryFindGroupByName =
"from g in class org.exoplatform.services.organization.impl.GroupImpl " +
"where g.groupName = ? ";
@@ -225,4 +227,12 @@
for (GroupEventListener listener : listeners_)
listener.postDelete(group);
}
+
+ /**
+ * {@inheritDoc}
+ */
+ public List<GroupEventListener> getGroupListeners()
+ {
+ return Collections.unmodifiableList(listeners_);
+ }
}
Modified:
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/MembershipDAOImpl.java
===================================================================
---
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/MembershipDAOImpl.java 2010-04-28
08:06:14 UTC (rev 2333)
+++
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/MembershipDAOImpl.java 2010-04-28
08:33:22 UTC (rev 2334)
@@ -24,6 +24,7 @@
import org.exoplatform.services.organization.Group;
import org.exoplatform.services.organization.Membership;
import org.exoplatform.services.organization.MembershipEventListener;
+import org.exoplatform.services.organization.MembershipEventListenerHandler;
import org.exoplatform.services.organization.MembershipHandler;
import org.exoplatform.services.organization.MembershipType;
import org.exoplatform.services.organization.User;
@@ -31,6 +32,7 @@
import org.hibernate.Session;
import java.util.Collection;
+import java.util.Collections;
import java.util.Iterator;
import java.util.List;
@@ -40,7 +42,7 @@
* Created by The eXo Platform SAS Author : Mestrallet Benjamin
benjmestrallet(a)users.sourceforge.net
* Author : Tuan Nguyen tuan08(a)users.sourceforge.net Date: Aug 22, 2003 Time: 4:51:21 PM
*/
-public class MembershipDAOImpl implements MembershipHandler
+public class MembershipDAOImpl implements MembershipHandler,
MembershipEventListenerHandler
{
private static final String queryFindMembershipByUserGroupAndType =
@@ -317,4 +319,12 @@
listener.postDelete(membership);
}
}
+
+ /**
+ * {@inheritDoc}
+ */
+ public List<MembershipEventListener> getMembershipListeners()
+ {
+ return Collections.unmodifiableList(listeners_);
+ }
}
Modified:
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/UserDAOImpl.java
===================================================================
---
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/UserDAOImpl.java 2010-04-28
08:06:14 UTC (rev 2333)
+++
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/UserDAOImpl.java 2010-04-28
08:33:22 UTC (rev 2334)
@@ -32,13 +32,14 @@
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Collection;
+import java.util.Collections;
import java.util.List;
/**
* Created by The eXo Platform SAS Author : Mestrallet Benjamin
benjmestrallet(a)users.sourceforge.net
* Author : Tuan Nguyen tuan08(a)users.sourceforge.net Date: Aug 22, 2003 Time: 4:51:21 PM
*/
-public class UserDAOImpl implements UserHandler
+public class UserDAOImpl implements UserHandler, UserEventListenerHandler
{
public static final String queryFindUserByName =
"from u in class org.exoplatform.services.organization.impl.UserImpl " +
"where u.userName = ?";
@@ -253,4 +254,12 @@
for (UserEventListener listener : listeners_)
listener.postDelete(user);
}
+
+ /**
+ * {@inheritDoc}
+ */
+ public List<UserEventListener> getUserListeners()
+ {
+ return Collections.unmodifiableList(listeners_);
+ }
}
Modified:
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/UserProfileDAOImpl.java
===================================================================
---
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/UserProfileDAOImpl.java 2010-04-28
08:06:14 UTC (rev 2333)
+++
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/UserProfileDAOImpl.java 2010-04-28
08:33:22 UTC (rev 2334)
@@ -23,6 +23,7 @@
import org.exoplatform.services.database.HibernateService;
import org.exoplatform.services.organization.UserProfile;
import org.exoplatform.services.organization.UserProfileEventListener;
+import org.exoplatform.services.organization.UserProfileEventListenerHandler;
import org.exoplatform.services.organization.UserProfileHandler;
import org.exoplatform.services.organization.impl.UserProfileData;
import org.exoplatform.services.organization.impl.UserProfileImpl;
@@ -30,6 +31,7 @@
import java.util.ArrayList;
import java.util.Collection;
+import java.util.Collections;
import java.util.List;
/**
@@ -37,7 +39,7 @@
* benjmestrallet(a)users.sourceforge.net Author : Tuan Nguyen
* tuan08(a)users.sourceforge.net Date: Aug 22, 2003 Time: 4:51:21 PM
*/
-public class UserProfileDAOImpl implements UserProfileHandler
+public class UserProfileDAOImpl implements UserProfileHandler,
UserProfileEventListenerHandler
{
static private UserProfile NOT_FOUND = new UserProfileImpl();
@@ -196,4 +198,12 @@
listener.postDelete(profile);
}
+ /**
+ * {@inheritDoc}
+ */
+ public List<UserProfileEventListener> getUserProfileListeners()
+ {
+ return Collections.unmodifiableList(listeners_);
+ }
+
}
Modified:
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/GroupDAOImpl.java
===================================================================
---
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/GroupDAOImpl.java 2010-04-28
08:06:14 UTC (rev 2333)
+++
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/GroupDAOImpl.java 2010-04-28
08:33:22 UTC (rev 2334)
@@ -23,11 +23,13 @@
import org.exoplatform.services.log.Log;
import org.exoplatform.services.organization.Group;
import org.exoplatform.services.organization.GroupEventListener;
+import org.exoplatform.services.organization.GroupEventListenerHandler;
import org.exoplatform.services.organization.GroupHandler;
import org.exoplatform.services.organization.impl.GroupImpl;
import java.util.ArrayList;
import java.util.Collection;
+import java.util.Collections;
import java.util.List;
import javax.naming.CompositeName;
@@ -50,7 +52,7 @@
*
* @version andrew00x $
*/
-public class GroupDAOImpl extends BaseDAO implements GroupHandler
+public class GroupDAOImpl extends BaseDAO implements GroupHandler,
GroupEventListenerHandler
{
/**
@@ -751,4 +753,12 @@
group.setId(parent.getId() + "/" + group.getGroupName());
group.setParentId(parent.getId());
}
+
+ /**
+ * {@inheritDoc}
+ */
+ public List<GroupEventListener> getGroupListeners()
+ {
+ return Collections.unmodifiableList(listeners);
+ }
}
Modified:
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/MembershipDAOImpl.java
===================================================================
---
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/MembershipDAOImpl.java 2010-04-28
08:06:14 UTC (rev 2333)
+++
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/MembershipDAOImpl.java 2010-04-28
08:33:22 UTC (rev 2334)
@@ -24,6 +24,7 @@
import org.exoplatform.services.organization.Group;
import org.exoplatform.services.organization.Membership;
import org.exoplatform.services.organization.MembershipEventListener;
+import org.exoplatform.services.organization.MembershipEventListenerHandler;
import org.exoplatform.services.organization.MembershipHandler;
import org.exoplatform.services.organization.MembershipType;
import org.exoplatform.services.organization.User;
@@ -31,6 +32,7 @@
import java.util.ArrayList;
import java.util.Collection;
+import java.util.Collections;
import java.util.List;
import javax.naming.InvalidNameException;
@@ -50,7 +52,7 @@
* Created by The eXo Platform SAS Author : Tuan Nguyen tuan08(a)users.sourceforge.net Oct
14, 2005. @version
* andrew00x $
*/
-public class MembershipDAOImpl extends BaseDAO implements MembershipHandler
+public class MembershipDAOImpl extends BaseDAO implements MembershipHandler,
MembershipEventListenerHandler
{
/**
@@ -720,4 +722,11 @@
listener.preSave(membership, isNew);
}
+ /**
+ * {@inheritDoc}
+ */
+ public List<MembershipEventListener> getMembershipListeners()
+ {
+ return Collections.unmodifiableList(listeners);
+ }
}
Modified:
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserDAOImpl.java
===================================================================
---
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserDAOImpl.java 2010-04-28
08:06:14 UTC (rev 2333)
+++
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserDAOImpl.java 2010-04-28
08:33:22 UTC (rev 2334)
@@ -25,6 +25,7 @@
import org.exoplatform.services.organization.impl.UserImpl;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.List;
import javax.naming.NamingException;
@@ -38,7 +39,7 @@
* Created by The eXo Platform SAS Author : Tuan Nguyen
* tuan08(a)users.sourceforge.net Oct 14, 2005. @version andrew00x $
*/
-public class UserDAOImpl extends BaseDAO implements UserHandler
+public class UserDAOImpl extends BaseDAO implements UserHandler,
UserEventListenerHandler
{
/**
@@ -561,4 +562,12 @@
for (UserEventListener listener : listeners)
listener.postDelete(user);
}
+
+ /**
+ * {@inheritDoc}
+ */
+ public List<UserEventListener> getUserListeners()
+ {
+ return Collections.unmodifiableList(listeners);
+ }
}
Modified:
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserProfileDAOImpl.java
===================================================================
---
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserProfileDAOImpl.java 2010-04-28
08:06:14 UTC (rev 2333)
+++
core/trunk/exo.core.component.organization.ldap/src/main/java/org/exoplatform/services/organization/ldap/UserProfileDAOImpl.java 2010-04-28
08:33:22 UTC (rev 2334)
@@ -23,12 +23,14 @@
import org.exoplatform.services.log.Log;
import org.exoplatform.services.organization.UserProfile;
import org.exoplatform.services.organization.UserProfileEventListener;
+import org.exoplatform.services.organization.UserProfileEventListenerHandler;
import org.exoplatform.services.organization.UserProfileHandler;
import org.exoplatform.services.organization.impl.UserProfileData;
import org.exoplatform.services.organization.impl.UserProfileImpl;
import java.util.ArrayList;
import java.util.Collection;
+import java.util.Collections;
import java.util.List;
import javax.naming.NameNotFoundException;
@@ -44,7 +46,7 @@
* Created by The eXo Platform SAS Author : Tuan Nguyen
* tuan08(a)users.sourceforge.net Oct 14, 2005. @version andrew00x $
*/
-public class UserProfileDAOImpl extends BaseDAO implements UserProfileHandler
+public class UserProfileDAOImpl extends BaseDAO implements UserProfileHandler,
UserProfileEventListenerHandler
{
/**
@@ -264,4 +266,12 @@
listeners.add(listener);
}
+ /**
+ * {@inheritDoc}
+ */
+ public List<UserProfileEventListener> getUserProfileListeners()
+ {
+ return Collections.unmodifiableList(listeners);
+ }
+
}