.
*/
/** ***********************************************************
*
*
* PURPOSE:
* This class represents all user defined structured types in the ODMG conformant
* representation of the RasDaMan type system.
* @version $Revision: 1.8 $
*
*
*
* COMMENTS:
*
*
*********************************************************** */
public class RasStructureType extends RasBaseType
{
static final String rcsid = "@(#)Package rasj, class RasStructureType: $Header: /home/rasdev/CVS-repository/rasdaman/java/rasj/RasStructureType.java,v 1.8 2003/12/10 21:04:23 rasdev Exp $";
private RasBaseType[] baseTypes;
private String[] attributes;
public RasStructureType()
{
super();
baseTypes = null;
attributes = null;
}
public RasStructureType(String name, RasBaseType[] btyp, String[] attr)
{
super(name, 0);
baseTypes = btyp;
attributes = attr;
for(int i=0; i < baseTypes.length/2; i++)
{
typeSize = typeSize + baseTypes[i].getSize();
//System.out.println(typeSize);
}
typeID = RasGlobalDefs.RAS_STRUCTURE;
}
public int getTypeID()
{
return RasGlobalDefs.RAS_STRUCTURE;
}
public boolean isStructType()
{
return true;
}
public String toString()
{
//System.out.println("struct type: ");
String s = super.toString() + "struct " + super.typeName + "\n{\n";
for(int i=0; i < (attributes.length/2)-1; i++)
{
s = s + " " + baseTypes[i] + " " + attributes[i] + ", \n";
if(i == (attributes.length/2)-2)
{
s = s + baseTypes[i+1] + " " + attributes[i+1] + "\n}\n";
}
}
return s;
}
}