Class LiteralFrame

java.lang.Object
   |
   +----Frame
           |
           +----LiteralFrame

public class LiteralFrame
extends Frame
The class `LiteralFrame', a subclass of Frame, represents a frame internally as an exjava Literal object - such frames should only be used to represent literals in EXPRESS models.


Constructor Index

 o LiteralFrame(Literal)
Constructs this frame by plugging in the given exjava Literal object (it does so by copying the reference, which is maximally efficient, but the client should not then alter the Literal directly, as that would compromise the integrity of the frame).
 o LiteralFrame(Literal, Hashtable)
Constructs this frame by plugging in the given exjava Literal object (it does so by copying the reference, which is maximally efficient, but the client should not then alter the Literal directly, as that would compromise the integrity of the frame).

Method Index

 o buildFrame()
Fills in the slots for this frame from the underlying exjava Literal object.
 o buildQueuedFrames()
Builds any LiteralFrames that are queued to be built (those that were constructed before the frame class was constructed).
 o getFrameClass()
Returns the frame class of this frame.
 o initialise(Express)
Initialises the LiteralFrame class by setting the class variable _frameClass after looking up the `literal_expression' entity in the given EXPRESS (meta)model.
 o readClass(ObjectInput)
Deserialises the static data members (class variables) of LiteralFrame.
 o writeClass(ObjectOutput)
Serialises the static data members (class variables) of LiteralFrame.

Constructors

 o LiteralFrame
 public LiteralFrame(Literal instanceData) throws FrameAlreadyExists
Constructs this frame by plugging in the given exjava Literal object (it does so by copying the reference, which is maximally efficient, but the client should not then alter the Literal directly, as that would compromise the integrity of the frame).

Parameters:
instanceData - An exjava Literal object to wrap in this frame.
Throws: FrameAlreadyExists
If an LiteralFrame has already been constructed for `instanceData'.
 o LiteralFrame
 public LiteralFrame(Literal instanceData,
                     Hashtable moreInstanceData) throws FrameAlreadyExists
Constructs this frame by plugging in the given exjava Literal object (it does so by copying the reference, which is maximally efficient, but the client should not then alter the Literal directly, as that would compromise the integrity of the frame). This constructor allows the literal frame to be tagged with extra slots, given in a hash table.

Parameters:
instanceData - An exjava Literal object to wrap in this frame.
moreInstanceData - Extra slots to tag this literal frame with.
Throws: FrameAlreadyExists
If an LiteralFrame has already been constructed for `instanceData'.

Methods

 o initialise
 public static void initialise(Express metamodel)
Initialises the LiteralFrame class by setting the class variable _frameClass after looking up the `literal_expression' entity in the given EXPRESS (meta)model.

Parameters:
metamodel - An EXPRESS metamodel, which is expected to contain the entity `literal_expression'.
 o buildQueuedFrames
 public static void buildQueuedFrames()
Builds any LiteralFrames that are queued to be built (those that were constructed before the frame class was constructed). Their slots are filled from the exjava objects with which they were constructed, and they are then validated.

 o buildFrame
 public void buildFrame()
Fills in the slots for this frame from the underlying exjava Literal object.

 o getFrameClass
 public FrameClass getFrameClass()
Returns the frame class of this frame.

Returns:
The frame class of this frame.
Overrides:
getFrameClass in class Frame
 o writeClass
 public static void writeClass(ObjectOutput oo) throws IOException
Serialises the static data members (class variables) of LiteralFrame.

Parameters:
oo - An output object to save the class data to.
Throws: IOException
If an I/O exception occurs.
 o readClass
 public static void readClass(ObjectInput oi) throws IOException
Deserialises the static data members (class variables) of LiteralFrame.

Parameters:
ois - An input object to save the class data to.
Throws: IOException
If an I/O exception occurs.