org.jclarion.clarion
Class ClarionGroup

java.lang.Object
  extended by org.jclarion.clarion.ClarionMemoryModel
      extended by org.jclarion.clarion.ClarionGroup
All Implemented Interfaces:
Threaded
Direct Known Subclasses:
ClarionFile, ClarionQueue

public class ClarionGroup
extends ClarionMemoryModel

Model a group of parameters

Author:
barney

Nested Class Summary
protected static class ClarionGroup.GroupEntry
           
protected static class ClarionGroup.ReferenceVariable
           
 
Nested classes/interfaces inherited from class org.jclarion.clarion.ClarionMemoryModel
ClarionMemoryModel.State
 
Field Summary
protected  java.util.LinkedHashMap<java.lang.String,ClarionGroup.GroupEntry> map
           
 
Constructor Summary
ClarionGroup()
           
 
Method Summary
 void addReference(java.lang.String name, java.lang.Object object)
          Add reference variable to the group
 void addVariable(java.lang.String name, java.lang.Object object)
          Add a variable to group
 void addVariable(java.lang.String name, java.lang.Object[] object)
          Add a dimensioned variable to group
 void clear()
           
 void clear(int method)
          Clear group
 void clearNull(ClarionObject clarionObject)
           
 void deserialize(java.io.InputStream os)
          Read object from memory as clarion would represent object in memory
 ClarionObject flatWhat(int index)
           
 int flatWhere(java.lang.Object o)
           
 java.lang.String flatWho(int index)
           
 ClarionGroup genericLike()
           
 java.lang.Object getGroupObject(java.lang.String key)
          Get group parameter based on specified add key.
 ClarionObject getGroupParam(java.lang.String key)
          Get group parameter based on specified add key.
 int getGroupParamPosition(java.lang.String key)
           
 java.lang.Object getLockedObject(java.lang.Thread t)
           
 java.lang.String getPrefix()
           
 ClarionString getString()
          Get string representation of group based on its memory model
 ClarionGroup getThread()
           
 int getVariableCount()
           
 void initThread()
           
 void merge(ClarionGroup group)
          Deep Merge settings from supplied group into this group
 void serialize(java.io.OutputStream is)
          Write java object to memory as clarion would represent object in memory
 void setNull(ClarionObject clarionObject)
           
 ClarionGroup setOver(ClarionMemoryModel cmm)
           
 ClarionGroup setOver(ClarionMemoryModel[] o)
           
 void setPrefix(java.lang.String prefix)
          Set file prefix as specified in clarion source code.
 void setValue(ClarionObject object)
          Set grou from string based on its memory model
 void setValue(java.lang.Object object)
           
 ClarionObject what(int index)
           
 int where(java.lang.Object component)
          Return position of a given component within a group.
 ClarionString who(int index)
          Return runtime name of object at given position.
 java.lang.String whoNoPrefix(int index)
           
 
Methods inherited from class org.jclarion.clarion.ClarionMemoryModel
addChangeListener, addChangeListener, castTo, getListenerCount, isAnyoneInterestedInChange, isThreaded, lock, notifyChange, removeChangeListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

map

protected java.util.LinkedHashMap<java.lang.String,ClarionGroup.GroupEntry> map
Constructor Detail

ClarionGroup

public ClarionGroup()
Method Detail

initThread

public void initThread()
Specified by:
initThread in interface Threaded
Overrides:
initThread in class ClarionMemoryModel

getThread

public ClarionGroup getThread()

setPrefix

public void setPrefix(java.lang.String prefix)
Set file prefix as specified in clarion source code. File prefix is required because there are alot of runtime structures will refer to it - particularly view "order" and "filter" attributes.

Parameters:
prefix -

getPrefix

public java.lang.String getPrefix()

addVariable

public void addVariable(java.lang.String name,
                        java.lang.Object object)
Add a variable to group

Parameters:
name -
object -

getVariableCount

public int getVariableCount()

addVariable

public void addVariable(java.lang.String name,
                        java.lang.Object[] object)
Add a dimensioned variable to group

Parameters:
name -
object -

addReference

public void addReference(java.lang.String name,
                         java.lang.Object object)
Add reference variable to the group

Parameters:
name -
object -

setOver

public ClarionGroup setOver(ClarionMemoryModel cmm)

setOver

public ClarionGroup setOver(ClarionMemoryModel[] o)

clear

public void clear(int method)
Clear group

Parameters:
method - 0 = clear values to zero/null/empty. -1 = clear values to smallest comparator value +1 = clear values to largest comparator value

clear

public void clear()

genericLike

public ClarionGroup genericLike()

merge

public void merge(ClarionGroup group)
Deep Merge settings from supplied group into this group

Parameters:
group -

what

public ClarionObject what(int index)

flatWhat

public ClarionObject flatWhat(int index)

flatWho

public java.lang.String flatWho(int index)

getGroupParamPosition

public int getGroupParamPosition(java.lang.String key)

getGroupParam

public ClarionObject getGroupParam(java.lang.String key)
Get group parameter based on specified add key. i.e. its 'runtime' name Keys are case insensitive

Parameters:
key -
Returns:

getGroupObject

public java.lang.Object getGroupObject(java.lang.String key)
Get group parameter based on specified add key. i.e. its 'runtime' name Keys are case insensitive

Parameters:
key -
Returns:

where

public int where(java.lang.Object component)
Return position of a given component within a group.

Parameters:
component -
Returns:

flatWhere

public int flatWhere(java.lang.Object o)

who

public ClarionString who(int index)
Return runtime name of object at given position. Note comments on what above regarding how positions are worked out

Parameters:
index -
Returns:

whoNoPrefix

public java.lang.String whoNoPrefix(int index)

deserialize

public void deserialize(java.io.InputStream os)
                 throws java.io.IOException
Description copied from class: ClarionMemoryModel
Read object from memory as clarion would represent object in memory

Specified by:
deserialize in class ClarionMemoryModel
Throws:
java.io.IOException

serialize

public void serialize(java.io.OutputStream is)
               throws java.io.IOException
Description copied from class: ClarionMemoryModel
Write java object to memory as clarion would represent object in memory

Specified by:
serialize in class ClarionMemoryModel
Throws:
java.io.IOException

getString

public ClarionString getString()
Get string representation of group based on its memory model

Returns:

setValue

public void setValue(ClarionObject object)
Set grou from string based on its memory model


setValue

public void setValue(java.lang.Object object)

setNull

public void setNull(ClarionObject clarionObject)

clearNull

public void clearNull(ClarionObject clarionObject)

getLockedObject

public java.lang.Object getLockedObject(java.lang.Thread t)


Copyright © 2010. All Rights Reserved.