Skip to content

Commit b388f54

Browse files
committed
Bug #14595
Adds specific lifecycle CDI stereotype to some beans in order to be able, in the futur, to enable the management of the beans by CDI for only those being annotated with CDI stereotype annotations. Provide another solution to the fix of the bug based upon the system event notification mechanism. In ResourcesManager component: - Add listeners of events related to the remove (directly or not) of users from the Manager profile instance (role name 'responsable'). - Add listeners of events related to the remove of a user from a group that is declared in the Manager profile (role name 'responsable'). - To allow to update the validators list of the resources managed by the component according to the events received by the listeners, the ResourceRepository and the ResourceService classes have been updated. - Add integration tests to ensure the listeners work correctly.
1 parent f39ba95 commit b388f54

File tree

37 files changed

+1672
-120
lines changed

37 files changed

+1672
-120
lines changed

almanach/almanach-library/src/main/java/org/silverpeas/components/almanach/AlmanachInstancePreDestruction.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,9 @@
2424
package org.silverpeas.components.almanach;
2525

2626
import org.silverpeas.core.admin.component.ComponentInstancePreDestruction;
27+
import org.silverpeas.core.annotation.Bean;
2728
import org.silverpeas.core.calendar.Calendar;
29+
import org.silverpeas.kernel.annotation.Technical;
2830

