Rt конфигурация

<dbm>

Узел: dbm

Настройки для модуля dbm

<registermodel>

Узел: dbm/registermodel , тип: list

Список зарегистрированных моделей

<MODEL-NAME>

Узел: dbm/registermodel/MODEL-NAME

Регистрация модели, указанной в атрибуте model с именем MODEL-NAME

model=»string»

Атрибут: dbm/registermodel/MODEL-NAME:model, тип: string

Имя модели

<model>

Узел: model , тип: list

Описание моделей.

<MODEL-NAME>

Узел: model/MODEL-NAME

Описание модели

<service>

Узел: model/MODEL-NAME/service

Сервисы модели

<SERVICE-NAME>

Узел: model/MODEL-NAME/service/SERVICE-NAME

Сервис модели

<field>

Узел: model/MODEL-NAME/field

Поля модели

<FIELD-NAME>

Узел: model/MODEL-NAME/field/FIELD-NAME

Поле модели

db.refcascade=»bool»

Атрибут: model/MODEL-NAME/field/FIELD-NAME:db.refcascade, тип: bool

При значении true для поля необходимо генерировать в базе данных какскадную ссылку. Обычно указывается для ref поля.

<root>
    <domain name="MyTable" parent="id" tag.db="true">
        <ref db.refcascade="true"/>
    </domain>
</root>
<validator>

Узел: model/MODEL-NAME/field/FIELD-NAME/validator

Валидаторы поля

<VALIDATOR-NAME>

Узел: model/MODEL-NAME/field/FIELD-NAME/validator/VALIDATOR-NAME

Валидатор поля. См. <validator>.

<domain>

Узел: model/MODEL-NAME/domain

Домены модели

<DOMAIN-NAME>

Узел: model/MODEL-NAME/domain/DOMAIN-NAME

Домен модели

abstract=»bool»

Атрибут: model/MODEL-NAME/domain/DOMAIN-NAME:abstract, тип: bool

Признак того, что домен абстрактный. Такой домен не включается в модель. Используется как базовый предок. Атрибут не наследуется.

tag.db=»bool»

Атрибут: model/MODEL-NAME/domain/DOMAIN-NAME:tag.db, тип: bool

Признак того, что домен является описанием физической таблицы в базе данных. Атрибут не наследуется.

tag.dbview=»bool»

Атрибут: model/MODEL-NAME/domain/DOMAIN-NAME:tag.dbview, тип: bool

Признак того, что домен является описанием физического view в базе данных. Если атрибут указан, то атрибут tag.db проставляется автоматически. Текст sql для view должен быть в узле ddl/view. Атрибут не наследуется. Пример:

<domain name="View1" parent="id" tag.dbview="true">
    <ddl name="view">
        create view View1 as select * from Tab1
    </ddl>
</domain>
tag.dao=»bool»

Атрибут: model/MODEL-NAME/domain/DOMAIN-NAME:tag.dao, тип: bool

Признак того, что домен содержит в себе dao-объекты. Если у домена имеются личные dao, то атрибут ставится автоматически. Атрибут не наследуется.

tag.dict=»bool»

Атрибут: model/MODEL-NAME/domain/DOMAIN-NAME:tag.dict, тип: bool

Признак того, что домен является описанием словаря. Атрибуты словаря указываются в дочернем элементе dict. Атрибут не наследуется.

tablename=»string»

Атрибут: model/MODEL-NAME/domain/DOMAIN-NAME:tablename, тип: string

Имя физической таблицы в базе данных для домена. Если у домена есть атрибут tag.db или tag.dbview, то значение атрибута автоматически устанавливается в имя домена.

db.genidstart=»long»

Атрибут: model/MODEL-NAME/domain/DOMAIN-NAME:db.genidstart, тип: long

С какого числа начинать генерацию id. Этим числом инициализируется генератор id при создании базы данных. По умолчанию 1000.

<ref>

Узел: model/MODEL-NAME/domain/DOMAIN-NAME/ref

В этом узле описываются свойства поля, которое является ссылкой на этот домен. Все что можно указать для model/MODEL-NAME/field/FIELD-NAME, можно указывать и тут. Что бы поле было унаследовано от этого узла, нужно указывать для него parent DOMAIN-NAME/ref. Пример:

<domain name="Tree1" parent="dbtable" tag.db="true">
    <ref title="Ссылка на узел дерева"/>

    <field name="name" parent="string" size="30"/>
    <field name="parent" parent="Tree1/ref"/>
</domain>
<validator>

Узел: model/MODEL-NAME/domain/DOMAIN-NAME/validator

Валидаторы домена

<VALIDATOR-NAME>

Узел: model/MODEL-NAME/domain/DOMAIN-NAME/validator/VALIDATOR-NAME

Валидатор. Можно не указывать parent, тогда в качестве parent возмется имя валидатора, например:

<domain name="Domain1" parent="dbtable">
    <validator name="record"/>
</domain>

соответствует:

<domain name="Domain1" parent="dbtable">
    <validator name="record" parent="record"/>
</domain>
<dataloader>

Узел: model/MODEL-NAME/domain/DOMAIN-NAME/dataloader

Загрузчики данных.

<DATALOADER-NAME>

