Class ObjectLibrary
- All Implemented Interfaces:
JdapiObject
In some cases, using methods on this class may result in a
JdapiIllegalStateException being thrown. When this happens, you are using
an object that refers to a Forms object that has been deleted - your
reference is no longer valid. You can check if an instance of this
class is valid by using the isValidFormsObject()
method.
If you code correctly, this should not happen. It will tend to happen
if you keep references (for extended periods) to Forms objects rather
than look them up dynamically. Of course you will only have this
problem if you destroy Forms objects.
- See Also:
-
BaseAPI
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Object
Client info object held against this Forms object.protected long
This is the d2fob pointer in the C ifjapi60 for the object that is derived from this class.Fields inherited from interface oracle.forms.jdapi.JdapiObject
PROPERTY_DEFAULT_VALUE, PROPERTY_INHERITED_VALUE, PROPERTY_OVERRIDDEN_DEFAULT_VALUE, PROPERTY_OVERRIDDEN_INHERITED_VALUE, PROPERTY_STATE_UNKNOWN
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
ObjectLibrary
(long pd2folb) Protected constructor, used internally to create ObjectLibrary objects.ObjectLibrary
(String name) Constructor used to create ObjectLibrary objects. -
Method Summary
Modifier and TypeMethodDescriptionaddObject
(ObjectLibraryTab tab, JdapiObject obj, boolean replace) Add an object to the ObjectLibrary.void
changeOwner
(JdapiObject newOwner) Assigns a new owner to the referred object.protected void
Used internally to flag this object as an invalid object.Creates a copy of the object as a child of 'parent'.clone
(JdapiObject parent, String newName) Creates a clone of the specified object, creating a new object with the given name and owner.void
compile()
Compiles the module to the filesystem.createSubclassedChild
(JdapiObject childOwner, String childName) Subclass the referred object.boolean
equals
(JdapiObject obj) Compares two objects and determines if they are equal.static ObjectLibrary
Find an instance of ObjectLibrary.findObjectByPosition
(int pos) Gets an object from the ObjectLibrary based on it's index.Get text property Appname (APPNAME_PTID).boolean
getBooleanProperty
(int propertyTypeId) Retrieves a boolean property from the referred object.getChildObjectProperty
(int propertyTypeId) Retrieves child objects for a given property value.Gets the class name of the object.Returns the client info object associated with this Object.Get text property Comment (COMMENT_PTID).Gets description of object in the library.int
getIntegerProperty
(int propertyTypeId) Retrieves an integer property from the referred object.getIntegerPropertyString
(int propertyTypeId) Gets a numeric (long
) property value's text representation.Gets the metadata object for the specified object.Return an iterator over the meta properties in object referred.Get Module (MODULE_PTID) object property.getName()
Get text property Name (NAME_PTID).int
Get number property ObjectCount (OBJECT_COUNT_PTID).Gets an iterator over all the objects in the libraryAccessor for child ObjectLibraryTab objects (OBJECT_LIBRARY_TAB_PTID).protected long
Gets the Forms API pointer for this object.getObjectProperty
(int propertyTypeId) Retrieves aJdapiObject
property from the referred object.getObjectTab
(JdapiObject obj) Gets the ObjectLibraryTab for the tab a given object is on.Gets the name of the tab in the library that a given object is on.protected long
getObjProp
(int propertyTypeId) Internal method used to get an object property value.Get the object instances owned by this particular object.getOwner()
Get Owner (OWNER_PTID) object property.Returns the persistent client info Blob associated with this object.int
Get number property PersistentClientInfoLength (PERSISTENT_CLIENT_INFO_LENGTH_PTID).Returns the persistent client info Java object associated with this object.int
getPropertyState
(int propertyTypeId) Returns the current state of the specified property.getPropertyValueName
(int propertyTypeId, int val) Gets the string representation of a given property's value.getQualifiedName
(boolean includeModule) Gets a fully qualified name for the object in the format of: MODULE.OBJECT.CHILD.CHILD...int
getStringIDProperty
(int propertyTypeId) Retrieves a special String ID (integer) property from the referred object.getStringProperty
(int propertyTypeId) Retrieves a string property from the referred object.Get Source (SOURCE_PTID) object property, i.e.Get a TranslationTable object representing the translations for this module.int
Gets the HtmlForms object type ID.boolean
hasDefaultedProperty
(int propertyTypeId) Checks if a property is set to it's default value.boolean
hasInheritedProperty
(int propertyTypeId) Checks if a property is inherited.boolean
hasOverriddenProperty
(int propertyTypeId) Determine whether the object referred has a property of the given type id with an overridden value.boolean
hasProperty
(int propertyTypeId) Checks if the object has a given property.void
inheritProperty
(int propertyTypeId) Resets a property to it's default value (confusing name eh?).boolean
Get boolean property DirtyInfo (DIRTY_INFO_PTID).boolean
isSmartClass
(JdapiObject obj) Checks if an object in the library is a 'smart' object.boolean
Checks if the object is subclassed from another object.boolean
Determines whether this Java instance references a valid Forms object.void
move
(JdapiObject next) Reorders an object with respect to its siblings in the collection it belongs to.static ObjectLibrary
Loads a ObjectLibrary module from the filesystem or from the loaded modules list.static ObjectLibrary
Loads a ObjectLibrary module from the filesystem or from the loaded modules list.static ObjectLibrary
Loads a ObjectLibrary module from the filesystem or from the loaded modules list.static ObjectLibrary
Loads a ObjectLibrary module from the filesystem or from the loaded modules list.int
Returns the FormAPI object type ID (x_OTID
inJdapiTypes
).void
reattach()
Reattaches subclassed object.void
removeObject
(JdapiObject obj) Removes an object from the ObjectLibrary.void
Saves the module to the filesystem.void
setAppname
(String value) Sets text property Appname (APPNAME_PTID).void
setBooleanProperty
(int propertyTypeId, boolean propertyValue) Sets the value of the specified boolean property belonging to the referred object.void
setClientInfo
(Object clientInfo) Sets the client information.void
setComment
(String value) Sets text property Comment (COMMENT_PTID).void
setDescription
(JdapiObject obj, String description) Sets the description for a object in the library.void
setDirtyInfo
(boolean value) Sets boolean property DirtyInfo (DIRTY_INFO_PTID).void
setIntegerProperty
(int propertyTypeId, int propertyValue) Sets the value of the specified object integer property.void
Sets text property Name (NAME_PTID).void
setObjectProperty
(int propertyTypeId, JdapiObject propertyValue) Sets the value of the specified object object property value.protected void
setObjProp
(int propertyTypeId, long val) Internal method used to set an object property.void
Serializes any Java object which supports the Serializable interface to this object's Persistent Client Info.void
Sets persistent client info for this object.void
setPersistentClientInfoLength
(int value) Sets number property PersistentClientInfoLength (PERSISTENT_CLIENT_INFO_LENGTH_PTID).void
setSmartClass
(JdapiObject obj, boolean smart) Flag if an object is considered a 'smart' object.void
setStringProperty
(int propertyTypeId, String propertyValue) Sets the value of the specified string property for the object.void
setSubclassParent
(JdapiObject parent) Change the subclassing parent of the object referred.toString()
Converts and returns the object properties to string format.void
Remove the subclassing parent of the object referred.Methods inherited from class oracle.forms.jdapi.JdapiModule
compile_all, destroy, getAbsolutePath, getModulesProductVersion, openModule, openModule, openModule, openModule, setAbsolutePath
-
Field Details
-
m_pd2fob
protected transient long m_pd2fobThis is the d2fob pointer in the C ifjapi60 for the object that is derived from this class. -
m_clientInfo
Client info object held against this Forms object.
-
-
Constructor Details
-
ObjectLibrary
Constructor used to create ObjectLibrary objects.- Parameters:
name
- Name of the new object
-
ObjectLibrary
protected ObjectLibrary(long pd2folb) Protected constructor, used internally to create ObjectLibrary objects. This doesn't actually create a new ObjectLibrary, it just creates a Java instance for an already existing Forms object.Do NOT use this constructor, even within the Jdapi package. If you have a pointer and need to instantiate it's Java representation, get the object via the context cache, e.g.
myBaseObject = Jdapi.getObject(myPointer);
- Parameters:
pd2folb
- C pointer to Forms object
-
-
Method Details
-
getTypeId
public int getTypeId()Gets the HtmlForms object type ID.- Specified by:
getTypeId
in interfaceJdapiObject
- Returns:
- X_OTID ID for this object type
- See Also:
-
open
Loads a ObjectLibrary module from the filesystem or from the loaded modules list.A runtime exception is thrown if a module the file has subclassed from cannot be found on the Forms path. This behaviour can be suppressed with the
Jdapi.setFailSubclassLoad()
method.- Parameters:
fileName
- File name of ObjectLibrary to load- Returns:
- ObjectLibrary object
-
open
Loads a ObjectLibrary module from the filesystem or from the loaded modules list.A runtime exception is thrown if a module the file has subclassed from cannot be found on the Forms path. This behaviour can be suppressed with the
Jdapi.setFailSubclassLoad()
method.- Parameters:
file
- File representing ObjectLibrary to load- Returns:
- ObjectLibrary object
-
open
Loads a ObjectLibrary module from the filesystem or from the loaded modules list.A runtime exception is thrown if a module the file has subclassed from cannot be found on the Forms path. This behaviour can be suppressed with the
Jdapi.setFailSubclassLoad()
method.- Parameters:
fileName
- Filename of ObjectLibrary to loadformsPath
- Path to use to look for modules that have been subclassed from. 'null' means use the default FORMS70_PATH.- Returns:
- ObjectLibrary object
-
open
Loads a ObjectLibrary module from the filesystem or from the loaded modules list.A runtime exception is thrown if a module the file has subclassed from cannot be found on the Forms path. This behaviour can be suppressed with the
Jdapi.setFailSubclassLoad()
method.- Parameters:
file
- File representing ObjectLibrary to loadformsPath
- Path to use to look for modules that have been subclassed from. 'null' means use the default FORMS70_PATH.- Returns:
- ObjectLibrary object
-
save
Saves the module to the filesystem.- Specified by:
save
in classJdapiModule
- Parameters:
fileName
- Filename to save as
-
compile
public void compile()Compiles the module to the filesystem.Note that this method is currently unsupported for ObjectLibrary types, and if called, a JdapiUnsupportedOperationException will be thrown.
- Specified by:
compile
in classJdapiModule
-
clone
Creates a copy of the object as a child of 'parent'.- Parameters:
newName
- Name of object that's being created- Returns:
- Replicant object
-
find
Find an instance of ObjectLibrary.- Parameters:
name
- Name of object you wish to find- Returns:
- Object instance you are looking for, or null if none was found
-
addObject
Add an object to the ObjectLibrary. When adding an object, a copy of the object you want to add is made and it is this copy that is added to the library. This object is the return value.Note: Although you can add any Forms object (JdapiObject) to the ObjectLibrary using this method, Forms does not support all objects in a library, e.g. you can't put a Form in an object library (at time of writing). Trying to do so will have unexpected results, i.e. don't :)
- Parameters:
tab
- Tab to add object toobj
- Forms object to add to libraryreplace
- Replace existing object (?)- Returns:
- The object as it exists in the library
-
removeObject
Removes an object from the ObjectLibrary.- Parameters:
obj
- Object to remove
-
getObjectLibraryObjects
Gets an iterator over all the objects in the library- Returns:
- Iterator over all objects in library
-
findObjectByPosition
Gets an object from the ObjectLibrary based on it's index. You may query how many objects are in the library with thegetObjectCount()
method.- Parameters:
pos
- Position to get object at, this is 1-based- Returns:
- Object from library at that position
-
setSmartClass
Flag if an object is considered a 'smart' object.- Parameters:
obj
- Object in library to set flag forsmart
- Flag to indicate if it's a 'smart' object or not
-
isSmartClass
Checks if an object in the library is a 'smart' object.- Parameters:
obj
- Object in library to check- Returns:
- If object is a 'smart' object
-
setDescription
Sets the description for a object in the library.- Parameters:
obj
- Object in library to set description fordescription
- Description to set for object
-
getDescription
Gets description of object in the library. If there is no description set, an empty string will be returned.- Parameters:
obj
- Object in library to get description of- Returns:
- Description of object
-
getObjectTabName
Gets the name of the tab in the library that a given object is on.- Parameters:
obj
- Object in library- Returns:
- Name of tab the object is on
-
getObjectTab
Gets the ObjectLibraryTab for the tab a given object is on.- Parameters:
obj
- Object in library- Returns:
- Tab object the object is on
-
getTranslationTable
Get a TranslationTable object representing the translations for this module.- Returns:
- TranslationTable
-
getAppname
Get text property Appname (APPNAME_PTID).- Returns:
- Value of property
-
setAppname
Sets text property Appname (APPNAME_PTID).- Parameters:
value
- Value to set property to
-
getComment
Get text property Comment (COMMENT_PTID).- Returns:
- Value of property
-
setComment
Sets text property Comment (COMMENT_PTID).- Parameters:
value
- Value to set property to
-
getName
Get text property Name (NAME_PTID).- Specified by:
getName
in interfaceJdapiObject
- Returns:
- Value of property
-
setName
Sets text property Name (NAME_PTID).- Parameters:
value
- Value to set property to
-
getObjectCount
public int getObjectCount()Get number property ObjectCount (OBJECT_COUNT_PTID).- Returns:
- Value of property
-
getPersistentClientInfoLength
public int getPersistentClientInfoLength()Get number property PersistentClientInfoLength (PERSISTENT_CLIENT_INFO_LENGTH_PTID).- Returns:
- Value of property
-
setPersistentClientInfoLength
public void setPersistentClientInfoLength(int value) Sets number property PersistentClientInfoLength (PERSISTENT_CLIENT_INFO_LENGTH_PTID).- Parameters:
value
- Value to set property to
-
isDirtyInfo
public boolean isDirtyInfo()Get boolean property DirtyInfo (DIRTY_INFO_PTID).- Returns:
- Value of property
-
setDirtyInfo
public void setDirtyInfo(boolean value) Sets boolean property DirtyInfo (DIRTY_INFO_PTID).- Parameters:
value
- Value to set property to
-
getObjectLibraryTabs
Accessor for child ObjectLibraryTab objects (OBJECT_LIBRARY_TAB_PTID). Gets list of child objects as an iterator (which implements Enumeration for simple traversal).- Returns:
- Iterator of ObjectLibraryTab objects
-
getObjectPointer
protected long getObjectPointer()Gets the Forms API pointer for this object.- Returns:
- C pointer to the Forms object
-
queryType
public int queryType()Returns the FormAPI object type ID (x_OTID
inJdapiTypes
). This should always be the same value as returned forgetTypeId
. The difference between the two methods is thatqueryType
calls down to the API itself; this ensures that the correct type is returned. Because this method calls down to the API, you might find it a little faster to usegetTypeID
instead.- Specified by:
queryType
in interfaceJdapiObject
- Returns:
- x_OTID an object type ID as defined in
JdapiTypes
.
-
setClientInfo
Sets the client information. Since theclientInfo
is ajava.lang.Object
, the client information can be anything you want to associate with the referred object. For example, you can create your own class, then pass it to this method. The referred object will retain a reference to theclientInfo
.This client info object is not persistent and will be lost when the session ends.
- Specified by:
setClientInfo
in interfaceJdapiObject
- Parameters:
clientInfo
- client info to be associated with the object.
-
getClientInfo
Returns the client info object associated with this Object. The type ID of the object returned is dependant on the type ID of the object that was set usingsetClientObject
.- Specified by:
getClientInfo
in interfaceJdapiObject
- Returns:
- the client info object associated with this object.
-
getPersistentClientInfoBlob
Returns the persistent client info Blob associated with this object.- Specified by:
getPersistentClientInfoBlob
in interfaceJdapiObject
- Returns:
Blob
containing client info.
-
getPersistentClientInfoObject
Returns the persistent client info Java object associated with this object.- Specified by:
getPersistentClientInfoObject
in interfaceJdapiObject
- Returns:
- java.lang.Object serialized into the Forms object.
-
setPersistentClientInfo
Sets persistent client info for this object.Like the non-persistent client info methods, the client info can be any information that you want to save with the form. Unlike the non-persistent client info methods, the persistent info is saved as part of the form and will not be lost when the session is ended.
- Specified by:
setPersistentClientInfo
in interfaceJdapiObject
- Parameters:
val
- aBlob
object containing client info.
-
setPersistentClientInfo
Serializes any Java object which supports the Serializable interface to this object's Persistent Client Info.Like the non-persistent client info methods, the client info can be any information that you want to save with the form. Unlike the non-persistent client info methods, the persistent info is saved as part of the form and will not be lost when the session is ended.
- Specified by:
setPersistentClientInfo
in interfaceJdapiObject
- Parameters:
obj
- any Serializable object containing client info.
-
equals
Compares two objects and determines if they are equal.- Specified by:
equals
in interfaceJdapiObject
- Parameters:
obj
- object to be compared.- Returns:
true
if the two objects are equal; returnsfalse
if they are not equal.
-
clone
Creates a clone of the specified object, creating a new object with the given name and owner. For example, given a Block in Form A, you can clone it into Form B by passing Form B in theparent
parameter, and specifying a new name for the block in thenewName
parameter.The new object is the same as the original object in that it has the same property values. However, subclassing information is discarded, and the inherited property values "flattened" into local values in the new object.
It is your reponsibility to pass in an appropriate parent object. If you do not do this, you will probably get a
JdapiException
runtime exception. If possible, use the type safe clone method that is provided on each Forms object class.- Specified by:
clone
in interfaceJdapiObject
- Parameters:
parent
- owner of the new object.newName
- name of the new object.- Returns:
- the clone of the object.
-
changeOwner
Assigns a new owner to the referred object. This method will cause any previous owner to relinquish its ownership of the referred object.Set
newOwner
to null if you want the object to have no owner.The only restriction on this method is that the new owner must be in the same module as the referred object. If you attempt to assign a new owner that is in a different module, then a
JdapiException
will be thrown.Note: If you want to assign the object to a new owner in a different module, then you will have to clone or subclass the object.
- Specified by:
changeOwner
in interfaceJdapiObject
- Parameters:
newOwner
- the new owner of referred object; specify null if you want the object to have no owner.- Throws:
JdapiException
- ifnewOwner
is in a different module.
-
toString
Converts and returns the object properties to string format. This is useful for debugging purposes. The string is in the format: NAME(CLASSNAME, pointer: D2FOB*, context D2FCTX*)- Specified by:
toString
in interfaceJdapiObject
- Overrides:
toString
in classObject
- Returns:
- String representation of the object
-
clearObjectPointer
protected void clearObjectPointer()Used internally to flag this object as an invalid object. -
isValidFormsObject
public boolean isValidFormsObject()Description copied from interface:JdapiObject
Determines whether this Java instance references a valid Forms object.For example, assume that you have a reference to a block. If you call
destroy()
on its owning module, then the module and all of its blocks should be deleted from memory. The reference that you have no longer refers to a valid Forms object. A call toisValidFormsObject()
on the block should returnfalse
.- Specified by:
isValidFormsObject
in interfaceJdapiObject
- Returns:
true
if the instance references a valid forms object;false
otherwise.
-
move
Reorders an object with respect to its siblings in the collection it belongs to. This is similar to using drag and drop in Form Builder to move a block in a list. This method represents a way to do the same thing programmatically. For example, if you want a block appear immediately before Block5 in a list, you pass the object representing Block5 as thenextObject
argument.Pass null to this method to move the object to the end of the list. If the specified object and the next_object do not share the same owner, or do not have the same type, the method throws an exception.
You cannot use this method to move objects between parents. For example, it cannot be used to move an Item from one Block to another. If you want to move an object from one parent to another you will have to do something like:
// e.g. to move 'itmA' to be positioned before 'itmB' in block // 'blkB' (when 'itmA' is in another block) // copy itmA into a new parent (blkB) using same name Item newItmA = itmA.clone(blkB, itmA.getName()); newItmA.move(itmB); // move new item relative to itmB itmA.destroy(); // delete original object itmA = newItmA;
- Specified by:
move
in interfaceJdapiObject
- Parameters:
next
- the object next to which the specified object is to be moved.- Throws:
JdapiException
- if you attempt to move an object next to an object that does not share the same owner or is not of the samme type.
-
getBooleanProperty
public boolean getBooleanProperty(int propertyTypeId) Retrieves a boolean property from the referred object.- Specified by:
getBooleanProperty
in interfaceJdapiObject
- Parameters:
propertyTypeId
- property type ID for which a boolean value is returned.- Returns:
- the boolean property value.
-
getStringProperty
Retrieves a string property from the referred object.- Specified by:
getStringProperty
in interfaceJdapiObject
- Parameters:
propertyTypeId
- property type ID for which a string value is returned.- Returns:
- the string property value.
-
getIntegerProperty
public int getIntegerProperty(int propertyTypeId) Retrieves an integer property from the referred object. For example:... if(propClass.hasProperty(propNumber) && propClass.allowGet(propNumber)) { int propValue = propClass.getIntegerProperty(propNum); } ...
- Specified by:
getIntegerProperty
in interfaceJdapiObject
- Parameters:
propertyTypeId
- property type ID for which an integer value is returned.- Returns:
- the integer property value.
-
getStringIDProperty
public int getStringIDProperty(int propertyTypeId) Retrieves a special String ID (integer) property from the referred object.This method is intended for use with the
TranslationTable
object only. For a given property ID it retrieves the integer that indexes the string property in the table for the current language.- Specified by:
getStringIDProperty
in interfaceJdapiObject
- Parameters:
propertyTypeId
- property type ID for which a String ID value is returned.- Returns:
- the integer String ID property value.
-
getPropertyValueName
Description copied from interface:JdapiObject
Gets the string representation of a given property's value.- Specified by:
getPropertyValueName
in interfaceJdapiObject
- Parameters:
propertyTypeId
- Property numberval
- Value of property- Returns:
- String representation
-
getIntegerPropertyString
Description copied from interface:JdapiObject
Gets a numeric (long
) property value's text representation.- Specified by:
getIntegerPropertyString
in interfaceJdapiObject
- Parameters:
propertyTypeId
- Number identifying the property- Returns:
- Property's text representation
-
getObjProp
protected long getObjProp(int propertyTypeId) Internal method used to get an object property value. This only really gets the C pointer to the Forms object. You must then use theContextCache
to lookup/instantiate the Java representation of the object.- Parameters:
propertyTypeId
- Number identifying the property- Returns:
- Property's value
- See Also:
-
ContextCache
JdapiObject.getObjectProperty(int)
-
getObjectProperty
Description copied from interface:JdapiObject
Retrieves aJdapiObject
property from the referred object. For example, if you pass the integerpropertyTypeId
for an Item in a Block to this method, it returns the Item.- Specified by:
getObjectProperty
in interfaceJdapiObject
- Parameters:
propertyTypeId
- property type ID for which a JdapiObject value is returned.- Returns:
- the JdapiObject property value.
-
getChildObjectProperty
Description copied from interface:JdapiObject
Retrieves child objects for a given property value. Implicit in this method is the idea of an ownership relationship between objects. Items are clearly owned by a Block. If you delete the Block, then its Items are deleted. On the other hand, Items can appear on a Canvas. If you delete the Canvas, however, the Items are not deleted. Thus, the method returns an iterator over Items if it is passed a Block. In contrast, if it is passed a Canvas, it should not return an iterator over Items.For example:
... // get the actual values for the current child object type, // for example, get the Items on a Block iter = jo.getChildObjectProperty(prop.getPropertyId()); ...
Note, it should be (slightly) faster to call the specific method on the object, for examplegetBlocks()
on the FormModule, as it involves fewer API calls. However,getChildObjectProperty
should be sufficient if you only have apropertyTypeId
available.This method also differs from the direct accessors in that null is returned if there are no objects, not an empty iterator.
- Specified by:
getChildObjectProperty
in interfaceJdapiObject
- Parameters:
propertyTypeId
- number identifying the child object property.- Returns:
- Iterator for child objects, can return null if there are no child objects.
-
setBooleanProperty
public void setBooleanProperty(int propertyTypeId, boolean propertyValue) Description copied from interface:JdapiObject
Sets the value of the specified boolean property belonging to the referred object.- Specified by:
setBooleanProperty
in interfaceJdapiObject
- Parameters:
propertyTypeId
- property type ID of the property for which you want to set the boolean value.propertyValue
- the boolean value for the property.
-
setStringProperty
Description copied from interface:JdapiObject
Sets the value of the specified string property for the object.- Specified by:
setStringProperty
in interfaceJdapiObject
- Parameters:
propertyTypeId
- property type ID of the property for which you want to set the string value.propertyValue
- the string value for the property.
-
setIntegerProperty
public void setIntegerProperty(int propertyTypeId, int propertyValue) Sets the value of the specified object integer property.- Specified by:
setIntegerProperty
in interfaceJdapiObject
- Parameters:
propertyTypeId
- property type id for which we set the integer value.propertyValue
- the integer property value in property.
-
setObjProp
protected void setObjProp(int propertyTypeId, long val) Internal method used to set an object property. This sets the object property by the C pointer to the object you want to set.- Parameters:
propertyTypeId
- Number identifying the propertyval
- Value to set the property to- See Also:
-
setObjectProperty
Sets the value of the specified object object property value.- Specified by:
setObjectProperty
in interfaceJdapiObject
- Parameters:
propertyTypeId
- property type id for which we set the object property value.propertyValue
- the object property value in property.
-
hasProperty
public boolean hasProperty(int propertyTypeId) Checks if the object has a given property.- Specified by:
hasProperty
in interfaceJdapiObject
- Parameters:
propertyTypeId
- Number identifying the property- Returns:
- 'true' if the object has that property, 'false' otherwise
-
inheritProperty
public void inheritProperty(int propertyTypeId) Resets a property to it's default value (confusing name eh?). What it's really doing is setting the property to it's base classes value - i.e. whatever it's subclassed from. If the object is not subclassed from anything, then this is the default value.- Specified by:
inheritProperty
in interfaceJdapiObject
- Parameters:
propertyTypeId
- Number that identified the property
-
hasInheritedProperty
public boolean hasInheritedProperty(int propertyTypeId) Checks if a property is inherited.- Specified by:
hasInheritedProperty
in interfaceJdapiObject
- Parameters:
propertyTypeId
- Number that identified the property- Returns:
- 'true' if property is inherited
-
hasOverriddenProperty
public boolean hasOverriddenProperty(int propertyTypeId) Determine whether the object referred has a property of the given type id with an overridden value.- Specified by:
hasOverriddenProperty
in interfaceJdapiObject
- Parameters:
propertyTypeId
- The type id of the property to be queried.- Returns:
- TRUE if the object's property has overridden value, else FALSE.
-
hasDefaultedProperty
public boolean hasDefaultedProperty(int propertyTypeId) Checks if a property is set to it's default value.- Specified by:
hasDefaultedProperty
in interfaceJdapiObject
- Parameters:
propertyTypeId
- Number that identified the property- Returns:
- 'true' if the property is set to the default value
-
getPropertyState
public int getPropertyState(int propertyTypeId) Returns the current state of the specified property.A property can be in one of the 5 states:
PROPERTY_STATE_UNKNOWN = 0;
PROPERTY_DEFAULT_VALUE = 1;
PROPERTY_OVERRIDDEN_DEFAULT_VALUE = 2;
PROPERTY_INHERITED_VALUE = 3;
PROPERTY_OVERRIDDEN_INHERITED_VALUE = 3;- Specified by:
getPropertyState
in interfaceJdapiObject
- Parameters:
propertyTypeId
- The type id of the property.- Returns:
- integer 0 through 3 representing one of the states.
-
isSubclassed
public boolean isSubclassed()Checks if the object is subclassed from another object.- Specified by:
isSubclassed
in interfaceJdapiObject
- Returns:
- 'true' if the object is subclassed, 'false' otherwise
-
getSubclassParent
Get Source (SOURCE_PTID) object property, i.e. the object this object subclassed from. This is also implemented on derived classed with this property as getSource().- Specified by:
getSubclassParent
in interfaceJdapiObject
- Returns:
- Value of property downcast to a BaseFormsObject (null if none of object does not have this property)
-
setSubclassParent
Change the subclassing parent of the object referred.The metadata associated with each object describes the types of objects that can become its subclassing parent. If the subclassing metadata associated with the refrred object doesn't indicate the objects of the given parent's type are allowed, then this method will throw an exception.
- Specified by:
setSubclassParent
in interfaceJdapiObject
- Parameters:
parent
- The parent object. If this is null, the child the referred object will become an orphan. This is the way to unset the subclassing parent of an object.
-
unsetSubclassParent
public void unsetSubclassParent()Remove the subclassing parent of the object referred.The subclassing will be removed completely if it existed and the object will now contain the default values.
-
createSubclassedChild
Subclass the referred object. The child will be owned by the referred object specified.- Specified by:
createSubclassedChild
in interfaceJdapiObject
- Parameters:
childOwner
- The object that will own the newly created subclassed child object.childName
- The name to be given to the newly created child.- Returns:
- the subclassed object.
-
reattach
public void reattach()Reattaches subclassed object. You must call this method if you manipulate any of the following properties of a Forms object: PAR_MODULE_PTID, PAR_NAM_PTID, PAR_SL1OBJ_NAM_PTID, PAR_MODTYP_PTID, PAR_TYP_PTID, PARSL1OBJ_TYP_PTID This is only if you are manipulating these low level subclassing properties.- Specified by:
reattach
in interfaceJdapiObject
-
getModule
Get Module (MODULE_PTID) object property.- Specified by:
getModule
in interfaceJdapiObject
- Returns:
- Value of property downcast to a JdapiObject (null if none)
-
getOwner
Get Owner (OWNER_PTID) object property.- Specified by:
getOwner
in interfaceJdapiObject
- Returns:
- Value of property downcast to a JdapiObject (null if none)
-
getOwnedObjects
Get the object instances owned by this particular object.- Specified by:
getOwnedObjects
in interfaceJdapiObject
- Returns:
- Iterator of JdapiObjects
-
getClassName
Gets the class name of the object. This is useful if you want to refer to the name of the Forms object in some output but don't want the Java package details.- Specified by:
getClassName
in interfaceJdapiObject
- Returns:
- Name of "class" of Forms object
-
getQualifiedName
Gets a fully qualified name for the object in the format of: MODULE.OBJECT.CHILD.CHILD... i.e. '.' separates the objects names from the current object back upto the module.- Specified by:
getQualifiedName
in interfaceJdapiObject
- Parameters:
includeModule
- Include the module name
-
getJdapiMetaObject
Gets the metadata object for the specified object.- Specified by:
getJdapiMetaObject
in interfaceJdapiObject
- Returns:
- the metadata object for the specified object.
-
getMetaProperties
Return an iterator over the meta properties in object referred.The various property type ids and the object-property mapping are defined by the specific implementation in the respective Constants file.
- Specified by:
getMetaProperties
in interfaceJdapiObject
- Returns:
- an enumeration of the specified object meta properties.
-