001 package railo.runtime.type.trace; 002 003 import railo.runtime.PageContext; 004 import railo.runtime.debug.Debugger; 005 import railo.runtime.dump.DumpData; 006 import railo.runtime.dump.DumpProperties; 007 import railo.runtime.dump.DumpUtil; 008 import railo.runtime.exp.PageException; 009 import railo.runtime.op.Caster; 010 import railo.runtime.op.Operator; 011 import railo.runtime.type.Collection.Key; 012 import railo.runtime.type.Objects; 013 import railo.runtime.type.Struct; 014 import railo.runtime.type.dt.DateTime; 015 import railo.runtime.util.VariableUtilImpl; 016 017 public class TOObjects extends TraceObjectSupport implements Objects { 018 019 private static final long serialVersionUID = -2011026266467450312L; 020 021 protected TOObjects(Debugger debugger,Object obj,int type,String category,String text) { 022 super(debugger,obj,type,category,text); 023 } 024 025 @Override 026 public DumpData toDumpData(PageContext pageContext, int maxlevel, DumpProperties properties) { 027 log(); 028 return DumpUtil.toDumpData(o, pageContext, maxlevel, properties); 029 } 030 031 @Override 032 public String castToString() throws PageException { 033 log(); 034 return Caster.toString(o); 035 } 036 037 @Override 038 public String castToString(String defaultValue) { 039 log(); 040 return Caster.toString(o,defaultValue); 041 } 042 043 @Override 044 public boolean castToBooleanValue() throws PageException { 045 log(); 046 return Caster.toBooleanValue(o); 047 } 048 049 @Override 050 public Boolean castToBoolean(Boolean defaultValue) { 051 log(); 052 return Caster.toBoolean(o,defaultValue); 053 } 054 055 @Override 056 public double castToDoubleValue() throws PageException { 057 log(); 058 return Caster.toDoubleValue(o); 059 } 060 061 @Override 062 public double castToDoubleValue(double defaultValue) { 063 log(); 064 return Caster.toDoubleValue(o,defaultValue); 065 } 066 067 @Override 068 public DateTime castToDateTime() throws PageException { 069 log(); 070 return new TODateTime(debugger,Caster.toDate(o, false,null),type,category,text); 071 } 072 073 @Override 074 public DateTime castToDateTime(DateTime defaultValue) { 075 log(); 076 return new TODateTime(debugger,Caster.toDate(o, false,null,defaultValue),type,category,text); 077 } 078 079 @Override 080 public int compareTo(boolean b) throws PageException { 081 log(); 082 return Operator.compare(o, b); 083 } 084 085 @Override 086 public int compareTo(DateTime dt) throws PageException { 087 log(); 088 return Operator.compare(o, (Object)dt); 089 } 090 091 @Override 092 public int compareTo(double d) throws PageException { 093 log(); 094 return Operator.compare(o, d); 095 } 096 097 @Override 098 public int compareTo(String str) throws PageException { 099 log(); 100 return Operator.compare(o, str); 101 } 102 103 @Override 104 public Object get(PageContext pc, Key key) throws PageException { 105 log(key.getString()); 106 VariableUtilImpl var = (VariableUtilImpl) pc.getVariableUtil(); 107 return var.get(pc, o, key); 108 //return TraceObjectSupport.toTraceObject(debugger,var.get(pc, o, key),type,category,text); 109 } 110 111 @Override 112 public Object get(PageContext pc, Key key, Object defaultValue) { 113 log(key.getString()); 114 VariableUtilImpl var = (VariableUtilImpl) pc.getVariableUtil(); 115 return var.get(pc, o, key, defaultValue); 116 //return TraceObjectSupport.toTraceObject(debugger,var.get(pc, o, key, defaultValue),type,category,text); 117 } 118 119 @Override 120 public Object set(PageContext pc, Key key, Object value) throws PageException { 121 log(key,value); 122 VariableUtilImpl var = (VariableUtilImpl) pc.getVariableUtil(); 123 return var.set(pc, o, key, value); 124 //return TraceObjectSupport.toTraceObject(debugger,var.set(pc, o, key, value),type,category,text); 125 } 126 127 @Override 128 public Object setEL(PageContext pc, Key key, Object value) { 129 log(key,value); 130 VariableUtilImpl var = (VariableUtilImpl) pc.getVariableUtil(); 131 return var.setEL(pc, o, key, value); 132 //return TraceObjectSupport.toTraceObject(debugger,var.setEL(pc, o, key, value),type,category,text); 133 } 134 135 @Override 136 public Object call(PageContext pc, Key key, Object[] args) throws PageException { 137 log(key.getString()); 138 VariableUtilImpl var = (VariableUtilImpl) pc.getVariableUtil(); 139 return var.callFunctionWithoutNamedValues(pc, o, key, args); 140 } 141 142 @Override 143 public Object callWithNamedValues(PageContext pc, Key key, Struct args) throws PageException { 144 log(key.getString()); 145 VariableUtilImpl var = (VariableUtilImpl) pc.getVariableUtil(); 146 return var.callFunctionWithNamedValues(pc, o, key, args); 147 } 148 149 public boolean isInitalized() { 150 log(); 151 return true; 152 } 153 }