|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjsdai.lang.SdaiCommon
jsdai.lang.SdaiRepository
An SdaiRepository is the physical container to store persistently:
- SdaiModels with entity instances within them;
- SchemaInstances which logically group SdaiModels.
Throughout this documentation repository is used as a synonym for SdaiRepository.
Conceptionally, the SdaiRepository can be represented by
the following EXPRESS entity:
ENTITY SdaiRepository;
name : String;
location : OPTIONAL Object;
description : LIST [1:?] OF String;
models : SET [0:?] OF SdaiModel;
schemas : SET [0:?] OF SchemaInstance;
changeDate : String;
author : LIST [1:?] OF String;
organization : LIST [1:?] OF String;
preprocessorVersion : String;
originatingSystem : String;
authorization : String;
defaultLanguage : OPTIONAL String;
contextIdentifiers : LIST [0:?] OF String;
INVERSE
session : SdaiSession FOR knownServers;
UNIQUE
UR1: name, session;
END_ENTITY;
The attributes description, author, organization,
defaultLanguage and contextIdentifiers
are read-write, whereas all other attributes are read-only.
For each attribute a corresponding get method (or methods in the case of changeDate)
is defined. The changeDate can be retrieved either as String or
as long. The attributes preprocessorVersion, originatingSystem,
authorization and defaultLanguage also have corresponding set methods.
The persistent storage is realized through the special
directories containing binary data files.
For every SdaiRepository a corresponding directory with the
SdaiRepository name exists. By default these directories are placed
into a special repositories-directory in the local file system.
This is specified by the property "repositories" in the configuration file
jsdai.properties.
Example:
repositories=D:\\repos
Other locations are also possible.
A user should never manipulate these directories and binary data files.
An access to them is allowed only through the JSDAI methods.
In general, the repositories can be accessed from either the local file system
or remotely from a JSDAI-Server.
After opening a session all repositories are closed, except a special one
named "SystemRepository" which contains dictionary and mapping data.
Each model in this repository can be at most read-only, that is, an attempt
to set read-write mode to such models will lead to an SdaiException.
Repositories can be opened with openRepository()
and closed with closeRepository() method.
Repositories are mainly selected by SdaiSession.getKnownServers() to get
all available repositories or by SdaiSession.getActiveServers() to get
only the currently open ones. Initially, after openSession(), the set returned by
getKnownServers() contains all SdaiRepositories located in the
special repositories-directory.
The remote repositories or repositories located at other places on the file system
can be added to the known servers with linkRepository() method. New repositories are created with the
SdaiSession methods createRepository() and importClearTextEncoding().
No longer needed repositories are removed with deleteRepository() method.
Each repository has a unique non-empty name for identification. The name is assigned by createRepository() or importClearTextEncoding() methods and cannot be changed afterwards. During creation of a repository an empty string can be passed to the name parameter to signal JSDAI to create a temporary repository. The name of the local repository can consist only of the following characters: upper case letters from 'A' to 'Z', lower case letters from 'a' to 'z', digits '0', '1',..., '9' and underscore '_'. Moreover, the name must start from a letter. If in importClearTextEncoding() method the repository name is extracted from the header of the imported file, this name is corrected to conform the above rules. In the case of the remote repository, its name, in addition, is allowed to contain the following characters: "file://", "/" and ".".
The repositories need to be located somewhere. The location is either
- local in the default repositories-directory;
- local in the specified directory as SDAI file;
- remote on a JSDAI-Server;
- unknown in the case of a degenerated repository (see below).
The actual location can be accessed with getLocation() method. By default the repositories are created locally in the specific repositories-directory. But it is possible to put repositories in other places, either locally or remotely. Locally, on an available file system by specifying a path during creation, or remotely by specifying the domain or INET of the JSDAI-Server. However, only repositories located in the default repositories-directory are by default available after openSession(). The location of a repository cannot be changed once it is created except for that the location gots invalid.
It is not possible to create a repository on an unknown location.
But a repository may contain instances which reference other instances in
other repositories which do not belong to knownServers.
In this case only the name of the referenced repositories is known, but not
their location. We call them degenerated repositories. Trying to open a
degenerated repository results in the
SdaiException "RP_NAVL - Repository not available".
If getLocation() is applied to such a repository, then the
SdaiException "VA_NEXS - Value does not exist" is thrown.
The degenerated repositories can be promoted to ordinary repositories
with importClearTextEncoding() or linkRepository() methods by using
the same repository name.
With linkRepository() method it is possible to link local or remote repositories to the current session. With unlinkRepository() closed and for the user not needed repositories can be made unknown to the current session.
The methods createRepository(), importClearTextEncoding() and linkRepository() have parameters for the repository name and the repository location. The following combinations of values for these parameters are allowed:
1) null, xxx : This is possible only for importClearTextEncoding() method.
If this case happens, the repository name is taken from the entity
file_name in the header of an exchange structure from
which the encoding is imported.
2) String1, xxx: String1 is used as the repository name.
3) "", null : A temporary repository is created with an artificial name. Temporary repositories are automatically removed during closeSession() and are not available after the next openSession().
4) xxx, String2: The repository is created at the location indicated by String2. If String2 ends with ".sdai" then repository stored in SDAI file is created. If String2 ends with ".sdai" and the first parameter is null or empty string then repository name is derived from SDAI file name.
5) String1, String2: String1 is the name of a remote repository. String2 is the username and password with the prefix "//" and the last character "@". Example: "//guest:passwd@". A server for remote access should be named by prefixing it with "//" and giving the domain name. Example: Repository "test1" on the domain "lksoft.de" has to be named "//test1.lksoft.de".
Repositories have two sets of attributes: header properties and contents.
The header properties are the following:
- description
- time_stamp
- author
- organization
- preprocessor_version
- originating_system
- authorization
- default_language
- context_identifiers.
The contents consists of:
- models
- schemas.
To access the header properties for reading, the repository must be opened. To modify the header attributes, a read-write transaction has to be started additionally.
To access the contents data, the repository must be opened and
either a read-only or a read-write transaction has to be started.
When transaction access is ended, the contents of a
repository is no longer available. The repository contents cannot be
manipulated directly by an application. Manipulations are only possible
with the following methods:
- createSdaiModel()
- deleteSdaiModel()
- renameSdaiModel()
- createSchemaInstance()
- delete() (in class SchemaInstance).
| Method Summary | |
void |
addSdaiListener(SdaiListener listener)
Adds SdaiListener extending java.util.EventListener
to a special aggregate in this repository. |
boolean |
checkCreateSchemaInstance(java.lang.Class nativeSchema)
Returns false if the owning session is not permitted to
create a new schema instance in this repository for specified native
schema. |
boolean |
checkCreateSchemaInstance(jsdai.dictionary.ESchema_definition nativeSchema)
Returns false if the owning session is not permitted to
create a new schema instance in this repository for specified native
schema. |
boolean |
checkCreateSdaiModel(java.lang.Class underlyingSchema)
Returns false if the owning session is not permitted to
create a new model in this repository with specified underlying schema.
|
boolean |
checkCreateSdaiModel(jsdai.dictionary.ESchema_definition underlyingSchema)
Returns false if the owning session is not permitted to
create a new model in this repository with specified underlying schema.
|
abstract SdaiPermission |
checkPermission()
Returns this repository effective permission which determines the repository's access rights. |
abstract void |
checkRead()
Throws SdaiException.SY_SEC if the owning session
has no read access to this repository. |
abstract void |
checkWrite()
Throws SdaiException.SY_SEC if the owning session
has no write access to this repository. |
void |
closeRepository()
Closes this repository. |
void |
copyFrom(ASchemaInstance aSourceSchemaInstance)
Makes a copy of all instances from the specified schema instance aggregate to this repository. |
void |
copyFrom(SchemaInstance sourceSchemaInstance)
Makes a copy of all instances from the specified schema instance to this repository. |
void |
copyFrom(SdaiRepository sourceRepository)
Makes a copy of all models together with instances and schema instances from the specified repository to this repository. |
abstract SchemaInstance |
createSchemaInstance(java.lang.String name,
java.lang.Class schema)
Creates a new SchemaInstance in this repository.
|
abstract SchemaInstance |
createSchemaInstance(java.lang.String name,
jsdai.dictionary.ESchema_definition schema)
Creates a new SchemaInstance in this repository.
|
abstract SdaiModel |
createSdaiModel(java.lang.String model_name,
java.lang.Class schema)
Creates a new SdaiModel in this repository.
|
abstract SdaiModel |
createSdaiModel(java.lang.String model_name,
jsdai.dictionary.ESchema_definition schema)
Creates a new SdaiModel in this repository.
|
void |
deleteRepository()
Deletes this repository. |
void |
exportClearTextEncoding(java.io.OutputStream location)
Creates a STEP file in a form of the exchange structure containing the data of this repository. |
void |
exportClearTextEncoding(java.io.OutputStream location,
java.lang.String file_name)
Creates a STEP file in a form of the exchange structure containing the data of this repository. |
void |
exportClearTextEncoding(java.lang.String location)
Creates a STEP file in a form of the exchange structure containing the data of this repository. |
void |
exportClearTextEncoding(java.lang.String location,
java.lang.String file_name)
Creates a STEP file in a form of the exchange structure containing the data of this repository. |
void |
exportXml(java.io.OutputStream location,
InstanceReader instanceReader)
Writes this repository in XML representation to specified stream. |
abstract SchemaInstance |
findSchemaInstance(java.lang.String name)
Given a name, finds the SchemaInstance with this name in this repository.
|
abstract SdaiModel |
findSdaiModel(java.lang.String name)
Given a name, finds the SdaiModel with this name in this repository.
|
A_string |
getAuthor()
Returns an aggregate of strings A_string identifying the person
responsible for creating this repository. |
java.lang.String |
getAuthorization()
Returns a String containing the name and mailing address
of the person who authorizes sending of the exchange structure
exported from this repository.
|
java.lang.String |
getChangeDate()
Returns the date and time specifying when this repository was created or most recently modified. |
long |
getChangeDateLong()
Returns long value of the date and time specifying when this
repository was created or most recently modified.
|
A_string |
getContextIdentifiers()
Returns an aggregate A_string containing information
describing the contexts within which the instances of the models in
this repository are applicable. |
java.lang.String |
getDefaultLanguage()
Returns a String identifying the default language
for string values in those models of this repository, for which their own
default language is not specified. |
A_string |
getDescription()
Returns an aggregate of strings A_string containing optional
descriptions about the SdaiRepository.
|
java.lang.String |
getId()
Returns repository identifier as a String.
|
EEntity |
getInstanceByRef(jsdai.query.SerializableRef entityRef)
Returns remote EEntity using specified entity reference. |
java.lang.String |
getLocation()
Returns the location of the repository as a String.
|
java.lang.String |
getLockingUser()
Returns the name of the user that has placed exclusive lock on remote repository. |
ASdaiModel |
getModels()
Returns a read-only aggregate of all the SdaiModels of this repository.
|
java.lang.String |
getName()
Returns the name of the repository as a String.
|
A_string |
getOrganization()
Returns an aggregate of strings A_string containing the organizations with
whom the author of this repository is associated.
|
java.lang.String |
getOriginatingSystem()
Returns a String characterizing the system from
which the data contained in this repository are originated.
|
long |
getPersistentLabel()
Returns current persistent label. |
java.lang.String |
getPreprocessorVersion()
Returns a String characterizing the system used to
create this repository.
|
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. |
java.lang.String |
getRealName()
Returns the real (without recurrence number) name of the repository as a String.
|
SchemaInstance |
getSchemaInstanceByRef(jsdai.query.SerializableRef schemaRef)
Returns remote SchemaInstance using specified schema instance reference. |
ASchemaInstance |
getSchemas()
Returns a read-only aggregate of all SchemaInstances of this repository.
|
SdaiModel |
getSdaiModelByRef(jsdai.query.SerializableRef modelRef)
Returns remote SdaiModel using specified model reference. |
SdaiSession |
getSession()
Returns the only one SdaiSession object. |
abstract EEntity |
getSessionIdentifier(java.lang.String label)
Returns entity instance for the given persistent label. |
void |
importXml(java.io.InputStream location)
Reads repository from specified stream as XML representation. |
boolean |
isActive()
Informs if this repository is open. |
boolean |
isModified()
Informs if this repository is modified. |
abstract void |
openRepository()
Makes the SdaiModels and SchemaInstances
contained in this repository available for subsequent access.
|
int |
query(java.lang.String where,
EEntity entity,
AEntity result)
This method is not implemented in current JSDAI version. |
void |
removeSdaiListener(SdaiListener listener)
Removes SdaiListener extending java.util.EventListener
from the special aggregate in this repository. |
void |
setAuthorization(java.lang.String value)
Assigns a String value to the attribute characterizing
the person who authorizes sending of the exchange structure
exported from this repository.
|
void |
setDefaultLanguage(java.lang.String value)
Assigns a String to the attribute identifying
the default language for string values in those models of this repository,
for which their own default language is not specified.
|
void |
setLocation(java.lang.String location)
Assigns a String value to the location attribute of the repository.
|
abstract void |
setNextPersistentLabel(long newPersistentLabel)
Assigns a long value to the next persistent label, which will be used for the next instance.
|
void |
setOriginatingSystem(java.lang.String value)
Assigns a String value to the attribute characterizing
the system from which the data contained in this repository are originated.
|
void |
setPreprocessorVersion(java.lang.String value)
Assigns a String value to the attribute characterizing
the system used to create this repository.
|
void |
shortNameSupport(boolean enable)
Selects to write entity names either in usual form or in short form. |
java.lang.String |
toString()
Returns a description of this repository as a String.
|
void |
unlinkRepository()
Removes the repository from the current session, but does not delete it physically. |
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Method Detail |
public java.lang.String getName()
throws SdaiException
String.
The repositories known to an SdaiSession must have unique names.
An exception will be thrown if the repository is deleted or if the
SdaiSession is closed.
SdaiException - RP_NEXS, repository does not exist.
public java.lang.String getId()
throws SdaiException
String.
The repositories within a SdaiSession have unique identifiers,
which are not reused when some repositories are deleted and some new created
or imported.
SdaiRepository.
SdaiException - RP_NEXS, repository does not exist.
public java.lang.String getLocation()
throws SdaiException
String.
This is either
SdaiException - RP_NEXS, repository does not exist.
SdaiException - VA_NEXS, value does not exist.
public void unlinkRepository()
throws SdaiException
This method is an extension of JSDAI, which is not a part of the standard.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_OPN, repository open.
SdaiException - RP_NAVL, repository not available.
SdaiException - FN_NAVL, function not available.SdaiSession.linkRepository(java.lang.String, java.lang.String)
public A_string getDescription()
throws SdaiException
A_string containing optional
descriptions about the SdaiRepository.
After invocation of SdaiSession method
createRepository
this aggregate is always empty, whereas after invocation of
importClearTextEncoding it contains
strings taken from the field description of the entity
file_description in the header of the exchange structure
(see ISO 10303-21::8.2.1 file_description).
That is, this aggregate always exists, but may be empty.
During a read-write transaction the aggregate can be
modified by adding/modifying/removing its members.
When applying exportClearTextEncoding,
the content of this aggregate will be written to the exchange structure
created by the method being applied.
The method is available only if the repository is open.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
public SdaiSession getSession()
throws SdaiException
SdaiSession object. If session is closed,
SdaiException RP_NEXS is thrown.
SdaiException - RP_NEXS, repository does not exist.
public ASdaiModel getModels()
throws SdaiException
SdaiModels of this repository.
The aggregate is automatically updated when new models are created with
createSdaiModel or removed by
deleteSdaiModel.
The models of a repository are only accessible if the repository is open.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
SdaiException - VA_NSET, value not set.openRepository()
public ASchemaInstance getSchemas()
throws SdaiException
SchemaInstances of this repository.
The aggregate is automatically updated when new schema instances are
created with createSchemaInstance or removed by
delete.
The schema instances of a repository are only accessible if the repository is open.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
SdaiException - VA_NSET, value not set.openRepository()
public java.lang.String getChangeDate()
throws SdaiException
The time stamp is updated each time when
commit method is applied,
provided either the repository has been modified since the most recent commit
or abort operation was performed,
or no such operation was performed thus far but the repository was
established by createRepository
method. If, however, for the repository no such case has appeared,
then the time stamp is set as follows.
If the repository was introduced by
createRepository method, then
the time of its creation is taken. The same rule applies also to
the "SystemRepository". If the repository was created using
importClearTextEncoding method,
then the time stamp is borrowed from the entity
file_name in the header of an exchange structure from
which the encoding was imported.
Finally, if the repository was established using
linkRepository method, then
the time stamp is extracted from the data of the repository linked to
the session.
The method is available only if the repository is open.
Example of the time stamp:
Calendar date: 28 June 2000
Time of the day: 15 minutes 12 seconds past 17 hours
Above date and time encoded according to ISO 8601:
2000-06-28T17:15:12
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.getChangeDateLong(),
SdaiTransaction.commit(),
SdaiSession.createRepository(java.lang.String, java.lang.Object),
SdaiSession.importClearTextEncoding(java.lang.String, java.lang.Object, java.lang.Object),
SdaiSession.linkRepository(java.lang.String, java.lang.String),
"ISO 10303-21::9.2.2 file_name."
public long getChangeDateLong()
throws SdaiException
long value of the date and time specifying when this
repository was created or most recently modified.
This value is updated each time when
commit method is applied,
provided either the repository has been modified since the most recent commit
or abort operation was performed,
or no such operation was performed thus far but the repository was
established by createRepository
method. If, however, for the repository no such case has appeared,
then this value is set as follows.
If the repository was introduced by
createRepository method, then
the time of its creation is taken. The same rule applies also to
the "SystemRepository". If the repository was created using
importClearTextEncoding method,
then the date is borrowed from the entity
file_name in the header of an exchange structure from
which the encoding was imported.
Finally, if the repository was established using
linkRepository method, then
the date is extracted from the data of the repository linked to
the session.
If time value is obtained as a string from an exchange structure
processed by importClearTextEncoding
method and this string violates the rules for time stamps stated in
"ISO 10303-21::8.2.2", then SdaiException VA_NVLD is thrown.
The method is available only if the repository is open.
long representing the date and time.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
SdaiException - VA_NVLD, value invalid.getChangeDate(),
SdaiTransaction.commit(),
SdaiSession.createRepository(java.lang.String, java.lang.Object),
SdaiSession.importClearTextEncoding(java.lang.String, java.lang.Object, java.lang.Object),
SdaiSession.linkRepository(java.lang.String, java.lang.String),
"ISO 10303-21::8.2.2 file_name."
public A_string getAuthor()
throws SdaiException
A_string identifying the person
responsible for creating this repository. The aggregate shall have
its name at the first position and mail and/or email addresses at the following
positions.
After invocation of SdaiSession method
createRepository
this aggregate is always empty, whereas after invocation of
importClearTextEncoding it contains
strings taken from the field author of the entity
file_name in the header of the exchange structure
(see ISO 10303-21::8.2.2 file_name).
That is, this aggregate always exists, but may be empty.
During a read-write transaction the aggregate can be
modified by adding/modifying/removing its members.
It is a responsibility of the application to fill this aggregate with
useful information.
When applying exportClearTextEncoding,
the content of this aggregate will be written to the exchange structure
created by the method being applied.
The method is available only if the repository is open.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
public A_string getOrganization()
throws SdaiException
A_string containing the organizations with
whom the author of this repository is associated.
After invocation of SdaiSession method
createRepository
this aggregate is always empty, whereas after invocation of
importClearTextEncoding it contains
strings taken from the field organization of the entity
file_name in the header of the exchange structure
(see ISO 10303-21::8.2.2 file_name).
That is, this aggregate always exists, but may be empty.
During a read-write transaction the aggregate can be
modified by adding/modifying/removing its members.
It is a responsibility of the application to fill this aggregate with
useful information.
When applying exportClearTextEncoding,
the content of this aggregate will be written to the exchange structure
created by the method being applied.
The method is available only if the repository is open.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
public java.lang.String getPreprocessorVersion()
throws SdaiException
String characterizing the system used to
create this repository.
After invocation of SdaiSession method
createRepository
some default value to this string is assigned, whereas after invocation of
importClearTextEncoding this
string has value taken from the field preprocessor_version of the entity
file_name in the header of the exchange structure
(see ISO 10303-21::8.2.2 file_name).
The method is available only if the repository is open.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.setPreprocessorVersion(java.lang.String),
"ISO 10303-21::8.2.2 file_name."
public void setPreprocessorVersion(java.lang.String value)
throws SdaiException
String value to the attribute characterizing
the system used to create this repository.
This assignment is allowed only if the repository is open.
When applying exportClearTextEncoding,
the value assigned will be written to the exchange structure
created by the method being applied.
value - string describing the system used to create this repository.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
SdaiException - VA_NSET, value not set.getPreprocessorVersion(),
openRepository(),
"ISO 10303-21::8.2.2 file_name."
public java.lang.String getOriginatingSystem()
throws SdaiException
String characterizing the system from
which the data contained in this repository are originated.
After invocation of SdaiSession method
createRepository
some default value to this string is assigned, whereas after invocation of
importClearTextEncoding this
string has value taken from the field originating_system of the entity
file_name in the header of the exchange structure
(see ISO 10303-21::8.2.2 file_name).
The method is available only if the repository is open.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.setOriginatingSystem(java.lang.String),
"ISO 10303-21::8.2.2 file_name."
public void setOriginatingSystem(java.lang.String value)
throws SdaiException
String value to the attribute characterizing
the system from which the data contained in this repository are originated.
This assignment is allowed only if the repository is open.
When applying exportClearTextEncoding,
the value assigned will be written to the exchange structure
created by the method being applied.
value - string describing the system that is a source of the data in this repository.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
SdaiException - VA_NSET, value not set.getOriginatingSystem(),
openRepository(),
"ISO 10303-21::8.2.2 file_name."
public java.lang.String getAuthorization()
throws SdaiException
String containing the name and mailing address
of the person who authorizes sending of the exchange structure
exported from this repository.
After invocation of SdaiSession method
createRepository
some default value to this string is assigned, whereas after invocation of
importClearTextEncoding this
string has value taken from the field authorization of the entity
file_name in the header of the exchange structure
(see ISO 10303-21::8.2.2 file_name).
The method is available only if the repository is open.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.setAuthorization(java.lang.String),
"ISO 10303-21::8.2.2 file_name."
public void setAuthorization(java.lang.String value)
throws SdaiException
String value to the attribute characterizing
the person who authorizes sending of the exchange structure
exported from this repository.
This assignment is allowed only if the repository is open.
When applying exportClearTextEncoding,
the value assigned will be written to the exchange structure
created by the method being applied.
value - string describing the person who authorizes sending of the exchange structure.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
SdaiException - VA_NSET, value not set.getAuthorization(),
openRepository(),
"ISO 10303-21::8.2.2 file_name."
public java.lang.String getDefaultLanguage()
throws SdaiException
String identifying the default language
for string values in those models of this repository, for which their own
default language is not specified. More precisely, for a model, the default language
can be assigned individually. String returned by this
method serves as a default language for those models for which
an individual assignment was not made.
After invocation of SdaiSession method
createRepository
this string is set to null, whereas after invocation of
importClearTextEncoding this
string can take value extracted from the header of the exchange structure
(see ISO 10303-21::8.2.4 section_language) provided
an appropriate value is given there (otherwise it is set to null).
The method is available only if the repository is open.
String identifying the default language for string
values in models of this repository.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.setDefaultLanguage(java.lang.String),
SdaiModel.getDefaultLanguage(),
SdaiModel.setDefaultLanguage(java.lang.String),
"ISO 10303-21::8.2.4 section_language."
public void setDefaultLanguage(java.lang.String value)
throws SdaiException
String to the attribute identifying
the default language for string values in those models of this repository,
for which their own default language is not specified.
This assignment is allowed only if the repository is open.
If at least one model in this repository does not have its own
default language and the default language of the repository is set
with some value, then when applying exportClearTextEncoding,
this value will be written to the exchange structure
created by the method being applied.
value - String identifying the default language for string
values in models of this repository.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.getDefaultLanguage(),
SdaiModel.getDefaultLanguage(),
SdaiModel.setDefaultLanguage(java.lang.String),
openRepository(),
"ISO 10303-21::8.2.4 section_language."
public A_string getContextIdentifiers()
throws SdaiException
A_string containing information
describing the contexts within which the instances of the models in
this repository are applicable. Both the repository and each model
in it have their own aggregates A_string for writing context identifiers.
But for those models, for which their own aggregate is empty,
contexts are described by the aggregate returned by this method,
that is, by the repository aggregate.
After invocation of SdaiSession method
createRepository
this aggregate is empty, whereas after invocation of
importClearTextEncoding this
aggregate will contain information extracted from the header of the exchange structure
(see ISO 10303-21::8.2.5 section_context) provided
an appropriate information is given there.
That is, this aggregate always exists, but may be empty.
During a read-write transaction the aggregate can be
modified by adding/modifying/removing its members.
If for at least one model in this repository its own aggregate
describing contexts is empty and the repository aggregate contains at least
one string, then when applying exportClearTextEncoding,
the content of this aggregate will be written to the exchange structure
created by the method being applied.
The method is available only if the repository is open.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.SdaiModel.getContextIdentifiers(),
"ISO 10303-21::8.2.5 section_context."
public void shortNameSupport(boolean enable)
throws SdaiException
true. This information is used
by exportClearTextEncoding
and CEntity.toString methods.
Invocation of the method is allowed only if the repository is open.
This method is an extension of JSDAI, which is not a part of the standard.
enable - shows whether entity names must be short (if true)
or usual (if false).
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
public abstract SdaiPermission checkPermission()
throws SdaiException
SdaiException - if an error occurs performing underlying JSDAI operationscheckRead(),
checkWrite(),
SdaiPermission
public abstract void checkRead()
throws SdaiException
SdaiException.SY_SEC if the owning session
has no read access to this repository. Otherwise this method returns
with no action.
SdaiException - SY_SEC if the owning session is
not granted the read access
SdaiException - if an error occurs performing underlying JSDAI operationscheckPermission(),
checkWrite(),
SdaiPermission
public abstract void checkWrite()
throws SdaiException
SdaiException.SY_SEC if the owning session
has no write access to this repository. Otherwise this method returns
with no action.
SdaiException - SY_SEC if the owning session is
not granted the write access
SdaiException - if an error occurs performing underlying JSDAI operationscheckPermission(),
checkRead(),
SdaiPermission
public boolean checkCreateSchemaInstance(jsdai.dictionary.ESchema_definition nativeSchema)
throws SdaiException
false if the owning session is not permitted to
create a new schema instance in this repository for specified native
schema. Otherwise, if schema instance could be created, it returns
true.
nativeSchema - the native EXPRESS schema
false if the owning session is permitted to create
a new schema instance; true otherwise.
SdaiException - if an error occurs performing underlying JSDAI operationscheckCreateSchemaInstance(Class)
public boolean checkCreateSchemaInstance(java.lang.Class nativeSchema)
throws SdaiException
false if the owning session is not permitted to
create a new schema instance in this repository for specified native
schema. Otherwise, if schema instance could be created, it returns
true.
nativeSchema - the native EXPRESS schema class
false if the owning session is permitted to create
a new schema instance; true otherwise.
SdaiException - if an error occurs performing underlying JSDAI operationscheckCreateSchemaInstance(ESchema_definition)
public boolean checkCreateSdaiModel(jsdai.dictionary.ESchema_definition underlyingSchema)
throws SdaiException
false if the owning session is not permitted to
create a new model in this repository with specified underlying schema.
Otherwise, if model could be created, it returns true.
underlyingSchema - the underlying EXPRESS schema
false if the owning session is permitted to create
a new model; true otherwise.
SdaiException - if an error occurs performing underlying JSDAI operationscheckCreateSdaiModel(Class)
public boolean checkCreateSdaiModel(java.lang.Class underlyingSchema)
throws SdaiException
false if the owning session is not permitted to
create a new model in this repository with specified underlying schema.
Otherwise, if model could be created, it returns true.
underlyingSchema - the underlying EXPRESS schema class
false if the owning session is permitted to create
a new model; true otherwise.
SdaiException - if an error occurs performing underlying JSDAI operationscheckCreateSdaiModel(ESchema_definition)
public java.lang.String getLockingUser()
throws SdaiException
null for local repository.
SdaiException - if an error occurs during the operation
or in underlying JSDAI operationsSdaiSession.lock(jsdai.lang.ASdaiRepository, jsdai.lang.ASchemaInstance, jsdai.lang.ASdaiModel, int)
public abstract void openRepository()
throws SdaiException
SdaiModels and SchemaInstances
contained in this repository available for subsequent access.
If the repository is deleted or if the SdaiSession is closed,
SdaiException RP_NEXS will be thrown.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NAVL, repository not available.
SdaiException - RP_OPN, repository open.
SdaiException - LC_NVLD, location invalid.
SdaiException - SY_ERR, underlying system error.
public abstract SdaiModel createSdaiModel(java.lang.String model_name,
jsdai.dictionary.ESchema_definition schema)
throws SdaiException
SdaiModel in this repository.
This model is automatically added to the aggregate of type ASdaiModel,
containing all models of the repository. This aggregate can
be obtained by applying getModels method.
The name of the new model must be unique within this repository.
If the name is not supplied or is an empty string, then SdaiException
VA_NSET or, respectively, VA_NVLD is thrown.
The second parameter specifies some EXPRESS schema. The
new model can contain instances only those entities which are
defined or used in this schema.
If schema is not supplied, then SdaiException SD_NDEF is thrown.
model_name - name of the model.schema - underlying EXPRESS schema.
SdaiModel.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
SdaiException - TR_NEXS, transaction does not exist.
SdaiException - TR_NRW, transaction not read-write.
SdaiException - TR_EAB, transaction ended abnormally.
SdaiException - MO_DUP, SDAI-model duplicate.
SdaiException - VA_NSET, value not set.
SdaiException - SD_NDEF, schema definition not defined.
SdaiException - RP_RO, read-only access to repository.
SdaiException - RP_LOCK, repository locked by another user.
SdaiException - SY_ERR, underlying system error.
public abstract SdaiModel createSdaiModel(java.lang.String model_name,
java.lang.Class schema)
throws SdaiException
SdaiModel in this repository.
It is a variation of createSdaiModel(String model_name,
ESchema_definition schema) method.
The EXPRESS schema is specified by the second parameter whose type is Class.
The value submitted to this parameter during invocation of the method shall be
a special java class with the name constructed from the schema name. This class
is contained in the package corresponding to the schema of interest.
For example, if the schema is "geometry_schema", then the package name is
"jsdai.SGeometry_schema" and the value for the second parameter shall
be "jsdai.SGeometry_schema.SGeometry_schema.class".
model_name - name of the model.schema - underlying EXPRESS schema.
SdaiModel.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
SdaiException - TR_NEXS, transaction does not exist.
SdaiException - TR_NRW, transaction not read-write.
SdaiException - TR_EAB, transaction ended abnormally.
SdaiException - MO_DUP, SDAI-model duplicate.
SdaiException - VA_NSET, value not set.
SdaiException - SD_NDEF, schema definition not defined.
SdaiException - RP_RO, read-only access to repository.
SdaiException - RP_LOCK, repository locked by another user.
SdaiException - SY_ERR, underlying system error.
public abstract SdaiModel findSdaiModel(java.lang.String name)
throws SdaiException
SdaiModel with this name in this repository.
If such a model does not exist, then null is returned.
name - name of the model.
SdaiModel with the specified name.
SdaiException - SY_ERR, underlying system error.
public abstract SchemaInstance createSchemaInstance(java.lang.String name,
jsdai.dictionary.ESchema_definition schema)
throws SdaiException
SchemaInstance in this repository.
This schema instance is automatically added to the aggregate of type ASchemaInstance,
containing all schema instances of the repository. This aggregate can
be obtained by applying getSchemas method.
The name of the new schema instance must be unique within this repository.
If name is not supplied, then SdaiException VA_NSET is thrown.
The second parameter specifies some EXPRESS schema this schema instance is based on.
If schema is not supplied, then SdaiException SD_NDEF is thrown.
name - name of the new SchemaInstance.schema - the native schema for the SchemaInstance created.
SchemaInstance.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
SdaiException - TR_NEXS, transaction does not exist.
SdaiException - TR_NRW, transaction not read-write.
SdaiException - TR_EAB, transaction ended abnormally.
SdaiException - SI_DUP, schema instance duplicate.
SdaiException - VA_NSET, value not set.
SdaiException - SD_NDEF, schema definition not defined.
SdaiException - RP_RO, read-only access to repository.
SdaiException - RP_LOCK, repository locked by another user.
SdaiException - SY_ERR, underlying system error.
public abstract SchemaInstance createSchemaInstance(java.lang.String name,
java.lang.Class schema)
throws SdaiException
SchemaInstance in this repository.
It is a variation of createSchemaInstance(String name,
ESchema_definition schema) method.
The EXPRESS schema is specified by the second parameter whose type is Class.
The value submitted to this parameter during invocation of the method shall be
a special java class with the name constructed from the schema name. This class
is contained in the package corresponding to the schema of interest.
For example, if the schema name is "geometry_schema", then the package name is
"jsdai.SGeometry_schema" and the value for the second parameter shall
be "jsdai.SGeometry_schema.SGeometry_schema.class".
name - name of the new SchemaInstance.schema - the native schema for the SchemaInstance created.
SchemaInstance.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
SdaiException - TR_NEXS, transaction does not exist.
SdaiException - TR_NRW, transaction not read-write.
SdaiException - TR_EAB, transaction ended abnormally.
SdaiException - SI_DUP, schema instance duplicate.
SdaiException - VA_NSET, value not set.
SdaiException - SD_NDEF, schema definition not defined.
SdaiException - RP_RO, read-only access to repository.
SdaiException - RP_LOCK, repository locked by another user.
SdaiException - SY_ERR, underlying system error.
public abstract SchemaInstance findSchemaInstance(java.lang.String name)
throws SdaiException
SchemaInstance with this name in this repository.
If such a schema instance does not exist, then null is returned.
name - name of the schema instance.
SchemaInstance with the specified name.
SdaiException - SY_ERR, underlying system error.
public void closeRepository()
throws SdaiException
SdaiModels and
SchemaInstances contained in it become inaccessible.
In turn, entity instances of any SdaiModel in this
repository also become inaccessible. For most methods in class
EEntity, if applied to such instances,
SdaiException EI_NEXS will be thrown.
The largest number appearing in the name of an instance within
the repository is stored by commit
in 'contents' binary file of the repository and will be
extracted and used when this repository will be opened again.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
SdaiException - RP_NAVL, repository not available.
SdaiException - TR_RW, transaction read-write.
SdaiException - SY_ERR, underlying system error.SdaiTransaction.commit(),
SdaiTransaction.abort(),
"ISO 10303-22::10.5.3 Close repository"
public abstract EEntity getSessionIdentifier(java.lang.String label)
throws SdaiException
label - the persistent label of the entity instance to look for.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
SdaiException - TR_NEXS, transaction does not exist.
SdaiException - TR_NAVL, transaction currently not available.
SdaiException - TR_EAB, transaction ended abnormally.
SdaiException - EI_NEXS, entity instance does not exist.
SdaiException - VA_NSET, value not set.
SdaiException - SY_ERR, underlying system error.EEntity.getPersistentLabel(),
"ISO 10303-22::10.11.7 Get session identifier"
public int query(java.lang.String where,
EEntity entity,
AEntity result)
throws SdaiException
SdaiException FN_NAVL will be thrown if this method is invoked.
query in interface QuerySourcewhere - a String valueentity - an EEntity valueresult - an AEntity value
int value
SdaiException - FN_NAVL, function not available.
public ASdaiModel getQuerySourceDomain()
throws SdaiException
QuerySource
getQuerySourceDomain in interface QuerySourceSdaiException - if an error occurs during the operation
or in underlying JSDAI operations
public AEntity getQuerySourceInstances()
throws SdaiException
QuerySource
getQuerySourceInstances in interface QuerySourceAEntity containing the instances or null
this aggregate consists all instances in query source domain
SdaiException - if an error occurs during the operation
or in underlying JSDAI operations
public jsdai.query.SerializableRef getQuerySourceInstanceRef()
throws SdaiException
getQuerySourceInstanceRef in interface QuerySourceSdaiException
public jsdai.query.SerializableRef getQuerySourceDomainRef()
throws SdaiException
getQuerySourceDomainRef in interface QuerySourceSdaiException
public void deleteRepository()
throws SdaiException
knownServers) and physically.
It is not possible to get back it using
linkRepository method.
If the repository at the moment of invocation of this method is open,
it is first closed and only then deleted.
Deleting of special repository "SystemRepository", containing dictionary
and mapping data, is forbidden.
If the repository is degenerated, then SdaiException FN_NAVL is thrown.
This method is an extension of JSDAI, which is not a part of the standard.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NAVL, repository not available.
SdaiException - TR_RW, transaction read-write.
SdaiException - SY_ERR, underlying system error.
SdaiException - FN_NAVL, function not available.closeRepository()
public void exportClearTextEncoding(java.lang.String location)
throws SdaiException
location gets some String value,
then this value is used as a name for the resulting file.
If, however, location is null, then the name is chosen as follows.
If the repository was created during this session by applying
importClearTextEncoding,
then the name of the file is the same as that of the input file for
importClearTextEncoding method. In the remaining cases, that is,
when the repository was either created by
createRepository or linked by
linkRepository, the name of the
resulting file coincides with the name of the repository.
The contents of each model of the repository is written down to
the file as a separate data section. The header of the file includes
time-stamp which specifies the date and time when this repository was
created or most recently modified.
The value of the attribute implementation_level of the
entity file_description in the header of the exchange structure
(see ISO 10303-21::8.2.1 file_description) can take one of the following
values:
file_population in the
header of the exchange structure (see ISO 10303-21::8.2.4 file_population)
is created;
file_population for a schema instance
only those models in the set associated_models which belong
to this repository are listed. Models from the other repositories simply
are ignored. However, if all models of this repository belong to
associated_models of the schema instance considered, then
the value standing for associated_models in the
corresponding instance of file_population is missing,
that is, dollar sign is used (see ISO 10303-21::8.2.4 file_population).
The repository may contain instances which reference instances in other repositories. In this case the strategy is as follows:
After execution of this method the repository itself remains unchanged. In particular, all references (if any) from the current repository to other repositories are retained. The method is disabled for special repository "SystemRepository", containing dictionary and mapping data. In this case SdaiException FN_NAVL is thrown.
location - the name of the file created by the method.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
SdaiException - TR_NEXS, transaction does not exist.
SdaiException - TR_NAVL, transaction currently not available.
SdaiException - FN_NAVL, function not available.
SdaiException - SY_ERR, underlying system error.exportClearTextEncoding(String location, String file_name),
see "ISO 10303-21"
public void exportClearTextEncoding(java.lang.String location,
java.lang.String file_name)
throws SdaiException
location gets some String value,
then this value is used as a name for the resulting file.
If, however, location is null, then the name is chosen as follows.
If the repository was created during this session by applying
importClearTextEncoding,
then the name of the file is the same as that of the input file for
importClearTextEncoding method. In the remaining cases, that is,
when the repository was either created by
createRepository or linked by
linkRepository, the name of the
resulting file coincides with the name of the repository.
The second parameter of the method can be used to set the value of the attribute
name of the header entity file_name
(see ISO 10303-21::8.2.2 file_name). If this parameter is null,
then the value of name depends on the origin of the
repository. If it has been imported from an exchange structure, then
the existing value of name is taken. If, however, the repository
was created, then its name as the value of the attribute
name is used.
The contents of each model of the repository is written down to
the file as a separate data section. The header of the file includes
time-stamp which specifies the date and time when this repository was
created or most recently modified.
The value of the attribute implementation_level of the
entity file_description in the header of the exchange structure
(see ISO 10303-21::8.2.1 file_description) can take one of the following
values:
file_population in the
header of the exchange structure (see ISO 10303-21::8.2.4 file_population)
is created;
file_population for a schema instance
only those models in the set associated_models which belong
to this repository are listed. Models from the other repositories simply
are ignored. However, if all models of this repository belong to
associated_models of the schema instance considered, then
the value standing for associated_models in the
corresponding instance of file_population is missing,
that is, dollar sign is used (see ISO 10303-21::8.2.4 file_population).
The repository may contain instances which reference instances in other repositories. In this case the strategy is as follows:
Applying this method, it is possible to write entity names either in usual form or in short form.
For example, for entity cartesian_point any of the following cases can be chosen:
shortNameSupport
method should be used.
Selecting the short form can give the desired result only if the short names of entities
are defined in the data dictionary (provided by an Express compiler).
If, for an entity, the method fails to identify its short name, then the full entity
name is used instead of.
After execution of this method the repository itself remains unchanged. In particular, all references (if any) from the current repository to other repositories are retained. The method is disabled for special repository "SystemRepository", containing dictionary and mapping data. In this case SdaiException FN_NAVL is thrown.
location - the name of the file created by the method.file_name - the name of the exchange structure to which this repository is exported.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.
SdaiException - TR_NEXS, transaction does not exist.
SdaiException - TR_NAVL, transaction currently not available.
SdaiException - FN_NAVL, function not available.
SdaiException - SY_ERR, underlying system error.exportClearTextEncoding(String location),
SchemaInstance.exportClearTextEncoding(java.lang.String),
"ISO 10303-21"
public void exportClearTextEncoding(java.io.OutputStream location)
throws SdaiException
exportClearTextEncoding(String location, String file_name).
Invoking this method is equivalent to making this call:
exportClearTextEncoding(location, null);
location - an OutputStream value
SdaiException - if an error occurs during the operation
or in underlying JSDAI operations
public void exportClearTextEncoding(java.io.OutputStream location,
java.lang.String file_name)
throws SdaiException
exportClearTextEncoding(String location, String file_name)
location - an OutputStream valuefile_name - the name of the exchange structure to which this repository is exported.
It sets the value of the attribute name of the header entity
file_name (see ISO 10303-21::8.2.2 file_name).
If this parameter is null, then the value of
name depends on the origin of the repository. If it has been
imported from an exchange structure, then the existing value of
name is taken. If, however, the repository was created,
then its name as the value of the attribute name is used.
SdaiException - if an error occurs during the operation
or in underlying JSDAI operations
public void exportXml(java.io.OutputStream location,
InstanceReader instanceReader)
throws SdaiException
instanceReader parameter.
location - an OutputStream to write XML toinstanceReader - an InstanceReader describing output format
SdaiException - if an error occurs during the operation
or in underlying JSDAI operationsjsdai.xml.InstanceReader,
jsdai.xml.LateBindingReader
public void importXml(java.io.InputStream location)
throws SdaiException
location - an InputStream to read XML from.
SdaiException - if an error occurs during the operation
or in underlying JSDAI operationsInstanceWriterSelector
public boolean isActive()
throws SdaiException
SdaiSession is closed.
true if this repository is open, and
false otherwise.
SdaiException - RP_NEXS, repository does not exist.
public boolean isModified()
throws SdaiException
true if this repository is modified, and
false otherwise.
SdaiException - RP_NEXS, repository does not exist.
SdaiException - RP_NOPN, repository is not open.public java.lang.String toString()
String.
It includes constant string "SdaiRepository: " and repository name.
public void addSdaiListener(SdaiListener listener)
SdaiListener extending java.util.EventListener
to a special aggregate in this repository.
addSdaiListener in interface SdaiEventSourcelistener - a SdaiListener to be added.removeSdaiListener(jsdai.lang.SdaiListener)public void removeSdaiListener(SdaiListener listener)
SdaiListener extending java.util.EventListener
from the special aggregate in this repository.
removeSdaiListener in interface SdaiEventSourcelistener - SdaiListener to be removed.addSdaiListener(jsdai.lang.SdaiListener)public long getPersistentLabel()
setNextPersistentLabel(long)
public abstract void setNextPersistentLabel(long newPersistentLabel)
throws SdaiException
long value to the next persistent label, which will be used for the next instance.
Value of the next persistent label must be unused.
newPersistentLabel - long value of next persistent label.
SdaiException - VA_NVLD, value invalid.getPersistentLabel()
public SdaiModel getSdaiModelByRef(jsdai.query.SerializableRef modelRef)
throws SdaiException
SdaiModel using specified model reference.
modelRef - SerializableRef used to refer to remote model.
SdaiModel refered by specified model reference.
SdaiException - FN_NAVL, function not available.
SdaiException - SY_ERR, underlying system error.getSchemaInstanceByRef(SerializableRef),
getInstanceByRef(SerializableRef)
public SchemaInstance getSchemaInstanceByRef(jsdai.query.SerializableRef schemaRef)
throws SdaiException
SchemaInstance using specified schema instance reference.
schemaRef - SerializableRef used to refer to remote schema instance.
SchemaInstance refered by specified schema instance reference.
SdaiException - FN_NAVL, function not available.
SdaiException - SY_ERR, underlying system error.getSdaiModelByRef(SerializableRef),
getInstanceByRef(SerializableRef)
public EEntity getInstanceByRef(jsdai.query.SerializableRef entityRef)
throws SdaiException
EEntity using specified entity reference.
entityRef - SerializableRef used to refer to remote entity instance.
EEntity refered by specified entity instance reference.
SdaiException - FN_NAVL, function not available.
SdaiException - SY_ERR, underlying system error.getSdaiModelByRef(SerializableRef),
getSchemaInstanceByRef(SerializableRef)
public java.lang.String getRealName()
throws SdaiException
String.
The repositories known to an SdaiSession must have unique names.
An exception will be thrown if the repository is deleted or if the
SdaiSession is closed.
SdaiException - RP_NEXS, repository does not exist.
public void copyFrom(SdaiRepository sourceRepository)
throws SdaiException
copyInstances method.
This method is an extension of JSDAI, which is not a part of the standard.
sourceRepository - the source repository.
SdaiException - TR_NEXS, transaction does not exist.
SdaiException - TR_NRW, transaction not read-write.
SdaiException - MO_NEXS, SDAI-model does not exist.
SdaiException - MX_NRW, SDAI-model access not read-write.
SdaiException - ED_NVLD, entity definition invalid.
SdaiException - VA_NSET, value not set.
SdaiException - VA_NVLD, value invalid.
SdaiException - FN_NAVL, function not available.
SdaiException - SY_ERR, underlying system error.copyFrom(SchemaInstance),
copyFrom(ASchemaInstance)
public void copyFrom(SchemaInstance sourceSchemaInstance)
throws SdaiException
copyInstances method.
This method is an extension of JSDAI, which is not a part of the standard.
sourceSchemaInstance - the source repository.
SdaiException - TR_NEXS, transaction does not exist.
SdaiException - TR_NRW, transaction not read-write.
SdaiException - MO_NEXS, SDAI-model does not exist.
SdaiException - MX_NRW, SDAI-model access not read-write.
SdaiException - ED_NVLD, entity definition invalid.
SdaiException - VA_NSET, value not set.
SdaiException - VA_NVLD, value invalid.
SdaiException - FN_NAVL, function not available.
SdaiException - SY_ERR, underlying system error.copyFrom(SdaiRepository),
copyFrom(ASchemaInstance)
public void copyFrom(ASchemaInstance aSourceSchemaInstance)
throws SdaiException
copyInstances method.
This method is an extension of JSDAI, which is not a part of the standard.
aSourceSchemaInstance - the source repository.
SdaiException - TR_NEXS, transaction does not exist.
SdaiException - TR_NRW, transaction not read-write.
SdaiException - MO_NEXS, SDAI-model does not exist.
SdaiException - MX_NRW, SDAI-model access not read-write.
SdaiException - ED_NVLD, entity definition invalid.
SdaiException - VA_NSET, value not set.
SdaiException - VA_NVLD, value invalid.
SdaiException - FN_NAVL, function not available.
SdaiException - SY_ERR, underlying system error.copyFrom(SdaiRepository),
copyFrom(SchemaInstance)
public void setLocation(java.lang.String location)
throws SdaiException
String value to the location attribute of the repository.
This assignment is allowed only if the repository is stored in
SDAI file else
SdaiException FN_NAVL is thrown.
If the new location has been assigned successfully, then new SDAI file
will be created for the current repository while performing commit operation.
Old SDAI file will remain untouched
in the old location after commit operation.
This method is an extension of JSDAI, which is not a part of the standard.
location - the new location of the repository.
SdaiException - FN_NAVL, function not available.getLocation()
|
Copyright © LKSoftWare GmbH, 1999-2008 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||