jsdai.lang
Class ASchemaInstance

java.lang.Object
  extended byjsdai.lang.SdaiCommon
      extended byjsdai.lang.A_basis
          extended byjsdai.lang.SessionAggregate
              extended byjsdai.lang.ASchemaInstance
All Implemented Interfaces:
Aggregate, QuerySource, SdaiEventSource

public class ASchemaInstance
extends jsdai.lang.SessionAggregate

Specialized class implementing Aggregate for members of type SchemaInstance. See Aggregate for detailed description of methods whose specializations are given here.


Constructor Summary
ASchemaInstance()
          Constructs a new object of aggregate ASchemaInstance without aggregation type.
 
Method Summary
 void addAfter(SdaiIterator iter, boolean value, jsdai.dictionary.EDefined_type[] select)
          Adds a new member of type boolean immediately after the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST.
 void addAfter(SdaiIterator iter, double value, jsdai.dictionary.EDefined_type[] select)
          Adds a new member of type double immediately after the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST.
 void addAfter(SdaiIterator iter, int value, jsdai.dictionary.EDefined_type[] select)
          Adds a new member of type int immediately after the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST.
 void addAfter(SdaiIterator it, java.lang.Object value, jsdai.dictionary.EDefined_type[] select)
          Adds a new member of type Object immediately after the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST.
 Aggregate addAggregateByIndex(int index, jsdai.dictionary.EDefined_type[] select)
          Creates a new, empty aggregate instance and adds this instance at the specified index position to this Aggregate, provided the type of this Aggregate is LIST.
 void addBefore(SdaiIterator iter, boolean value, jsdai.dictionary.EDefined_type[] select)
          Adds a new member of type boolean immediately before the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST.
 void addBefore(SdaiIterator iter, double value, jsdai.dictionary.EDefined_type[] select)
          Adds a new member of type double immediately before the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST.
 void addBefore(SdaiIterator iter, int value, jsdai.dictionary.EDefined_type[] select)
          Adds a new member of type int immediately before the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST.
 void addBefore(SdaiIterator it, java.lang.Object value, jsdai.dictionary.EDefined_type[] select)
          Adds a new member of type Object immediately before the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST.
 void addByIndex(int index, boolean value, jsdai.dictionary.EDefined_type[] select)
          Adds a new member of type boolean at the specified index position to this Aggregate, provided its type is LIST.
 void addByIndex(int index, double value, jsdai.dictionary.EDefined_type[] select)
          Adds a new member of type double at the specified index position to this Aggregate, provided its type is LIST.
 void addByIndex(int index, int value, jsdai.dictionary.EDefined_type[] select)
          Adds a new member of type int at the specified index position to this Aggregate, provided its type is LIST.
 void addByIndex(int index, java.lang.Object value, jsdai.dictionary.EDefined_type[] select)
          Adds a new member of type Object at the specified index position to this Aggregate, provided its type is LIST.
 void addByIndex(int index, SchemaInstance value)
          It is a specialization of addByIndex(int, Object, EDefined_type []) method - the second parameter is of type SchemaInstance and the third parameter is dropped.
 void addSdaiListener(SdaiListener listener)
           
 void addUnordered(boolean value, jsdai.dictionary.EDefined_type[] select)
          Adds a new member of type boolean to this Aggregate, provided the type of this Aggregate is different than ARRAY.
 void addUnordered(double value, jsdai.dictionary.EDefined_type[] select)
          Adds a new member of type double to this Aggregate, provided the type of this Aggregate is different than ARRAY.
 void addUnordered(int value, jsdai.dictionary.EDefined_type[] select)
          Adds a new member of type int to this Aggregate, provided the type of this Aggregate is different than ARRAY.
 void addUnordered(java.lang.Object value, jsdai.dictionary.EDefined_type[] select)
          Adds a new member of type Object to this Aggregate, provided the type of this Aggregate is different than ARRAY.
 void attachIterator(SdaiIterator iter)
          Attaches an existing iterator to this Aggregate.
 void clear()
          Removes all members from this Aggregate if its EXPRESS type is either LIST, or SET, or BAG, and unsets all members of this Aggregate if its type is ARRAY.
 Aggregate createAggregateAfter(SdaiIterator iter, jsdai.dictionary.EDefined_type[] select)
          Creates a new, empty aggregate instance and adds it immediately after the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST.
 Aggregate createAggregateAsCurrentMember(SdaiIterator iter, jsdai.dictionary.EDefined_type[] select)
          Creates a new, empty aggregate instance and assigns it to a member of this Aggregate at the position specified by an iterator.
 Aggregate createAggregateBefore(SdaiIterator iter, jsdai.dictionary.EDefined_type[] select)
          Creates a new, empty aggregate instance and adds it immediately before the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST.
 Aggregate createAggregateByIndex(int index, jsdai.dictionary.EDefined_type[] select)
          Creates a new, empty aggregate instance and assigns it to a member of this Aggregate at the specified index position.
 Aggregate createAggregateUnordered(jsdai.dictionary.EDefined_type[] select)
          Creates a new, empty aggregate instance and adds this instance to this Aggregate, provided the type of this Aggregate is either SET or BAG.
 SdaiIterator createIterator()
          Creates a new iterator for the aggregate instance, initially set as if a Beginning operation had been performed.
 void exportXml(java.io.OutputStream location, InstanceReader instanceReader)
          Writes this aggregate of SchemaInstances in XML representation to specified stream.
 jsdai.dictionary.EAggregation_type getAggregationType()
          Returns the aggregation type for this Aggregate.
 ASdaiModel getAssociatedModels()
          Returns an aggregate which is a union of aggregates "associated_models" taken over all schema instances contained in this ASchemaInstance.
 SchemaInstance getByIndex(int index)
          It is getByIndexObject method with return value of type SchemaInstance instead of Object.
 boolean getByIndexBoolean(int index)
          Returns the value (of type boolean) of the member at the specified index position in this Aggregate.
 double getByIndexDouble(int index)
          Returns the value (of type double) of the member at the specified index position in this Aggregate.
 int getByIndexInt(int index)
          Returns the value (of type int) of the member at the specified index position in this Aggregate.
 java.lang.Object getByIndexObject(int index)
          Returns the value (of type Object) of the member at the specified index position in this Aggregate.
 SchemaInstance getCurrentMember(SdaiIterator it)
          It is getCurrentMemberObject method with return value of type SchemaInstance instead of Object.
 boolean getCurrentMemberBoolean(SdaiIterator iter)
          Returns the value (of type boolean) of the member of this Aggregate at the position specified by an iterator.
 double getCurrentMemberDouble(SdaiIterator iter)
          Returns the value (of type double) of the member of this Aggregate at the position specified by an iterator.
 int getCurrentMemberInt(SdaiIterator iter)
          Returns the value (of type int) of the member of this Aggregate at the position specified by an iterator.
 java.lang.Object getCurrentMemberObject(SdaiIterator it)
          Returns the value (of type Object) of the member of this Aggregate at the position specified by an iterator.
 int getLowerBound()
          Returns the value of the population_dependent_bound for the lower bound or lower index of this Aggregate.
 int getLowerIndex()
          Returns the value of the population_dependent_bound for the lower index of this Aggregate when its type is ARRAY.
 int getMemberCount()
          Returns the number of elements contained in this Aggregate.
 ASdaiModel getQuerySourceDomain()
          Returns domain in which to perform a search.
 jsdai.query.SerializableRef getQuerySourceDomainRef()
           
 jsdai.query.SerializableRef getQuerySourceInstanceRef()
           
 AEntity getQuerySourceInstances()
          Returns starting instances which serve as the first input instance set for a query.
 int getUpperBound()
          Returns the value of the population_dependent_bound for the upper bound or upper index of this Aggregate.
 int getUpperIndex()
          Returns the value of the population_dependent_bound for the upper index of this Aggregate when its type is ARRAY.
 int getValueBoundByIndex(int index)
          This method is not implemented in current JSDAI version.
 boolean isMember(boolean value, jsdai.dictionary.EDefined_type[] select)
          Checks if the specified value of type boolean is a member of this Aggregate.
 boolean isMember(double value, jsdai.dictionary.EDefined_type[] select)
          Checks if the specified value of type double is a member of this Aggregate.
 boolean isMember(int value, jsdai.dictionary.EDefined_type[] select)
          Checks if the specified value of type int is a member of this Aggregate.
 boolean isMember(java.lang.Object value, jsdai.dictionary.EDefined_type[] select)
          Checks if the specified value is a member of this Aggregate.
 boolean isMember(SchemaInstance value)
          It is a specialization of isMember(Object, EDefined_type []) method - the first parameter is of type SchemaInstance and the second parameter is dropped.
 int query(java.lang.String where, EEntity entity, AEntity result)
          This method is not implemented in current JSDAI version.
 void reindexArray()
          Resizes this Aggregate, provided its type is ARRAY, according to the value of the population_dependent_bound for the lower index and/or upper index.
 void removeByIndex(int index)
          Removes the member at the specified index position from this Aggregate, provided the type of this Aggregate is LIST.
 void removeSdaiListener(SdaiListener listener)
           
 void removeUnordered(boolean value, jsdai.dictionary.EDefined_type[] select)
          Removes one occurrence of the specified value of type boolean from this Aggregate, provided the type of this Aggregate is either SET or BAG.
 void removeUnordered(double value, jsdai.dictionary.EDefined_type[] select)
          Removes one occurrence of the specified value of type double from this Aggregate, provided the type of this Aggregate is either SET or BAG.
 void removeUnordered(int value, jsdai.dictionary.EDefined_type[] select)
          Removes one occurrence of the specified value of type int from this Aggregate, provided the type of this Aggregate is either SET or BAG.
 void removeUnordered(java.lang.Object value, jsdai.dictionary.EDefined_type[] select)
          Removes one occurrence of the specified value of type Object from this Aggregate, provided the type of this Aggregate is either SET or BAG.
 void resetArrayIndex(int lower, int upper)
          Resets upper and lower indices for this Aggregate, provided its type is ARRAY, according to the new index values based on the population_dependent_bound.
 void setByIndex(int index, boolean value, jsdai.dictionary.EDefined_type[] select)
          Assigns a new value of type boolean to a member of this Aggregate at the specified index position.
 void setByIndex(int index, double value, jsdai.dictionary.EDefined_type[] select)
          Assigns a new value of type double to a member of this Aggregate at the specified index position.
 void setByIndex(int index, int value, jsdai.dictionary.EDefined_type[] select)
          Assigns a new value of type int to a member of this Aggregate at the specified index position.
 void setByIndex(int index, java.lang.Object value, jsdai.dictionary.EDefined_type[] select)
          Assigns a new value of type Object to a member of this Aggregate at the specified index position.
 void setCurrentMember(SdaiIterator iter, boolean value, jsdai.dictionary.EDefined_type[] select)
          Assigns a new value of type boolean to a member of this Aggregate at the position specified by an iterator.
 void setCurrentMember(SdaiIterator iter, double value, jsdai.dictionary.EDefined_type[] select)
          Assigns a new value of type double to a member of this Aggregate at the position specified by an iterator.
 void setCurrentMember(SdaiIterator iter, int value, jsdai.dictionary.EDefined_type[] select)
          Assigns a new value of type int to a member of this Aggregate at the position specified by an iterator.
 void setCurrentMember(SdaiIterator it, java.lang.Object value, jsdai.dictionary.EDefined_type[] select)
          Assigns a new value of type Object to a member of this Aggregate at the position specified by an iterator.
 int testByIndex(int index)
          Checks if a value is set for the member of this Aggregate at the specified index position, and if so, returns the flag indicating the type of this value.
 int testByIndex(int index, jsdai.dictionary.EDefined_type[] select)
          Checks if a value is set for the member of this Aggregate at the specified index position, and if so, returns the flag indicating the type of this value.
 int testCurrentMember(SdaiIterator iter)
          Checks if a value is set for the member of this Aggregate at the position specified by an iterator, and if so, returns the flag indicating the type of this value.
 int testCurrentMember(SdaiIterator it, jsdai.dictionary.EDefined_type[] select)
          Checks if a value is set for the member of this Aggregate at the position specified by an iterator, and if so, returns the flag indicating the type of this value.
 java.lang.String toString()
          Returns a description of this ASchemaInstance as a String.
 void unsetValueByIndex(int index)
          Changes the value of a member at the specified index position of this Aggregate of type ARRAY so that this aggregate has no value at that position.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface jsdai.lang.SdaiEventSource