2931
import javax.inject.Named;
3032
import javax.transaction.Transactional;
@@ -34,6 +36,8 @@
3436
* Before being deleted, remove all events in an almanach instance.
3537
* @author mmoquillon
3638
*/
39+
@Technical
40+
@Bean
3741
@Named
3842
public class AlmanachInstancePreDestruction implements ComponentInstancePreDestruction {
3943

classifieds/classifieds-library/src/main/java/org/silverpeas/components/classifieds/ClassifiedsInstancePreDestruction.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,12 @@
2323
*/
2424
package org.silverpeas.components.classifieds;
2525

26+
import org.silverpeas.core.annotation.Bean;
2627
import org.silverpeas.kernel.SilverpeasRuntimeException;
2728
import org.silverpeas.core.admin.component.ComponentInstancePreDestruction;
2829
import org.silverpeas.components.classifieds.service.ClassifiedService;
2930
import org.silverpeas.components.classifieds.service.ClassifiedServiceProvider;
31+
import org.silverpeas.kernel.annotation.Technical;
3032

3133
import javax.inject.Named;
3234
import javax.transaction.Transactional;
@@ -35,6 +37,8 @@
3537
* Deletes all the subscriptions and classifieds of the Classifieds instance that is being deleted.
3638
* @author mmoquillon
3739
*/
40+
@Technical
41+
@Bean
3842
@Named
3943
public class ClassifiedsInstancePreDestruction implements ComponentInstancePreDestruction {
4044
/**

community/community-library/src/main/java/org/silverpeas/components/community/CommunityInstancePreDestruction.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
import org.silverpeas.core.annotation.Bean;
3131
import org.silverpeas.core.contribution.model.WysiwygContent;
3232
import org.silverpeas.core.notification.system.ResourceEvent;
33+
import org.silverpeas.kernel.annotation.Technical;
3334

3435
import javax.inject.Inject;
3536
import javax.inject.Named;
@@ -39,6 +40,7 @@
3940
/**
4041
* Wipe out for the spawned community instance the resources that were allocated to him.
4142
*/
43+
@Technical
4244
@Bean
4345
@Named
4446
public class CommunityInstancePreDestruction implements ComponentInstancePreDestruction {

dataWarning/dataWarning-library/src/main/java/org/silverpeas/components/datawarning/DataWarningInstancePreDestruction.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,11 @@
2323
*/
2424
package org.silverpeas.components.datawarning;
2525

26-
import org.silverpeas.core.annotation.Service;
27-
import org.silverpeas.kernel.SilverpeasRuntimeException;
28-
import org.silverpeas.core.admin.component.ComponentInstancePreDestruction;
2926
import org.silverpeas.components.datawarning.model.DataWarningDataManager;
27+
import org.silverpeas.core.admin.component.ComponentInstancePreDestruction;
28+
import org.silverpeas.core.annotation.Bean;
29+
import org.silverpeas.kernel.SilverpeasRuntimeException;
30+
import org.silverpeas.kernel.annotation.Technical;
3031

3132
import javax.inject.Named;
3233
import javax.transaction.Transactional;
@@ -36,7 +37,8 @@
3637
* used by the instance.
3738
* @author mmoquillon
3839
*/
39-
@Service
40+
@Technical
41+
@Bean
4042
@Named
4143
public class DataWarningInstancePreDestruction implements ComponentInstancePreDestruction {
4244
/**

formsOnline/formsOnline-library/src/main/java/org/silverpeas/components/formsonline/FormsOnlineInstancePreDestruction.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,11 @@
2323
*/
2424
package org.silverpeas.components.formsonline;
2525

26-
import org.silverpeas.kernel.SilverpeasRuntimeException;
2726
import org.silverpeas.core.admin.component.ComponentInstancePreDestruction;
27+
import org.silverpeas.core.annotation.Bean;
2828
import org.silverpeas.core.persistence.jdbc.DBUtil;
29+
import org.silverpeas.kernel.SilverpeasRuntimeException;
30+
import org.silverpeas.kernel.annotation.Technical;
2931

3032
import javax.inject.Named;
3133
import javax.transaction.Transactional;
@@ -39,6 +41,8 @@
3941
* were managed by this instance.
4042
* @author mmoquillon
4143
*/
44+
@Technical
45+
@Bean
4246
@Named
4347
public class FormsOnlineInstancePreDestruction implements ComponentInstancePreDestruction {
4448

forums/forums-library/src/main/java/org/silverpeas/components/forums/ForumsInstancePreDestruction.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@
2525

2626
import org.silverpeas.core.admin.component.ComponentInstancePreDestruction;
2727
import org.silverpeas.components.forums.service.ForumService;
28+
import org.silverpeas.core.annotation.Bean;
29+
import org.silverpeas.kernel.annotation.Technical;
2830

2931
import javax.inject.Inject;
3032
import javax.inject.Named;
@@ -35,6 +37,8 @@
3537
* deleted.
3638
* @author mmoquillon
3739
*/
40+
@Technical
41+
@Bean
3842
@Named
3943
public class ForumsInstancePreDestruction implements ComponentInstancePreDestruction {
4044

gallery/gallery-library/src/main/java/org/silverpeas/components/gallery/GalleryInstancePreDestruction.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,11 @@
33
import org.silverpeas.core.admin.component.ComponentInstancePreDestruction;
44
import org.silverpeas.components.gallery.service.MediaServiceProvider;
55
import org.silverpeas.core.admin.user.model.UserDetail;
6+
import org.silverpeas.core.annotation.Bean;
67
import org.silverpeas.core.node.model.NodePK;
78
import org.silverpeas.core.util.file.FileRepositoryManager;
89
import org.silverpeas.core.util.file.FileUtil;
10+
import org.silverpeas.kernel.annotation.Technical;
911

1012
import javax.inject.Named;
1113
import javax.transaction.Transactional;
@@ -14,6 +16,8 @@
1416
/**
1517
* @author Yohann Chastagnier
1618
*/
19+
@Technical
20+
@Bean
1721
@Named
1822
public class GalleryInstancePreDestruction implements ComponentInstancePreDestruction {
1923

infoLetter/infoLetter-library/src/main/java/org/silverpeas/components/infoletter/InfoLetterInstancePreDestruction.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@
2525

2626
import org.silverpeas.core.admin.component.ComponentInstancePreDestruction;
2727
import org.silverpeas.components.infoletter.model.InfoLetterService;
28+
import org.silverpeas.core.annotation.Bean;
29+
import org.silverpeas.kernel.annotation.Technical;
2830

2931
import javax.inject.Inject;
3032
import javax.inject.Named;
@@ -35,6 +37,8 @@
3537
* being deleted.
3638
* @author mmoquillon
3739
*/
40+
@Technical
41+
@Bean
3842
@Named
3943
public class InfoLetterInstancePreDestruction implements ComponentInstancePreDestruction {
4044

jdbcConnector/jdbcConnector-library/src/main/java/org/silverpeas/components/jdbcconnector/ConnecteurJDBCInstancePreDestruction.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@
2525

2626
import org.silverpeas.core.admin.component.ComponentInstancePreDestruction;
2727
import org.silverpeas.components.jdbcconnector.model.DataSourceConnectionInfo;
28+
import org.silverpeas.core.annotation.Bean;
29+
import org.silverpeas.kernel.annotation.Technical;
2830

2931
import javax.inject.Named;
3032
import javax.transaction.Transactional;
@@ -34,6 +36,8 @@
3436
* deleted.
3537
* @author mmoquillon
3638
*/
39+
@Technical
40+
@Bean
3741
@Named
3842
public class ConnecteurJDBCInstancePreDestruction implements ComponentInstancePreDestruction {
3943

mailinglist/mailinglist-library/src/main/java/org/silverpeas/components/mailinglist/MailinglistInstancePreDestruction.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@
2525

2626
import org.silverpeas.core.admin.component.ComponentInstancePreDestruction;
2727
import org.silverpeas.components.mailinglist.service.MailingListServicesProvider;
28+
import org.silverpeas.core.annotation.Bean;
29+
import org.silverpeas.kernel.annotation.Technical;
2830

2931
import javax.inject.Named;
3032
import javax.transaction.Transactional;
@@ -34,6 +36,8 @@
3436
* MailingList instance that is being deleted.
3537
* @author mmoquillon
3638
*/
39+
@Technical
40+
@Bean
3741
@Named
3842
public class MailinglistInstancePreDestruction implements ComponentInstancePreDestruction {
3943

mydb/mydb-library/src/main/java/org/silverpeas/components/mydb/MyDBInstancePreDestruction.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import org.silverpeas.components.mydb.model.MyDBConnectionInfo;
2727
import org.silverpeas.core.admin.component.ComponentInstancePreDestruction;
2828
import org.silverpeas.core.annotation.Bean;
29+
import org.silverpeas.kernel.annotation.Technical;
2930

3031
import javax.inject.Named;
3132
import javax.transaction.Transactional;
@@ -35,6 +36,7 @@
3536
* deleted.
3637
* @author mmoquillon
3738
*/
39+
@Technical
3840
@Named
3941
@Bean
4042
public class MyDBInstancePreDestruction implements ComponentInstancePreDestruction {

processManager/processManager-library/src/main/java/org/silverpeas/processmanager/ProcessManagerInstancePreDestruction.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,14 @@
2323
*/
2424
package org.silverpeas.processmanager;
2525

26+
import org.silverpeas.core.annotation.Bean;
2627
import org.silverpeas.kernel.SilverpeasRuntimeException;
2728
import org.silverpeas.core.admin.component.ComponentInstancePreDestruction;
2829
import org.silverpeas.core.workflow.api.UpdatableProcessInstanceManager;
2930
import org.silverpeas.core.workflow.api.Workflow;
3031
import org.silverpeas.core.workflow.api.WorkflowException;
3132
import org.silverpeas.core.workflow.api.instance.ProcessInstance;
33+
import org.silverpeas.kernel.annotation.Technical;
3234

3335
import javax.inject.Named;
3436
import java.util.List;
@@ -41,6 +43,8 @@
4143
* deleted.
4244
* @author mmoquillon
4345
*/
46+
@Technical
47+
@Bean
4448
@Named(WORKFLOW_PRE_DESTRUCTION)
4549
public class ProcessManagerInstancePreDestruction implements ComponentInstancePreDestruction {
4650

projectManager/projectManager-library/src/main/java/org/silverpeas/components/projectmanager/ProjectManagerInstancePreDestruction.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,12 @@
2323
*/
2424
package org.silverpeas.components.projectmanager;
2525

26-
import org.silverpeas.core.admin.component.ComponentInstancePreDestruction;
2726
import org.silverpeas.components.projectmanager.model.ProjectManagerCalendarDAO;
2827
import org.silverpeas.components.projectmanager.model.ProjectManagerDAO;
28+
import org.silverpeas.core.admin.component.ComponentInstancePreDestruction;
29+
import org.silverpeas.core.annotation.Bean;
2930
import org.silverpeas.core.persistence.jdbc.DBUtil;
31+
import org.silverpeas.kernel.annotation.Technical;
3032

3133
import javax.inject.Named;
3234
import javax.transaction.Transactional;
@@ -38,6 +40,8 @@
3840
* the ProjectManager that is being deleted.
3941
* @author mmoquillon
4042
*/
43+
@Technical
44+
@Bean
4145
@Named
4246
public class ProjectManagerInstancePreDestruction implements ComponentInstancePreDestruction {
4347
/**

questionReply/questionReply-library/src/main/java/org/silverpeas/components/questionreply/QuestionReplyInstancePreDestruction.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,9 @@
2424
package org.silverpeas.components.questionreply;
2525

2626
import org.silverpeas.core.admin.component.ComponentInstancePreDestruction;
27+
import org.silverpeas.core.annotation.Bean;
2728
import org.silverpeas.core.persistence.jdbc.DBUtil;
29+
import org.silverpeas.kernel.annotation.Technical;
2830

2931
import javax.inject.Named;
3032
import javax.transaction.Transactional;
@@ -37,6 +39,8 @@
3739
* is being deleted.
3840
* @author mmoquillon
3941
*/
42+
@Technical
43+
@Bean
4044
@Named
4145
public class QuestionReplyInstancePreDestruction implements ComponentInstancePreDestruction {
4246

quickinfo/quickinfo-library/src/main/java/org/silverpeas/components/quickinfo/QuickinfoInstancePreDestruction.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@
2525

2626
import org.silverpeas.core.admin.component.ComponentInstancePreDestruction;
2727
import org.silverpeas.components.quickinfo.repository.NewsRepository;
28+
import org.silverpeas.core.annotation.Bean;
29+
import org.silverpeas.kernel.annotation.Technical;
2830

2931
import javax.inject.Inject;
3032
import javax.inject.Named;
@@ -34,6 +36,8 @@
3436
* Deletes the data associated with the Quickinfo instance that is being deleted.
3537
* @author Yohann Chastagnier
3638
*/
39+
@Technical
40+
@Bean
3741
@Named
3842
public class QuickinfoInstancePreDestruction implements ComponentInstancePreDestruction {
3943

0 commit comments

Comments
 (0)