Class DefinedTypeFrame
java.lang.Object
|
+----Frame
|
+----DefinedTypeFrame
- public class DefinedTypeFrame
- extends Frame
The class `DefinedTypeFrame', a subclass of Frame,
represents a frame internally as an exjava Type object - such frames
should only be used to represent defined types in EXPRESS models.
-
DefinedTypeFrame(Type)
- Constructs this frame by plugging in the given exjava Type object
(it does so by copying the reference, which is maximally efficient
but the client should not then alter the Type directly, as that
would compromise the integrity of the frame).
-
DefinedTypeFrame(Type, Hashtable)
- Constructs this frame by plugging in the given exjava Type object
(it does so by copying the reference, which is maximally efficient,
but the client should not then alter the Type directly, as that would
compromise the integrity of the frame).
-
buildFrame()
- Fills in the slots for this frame from the underlying exjava Type
object.
-
buildQueuedFrames()
- Builds any DefinedType Frames that are queued to be built (those that
were constructed before the frame class was constructed).
-
getFrameClass()
- Returns the frame class of this frame.
-
getQueryVariables()
- Returns the stack of query variables on this frame.
-
initialise(Express)
- Initialises the DefinedTypeFrame class by setting the class variable
_frameClass after looking up the `defined_type' entity in the
given EXPRESS (meta)model.
-
popQueryVariable()
- Pops the top query variable off of this frame.
-
pushQueryVariable(Frame)
- Pushes a given query variable onto the stack.
-
readClass(ObjectInput)
- Deserialises the static data members (class variables) of
DefinedTypeFrame.
-
writeClass(ObjectOutput)
- Serialises the static data members (class variables) of
DefinedTypeFrame.
DefinedTypeFrame
public DefinedTypeFrame(Type instanceData) throws FrameAlreadyExists
- Constructs this frame by plugging in the given exjava Type object
(it does so by copying the reference, which is maximally efficient
but the client should not then alter the Type directly, as that
would compromise the integrity of the frame).
- Parameters:
- instanceData - An exjava Type object to wrap in this frame.
- Throws: FrameAlreadyExists
- If a Type has already been constructed
for `instanceData'.
DefinedTypeFrame
public DefinedTypeFrame(Type instanceData,
Hashtable moreInstanceData) throws FrameAlreadyExists
- Constructs this frame by plugging in the given exjava Type object
(it does so by copying the reference, which is maximally efficient,
but the client should not then alter the Type directly, as that would
compromise the integrity of the frame). This constructor allows the
defined type frame to be tagged with extra slots, given in a hash
table.
- Parameters:
- instanceData - An exjava Type object to wrap in this frame.
- moreInstanceData - Extra slots to tag this defined type frame
with.
- Throws: FrameAlreadyExists
- If a Type has already been constructed
for `instanceData'.
initialise
public static void initialise(Express metamodel)
- Initialises the DefinedTypeFrame class by setting the class variable
_frameClass after looking up the `defined_type' entity in the
given EXPRESS (meta)model.
- Parameters:
- metamodel - An EXPRESS metamodel, which is expected to contain
the entity `defined_type'.
buildQueuedFrames
public static void buildQueuedFrames()
- Builds any DefinedType Frames 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.
buildFrame
public void buildFrame()
- Fills in the slots for this frame from the underlying exjava Type
object.
getFrameClass
public FrameClass getFrameClass()
- Returns the frame class of this frame.
- Returns:
- The frame class of this frame.
- Overrides:
- getFrameClass in class Frame
writeClass
public static void writeClass(ObjectOutput oo) throws IOException
- Serialises the static data members (class variables) of
DefinedTypeFrame.
- Parameters:
- oo - An output object to save the class data to.
- Throws: IOException
- If an I/O exception occurs.
readClass
public static void readClass(ObjectInput oi) throws IOException
- Deserialises the static data members (class variables) of
DefinedTypeFrame.
- Parameters:
- ois - An input object to save the class data to.
- Throws: IOException
- If an I/O exception occurs.
getQueryVariables
public Vector getQueryVariables()
- Returns the stack of query variables on this frame.
- Returns:
- The query variables on this defined type frame.
pushQueryVariable
public void pushQueryVariable(Frame queryVariable)
- Pushes a given query variable onto the stack.
- Parameters:
- queryVariable - The query variable to be pushed onto this frame,
which is supposed to be a query_variable frame.
popQueryVariable
public void popQueryVariable()
- Pops the top query variable off of this frame.