1   
2   
3   
4   
5   
6   
7   
8   
9   
10  
11  
12  
13  
14  
15  
16  package org.kuali.ole.module.purap.document.validation.event;
17  
18  import org.apache.commons.lang.StringUtils;
19  import org.apache.log4j.Logger;
20  import org.kuali.ole.integration.purap.ItemCapitalAsset;
21  import org.kuali.ole.sys.document.validation.event.AttributedDocumentEventBase;
22  import org.kuali.rice.krad.document.Document;
23  
24  
25  
26  
27  
28  
29  public abstract class AttributedPurchasingItemCapitalAssetEventBase extends AttributedDocumentEventBase implements AttributedPurchasingItemCapitalAssetEvent {
30      private static final Logger LOG = Logger.getLogger(AttributedPurchasingItemCapitalAssetEventBase.class);
31  
32  
33      private final ItemCapitalAsset itemCapitalAsset;
34  
35      
36  
37  
38  
39  
40  
41  
42  
43      public AttributedPurchasingItemCapitalAssetEventBase(String description, String errorPathPrefix, Document document, ItemCapitalAsset itemCapitalAsset) {
44          super(description, errorPathPrefix, document);
45  
46          this.itemCapitalAsset = itemCapitalAsset;
47  
48          logEvent();
49      }
50  
51      
52  
53  
54      public ItemCapitalAsset getItemCapitalAsset() {
55          return itemCapitalAsset;
56      }
57  
58  
59      
60  
61  
62      public void validate() {
63          super.validate();
64          if (getItemCapitalAsset() == null) {
65              throw new IllegalArgumentException("invalid (null) item");
66          }
67      }
68  
69      
70  
71  
72      private void logEvent() {
73          StringBuffer logMessage = new StringBuffer(StringUtils.substringAfterLast(this.getClass().getName(), "."));
74          logMessage.append(" with ");
75  
76          
77          if (itemCapitalAsset == null) {
78              logMessage.append("null item capital asset");
79          } else {
80              logMessage.append(" item capital asset# ");
81              logMessage.append(itemCapitalAsset.getItemCapitalAssetIdentifier());
82          }
83  
84          LOG.debug(logMessage);
85      }
86  }