1   
2   
3   
4   
5   
6   
7   
8   
9   
10  
11  
12  
13  
14  
15  
16  package org.kuali.ole.sys.service.impl;
17  
18  
19  import org.kuali.ole.sys.businessobject.SystemOptions;
20  import org.kuali.ole.sys.context.SpringContext;
21  import org.kuali.ole.sys.service.NonTransactional;
22  import org.kuali.ole.sys.service.OptionsService;
23  import org.kuali.ole.sys.service.UniversityDateService;
24  import org.kuali.rice.krad.service.BusinessObjectService;
25  import org.springframework.cache.annotation.Cacheable;
26  
27  @NonTransactional
28  public class OptionsServiceImpl implements OptionsService {
29      protected UniversityDateService universityDateService;
30  
31      @Override
32      @Cacheable(value=SystemOptions.CACHE_NAME, key="'CurrentFY'")
33      public SystemOptions getCurrentYearOptions() {
34          Integer fy = universityDateService.getCurrentFiscalYear();
35          return SpringContext.getBean(BusinessObjectService.class).findBySinglePrimaryKey(SystemOptions.class, fy);
36      }
37  
38      @Override
39      @Cacheable(value=SystemOptions.CACHE_NAME, key="'universityFiscalYear='+#p0")
40      public SystemOptions getOptions(Integer universityFiscalYear) {
41          return SpringContext.getBean(BusinessObjectService.class).findBySinglePrimaryKey(SystemOptions.class, universityFiscalYear);
42      }
43  
44      public void setUniversityDateService(UniversityDateService universityDateService) {
45          this.universityDateService = universityDateService;
46      }
47  
48  
49  }