/**
* @author Axel
- *
- * TODO To change the template for this generated type comment go to
- * Window - Preferences - Java - Code Style - Code Templates
+ *
+ * TODO To change the template for this generated type comment go to Window -
+ * Preferences - Java - Code Style - Code Templates
*/
-public abstract class XDebugAbstractValue extends XDebugElement implements IValue {
-
+public abstract class XDebugAbstractValue extends XDebugElement implements
+ IValue {
+
public static final int VALUETYPE_UNKNOWN = -1;
+
public static final int VALUETYPE_UNINITIALIZED = 0;
+
public static final int VALUETYPE_STRING = 1;
+
public static final int VALUETYPE_INT = 4;
+
public static final int VALUETYPE_FLOAT = 5;
+
public static final int VALUETYPE_BOOLEAN = 6;
+
public static final int VALUETYPE_ARRAY = 8;
+
public static final int VALUETYPE_HASH = 9;
+
public static final int VALUETYPE_OBJECT = 10;
-
protected XDebugVariable fVariable;
+
private IVariable[] fVariables;
+
protected String fValueString;
+
protected int fType;
+
protected String fTypeName;
-
- public XDebugAbstractValue(XDebugVariable variable,Node varNode,String typeName) {
+
+ public XDebugAbstractValue(XDebugVariable variable, Node varNode,
+ String typeName) {
super((XDebugTarget) variable.getDebugTarget());
fVariable = variable;
- if (varNode==null){
+ if (varNode == null) {
try {
- System.out.println(variable.getName()+"=null");
+ System.out.println(variable.getName() + "=null");
} catch (DebugException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
- return;
+ return;
}
setType(typeName);
NodeList property = varNode.getChildNodes();
if (variable.hasChildren()) {
- renderValueString(""+property.getLength());
+ renderValueString("" + property.getLength());
fVariables = new IVariable[property.getLength()];
- for (int i = 0; i<property.getLength(); i++) {
+ for (int i = 0; i < property.getLength(); i++) {
Node propertyNode = property.item(i);
- fVariables[i] = new XDebugVariable(variable.getStackFrame(), propertyNode);
+ fVariables[i] = new XDebugVariable(variable.getStackFrame(),
+ propertyNode);
}
- }else {
-// fDataString="";
+ } else {
+ // fDataString="";
fVariables = new IVariable[0];
-// if (variable.getType()== XDebugVariable.VARTYPE_UNINITIALIZED)
-// fValueString="uninitialized";
-// else {
- String str="";
+ // if (variable.getType()== XDebugVariable.VARTYPE_UNINITIALIZED)
+ // fValueString="uninitialized";
+ // else {
+ String str = "";
try {
- str=varNode.getFirstChild().getNodeValue();
+ str = varNode.getFirstChild().getNodeValue();
} catch (NullPointerException e) {
- str="";
+ str = "";
}
if (variable.getEncoding().equals("base64")) {
- if (str.length()!=0)
- str=new String(Base64.decode(str));
+ if (str.length() != 0)
+ str = new String(Base64.decode(str));
else
- str="";
+ str = "";
}
renderValueString(str);
-// }
+ // }
}
- String className=PHPDebugUtils.getAttributeValue(varNode,"classname");
- if(className!="")
+ String className = PHPDebugUtils
+ .getAttributeValue(varNode, "classname");
+ if (className != "")
renderValueString(className);
}
-
- /* (non-Javadoc)
+
+ /*
+ * (non-Javadoc)
+ *
* @see org.eclipse.debug.core.model.IValue#getReferenceTypeName()
*/
public String getReferenceTypeName() throws DebugException {
return fTypeName;
}
- /* (non-Javadoc)
+
+ /*
+ * (non-Javadoc)
+ *
* @see org.eclipse.debug.core.model.IValue#getValueString()
*/
public String getValueString() throws DebugException {
return fValueString;
}
- /* (non-Javadoc)
+
+ /*
+ * (non-Javadoc)
+ *
* @see org.eclipse.debug.core.model.IValue#isAllocated()
*/
public boolean isAllocated() throws DebugException {
return true;
}
- /* (non-Javadoc)
+
+ /*
+ * (non-Javadoc)
+ *
* @see org.eclipse.debug.core.model.IValue#getVariables()
*/
public IVariable[] getVariables() throws DebugException {
return fVariables;
}
- /* (non-Javadoc)
+
+ /*
+ * (non-Javadoc)
+ *
* @see org.eclipse.debug.core.model.IValue#hasVariables()
*/
public boolean hasVariables() throws DebugException {
- return (fVariables.length>0);
+ return (fVariables.length > 0);
}
-
+
public boolean isArray() {
return ((fType & VALUETYPE_ARRAY) > 0);
}
-
+
public abstract void setType(String typeName);
+
public abstract void renderValueString(String data);
public abstract boolean verifyValue(String expression);
-
+
public boolean setValue(String expression) {
if (!verifyValue(expression))
return false;
- if(fTarget.setVarValue(fVariable.getFullName(),expression)) {
+ if (fTarget.setVarValue(fVariable.getFullName(), expression)) {
renderValueString(expression);
return true;
}