addSdaiListener, removeSdaiListener
 

Constructor Detail

ASchemaInstance

public ASchemaInstance()
Constructs a new object of aggregate ASchemaInstance without aggregation type. The aggregates of such kind are used as non-persistent lists.

See Also:
Aggregate.getAggregationType()
Method Detail

getMemberCount

public int getMemberCount()
                   throws SdaiException
Description copied from interface: Aggregate
Returns the number of elements contained in this Aggregate. If the type of this aggregate is a bounded array, then this number is calculated according to the formula "upper_index" - "lower_index" + 1. That is, in this case the size of the array is returned.

Throws:
SdaiException

isMember

public boolean isMember(SchemaInstance value)
                 throws SdaiException
It is a specialization of isMember(Object, EDefined_type []) method - the first parameter is of type SchemaInstance and the second parameter is dropped.

Throws:
SdaiException

getByIndex

public SchemaInstance getByIndex(int index)
                          throws SdaiException
It is getByIndexObject method with return value of type SchemaInstance instead of Object.

Throws:
SdaiException

setByIndex

public void setByIndex(int index,
                       java.lang.Object value,
                       jsdai.dictionary.EDefined_type[] select)
                throws SdaiException
Description copied from interface: Aggregate
Assigns a new value of type Object to a member of this Aggregate at the specified index position. The method is valid only if this aggregate is an ordered collection (EXPRESS types ARRAY or LIST). If the old value is an aggregate instance, then it is deleted along with any nested aggregate instances contained by it.

If the type of the aggregate elements 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). 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:

Parameters:
index - the index or position for the member whose value is set.
value - the value to be assigned.
select - select path corresponding to the value submitted.
Throws:
SdaiException - SY_ERR, underlying system error.
See Also:
Aggregate.setByIndex(int, int, EDefined_type[]), Aggregate.setByIndex(int, double, EDefined_type[]), Aggregate.setByIndex(int, boolean, EDefined_type[]), Aggregate.createAggregateByIndex(int, jsdai.dictionary.EDefined_type[]), "ISO 10303-22::10.16.1 Put by index"

addByIndex

public void addByIndex(int index,
                       java.lang.Object value,
                       jsdai.dictionary.EDefined_type[] select)
                throws SdaiException
Description copied from interface: Aggregate
Adds a new member of type Object at the specified index position to this Aggregate, provided its type is LIST. The method is invalid for aggregates of other EXPRESS types. If the specified index is equal to the list size plus one, the value submitted is appended to the end of the list. If the specified index is greater than the above indicated value, then SdaiException IX_NVLD is thrown.

If the type of the aggregate elements 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 added 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:

Parameters:
index - the list position for the new member.
value - the value to be added.
select - select path corresponding to the value submitted.
Throws:
SdaiException - VT_NVLD, value type invalid.
See Also:
Aggregate.addByIndex(int, int, EDefined_type[]), Aggregate.addByIndex(int, double, EDefined_type[]), Aggregate.addByIndex(int, boolean, EDefined_type[]), Aggregate.createAggregateByIndex(int, jsdai.dictionary.EDefined_type[]), "ISO 10303-22::10.19.3 Add by index"

addByIndex

public void addByIndex(int index,
                       SchemaInstance value)
                throws SdaiException
It is a specialization of addByIndex(int, Object, EDefined_type []) method - the second parameter is of type SchemaInstance and the third parameter is dropped.

Throws:
SdaiException

addUnordered

public void addUnordered(java.lang.Object value,
                         jsdai.dictionary.EDefined_type[] select)
                  throws SdaiException
Description copied from interface: Aggregate
Adds a new member of type Object to this Aggregate, provided the type of this Aggregate is different than ARRAY. Processing of the LIST type is an extension of the functionality of Add unordered operation specified in ISO 10303-22::10.14.1. If this case, a new member is added at the end of the list. The method is invalid for aggregates of EXPRESS ARRAY type.

If the type of the aggregate elements 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 added needs to be submitted (through the second method's parameter). Otherwise, null to the second 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:

Parameters:
value - the value to be added.
select - select path corresponding to the value submitted.
Throws:
SdaiException - MX_NRW, SDAI-model access not read-write.
See Also:
Aggregate.addUnordered(int, EDefined_type[]), Aggregate.addUnordered(double, EDefined_type[]), Aggregate.addUnordered(boolean, EDefined_type[]), Aggregate.createAggregateUnordered(jsdai.dictionary.EDefined_type[]), "ISO 10303-22::10.14.1 Add unordered"

setCurrentMember

public void setCurrentMember(SdaiIterator it,
                             java.lang.Object value,
                             jsdai.dictionary.EDefined_type[] select)
                      throws SdaiException
Description copied from interface: Aggregate
Assigns a new value of type Object to a member of this Aggregate at the position specified by an iterator. If the old value is an aggregate instance, then it is deleted along with any nested aggregate instances contained by it.

If the type of the aggregate elements 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). 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:

Parameters:
it - the iterator specifying the position of the aggregate member to assign the specified value.
value - the value to be assigned.
select - select path corresponding to the value submitted.
Throws:
SdaiException - MX_NRW, SDAI-model access not read-write.
See Also:
Aggregate.setCurrentMember(SdaiIterator, int, EDefined_type[]), Aggregate.setCurrentMember(SdaiIterator, double, EDefined_type[]), Aggregate.setCurrentMember(SdaiIterator, boolean, EDefined_type[]), Aggregate.createAggregateAsCurrentMember(jsdai.lang.SdaiIterator, jsdai.dictionary.EDefined_type[]), "ISO 10303-22::10.13.2 Put current member"

addBefore

public void addBefore(SdaiIterator it,
                      java.lang.Object value,
                      jsdai.dictionary.EDefined_type[] select)
               throws SdaiException
Description copied from interface: Aggregate
Adds a new member of type Object immediately before the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST. The method is invalid for aggregates of other EXPRESS types. If iterator has no current member, then this method behaves as follows. If iterator is at the beginning and the list is nonempty, then the new member is inserted before the first member of the list, and the iterator is positioned to reference the new member. Otherwise, the new member is appended to the list, and the iterator is left at the end of the list with no member referenced.

If the type of the aggregate elements 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 added 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:

Parameters:
it - the iterator specifying the position of the aggregate member before which the specified value has to be added.
value - the value to be added.
select - select path corresponding to the value submitted.
Throws:
SdaiException - SY_ERR, underlying system error.
See Also:
Aggregate.addBefore(SdaiIterator, int, EDefined_type[]), Aggregate.addBefore(SdaiIterator, double, EDefined_type[]), Aggregate.addBefore(SdaiIterator, boolean, EDefined_type[]), Aggregate.createAggregateBefore(jsdai.lang.SdaiIterator, jsdai.dictionary.EDefined_type[]), "ISO 10303-22::10.19.1 Add before current member"

addAfter

public void addAfter(SdaiIterator it,
                     java.lang.Object value,
                     jsdai.dictionary.EDefined_type[] select)
              throws SdaiException
Description copied from interface: Aggregate
Adds a new member of type Object immediately after the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST. The method is invalid for aggregates of other EXPRESS types. If iterator has no current member, then this method behaves as follows. If iterator is at the end and the list is nonempty, then the new member is appended to the list, and the iterator is positioned to reference the new member. Otherwise, the new member is inserted before the first member of the list, and the iterator is left at the beginning of the list with no member referenced.

If the type of the aggregate elements 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 added 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:

