Свойства |
Свойства (property) предназначены для реализации абстракции полей в объектных интерфейсах. Прототип свойства описывается следующей конструкцией:
<прототип-свойства> = property <имя-свойства> : <тип-свойства> [ read ] [ write ] [ <тип-соединения> ];
<имя-свойства> - произвольный идентификатор , уникальный в данном объектном интерфейсе.
<тип-свойства> - любой легальный тип . Массивы не поддерживаются.
Ключевые слова read и write указывают возможные действия, допустимые для этого свойства. Допустимы три комбинации, свойства только на чтение, только на запись и на чтение и запись. Если ни один из видов доступа (ни read ни write) не указан, будет определено свойство с полным доступом (чтение и запись).
<тип-соединения> - указывает направление соединения объекта с подъобъектом. Используется для свойств, являющихся объектами, и принадлежащих объекту, реализующего web-сервис Указание типа соединения влияет на порядок вызовов метода DoSetData. Подробнее см. раздел "Web-сервисы. ". Ключевые слова leftJoin, rightJoin, noJoin доступны начиная с Атлантис 5.1.36.
<тип-соединения> = leftJoin | rightJoin | noJoin
leftJoin - подобъект ссылается на объект (левая ссылка). Пример - спецификация ссылается на счет.
rightJoin - объект ссылается на подобъект (правая ссылка). Пример - ссылка на каталог.
noJoin - не вызывать метод DoSetData (см. "Интерфейс модификации объекта web-сервиса. ").
По умолчанию ссылка считается правой.
objInterface example; property p1 : integer read; // свойство только для чтения property p2 : string write; // свойство только для записи property s : string read write; // .. для чтения и записи. property s1 : string; // тоже для чтения и записи. end;
Ключевые слова leftJoin, rightJoin, noJoin введены начиная с Атлантис 5.1.36.