View Javadoc
1   package org.kuali.ole.select.document;
2   
3   import org.joda.time.DateTime;
4   import org.kuali.ole.OLEConstants;
5   import org.kuali.ole.alert.document.OleTransactionalDocumentBase;
6   import org.kuali.ole.describe.bo.OleStatisticalSearchingCodes;
7   import org.kuali.ole.docstore.common.client.DocstoreClientLocator;
8   import org.kuali.ole.docstore.common.document.EHoldings;
9   import org.kuali.ole.docstore.common.document.Holdings;
10  import org.kuali.ole.docstore.common.document.content.instance.Link;
11  import org.kuali.ole.docstore.common.document.content.instance.OleHoldings;
12  import org.kuali.ole.docstore.common.document.content.instance.xstream.HoldingOlemlRecordProcessor;
13  import org.kuali.ole.module.purap.businessobject.PurchaseOrderType;
14  import org.kuali.ole.select.bo.*;
15  import org.kuali.ole.select.businessobject.OleCopy;
16  import org.kuali.ole.select.form.OLEEResourceRecordForm;
17  import org.kuali.ole.service.OLEEResourceHelperService;
18  import org.kuali.ole.service.OLEEResourceSearchService;
19  import org.kuali.ole.sys.context.SpringContext;
20  import org.kuali.ole.vnd.businessobject.VendorDetail;
21  import org.kuali.rice.core.api.config.property.ConfigContext;
22  import org.kuali.rice.core.api.datetime.DateTimeService;
23  import org.kuali.rice.core.api.resourceloader.GlobalResourceLoader;
24  import org.kuali.rice.coreservice.api.CoreServiceApiServiceLocator;
25  import org.kuali.rice.coreservice.api.parameter.Parameter;
26  import org.kuali.rice.coreservice.api.parameter.ParameterKey;
27  import org.kuali.rice.kew.api.document.attribute.DocumentAttribute;
28  import org.kuali.rice.kew.api.document.search.DocumentSearchResult;
29  import org.kuali.rice.kew.routeheader.DocumentRouteHeaderValue;
30  import org.kuali.rice.krad.document.TransactionalDocumentBase;
31  import org.kuali.rice.krad.rules.rule.event.KualiDocumentEvent;
32  import org.kuali.rice.krad.service.BusinessObjectService;
33  import org.kuali.rice.krad.service.KRADServiceLocator;
34  import org.kuali.rice.krad.util.GlobalVariables;
35  import org.apache.commons.lang.StringUtils;
36  
37  import javax.servlet.http.HttpSession;
38  import java.lang.reflect.Method;
39  import java.math.BigDecimal;
40  import java.sql.Date;
41  import java.sql.Timestamp;
42  import java.text.ParseException;
43  import java.util.*;
44  
45  /**
46   * Created with IntelliJ IDEA.
47   * User: srinivasane
48   * Date: 6/21/13
49   * Time: 12:03 PM
50   * To change this template use File | Settings | File Templates.
51   */
52  public class OLEEResourceRecordDocument extends OleTransactionalDocumentBase {
53  
54      private static org.apache.log4j.Logger LOG = org.apache.log4j.Logger.getLogger(OLEEResourceRecordDocument.class);
55      private BusinessObjectService boService;
56      private OLEEResourceSearchService oleEResourceSearchService = null;
57      private OLEEResourceHelperService oleeResourceHelperService = null;
58      private String accessDescription;
59      private String oleERSIdentifier;
60      private String title;
61      private String oldTitle;
62      private String description;
63      private String publisher;
64      private String publisherId;
65      private boolean activePublisher;
66      private Integer gokbIdentifier;
67      private String isbn;
68      private String ISBN;
69      private String oclc;
70      private String platformProvider;
71      private String statusId;
72      private String statusName;
73      private String statusDate;
74      private String fundCode;
75      private String fundId;
76      /*private Integer vendorDetailAssignedIdentifier;
77      private Integer vendorHeaderGeneratedIdentifier;*/
78      private String vendorName;
79      private String vendorId;
80      private String vendorLink;
81      private boolean activeVendor;
82      private String estimatedPrice;
83      private BigDecimal orderTypeId;
84      private String paymentTypeId;
85      private String packageTypeId;
86      private String packageScopeId;
87      private boolean breakable;
88      private boolean fixedTitleList;
89      private String noteId;
90      private String publicDisplayNote;
91      private String reqSelComment;
92      private String reqPriority;
93      private String techRequirements;
94      private String accessTypeId;
95      private String accessType;
96      private String accessStatus;
97      private String numOfSimultaneousUsers;
98      private String authenticationTypeId;
99      private String authenticationType;
100     private String accessLocationId;
101     private List<String> accessLocation = new ArrayList<>();
102     private List<String> accessLocationName = new ArrayList<>();
103     private boolean trialNeeded;
104     private String trialStatus;
105     private boolean licenseNeeded;
106     private String licenseReqStatus;
107     private String orderPayStatus;
108     private String activationStatus;
109     private boolean selectFlag;
110     private Integer statisticalSearchingCodeId;
111     private String statisticalSearchingCode;
112     private String selectInstance;
113     private String defaultCoverage;
114     private String defaultCoverageView;
115     private String defaultPerpetualAccess;
116     private String defaultPerpetualAccessView;
117     private OLEEResourceInstance oleERSInstance;
118     private boolean eInstanceFlag;
119     private String dummyDefaultCoverage;
120     private String dummyDefaultPerpetualAccess;
121     private boolean isCovEdited = false;
122     private boolean isPerAccEdited = false;
123     private String covStartDate;
124     private String covEndDate;
125     private String perAccStartDate;
126     private String perAccEndDate;
127     private String gokbId ;
128     private String subscriptionStatus;
129     private Timestamp currentSubscriptionStartDate;
130     private Timestamp currentSubscriptionEndDate;
131     private Timestamp initialSubscriptionStartDate;
132     private Timestamp cancellationDecisionDate;
133     private Timestamp cancellationEffectiveDate;
134     private String cancellationReason;
135     private boolean cancellationCandidate;
136     private boolean renewalAlertEnabled;
137     private String renewalNoticePeriod;
138     private String recipientId;
139     private String eresourceWorkflowIndication;
140     private String relationshipType;
141     private int activeTitlesCount;
142 
143     private OLEAccessType oleAccessType;
144     private OLEPackageScope olePackageScope;
145     private OLEPackageType olePackageType;
146     private OLEPaymentType olePaymentType;
147     private OLERequestPriority oleRequestPriority;
148     private OLEAuthenticationType oleAuthenticationType;
149     private OleStatisticalSearchingCodes oleStatisticalCode;
150     private OLEEResourceStatus oleeResourceStatus;
151     private VendorDetail vendorDetail;
152     private PurchaseOrderType orderType;
153 
154     private List<OLEMaterialTypeList> oleMaterialTypes = new ArrayList<OLEMaterialTypeList>();
155     private List<OLEContentTypes> oleContentTypes = new ArrayList<OLEContentTypes>();
156     private List<OLEFormatTypeList> oleFormatTypes = new ArrayList<OLEFormatTypeList>();
157     private List<OLEEResourceNotes> eresNotes = new ArrayList<OLEEResourceNotes>();
158     private List<OLEGOKbMappingValue> oleGOKbMappingValueList = new ArrayList<OLEGOKbMappingValue>();
159     private List<OLEPlatformAdminUrl> olePlatformAdminUrlList = new ArrayList<OLEPlatformAdminUrl>();
160     private List<OLEEResourceRequestor> requestors = new ArrayList<OLEEResourceRequestor>();
161     private List<OLEEResourceSelector> selectors = new ArrayList<OLEEResourceSelector>();
162     private List<OLEEResourceReqSelComments> reqSelComments = new ArrayList<OLEEResourceReqSelComments>();
163     private List<OLEEResourceVariantTitle> oleEResourceVariantTitleList = new ArrayList<OLEEResourceVariantTitle>();
164     private List<OLEEResourceEventLog> oleERSEventLogs = new ArrayList<OLEEResourceEventLog>();
165     private List<OLEEResourceEventLog> filterEventLogs = new ArrayList<>();
166     private List<OLEEResourceLicense> oleERSLicenseRequests = new ArrayList<OLEEResourceLicense>();
167     private List<OLEEResourceInstance> oleERSInstances = new ArrayList<OLEEResourceInstance>();
168     private List<OLEEResourceInstance> oleERSInstancesForSave = new ArrayList<>();
169     private List<OLEEResourceInstance> oleERSInstancesForDelete = new ArrayList<>();
170     private List<OLEEResourceInstance> eRSInstances = new ArrayList<OLEEResourceInstance>();
171     private List<OLEEResourceInstance> deletedInstances = new ArrayList<OLEEResourceInstance>();
172     private List<OLEEResourceInstance> purchaseOrderInstances = new ArrayList<OLEEResourceInstance>();
173     private List<OLEEResourceInvoices> oleERSInvoices = new ArrayList<>();
174     private List<OLEEResourceInvoices> eRSInvoices = new ArrayList<>();
175     private List<OLEEResourceContacts> oleERSContacts = new ArrayList<OLEEResourceContacts>();
176     private List<OLEEResourceChangeDashBoard> oleEResourceChangeDashBoards=  new ArrayList<>();
177     private List<OLELinkedEresource> oleLinkedEresources=  new ArrayList<>();
178     private List<OleCopy> copyList = new ArrayList<>();
179     private List<OLEEResourcePO> oleERSPOItems = new ArrayList<>();
180     private List<OLEEResourcePO> linkedERSPOItems = new ArrayList<>();
181     private List<OLEEResourceAccountingLine> accountingLines = new ArrayList<>();
182     private OLEEResourceRecordForm form;
183     private String status=null;
184     private String gokbconfig;
185     private String removeOrRelinkToParent;
186     private DocstoreClientLocator docstoreClientLocator;
187     private String phone;
188     private double fiscalYearCost;
189     private double yearPriceQuote;
190     private double costIncrease;
191     private double percentageIncrease;
192     private String emailText;
193     private Integer gokbPackageId;
194 
195     private List<OLEPhoneNumber> phoneNos = new ArrayList<>();
196     public boolean selectEResFlag;
197     private List<OLEStandardIdentifier> standardIdentifiers = new ArrayList<>();
198     private List<OLEGOKbPackage> goKbPackageList = new ArrayList<>();
199     private List<OLEGOKbPlatform> goKbPlatformList = new ArrayList<>();
200     private List<OLEGOKbPlatform> goKbPlatforms = new ArrayList<>();
201     private List<OLEGOKbTIPP> goKbTIPPList = new ArrayList<>();
202     private String profile;
203     private String gokbProfile;
204     private String gokbPackageStatus = "";
205 
206     private Timestamp dateAccessConfirmed;
207     private String accessUserName;
208     private String accessPassword;
209     private String proxiedURL;
210     private boolean proxiedResource;
211     private String mobileAccessId;
212     private List<String> mobileAccess = new ArrayList<>();
213     private String mobileAccessNote;
214     private boolean brandingComplete;
215     private boolean platformConfigComplete;
216     private String marcRecordSourceTypeId;
217     private Timestamp lastRecordLoadDate;
218     private String marcRecordSource;
219     private String marcRecordUpdateFreqId;
220     private String marcRecordURL;
221     private String marcRecordUserName;
222     private String marcRecordPasword;
223     private String marcRecordNote;
224     private List<OLEEResourceAccessWorkflow> oleERSAccessWorkflows = new ArrayList<>();
225     private DateTimeService dateTimeService;
226     private String lineActions;
227     private String bannerMessage;
228     private Timestamp gokbLastUpdatedDate;
229     private String workflowConfigurationId;
230     private String oleAccessActivationDocumentNumber;
231     private List<OLEGOKbPlatform> selectedGoKbPlatforms = new ArrayList<>();
232     private boolean accessReadOnly = false;
233 
234     public List<OLEGOKbPlatform> getSelectedGoKbPlatforms() {
235         return selectedGoKbPlatforms;
236     }
237 
238     private boolean singlePlatform=true;
239     private Integer singlePaltformId;
240     private String workflowStatus;
241 
242     private String publisherLink;
243 
244     private boolean saveValidationFlag;
245 
246     public String getWorkflowStatus() {
247         return workflowStatus;
248     }
249 
250     public void setWorkflowStatus(String workflowStatus) {
251         this.workflowStatus = workflowStatus;
252     }
253 
254     public boolean isSinglePlatform() {
255         return singlePlatform;
256     }
257 
258     public void setSinglePlatform(boolean singlePlatform) {
259         this.singlePlatform = singlePlatform;
260     }
261 
262     public Integer getSinglePaltformId() {
263         return singlePaltformId;
264     }
265 
266     public void setSinglePaltformId(Integer singlePaltformId) {
267         this.singlePaltformId = singlePaltformId;
268     }
269 
270     public void setSelectedGoKbPlatforms(List<OLEGOKbPlatform> selectedGoKbPlatforms) {
271         this.selectedGoKbPlatforms = selectedGoKbPlatforms;
272     }
273 
274     public BusinessObjectService getBoService() {
275         if(null == boService){
276             boService = KRADServiceLocator.getBusinessObjectService();
277         }
278         return boService;
279     }
280 
281     public Integer getGokbPackageId() {
282         return gokbPackageId;
283     }
284 
285     public void setGokbPackageId(Integer gokbPackageId) {
286         this.gokbPackageId = gokbPackageId;
287     }
288 
289     public void setBoService(BusinessObjectService boService) {
290         this.boService = boService;
291     }
292 
293     public DateTimeService getDateTimeService() {
294         return (DateTimeService)SpringContext.getService("dateTimeService");
295     }
296 
297     public DocstoreClientLocator getDocstoreClientLocator() {
298 
299         if (docstoreClientLocator == null) {
300             docstoreClientLocator = SpringContext.getBean(DocstoreClientLocator.class);
301         }
302         return docstoreClientLocator;
303     }
304 
305     public OLEEResourceHelperService getOleeResourceHelperService() {
306         if(oleeResourceHelperService == null) {
307             oleeResourceHelperService = new OLEEResourceHelperService();
308         }
309         return oleeResourceHelperService;
310     }
311 
312 
313     public OLEEResourceRecordDocument() {
314         getOleMaterialTypes().add(new OLEMaterialTypeList());
315         getOleFormatTypes().add(new OLEFormatTypeList());
316         getOleContentTypes().add(new OLEContentTypes());
317         getRequestors().add(new OLEEResourceRequestor());
318         getSelectors().add(new OLEEResourceSelector());
319         getReqSelComments().add(new OLEEResourceReqSelComments());
320         getOleEResourceVariantTitleList().add(new OLEEResourceVariantTitle());
321         getEresNotes().add(new OLEEResourceNotes());
322         getStandardIdentifiers().add(new OLEStandardIdentifier());
323     }
324 
325 
326 //   private String getMask()
327 //    {
328 //        return "******";
329 //    }
330 
331 
332     public List<OLEPlatformAdminUrl> getOlePlatformAdminUrlList() {
333 
334 //        if (this.olePlatformAdminUrlList.isEmpty())
335 //        {
336 //        OLEPlatformAdminUrl olePlatformAdminUrl = new OLEPlatformAdminUrl(),
337 //        olePlatformAdminUrl1 = new OLEPlatformAdminUrl(),
338 //        olePlatformAdminUrl2 = new OLEPlatformAdminUrl(),
339 //        olePlatformAdminUrl3 = new OLEPlatformAdminUrl();
340 //        OLEPlatformRecordDocument olePlatformRecordDocument = new OLEPlatformRecordDocument();
341 //
342 //        olePlatformRecordDocument.setName("Science Direct");
343 //        olePlatformAdminUrl.setOlePlatformRecordDocument(olePlatformRecordDocument);
344 //        olePlatformAdminUrl.setUrl("http://www.sciencedirect.com/");
345 //        olePlatformAdminUrl.setNote("Elsevier B.V. except certain content provided by third parties. ScienceDirect® is a registered trademark of Elsevier B.V.");
346 //        olePlatformAdminUrl.setUserName("root");
347 //        olePlatformAdminUrl.setTypeId("ADMIN");
348 //            olePlatformAdminUrl.setUserName(olePlatformAdminUrl.getUserName());
349 //            if (getParameter(OLEConstants.OLEEResourceRecord.MASK_PASSWORD).equalsIgnoreCase("Y"))
350 //            {
351 //                olePlatformAdminUrl.setPassword(getMask());
352 //            }
353 //            else
354 //            {
355 //                olePlatformAdminUrl.setPassword("89432hd");
356 //            }
357 //
358 //        olePlatformRecordDocument.setName("Medicine & Dentistry");
359 //        olePlatformAdminUrl1.setOlePlatformRecordDocument(olePlatformRecordDocument);
360 //        olePlatformAdminUrl1.setUrl("http://www.Medicine&Dentistry.com/");
361 //        olePlatformAdminUrl1.setNote("The word platform simply describes all the ways you are visible and appealing to your future, potential, or actual readership.");
362 //        olePlatformAdminUrl1.setUserName("Hazel");
363 //        if (getParameter(OLEConstants.OLEEResourceRecord.MASK_PASSWORD).equalsIgnoreCase("Y"))
364 //            {
365 //                olePlatformAdminUrl1.setPassword(getMask());
366 //            }
367 //            else
368 //            {
369 //                olePlatformAdminUrl1.setPassword("BHJH&&*HJ");
370 //            }
371 //        olePlatformAdminUrl1.setTypeId("STATS");
372 //
373 //        olePlatformRecordDocument.setName("Book Designer");
374 //        olePlatformAdminUrl1.setOlePlatformRecordDocument(olePlatformRecordDocument);
375 //        olePlatformAdminUrl2.setUrl("http://www.thebookdesigner.com/2013/07/rowling-galbraith/");
376 //        olePlatformAdminUrl2.setNote("The literary world was shocked this past week by the revelation that J.K. Rowling.");
377 //        olePlatformAdminUrl2.setUserName("Kiara");
378 //        if (getParameter(OLEConstants.OLEEResourceRecord.MASK_PASSWORD).equalsIgnoreCase("Y"))
379 //        {
380 //          olePlatformAdminUrl1.setPassword(getMask());
381 //        }
382 //        else
383 //        {
384 //           olePlatformAdminUrl1.setPassword("BHJH&&*HJ");
385 //        }
386 //        olePlatformAdminUrl2.setTypeId("CONSORTIA");
387 //
388 //        olePlatformRecordDocument.setName("Sapien Commute");
389 //        olePlatformAdminUrl1.setOlePlatformRecordDocument(olePlatformRecordDocument);
390 //        olePlatformAdminUrl3.setUrl("http://www.sapiencommute.com/");
391 //        olePlatformAdminUrl3.setNote("Elsevier B.V. except certain content provided by third parties. ScienceDirect® is a registered trademark of Elsevier B.V.");
392 //        olePlatformAdminUrl3.setUserName("root");
393 //        if (getParameter(OLEConstants.OLEEResourceRecord.MASK_PASSWORD).equalsIgnoreCase("Y"))
394 //        {
395 //            olePlatformAdminUrl1.setPassword(getMask());
396 //        }
397 //        else
398 //        {
399 //            olePlatformAdminUrl3.setPassword("JHJK#YUI");
400 //        }
401 //        olePlatformAdminUrl3.setTypeId("ADMIN");
402 //
403 //        olePlatformAdminUrlList.add(olePlatformAdminUrl);
404 //        olePlatformAdminUrlList.add(olePlatformAdminUrl1);
405 //        olePlatformAdminUrlList.add(olePlatformAdminUrl2);
406 //        olePlatformAdminUrlList.add(olePlatformAdminUrl3);
407 //        }
408 
409         return olePlatformAdminUrlList;
410     }
411 
412     public final String getParameter(String parameterName) {
413         ParameterKey parameterKey = ParameterKey.create(OLEConstants.APPL_ID, OLEConstants.SELECT_NMSPC, OLEConstants.SELECT_CMPNT, parameterName);
414         Parameter parameter = CoreServiceApiServiceLocator.getParameterRepositoryService().getParameter(parameterKey);
415         return parameter != null ? parameter.getValue() : null;
416     }
417 
418     public List<OLEEResourceVariantTitle> getOleEResourceVariantTitleList() {
419         return oleEResourceVariantTitleList;
420     }
421 
422     public void setOleEResourceVariantTitleList(List<OLEEResourceVariantTitle> oleEResourceVariantTitleList) {
423         this.oleEResourceVariantTitleList = oleEResourceVariantTitleList;
424     }
425 
426     public void setOlePlatformAdminUrlList(List<OLEPlatformAdminUrl> olePlatformAdminUrlList) {
427         this.olePlatformAdminUrlList = olePlatformAdminUrlList;
428     }
429 
430     public String getEresourceWorkflowIndication() {
431         return eresourceWorkflowIndication;
432     }
433 
434     public void setEresourceWorkflowIndication(String eresourceWorkflowIndication) {
435         this.eresourceWorkflowIndication = eresourceWorkflowIndication;
436     }
437 
438     public String getStatusName() {
439         if (getStatusId() != null) {
440             oleeResourceStatus = getBoService().findBySinglePrimaryKey(OLEEResourceStatus.class, statusId);
441             statusName = oleeResourceStatus.getOleEResourceStatusName();
442         }
443         return statusName;
444     }
445 
446     public OLEEResourceSearchService getOleEResourceSearchService() {
447         if (oleEResourceSearchService == null) {
448             oleEResourceSearchService = GlobalResourceLoader.getService(OLEConstants.OLEEResourceRecord.ERESOURSE_SEARCH_SERVICE);
449         }
450         return oleEResourceSearchService;
451     }
452 
453 
454 
455     public String getRecipientId() {
456         return recipientId;
457     }
458 
459     public void setRecipientId(String recipientId) {
460         this.recipientId = recipientId;
461     }
462 
463     public String getAccessStatus() {
464         return accessStatus;
465     }
466 
467     public void setAccessStatus(String accessStatus) {
468         this.accessStatus = accessStatus;
469     }
470 
471     public Timestamp getCancellationDecisionDate() {
472         return cancellationDecisionDate;
473     }
474 
475     public void setCancellationDecisionDate(Timestamp cancellationDecisionDate) {
476         this.cancellationDecisionDate = cancellationDecisionDate;
477     }
478 
479     public Timestamp getCancellationEffectiveDate() {
480         return cancellationEffectiveDate;
481     }
482 
483     public void setCancellationEffectiveDate(Timestamp cancellationEffectiveDate) {
484         this.cancellationEffectiveDate = cancellationEffectiveDate;
485     }
486 
487     public String getCancellationReason() {
488         return cancellationReason;
489     }
490 
491     public void setCancellationReason(String cancellationReason) {
492         this.cancellationReason = cancellationReason;
493     }
494 
495     public boolean isCancellationCandidate() {
496         return cancellationCandidate;
497     }
498 
499     public void setCancellationCandidate(boolean cancellationCandidate) {
500         this.cancellationCandidate = cancellationCandidate;
501     }
502 
503     public boolean isRenewalAlertEnabled() {
504         return renewalAlertEnabled;
505     }
506 
507     public void setRenewalAlertEnabled(boolean renewalAlertEnabled) {
508         this.renewalAlertEnabled = renewalAlertEnabled;
509     }
510 
511     public String getRenewalNoticePeriod() {
512         return renewalNoticePeriod;
513     }
514 
515     public void setRenewalNoticePeriod(String renewalNoticePeriod) {
516         this.renewalNoticePeriod = renewalNoticePeriod;
517     }
518 
519     public String getSubscriptionStatus() {
520         return subscriptionStatus;
521     }
522 
523     public void setSubscriptionStatus(String subscriptionStatus) {
524         this.subscriptionStatus = subscriptionStatus;
525     }
526 
527     public Timestamp getCurrentSubscriptionStartDate() {
528         return currentSubscriptionStartDate;
529     }
530 
531     public void setCurrentSubscriptionStartDate(Timestamp currentSubscriptionStartDate) {
532         this.currentSubscriptionStartDate = currentSubscriptionStartDate;
533     }
534 
535     public Timestamp getCurrentSubscriptionEndDate() {
536         return currentSubscriptionEndDate;
537     }
538 
539     public void setCurrentSubscriptionEndDate(Timestamp currentSubscriptionEndDate) {
540         this.currentSubscriptionEndDate = currentSubscriptionEndDate;
541     }
542 
543     public Timestamp getInitialSubscriptionStartDate() {
544         return initialSubscriptionStartDate;
545     }
546 
547     public void setInitialSubscriptionStartDate(Timestamp initialSubscriptionStartDate) {
548         this.initialSubscriptionStartDate = initialSubscriptionStartDate;
549     }
550 
551     public void setStatusName(String statusName) {
552         this.statusName = statusName;
553     }
554 
555     public OLEEResourceRecordForm getForm() {
556         return form;
557     }
558 
559     public void setForm(OLEEResourceRecordForm form) {
560         this.form = form;
561     }
562 
563     public String getOleERSIdentifier() {
564         return oleERSIdentifier;
565     }
566 
567     public String getISBN() {
568         return ISBN;
569     }
570 
571     public void setISBN(String ISBN) {
572         this.ISBN = ISBN;
573     }
574 
575     public String getOclc() {
576         return oclc;
577     }
578 
579     public void setOclc(String oclc) {
580         this.oclc = oclc;
581     }
582 
583     public void setOleERSIdentifier(String oleERSIdentifier) {
584         this.oleERSIdentifier = oleERSIdentifier;
585     }
586 
587     public String getVendorId() {
588         return vendorId;
589     }
590 
591     public void setVendorId(String vendorId) {
592         this.vendorId = vendorId;
593     }
594 
595     public String getVendorLink() {
596         if (StringUtils.isNotBlank(this.getVendorId())){
597             String[] vendorDetails = this.getVendorId().split("-");
598             Integer vendorHeaderGeneratedIdentifier = vendorDetails.length > 0 ? Integer.parseInt(vendorDetails[0]) : 0;
599             Integer vendorDetailAssignedIdentifier = vendorDetails.length > 1 ? Integer.parseInt(vendorDetails[1]) : 0;
600             String oleurl = ConfigContext.getCurrentContextConfig().getProperty("ole.url");
601             String url = oleurl + "/kr/inquiry.do?methodToCall=start&amp;businessObjectClassName=org.kuali.ole.vnd.businessobject.VendorDetail&amp;vendorHeaderGeneratedIdentifier=" + vendorHeaderGeneratedIdentifier + "&amp;vendorDetailAssignedIdentifier="
602                     + vendorDetailAssignedIdentifier;
603             return url;
604         }
605         return vendorLink;
606     }
607 
608     public void setVendorLink(String vendorLink) {
609         this.vendorLink = vendorLink;
610     }
611 
612     public boolean isActiveVendor() {
613         return activeVendor;
614     }
615 
616     public void setActiveVendor(boolean activeVendor) {
617         this.activeVendor = activeVendor;
618     }
619 
620     public String getStatisticalSearchingCode() {
621         return statisticalSearchingCode;
622     }
623 
624     public void setStatisticalSearchingCode(String statisticalSearchingCode) {
625         this.statisticalSearchingCode = statisticalSearchingCode;
626     }
627 
628     public Integer getStatisticalSearchingCodeId() {
629         return statisticalSearchingCodeId;
630     }
631 
632     public void setStatisticalSearchingCodeId(Integer statisticalSearchingCodeId) {
633         this.statisticalSearchingCodeId = statisticalSearchingCodeId;
634     }
635 
636     public String getTitle() {
637         return title;
638     }
639 
640     public void setTitle(String title) {
641         this.title = title;
642     }
643 
644     public String getDescription() {
645         return description;
646     }
647 
648     public void setDescription(String description) {
649         this.description = description;
650     }
651 
652     public String getPublisher() {
653         return publisher;
654     }
655 
656     public void setPublisher(String publisher) {
657         this.publisher = publisher;
658     }
659 
660     public String getPublisherId() {
661         return publisherId;
662     }
663 
664     public void setPublisherId(String publisherId) {
665         this.publisherId = publisherId;
666     }
667 
668     public boolean isActivePublisher() {
669         return activePublisher;
670     }
671 
672     public void setActivePublisher(boolean activePublisher) {
673         this.activePublisher = activePublisher;
674     }
675 
676     public Integer getGokbIdentifier() {
677         return gokbIdentifier;
678     }
679 
680     public void setGokbIdentifier(Integer gokbIdentifier) {
681         this.gokbIdentifier = gokbIdentifier;
682     }
683 
684     public void setGokbIdentifier(String gokbIdentifier) {
685         setGokbIdentifier(Integer.parseInt(gokbIdentifier));
686     }
687 
688     public String getIsbn() {
689         return isbn;
690     }
691 
692     public void setIsbn(String isbn) {
693         this.isbn = isbn;
694     }
695 
696     public String getPlatformProvider() {
697         return platformProvider;
698     }
699 
700     public void setPlatformProvider(String platformProvider) {
701         this.platformProvider = platformProvider;
702     }
703 
704     public String getStatusId() {
705         return statusId;
706     }
707 
708     public void setStatusId(String statusId) {
709         this.statusId = statusId;
710     }
711 
712     public String getStatusDate() {
713         if (this.statusDate != null) {
714             return statusDate.substring(0, 10);
715         } else
716             return new Date(System.currentTimeMillis()).toString().substring(0, 10);
717     }
718 
719     public void setStatusDate(String statusDate) {
720         this.statusDate = statusDate;
721     }
722 
723     public String getFundCode() {
724         return fundCode;
725     }
726 
727     public void setFundCode(String fundCode) {
728         this.fundCode = fundCode;
729     }
730 
731     public String getFundId() {
732         return fundId;
733     }
734 
735     public void setFundId(String fundId) {
736         this.fundId = fundId;
737     }
738 
739     public String getEstimatedPrice() {
740         return estimatedPrice;
741     }
742 
743     public void setEstimatedPrice(String estimatedPrice) {
744         this.estimatedPrice = estimatedPrice;
745     }
746 
747     public BigDecimal getOrderTypeId() {
748         return orderTypeId;
749     }
750 
751     public void setOrderTypeId(BigDecimal orderTypeId) {
752         this.orderTypeId = orderTypeId;
753     }
754 
755     public String getPaymentTypeId() {
756         return paymentTypeId;
757     }
758 
759     public void setPaymentTypeId(String paymentTypeId) {
760         this.paymentTypeId = paymentTypeId;
761     }
762 
763     public String getPackageTypeId() {
764         return packageTypeId;
765     }
766 
767     public void setPackageTypeId(String packageTypeId) {
768         this.packageTypeId = packageTypeId;
769     }
770 
771     public String getPackageScopeId() {
772         return packageScopeId;
773     }
774 
775     public void setPackageScopeId(String packageScopeId) {
776         this.packageScopeId = packageScopeId;
777     }
778 
779     public boolean isBreakable() {
780         return breakable;
781     }
782 
783     public void setBreakable(boolean breakable) {
784         this.breakable = breakable;
785     }
786 
787     public boolean isFixedTitleList() {
788         return fixedTitleList;
789     }
790 
791     public void setFixedTitleList(boolean fixedTitleList) {
792         this.fixedTitleList = fixedTitleList;
793     }
794 
795     public String getNoteId() {
796         return noteId;
797     }
798 
799     public void setNoteId(String noteId) {
800         this.noteId = noteId;
801     }
802 
803     public String getPublicDisplayNote() {
804         return publicDisplayNote;
805     }
806 
807     public void setPublicDisplayNote(String publicDisplayNote) {
808         this.publicDisplayNote = publicDisplayNote;
809     }
810 
811     public String getReqSelComment() {
812         return reqSelComment;
813     }
814 
815     public void setReqSelComment(String reqSelComment) {
816         this.reqSelComment = reqSelComment;
817     }
818 
819     public String getReqPriority() {
820         return reqPriority;
821     }
822 
823     public void setReqPriority(String reqPriority) {
824         this.reqPriority = reqPriority;
825     }
826 
827     public String getTechRequirements() {
828         return techRequirements;
829     }
830 
831     public void setTechRequirements(String techRequirements) {
832         this.techRequirements = techRequirements;
833     }
834 
835     public String getAccessTypeId() {
836         return accessTypeId;
837     }
838 
839     public void setAccessTypeId(String accessTypeId) {
840         this.accessTypeId = accessTypeId;
841     }
842 
843     public String getAccessType() {
844         return accessType;
845     }
846 
847     public void setAccessType(String accessType) {
848         this.accessType = accessType;
849     }
850 
851     public String getNumOfSimultaneousUsers() {
852         return numOfSimultaneousUsers;
853     }
854 
855     public void setNumOfSimultaneousUsers(String numOfSimultaneousUsers) {
856         this.numOfSimultaneousUsers = numOfSimultaneousUsers;
857     }
858 
859     public String getAuthenticationTypeId() {
860         return authenticationTypeId;
861     }
862 
863     public void setAuthenticationTypeId(String authenticationTypeId) {
864         this.authenticationTypeId = authenticationTypeId;
865     }
866 
867     public String getAuthenticationType() {
868         return authenticationType;
869     }
870 
871     public void setAuthenticationType(String authenticationType) {
872         this.authenticationType = authenticationType;
873     }
874 
875     public String getAccessLocationId() {
876         return accessLocationId;
877     }
878 
879     public void setAccessLocationId(String accessLocationId) {
880         this.accessLocationId = accessLocationId;
881     }
882 
883     public List<String> getAccessLocation() {
884         return accessLocation;
885     }
886 
887     public void setAccessLocation(List<String> accessLocation) {
888         this.accessLocation = accessLocation;
889     }
890 
891     public List<String> getAccessLocationName() {
892         return accessLocationName;
893     }
894 
895     public void setAccessLocationName(List<String> accessLocationName) {
896         this.accessLocationName = accessLocationName;
897     }
898 
899     public boolean isTrialNeeded() {
900         return trialNeeded;
901     }
902 
903     public void setTrialNeeded(boolean trialNeeded) {
904         this.trialNeeded = trialNeeded;
905     }
906 
907     public String getTrialStatus() {
908         return trialStatus;
909     }
910 
911     public void setTrialStatus(String trialStatus) {
912         this.trialStatus = trialStatus;
913     }
914 
915     public boolean isLicenseNeeded() {
916         return licenseNeeded;
917     }
918 
919     public void setLicenseNeeded(boolean licenseNeeded) {
920         this.licenseNeeded = licenseNeeded;
921     }
922 
923     public String getLicenseReqStatus() {
924         return licenseReqStatus;
925     }
926 
927     public void setLicenseReqStatus(String licenseReqStatus) {
928         this.licenseReqStatus = licenseReqStatus;
929     }
930 
931     public String getOrderPayStatus() {
932         return orderPayStatus;
933     }
934 
935     public void setOrderPayStatus(String orderPayStatus) {
936         this.orderPayStatus = orderPayStatus;
937     }
938 
939     public String getActivationStatus() {
940         return activationStatus;
941     }
942 
943     public void setActivationStatus(String activationStatus) {
944         this.activationStatus = activationStatus;
945     }
946 
947     public OLEAccessType getOleAccessType() {
948         return oleAccessType;
949     }
950 
951     public void setOleAccessType(OLEAccessType oleAccessType) {
952         this.oleAccessType = oleAccessType;
953     }
954 
955     public OLEPackageScope getOlePackageScope() {
956         return olePackageScope;
957     }
958 
959     public void setOlePackageScope(OLEPackageScope olePackageScope) {
960         this.olePackageScope = olePackageScope;
961     }
962 
963     public OLEPackageType getOlePackageType() {
964         return olePackageType;
965     }
966 
967     public void setOlePackageType(OLEPackageType olePackageType) {
968         this.olePackageType = olePackageType;
969     }
970 
971     public OLEPaymentType getOlePaymentType() {
972         return olePaymentType;
973     }
974 
975     public void setOlePaymentType(OLEPaymentType olePaymentType) {
976         this.olePaymentType = olePaymentType;
977     }
978 
979     public OLERequestPriority getOleRequestPriority() {
980         return oleRequestPriority;
981     }
982 
983     public void setOleRequestPriority(OLERequestPriority oleRequestPriority) {
984         this.oleRequestPriority = oleRequestPriority;
985     }
986 
987     public OLEAuthenticationType getOleAuthenticationType() {
988         return oleAuthenticationType;
989     }
990 
991     public void setOleAuthenticationType(OLEAuthenticationType oleAuthenticationType) {
992         this.oleAuthenticationType = oleAuthenticationType;
993     }
994 
995     public OLEEResourceStatus getOleeResourceStatus() {
996         return oleeResourceStatus;
997     }
998 
999     public void setOleeResourceStatus(OLEEResourceStatus oleeResourceStatus) {
1000         this.oleeResourceStatus = oleeResourceStatus;
1001     }
1002 
1003     public List<OLEFormatTypeList> getOleFormatTypes() {
1004         return oleFormatTypes;
1005     }
1006 
1007     public void setOleFormatTypes(List<OLEFormatTypeList> oleFormatTypes) {
1008         this.oleFormatTypes = oleFormatTypes;
1009     }
1010 
1011     public List<OLEMaterialTypeList> getOleMaterialTypes() {
1012         return oleMaterialTypes;
1013     }
1014 
1015     public void setOleMaterialTypes(List<OLEMaterialTypeList> oleMaterialTypes) {
1016         this.oleMaterialTypes = oleMaterialTypes;
1017     }
1018 
1019     public List<OLEContentTypes> getOleContentTypes() {
1020         return oleContentTypes;
1021     }
1022 
1023     public void setOleContentTypes(List<OLEContentTypes> oleContentTypes) {
1024         this.oleContentTypes = oleContentTypes;
1025     }
1026 
1027     public List<OLEEResourceNotes> getEresNotes() {
1028         return eresNotes;
1029     }
1030 
1031     public void setEresNotes(List<OLEEResourceNotes> eresNotes) {
1032         this.eresNotes = eresNotes;
1033     }
1034 
1035     public List<OLEEResourceRequestor> getRequestors() {
1036         return requestors;
1037     }
1038 
1039     public void setRequestors(List<OLEEResourceRequestor> requestors) {
1040         this.requestors = requestors;
1041     }
1042 
1043     public List<OLEEResourceSelector> getSelectors() {
1044         return selectors;
1045     }
1046 
1047     public void setSelectors(List<OLEEResourceSelector> selectors) {
1048         this.selectors = selectors;
1049     }
1050 
1051     public List<OLEEResourceReqSelComments> getReqSelComments() {
1052         return reqSelComments;
1053     }
1054 
1055     public void setReqSelComments(List<OLEEResourceReqSelComments> reqSelComments) {
1056         this.reqSelComments = reqSelComments;
1057     }
1058 
1059     public List<OLEEResourceEventLog> getOleERSEventLogs() {
1060         return oleERSEventLogs;
1061     }
1062 
1063     public void setOleERSEventLogs(List<OLEEResourceEventLog> oleERSEventLogs) {
1064         this.oleERSEventLogs = oleERSEventLogs;
1065     }
1066 
1067     public List<OLEEResourceLicense> getOleERSLicenseRequests() {
1068         return oleERSLicenseRequests;
1069     }
1070 
1071     public void setOleERSLicenseRequests(List<OLEEResourceLicense> oleERSLicenseRequests) {
1072         this.oleERSLicenseRequests = oleERSLicenseRequests;
1073     }
1074 
1075     public boolean isSelectFlag() {
1076         return selectFlag;
1077     }
1078 
1079     public void setSelectFlag(boolean selectFlag) {
1080         this.selectFlag = selectFlag;
1081     }
1082     public String getSelectInstance() {
1083         return selectInstance;
1084     }
1085 
1086     public void setSelectInstance(String selectInstance) {
1087         this.selectInstance = selectInstance;
1088     }
1089 
1090     public String getDefaultCoverage() {
1091         return defaultCoverage;
1092     }
1093 
1094     public void setDefaultCoverage(String defaultCoverage) {
1095         this.defaultCoverage = defaultCoverage;
1096     }
1097 
1098     public String getDefaultPerpetualAccess() {
1099         return defaultPerpetualAccess;
1100     }
1101 
1102     public void setDefaultPerpetualAccess(String defaultPerpetualAccess) {
1103         this.defaultPerpetualAccess = defaultPerpetualAccess;
1104     }
1105 
1106     public String getDefaultCoverageView() {
1107         return defaultCoverageView;
1108     }
1109 
1110     public void setDefaultCoverageView(String defaultCoverageView) {
1111         this.defaultCoverageView = defaultCoverageView;
1112     }
1113 
1114     public String getDefaultPerpetualAccessView() {
1115         return defaultPerpetualAccessView;
1116     }
1117 
1118     public void setDefaultPerpetualAccessView(String defaultPerpetualAccessView) {
1119         this.defaultPerpetualAccessView = defaultPerpetualAccessView;
1120     }
1121 
1122     public List<OLEEResourceInstance> getOleERSInstances() {
1123         return oleERSInstances;
1124     }
1125 
1126     public void setOleERSInstances(List<OLEEResourceInstance> oleERSInstances) {
1127         this.oleERSInstances = oleERSInstances;
1128     }
1129 
1130     public List<OleCopy> getCopyList() {
1131         return copyList;
1132     }
1133 
1134     public void setCopyList(List<OleCopy> copyList) {
1135         this.copyList = copyList;
1136     }
1137 
1138     public List<OLEEResourcePO> getOleERSPOItems() {
1139         return oleERSPOItems;
1140     }
1141 
1142     public void setOleERSPOItems(List<OLEEResourcePO> oleERSPOItems) {
1143         this.oleERSPOItems = oleERSPOItems;
1144     }
1145 
1146     public VendorDetail getVendorDetail() {
1147         return vendorDetail;
1148     }
1149 
1150     public void setVendorDetail(VendorDetail vendorDetail) {
1151         this.vendorDetail = vendorDetail;
1152     }
1153 
1154     public PurchaseOrderType getOrderType() {
1155         return orderType;
1156     }
1157 
1158     public void setOrderType(PurchaseOrderType orderType) {
1159         this.orderType = orderType;
1160     }
1161 
1162     public String getVendorName() {
1163         return vendorName;
1164     }
1165 
1166     public void setVendorName(String vendorName) {
1167         this.vendorName = vendorName;
1168     }
1169 
1170     public OleStatisticalSearchingCodes getOleStatisticalCode() {
1171         return oleStatisticalCode;
1172     }
1173 
1174     public void setOleStatisticalCode(OleStatisticalSearchingCodes oleStatisticalCode) {
1175         this.oleStatisticalCode = oleStatisticalCode;
1176     }
1177 
1178     public OLEEResourceInstance getOleERSInstance() {
1179         return oleERSInstance;
1180     }
1181 
1182     public void setOleERSInstance(OLEEResourceInstance oleERSInstance) {
1183         this.oleERSInstance = oleERSInstance;
1184     }
1185 
1186     public List<OLEEResourceInvoices> getOleERSInvoices() {
1187         return oleERSInvoices;
1188     }
1189 
1190     public void setOleERSInvoices(List<OLEEResourceInvoices> oleERSInvoices) {
1191         this.oleERSInvoices = oleERSInvoices;
1192     }
1193 
1194     public boolean iseInstanceFlag() {
1195         return eInstanceFlag;
1196     }
1197 
1198     public void seteInstanceFlag(boolean eInstanceFlag) {
1199         this.eInstanceFlag = eInstanceFlag;
1200     }
1201 
1202     public String getDummyDefaultCoverage() {
1203         return dummyDefaultCoverage;
1204     }
1205 
1206     public void setDummyDefaultCoverage(String dummyDefaultCoverage) {
1207         this.dummyDefaultCoverage = dummyDefaultCoverage;
1208     }
1209 
1210     public String getDummyDefaultPerpetualAccess() {
1211         return dummyDefaultPerpetualAccess;
1212     }
1213 
1214     public void setDummyDefaultPerpetualAccess(String dummyDefaultPerpetualAccess) {
1215         this.dummyDefaultPerpetualAccess = dummyDefaultPerpetualAccess;
1216     }
1217 
1218     public boolean isCovEdited() {
1219         return isCovEdited;
1220     }
1221 
1222     public void setCovEdited(boolean covEdited) {
1223         isCovEdited = covEdited;
1224     }
1225 
1226     public boolean isPerAccEdited() {
1227         return isPerAccEdited;
1228     }
1229 
1230     public void setPerAccEdited(boolean perAccEdited) {
1231         isPerAccEdited = perAccEdited;
1232     }
1233 
1234     public String getCovStartDate() {
1235         return covStartDate;
1236     }
1237 
1238     public void setCovStartDate(String covStartDate) {
1239         this.covStartDate = covStartDate;
1240     }
1241 
1242     public String getCovEndDate() {
1243         return covEndDate;
1244     }
1245 
1246     public void setCovEndDate(String covEndDate) {
1247         this.covEndDate = covEndDate;
1248     }
1249 
1250     public String getPerAccStartDate() {
1251         return perAccStartDate;
1252     }
1253 
1254     public void setPerAccStartDate(String perAccStartDate) {
1255         this.perAccStartDate = perAccStartDate;
1256     }
1257 
1258     public String getPerAccEndDate() {
1259         return perAccEndDate;
1260     }
1261 
1262     public void setPerAccEndDate(String perAccEndDate) {
1263         this.perAccEndDate = perAccEndDate;
1264     }
1265 
1266     public List<OLEEResourceInvoices> geteRSInvoices() {
1267         return eRSInvoices;
1268     }
1269 
1270     public void seteRSInvoices(List<OLEEResourceInvoices> eRSInvoices) {
1271         this.eRSInvoices = eRSInvoices;
1272     }
1273 
1274     public List<OLEEResourceAccountingLine> getAccountingLines() {
1275         return accountingLines;
1276     }
1277 
1278     public void setAccountingLines(List<OLEEResourceAccountingLine> accountingLines) {
1279         this.accountingLines = accountingLines;
1280     }
1281 
1282     public List<OLEEResourceContacts> getOleERSContacts() {
1283         return oleERSContacts;
1284     }
1285 
1286     public void setOleERSContacts(List<OLEEResourceContacts> oleERSContacts) {
1287         this.oleERSContacts = oleERSContacts;
1288     }
1289 
1290     public String getGokbconfig() {
1291         return gokbconfig;
1292     }
1293 
1294     public void setGokbconfig(String gokbconfig) {
1295         this.gokbconfig = gokbconfig;
1296     }
1297 
1298     public void setResultDetails(DocumentSearchResult searchResult, List<OLESearchCondition> oleSearchEresources) {
1299         List<DocumentAttribute> documentAttributes = searchResult.getDocumentAttributes();
1300         for (DocumentAttribute docAttribute : documentAttributes) {
1301             String name = docAttribute.getName();
1302             if (OLEConstants.OLEEResourceRecord.ERESOURCE_RESULT_FIELDS.contains(name)) {
1303                 if (name.equals(OLEConstants.OLEEResourceRecord.ERESOURCE_TITLE)) {
1304                     name = OLEConstants.OLEEResourceRecord.ERESOURCE_TITLE;
1305                 }
1306                 Method getMethod;
1307                 try {
1308                     getMethod = getSetMethod(OLEEResourceRecordDocument.class, name, new Class[]{String.class});
1309                     getMethod.invoke(this, docAttribute.getValue().toString());
1310                 } catch (Exception ex) {
1311                     ex.printStackTrace();
1312                 }
1313             }
1314         }
1315     }
1316 
1317     private Method getSetMethod(Class targetClass, String attr, Class[] objectAttributes) throws Exception {
1318         Method method = targetClass.getMethod("set" + StringUtils.capitalize(attr), objectAttributes);
1319         return method;
1320     }
1321 
1322     @Override
1323     public void prepareForSave(KualiDocumentEvent event) {
1324         // TODO Auto-generated method stub
1325         // first populate, then call super
1326         super.prepareForSave(event);
1327         try {
1328             LOG.debug("###########Inside OLEEResourceRecordDocument " + "prepareForSave###########");
1329             if (this.getStatisticalSearchingCode() != null && (!"".equals(this.getStatisticalSearchingCode().trim()))) {
1330                 this.setStatisticalSearchingCodeId(Integer.parseInt(this.getStatisticalSearchingCode()));
1331                 Map statisticalCodeMap = new HashMap<>();
1332                 statisticalCodeMap.put(OLEConstants.OLEEResourceRecord.STATISTICAL_SEARCH_CD_ID, this.getStatisticalSearchingCodeId());
1333                 OleStatisticalSearchingCodes oleStatisticalSearchingCodes = KRADServiceLocator.getBusinessObjectService().findByPrimaryKey(OleStatisticalSearchingCodes.class, statisticalCodeMap);
1334                 if(oleStatisticalSearchingCodes != null) {
1335                     this.setOleStatisticalCode(oleStatisticalSearchingCodes);
1336                 }
1337             }
1338             String vendorId = this.getVendorId();
1339             if (vendorId != null && !vendorId.isEmpty()) {
1340                 String[] vendorDetails = vendorId.split("-");
1341                 Integer vendorHeaderGeneratedIdentifier = vendorDetails.length > 0 ? Integer.parseInt(vendorDetails[0]) : 0;
1342                 Integer vendorDetailAssignedIdentifier = vendorDetails.length > 1 ? Integer.parseInt(vendorDetails[1]) : 0;
1343                 Map vendorMap = new HashMap<>();
1344                 vendorMap.put(OLEConstants.OLEEResourceRecord.VENDOR_HEADER_GEN_ID, vendorHeaderGeneratedIdentifier);
1345                 vendorMap.put(OLEConstants.OLEEResourceRecord.VENDOR_DETAILED_ASSIGNED_ID, vendorDetailAssignedIdentifier);
1346                 VendorDetail vendorDetailDoc = KRADServiceLocator.getBusinessObjectService().findByPrimaryKey(VendorDetail.class, vendorMap);
1347                 if (vendorDetailDoc != null) {
1348                     this.setVendorName(vendorDetailDoc.getVendorName());
1349                     this.setActiveVendor(vendorDetailDoc.isActiveIndicator());
1350                 }
1351             }
1352 
1353             String MobAccessId = "";
1354             if (this.getMobileAccess() != null  && this.getMobileAccess().size() > 0) {
1355                 List<String> mobileAccessId = this.getMobileAccess();
1356                 if (mobileAccessId.size() > 0) {
1357                     for (String mobileAccess : mobileAccessId) {
1358                         MobAccessId += mobileAccess;
1359                         MobAccessId += OLEConstants.OLEEResourceRecord.ACCESS_LOCATION_SEPARATOR;
1360                     }
1361                     this.setMobileAccessId(MobAccessId.substring(0, (MobAccessId.lastIndexOf(OLEConstants.OLEEResourceRecord.ACCESS_LOCATION_SEPARATOR))));
1362                 }
1363             }
1364             this.setLicenseReqStatus("");
1365             List<OLEEResourceLicense> oleERSLicenses = this.getOleERSLicenseRequests();
1366             List<DateTime> modifiedDateList = new ArrayList<>();
1367             DateTime lastModifiedDate = null;
1368             if (oleERSLicenses.size() > 0) {
1369                 for (int i = oleERSLicenses.size()-1; i >= 0; i--) {
1370                     DateTime appStatus = oleERSLicenses.get(i).getDocumentRouteHeaderValue().getApplicationDocumentStatusDate();
1371                     if (!OLEConstants.OLEEResourceRecord.ERESOURCE_STATUSES.contains(appStatus) &&
1372                             (!oleERSLicenses.get(i).getDocumentRouteHeaderValue().getAppDocStatus().equalsIgnoreCase(
1373                                     OLEConstants.OLEEResourceRecord.LICENSE_FINAL_STATUS))) {
1374                         modifiedDateList.add(appStatus);
1375                     }
1376                     DocumentRouteHeaderValue documentRouteHeaderValue = oleERSLicenses.get(i).getDocumentRouteHeaderValue();
1377                     if(documentRouteHeaderValue != null) {
1378                         String licenceTitle = documentRouteHeaderValue.getDocTitle();
1379                         if(licenceTitle != null && !licenceTitle.isEmpty()) {
1380                             licenceTitle = licenceTitle.substring(26);
1381                         }
1382                         oleERSLicenses.get(i).setDocumentDescription(licenceTitle);
1383                     }
1384                 }
1385                 for (int modifiedDate = 0; modifiedDate<modifiedDateList.size(); modifiedDate++) {
1386                     DateTime dateTime = modifiedDateList.get(modifiedDate);
1387                     if (lastModifiedDate == null) {
1388                         lastModifiedDate = dateTime;
1389                     } else {
1390                         if (dateTime.isAfter(lastModifiedDate)) {
1391                             lastModifiedDate = dateTime;
1392                         }
1393                     }
1394                 }
1395                 for (int i = oleERSLicenses.size()-1; i >= 0; i--) {
1396                     if (lastModifiedDate != null && lastModifiedDate.equals(oleERSLicenses.get(i).getDocumentRouteHeaderValue().getApplicationDocumentStatusDate())) {
1397                         this.setLicenseReqStatus(oleERSLicenses.get(i).getDocumentRouteHeaderValue().getApplicationDocumentStatus());
1398                     }
1399                 }
1400             }
1401         } catch (Exception e) {
1402             LOG.error("Exception during prepareForSave()", e);
1403             throw new RuntimeException(e);
1404         }
1405 
1406 
1407         OLEEResourceEventLog oleEResourceEventLog = new OLEEResourceEventLog();
1408         if (status == null){
1409             oleEResourceEventLog.setCurrentTimeStamp();
1410             oleEResourceEventLog.setEventUser(GlobalVariables.getUserSession().getPrincipalName());
1411             oleEResourceEventLog.setEventType(OLEConstants.OLEEResourceRecord.SYSTEM);
1412             oleEResourceEventLog.setEventNote(OLEConstants.OLEEResourceRecord.STATUS_IS+getStatusName());
1413             oleEResourceEventLog.setSaveFlag(true);
1414             this.getOleERSEventLogs().add(oleEResourceEventLog);
1415         }
1416         else if (!status.equals(getStatusName())){
1417             oleEResourceEventLog.setCurrentTimeStamp();
1418             oleEResourceEventLog.setEventUser(GlobalVariables.getUserSession().getPrincipalName());
1419             oleEResourceEventLog.setEventType(OLEConstants.OLEEResourceRecord.SYSTEM);
1420             oleEResourceEventLog.setEventNote(OLEConstants.OLEEResourceRecord.STATUS_FROM+ status +OLEConstants.OLEEResourceRecord.STATUS_TO+getStatusName());
1421             oleEResourceEventLog.setSaveFlag(true);
1422             this.getOleERSEventLogs().add(oleEResourceEventLog);
1423         }
1424         status=getStatusName();
1425         String defaultCov = this.getDummyDefaultCoverage();
1426         if(defaultCov != null && !defaultCov.isEmpty() && !this.isCovEdited()) {
1427             this.setCovEdited(true);
1428             getOleEResourceSearchService().getDefaultCovDatesToPopup(this,defaultCov);
1429         }
1430         String defaultPerAcc = this.getDummyDefaultPerpetualAccess();
1431         if(defaultPerAcc != null && !defaultPerAcc.isEmpty() && !this.isPerAccEdited()) {
1432             this.setPerAccEdited(true);
1433             getOleEResourceSearchService().getDefaultPerAccDatesToPopup(this,defaultPerAcc);
1434         }
1435         getOleEResourceSearchService().saveDefaultCoverageDate(this);
1436         getOleEResourceSearchService().saveDefaultPerpetualAccessDate(this);
1437         try {
1438             getOleEResourceSearchService().saveEResourceInstanceToDocstore(this);
1439         } catch (Exception e) {
1440             e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
1441         }
1442     }
1443 
1444     public void processAfterRetrieve() {
1445         super.processAfterRetrieve();
1446         if (this.getStatisticalSearchingCodeId() != null) {
1447             this.setStatisticalSearchingCode(this.getStatisticalSearchingCodeId().toString());
1448         }
1449         String mobileAccessId = this.getMobileAccessId();
1450         if (mobileAccessId != null && !mobileAccessId.isEmpty()) {
1451             String[] mobileAccess = mobileAccessId.split(OLEConstants.OLEEResourceRecord.ACCESS_LOCATION_SEPARATOR);
1452             List<String> mobileAccesses = new ArrayList<>();
1453             for (String mobileAccId : mobileAccess) {
1454                 mobileAccesses.add(mobileAccId);
1455             }
1456             this.setMobileAccess(mobileAccesses);
1457         }
1458         if (this.getOleAccessType() != null) {
1459             this.setAccessType(this.getOleAccessType().getOleAccessTypeName());
1460         } else if (this.getAccessTypeId() != null) {
1461             Map accessTpeMap = new HashMap<>();
1462             accessTpeMap.put("oleAccessTypeId", this.getAccessTypeId());
1463             oleAccessType = KRADServiceLocator.getBusinessObjectService().findByPrimaryKey(OLEAccessType.class, accessTpeMap);
1464             if (oleAccessType != null) {
1465                 this.setAccessType(oleAccessType.getOleAccessTypeName());
1466             }
1467         }
1468         if (StringUtils.isNotBlank(this.getVendorId())) {
1469             String[] vendorDetails = this.getVendorId().split("-");
1470             Integer vendorHeaderGeneratedIdentifier = vendorDetails.length > 0 ? Integer.parseInt(vendorDetails[0]) : 0;
1471             Integer vendorDetailAssignedIdentifier = vendorDetails.length > 1 ? Integer.parseInt(vendorDetails[1]) : 0;
1472             Map vendorMap = new HashMap<>();
1473             vendorMap.put(OLEConstants.OLEEResourceRecord.VENDOR_HEADER_GEN_ID, vendorHeaderGeneratedIdentifier);
1474             vendorMap.put(OLEConstants.OLEEResourceRecord.VENDOR_DETAILED_ASSIGNED_ID, vendorDetailAssignedIdentifier);
1475             VendorDetail vendorDetailDoc = KRADServiceLocator.getBusinessObjectService().findByPrimaryKey(VendorDetail.class, vendorMap);
1476             if (vendorDetailDoc != null) {
1477                 this.setVendorName(vendorDetailDoc.getVendorName());
1478                 this.setActiveVendor(vendorDetailDoc.isActiveIndicator());
1479             }
1480         }
1481         if (StringUtils.isNotBlank(this.getPublisherId())) {
1482             String[] publisherDetails = this.getPublisherId().split("-");
1483             Map vendorMap = new HashMap<>();
1484             int vendorHeaderGeneratedIdentifier = publisherDetails.length > 0 ? Integer.parseInt(publisherDetails[0]) : 0;
1485             int vendorDetailAssignedIdentifier = publisherDetails.length > 1 ? Integer.parseInt(publisherDetails[1]) : 0;
1486             vendorMap.put(OLEConstants.OLEEResourceRecord.VENDOR_HEADER_GEN_ID, vendorHeaderGeneratedIdentifier);
1487             vendorMap.put(OLEConstants.OLEEResourceRecord.VENDOR_DETAILED_ASSIGNED_ID, vendorDetailAssignedIdentifier);
1488             VendorDetail vendorDetailDoc = KRADServiceLocator.getBusinessObjectService().findByPrimaryKey(VendorDetail.class, vendorMap);
1489             if (vendorDetailDoc != null) {
1490                 this.setActivePublisher(vendorDetailDoc.isActiveIndicator());
1491                 this.setPublisher(vendorDetailDoc.getVendorName());
1492             }
1493 
1494         }
1495         if (this.getOleAuthenticationType() != null) {
1496             this.setAuthenticationType(this.getOleAuthenticationType().getOleAuthenticationTypeName());
1497         } else if (this.getAuthenticationTypeId() != null) {
1498             Map authenticationMap = new HashMap();
1499             authenticationMap.put("oleAuthenticationTypeId", this.getAuthenticationTypeId());
1500             oleAuthenticationType = KRADServiceLocator.getBusinessObjectService().findByPrimaryKey(OLEAuthenticationType.class, authenticationMap);
1501             if (oleAuthenticationType != null) {
1502                 this.setAuthenticationType(oleAuthenticationType.getOleAuthenticationTypeName());
1503             }
1504         }
1505         this.setLicenseReqStatus("");
1506         List<OLEEResourceLicense> oleERSLicenses = this.getOleERSLicenseRequests();
1507         List<DateTime> modifiedDateList = new ArrayList<>();
1508         DateTime lastModifiedDate = null;
1509         if (oleERSLicenses.size() > 0) {
1510             for (int i = oleERSLicenses.size()-1; i >= 0; i--) {
1511                 DateTime appStatus = oleERSLicenses.get(i).getDocumentRouteHeaderValue().getApplicationDocumentStatusDate();
1512                 if (!OLEConstants.OLEEResourceRecord.ERESOURCE_STATUSES.contains(appStatus) &&
1513                         (!oleERSLicenses.get(i).getDocumentRouteHeaderValue().getAppDocStatus().equalsIgnoreCase(
1514                                 OLEConstants.OLEEResourceRecord.LICENSE_FINAL_STATUS))) {
1515                     modifiedDateList.add(appStatus);
1516                 }
1517                 DocumentRouteHeaderValue documentRouteHeaderValue = oleERSLicenses.get(i).getDocumentRouteHeaderValue();
1518                 if(documentRouteHeaderValue != null) {
1519                     String licenceTitle = documentRouteHeaderValue.getDocTitle();
1520                     if(licenceTitle != null && !licenceTitle.isEmpty()) {
1521                         licenceTitle = licenceTitle.substring(26);
1522                     }
1523                     oleERSLicenses.get(i).setDocumentDescription(licenceTitle);
1524                 }
1525             }
1526             for (int modifiedDate = 0; modifiedDate<modifiedDateList.size(); modifiedDate++) {
1527                 DateTime dateTime = modifiedDateList.get(modifiedDate);
1528                 if (lastModifiedDate == null) {
1529                     lastModifiedDate = dateTime;
1530                 } else {
1531                     if (dateTime.isAfter(lastModifiedDate)) {
1532                         lastModifiedDate = dateTime;
1533                     }
1534                 }
1535             }
1536             for (int i = oleERSLicenses.size()-1; i >= 0; i--) {
1537                 if (lastModifiedDate!=null && lastModifiedDate.equals(oleERSLicenses.get(i).getDocumentRouteHeaderValue().getApplicationDocumentStatusDate())) {
1538                     this.setLicenseReqStatus(oleERSLicenses.get(i).getDocumentRouteHeaderValue().getApplicationDocumentStatus());
1539                 }
1540             }
1541         }
1542         List<OLEEResourceInstance> oleERSInstances = this.getOleERSInstances();
1543         OLEEResourceInstance oleeResourceInstance = null;
1544         List<Holdings> holdingsList = new ArrayList<Holdings>();
1545         List<String> instanceId = new ArrayList<String>();
1546         if (oleERSInstances.size() > 0) {
1547             for (OLEEResourceInstance oleERSInstance : oleERSInstances) {
1548                     instanceId.add(oleERSInstance.getInstanceId());
1549             }
1550         }
1551         if (instanceId.size() > 0) {
1552             for(String id:instanceId){
1553                 try {
1554                     holdingsList.add(getDocstoreClientLocator().getDocstoreClient().retrieveHoldings(id));
1555                 } catch (Exception e) {
1556                     e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
1557                 }
1558             }
1559         }
1560         for (Holdings holdings:holdingsList){
1561             if(holdings instanceof EHoldings){
1562                 HoldingOlemlRecordProcessor holdingOlemlRecordProcessor=new HoldingOlemlRecordProcessor();
1563                 OleHoldings oleHoldings=holdingOlemlRecordProcessor.fromXML(holdings.getContent());
1564                 for (OLEEResourceInstance oleERSInstance : oleERSInstances) {
1565                     if (holdings.getId().equals(oleERSInstance.getInstanceId())) {
1566                         oleeResourceInstance = oleERSInstance;
1567                         StringBuffer urls = new StringBuffer();
1568                         for(Link link :oleHoldings.getLink()){
1569                             urls.append(link.getUrl());
1570                             urls.append(",");
1571                         }
1572                         if (urls != null && urls.length() > 0) {
1573                             String url = urls.substring(0, urls.lastIndexOf(","));
1574                             oleeResourceInstance.setUrl(url);
1575                         }
1576                     }
1577                 }
1578             }
1579 
1580         }
1581         getOleEResourceSearchService().getDefaultCovergeDate(this);
1582         getOleEResourceSearchService().getDefaultPerpetualAccessDate(this);
1583         getOleEResourceSearchService().updatePlatformProvider(this);
1584         getOleeResourceHelperService().setAccessInfo(this);
1585 
1586     }
1587 
1588     public String getPhone() {
1589         return phone;
1590     }
1591 
1592     public void setPhone(String phone) {
1593         this.phone = phone;
1594     }
1595 
1596     public List<OLEPhoneNumber> getPhoneNos() {
1597         return phoneNos;
1598     }
1599 
1600     public void setPhoneNos(List<OLEPhoneNumber> phoneNos) {
1601         this.phoneNos = phoneNos;
1602     }
1603 
1604     public List<OLEEResourceChangeDashBoard> getOleEResourceChangeDashBoards() {
1605         return oleEResourceChangeDashBoards;
1606     }
1607 
1608     public void setOleEResourceChangeDashBoards(List<OLEEResourceChangeDashBoard> oleEResourceChangeDashBoards) {
1609         this.oleEResourceChangeDashBoards = oleEResourceChangeDashBoards;
1610     }
1611 
1612     public String getGokbId() {
1613         return gokbId;
1614     }
1615 
1616     public void setGokbId(String gokbId) {
1617         this.gokbId = gokbId;
1618     }
1619 
1620     public List<OLELinkedEresource> getOleLinkedEresources() {
1621         return oleLinkedEresources;
1622     }
1623 
1624     public void setOleLinkedEresources(List<OLELinkedEresource> oleLinkedEresources) {
1625         this.oleLinkedEresources = oleLinkedEresources;
1626     }
1627 
1628     public boolean isSelectEResFlag() {
1629         return selectEResFlag;
1630     }
1631 
1632     public void setSelectEResFlag(boolean selectEResFlag) {
1633         this.selectEResFlag = selectEResFlag;
1634     }
1635 
1636     public String getRemoveOrRelinkToParent() {
1637         return removeOrRelinkToParent;
1638     }
1639 
1640     public void setRemoveOrRelinkToParent(String removeOrRelinkToParent) {
1641         this.removeOrRelinkToParent = removeOrRelinkToParent;
1642     }
1643 
1644     public double getFiscalYearCost() {
1645         return fiscalYearCost;
1646     }
1647 
1648     public void setFiscalYearCost(double fiscalYearCost) {
1649         this.fiscalYearCost = fiscalYearCost;
1650     }
1651 
1652     public double getYearPriceQuote() {
1653         return yearPriceQuote;
1654     }
1655 
1656     public void setYearPriceQuote(double yearPriceQuote) {
1657         this.yearPriceQuote = yearPriceQuote;
1658     }
1659 
1660     public double getCostIncrease() {
1661         return costIncrease;
1662     }
1663 
1664     public void setCostIncrease(double costIncrease) {
1665         this.costIncrease = costIncrease;
1666     }
1667 
1668     public double getPercentageIncrease() {
1669         return percentageIncrease;
1670     }
1671 
1672     public void setPercentageIncrease(double percentageIncrease) {
1673         this.percentageIncrease = percentageIncrease;
1674     }
1675 
1676     public String getEmailText() {
1677         return emailText;
1678     }
1679 
1680     public void setEmailText(String emailText) {
1681         this.emailText = emailText;
1682     }
1683 
1684     public List<OLEStandardIdentifier> getStandardIdentifiers() {
1685         return standardIdentifiers;
1686     }
1687 
1688     public void setStandardIdentifiers(List<OLEStandardIdentifier> standardIdentifiers) {
1689         this.standardIdentifiers = standardIdentifiers;
1690     }
1691 
1692     public List<OLEGOKbPackage> getGoKbPackageList() {
1693         return goKbPackageList;
1694     }
1695 
1696     public void setGoKbPackageList(List<OLEGOKbPackage> goKbPackageList) {
1697         this.goKbPackageList = goKbPackageList;
1698     }
1699 
1700     public List<OLEGOKbPlatform> getGoKbPlatformList() {
1701         return goKbPlatformList;
1702     }
1703 
1704     public void setGoKbPlatformList(List<OLEGOKbPlatform> goKbPlatformList) {
1705         this.goKbPlatformList = goKbPlatformList;
1706     }
1707 
1708     public List<OLEGOKbTIPP> getGoKbTIPPList() {
1709         return goKbTIPPList;
1710     }
1711 
1712     public void setGoKbTIPPList(List<OLEGOKbTIPP> goKbTIPPList) {
1713         this.goKbTIPPList = goKbTIPPList;
1714     }
1715 
1716     public String getRelationshipType() {
1717         return relationshipType;
1718     }
1719 
1720     public void setRelationshipType(String relationshipType) {
1721         this.relationshipType = relationshipType;
1722     }
1723 
1724     public int getActiveTitlesCount() {
1725         return activeTitlesCount;
1726     }
1727 
1728     public void setActiveTitlesCount(int activeTitlesCount) {
1729         this.activeTitlesCount = activeTitlesCount;
1730     }
1731 
1732     public String getProfile() {
1733         return profile;
1734     }
1735 
1736     public void setProfile(String profile) {
1737         this.profile = profile;
1738     }
1739 
1740     public List<OLEGOKbPlatform> getGoKbPlatforms() {
1741         return goKbPlatforms;
1742     }
1743 
1744     public void setGoKbPlatforms(List<OLEGOKbPlatform> goKbPlatforms) {
1745         this.goKbPlatforms = goKbPlatforms;
1746     }
1747 
1748     public List<OLEGOKbMappingValue> getOleGOKbMappingValueList() {
1749         return oleGOKbMappingValueList;
1750     }
1751 
1752     public void setOleGOKbMappingValueList(List<OLEGOKbMappingValue> oleGOKbMappingValueList) {
1753         this.oleGOKbMappingValueList = oleGOKbMappingValueList;
1754     }
1755 
1756     public Timestamp getDateAccessConfirmed() {
1757         return dateAccessConfirmed;
1758     }
1759 
1760     public void setDateAccessConfirmed(Timestamp dateAccessConfirmed) {
1761         this.dateAccessConfirmed = dateAccessConfirmed;
1762     }
1763 
1764     public String getAccessUserName() {
1765         return accessUserName;
1766     }
1767 
1768     public void setAccessUserName(String accessUserName) {
1769         this.accessUserName = accessUserName;
1770     }
1771 
1772     public String getAccessPassword() {
1773         return accessPassword;
1774     }
1775 
1776     public void setAccessPassword(String accessPassword) {
1777         this.accessPassword = accessPassword;
1778     }
1779 
1780     public String getProxiedURL() {
1781         return proxiedURL;
1782     }
1783 
1784     public void setProxiedURL(String proxiedURL) {
1785         this.proxiedURL = proxiedURL;
1786     }
1787 
1788     public boolean isProxiedResource() {
1789         return proxiedResource;
1790     }
1791 
1792     public void setProxiedResource(boolean proxiedResource) {
1793         this.proxiedResource = proxiedResource;
1794     }
1795 
1796     public String getMobileAccessId() {
1797         return mobileAccessId;
1798     }
1799 
1800     public void setMobileAccessId(String mobileAccessId) {
1801         this.mobileAccessId = mobileAccessId;
1802     }
1803 
1804     public List<String> getMobileAccess() {
1805         return mobileAccess;
1806     }
1807 
1808     public void setMobileAccess(List<String> mobileAccess) {
1809         this.mobileAccess = mobileAccess;
1810     }
1811 
1812     public String getMobileAccessNote() {
1813         return mobileAccessNote;
1814     }
1815 
1816     public void setMobileAccessNote(String mobileAccessNote) {
1817         this.mobileAccessNote = mobileAccessNote;
1818     }
1819 
1820     public boolean isBrandingComplete() {
1821         return brandingComplete;
1822     }
1823 
1824     public void setBrandingComplete(boolean brandingComplete) {
1825         this.brandingComplete = brandingComplete;
1826     }
1827 
1828     public boolean isPlatformConfigComplete() {
1829         return platformConfigComplete;
1830     }
1831 
1832     public void setPlatformConfigComplete(boolean platformConfigComplete) {
1833         this.platformConfigComplete = platformConfigComplete;
1834     }
1835 
1836     public String getMarcRecordSourceTypeId() {
1837         return marcRecordSourceTypeId;
1838     }
1839 
1840     public void setMarcRecordSourceTypeId(String marcRecordSourceTypeId) {
1841         this.marcRecordSourceTypeId = marcRecordSourceTypeId;
1842     }
1843 
1844     public Timestamp getLastRecordLoadDate() {
1845         return lastRecordLoadDate;
1846     }
1847 
1848     public void setLastRecordLoadDate(Timestamp lastRecordLoadDate) {
1849         this.lastRecordLoadDate = lastRecordLoadDate;
1850     }
1851 
1852     public String getMarcRecordSource() {
1853         return marcRecordSource;
1854     }
1855 
1856     public void setMarcRecordSource(String marcRecordSource) {
1857         this.marcRecordSource = marcRecordSource;
1858     }
1859 
1860     public String getMarcRecordUpdateFreqId() {
1861         return marcRecordUpdateFreqId;
1862     }
1863 
1864     public void setMarcRecordUpdateFreqId(String marcRecordUpdateFreqId) {
1865         this.marcRecordUpdateFreqId = marcRecordUpdateFreqId;
1866     }
1867 
1868     public String getMarcRecordURL() {
1869         return marcRecordURL;
1870     }
1871 
1872     public void setMarcRecordURL(String marcRecordURL) {
1873         this.marcRecordURL = marcRecordURL;
1874     }
1875 
1876     public String getMarcRecordUserName() {
1877         return marcRecordUserName;
1878     }
1879 
1880     public void setMarcRecordUserName(String marcRecordUserName) {
1881         this.marcRecordUserName = marcRecordUserName;
1882     }
1883 
1884     public String getMarcRecordPasword() {
1885         return marcRecordPasword;
1886     }
1887 
1888     public void setMarcRecordPasword(String marcRecordPasword) {
1889         this.marcRecordPasword = marcRecordPasword;
1890     }
1891 
1892     public String getMarcRecordNote() {
1893         return marcRecordNote;
1894     }
1895 
1896     public void setMarcRecordNote(String marcRecordNote) {
1897         this.marcRecordNote = marcRecordNote;
1898     }
1899 
1900     public List<OLEEResourceAccessWorkflow> getOleERSAccessWorkflows() {
1901         return oleERSAccessWorkflows;
1902     }
1903 
1904     public void setOleERSAccessWorkflows(List<OLEEResourceAccessWorkflow> oleERSAccessWorkflows) {
1905         this.oleERSAccessWorkflows = oleERSAccessWorkflows;
1906     }
1907 
1908     public String getLineActions() {
1909         return lineActions;
1910     }
1911 
1912     public void setLineActions(String lineActions) {
1913         this.lineActions = lineActions;
1914     }
1915 
1916     public List<OLEEResourceInstance> geteRSInstances() {
1917         return eRSInstances;
1918     }
1919 
1920     public void seteRSInstances(List<OLEEResourceInstance> eRSInstances) {
1921         this.eRSInstances = eRSInstances;
1922     }
1923 
1924     public List<OLEEResourcePO> getLinkedERSPOItems() {
1925         return linkedERSPOItems;
1926     }
1927 
1928     public void setLinkedERSPOItems(List<OLEEResourcePO> linkedERSPOItems) {
1929         this.linkedERSPOItems = linkedERSPOItems;
1930     }
1931 
1932     public String getBannerMessage() {
1933         return bannerMessage;
1934     }
1935 
1936     public void setBannerMessage(String bannerMessage) {
1937         this.bannerMessage = bannerMessage;
1938     }
1939 
1940     public Timestamp getGokbLastUpdatedDate() {
1941         return gokbLastUpdatedDate;
1942     }
1943 
1944     public void setGokbLastUpdatedDate(Timestamp gokbLastUpdatedDate) {
1945         this.gokbLastUpdatedDate = gokbLastUpdatedDate;
1946     }
1947 
1948     public String getAccessDescription() {
1949         return accessDescription;
1950     }
1951 
1952     public void setAccessDescription(String accessDescription) {
1953         this.accessDescription = accessDescription;
1954     }
1955 
1956     public String getWorkflowConfigurationId() {
1957         return workflowConfigurationId;
1958     }
1959 
1960     public void setWorkflowConfigurationId(String workflowConfigurationId) {
1961         this.workflowConfigurationId = workflowConfigurationId;
1962     }
1963 
1964     public String getOleAccessActivationDocumentNumber() {
1965         return oleAccessActivationDocumentNumber;
1966     }
1967 
1968     public void setOleAccessActivationDocumentNumber(String oleAccessActivationDocumentNumber) {
1969         this.oleAccessActivationDocumentNumber = oleAccessActivationDocumentNumber;
1970     }
1971 
1972     public List<OLEEResourceInstance> getDeletedInstances() {
1973         return deletedInstances;
1974     }
1975 
1976     public void setDeletedInstances(List<OLEEResourceInstance> deletedInstances) {
1977         this.deletedInstances = deletedInstances;
1978     }
1979 
1980     public List<OLEEResourceInstance> getPurchaseOrderInstances() {
1981         return purchaseOrderInstances;
1982     }
1983 
1984     public void setPurchaseOrderInstances(List<OLEEResourceInstance> purchaseOrderInstances) {
1985         this.purchaseOrderInstances = purchaseOrderInstances;
1986     }
1987 
1988     public String getGokbProfile() {
1989         return gokbProfile;
1990     }
1991 
1992     public void setGokbProfile(String gokbProfile) {
1993         this.gokbProfile = gokbProfile;
1994     }
1995 
1996     public String getGokbPackageStatus() {
1997         return gokbPackageStatus;
1998     }
1999 
2000     public void setGokbPackageStatus(String gokbPackageStatus) {
2001         this.gokbPackageStatus = gokbPackageStatus;
2002     }
2003 
2004     public boolean isAccessReadOnly() {
2005         return accessReadOnly;
2006     }
2007 
2008     public void setAccessReadOnly(boolean accessReadOnly) {
2009         this.accessReadOnly = accessReadOnly;
2010     }
2011 
2012     public String getOldTitle() {
2013         return oldTitle;
2014     }
2015 
2016     public void setOldTitle(String oldTitle) {
2017         this.oldTitle = oldTitle;
2018     }
2019 
2020     public String getPublisherLink() {
2021         if (StringUtils.isNotBlank(this.getPublisherId())){
2022             String[] vendorDetails = this.getPublisherId().split("-");
2023             Integer vendorHeaderGeneratedIdentifier = vendorDetails.length > 0 ? Integer.parseInt(vendorDetails[0]) : 0;
2024             Integer vendorDetailAssignedIdentifier = vendorDetails.length > 1 ? Integer.parseInt(vendorDetails[1]) : 0;
2025             String oleurl = ConfigContext.getCurrentContextConfig().getProperty("ole.url");
2026             String url = oleurl + "/kr/inquiry.do?methodToCall=start&amp;businessObjectClassName=org.kuali.ole.vnd.businessobject.VendorDetail&amp;vendorHeaderGeneratedIdentifier=" + vendorHeaderGeneratedIdentifier + "&amp;vendorDetailAssignedIdentifier="
2027                     + vendorDetailAssignedIdentifier;
2028             return url;
2029         }
2030         return publisherLink;
2031     }
2032 
2033     public void setPublisherLink(String publisherLink) {
2034         this.publisherLink = publisherLink;
2035     }
2036 
2037 
2038     public String getStatus() {
2039         return status;
2040     }
2041 
2042     public void setStatus(String status) {
2043         this.status = status;
2044     }
2045 
2046 
2047     public List<OLEEResourceInstance> getOleERSInstancesForSave() {
2048         return oleERSInstancesForSave;
2049     }
2050 
2051     public void setOleERSInstancesForSave(List<OLEEResourceInstance> oleERSInstancesForSave) {
2052         this.oleERSInstancesForSave = oleERSInstancesForSave;
2053     }
2054 
2055     public List<OLEEResourceInstance> getOleERSInstancesForDelete() {
2056         return oleERSInstancesForDelete;
2057     }
2058 
2059     public void setOleERSInstancesForDelete(List<OLEEResourceInstance> oleERSInstancesForDelete) {
2060         this.oleERSInstancesForDelete = oleERSInstancesForDelete;
2061     }
2062 
2063     public List<OLEEResourceEventLog> getFilterEventLogs() {
2064         return filterEventLogs;
2065     }
2066 
2067     public void setFilterEventLogs(List<OLEEResourceEventLog> filterEventLogs) {
2068         this.filterEventLogs = filterEventLogs;
2069     }
2070 
2071     public boolean isSaveValidationFlag() {
2072         return saveValidationFlag;
2073     }
2074 
2075     public void setSaveValidationFlag(boolean saveValidationFlag) {
2076         this.saveValidationFlag = saveValidationFlag;
2077     }
2078 }