Parameters:
it - the iterator specifying the position of the aggregate member after which the specified value has to be added.
value - the value to be added.
select - select path corresponding to the value submitted.
Throws:
SdaiException - AI_NEXS, aggregate instance does not exist.
See Also:
Aggregate.addAfter(SdaiIterator, int, EDefined_type[]), Aggregate.addAfter(SdaiIterator, double, EDefined_type[]), Aggregate.addAfter(SdaiIterator, boolean, EDefined_type[]), Aggregate.createAggregateAfter(jsdai.lang.SdaiIterator, jsdai.dictionary.EDefined_type[]), "ISO 10303-22::10.19.2 Add after current member"

getAssociatedModels

public ASdaiModel getAssociatedModels()
                               throws SdaiException
Returns an aggregate which is a union of aggregates "associated_models" taken over all schema instances contained in this ASchemaInstance. The type of the produced aggregate is SET.

Returns:
an aggregate containing models which are associated with at least one schema instance in this ASchemaInstance.

This method can be used to get an aggregate which can be submitted to parameter with the name "domain" in several methods in class CEntity, for example findEntityInstanceUsedin method.

The method is an extension of JSDAI, which is not a part of the standard.

Throws:
SdaiException - TR_NAVL, transaction currently not available.
SdaiException - TR_EAB, transaction ended abnormally.
SdaiException - SY_ERR, underlying system error.

toString

public java.lang.String toString()
Returns a description of this ASchemaInstance as a String. It includes constant string "SchemaInstances: " and a list of the names of all the schema instances contained in this aggregate.

Example:

    ASchemaInstance sch_aggr = ...;
    System.out.println(sch_aggr);
    The string printed will be like this:
    SchemaInstances: sch_inst, sch_inst2, sch_inst3, sch_inst_special 

Returns:
the String representing this ASchemaInstance.

getCurrentMember

public SchemaInstance getCurrentMember(SdaiIterator it)
                                throws SdaiException
It is getCurrentMemberObject method with return value of type SchemaInstance instead of Object.

Throws:
SdaiException

exportXml

public void exportXml(java.io.OutputStream location,
                      InstanceReader instanceReader)
               throws SdaiException
Writes this aggregate of SchemaInstances in XML representation to specified stream. Output format is controlled by instanceReader parameter.

Parameters:
location - an OutputStream to write XML to
instanceReader - an InstanceReader describing output format
Throws:
SdaiException - if an error occurs during the operation or in underlying JSDAI operations
See Also:
jsdai.xml.InstanceReader, jsdai.xml.LateBindingReader

isMember

public boolean isMember(java.lang.Object value,
                        jsdai.dictionary.EDefined_type[] select)
                 throws SdaiException
