01: /*
02: * Created on Dec 8, 2003
03: *
04: * To change the template for this generated file go to
05: * Window>Preferences>Java>Code Generation>Code and Comments
06: */
07: package org.xdev.base.xssl;
08:
09: import java.util.HashMap;
10:
11: /**
12: * @author AYegorov
13: *
14: * To change the template for this generated type comment go to
15: * Window>Preferences>Java>Code Generation>Code and Comments
16: */
17: public abstract class XSSLObject extends XSSLReference {
18:
19: /**
20: * @param id
21: */
22: public XSSLObject(String id) {
23: super (id);
24: // TODO Auto-generated constructor stub
25: }
26:
27: /**
28: * @param id
29: * @param properties
30: */
31: public XSSLObject(String id, HashMap properties) {
32: super (id, properties);
33: // TODO Auto-generated constructor stub
34: }
35:
36: /* (non-Javadoc)
37: * @see org.xdev.base.transaction.AbstractTransactionReference#processReference(org.xdev.base.transaction.AbstractTransactionResult)
38: */
39: protected Object processReference(Object reference) {
40: Object obj = null;
41: try {
42: if (reference instanceof XSSLReturn) {
43:
44: this
45: .logDebug("Processing object as a return reference: "
46: + reference);
47:
48: obj = ((XSSLReturn) reference).getObjectValue();
49:
50: this .logDebug("Processing returned object: " + obj);
51:
52: obj = this .processObject(obj);
53: } else {
54:
55: this .logDebug("Processing object as it is: "
56: + reference);
57:
58: obj = this .processObject(reference);
59: }
60: } catch (Exception ex) {
61: this .setException(ex);
62: this .log(ex);
63: }
64:
65: return obj;
66: }
67:
68: protected abstract Object processObject(Object obj)
69: throws Exception;
70:
71: }
|