fr.umlv.corosol.classfile.constant.impl
Class DefaultJConstantString

java.lang.Object
  extended by fr.umlv.corosol.classfile.constant.impl.AbstractJConstant
      extended by fr.umlv.corosol.classfile.constant.impl.DefaultJConstantString
All Implemented Interfaces:
JConstant, JConstantString, JLoadableConstant, JClassFileItem, JObject

public class DefaultJConstantString
extends AbstractJConstant
implements JConstantString

The default implementation of JConstantString interface.

Author:
Christophe Deleray

Field Summary
 
Fields inherited from interface fr.umlv.corosol.classfile.constant.JConstant
CONSTANT_CLASS, CONSTANT_DOUBLE, CONSTANT_FIELDREF, CONSTANT_FLOAT, CONSTANT_INTEGER, CONSTANT_INTERFACE_METHODREF, CONSTANT_LONG, CONSTANT_METHODREF, CONSTANT_NAME_AND_TYPE, CONSTANT_STRING, CONSTANT_UTF8
 
Constructor Summary
DefaultJConstantString()
          Default constructor.
 
Method Summary
 java.lang.String getString()
          Returns the String object represented by this constant pool entry.
 int getStringIndex()
          Returns the index of a CONSTANT_Utf8_info entry representing the sequence of characters which will be initialized a String object.
 void pushConstantValue(JStackFrame frame)
          Pushes the value onto the top of the operand stack of the specified stack frame.
 void readItem(JClassFileInput in)
          Extracts the data of this constant pool entry from the specified input stream.
 void setStringIndex(int stringIndex)
          Sets the index of the CONSTANT_Utf8_info entry representing the sequence of characters which will initialize a String object.
 java.lang.String toString()
          Returns a string representation of this constant pool entry.
 void writeItem(JClassFileOutput out)
          Writes the data of this constant pool entry to a classfile via the specified output stream.
 
Methods inherited from class fr.umlv.corosol.classfile.constant.impl.AbstractJConstant
getConstantPool, getLength, getTag, setConstantPool
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface fr.umlv.corosol.classfile.constant.JConstant
getLength, getTag
 
Methods inherited from interface fr.umlv.corosol.classfile.JClassFileItem
getConstantPool, setConstantPool
 

Constructor Detail

DefaultJConstantString

public DefaultJConstantString()
Default constructor.

Method Detail

getString

public java.lang.String getString()
Returns the String object represented by this constant pool entry.

Specified by:
getString in interface JConstantString
Returns:
the string represented by this entry

getStringIndex

public int getStringIndex()
Returns the index of a CONSTANT_Utf8_info entry representing the sequence of characters which will be initialized a String object.

Specified by:
getStringIndex in interface JConstantString

setStringIndex

public void setStringIndex(int stringIndex)
Sets the index of the CONSTANT_Utf8_info entry representing the sequence of characters which will initialize a String object.

Specified by:
setStringIndex in interface JConstantString
Parameters:
stringIndex - the index of the entry containing the characters of a *String

readItem

public void readItem(JClassFileInput in)
              throws java.io.IOException
Extracts the data of this constant pool entry from the specified input stream.

Specified by:
readItem in interface JClassFileItem
Parameters:
in - a class file input stream
Throws:
java.io.IOException - if an I/O error occurs when reading the datas of this constant pool entry

writeItem

public void writeItem(JClassFileOutput out)
               throws java.io.IOException
Writes the data of this constant pool entry to a classfile via the specified output stream.

Specified by:
writeItem in interface JClassFileItem
Parameters:
out - a class file output stream
Throws:
java.io.IOException - if an I/O error occurs when writing into the classfile

pushConstantValue

public void pushConstantValue(JStackFrame frame)
Pushes the value onto the top of the operand stack of the specified stack frame.

Specified by:
pushConstantValue in interface JLoadableConstant
Parameters:
frame - a stack frame

toString

public java.lang.String toString()
Returns a string representation of this constant pool entry.

Specified by:
toString in interface JConstant
Specified by:
toString in class AbstractJConstant
Returns:
a string representing this constant pool entry