Description copied from interface: Aggregate
Checks if the specified value is a member of this Aggregate. A positive answer is returned if this value appears in the aggregate at least once. If the type of the aggregate elements 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 checked needs to be submitted (through the second method's parameter). Otherwise, null to the second 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[])

In each of the following cases an SdaiException VT_NVLD is thrown:

If select path is invalid, then SdaiException VA_NVLD is thrown.

Specified by:
isMember in interface Aggregate
Parameters:
value - the value to be checked for inclusion.
select - select path corresponding to the value submitted.
Returns:
true if the specified value is a member of this aggregate, false otherwise.
Throws:
SdaiException - SY_ERR, underlying system error.
See Also:
Aggregate.isMember(int, EDefined_type[]), Aggregate.isMember(double, EDefined_type[]), Aggregate.isMember(boolean, EDefined_type[]), "ISO 10303-22::10.12.2 Is member"

isMember

public boolean isMember(int value,
                        jsdai.dictionary.EDefined_type[] select)
                 throws SdaiException
Description copied from interface: Aggregate
Checks if the specified value of type int is a member of this Aggregate. A positive answer is returned if this value appears in the aggregate at least once. This method is applicable for values of EXPRESS data types INTEGER, LOGICAL and ENUMERATION. If the type of the aggregate elements is select type, then the select path corresponding to the value to be checked needs to be submitted (through the second method's parameter). Otherwise, null to the second 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:

Specified by:
isMember in interface Aggregate
Parameters:
value - the value to be checked for inclusion.
select - select path corresponding to the value submitted.
Returns:
true if the specified value is a member of this aggregate, false otherwise.
Throws:
SdaiException - EI_NEXS, entity instance does not exist.
See Also:
Aggregate.isMember(Object, EDefined_type[]), Aggregate.isMember(double, EDefined_type[]), Aggregate.isMember(boolean, EDefined_type[]), "ISO 10303-22::10.12.2 Is member"

isMember

public boolean isMember(double value,
                        jsdai.dictionary.EDefined_type[] select)
                 throws SdaiException
Description copied from interface: Aggregate
Checks if the specified value of type double is a member of this Aggregate. A positive answer is returned if this value appears in the aggregate at least once. This method is applicable for values of EXPRESS data types REAL, and NUMBER. If the type of the aggregate elements is select type, then the select path corresponding to the value to be checked needs to be submitted (through the second method's parameter). Otherwise, null to the second 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:

Specified by:
isMember in interface Aggregate
Parameters:
value - the value to be checked for inclusion.
select - select path corresponding to the value submitted.
Returns:
true if the specified value is a member of this aggregate, false otherwise.
Throws:
SdaiException - SY_ERR, underlying system error.
See Also:
Aggregate.isMember(Object, EDefined_type[]), Aggregate.isMember(int, EDefined_type[]), Aggregate.isMember(boolean, EDefined_type[]), "ISO 10303-22::10.12.2 Is member"

isMember

public boolean isMember(boolean value,
                        jsdai.dictionary.EDefined_type[] select)
                 throws SdaiException
Description copied from interface: Aggregate
Checks if the specified value of type boolean is a member of this Aggregate. A positive answer is returned if this value appears in the aggregate at least once. This method is applicable for values of EXPRESS data type BOOLEAN. If the type of the aggregate elements is select type, then the select path corresponding to the value to be checked needs to be submitted (through the second method's parameter). Otherwise, null to the second 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:

Specified by:
isMember in interface Aggregate
Parameters:
value - the value to be checked for inclusion.
select - select path corresponding to the value submitted.
Returns:
true if the specified value is a member of this aggregate, false otherwise.
Throws:
SdaiException - VA_NVLD, value invalid.
See Also:
Aggregate.isMember(Object, EDefined_type[]), Aggregate.isMember(int, EDefined_type[]), Aggregate.isMember(double, EDefined_type[]), "ISO 10303-22::10.12.2 Is member"

createIterator

public SdaiIterator createIterator()
                            throws SdaiException
Description copied from interface: Aggregate
Creates a new iterator for the aggregate instance, initially set as if a Beginning operation had been performed. Thus, the iterator has no current member and for ordered collection is positioned before the first member of the aggregate.

Specified by:
createIterator in interface Aggregate
Returns:
the newly created iterator over this Aggregate.
Throws:
SdaiException - MX_NDEF, SdaiModel access not defined.
See Also:
SdaiIterator.beginning(), Aggregate.attachIterator(jsdai.lang.SdaiIterator), "ISO 10303-22::10.12.3 Create iterator"

attachIterator

public void attachIterator(SdaiIterator iter)
                    throws SdaiException
Description copied from interface: Aggregate
Attaches an existing iterator to this Aggregate. The iterator is set as if a Beginning operation had been performed. Thus, the iterator has no current member and for ordered collection is positioned before the first member of the aggregate.

This method is an extension of JSDAI, which is not a part of the standard. It allows to reuse an existing SdaiIterator object created with createIterator method.

Specified by:
attachIterator in interface Aggregate
Parameters:
iter - the iterator to be attached to this Aggregate.
Throws:
SdaiException - TR_NAVL, transaction currently not available.
See Also:
Aggregate.createIterator(), "ISO 10303-22::10.12.3 Create iterator"

getLowerBound

public int getLowerBound()
                  throws SdaiException
Description copied from interface: Aggregate
Returns the value of the population_dependent_bound for the lower bound or lower index of this Aggregate.

This method is not implemented in current JSDAI version. SdaiException EX_NSUP will be thrown if this method is invoked.

Specified by:
getLowerBound in interface Aggregate
Returns:
the value of the lower bound or lower index.
Throws:
SdaiException - EX_NSUP, expression evaluation not supported.
See Also:
jsdai.dictionary.EPopulation_dependent_bound, "ISO 10303-22::10.12.9 Get lower bound"

getUpperBound

public int getUpperBound()
                  throws SdaiException
Description copied from interface: Aggregate
Returns the value of the population_dependent_bound for the upper bound or upper index of this Aggregate.

This method is not implemented in current JSDAI version. SdaiException EX_NSUP will be thrown if this method is invoked.

Specified by:
getUpperBound in interface Aggregate
Returns:
the value of the upper bound or upper index.
Throws:
SdaiException - EX_NSUP, expression evaluation not supported.
See Also:
jsdai.dictionary.EPopulation_dependent_bound, "ISO 10303-22::10.12.9 Get lower bound"

query

public int query(java.lang.String where,
                 EEntity entity,
                 AEntity result)
          throws SdaiException
Description copied from interface: Aggregate
This method is not implemented in current JSDAI version.

SdaiException FN_NAVL will be thrown if this method is invoked.

Specified by:
query in interface Aggregate
Throws:
SdaiException - FN_NAVL, function not available.
See Also:
"ISO 10303-22::10.4.14 SDAI query"

getQuerySourceDomain

public ASdaiModel getQuerySourceDomain()
                                throws SdaiException
Description copied from interface: QuerySource
Returns domain in which to perform a search.

Specified by:
getQuerySourceDomain in interface QuerySource
Returns:
ASdaiModel containing the domain
Throws:
SdaiException - if an error occurs during the operation or in underlying JSDAI operations

getQuerySourceInstances

public AEntity getQuerySourceInstances()
                                throws SdaiException
Description copied from interface: QuerySource
Returns starting instances which serve as the first input instance set for a query.

Specified by:
getQuerySourceInstances in interface QuerySource
Returns:
AEntity containing the instances or null this aggregate consists all instances in query source domain
Throws:
SdaiException - if an error occurs during the operation or in underlying JSDAI operations

getQuerySourceInstanceRef

public jsdai.query.SerializableRef getQuerySourceInstanceRef()
                                                      throws SdaiException
Specified by:
getQuerySourceInstanceRef in interface QuerySource
Throws:
SdaiException

getQuerySourceDomainRef

public jsdai.query.SerializableRef getQuerySourceDomainRef()
                                                    throws SdaiException
Specified by:
getQuerySourceDomainRef in interface QuerySource
Throws:
SdaiException

getByIndexObject

public java.lang.Object getByIndexObject(int index)
                                  throws SdaiException
Description copied from interface: Aggregate
Returns the value (of type Object) of the member at the specified index position in this Aggregate. Indexing starts from 1. The method is valid not only for ordered collections (EXPRESS types ARRAY and LIST) but also for unordered ones (EXPRESS types SET and BAG). This feature is an extension of the standard.

Specified by:
getByIndexObject in interface Aggregate
Parameters:
index - the index or position from which the value is asked.
Returns:
the value at the specified position in this Aggregate.
Throws:
SdaiException - AI_NVLD, aggregate instance invalid.
See Also:
Aggregate.getByIndexInt(int), Aggregate.getByIndexDouble(int), Aggregate.getByIndexBoolean(int), "ISO 10303-22::10.15.1 Get by index"

getByIndexInt

public int getByIndexInt(int index)
                  throws SdaiException
Description copied from interface: Aggregate
Returns the value (of type int) of the member at the specified index position in this Aggregate. Indexing starts from 1. The method is valid not only for ordered collections (EXPRESS types ARRAY and LIST) but also for unordered ones (EXPRESS types SET and BAG). This feature is an extension of the standard.

If value to be returned is not of Java int type, then SdaiException VT_NVLD is thrown. Applying method to an aggregate that can contain elements only of type EEntity results in SdaiException FN_NAVL. Such aggregates, for example, are produced by getInstances methods in class SdaiModel.

Specified by:
getByIndexInt in interface Aggregate
Parameters:
index - the index or position from which the value is asked.
Returns:
the value at the specified position in this Aggregate.
Throws:
SdaiException - SY_ERR, underlying system error.
See Also:
Aggregate.getByIndexObject(int), Aggregate.getByIndexDouble(int), Aggregate.getByIndexBoolean(int), "ISO 10303-22::10.15.1 Get by index"

getByIndexDouble

public double getByIndexDouble(int index)
                        throws SdaiException
Description copied from interface: Aggregate
Returns the value (of type double) of the member at the specified index position in this Aggregate. Indexing starts from 1. The method is valid not only for ordered collections (EXPRESS types ARRAY and LIST) but also for unordered ones (EXPRESS types SET and BAG). This feature is an extension of the standard.

If value to be returned is not of Java double type, then SdaiException VT_NVLD is thrown. Applying method to an aggregate that can contain elements only of type EEntity results in SdaiException FN_NAVL. Such aggregates, for example, are produced by getInstances methods in class SdaiModel.

Specified by:
getByIndexDouble in interface Aggregate
Parameters:
index - the index or position from which the value is asked.
Returns:
the value at the specified position in this Aggregate.
Throws:
SdaiException - FN_NAVL, function not available.
See Also:
Aggregate.getByIndexObject(int), Aggregate.getByIndexInt(int), Aggregate.getByIndexBoolean(int), "ISO 10303-22::10.15.1 Get by index"

getByIndexBoolean

public boolean getByIndexBoolean(int index)
                          throws SdaiException
Description copied from interface: Aggregate
Returns the value (of type boolean) of the member at the specified index position in this Aggregate. Indexing starts from 1. The method is valid not only for ordered collections (EXPRESS types ARRAY and LIST) but also for unordered ones (EXPRESS types SET and BAG). This feature is an extension of the standard.

If value to be returned is not of Java boolean type, then SdaiException VT_NVLD is thrown. Applying method to an aggregate that can contain elements only of type EEntity results in SdaiException FN_NAVL. Such aggregates, for example, are produced by getInstances methods in class SdaiModel.

Specified by:
getByIndexBoolean in interface Aggregate
Parameters:
index - the index or position from which the value is asked.
Returns:
the value at the specified position in this Aggregate.
Throws:
SdaiException - VA_NVLD, value invalid.
See Also:
Aggregate.getByIndexObject(int), Aggregate.getByIndexInt(int), Aggregate.getByIndexDouble(int), "ISO 10303-22::10.15.1 Get by index"

getValueBoundByIndex

public int getValueBoundByIndex(int index)
                         throws SdaiException
Description copied from interface: Aggregate
This method is not implemented in current JSDAI version.

SdaiException EX_NSUP will be thrown if this method is invoked.

Specified by:
getValueBoundByIndex in interface Aggregate
Parameters:
index - the index position of the aggregate element for which the value bound is to be returned.
Returns:
the value bound.
Throws:
SdaiException - EX_NSUP, expression evaluation not supported.
See Also:
"ISO 10303-22::10.15.4 Get value bound by index"

setByIndex

public void setByIndex(int index,
                       int value,
                       jsdai.dictionary.EDefined_type[] select)
                throws SdaiException
Description copied from interface: Aggregate
Assigns a new value of type int to a member of this Aggregate at the specified index position. The method is valid only if this aggregate is an ordered collection (EXPRESS types ARRAY or LIST). If the old value is an aggregate instance, then it is deleted along with any nested aggregate instances contained by it.

If the type of the aggregate elements 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:

Specified by:
setByIndex in interface Aggregate
Parameters:
index - the index or position for the member whose value is set.
value - the value to be assigned.
select - select path corresponding to the value submitted.
Throws:
SdaiException - VT_NVLD, value type invalid.
See Also:
Aggregate.setByIndex(int, Object, EDefined_type[]), Aggregate.setByIndex(int, double, EDefined_type[]), Aggregate.setByIndex(int, boolean, EDefined_type[]), "ISO 10303-22::10.16.1 Put by index"

setByIndex

public void setByIndex(int index,
                       double value,
                       jsdai.dictionary.EDefined_type[] select)
                throws SdaiException
Description copied from interface: Aggregate
Assigns a new value of type double to a member of this Aggregate at the specified index position. The method is valid only if this aggregate is an ordered collection (EXPRESS types ARRAY or LIST). If the old value is an aggregate instance, then it is deleted along with any nested aggregate instances contained by it.

If the type of the aggregate elements 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:

Specified by:
setByIndex in interface Aggregate
Parameters:
index - the index or position for the member whose value is set.
value - the value to be assigned.
select - select path corresponding to the value submitted.
Throws:
SdaiException - AI_NEXS, aggregate instance does not exist.
See Also:
Aggregate.setByIndex(int, Object, EDefined_type[]), Aggregate.setByIndex(int, int, EDefined_type[]), Aggregate.setByIndex(int, boolean, EDefined_type[]), "ISO 10303-22::10.16.1 Put by index"

setByIndex

public void setByIndex(int index,
                       boolean value,
                       jsdai.dictionary.EDefined_type[] select)
                throws SdaiException
Description copied from interface: Aggregate
Assigns a new value of type boolean to a member of this Aggregate at the specified index position. The method is valid only if this aggregate is an ordered collection (EXPRESS types ARRAY or LIST). If the old value is an aggregate instance, then it is deleted along with any nested aggregate instances contained by it.

If the type of the aggregate elements 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:

Specified by:
setByIndex in interface Aggregate
Parameters:
index - the index or position for the member whose value is set.
value - the value to be assigned.
select - select path corresponding to the value submitted.
Throws:
SdaiException - EI_NEXS, entity instance does not exist.
See Also:
Aggregate.setByIndex(int, Object, EDefined_type[]), Aggregate.setByIndex(int, int, EDefined_type[]), Aggregate.setByIndex(int, double, EDefined_type[]), "ISO 10303-22::10.16.1 Put by index"

createAggregateByIndex

public Aggregate createAggregateByIndex(int index,
                                        jsdai.dictionary.EDefined_type[] select)
                                 throws SdaiException
Description copied from interface: Aggregate
Creates a new, empty aggregate instance and assigns it to a member of this Aggregate at the specified index position. The method is valid only if this aggregate is an ordered collection (EXPRESS types ARRAY or LIST). If the old value is an aggregate instance, then it is deleted along with any nested aggregate instances contained by it.

If the type of the aggregate elements is select type, then the select path identifying the type of the aggregate requested to create as a member of this Aggregate needs to be submitted (through the second method's parameter). Otherwise, null to the second 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:

Specified by:
createAggregateByIndex in interface Aggregate
Parameters:
index - the index or position for the member which is replaced by the newly created aggregate.
select - select path identifying the type of the aggregate to be created.
Returns:
the newly created empty aggregate.
Throws:
SdaiException - TR_NAVL, transaction currently not available.
See Also:
"ISO 10303-22::10.16.2 Create aggregate instance by index"

testByIndex

public int testByIndex(int index,
                       jsdai.dictionary.EDefined_type[] select)
                throws SdaiException
Description copied from interface: Aggregate
Checks if a value is set for the member of this Aggregate at the specified index position, and if so, returns the flag indicating the type of this value. Indexing starts from 1. The method is valid not only for EXPRESS type ARRAY but also for other types: LIST, SET and BAG. This feature is an extension of the standard. The possible return values are the following: The case of return value 2 encompasses the cases when the aggregate value is of EXPRESS type INTEGER, ENUMERATION and LOGICAL. For the same value each of the methods testByIndex, testCurrentMember and EEntity.testAttribute returns the same type indicator.

If the type of the aggregate elements is select type and the set of possible leaf types is not a subset of the set of entity data types, then the array "select" (the second method's parameter) of sufficient size for storing the select path corresponding to the current member value at the specified index position must be submitted. Otherwise, null to the second 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 Technical corrigendum of ISO 10303-21:11.1.8). The method returns the array "select" with defined data types stored in it. The number of elements in this array 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. If "select" array is not provided or is of insufficient size, then SdaiException VT_NVLD and, respectively, VA_NVLD is thrown.

The usage of this method is similar as in Example 1 provided for EEntity.testAttribute method. The early binding usage of the "Test by index" operation is similar as in Example 2 given in the description of the same method.

Specified by:
testByIndex in interface Aggregate
Parameters:
index - the index or position for the member whose value is to be tested.
select - an array provided for storing the select path corresponding to the member value to be tested.
Returns:
the flag indicating either the type of the member value or the fact that the specified aggregate member is unset.
Throws:
SdaiException - MX_NDEF, SdaiModel access not defined.
See Also:
Aggregate.testByIndex(int), "ISO 10303-22::10.17.1 Test by index"

testByIndex

public int testByIndex(int index)
                throws SdaiException
Description copied from interface: Aggregate
Checks if a value is set for the member of this Aggregate at the specified index position, and if so, returns the flag indicating the type of this value. Indexing starts from 1. The method is valid not only for EXPRESS type ARRAY but also for other types: LIST, SET and BAG. This feature is an extension of the standard. The possible return values are the following: The case of return value 2 encompasses the cases when the aggregate value is of EXPRESS type INTEGER, ENUMERATION and LOGICAL.

If the type of the aggregate elements is select type, then SdaiException AI_NVLD is thrown.

Specified by:
testByIndex in interface Aggregate
Parameters:
index - the index or position for the member whose value is to be tested.
Returns:
the flag indicating either the type of the member value or the fact that the specified aggregate member is unset.
Throws:
SdaiException - TR_NAVL, transaction currently not available.
See Also:
Aggregate.testByIndex(int, EDefined_type []), "ISO 10303-22::10.17.1 Test by index"

getLowerIndex

public int getLowerIndex()
                  throws SdaiException
Description copied from interface: Aggregate
Returns the value of the population_dependent_bound for the lower index of this Aggregate when its type is ARRAY.

This method is not implemented in current JSDAI version. SdaiException FN_NAVL will be thrown if this method is invoked.

Specified by:
getLowerIndex in interface Aggregate
Returns:
the value of the lower index.
Throws:
SdaiException - FN_NAVL, function not available.
See Also:
jsdai.dictionary.EPopulation_dependent_bound, "ISO 10303-22::10.17.3 Get lower index"

getUpperIndex

public int getUpperIndex()
                  throws SdaiException
Description copied from interface: Aggregate
Returns the value of the population_dependent_bound for the upper index of this Aggregate when its type is ARRAY.

This method is not implemented in current JSDAI version. SdaiException FN_NAVL will be thrown if this method is invoked.

Specified by:
getUpperIndex in interface Aggregate
Returns:
the value of the upper index.
Throws:
SdaiException - FN_NAVL, function not available.
See Also:
jsdai.dictionary.EPopulation_dependent_bound, "ISO 10303-22::10.17.4 Get upper index"

unsetValueByIndex

public void unsetValueByIndex(int index)
                       throws SdaiException
Description copied from interface: Aggregate
Changes the value of a member at the specified index position of this Aggregate of type ARRAY so that this aggregate has no value at that position. A subsequent application of testByIndex methods at this index position will return value 0. The method is valid only if the type of this aggregate is ARRAY. If this condition is violated, then SdaiException AI_NVLD is thrown. If the old value is an aggregate instance, then it is deleted along with any nested aggregate instances contained by it.

Specified by:
unsetValueByIndex in interface Aggregate
Parameters:
index - the array index of the member to be unset.
Throws:
SdaiException - IX_NVLD, index invalid.
See Also:
"ISO 10303-22::10.18.1 Unset value by index"

reindexArray

public void reindexArray()
                  throws SdaiException
Description copied from interface: Aggregate
Resizes this Aggregate, provided its type is ARRAY, according to the value of the population_dependent_bound for the lower index and/or upper index.

This method is not implemented in current JSDAI version. SdaiException EX_NSUP will be thrown if this method is invoked.

Specified by:
reindexArray in interface Aggregate
Throws:
SdaiException - EX_NSUP, expression evaluation not supported.
See Also:
jsdai.dictionary.EPopulation_dependent_bound, "ISO 10303-22::10.18.3 Reindex array"

resetArrayIndex

public void resetArrayIndex(int lower,
                            int upper)
                     throws SdaiException
Description copied from interface: Aggregate
Resets upper and lower indices for this Aggregate, provided its type is ARRAY, according to the new index values based on the population_dependent_bound. After reindexing, elements at invalid index positions are no longer accessible. Elements at new index positions have unset values.

This method is not implemented in current JSDAI version. SdaiException FN_NAVL will be thrown if this method is invoked.

Specified by:
resetArrayIndex in interface Aggregate
Parameters:
lower - the new lower index value.
upper - the new upper index value.
Throws:
SdaiException - FN_NAVL, function not available.
See Also:
jsdai.dictionary.EPopulation_dependent_bound, "ISO 10303-22::10.18.4 Reset array index"

addByIndex

public void addByIndex(int index,
                       int value,
                       jsdai.dictionary.EDefined_type[] select)
                throws SdaiException
Description copied from interface: Aggregate
Adds a new member of type int at the specified index position to this Aggregate, provided its type is LIST. The method is invalid for aggregates of other EXPRESS types. If the specified index is equal to the list size plus one, the value submitted is appended to the end of the list. If the specified index is greater than the above indicated value, then SdaiException IX_NVLD is thrown.

If the type of the aggregate elements is select type, then the select path corresponding to the value to be added 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:

Specified by:
addByIndex in interface Aggregate
Parameters:
index - the list position for the new member.
value - the value to be added.
select - select path corresponding to the value submitted.
Throws:
SdaiException - VA_NSET, value not set.
See Also:
Aggregate.addByIndex(int, Object, EDefined_type[]), Aggregate.addByIndex(int, double, EDefined_type[]), Aggregate.addByIndex(int, boolean, EDefined_type[]), "ISO 10303-22::10.19.3 Add by index"

addByIndex

public void addByIndex(int index,
                       double value,
                       jsdai.dictionary.EDefined_type[] select)
                throws SdaiException
Description copied from interface: Aggregate
Adds a new member of type double at the specified index position to this Aggregate, provided its type is LIST. The method is invalid for aggregates of other EXPRESS types. If the specified index is equal to the list size plus one, the value submitted is appended to the end of the list. If the specified index is greater than the above indicated value, then SdaiException IX_NVLD is thrown.

If the type of the aggregate elements is select type, then the select path corresponding to the value to be added 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:

Specified by:
addByIndex in interface Aggregate
Parameters:
index - the list position for the new member.
value - the value to be added.
select - select path corresponding to the value submitted.
Throws:
SdaiException - AI_NEXS, aggregate instance does not exist.
See Also:
Aggregate.addByIndex(int, Object, EDefined_type[]), Aggregate.addByIndex(int, int, EDefined_type[]), Aggregate.addByIndex(int, boolean, EDefined_type[]), "ISO 10303-22::10.19.3 Add by index"

addByIndex

public void addByIndex(int index,
                       boolean value,
                       jsdai.dictionary.EDefined_type[] select)
                throws SdaiException
Description copied from interface: Aggregate
Adds a new member of type boolean at the specified index position to this Aggregate, provided its type is LIST. The method is invalid for aggregates of other EXPRESS types. If the specified index is equal to the list size plus one, the value submitted is appended to the end of the list. If the specified index is greater than the above indicated value, then SdaiException IX_NVLD is thrown.

If the type of the aggregate elements is select type, then the select path corresponding to the value to be added 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:

Specified by:
addByIndex in interface Aggregate
Parameters:
index - the list position for the new member.
value - the value to be added.
select - select path corresponding to the value submitted.
Throws:
SdaiException - FN_NAVL, function not available.
See Also:
Aggregate.addByIndex(int, Object, EDefined_type[]), Aggregate.addByIndex(int, int, EDefined_type[]), Aggregate.addByIndex(int, double, EDefined_type[]), "ISO 10303-22::10.19.3 Add by index"

addAggregateByIndex

public Aggregate addAggregateByIndex(int index,
                                     jsdai.dictionary.EDefined_type[] select)
                              throws SdaiException
Description copied from interface: Aggregate
Creates a new, empty aggregate instance and adds this instance at the specified index position to this Aggregate, provided the type of this Aggregate is LIST. The method is invalid for aggregates of other EXPRESS types. If the specified index is equal to the list size plus one, the aggregate created is appended to the end of the list. If the specified index is greater than the above indicated value, then SdaiException IX_NVLD is thrown.

If the type of the aggregate elements is select type, then the select path identifying the type of the aggregate requested to create and add to this Aggregate needs to be submitted (through the second method's parameter). Otherwise, null to the second 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:

Specified by:
addAggregateByIndex in interface Aggregate
Parameters:
index - the list position for the aggregate created.
select - select path identifying the type of the aggregate to be created.
Returns:
the newly created empty aggregate.
Throws:
SdaiException - EI_NEXS, entity instance does not exist.
See Also:
"ISO 10303-22::10.19.6 Add aggregate instance by index"

removeByIndex

public void removeByIndex(int index)
                   throws SdaiException
Description copied from interface: Aggregate
Removes the member at the specified index position from this Aggregate, provided the type of this Aggregate is LIST. The method is invalid for aggregates of other EXPRESS types. If the specified list member is an aggregate instance, then that aggregate instance is deleted along with all nested aggregate instances contained by it.

IF the aggregate is not LIST, then SdaiException AI_NVLD is thrown.

Specified by:
removeByIndex in interface Aggregate
Parameters:
index - the list position of the member to be removed.
Throws:
SdaiException - AI_NEXS, aggregate instance does not exist.
See Also:
"ISO 10303-22::10.19.7 Remove by index"

addUnordered

public void addUnordered(int value,
                         jsdai.dictionary.EDefined_type[] select)
                  throws SdaiException
Description copied from interface: Aggregate
Adds a new member of type int to this Aggregate, provided the type of this Aggregate is different than ARRAY. Processing of the LIST type is an extension of the functionality of Add unordered operation specified in ISO 10303-22::10.14.1. If this case, a new member is added at the end of the list. The method is invalid for aggregates of EXPRESS ARRAY type.

If the type of the aggregate elements is select type, then the select path corresponding to the value to be added needs to be submitted (through the second method's parameter). Otherwise, null to the second 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:

Specified by:
addUnordered in interface Aggregate
Parameters:
value - the value to be added.
select - select path corresponding to the value submitted.
Throws:
SdaiException - SY_ERR, underlying system error.
See Also:
Aggregate.addUnordered(Object, EDefined_type[]), Aggregate.addUnordered(double, EDefined_type[]), Aggregate.addUnordered(boolean, EDefined_type[]), "ISO 10303-22::10.14.1 Add unordered"

addUnordered

public void addUnordered(double value,
                         jsdai.dictionary.EDefined_type[] select)
                  throws SdaiException
Description copied from interface: Aggregate
Adds a new member of type double to this Aggregate, provided the type of this Aggregate is different than ARRAY. Processing of the LIST type is an extension of the functionality of Add unordered operation specified in ISO 10303-22::10.14.1. If this case, a new member is added at the end of the list. The method is invalid for aggregates of EXPRESS ARRAY type.

If the type of the aggregate elements is select type, then the select path corresponding to the value to be added needs to be submitted (through the second method's parameter). Otherwise, null to the second 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:

Specified by:
addUnordered in interface Aggregate
Parameters:
value - the value to be added.
select - select path corresponding to the value submitted.
Throws:
SdaiException - FN_NAVL, function not available.
See Also:
Aggregate.addUnordered(Object, EDefined_type[]), Aggregate.addUnordered(int, EDefined_type[]), Aggregate.addUnordered(boolean, EDefined_type[]), "ISO 10303-22::10.14.1 Add unordered"

addUnordered

public void addUnordered(boolean value,
                         jsdai.dictionary.EDefined_type[] select)
                  throws SdaiException
Description copied from interface: Aggregate
Adds a new member of type boolean to this Aggregate, provided the type of this Aggregate is different than ARRAY. Processing of the LIST type is an extension of the functionality of Add unordered operation specified in ISO 10303-22::10.14.1. If this case, a new member is added at the end of the list. The method is invalid for aggregates of EXPRESS ARRAY type.

If the type of the aggregate elements is select type, then the select path corresponding to the value to be added needs to be submitted (through the second method's parameter). Otherwise, null to the second 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:

Specified by:
addUnordered in interface Aggregate
Parameters:
value - the value to be added.
select - select path corresponding to the value submitted.
Throws:
SdaiException - MX_NRW, SDAI-model access not read-write.
See Also:
Aggregate.addUnordered(Object, EDefined_type[]), Aggregate.addUnordered(int, EDefined_type[]), Aggregate.addUnordered(double, EDefined_type[]), "ISO 10303-22::10.14.1 Add unordered"

createAggregateUnordered

public Aggregate createAggregateUnordered(jsdai.dictionary.EDefined_type[] select)
                                   throws SdaiException
Description copied from interface: Aggregate
Creates a new, empty aggregate instance and adds this instance to this Aggregate, provided the type of this Aggregate is either SET or BAG. The method is invalid for aggregates of other EXPRESS types, that is, ARRAY and LIST.

If the type of the aggregate elements is select type, then the select path identifying the type of the aggregate requested to create and add to this Aggregate needs to be submitted (through the method's parameter). Otherwise, null to the method's 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:

Specified by:
createAggregateUnordered in interface Aggregate
Parameters:
select - select path identifying the type of the aggregate to be created.
Returns:
the newly created empty aggregate.
Throws:
SdaiException - VT_NVLD, value type invalid.
See Also:
"ISO 10303-22::10.14.2 Create aggregate instance unordered"

removeUnordered

public void removeUnordered(java.lang.Object value,
                            jsdai.dictionary.EDefined_type[] select)
                     throws SdaiException
Description copied from interface: Aggregate
Removes one occurrence of the specified value of type Object from this Aggregate, provided the type of this Aggregate is either SET or BAG. The method is invalid for aggregates of other EXPRESS types, that is, ARRAY and LIST. If the member being removed is an aggregate instance, then that aggregate instance is deleted along with all nested aggregate instances contained by it.

If the type of the aggregate elements 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 removed needs to be submitted (through the second method's parameter). Otherwise, null to the second 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:

Specified by:
removeUnordered in interface Aggregate
Parameters:
value - the value to be removed.
select - select path corresponding to the value submitted for removal.
Throws:
SdaiException - VA_NVLD, value invalid.
See Also:
Aggregate.removeUnordered(int, EDefined_type[]), Aggregate.removeUnordered(double, EDefined_type[]), Aggregate.removeUnordered(boolean, EDefined_type[]), "ISO 10303-22::10.14.3 Remove unordered"

removeUnordered

public void removeUnordered(int value,
                            jsdai.dictionary.EDefined_type[] select)
                     throws SdaiException
Description copied from interface: Aggregate
Removes one occurrence of the specified value of type int from this Aggregate, provided the type of this Aggregate is either SET or BAG. The method is invalid for aggregates of other EXPRESS types, that is, ARRAY and LIST.

If the type of the aggregate elements is select type, then the select path corresponding to the value to be removed needs to be submitted (through the second method's parameter). Otherwise, null to the second 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:

Specified by:
removeUnordered in interface Aggregate
Parameters:
value - the value to be removed.
select - select path corresponding to the value submitted for removal.
Throws:
SdaiException - VT_NVLD, value type invalid.
See Also:
Aggregate.removeUnordered(Object, EDefined_type[]), Aggregate.removeUnordered(double, EDefined_type[]), Aggregate.removeUnordered(boolean, EDefined_type[]), "ISO 10303-22::10.14.3 Remove unordered"

removeUnordered

public void removeUnordered(double value,
                            jsdai.dictionary.EDefined_type[] select)
                     throws SdaiException
Description copied from interface: Aggregate
Removes one occurrence of the specified value of type double from this Aggregate, provided the type of this Aggregate is either SET or BAG. The method is invalid for aggregates of other EXPRESS types, that is, ARRAY and LIST.

If the type of the aggregate elements is select type, then the select path corresponding to the value to be removed needs to be submitted (through the second method's parameter). Otherwise, null to the second 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:

Specified by:
removeUnordered in interface Aggregate
Parameters:
value - the value to be removed.
select - select path corresponding to the value submitted for removal.
Throws:
SdaiException - VA_NSET, value not set.
See Also:
Aggregate.removeUnordered(Object, EDefined_type[]), Aggregate.removeUnordered(int, EDefined_type[]), Aggregate.removeUnordered(boolean, EDefined_type[]), "ISO 10303-22::10.14.3 Remove unordered"

removeUnordered

public void removeUnordered(boolean value,
                            jsdai.dictionary.EDefined_type[] select)
                     throws SdaiException
Description copied from interface: Aggregate
Removes one occurrence of the specified value of type boolean from this Aggregate, provided the type of this Aggregate is either SET or BAG. The method is invalid for aggregates of other EXPRESS types, that is, ARRAY and LIST.

If the type of the aggregate elements is select type, then the select path corresponding to the value to be removed needs to be submitted (through the second method's parameter). Otherwise, null to the second 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:

Specified by:
removeUnordered in interface Aggregate
Parameters:
value - the value to be removed.
select - select path corresponding to the value submitted for removal.
Throws:
SdaiException - VA_NEXS, value does not exist.
See Also:
Aggregate.removeUnordered(Object, EDefined_type[]), Aggregate.removeUnordered(int, EDefined_type[]), Aggregate.removeUnordered(double, EDefined_type[]), "ISO 10303-22::10.14.3 Remove unordered"

testCurrentMember

public int testCurrentMember(SdaiIterator it,
                             jsdai.dictionary.EDefined_type[] select)
                      throws SdaiException
Description copied from interface: Aggregate
Checks if a value is set for the member of this Aggregate at the position specified by an iterator, and if so, returns the flag indicating the type of this value. The method is valid not only for EXPRESS type ARRAY but also for other types: SET, BAG and LIST (except non-persistent one). This feature is an extension of the standard. The possible return values are the following: The case of return value 2 encompasses the cases when the aggregate value is of EXPRESS type INTEGER, ENUMERATION and LOGICAL. For the same value each of the methods testCurrentMember, testByIndex and EEntity.testAttribute returns the same type indicator.

If the type of the aggregate elements is select type and the set of possible leaf types is not a subset of the set of entity data types, then the array "select" (the second method's parameter) of sufficient size for storing the select path corresponding to the current member value specified by an iterator must be submitted. Otherwise, null to the second 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 Technical corrigendum of ISO 10303-21:11.1.8). The method returns the array "select" with defined data types stored in it. The number of elements in this array 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. If "select" array is not provided or is of insufficient size, then SdaiException VT_NVLD and, respectively, VA_NVLD is thrown. Passing null value for the iterator results in SdaiException IR_NEXS.

The usage of this method is similar as in Example 1 provided for EEntity.testAttribute method. The early binding usage of the "Test current member" operation is similar as in Example 2 given in the description of the same method.

Specified by:
testCurrentMember in interface Aggregate
Parameters:
it - the iterator specifying the aggregate member to be tested.
select - an array provided for storing the select path corresponding to the member value being tested.
Returns:
the flag indicating either the type of the member value or the fact that the specified aggregate member is unset.
Throws:
SdaiException - EI_NEXS, entity instance does not exist.
See Also:
Aggregate.testCurrentMember(SdaiIterator), "ISO 10303-22::10.17.2 Test current member"

testCurrentMember

public int testCurrentMember(SdaiIterator iter)
                      throws SdaiException
Description copied from interface: Aggregate
Checks if a value is set for the member of this Aggregate at the position specified by an iterator, and if so, returns the flag indicating the type of this value. The method is valid not only for EXPRESS type ARRAY but also for other types: SET, BAG and LIST (except non-persistent one). This feature is an extension of the standard. The possible return values are the following: The case of return value 2 encompasses the cases when the aggregate value is of EXPRESS type INTEGER, ENUMERATION and LOGICAL.

If the type of the aggregate elements is select type, then SdaiException AI_NVLD is thrown. Passing null value for the iterator results in SdaiException IR_NEXS.

Specified by:
testCurrentMember in interface Aggregate
Parameters:
iter - the iterator specifying the aggregate member to be tested.
Returns:
the flag indicating either the type of the member value or the fact that the specified aggregate member is unset.
Throws:
SdaiException - SY_ERR, underlying system error.
See Also:
Aggregate.testCurrentMember(SdaiIterator, EDefined_type []), "ISO 10303-22::10.17.2 Test current member"

getCurrentMemberObject

public java.lang.Object getCurrentMemberObject(SdaiIterator it)
                                        throws SdaiException
Description copied from interface: Aggregate
Returns the value (of type Object) of the member of this Aggregate at the position specified by an iterator. If null is passed to the method's parameter, then SdaiException IR_NEXS is thrown.

Specified by:
getCurrentMemberObject in interface Aggregate
Parameters:
it - the iterator specifying the aggregate member to return.
Returns:
the member of this aggregate referenced by the iterator.
Throws:
SdaiException - AI_NEXS, aggregate instance does not exist.
See Also:
Aggregate.getCurrentMemberInt(jsdai.lang.SdaiIterator), Aggregate.getCurrentMemberDouble(jsdai.lang.SdaiIterator), Aggregate.getCurrentMemberBoolean(jsdai.lang.SdaiIterator), "ISO 10303-22::10.12.7 Get current member"

getCurrentMemberInt

public int getCurrentMemberInt(SdaiIterator iter)
                        throws SdaiException
Description copied from interface: Aggregate
Returns the value (of type int) of the member of this Aggregate at the position specified by an iterator.

If value to be returned is not of Java int type, then SdaiException VT_NVLD is thrown. Passing null to the method's parameter results in SdaiException IR_NEXS.

Specified by:
getCurrentMemberInt in interface Aggregate
Parameters:
iter - the iterator specifying the aggregate member to return.
Returns:
the member value referenced by the iterator.
Throws:
SdaiException - MX_NDEF, SdaiModel access not defined.
See Also:
Aggregate.getCurrentMemberObject(jsdai.lang.SdaiIterator), Aggregate.getCurrentMemberDouble(jsdai.lang.SdaiIterator), Aggregate.getCurrentMemberBoolean(jsdai.lang.SdaiIterator), "ISO 10303-22::10.12.7 Get current member"

getCurrentMemberDouble

public double getCurrentMemberDouble(SdaiIterator iter)
                              throws SdaiException
Description copied from interface: Aggregate
Returns the value (of type double) of the member of this Aggregate at the position specified by an iterator.

If value to be returned is not of Java double type, then SdaiException VT_NVLD is thrown. Passing null to the method's parameter results in SdaiException IR_NEXS.

Specified by:
getCurrentMemberDouble in interface Aggregate
Parameters:
iter - the iterator specifying the aggregate member to return.
Returns:
the member value referenced by the iterator.
Throws:
SdaiException - AI_NVLD, aggregate instance invalid.
See Also:
Aggregate.getCurrentMemberObject(jsdai.lang.SdaiIterator), Aggregate.getCurrentMemberInt(jsdai.lang.SdaiIterator), Aggregate.getCurrentMemberBoolean(jsdai.lang.SdaiIterator), "ISO 10303-22::10.12.7 Get current member"

getCurrentMemberBoolean

public boolean getCurrentMemberBoolean(SdaiIterator iter)
                                throws SdaiException
Description copied from interface: Aggregate
Returns the value (of type boolean) of the member of this Aggregate at the position specified by an iterator.

If value to be returned is not of Java boolean type, then SdaiException VT_NVLD is thrown. Passing null to the method's parameter results in SdaiException IR_NEXS.

Specified by:
getCurrentMemberBoolean in interface Aggregate
Parameters:
iter - the iterator specifying the aggregate member to return.
Returns:
the member value referenced by the iterator.
Throws:
SdaiException - TR_EAB, transaction ended abnormally.
See Also:
Aggregate.getCurrentMemberObject(jsdai.lang.SdaiIterator), Aggregate.getCurrentMemberInt(jsdai.lang.SdaiIterator), Aggregate.getCurrentMemberDouble(jsdai.lang.SdaiIterator), "ISO 10303-22::10.12.7 Get current member"

createAggregateAsCurrentMember

public Aggregate createAggregateAsCurrentMember(SdaiIterator iter,
                                                jsdai.dictionary.EDefined_type[] select)
                                         throws SdaiException
Description copied from interface: Aggregate
Creates a new, empty aggregate instance and assigns it to a member of this Aggregate at the position specified by an iterator. If the old value is an aggregate instance, then it is deleted along with any nested aggregate instances contained by it.

If the type of the aggregate elements is select type, then the select path identifying the type of the aggregate requested to create as a member of this Aggregate needs to be submitted (through the second method's parameter). Otherwise, null to the second 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:

Specified by:
createAggregateAsCurrentMember in interface Aggregate
Parameters:
iter - the iterator specifying the position of the aggregate member to be replaced by the newly created aggregate.
select - select path identifying the type of the aggregate to be created.
Returns:
the newly created empty aggregate.
Throws:
SdaiException - IR_NEXS, iterator does not exist.
See Also:
"ISO 10303-22::10.13.1 Create aggregate instance as current member"

setCurrentMember

public void setCurrentMember(SdaiIterator iter,
                             int value,
                             jsdai.dictionary.EDefined_type[] select)
                      throws SdaiException
Description copied from interface: Aggregate
Assigns a new value of type int to a member of this Aggregate at the position specified by an iterator. If the old value is an aggregate instance, then it is deleted along with any nested aggregate instances contained by it.

If the type of the aggregate elements 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:

Specified by:
setCurrentMember in interface Aggregate
Parameters:
iter - the iterator specifying the position of the aggregate member to assign the specified value.
value - the value to be assigned.
select - select path corresponding to the value submitted.
Throws:
SdaiException - EI_NEXS, entity instance does not exist.
See Also:
Aggregate.setCurrentMember(SdaiIterator, Object, EDefined_type[]), Aggregate.setCurrentMember(SdaiIterator, double, EDefined_type[]), Aggregate.setCurrentMember(SdaiIterator, boolean, EDefined_type[]), "ISO 10303-22::10.13.2 Put current member"

setCurrentMember

public void setCurrentMember(SdaiIterator iter,
                             double value,
                             jsdai.dictionary.EDefined_type[] select)
                      throws SdaiException
Description copied from interface: Aggregate
Assigns a new value of type double to a member of this Aggregate at the position specified by an iterator. If the old value is an aggregate instance, then it is deleted along with any nested aggregate instances contained by it.

If the type of the aggregate elements 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:

Specified by:
setCurrentMember in interface Aggregate
Parameters:
iter - the iterator specifying the position of the aggregate member to assign the specified value.
value - the value to be assigned.
select - select path corresponding to the value submitted.
Throws:
SdaiException - IR_NEXS, iterator does not exist.
See Also:
Aggregate.setCurrentMember(SdaiIterator, Object, EDefined_type[]), Aggregate.setCurrentMember(SdaiIterator, int, EDefined_type[]), Aggregate.setCurrentMember(SdaiIterator, boolean, EDefined_type[]), "ISO 10303-22::10.13.2 Put current member"

setCurrentMember

public void setCurrentMember(SdaiIterator iter,
                             boolean value,
                             jsdai.dictionary.EDefined_type[] select)
                      throws SdaiException
Description copied from interface: Aggregate
Assigns a new value of type boolean to a member of this Aggregate at the position specified by an iterator. If the old value is an aggregate instance, then it is deleted along with any nested aggregate instances contained by it.

If the type of the aggregate elements 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:

Specified by:
setCurrentMember in interface Aggregate
Parameters:
iter - the iterator specifying the position of the aggregate member to assign the specified value.
value - the value to be assigned.
select - select path corresponding to the value submitted.
Throws:
SdaiException - VA_NVLD, value invalid.
See Also:
Aggregate.setCurrentMember(SdaiIterator, Object, EDefined_type[]), Aggregate.setCurrentMember(SdaiIterator, int, EDefined_type[]), Aggregate.setCurrentMember(SdaiIterator, double, EDefined_type[]), "ISO 10303-22::10.13.2 Put current member"

addBefore

public void addBefore(SdaiIterator iter,
                      int value,
                      jsdai.dictionary.EDefined_type[] select)
               throws SdaiException
Description copied from interface: Aggregate
Adds a new member of type int immediately before the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST. The method is invalid for aggregates of other EXPRESS types. If iterator has no current member, then this method behaves as follows. If iterator is at the beginning and the list is nonempty, then the new member is inserted before the first member of the list, and the iterator is positioned to reference the new member. Otherwise, the new member is appended to the list, and the iterator is left at the end of the list with no member referenced.

If the type of the aggregate elements is select type, then the select path corresponding to the value to be added 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:

Specified by:
addBefore in interface Aggregate
Parameters:
iter - the iterator specifying the position of the aggregate member before which the specified value has to be added.
value - the value to be added.
select - select path corresponding to the value submitted.
Throws:
SdaiException - VA_NVLD, value invalid.
See Also:
Aggregate.addBefore(SdaiIterator, Object, EDefined_type[]), Aggregate.addBefore(SdaiIterator, double, EDefined_type[]), Aggregate.addBefore(SdaiIterator, boolean, EDefined_type[]), "ISO 10303-22::10.19.1 Add before current member"

addBefore

public void addBefore(SdaiIterator iter,
                      double value,
                      jsdai.dictionary.EDefined_type[] select)
               throws SdaiException
Description copied from interface: Aggregate
Adds a new member of type double immediately before the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST. The method is invalid for aggregates of other EXPRESS types. If iterator has no current member, then this method behaves as follows. If iterator is at the beginning and the list is nonempty, then the new member is inserted before the first member of the list, and the iterator is positioned to reference the new member. Otherwise, the new member is appended to the list, and the iterator is left at the end of the list with no member referenced.

If the type of the aggregate elements is select type, then the select path corresponding to the value to be added 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:

Specified by:
addBefore in interface Aggregate
Parameters:
iter - the iterator specifying the position of the aggregate member before which the specified value has to be added.
value - the value to be added.
select - select path corresponding to the value submitted.
Throws:
SdaiException - TR_EAB, transaction ended abnormally.
See Also:
Aggregate.addBefore(SdaiIterator, Object, EDefined_type[]), Aggregate.addBefore(SdaiIterator, int, EDefined_type[]), Aggregate.addBefore(SdaiIterator, boolean, EDefined_type[]), "ISO 10303-22::10.19.1 Add before current member"

addBefore

public void addBefore(SdaiIterator iter,
                      boolean value,
                      jsdai.dictionary.EDefined_type[] select)
               throws SdaiException
Description copied from interface: Aggregate
Adds a new member of type boolean immediately before the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST. The method is invalid for aggregates of other EXPRESS types. If iterator has no current member, then this method behaves as follows. If iterator is at the beginning and the list is nonempty, then the new member is inserted before the first member of the list, and the iterator is positioned to reference the new member. Otherwise, the new member is appended to the list, and the iterator is left at the end of the list with no member referenced.

If the type of the aggregate elements is select type, then the select path corresponding to the value to be added 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:

Specified by:
addBefore in interface Aggregate
Parameters:
iter - the iterator specifying the position of the aggregate member before which the specified value has to be added.
value - the value to be added.
select - select path corresponding to the value submitted.
Throws:
SdaiException - FN_NAVL, function not available.
See Also:
Aggregate.addBefore(SdaiIterator, Object, EDefined_type[]), Aggregate.addBefore(SdaiIterator, int, EDefined_type[]), Aggregate.addBefore(SdaiIterator, double, EDefined_type[]), "ISO 10303-22::10.19.1 Add before current member"

addAfter

public void addAfter(SdaiIterator iter,
                     int value,
                     jsdai.dictionary.EDefined_type[] select)
              throws SdaiException
Description copied from interface: Aggregate
Adds a new member of type int immediately after the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST. The method is invalid for aggregates of other EXPRESS types. If iterator has no current member, then this method behaves as follows. If iterator is at the end and the list is nonempty, then the new member is appended to the list, and the iterator is positioned to reference the new member. Otherwise, the new member is inserted before the first member of the list, and the iterator is left at the beginning of the list with no member referenced.

If the type of the aggregate elements is select type, then the select path corresponding to the value to be added 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:

Specified by:
addAfter in interface Aggregate
Parameters:
iter - the iterator specifying the position of the aggregate member after which the specified value has to be added.
value - the value to be added.
select - select path corresponding to the value submitted.
Throws:
SdaiException - VA_NVLD, value invalid.
See Also:
Aggregate.addAfter(SdaiIterator, Object, EDefined_type[]), Aggregate.addAfter(SdaiIterator, double, EDefined_type[]), Aggregate.addAfter(SdaiIterator, boolean, EDefined_type[]), "ISO 10303-22::10.19.2 Add after current member"

addAfter

public void addAfter(SdaiIterator iter,
                     double value,
                     jsdai.dictionary.EDefined_type[] select)
              throws SdaiException
Description copied from interface: Aggregate
Adds a new member of type double immediately after the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST. The method is invalid for aggregates of other EXPRESS types. If iterator has no current member, then this method behaves as follows. If iterator is at the end and the list is nonempty, then the new member is appended to the list, and the iterator is positioned to reference the new member. Otherwise, the new member is inserted before the first member of the list, and the iterator is left at the beginning of the list with no member referenced.

If the type of the aggregate elements is select type, then the select path corresponding to the value to be added 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:

Specified by:
addAfter in interface Aggregate
Parameters:
iter - the iterator specifying the position of the aggregate member after which the specified value has to be added.
value - the value to be added.
select - select path corresponding to the value submitted.
Throws:
SdaiException - EI_NEXS, entity instance does not exist.
See Also:
Aggregate.addAfter(SdaiIterator, Object, EDefined_type[]), Aggregate.addAfter(SdaiIterator, int, EDefined_type[]), Aggregate.addAfter(SdaiIterator, boolean, EDefined_type[]), "ISO 10303-22::10.19.2 Add after current member"

addAfter

public void addAfter(SdaiIterator iter,
                     boolean value,
                     jsdai.dictionary.EDefined_type[] select)
              throws SdaiException
Description copied from interface: Aggregate
Adds a new member of type boolean immediately after the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST. The method is invalid for aggregates of other EXPRESS types. If iterator has no current member, then this method behaves as follows. If iterator is at the end and the list is nonempty, then the new member is appended to the list, and the iterator is positioned to reference the new member. Otherwise, the new member is inserted before the first member of the list, and the iterator is left at the beginning of the list with no member referenced.

If the type of the aggregate elements is select type, then the select path corresponding to the value to be added 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:

Specified by:
addAfter in interface Aggregate
Parameters:
iter - the iterator specifying the position of the aggregate member after which the specified value has to be added.
value - the value to be added.
select - select path corresponding to the value submitted.
Throws:
SdaiException - EI_NEXS, entity instance does not exist.
See Also:
Aggregate.addAfter(SdaiIterator, Object, EDefined_type[]), Aggregate.addAfter(SdaiIterator, int, EDefined_type[]), Aggregate.addAfter(SdaiIterator, double, EDefined_type[]), "ISO 10303-22::10.19.2 Add after current member"

createAggregateBefore

public Aggregate createAggregateBefore(SdaiIterator iter,
                                       jsdai.dictionary.EDefined_type[] select)
                                throws SdaiException
Description copied from interface: Aggregate
Creates a new, empty aggregate instance and adds it immediately before the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST. The method is invalid for aggregates of other EXPRESS types. If iterator has no current member, then this method behaves as follows. If iterator is at the beginning and the list is nonempty, then the new aggregate instance is inserted before the first member of the list, and the iterator is positioned to reference this instance. Otherwise, the new aggregate instance is appended to the list, and the iterator is left at the end of the list with no member referenced.

If the type of the aggregate elements is select type, then the select path identifying the type of the aggregate requested to create and add as a member of this Aggregate needs to be submitted (through the second method's parameter). Otherwise, null to the second 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:

Specified by:
createAggregateBefore in interface Aggregate
Parameters:
iter - the iterator specifying the position of the aggregate member before which the new aggregate instance has to be added.
select - select path identifying the type of the aggregate to be created.
Returns:
the newly created empty aggregate.
Throws:
SdaiException - AI_NVLD, aggregate instance invalid.
See Also:
Aggregate.createAggregateAfter(jsdai.lang.SdaiIterator, jsdai.dictionary.EDefined_type[]), "ISO 10303-22::10.19.4 Create aggregate instance before current member"

createAggregateAfter

public Aggregate createAggregateAfter(SdaiIterator iter,
                                      jsdai.dictionary.EDefined_type[] select)
                               throws SdaiException
Description copied from interface: Aggregate
Creates a new, empty aggregate instance and adds it immediately after the member of this Aggregate placed at the position specified by an iterator, provided the type of this Aggregate is LIST. The method is invalid for aggregates of other EXPRESS types. If iterator has no current member, then this method behaves as follows. If iterator is at the end and the list is nonempty, then the new aggregate instance is appended to the list, and the iterator is positioned to reference this instance. Otherwise, the new aggregate instance is inserted before the first member of the list, and the iterator is left at the beginning of the list with no member referenced.

If the type of the aggregate elements is select type, then the select path identifying the type of the aggregate requested to create and add as a member of this Aggregate needs to be submitted (through the second method's parameter). Otherwise, null to the second 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:

Specified by:
createAggregateAfter in interface Aggregate
Parameters:
iter - the iterator specifying the position of the aggregate member after which the new aggregate instance has to be added.
select - select path identifying the type of the aggregate to be created.
Returns:
the newly created empty aggregate.
Throws:
SdaiException - EI_NEXS, entity instance does not exist.
See Also:
Aggregate.createAggregateBefore(jsdai.lang.SdaiIterator, jsdai.dictionary.EDefined_type[]), "ISO 10303-22::10.19.5 Create aggregate instance after current member"

clear

public void clear()
           throws SdaiException
Description copied from interface: Aggregate
Removes all members from this Aggregate if its EXPRESS type is either LIST, or SET, or BAG, and unsets all members of this Aggregate if its type is ARRAY. After execution of this method the length of the aggregate, provided its type is not bounded ARRAY, is zero. When method is applied to an aggregate which is read-only (as, for example, produced by getInstances methods in class SdaiModel), then SdaiException FN_NAVL is thrown.

This method is an extension of JSDAI, which is not a part of the standard.

Specified by:
clear in interface Aggregate
Throws:
SdaiException - AI_NEXS, aggregate instance does not exist.

getAggregationType

public jsdai.dictionary.EAggregation_type getAggregationType()
                                                      throws SdaiException
Description copied from interface: Aggregate
Returns the aggregation type for this Aggregate. Every instance of Aggregate has its own aggregation type which provides an information about the type of the aggregate members and EXPRESS type of the aggregate itself. This information is contained in the data dictionary. If an aggregate is a non-persistent list, then null is returned.

This method is an extension of JSDAI, which is not a part of the standard.

Specified by:
getAggregationType in interface Aggregate
Returns:
the aggregation type this Aggregate is based on.
Throws:
SdaiException
See Also:
jsdai.dictionary.EAggregation_type

addSdaiListener

public void addSdaiListener(SdaiListener listener)
Specified by:
addSdaiListener in interface SdaiEventSource

removeSdaiListener

public void removeSdaiListener(SdaiListener listener)
Specified by:
removeSdaiListener in interface SdaiEventSource

Copyright © LKSoftWare GmbH, 1999-2008