Узел: model/MODEL-NAME/domain/DOMAIN-NAME/dataloader/DATALOADER-NAME

Загрузчик данных

dbdata=»string»

Атрибут: model/MODEL-NAME/domain/DOMAIN-NAME/dataloader/DATALOADER-NAME:dbdata, тип: string

Тип загрузчика. Значением может быть:

  • prod - данные таблицы в базе по умолчанию
  • test - тестовые данные таблицы в базе
  • любое другое - для каких-то других целей

По умолчанию значение не установлено

<dbindex>

Узел: model/MODEL-NAME/domain/DOMAIN-NAME/dbindex

Описание db-индексов для генерации базы данных

<DBINDEX-NAME>

Узел: model/MODEL-NAME/domain/DOMAIN-NAME/dbindex/DBINDEX-NAME

Индекс таблицы для базы данных. Имя узла используется для генерации имени индекса.

fields=»string»

Атрибут: model/MODEL-NAME/domain/DOMAIN-NAME/dbindex/DBINDEX-NAME:fields, тип: string

Список полей (через ','), из которых состоит индекс. Если имя поля начинается с символа „*“, то это означает, что сортировать это поле нужно в обратном порядке (по убыванию).

<root>
    <domain name="MyTable" parent="id" tag.db="true">
        <field name="name" parent="string" size="20"/>
        <field name="dt" parent="date" />

        <dbindex name="myindex1" fields="name,*dt" unique="true"/>
        <dbindex name="myindex2" fields="dt"/>
    </domain>
</root>
unique=»bool»

Атрибут: model/MODEL-NAME/domain/DOMAIN-NAME/dbindex/DBINDEX-NAME:unique, тип: bool

Признак уникального индекса. По умолчанию false.

<ddl>

Узел: model/MODEL-NAME/domain/DOMAIN-NAME/ddl

Поименнованые ddl-опрераторы.

<DDL-NAME>

Узел: model/MODEL-NAME/domain/DOMAIN-NAME/ddl/DDL-NAME

ddl оператор

<root>
    <domain name="MyTable" parent="id" tag.db="true">
        <field name="name" parent="string" size="20"/>
        <field name="dt" parent="date" />

        <ddl name="myddl1" type="create">
            alter table my1 add _logfield varchar(20)
        </ddl>

        <ddl name="myddl2" type="create">
            alter table my1 add _logfield2 varchar(20)
        </ddl>
    </domain>
</root>
type=»string»

Атрибут: model/MODEL-NAME/domain/DOMAIN-NAME/ddl/DDL-NAME:type, тип: string

Если оператор имеет атрибут type="create" (значение по умолчанию), то эти операторы попадают в сгенерированный sql для создания базы данных.

<db>

Узел: model/MODEL-NAME/db

Базы данных, связанные с моделью. Обычно в модели одна база данных и она имеет имя default.

<DB-NAME>

Узел: model/MODEL-NAME/db/DB-NAME

База данных связанная с моделью.

database=»string»

Атрибут: model/MODEL-NAME/db/DB-NAME:database, тип: string

Имя базы данных.

dbdriver=»string»

Атрибут: model/MODEL-NAME/db/DB-NAME:dbdriver, тип: string

Имя драйвера базы данных. Драйвера описываются в /dbdriver/DBDRIVER-NAME.

host=»string»

Атрибут: model/MODEL-NAME/db/DB-NAME:host, тип: string

Адрес хоста.

jdbcDriverClass=»string»

Атрибут: model/MODEL-NAME/db/DB-NAME:jdbcDriverClass, тип: string

Имя класса jdbc-драйвера. Обычно не нужно его указывать, т.к. используется класс из dbdriver.

username=»string»

Атрибут: model/MODEL-NAME/db/DB-NAME:username, тип: string

Имя пользователя базы данных для коннекта.

password=»string»

Атрибут: model/MODEL-NAME/db/DB-NAME:password, тип: string

Пароль пользователя базы данных для коннекта.

url=»string»

Атрибут: model/MODEL-NAME/db/DB-NAME:url, тип: string

Строка соединения. Можно использовать подстановки ${property} (например '${username}'). В качестве property можно использовать любые атрибуты из узла db.

Обычно url явно не указывается, а берется из dbdriver.

conn.XXX=»string»

Атрибут: model/MODEL-NAME/db/DB-NAME:conn.XXX, тип: string

Свойства соединения. В таких атрибутах отбрасывается префикс conn. и остаток используется как имя свойства соединения. Зависит от драйвера.

config.path=»string»

Атрибут: model/MODEL-NAME/db/DB-NAME:config.path, тип: string

Путь rt, относительно корня конфигурации приложения, откуда будут браться дополнительные свойства базы данных. Эти данные перекроют те, которые указаны в узле db/DB-NAME модели.

Используется для выноса конфигурации в более приемлемое место для конечного пользователя.

Если не установлено, то по умолчанию принимается равным db/MODEL-NAME.

<dataloader>

Узел: model/MODEL-NAME/dataloader

Предки для загрузчиков данных.

<DATALOADER-NAME>

Узел: model/MODEL-NAME/dataloader/DATALOADER-NAME

Загрузчик данных