|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjsdai.lang.SdaiCommon
jsdai.lang.InverseEntity
jsdai.lang.CEntity
CEntity is a base class for all application and dictionary entity classes. This class is for internal JSDAI use only. Applications shall use EEntity instead.
| Field Summary |
| Fields inherited from interface jsdai.lang.EEntity |
MANDATORY_ATTRIBUTES_SET, MOST_SPECIFC_ENTITY, NO_RESTRICTIONS |
| Method Summary | |
void |
addSdaiListener(SdaiListener listener)
Adds SdaiListener extending java.util.EventListener
to a special aggregate defined for this entity instance. |
EMappedARMEntity |
buildMappedInstance(SdaiContext context,
jsdai.dictionary.EEntity_definition mappedInstanceType)
Creates or returns already created mapped entity instance in context's mappedWorkingModel model. |
boolean |
compareValuesBoolean(EEntity inst)
Compares this entity instance to the submitted entity instance. |
int |
compareValuesLogical(EEntity inst)
Compares this entity instance to the submitted entity instance. |
EEntity |
copyApplicationInstance(SdaiModel target_model)
Creates a copy of this instance in the specified SdaiModel.
|
EEntity |
copyValuesFrom(EEntity src)
Copies values of all attributes of the entity instance submitted through the parameter to the corresponding attributes of the current entity instance. |
Aggregate |
createAggregate(jsdai.dictionary.EAttribute attribute,
jsdai.dictionary.EDefined_type[] select)
Creates a new empty aggregate instance replacing the existing value (if any) of the specified explicit attribute. |
ExternalData |
createExternalData()
Creates external for this entity. |
void |
deleteApplicationInstance()
Deletes this entity instance. |
SdaiModel |
findEntityInstanceSdaiModel()
Returns SdaiModel this entity instance belongs to. |
void |
findEntityInstanceUsedin(jsdai.dictionary.EAttribute role,
ASdaiModel modelDomain,
AEntity result)
Searches for entity instances which reference the current instance in the role specified by an instance of EAttribute (first parameter). |
void |
findEntityInstanceUsers(ASdaiModel modelDomain,
AEntity result)
Searches for entity instances which reference the current instance. |
int |
findEntityMappings(ASdaiModel targetDomain,
ASdaiModel mappingDomain,
jsdai.mapping.AEntity_mapping mappings,
int mode)
Finds entity_mappings that fit with this instance. |
int |
findEntityMappings(jsdai.dictionary.EEntity_definition sourceEntity,
ASdaiModel targetDomain,
ASdaiModel mappingDomain,
jsdai.mapping.AEntity_mapping mappings,
int mode)
Finds entity_mappings that fit with this instance. |
void |
findInstanceDataTypes(jsdai.dictionary.ANamed_type result,
jsdai.dictionary.ESchema_definition schema)
This method is not implemented in current JSDAI version. |
void |
findInstanceRoles(ASdaiModel modelDomain,
jsdai.dictionary.AAttribute result)
Searches for attributes by which other entity instances reference the current instance. |
EMappedARMEntity |
findLinkedMappedInstance(jsdai.dictionary.EEntity_definition mappedInstanceType)
Finds already created mapped entity instance. |
AEntity |
findMappedUsers(jsdai.mapping.EEntity_mapping source_type,
jsdai.mapping.AAttribute_mapping attribute,
ASdaiModel data_domain,
ASdaiModel mapping_domain,
jsdai.mapping.AAttribute_mapping users,
int mode)
It finds application data instances that coresponds to mapped instaces, that references to this instance. |
jsdai.mapping.AEntity_mapping |
findMostSpecificMappings(ASdaiModel dataDomain,
ASdaiModel mappingDomain,
jsdai.mapping.AEntity_mapping baseMappings,
int mode)
Finds most specific ARM mappings for the instance. |
boolean |
get_boolean(jsdai.dictionary.EAttribute attribute)
Returns the value (of type boolean) of the specified attribute. |
double |
get_double(jsdai.dictionary.EAttribute attribute)
Returns the value (of type double) of the specified attribute. |
int |
get_int(jsdai.dictionary.EAttribute attribute)
Returns the value (of type int) of the specified attribute. |
AEntity |
get_inverse(jsdai.dictionary.EInverse_attribute attribute,
ASdaiModel domain)
Returns the value (of type aggregate of entities) of the specified inverse attribute. |
java.lang.Object |
get_object(jsdai.dictionary.EAttribute attribute)
Returns the value (of type Object) of the specified attribute. |
Value |
get(jsdai.dictionary.EAttribute attribute)
Returns the value (wrapped in an object of type Value) of the
specified attribute, which can be either explicit or derived but not inverse.
|
AEntity |
getAllReferences()
Returns an aggregate (of Express type LIST) whose elements are entity instances referenced by the current entity instance. |
jsdai.dictionary.EAttribute |
getAttributeDefinition(java.lang.String attributeName)
Returns a specific instance of the entity "attribute" defined in "SDAI_dictionary_schema", describing EXPRESS schemas on the meta level. |
int |
getAttributeValueBound(jsdai.dictionary.EAttribute attribute)
This method is not implemented in current JSDAI version. |
java.lang.String |
getDescription()
Returns a human readable description of the entity instance. |
ExternalData |
getExternalData()
Gets external data object. |
java.lang.Object[] |
getMappedAttribute(jsdai.dictionary.EAttribute sourceAttribute,
ASdaiModel targetDomain,
ASdaiModel mappingDomain,
int mode)
Returns value for source attribute. |
java.lang.Object |
getMappedAttribute(jsdai.mapping.EGeneric_attribute_mapping sourceAttribute,
ASdaiModel targetDomain,
ASdaiModel mappingDomain,
int mode)
Returns value of attribute following constraints defined by attribute_mapping. |
java.lang.String |
getPersistentLabel()
Returns a String, which is a persistent label of this entity instance.
|
java.lang.Object |
getTemp()
Returns an Object where an application is allowed
to store some user's data related to this entity instance.
|
java.lang.Object |
getTemp(java.lang.Object key)
An extension of getTemp(). |
boolean |
hasMappedAttribute(jsdai.mapping.EEntity_mapping entityMapping,
jsdai.dictionary.EAttribute attribute,
ASdaiModel mappingDomain)
Checks is attribute mapped for given entity mapping. |
boolean |
isInstanceOf(java.lang.Class type)
Checks if java.lang.Class object of this entity instance
coincides with the given java.lang.Class object which describes java class
representing some other entity instance. |
boolean |
isInstanceOf(jsdai.dictionary.EEntity_definition type)
Checks if the type (described by EEntity_definition) of this entity instance coincides with the type given by method's parameter. |
boolean |
isKindOf(java.lang.Class type)
Checks if java.lang.Class object of this entity instance
coincides with the given java.lang.Class object, which describes java class
representing some other entity instance, or is a java.lang.Class object for
the java class which is a subclass of the given class. |
boolean |
isKindOf(jsdai.dictionary.EEntity_definition type)
Checks if the type (described by EEntity_definition) of this entity instance coincides with the given type (instance of EEntity_definition) or is a subtype of it. |
boolean |
isValid()
Checks if java Object of type EEntity
represents a valid instance of a population within SdaiSession. |
int |
makeUsedin(jsdai.dictionary.EEntity_definition referent_def,
jsdai.dictionary.EAttribute role,
ASdaiModel modelDomain,
AEntity result)
This method is for internal JSDAI use only. |
EEntity |
moveUsersFrom(EEntity src)
Changes all the pointers referencing an entity instance submitted through the parameter to the pointers referencing the current entity instance. |
void |
removeExternalData()
Removes external data which was attached to this entity. |
void |
removeSdaiListener(SdaiListener listener)
Removes SdaiListener extending java.util.EventListener
from the special aggregate defined for this entity instance. |
void |
set(jsdai.dictionary.EAttribute attribute,
boolean value,
jsdai.dictionary.EDefined_type[] select)
Assigns a value of type boolean to the specified explicit attribute.
|
void |
set(jsdai.dictionary.EAttribute attribute,
double value,
jsdai.dictionary.EDefined_type[] select)
Assigns a value of type double to the specified explicit attribute.
|
void |
set(jsdai.dictionary.EAttribute attribute,
int value,
jsdai.dictionary.EDefined_type[] select)
Assigns a value of type int to the specified explicit attribute.
|
void |
set(jsdai.dictionary.EAttribute attribute,
java.lang.Object value,
jsdai.dictionary.EDefined_type[] select)
Assigns a value of type Object to the specified explicit attribute.
|
void |
set(jsdai.dictionary.EExplicit_attribute attribute,
Value val)
Assigns the value wrapped in a given object of type Value
to the specified explicit attribute. |
void |
setTemp(java.lang.Object value)
Assigns a value to special field of type Object
in which an application is allowed to store some user's data related
to this entity instance.
|
void |
setTemp(java.lang.Object key,
java.lang.Object value)
An extension of setTemp(Object value). |
int |
testAttribute(jsdai.dictionary.EAttribute attribute,
jsdai.dictionary.EDefined_type[] select)
Checks if the specified attribute has a value and if so, then returns an indicator showing the type of the value. |
int |
testAttributeFast(jsdai.dictionary.EAttribute attribute,
jsdai.dictionary.EDefined_type[] select)
Checks if the specified attribute has a value and if so, then returns an indicator showing the type of the value. |
boolean |
testExternalData()
Tests if external data is attached to this entity. |
jsdai.mapping.AGeneric_attribute_mapping |
testMappedAttribute(jsdai.dictionary.EAttribute sourceAttribute,
ASdaiModel targetDomain,
ASdaiModel mappingDomain,
int mode)
Tests mapping of source attribute. |
boolean |
testMappedAttribute(jsdai.mapping.EGeneric_attribute_mapping sourceAttribute,
ASdaiModel targetDomain,
ASdaiModel mappingDomain,
int mode)
Test whether this target instance does fit to the constraints of the given attribute_mapping. |
jsdai.mapping.AEntity_mapping |
testMappedEntity(jsdai.dictionary.EEntity_definition sourceEntity,
ASdaiModel targetDomain,
ASdaiModel mappingDomain,
int mode)
Tests whether this instance of a target entity type does fit to mapping constraints of specified source entity. |
boolean |
testMappedEntity(jsdai.mapping.EEntity_mapping sourceEntity,
ASdaiModel targetDomain,
ASdaiModel mappingDomain,
int mode)
Tests whether this instance of a target entity type does fit to mapping constraints of specified source entity. |
jsdai.dictionary.AEntity_definition |
typeOf()
Returns an aggregate containing definitions of all single entity data types from which the entity type of this instance consists. |
java.lang.String |
toString()
Returns a String representing this entity instance
including values of all its attributes.
|
ComplexEntityValue |
toValue()
Wraps this instance to ComplexEntityValue object and returns it. |
void |
unsetAttributeValue(jsdai.dictionary.EAttribute attribute)
Changes the state of the specified explicit attribute, so that this attribute has no value longer. |
int |
validateAggregatesSize(jsdai.dictionary.AAttribute nonConf)
Checks if the number of members in aggregates, or valid index values for array instances, of any attributes of this entity instance meet the constraints specified in the types of these attributes. |
boolean |
validateAggregatesUniqueness(jsdai.dictionary.AAttribute nonConf)
Checks if all members are unique in any aggregate instance being a value of any attribute whose type requires uniqueness. |
boolean |
validateArrayNotOptional(jsdai.dictionary.AAttribute nonConf)
Checks if arrays have values at all positions for the attributes of this entity instance where optional elements are not allowed. |
int |
validateBinaryWidth(jsdai.dictionary.AAttribute nonConf)
Checks if Binary values assigned to attributes of this entity instance
are of the required width.
|
int |
validateExplicitAttributesReferences(jsdai.dictionary.AAttribute nonConf)
Checks if all the entity instances referenced by explicit attributes of this entity instance are of valid type for those attributes. |
boolean |
validateInverseAttributes(jsdai.dictionary.AAttribute nonConf)
Checks if cardinality constraints specified in the INVERSE clauses are satisfied for this entity instance. |
boolean |
validateInverseAttributes(jsdai.dictionary.AAttribute nonConf,
ASdaiModel domain)
Checks if cardinality constraints specified in the INVERSE clauses are satisfied for this entity instance. |
int |
validateRealPrecision(jsdai.dictionary.AAttribute nonConf)
Checks if real values assigned to attributes of this entity instance
are of the required minimum precision.
|
boolean |
validateRequiredExplicitAttributesAssigned(jsdai.dictionary.AAttribute nonConf)
Checks if all non-optional explicit attributes of this instance have values. |
int |
validateStringWidth(jsdai.dictionary.AAttribute nonConf)
Checks if strings assigned, either directly or as members of aggregates, to attributes of this entity instance are of the required width. |
int |
validateWhereRule(jsdai.dictionary.AWhere_rule viol_rules,
ASdaiModel domain)
Checks if where rules associated with this instance are satisfied. |
int |
validateWhereRule(jsdai.dictionary.EWhere_rule rule,
ASdaiModel domain)
Checks if a where rule is satisfied for this instance. |
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface jsdai.lang.EEntity |
getInstanceType |
| Method Detail |
public boolean isValid()
EEntityObject of type EEntity
represents a valid instance of a population within SdaiSession.
isValid in interface EEntitytrue if the current instance is valid,
false otherwise.
public AEntity get_inverse(jsdai.dictionary.EInverse_attribute attribute,
ASdaiModel domain)
throws SdaiException
EEntitySdaiModels
which belong to the set given by the second parameter.
In the case when the second parameter is null, the search is restricted
to the model which is the owner of the current instance (can be found
using findEntityInstanceSdaiModel).
The method throws SdaiException AT_NVLD if the passed attribute is either not inverse one or not from this entity.
Example:
EComposite_curve_segment segment = ...;
ASdaiModel domain = ...;
EInverse_attribute inv_attr = (EInverse_attribute)segment.getAttributeDefinition("using_curves");
AEntity inv_aggr = segment.get_inverse(inv_attr, domain);
get_inverse in interface EEntityattribute - the inverse attribute which value is needed.domain - the list of SdaiModels that defines the
area where to search for entity instances referencing the current
entity instance in the way specified by the given inverse attribute.
SdaiException - AT_NDEF, attribute not defined.get_object,
get_int,
get_double,
get_boolean,
getAttributeDefinition,
"10303-22::10.10.1 Get attribute"
public java.lang.Object get_object(jsdai.dictionary.EAttribute attribute)
throws SdaiException
EEntityAll the early-binding and late-binding methods implementing "Get Attribute" operation behave as follows. In the case when the value of the attribute is unset, SdaiException VA_NSET is thrown. If in the express specification the attribute is defined as OPTIONAL, the user should first invoke the testAttribute method to check whether the attribute is set (has value) and only after this invoke appropriate method implementing "Get Attribute" operation. In the case when in the express the attribute is not defined to be OPTIONAL, the user can directly apply one of such methods. Thus, SdaiException VA_NSET is thrown only in the case when population of instances is invalid. This leads to application programs with a clear structure.
In the case when the attribute is of EEntity type, the behaviour of the methods implementing "Get Attribute" depends on which SdaiModel and SdaiRepository the referenced instance belongs to. If the SdaiModel of the instance is already in read-only or read-write access mode, e.g. because this instance and the referencing one are in the same SdaiModel, then the instance is returned immediately. If the SdaiModel has access mode unset, but belongs to an open SdaiRepository, then first the read-only access for this model is started and only then the instance is returned. If, however, the SdaiRepository is closed, SdaiException RP_NOPN is thrown.
The method throws SdaiException FN_NAVL if attribute whose value is asked
is inverse or derived. In the former case, get_inverse
method shall be used.
Example:
EVector vect = ...;
EAttribute attr = vect.getAttributeDefinition("orientation");
// access the attribute as a general entity, that is, EEntity
EEntity inst = (EEntity)vect.get_object(attr);
// access the attribute as a specific entity
EDirection dir = (EDirection)vect.get_object(attr);
attr = vect.getAttributeDefinition("name");
// access a String attribute
String name = (String)vect.get_object(attr);
get_object in interface EEntityattribute - the attribute which value is needed.
SdaiException - AT_NDEF, attribute not defined.get_int,
get_double,
get_boolean,
get_inverse,
getAttributeDefinition,
testAttribute,
"10303-22::10.10.1 Get attribute"
public int get_int(jsdai.dictionary.EAttribute attribute)
throws SdaiException
EEntity The method throws SdaiException AT_NVLD if the passed
attribute is not from this entity, SdaiException VT_NVLD if the attribute
type is different than integer, and SdaiException FN_NAVL if attribute
whose value is asked is a derived one.
For more details see method get_object.
Example:
ACalendar_date date_list = ...;
ECalendar_date date = date_list.getByIndex(1);
EAttribute attr = date.getAttributeDefinition("year_component");
int year = date.get_int(attr);
get_int in interface EEntityattribute - the attribute which value is needed.
SdaiException - EI_NEXS, entity instance does not exist.get_object,
get_double,
get_boolean,
getAttributeDefinition,
testAttribute,
"ISO 10303-22::10.10.1 Get attribute"
public double get_double(jsdai.dictionary.EAttribute attribute)
throws SdaiException
EEntity The method throws SdaiException AT_NVLD if the passed
attribute is not from this entity, SdaiException VT_NVLD if the attribute
type is different than double, and SdaiException FN_NAVL if attribute
whose value is asked is a derived one.
For more details see method get_object.
Example:
Vector vector_list = ...;
EVector vect = vector_list.getByIndex(1);
EAttribute attr = vect.getAttributeDefinition("magnitude");
double magn = vect.get_double(attr);
get_double in interface EEntityattribute - the attribute which value is needed.
SdaiException - VT_NVLD, value type invalid.get_object,
get_int,
get_boolean,
getAttributeDefinition,
testAttribute,
"ISO 10303-22::10.10.1 Get attribute"
public boolean get_boolean(jsdai.dictionary.EAttribute attribute)
throws SdaiException
EEntity The method throws SdaiException AT_NVLD if the passed
attribute is not from this entity, SdaiException VT_NVLD if the attribute
type is different than boolean, and SdaiException FN_NAVL if attribute
whose value is asked is a derived one.
For more details see method get_object.
Example:
ETrimmed_curve curve = ...;
EAttribute attr = curve.getAttributeDefinition("sense_agreement");
boolean agreement = curve.get_boolean(attr);
get_boolean in interface EEntityattribute - the attribute which value is needed.
SdaiException - EI_NEXS, entity instance does not exist.get_object,
get_int,
get_double,
getAttributeDefinition,
testAttribute,
"ISO 10303-22::10.10.1 Get attribute"
public int testAttribute(jsdai.dictionary.EAttribute attribute,
jsdai.dictionary.EDefined_type[] select)
throws SdaiException
EEntitytestAttribute,
Aggregate.testByIndex and
Aggregate.testCurrentMember
returns the same type indicator.
Example 1 showing how to use testAttribute as a late binding operation:
EDefined_type [] selection = new EDefined_type[3];
EAttribute attr = ...;
EEntity instance= ...;
int type = instance.testAttribute(attr, selection);
switch (type) {
case 0: // unset
// skip
break;
case 1: // object
Object oValue = instance.get_object(attr);
if (oValue instanceof EEntity) {
...
} else if (oValue instanceof Aggregate) {
...
} else if (oValue instanceof String) {
...
}
break;
case 2: // integer
int iValue = instance.get_int(attr);
break;
case 3: // double
double rValue = instance.get_double(attr);
EDefined_type areaMeasureType = ...;
EDefined_type lengthMeasureType = ...;
if (selection(0) == areaMeasureType) {
double area = rValue;
} else if (selection(0) == lengthMeasureType) {
double length = rValue;
break;
case 4: // boolean
boolean bValue = instance.get_boolean(attr);
break;
}
Example 2 illustrating early binding usage of the "Test Attribute" operation:
EMeasure_with_unit instance = ...;
int iSelection = instance.testValue_component(null);
switch (iSelection) {
case EMeasure_with_unit.sValue_componentArea_measure:
double area = instance.getValue_component((EArea_measure) null);
break;
case EMeasure_with_unit.sValue_componentLength_measure:
double length = instance.getValue_component((ELength_measure) null);
break;
...;
}
testAttribute in interface EEntityattribute - the attribute which value is tested.select - the array of defined types used to store the select path
corresponding to the actual value of the attribute.
SdaiException - SY_ERR, underlying system error.get_object,
get_int,
get_double,
get_boolean,
getAttributeDefinition,
"ISO 10303-22::10.10.2 Test attribute"
public int testAttributeFast(jsdai.dictionary.EAttribute attribute,
jsdai.dictionary.EDefined_type[] select)
throws SdaiException
testAttribute(EAttribute attribute, EDefined_type[] select)
but in the case attribute does not belong to this entity value
of -1 is returned.
attribute - the attribute which value is tested.select - the array of defined types used to store the select path
corresponding to the actual value of the attribute.
SdaiException - RP_NOPN, repository is not open.
SdaiException - TR_NAVL, transaction currently not available.
SdaiException - TR_EAB, transaction ended abnormally.
SdaiException - EI_NEXS, entity instance does not exist.
SdaiException - AT_NDEF, attribute not defined.
SdaiException - SY_ERR, underlying system error.testAttribute(EAttribute attribute, EDefined_type[] select)
public jsdai.dictionary.EAttribute getAttributeDefinition(java.lang.String attributeName)
throws SdaiException
EEntityThis method is an extension of JSDAI, which is not a part of the standard.
Example:
EVector vect = ...;
EAttribute attr = vect.getAttributeDefinition("magnitude");
getAttributeDefinition in interface EEntityattributeName - the name of the entity attribute, possibly, with the simple entity name as a prefix.
SdaiException - EI_NEXS, entity instance does not exist.get_object,
get_int,
get_double,
get_boolean,
get_inverse,
findEntityInstanceUsedin,
getAttributeValueBound,
set,
unsetAttributeValue,
createAggregate
public SdaiModel findEntityInstanceSdaiModel()
throws SdaiException
EEntitySdaiModel this entity instance belongs to. Every entity instance
does belong to exactly one SdaiModel. The entity instances of an SdaiModel
are only available when this model is either in read-only or read-write access mode.
If the access mode is unset, all the entity instances of this SdaiModel
become forbidden for the applications. In fact, invocation of most methods
for such an instance causes SdaiException EI_NEXS to be thrown.
Don't be irritated by the word "find" in the name of the method. This method is fast because JSDAI has this information available explicitly.
Example:
EEntity inst = ...;
SdaiModel owner = inst.findEntityInstanceSdaiModel();
findEntityInstanceSdaiModel in interface EEntitySdaiModel that contains this entity instance.
SdaiException - TR_EAB, transaction ended abnormally.
public boolean isInstanceOf(jsdai.dictionary.EEntity_definition type)
throws SdaiException
EEntityisInstanceOf(Class), solely on the
basis of "SDAI_dictionary_schema" information.
If null is passed to the method's parameter,
then SdaiException ED_NDEF is thrown.
Example:
EEntity inst = ...;
EEntity another_inst = ...;
EEntity_definition def = another_inst.getInstanceType();
boolean is_of_def = inst.isInstanceOf(def);
isInstanceOf in interface EEntitytype - the given type (instance of EEntity_definition).
SdaiException - SY_ERR, underlying system error.isInstanceOf(Class),
isKindOf(EEntity_definition),
isKindOf(Class),
"ISO 10303-22::10.10.5 Is instance of"
public boolean isInstanceOf(java.lang.Class type)
throws SdaiException
EEntityjava.lang.Class object of this entity instance
coincides with the given java.lang.Class object which describes java class
representing some other entity instance. Contrary to
isInstanceOf(EEntity_definition) method,
no "SDAI_dictionary_schema" information is used.
Example:
EEntity inst = ...;
EEntity another_inst = ...;
Class cl = another_inst.getClass();
boolean is_of_cl = inst.isInstanceOf(cl);
isInstanceOf in interface EEntitytype - java.lang.Class object which describes java class
representing some entity instance.
java.lang.Class object of this entity instance coincides
with the given java.lang.Class object; false, otherwise.
SdaiException - EI_NEXS, entity instance does not exist.isInstanceOf(EEntity_definition),
isKindOf(EEntity_definition),
isKindOf(Class),
"ISO 10303-22::10.10.5 Is instance of"
public boolean isKindOf(jsdai.dictionary.EEntity_definition type)
throws SdaiException
EEntityisKindOf(Class) method, solely on the
basis of "SDAI_dictionary_schema" information.
If null is passed to the method's parameter,
then SdaiException ED_NDEF is thrown.
Example:
EVector vect = ...;
ERepresentation_item item = ...;
EEntity_definition def = item.getInstanceType();
boolean is_vect_an_item = vect.isKindOf(def);
isKindOf in interface EEntitytype - the given type (instance of EEntity_definition).
SdaiException - ED_NDEF, entity definition not defined.isInstanceOf(EEntity_definition),
isInstanceOf(Class),
isKindOf(Class),
"ISO 10303-22::10.10.6 Is kind of"
public boolean isKindOf(java.lang.Class type)
throws SdaiException
EEntityjava.lang.Class object of this entity instance
coincides with the given java.lang.Class object, which describes java class
representing some other entity instance, or is a java.lang.Class object for
the java class which is a subclass of the given class. Contrary to
isKindOf(EEntity_definition) method,
no "SDAI_dictionary_schema" information is used.
If null value is passed to the method's
parameter, then SdaiException VA_NSET is thrown.
Example:
EVector vect = ...;
boolean is_vect_an_item = vect.isKindOf(ERepresentation_item.class);
isKindOf in interface EEntitytype - java.lang.Class object which describes java class
representing some entity instance.
java.lang.Class object of this entity instance coincides
with the given java.lang.Class object or is a java.lang.Class object for
the java class which is a subclass of the given class; false, otherwise.
SdaiException - SY_ERR, underlying system error.isInstanceOf(EEntity_definition),
isInstanceOf(Class),
isKindOf(EEntity_definition),
"ISO 10303-22::10.10.6 Is kind of"
public final void findEntityInstanceUsers(ASdaiModel modelDomain,
AEntity result)
throws SdaiException
EEntitySdaiModels
which belong to the set given by the first method's parameter.
In the case when the first parameter is null, the search is restricted
to the model which is the owner of the current instance (can be found
using findEntityInstanceSdaiModel).
If the value of the first parameter is an empty array of type ASdaiModel,
then no restriction is imposed on the search area, that is, referencing
instances from all SdaiModels, which have either read-only or read-write
access, are considered as being relevant.
Referencing instances are stored into a non-persistent list passed
to the method through the second parameter. Usually this
list is created with operator new. A referencing instance is put into
this list as many times as it references the current instance.
If null value is passed to the method's second
parameter, then SdaiException AI_NEXS is thrown.
Example:
EProduct pro = ...;
EDirection dir = ...;
AEntity general_list = new AEntity();
pro.findEntityInstanceUsers(null, general_list);
ASdaiModel domain = ...;
ADirection dir_list = new ADirection();
dir.findEntityInstanceUsers(domain, dir_list);
findEntityInstanceUsers in interface EEntitymodelDomain - the list of SdaiModels specifying the
area where to search for entity instances referencing the current
entity instance.result - the submitted non-persistent list to which all entity
instances referencing this instance are appended.
SdaiException - SY_ERR, underlying system error.findEntityInstanceUsedin,
findInstanceRoles,
"ISO 10303-22::10.10.8 Find entity instance users"
public void findEntityInstanceUsedin(jsdai.dictionary.EAttribute role,
ASdaiModel modelDomain,
AEntity result)
throws SdaiException
EEntitySdaiModels
which belong to the set given by the second method's parameter.
In the case when the second parameter is null, the search is restricted
to the model which is the owner of the current instance (can be found
using findEntityInstanceSdaiModel method).
If the value of the second parameter is an empty array of type ASdaiModel,
then no restriction is imposed on the search area, that is, referencing
instances from all SdaiModels, which have either read-only or read-write
access, are considered as being relevant.
Referencing instances are stored into a non-persistent list submitted
to the method through the third parameter. Usually this
list is created with operator new. A referencing instance is put into
this list as many times as it references the current instance
in the specified role.
The list of cases when SdaiException is thrown contains the following items:
In EXPRESS, a relation between two entities is defined and stored in only one entity of the pair, but it always exists in both directions. For some attributes of one entity, an inverse attribute on the other entity is defined. This is usually done to restrict the cardinality of the relation. But independently of the explicit specification of an inverse attribute there is an implicit inverse relation for every explicit one. The current JSDAI implementation of findEntityInstanceUsedin allows fast access to every inverse attribute. This method is fast because JSDAI explicitly stores all inverse pointers.
Example 1 illustrating late binding alternative:
EProduct product = ...;
EAttribute attrib = CProduct_definition_formation.attributeOf_product(null);
AProduct_definition_formation formations = new AProduct_definition_formation();
product.findEntityInstanceUsedin(attrib, null, formations);
Example 2 illustrating early binding alternative:
EProduct product = ...;
AProduct_definition_formation formations = new AProduct_definition_formation();
CProduct_definition_formation.usedinOf_product(null, product, null, formations);
findEntityInstanceUsedin in interface EEntityrole - the attribute by which this entity instance is accessed.
Note that any attribute always belongs to exactly one entity definition.modelDomain - the list of SdaiModels specifying the
area where to search for entity instances referencing the current
entity instance in the specified role.result - the submitted non-persistent list to which all entity
instances referencing this instance in the specified role (first parameter)
are appended.
SdaiException - AT_NDEF, attribute not defined.findEntityInstanceUsers,
findInstanceRoles,
"ISO 10303-22::10.10.9 Find entity instance usedin"
public int getAttributeValueBound(jsdai.dictionary.EAttribute attribute)
throws SdaiException
EEntitySdaiException FN_NAVL will be thrown if this method is invoked.
getAttributeValueBound in interface EEntityattribute - the attribute for which value bound is to be computed.
SdaiException - FN_NAVL, function not available.
public void findInstanceRoles(ASdaiModel modelDomain,
jsdai.dictionary.AAttribute result)
throws SdaiException
EEntitySdaiModels
which belong to the set given by the first method's parameter.
In the case when the first parameter is null, the search is restricted
to the model which is the owner of the current instance (can be found
using findEntityInstanceSdaiModel method).
Referencing attributes are stored into a non-persistent list submitted
to the method through the second parameter. Usually this
list is created with operator new.
If null value is passed to the method's second
parameter, then SdaiException AI_NEXS is thrown.
This method bears some similarity to findEntityInstanceUsers
method. However, the result is not the referencing instances but
the list containing entity attributes by which the current instance
from other instances is referenced. Each attribute is represented
by an instance of the class CAttribute of the SDAI dictionary.
Having an instance of CAttribute it is possible to get
entity definition containing it by simply applying
getParent_entity method.
Example:
EProduct pro = ...;
EDirection dir = ...;
AEntity general_list = new AEntity();
pro.findInstanceRoles(null, general_list);
ASdaiModel domain = ...;
ADirection dir_list = new ADirection();
dir.findInstanceRoles(domain, dir_list);
findInstanceRoles in interface EEntitymodelDomain - the list of SdaiModels specifying the
area where to search for attributes by which other entity instances
reference the current instance.result - the submitted non-persistent list to which all
attributes that reference this entity instance are appended.
SdaiException - TR_NAVL, transaction currently not available.findEntityInstanceUsers,
findEntityInstanceUsedin,
"ISO 10303-22::10.10.11 Find instance roles"
public void findInstanceDataTypes(jsdai.dictionary.ANamed_type result,
jsdai.dictionary.ESchema_definition schema)
throws SdaiException
EEntitySdaiException FN_NAVL will be thrown if this method is invoked.
findInstanceDataTypes in interface EEntityresult - the submitted non-persistent list to which all
named types of which this entity instance is a member are appended.schema - defines the scope where to search for the named types
for which this instance is a member of. If the value is null, then
the underlying schema of the model to which this instance belongs is taken.
SdaiException - FN_NAVL, function not available.
public EEntity copyApplicationInstance(SdaiModel target_model)
throws SdaiException
EEntitySdaiModel.
All attribute values from this instance are copied to the new one.
If some attribute is of aggregation type, then in the new instance
for this attribute a new aggregate is created and either filled
with values taken from this instance (if the aggregation type
describes non-nested aggregate) or this rule is applied recursively
(if the aggregation type describes nested aggregate).
If this and new instances belong to the same repository,
then persistent labels for these instances will be different.
A target SdaiModel to which the current instance is copied
must be in read-write access mode. If, however, no target model is submitted
to the method (through its parameter), then SdaiException MO_NEXS is thrown.
This method is applicable to instances of entities which are encountered
in the EXPRESS schema whose definition is underlying for the target model.
Otherwise, that is, if entity is not known for this schema,
SdaiException ED_NVLD is thrown.
copyApplicationInstance in interface EEntitytarget_model - the SdaiModel this application instance to be copied to.
SdaiException - TR_NRW, transaction not read-write.
public void deleteApplicationInstance()
throws SdaiException
EEntity
deleteApplicationInstance in interface EEntitySdaiException - TR_NRW, transaction not read-write.
public void set(jsdai.dictionary.EAttribute attribute,
java.lang.Object value,
jsdai.dictionary.EDefined_type[] select)
throws SdaiException
EEntityObject to the specified explicit attribute.
This method is applicable for values of type EEntity, String, and Binary.
If the base type of the attribute is select type and the set of possible
leaf types is not a subset of the set of entity data types,
then the select path corresponding to the value to be assigned needs to be
submitted (through the third method's parameter).
Otherwise, null to the third parameter can be passed.
Select path is a sequence of defined data types needed to specify a value of a select data type (as defined in ISO 10303-21:11.1.8). In fact, for a select data type a value of which is asked to be set, a certain oriented acyclic graph G = (V,A) can be constructed. The vertices of this graph correspond to defined data types and select data types. An arc goes from the vertex representing defined data type to a vertex representing select data type if the latter is the value of the attribute "domain" of the former. Further, an arc connects vertex of the select data type to a vertex of the defined data type if this latter type belongs to the SET assigned to the attribute "selections" of the select data type.
Example. Suppose the following data types are given (here Express language notation is used):
TYPE chi = LIST [1:3] OF REAL;
END_TYPE;
TYPE xi = INTEGER;
END_TYPE;
TYPE tau = ENUMERATION OF
(stigma,
digamma,
koppa,
sampi);
END_TYPE;
TYPE rho = SELECT
(nu,
omicron,
upsilon);
END_TYPE;
TYPE nu = SELECT
(chi,
xi,
tau);
END_TYPE;
TYPE omicron = lambda;
END_TYPE;
TYPE lambda = nu;
END_TYPE;
TYPE upsilon = SET [0:3] OF nu;
END_TYPE;
For these Express definitions the following data dictionary instances are created by JSDAI:
#2=DEFINED_TYPE('chi',(),$,#94);
#94=LIST_TYPE(#93,#91,#92,.F.);
#91=INTEGER_BOUND(1);
#92=INTEGER_BOUND(3);
#93=REAL_TYPE($);
#10=DEFINED_TYPE('xi',(),$,#99);
#99=INTEGER_TYPE();
#16=DEFINED_TYPE('tau',(),$,#103);
#103=ENUMERATION_TYPE(('stigma','digamma','koppa','sampi'));
#20=DEFINED_TYPE('rho',(),$,#105);
#105=SELECT_TYPE((#4,#14,#18));
#4=DEFINED_TYPE('nu',(),$,#104);
#104=SELECT_TYPE((#2,#10,#16));
#14=DEFINED_TYPE('omicron',(),$,#15);
#15=DEFINED_TYPE('lambda',(),$,#4);
#18=DEFINED_TYPE('upsilon',(),$,#102);
#102=SET_TYPE(#4,#100,#92);
#100=INTEGER_BOUND(0);
Then, for example, for the select data type "rho" the oriented graph G can be constructed
whose vertex set V = {#20,#105,#4,#14,#18,#104,#15,#2,#10,#16}
and the arc set A = {(#20,#105), (#105,#4), (#105,#14), (#105,#18), (#4,#104),
(#14,#15), (#15,#4), (#104,#2), (#104,#10), (#104,#16)}.
The root of the graph corresponds to the select data type inducing the graph, whereas the types of the values which can be assigned to an attribute of this select data type are represented by the vertices of this graph having no outcoming arcs (leaves of the graph). These vertices are called value vertices. In the example given above, the root #20 is for "rho" and the vertices #2,#10,#16,#18 represent 'LIST [1:3] OF REAL', INTEGER, 'ENUMERATION OF (stigma,digamma,koppa,sampi)', and 'SET [0:3] OF nu', respectively. When setting a value to an attribute, the needed path from the root of the graph to one of its value vertices shall be identified. To unambiguously describe such a path, it is sufficient to list only vertices of G corresponding to defined data types. Even more, not all such vertices following from the root to a value vertex are taken. The following two rules shall be applied:
Example (continued). For value of type 'SET [0:3] OF nu' the full path is #20,#105,#18, whereas the corresponding shrinked select path is #18, that is, consists of a single vertex. For value of type INTEGER there is full path #20,#105,#4,#104,#10 and its shrinked select path is #10. However, for INTEGER there exists also another path #20,#105,#14,#15,#4,#104,#10. Its shrinked select path is #14,#10. This means that the same integer value can be set to the same attribute in two slightly different contexts.
When trying to set a value for a given attribute whose base type is select
data type and in the graph describing it there is the corresponding value vertex,
then it is required to provide the shrinked select path to this value vertex by
submitting a nonempty array of EDefined_type as the third parameter of this method.
To prepare this array, getDefinedType
method can be used.
Example (continued). To set an integer to an attribute of type "rho" the following statements can be adopted.
EEpsilon inst = ...
EAttribute attr = inst.getAttributeDefinition("e5");
ESchema_definition schema = inst.findEntityInstanceSdaiModel().getUnderlyingSchema();
EDefined_type[] sel = new EDefined_type[5];
sel[0] = schema.getDefinedType("xi"); // the shrinked select path consists of the defined type with the name 'xi'
inst.set(attr, 99, sel);
After exporting the repository containing 'inst' to an exchange structure,
this value will be written as XI(99).
If the above excerpt from an Express schema was modified slightly by taking
'TYPE upsilon = INTEGER;' instead of 'TYPE upsilon = SET [0:3] OF nu;',
then the following assignment of the same value to 'attr' is classified as
being different from that given before:
sel[0] = schema.getDefinedType("upsilon"); // the shrinked select path consists of the defined type with the name 'upsilon'
sel[1] = null;
inst.set(attr, 99, sel);
In an exchange structure the value will be given as UPSILON(99).
The number of defined data types in the array "select" giving the select path is either specified by the position of the first null value in this array or is equal to the length of this array if it contains no null value.
The list of cases when SdaiException is thrown
contains the following items:
aggregation_type;
in the latter case createAggregate method shall be applied;
This method is a late binding implementation of the "put attribute" operation.
set in interface EEntityattribute - the explicit attribute to be assigned a value.value - the value to be assigned to the attribute.select - select path corresponding to the value submitted.
SdaiException - TR_NAVL, transaction currently not available.EEntity.set(EAttribute, int, EDefined_type[]),
EEntity.set(EAttribute, double, EDefined_type[]),
EEntity.set(EAttribute, boolean, EDefined_type[]),
"ISO 10303-22::10.11.3 put attribute"
public void set(jsdai.dictionary.EAttribute attribute,
int value,
jsdai.dictionary.EDefined_type[] select)
throws SdaiException
EEntityint to the specified explicit attribute.
This method is applicable for values of EXPRESS data types
INTEGER, BOOLEAN, LOGICAL, ENUMERATION and REAL.
If the base type of the attribute is select type,
then the select path corresponding to the value
to be assigned needs to be submitted (through the third method's parameter).
Otherwise, null to the third parameter can be passed.
Select path is a sequence of defined data types needed to specify a
value of a select data type (as defined in ISO 10303-21:11.1.8).
The number of defined data types in the array "select"
giving the select path is either specified by the
position of the first null value in this array or is equal
to the length of this array if it contains no null value.
For a definition of the select path and a detailed example see
set(EAttribute, Object, EDefined_type[])
The list of cases when SdaiException is thrown
contains the following items:
int type
is disallowed for the attribute whose value is being set or
select path represents EXPRESS data type that cannot be mapped to
Java int.
This method is a late binding implementation of the "put attribute" operation.
Example:
ETrimmed_curve curve = ...;
EAttribute attr = curve.getAttributeDefinition("master_representation");
curve.set(attr, 15, null);
set in interface EEntityattribute - the explicit attribute to be assigned a value.value - the value to be assigned to the attribute.select - select path corresponding to the value submitted.
SdaiException - VA_NSET, value not set.EEntity.set(EAttribute, Object, EDefined_type[]),
EEntity.set(EAttribute, double, EDefined_type[]),
EEntity.set(EAttribute, boolean, EDefined_type[]),
"ISO 10303-22::10.11.3 put attribute"
public void set(jsdai.dictionary.EAttribute attribute,
double value,
jsdai.dictionary.EDefined_type[] select)
throws SdaiException
EEntitydouble to the specified explicit attribute.
This method is applicable for values of EXPRESS data types
REAL, and NUMBER.
If the base type of the attribute is select type,
then the select path corresponding to the value
to be assigned needs to be submitted (through the third method's parameter).
Otherwise, null to the third parameter can be passed.
Select path is a sequence of defined data types needed to specify a
value of a select data type (as defined in ISO 10303-21:11.1.8).
The number of defined data types in the array "select"
giving the select path is either specified by the
position of the first null value in this array or is equal
to the length of this array if it contains no null value.
For a definition of the select path and a detailed example see
set(EAttribute, Object, EDefined_type[])
The list of cases when SdaiException is thrown
contains the following items:
double type
is disallowed for the attribute whose value is being set or
select path represents EXPRESS data type that cannot be mapped to
Java double.
This method is a late binding implementation of the "put attribute" operation.
Example:
EVector vect = ...;
EAttribute attr = vect.getAttributeDefinition("magnitude");
vect.set(attr, 9.99, null);
set in interface EEntityattribute - the explicit attribute to be assigned a value.value - the value to be assigned to the attribute.select - select path corresponding to the value submitted.
SdaiException - VT_NVLD, value type invalid.EEntity.set(EAttribute, Object, EDefined_type[]),
EEntity.set(EAttribute, int, EDefined_type[]),
EEntity.set(EAttribute, boolean, EDefined_type[]),
"ISO 10303-22::10.11.3 put attribute"
public void set(jsdai.dictionary.EAttribute attribute,
boolean value,
jsdai.dictionary.EDefined_type[] select)
throws SdaiException
EEntityboolean to the specified explicit attribute.
This method is applicable for values of EXPRESS data type BOOLEAN.
If the base type of the attribute is select type,
then the select path corresponding to the value
to be assigned needs to be submitted (through the third method's parameter).
Otherwise, null to the third parameter can be passed.
Select path is a sequence of defined data types needed to specify a
value of a select data type (as defined in ISO 10303-21:11.1.8).
The number of defined data types in the array "select"
giving the select path is either specified by the
position of the first null value in this array or is equal
to the length of this array if it contains no null value.
For a definition of the select path and a detailed example see
set(EAttribute, Object, EDefined_type[])
The list of cases when SdaiException is thrown
contains the following items:
boolean type
is disallowed for the attribute whose value is being set or
select path represents EXPRESS data type that cannot be mapped to
Java boolean.
This method is a late binding implementation of the "put attribute" operation.
Example:
EOriented_edge edge = ...;
EAttribute attr = edge.getAttributeDefinition("orientation");
edge.set(attr, true, null);
set in interface EEntityattribute - the explicit attribute to be assigned a value.value - the value to be assigned to the attribute.select - select path corresponding to the value submitted.
SdaiException - AT_NVLD, attribute invalid.EEntity.set(EAttribute, Object, EDefined_type[]),
EEntity.set(EAttribute, int, EDefined_type[]),
EEntity.set(EAttribute, double, EDefined_type[]),
"ISO 10303-22::10.11.3 put attribute"
public void unsetAttributeValue(jsdai.dictionary.EAttribute attribute)
throws SdaiException
EEntitySdaiException AT_NDEF and, respectively, AT_NVLD
is thrown.
This method is a late binding implementation of the "unset attribute value" operation.
unsetAttributeValue in interface EEntityattribute - the explicit attribute whose value is to be unset.
SdaiException - AT_NVLD, attribute invalid.
public Aggregate createAggregate(jsdai.dictionary.EAttribute attribute,
jsdai.dictionary.EDefined_type[] select)
throws SdaiException
EEntityset(EAttribute, Object, EDefined_type[])
The list of cases when SdaiException is thrown
contains the following items:
This method is a late binding implementation of the "create aggregate instance" operation.
Example:
ETrimmed_curve curve = ...;
EAttribute attr = curve.getAttributeDefinition("trim_1");
ATrimming_select aggr = curve.createAggregate(attr, null);
createAggregate in interface EEntityattribute - the explicit attribute whose value is to be set
with a new aggregate instance.select - select path specifying the type of the aggregate
to be assigned.
SdaiException - VA_NVLD, value invalid.
public java.lang.String getPersistentLabel()
throws SdaiException
EEntityString, which is a persistent label of this entity instance.
This label is assigned to the instance by JSDAI at the time when this instance is
created, and does not change later - it is persistent.
The label is unique within the repository containing
the instance. The label is defined both for application and dictionary instances.
JSDAI chooses the persistent label in such a way that it satisfies the requirements imposed on the instance names in the clear text encoding of the exchange structure (ISO 10303-21::7.3.4 Entity instance names).
Example:
EEntity inst = ...;
String ident = inst.getPersistentLabel();
The value of ident will be like this:
#2618
getPersistentLabel in interface EEntitySdaiException - TR_NEXS, transaction does not exist.SdaiRepository.getSessionIdentifier(java.lang.String),
"ISO 10303-22::10.11.6 Get persistent label"
public java.lang.String getDescription()
throws SdaiException
EEntity
getDescription in interface EEntitySdaiException - TR_NEXS, transaction does not exist.
public int validateWhereRule(jsdai.dictionary.EWhere_rule rule,
ASdaiModel domain)
throws SdaiException
EEntitynull,
then all where rules found in the entity definition of this
instance are checked. If the second parameter is null,
then the domain is only the actual SdaiModel of the
current instance.
validateWhereRule in interface EEntityrule - the where rule.domain - the list of SdaiModels specifying the
area in which to perform the validation of where rules.
SdaiException - FN_NAVL, function not available.EEntity.validateWhereRule(AWhere_rule, ASdaiModel)
public int validateWhereRule(jsdai.dictionary.AWhere_rule viol_rules,
ASdaiModel domain)
throws SdaiException
EEntitynull, then the domain is only
the actual SdaiModel of the current instance.
validateWhereRule in interface EEntityviol_rules - the non-persistent list to which violated
where rules are appended.domain - the list of SdaiModels specifying the
area in which to perform the validation of where rules.
SdaiException - FN_NAVL, function not available.EEntity.validateWhereRule(EWhere_rule, ASdaiModel)
public boolean validateRequiredExplicitAttributesAssigned(jsdai.dictionary.AAttribute nonConf)
throws SdaiException
EEntityIf null is passed to the method's parameter, then SdaiException AI_NEXS is thrown.
validateRequiredExplicitAttributesAssigned in interface EEntitynonConf - the non-persistent list to which non-optional attributes
without values are appended.
true if all non-optional attributes have values or all attributes are optional,
false otherwise.
SdaiException - SY_ERR, an underlying system error occurred.
public boolean validateInverseAttributes(jsdai.dictionary.AAttribute nonConf)
throws SdaiException
EEntityIf null is passed to the method's parameter, then SdaiException AI_NEXS is thrown.
validateInverseAttributes in interface EEntitynonConf - the non-persistent list to which the inverse attributes
violating the constraints are appended.
true if all inverse attribute constraints are satisfied or if
this entity does not have inverse attributes, false otherwise.
SdaiException - SY_ERR, an underlying system error occurred.
public boolean validateInverseAttributes(jsdai.dictionary.AAttribute nonConf,
ASdaiModel domain)
throws SdaiException
EEntityIf null is passed to the method's parameter, then SdaiException AI_NEXS is thrown.
validateInverseAttributes in interface EEntitynonConf - the non-persistent list to which the inverse attributes
violating the constraints are appended.domain - the list of SdaiModels specifying the
area inverse attributes in which shall be validated.
true if all inverse attribute constraints are satisfied or if
this entity does not have inverse attributes, false otherwise.
SdaiException - SY_ERR, an underlying system error occurred.
public int validateExplicitAttributesReferences(jsdai.dictionary.AAttribute nonConf)
throws SdaiException
EEntityIf null is passed to the method's parameter, then SdaiException AI_NEXS is thrown.
validateExplicitAttributesReferences in interface EEntitynonConf - the non-persistent list to which the attributes referencing
entity instances of wrong type are appended.
SdaiException - SY_ERR, an underlying system error occurred.
public int validateAggregatesSize(jsdai.dictionary.AAttribute nonConf)
throws SdaiException
EEntityIf null is passed to the method's parameter, then SdaiException AI_NEXS is thrown.
validateAggregatesSize in interface EEntitynonConf - the non-persistent list to which the attributes
having as values aggregates of sizes violating the constraints are appended.
SdaiException - SY_ERR, an underlying system error occurred.
public boolean validateAggregatesUniqueness(jsdai.dictionary.AAttribute nonConf)
throws SdaiException
EEntityIf null is passed to the method's parameter, then SdaiException AI_NEXS is thrown.
validateAggregatesUniqueness in interface EEntitynonConf - the non-persistent list to which the attributes
with value violating the aggregate uniqueness requirement are appended.
true if all uniqueness constraints are satisfied or
this entity instance has no aggregates as attribute values,
false if at least one aggregate uniqueness constraint is violated.
SdaiException - TR_NAVL, transaction currently not available.
public boolean validateArrayNotOptional(jsdai.dictionary.AAttribute nonConf)
throws SdaiException
EEntityIf null is passed to the method's parameter, then SdaiException AI_NEXS is thrown.
validateArrayNotOptional in interface EEntitynonConf - the non-persistent list to which the attributes with
value of type array violating the requirement to have no unset elements
are appended.
true if all arrays, in which optional elements
are not allowed, have values at all index positions, or all arrays
are declared to contain optional elements, or this entity instance
has not attributes with array values,
false if at least one array, that is not declared to
have elements at all positions, is missing at least one element,
or if the array bounds conflict with array type declaration.
SdaiException - TR_NEXS, transaction does not exist.
public int validateStringWidth(jsdai.dictionary.AAttribute nonConf)
throws SdaiException
EEntityIf null is passed to the method's parameter, then SdaiException AI_NEXS is thrown.
validateStringWidth in interface EEntitynonConf - the non-persistant list to which the attributes
whose value is string having invalid width are appended.
SdaiException - EI_NEXS, entity instance does not exist.
public int validateBinaryWidth(jsdai.dictionary.AAttribute nonConf)
throws SdaiException
EEntityBinary values assigned to attributes of this entity instance
are of the required width.
This method is not implemented in current JSDAI version.
SdaiException FN_NAVL will be thrown if this method is invoked.
validateBinaryWidth in interface EEntitynonConf - the non-persistant list to which the attributes
whose value is Binary having invalid width are appended.
Binary values assigned to attributes
are of the correct width,
number 1 if for at least one Binary value the declared width is violated,
and number 3 if derived attribute value expression does not
evaluate to a determinate value.
SdaiException - FN_NAVL, function not available.
public int validateRealPrecision(jsdai.dictionary.AAttribute nonConf)
throws SdaiException
EEntityreal values assigned to attributes of this entity instance
are of the required minimum precision.
This method is not implemented in current JSDAI version.
SdaiException FN_NAVL will be thrown if this method is invoked.
validateRealPrecision in interface EEntitynonConf - the non-persistant list to which the attributes
with real value violating the declared precision are appended.
real values assigned to attributes
are of the declared precision,
number 1 if at least one real value violates the declared precision,
and number 3 if derived attribute value expression does not
evaluate to a determinate value.
SdaiException - FN_NAVL, function not available.public java.lang.String toString()
EEntityString representing this entity instance
including values of all its attributes.
This representation adheres all mapping rules defined
in "ISO 10303-21: Clear text encoding of the exchange structure".
The entity name may appear either in long form or in short form.
For example, for entity cartesian_point any of the following cases can be chosen:
shortNameSupport should be used.
Selecting the short form can give the desired result only if the short name of the entity
is defined in the data dictionary (provided by an Express compiler).
If method fails to identify this name, then the full entity
name is used instead of.
Example:
EVector vect = ...;
System.out.println("instance: " + vect);
The string printed will be like this:
instance: #55=VECTOR('vec5',#1008,7.0);
toString in interface EEntity
public jsdai.dictionary.AEntity_definition typeOf()
throws SdaiException
EEntityExample:
SdaiRepository repo = ...;
EEntity inst2265 = repo.getSessionIdentifier("#2265");
AEntity_definition types2265 = inst2265.typeOf();
for (int i = 1; i <= types2265.getMemberCount(); i++) {
System.out.println("type: " + types2265.getByIndex(i).getName(null));
}
For an instance of the entity "dimension_text_associativity"
in the schema "aic_associative_draughting_elements" the output will be as follows:
type: dimension_text_associativity
type: geometric_representation_item
type: mapped_item
type: representation_item
type: text_literal
typeOf in interface EEntitySdaiException - EI_NEXS, entity instance does not exist.
public void setTemp(java.lang.Object key,
java.lang.Object value)
EEntityEEntity.setTemp(Object value). Allows to store more than one user data
object with this entity. Object is identified by a key. Later the same
key can be used to retrieve the stored data object using
EEntity.getTemp(Object key). The rest of the
functionality is identical to EEntity.setTemp(Object value).
setTemp in interface EEntitykey - a key which identifies the user data object.value - the used data value to store.EEntity.getTemp(),
EEntity.getTemp(Object key),
EEntity.setTemp(Object key)public void setTemp(java.lang.Object value)
EEntityObject
in which an application is allowed to store some user's data related
to this entity instance.
This Object field is not persistent.
Its value is lost when the read-only or read-write access to the owning
SdaiModel is ended or when the transaction is aborted.
setTemp in interface EEntityvalue - the value for the special Object field
to be set.EEntity.getTemp(),
EEntity.getTemp(Object key),
EEntity.setTemp(Object key, Object value)public java.lang.Object getTemp(java.lang.Object key)
EEntityEEntity.getTemp(). Allows to retrieve more than one user data
object previously stored with this entity using EEntity.setTemp(Object key, Object value).
Object is identified by a key which has to be the same as
it was provided for method EEntity.setTemp(Object key, Object value). The rest of the
functionality is identical to EEntity.getTemp().
getTemp in interface EEntitykey - a key which identifies the user data object.
EEntity.getTemp(),
EEntity.setTemp(Object key),
EEntity.setTemp(Object key, Object value)public java.lang.Object getTemp()
EEntityObject where an application is allowed
to store some user's data related to this entity instance.
This Object field is not persistent.
Its value is lost when the read-only or read-write access to the owning
SdaiModel is ended or when the transaction is aborted.
getTemp in interface EEntityObject.EEntity.getTemp(Object key),
EEntity.setTemp(Object key),
EEntity.setTemp(Object key, Object value)
public boolean compareValuesBoolean(EEntity inst)
throws SdaiException
EEntitySdaiException ED_NDEQ is thrown.
When executing this method, values of all attributes
in these two instances are compared.
Passing null value to the method's parameter results in SdaiException VA_NSET.
This method is an extension of JSDAI, which is not a part of the standard.
Example:
EVector vect1 = ...;
EVector vect2 = ...;
boolean equal = vect1.compareValuesBoolean(vect2);
compareValuesBoolean in interface EEntityinst - the entity instance submitted to compare against this
entity instance.
true if values of the same attributes
of the instances are equal, false otherwise.
SdaiException - VA_NSET, value not set.EEntity.compareValuesLogical(jsdai.lang.EEntity)
public int compareValuesLogical(EEntity inst)
throws SdaiException
EEntitySdaiException FN_NAVL will be thrown if this method is invoked.
This method is an extension of JSDAI, which is not a part of the standard.
compareValuesLogical in interface EEntityinst - the entity instance submitted to compare against this
entity instance.
SdaiException - FN_NAVL, function not available.
public int makeUsedin(jsdai.dictionary.EEntity_definition referent_def,
jsdai.dictionary.EAttribute role,
ASdaiModel modelDomain,
AEntity result)
throws SdaiException
SdaiExceptionpublic void addSdaiListener(SdaiListener listener)
SdaiListener extending java.util.EventListener
to a special aggregate defined for this entity instance.
addSdaiListener in interface SdaiEventSourcelistener - a SdaiListener to be added.removeSdaiListener(jsdai.lang.SdaiListener)public void removeSdaiListener(SdaiListener listener)
SdaiListener extending java.util.EventListener
from the special aggregate defined for this entity instance.
removeSdaiListener in interface SdaiEventSourcelistener - SdaiListener to be removed.addSdaiListener(jsdai.lang.SdaiListener)
public jsdai.mapping.AEntity_mapping testMappedEntity(jsdai.dictionary.EEntity_definition sourceEntity,
ASdaiModel targetDomain,
ASdaiModel mappingDomain,
int mode)
throws SdaiException
EEntityExample:
EEntity instance = ...; // instance that we want to check
SdaiModel sourceModel = LangUtils.findDictionaryModel("my_mapping_schema"); // usualy name of mapping model is the same as it is for source schema
sourceModel.startReadOnlyAccess();
armSchema = LangUtils.findSchema(sourceModel);
EEntity_definition sourceEntity = LangUtils.findEntityDefinition("my_source_entity", schema);
AEntity_mapping mappings = m.testSourceEntity(sourceEntity, session.getDataDictionary(), session.getDataMapping());
SdaiIterator i = mappings.createIterator();
System.out.println("The instance " + instance + " is mapping of:");
while (i.next()) {
System.out.print(" " + mappings.getCurrentMember(i).getSource(null).getName(null));
}
testMappedEntity in interface EEntitysourceEntity - an entity which mapping is testedtargetDomain - a target instances domain where to search instances to
satisfy mapping constraints. It may be null. Then owning model of
target instance will be used as domain.mappingDomain - a domain for mapping constraints, target and source schemas.mode - sets level of cheking for mapped entity.
EEntity.NO_RESTRICTIONS - only the mapping constraints for specified entity mapping are tested
EEntity.MANDATORY_ATTRIBUTES_SET - all explicit mandatory ARM attributes of every entity mapping are tested.
If at least one these attributes is unset, then this entity mapping is not included in the returned set of entity mappings.
SdaiExceptiontestMappedEntity,
EEntity.findEntityMappings(ASdaiModel, ASdaiModel, AEntity_mapping, int),
testMappedAttribute,
getMappedAttribute,
JSDAI Mapping Extension
public boolean testMappedEntity(jsdai.mapping.EEntity_mapping sourceEntity,
ASdaiModel targetDomain,
ASdaiModel mappingDomain,
int mode)
throws SdaiException
EEntityExample:
EEntity instance = ...; // instance that we want to check
SdaiModel sourceModel = LangUtils.findDictionaryModel("my_mapping_schema"); // usualy name of mapping model is the same as it is for source schema
sourceModel.startReadOnlyAccess();
armSchema = LangUtils.findSchema(sourceModel);
EEntity_definition sourceEntity = LangUtils.findEntityDefinition("my_source_entity", schema);
AEntity_mapping mappings = m.testSourceEntity(sourceEntity, session.getDataDictionary(), session.getDataMapping());
SdaiIterator i = mappings.createIterator();
System.out.println("The instance " + instance + " is mapping of:");
while (i.next()) {
System.out.print(" " + mappings.getCurrentMember(i).getSource(null).getName(null));
}
testMappedEntity in interface EEntitysourceEntity - an entity which mapping is testedtargetDomain - a target instances domain where to search instances to
satisfy mapping constraints. It may be null. Then owning model of
target instance will be used as domain.mappingDomain - a domain for mapping constraints, target and source schemas.mode - sets level of cheking for mapped entity.
EEntity.NO_RESTRICTIONS - only the mapping constraints for specified entity mapping are tested
EEntity.MANDATORY_ATTRIBUTES_SET - all explicit mandatory ARM attributes of every entity mapping are tested.
If at least one these attributes is unset, then this function returns false.
SdaiExceptiontestMappedEntity,
EEntity.findEntityMappings(ASdaiModel, ASdaiModel, AEntity_mapping, int),
testMappedAttribute,
getMappedAttribute,
JSDAI Mapping Extension
public jsdai.mapping.AGeneric_attribute_mapping testMappedAttribute(jsdai.dictionary.EAttribute sourceAttribute,
ASdaiModel targetDomain,
ASdaiModel mappingDomain,
int mode)
throws SdaiException
EEntity
testMappedAttribute in interface EEntitysourceAttribute - source attribute which mapping is tested.targetDomain - a domain where to search instances to satisfy mapping constraints.
It may be null.
Then owning model of target instance will be used as domain.mode - sets level of cheking for mapped attribute.
EEntity.NO_RESTRICTIONS - only the mapping constraints for specified attribute are tested
EEntity.MOST_SPECIFC_ENTITY - if ARM type of attribute is enity data type, then the mapping constraints for this entity data type are checked,
EEntity.MANDATORY_ATTRIBUTES_SET - in addition all explicit mandatory ARM attributes of every entity mapping are tested.mappingDomain - a domain for mapping constraints, target and source schemas.
SdaiExceptiontestMappedEntity,
testMappedAttribute,
getMappedAttribute,
JSDAI Mapping Extension
public boolean testMappedAttribute(jsdai.mapping.EGeneric_attribute_mapping sourceAttribute,
ASdaiModel targetDomain,
ASdaiModel mappingDomain,
int mode)
throws SdaiException
EEntity
testMappedAttribute in interface EEntitysourceAttribute - source attribute which mapping is tested.targetDomain - a target instances domain where to search instances to
satisfy mapping constraints. It may be null. Then owning model of
target instance will be used as domain.mappingDomain - a domain for mapping constraints, target and source
schemas. It may be null. Then owning model of sourceAttribute will be used as
domain.mode - sets level of cheking for mapped attribute.
EEntity.NO_RESTRICTIONS - only the mapping constraints for specified attribute are tested
EEntity.MOST_SPECIFC_ENTITY - if ARM type of attribute is enity data type, then the mapping constraints for this entity data type are checked,
EEntity.MANDATORY_ATTRIBUTES_SET - in addition all explicit mandatory ARM attributes of every entity mapping are tested.
SdaiExceptiontestSourceEntity,
testMappedAttribute,
getMappedAttribute,
JSDAI Mapping Extension
public java.lang.Object[] getMappedAttribute(jsdai.dictionary.EAttribute sourceAttribute,
ASdaiModel targetDomain,
ASdaiModel mappingDomain,
int mode)
throws SdaiException
EEntityExample:
EEntity_definition armEntity = ....
ArrayList attributes = new ArrayList();
LangUtils.findExplicitAttributes(armEntity, attributes);
// Iterate through all explicit attributes of ARM entity.
for (int i = 0; i < attributes.size(); i++) {
armAttribute = (EAttribute)attributes.get(i);
try {
// Test if ARM attribute is set.
System.out.print(armAttribute.getName(null));
boolean f = instance.testSourceAttribute(armAttribute, dataSi, mappingSi) != null;
// If ARM attribute is set, then take and print a value of it.
if (f) {
Object o[] = instance.getSourceAttribute(armAttribute, dataSi, mappingSi);
if (o.length > 0) {
if (o[0] instanceof String) {
System.out.print(" = '" + o[0] + "'");
} else {
System.out.print(" = " + o[0]);
}
for (int k = 1; k < o.length; k++) {
if (o[k] instanceof String) {
System.out.print(" | '" + o[k] + "'");
} else {
System.out.print(" | " + o[k]);
}
}
} else {
System.out.print(" = ?");
}
}
System.out.println();
} catch (Exception e) {
}
getMappedAttribute in interface EEntitysourceAttribute - source attribute which mappings are returned.targetDomain - a target instances domain where to search instances to satisfy mapping constraints.
It may be null.
Then owning model of target instance will be used as domain.mappingDomain - a domain for mapping constraints, target and source
schemas. It may be null. Then owning model of sourceAttribute will be used as
domain.mode - sets level of cheking for mapped attribute.
EEntity.NO_RESTRICTIONS - only the mapping constraints for specified attribute are tested
EEntity.MOST_SPECIFC_ENTITY - if ARM type of attribute is enity data type, then the mapping constraints for this entity data type are checked,
EEntity.MANDATORY_ATTRIBUTES_SET - in addition all explicit mandatory ARM attributes of every entity mapping are tested.
SdaiExceptiontestMappedEntity,
testMappedAttribute,
testMappedAttribute,
JSDAI Mapping Extension
public java.lang.Object getMappedAttribute(jsdai.mapping.EGeneric_attribute_mapping sourceAttribute,
ASdaiModel targetDomain,
ASdaiModel mappingDomain,
int mode)
throws SdaiException
EEntity
getMappedAttribute in interface EEntitysourceAttribute - attribute which mapping is tested.targetDomain - a domain where to search instances to satisfy mapping constraints.
It may be null.
Then owning model of target instance will be used as domain.mappingDomain - a domain for mapping constraints, target and source schemas.
It may be null.
Then owning model of sourceAttribute will be used as domain.mode - sets level of cheking for mapped attribute.
EEntity.NO_RESTRICTIONS - only the mapping constraints for specified attribute are tested
EEntity.MOST_SPECIFC_ENTITY - if ARM type of attribute is enity data type, then the mapping constraints for this entity data type are checked,
EEntity.MANDATORY_ATTRIBUTES_SET - in addition all explicit mandatory ARM attributes of every entity mapping are tested.
SdaiExceptiontestSourceEntity,
testMappedAttribute,
testMappedAttribute,
JSDAI Mapping Extension
public int findEntityMappings(jsdai.dictionary.EEntity_definition sourceEntity,
ASdaiModel targetDomain,
ASdaiModel mappingDomain,
jsdai.mapping.AEntity_mapping mappings,
int mode)
throws SdaiException
EEntity
findEntityMappings in interface EEntitysourceEntity - only mappings of this entity or its subtypes can be included in returned set.
If it is null, then this function works the same as EEntity.findEntityMappings(ASdaiModel, ASdaiModel, AEntity_mapping, int).targetDomain - a domain of the target instance and instances related to it.
It may be null.
Then owning model of target instance will be used as domain.mappingDomain - a domain for mapping constraints, target and source schemas.mappings - the mappings that was found.
This parameter is for read/write access.
The mappings that will be found will be added to this aggregate.mode - NO_RESTRICTIONS - no restrictions,
MOST_SPECIFC_ENTITY - retured mappings are restricted to most specific.
If there is mapping of subtype entity then mapping of supertype entity is not included.
Entities that can not be instanciated are also not included.
SdaiExceptiontestMappedEntity,
EEntity.findEntityMappings(ASdaiModel, ASdaiModel, AEntity_mapping, int),
JSDAI Mapping Extension
public int findEntityMappings(ASdaiModel targetDomain,
ASdaiModel mappingDomain,
jsdai.mapping.AEntity_mapping mappings,
int mode)
throws SdaiException
EEntity
findEntityMappings in interface EEntitySdaiExceptionfindEntityMappings}.,
JSDAI Mapping Extension
public jsdai.mapping.AEntity_mapping findMostSpecificMappings(ASdaiModel dataDomain,
ASdaiModel mappingDomain,
jsdai.mapping.AEntity_mapping baseMappings,
int mode)
throws SdaiException
findMostSpecificMappings in interface EEntitymappingDomain - is domain for mapping constraints.dataDomain - is domain which defines where to search instances that satisfy mapping constraints.
In the case it is null owning model of target instance will be used as data domain.baseMappings - is an aggregate of mapings which define where to start looking for most specific mappings.
The mappings returned will be mappings for subtypes of source enitity of base mappings.mode - is mode for mapping operations. It can be one of:
EEntity.NO_RESTRICTIONS
EEntity.MOST_SPECIFC_ENTITY
EEntity.MANDATORY_ATTRIBUTES_SET
SdaiException - All variety of SdaiExceptions can be thrown.
public EMappedARMEntity buildMappedInstance(SdaiContext context,
jsdai.dictionary.EEntity_definition mappedInstanceType)
throws SdaiException
EEntity
buildMappedInstance in interface EEntitycontext - context where the mapped instance should be created.mappedInstanceType - mapped entity instance expected type or
null if application is unable to specify expected type.
SdaiException - if an error occurs during the operation
or in underlying JSDAI operationsEEntity.findLinkedMappedInstance(EEntity_definition mappedInstanceType),
JSDAI Mapping Extension
public EMappedARMEntity findLinkedMappedInstance(jsdai.dictionary.EEntity_definition mappedInstanceType)
throws SdaiException
EEntity
findLinkedMappedInstance in interface EEntitymappedInstanceType - mapped entity instance expected type or
null if application is unable to specify expected type
SdaiException - if an error occurs during the operation
or in underlying JSDAI operationsEEntity.buildMappedInstance(SdaiContext context, EEntity_definition mappedInstanceType),
JSDAI Mapping Extension
public AEntity findMappedUsers(jsdai.mapping.EEntity_mapping source_type,
jsdai.mapping.AAttribute_mapping attribute,
ASdaiModel data_domain,
ASdaiModel mapping_domain,
jsdai.mapping.AAttribute_mapping users,
int mode)
throws SdaiException
EEntity
findMappedUsers in interface EEntitysource_type - mapping of entity data type, which mapping constraints this entity satisfies.attribute - mappings of attributes, for which inverses will be searched.
The specified attributes must reference to source_type.
If it is not specified, then all attributes that references source_type will be in result set.data_domain - a domain where to search instances to satisfy mapping constraints.
It may be null.
Then owning model of target instance will be used as domain.mapping_domain - a domain for mapping constraints, target and source schemas.users - for attribute mappings, that uses this instance.
It can be null.
It is synchronized with return value.mode - sets level of cheking for mapped attribute.
EEntity.NO_RESTRICTIONS - only the mapping constraints for specified attribute are tested
EEntity.MOST_SPECIFC_ENTITY - if ARM type of attribute is enity data type, then the mapping constraints for this entity data type are checked,
EEntity.MANDATORY_ATTRIBUTES_SET - in addition all explicit mandatory ARM attributes of every entity mapping are tested.
SdaiException
public boolean hasMappedAttribute(jsdai.mapping.EEntity_mapping entityMapping,
jsdai.dictionary.EAttribute attribute,
ASdaiModel mappingDomain)
throws SdaiException
EEntity
hasMappedAttribute in interface EEntitySdaiException
public void set(jsdai.dictionary.EExplicit_attribute attribute,
Value val)
throws SdaiException
EEntityValue
to the specified explicit attribute. Particularly, it is allowed
for the value to be an aggregate.
Also this method can be used to unset the attribute.
The list of cases when SdaiException is thrown
contains the following items:
Example:
EData_type dt = SdaiSession.findDataType("myStringType", jsdai.SMy_schema.SMy_schema.class);
Value val = Value.alloc(dt).set("LKSoft");
EAttribute attr = ...;
EEntity inst = ...;
inst.set(attr, val);
set in interface EEntityattribute - the explicit attribute to be assigned a value.val - the value to be assigned to the attribute.
SdaiException - AT_NVLD, attribute invalid.
public Value get(jsdai.dictionary.EAttribute attribute)
throws SdaiException
EEntityValue) of the
specified attribute, which can be either explicit or derived but not inverse.
This method returns meaningfull information even in the case when the
attribute is unset.
In the case when the attribute is of EEntity type and references an instance
whose owning SdaiModel has access mode unset, then Value contains
some data describing this reference but not the referenced instance itself.
Example:
EVector vect = ...;
EAttribute attr = vect.getAttributeDefinition("orientation");
// access the attribute getting an instance of
Value
Value val = vect.get(attr);
// retrieve an entity instance from Value
EDirection dir = (EDirection)val.getInstance();
get in interface EEntityattribute - the attribute which value is needed.
Value) of the attribute.
SdaiException - RP_NOPN, repository is not open.
public ComplexEntityValue toValue()
throws SdaiException
ComplexEntityValue which wraps this instance
SdaiException - if an error occurs in underlying JSDAI operations
public AEntity getAllReferences()
throws SdaiException
EEntity
getAllReferences in interface EEntitySdaiException - EI_NEXS, entity instance does not exist.
public EEntity moveUsersFrom(EEntity src)
throws SdaiException
EEntitySdaiModels with started
read-write access mode are considered.
In the case of a reference from an instance in an SdaiModel
existing in the read-only mode SdaiException MX_NRW is thrown.
If the submitted instance is referenced by an instance in an
SdaiModel whose access is ended, then such a reference is left
intact.
This method is available only when the entity data type of the current
instance is the same as that of the submitted instance or a subtype of it
(in other words, this.isKindOf(src.getInstanceType()) returns true).
Example:
SdaiRepository repo = ...;
EEntity inst40 = repo.getSessionIdentifier("#40");
EEntity inst4055 = repo.getSessionIdentifier("#4055");
EEntity move = inst4055.moveUsersFrom(inst40);
// move and inst4055 point to the same entity instance
moveUsersFrom in interface EEntitysrc - an entity instance the references to which are moved
to this entity instance
SdaiException - MX_NRW, SDAI-model access not read-write.
public EEntity copyValuesFrom(EEntity src)
throws SdaiException
EEntitySdaiModel owning the current instance shall be in
read-write access mode. The source instance retain the values of the attributes.
This method is available only when the entity data types of the current instance and the submitted instance are the same.
Example:
SdaiRepository repo = ...;
EEntity inst2241 = repo.getSessionIdentifier("#2241");
EEntity inst2243 = repo.getSessionIdentifier("#2243");
EEntity copy = inst2241.copyValuesFrom(inst2243);
// copy and inst2241 point to the same entity instance
copyValuesFrom in interface EEntitysrc - an entity instance the attribute values of which are
copied to this entity instance
SdaiException - FN_NAVL, function not available.
public ExternalData createExternalData()
throws SdaiException
EEntity
createExternalData in interface EEntityExternalData object which holds newly created entity external data
SdaiException - there can be other cases when exception it thrownEEntity.getExternalData(),
EEntity.testExternalData(),
EEntity.removeExternalData()
public ExternalData getExternalData()
throws SdaiException
EEntity
getExternalData in interface EEntityExternalData object which holds this entity external data
SdaiException - there can be other cases when exception it thrownEEntity.createExternalData(),
EEntity.testExternalData(),
EEntity.removeExternalData()
public boolean testExternalData()
throws SdaiException
EEntity
testExternalData in interface EEntitySdaiExceptionEEntity.createExternalData(),
EEntity.getExternalData(),
EEntity.removeExternalData()
public void removeExternalData()
throws SdaiException
EEntityExternalData object it becomes invalid.
If the entity has no external data this method does nothing.
removeExternalData in interface EEntitySdaiExceptionEEntity.createExternalData(),
EEntity.getExternalData(),
EEntity.testExternalData()
|
Copyright © LKSoftWare GmbH, 1999-2008 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||