View Javadoc

1   /**
2    * Copyright 2005-2013 The Kuali Foundation
3    *
4    * Licensed under the Educational Community License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    * http://www.opensource.org/licenses/ecl2.php
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  package org.kuali.rice.ken.core;
17  
18  import org.kuali.rice.core.framework.persistence.dao.GenericDao;
19  import org.kuali.rice.ken.api.service.KENAPIService;
20  import org.kuali.rice.ken.service.NotificationAuthorizationService;
21  import org.kuali.rice.ken.service.NotificationChannelService;
22  import org.kuali.rice.ken.service.NotificationContentTypeService;
23  import org.kuali.rice.ken.service.NotificationMessageContentService;
24  import org.kuali.rice.ken.service.NotificationMessageDeliveryAutoRemovalService;
25  import org.kuali.rice.ken.service.NotificationMessageDeliveryResolverService;
26  import org.kuali.rice.ken.service.NotificationMessageDeliveryService;
27  import org.kuali.rice.ken.service.NotificationRecipientService;
28  import org.kuali.rice.ken.service.NotificationService;
29  import org.kuali.rice.ken.service.NotificationWorkflowDocumentService;
30  import org.kuali.rice.ken.service.UserPreferenceService;
31  import org.quartz.Scheduler;
32  
33  /**
34   * Interface for obtaining Notification System services
35   * @author Kuali Rice Team (rice.collab@kuali.org)
36   */
37  public interface NotificationServiceLocator {
38      /**
39       * This method returns an instance of the Spring configured impl for the KENAPIService.
40       * @return KENAPIService
41       */
42      public KENAPIService getKENAPIService();
43  
44      /**
45       * This method returns an instance of the Spring configured impl for the NotificationService.
46       * @return NotificationService
47       */
48      public NotificationService getNotificationService();
49  
50      /**
51       * This method returns an instance of the Spring configured impl for the NotificationContentTypeService.
52       * @return NotificationContentTypeService
53       */
54      public NotificationContentTypeService getNotificationContentTypeService();
55  
56      /**
57       * This method returns an instance of the Spring configured impl for the NotificationMessageContentService.
58       * @return NotificationMessageContentService
59       */
60      public NotificationMessageContentService getNotificationMessageContentService();
61      
62      /**
63       * This method returns an instance of the Spring configured impl for the BusinessObjectDao.
64       * @return GenericDao
65       */
66      public GenericDao getGenericDao();
67      
68      /**
69       * This method returns an instance of the Spring configured impl for the NotificationAuthorizationService.
70       * @return NotificationAuthorizationService
71       */
72      public NotificationAuthorizationService getNotificationAuthorizationService();
73      
74      /**
75       * This method returns an instance of the Spring configured impl for the NotificationWorkflowDocumentService.
76       * @return NotificationWorkflowDocumentService
77       */
78      public NotificationWorkflowDocumentService getNotificationWorkflowDocumentService();
79      
80      /**
81       * This method returns an instance of the Spring configured impl for the NotificationMessageDeliveryAutoRemovalService.
82       * @return NotificationMessageDeliveryAutoRemovalService
83       */
84      public NotificationMessageDeliveryAutoRemovalService getNotificationMessageDeliveryAutoRemovalService();
85  
86      /**
87       * This method returns an instance of the Spring configured impl for the getNotificationMessageDeliveryResolverService.
88       * @return NotificationMessageDeliveryResolverService
89       */
90      public NotificationMessageDeliveryResolverService getNotificationMessageDeliveryResolverService();
91      
92      /**
93       * This method returns an instance of the Spring configured impl for the NotificationRecipientService.
94       * @return NotificationRecipientService
95       */
96      public NotificationRecipientService getNotificationRecipientService();
97      
98      /**
99       * This method returns an instance of the Spring configured impl for the NotificationMessageDeliveryService.
100      * @return NotificationMessageDeliveryService
101      */
102     public NotificationMessageDeliveryService getNotificationMessageDeliveryService();
103     
104     /**
105      * This method returns an instance of the Spring configured impl for the UserPreferenceService.
106      * @return UserPreferenceService
107      */
108     public UserPreferenceService getUserPreferenceService();
109     
110     /**
111      * This method returns an instance of the Spring configured impl for the NotificationChannelService.
112      * @return NotificationChannelService
113      */
114     public NotificationChannelService getNotificationChannelService();
115     
116     /**
117      * Returns the Quartz scheduler used by the Notification system
118      * @return the Quartz scheduler used by the Notification system
119      */
120     public Scheduler getScheduler();
121 }