1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.ole.select.service.impl;
17
18 import org.kuali.ole.select.businessobject.BibInfoBean;
19 import org.kuali.ole.select.service.BibInfoService;
20 import org.kuali.ole.select.service.BibInfoWrapperService;
21 import org.kuali.ole.sys.context.SpringContext;
22
23 import java.util.ArrayList;
24 import java.util.HashMap;
25 import java.util.List;
26 import java.util.Map;
27
28 public class BibInfoWrapperServiceImpl implements BibInfoWrapperService {
29
30 private static org.apache.log4j.Logger LOG = org.apache.log4j.Logger.getLogger(BibInfoWrapperServiceImpl.class);
31 protected BibInfoService bibInfoService;
32
33 @Override
34 public boolean isBibInfoExists(BibInfoBean bibInfoBean) throws Exception {
35 HashMap map = convertBibInfoBeanToMap(bibInfoBean);
36 boolean isExists = bibInfoService.isExists(map);
37
38 return isExists;
39 }
40
41 @Override
42 public String insertBibInfo(BibInfoBean bibInfoBean) throws Exception {
43 LOG.debug("###########inside BibInfoWrapperServiceImpl insertBibInfo###########");
44 String titleId = bibInfoService.save(bibInfoBean);
45 return titleId;
46 }
47
48 @Override
49 public String insertBibInfo(BibInfoBean bibInfoBean, HashMap dataMap) throws Exception {
50 LOG.debug("###########inside BibInfoWrapperServiceImpl insertBibInfo###########");
51 String titleId = bibInfoService.save(bibInfoBean, dataMap);
52 return titleId;
53 }
54
55 @Override
56 public BibInfoBean getBibInfo(HashMap<String, String> dataMap) throws Exception {
57 BibInfoBean bibInfoBean = bibInfoService.retrieveFromDocStore(dataMap);
58 return bibInfoBean;
59 }
60
61 @Override
62 public List<String> searchBibInfo(BibInfoBean bibInfoBean, int noOfRecords) throws Exception {
63 HashMap map = convertBibInfoBeanToMap(bibInfoBean);
64 List<BibInfoBean> bibInfoList = bibInfoService.search(map, noOfRecords);
65 List<String> titleIdList = new ArrayList<String>();
66 for (int i = 0; i < bibInfoList.size(); i++) {
67 titleIdList.add(bibInfoList.get(i).getTitleId());
68 }
69 return titleIdList;
70 }
71
72 @Override
73 public String getDocStoreResponse(HashMap<String, String> dataMap) throws Exception {
74 return bibInfoService.getDocStoreResponse(dataMap);
75 }
76
77 @Override
78 public List searchBibInfo(Map map) throws Exception {
79 return bibInfoService.search(map);
80 }
81
82 @Override
83 public List<BibInfoBean> searchBibInfo(BibInfoBean bibInfoBean) throws Exception {
84 return bibInfoService.searchBibInfo(bibInfoBean);
85 }
86
87 @Override
88 public String generateXMLStringForIngest(BibInfoBean bibInfoBean, HashMap dataMap) throws Exception {
89 return bibInfoService.generateXMLStringForIngest(bibInfoBean, dataMap);
90 }
91
92 @Override
93 public String getDocSearchResponse(BibInfoBean bibInfoBean) throws Exception {
94 return bibInfoService.getDocSearchResponse(bibInfoBean);
95 }
96
97 @Override
98 public String getTitleIdByMarcXMLFileProcessing(BibInfoBean bibInfoBean, HashMap<String, String> dataMap) throws Exception {
99 return bibInfoService.getTitleIdByMarcXMLFileProcessing(bibInfoBean, dataMap);
100 }
101
102 private HashMap convertBibInfoBeanToMap(BibInfoBean bibInfoBean) {
103 HashMap map = new HashMap<String, String>();
104 if (bibInfoBean.getTitleId() != null) {
105 map.put("titleId", bibInfoBean.getTitleId());
106 }
107 if (bibInfoBean.getTitle() != null) {
108 map.put("title", bibInfoBean.getTitle());
109 }
110 if (bibInfoBean.getAuthor() != null) {
111 map.put("author", bibInfoBean.getAuthor());
112 }
113 if (bibInfoBean.getPublisher() != null) {
114 map.put("publisher", bibInfoBean.getPublisher());
115 }
116 if (bibInfoBean.getSubjects() != null) {
117 map.put("subjects", bibInfoBean.getSubjects());
118 }
119 if (bibInfoBean.getCategory() != null) {
120 map.put("category", bibInfoBean.getCategory());
121 }
122 if (bibInfoBean.getPlaceOfPublication() != null) {
123 map.put("placeOfPublication", bibInfoBean.getPlaceOfPublication());
124 }
125 if (bibInfoBean.getYearOfPublication() != null) {
126 map.put("yearOfPublication", bibInfoBean.getYearOfPublication());
127 }
128 if (bibInfoBean.getStandardNumber() != null) {
129 map.put("standardNumber", bibInfoBean.getStandardNumber());
130 }
131 return map;
132 }
133
134 @Override
135 public boolean isDuplicateRecord(BibInfoBean bibInfoBean) throws Exception {
136 boolean isExists = bibInfoService.isDuplicateRecord(bibInfoBean);
137 return isExists;
138 }
139
140 public BibInfoService getBibInfoService() {
141 if (bibInfoService == null) {
142 bibInfoService = SpringContext.getBean(BibInfoService.class);
143 }
144 return bibInfoService;
145 }
146
147 public void setBibInfoService(BibInfoService bibInfoService) {
148 this.bibInfoService = bibInfoService;
149 }
150 }