# Uses of Package
com.comtrade.ecm.engine.objects

- Packages that use com.comtrade.ecm.engine.objects
  Package | Description
  --- | ---
  com.comtrade.ecm.engine.business.entity.attributes |
  com.comtrade.ecm.engine.business.exceptions |
  com.comtrade.ecm.engine.config | Package with classes that perform standard configuration reading and confirmation data providing. All the classes from this package (and all the classes that implement specific reading from configuration files) should carefully use classes from other parts of the library, in order to avoid cyclic dependences. If (in a deploy) there is an available `ConfigurationReader`-object, then it should be used to read the configuration data.
  com.comtrade.ecm.engine.exceptions | Exceptions used in other parts of a library (or in applications that use this library). `EcmException` is an exception that should be used as a base for all other library-specific exceptions. It should be used in throws-clauses of library-methods whenever such an exception can be propagated to a front-end level. `EcmSimpleException` should be used as a base class for creation of other specific exceptions. `EcmMultipleException` should be created whenever a method wishes to throw several `EcmSimpleException`s.
  com.comtrade.ecm.engine.logging | Basic logging objects
  com.comtrade.ecm.engine.objects | Library-specific classes and interfaces that define independent objects, later to be used in more complex structures.
  com.comtrade.ecm.engine.persistence |
  com.comtrade.ecm.engine.system |

- Classes in com.comtrade.ecm.engine.objects used by com.comtrade.ecm.engine.business.entity.attributes
  Class and Description
  Nameable An object that has "a name". That "name" does not have to be unique inside its namespace.

- Classes in com.comtrade.ecm.engine.objects used by com.comtrade.ecm.engine.business.exceptions
  Class and Description
  EcmMessagePart An object that keeps information about a part of the message that is going to be presented to a user. For example, it can be shown on the screen, or written in a log-file, or saved in the database (possibly, many other scenarios may be "invented"). Every `EcmMessagePart` can be used - literally (exactly as it is), if `EcmMessagePart.toBeLocalized` is false, or - in its localized form (if localization is possible), if `EcmMessagePart.toBeLocalized` is true. A conversion to a String is not performed inside this object.

- Classes in com.comtrade.ecm.engine.objects used by com.comtrade.ecm.engine.config
  Class and Description
  Mutable An object whose state can be changed.
  Nameable An object that has "a name". That "name" does not have to be unique inside its namespace.

- Classes in com.comtrade.ecm.engine.objects used by com.comtrade.ecm.engine.exceptions
  Class and Description
  EcmMessage A collection of `EcmMessagePart`s. The final result (of a conversion of `EcmMessage` to a String) will be created by concatenation of conversion of its `EcmMessagePart`s. A conversion to a String is not performed inside this object.
  EcmMessagePart An object that keeps information about a part of the message that is going to be presented to a user. For example, it can be shown on the screen, or written in a log-file, or saved in the database (possibly, many other scenarios may be "invented"). Every `EcmMessagePart` can be used - literally (exactly as it is), if `EcmMessagePart.toBeLocalized` is false, or - in its localized form (if localization is possible), if `EcmMessagePart.toBeLocalized` is true. A conversion to a String is not performed inside this object.

- Classes in com.comtrade.ecm.engine.objects used by com.comtrade.ecm.engine.logging
  Class and Description
  EcmMessagePart An object that keeps information about a part of the message that is going to be presented to a user. For example, it can be shown on the screen, or written in a log-file, or saved in the database (possibly, many other scenarios may be "invented"). Every `EcmMessagePart` can be used - literally (exactly as it is), if `EcmMessagePart.toBeLocalized` is false, or - in its localized form (if localization is possible), if `EcmMessagePart.toBeLocalized` is true. A conversion to a String is not performed inside this object.
  Identifiable An object that can identify itself. That indentification should be sufficient to uniquely identify an object inside some pool of objects (most commonly, pool of objects of the same type). It is possible that object from some other pool can have the same identification.

- Classes in com.comtrade.ecm.engine.objects used by com.comtrade.ecm.engine.objects
  Class and Description
  EcmMessagePart An object that keeps information about a part of the message that is going to be presented to a user. For example, it can be shown on the screen, or written in a log-file, or saved in the database (possibly, many other scenarios may be "invented"). Every `EcmMessagePart` can be used - literally (exactly as it is), if `EcmMessagePart.toBeLocalized` is false, or - in its localized form (if localization is possible), if `EcmMessagePart.toBeLocalized` is true. A conversion to a String is not performed inside this object.

- Classes in com.comtrade.ecm.engine.objects used by com.comtrade.ecm.engine.persistence
  Class and Description
  Accessible An object whose attributes' values can be accessed in a specific, general manner.

- Classes in com.comtrade.ecm.engine.objects used by com.comtrade.ecm.engine.system
  Class and Description
  Mutable An object whose state can be changed.
  Nameable An object that has "a name". That "name" does not have to be unique inside its namespace.