Mercurial > pub > Impl
comparison Lib/IMPL/ORM/Adapter/Generic.pm @ 79:2d1c3f713280
ORM concept in development
author | wizard |
---|---|
date | Mon, 05 Apr 2010 00:20:34 +0400 |
parents | |
children | d1676be8afcc |
comparison
equal
deleted
inserted
replaced
78:a5cb84374d40 | 79:2d1c3f713280 |
---|---|
1 package IMPL::ORM::Adapter::Generic; | |
2 | |
3 1; | |
4 | |
5 __END__ | |
6 | |
7 =pod | |
8 | |
9 =head1 NAME | |
10 | |
11 C<IMPL::ORM::Adapter::Generic> Адаптер для работы с данными объекта произвольного класса. | |
12 | |
13 =head1 DESCRIPTION | |
14 | |
15 Позволяет получать данные, изменения данных из объекта, а также записать данные в | |
16 объект и создать новый объект. | |
17 | |
18 =head1 MEMBERS | |
19 | |
20 =over | |
21 | |
22 =item C<CTOR($object,$hashOptions)> | |
23 | |
24 Создает новый адаптер к объекту C<$object> | |
25 | |
26 =item C<[get]object> | |
27 | |
28 Объект для которого создан данный адаптер, C<undef> если объект удален. | |
29 | |
30 =item C<[get]isChanged> | |
31 | |
32 Были ли обновления в объекте. | |
33 | |
34 =item C<[get]isDeleted> | |
35 | |
36 Является ли объект удаленным. | |
37 | |
38 =item C<[get]isNew> | |
39 | |
40 Является ли объект новым для БД. | |
41 | |
42 =item C<[get]initialState> | |
43 | |
44 Начальное состояние объекта, C<undef> если объект был создан. | |
45 | |
46 =item C<[get]currentState> | |
47 | |
48 Текущие состояние. C<undef> если объект удален. | |
49 | |
50 =item C<[get,list]history> | |
51 | |
52 История изменений. C<IMPL::Object::List> | |
53 | |
54 =item C<SaveChanges> | |
55 | |
56 Сохраняет изменения из объекта в текущее состояние, при этом изменения записываются в историю. | |
57 | |
58 B<returns> информацию об изменениях в объекте. | |
59 | |
60 =item C<Revert($version)> | |
61 | |
62 Возвращает объект в определенную версию. | |
63 | |
64 =item C<Delete> | |
65 | |
66 Удаляет объект, точнее помечает его для удаления до вызова C<Commit>. | |
67 | |
68 =item C<Commit> | |
69 | |
70 Сбрасывает историю изменений, и устанавливает соответсвующие свойства. | |
71 | |
72 =back | |
73 | |
74 =head1 Информация об изменениях объекта | |
75 | |
76 =begin code | |
77 | |
78 { | |
79 version => 1, # object version | |
80 op => STORAGE_UPDATE, | |
81 data => { | |
82 entity1 => { | |
83 field1 => 'value 1' | |
84 }, | |
85 entity2 => { | |
86 field2 => 'value 2' | |
87 } | |
88 } | |
89 } | |
90 | |
91 =end code | |
92 | |
93 =head1 Информация об отображении объекта | |
94 | |
95 =begin code | |
96 | |
97 { | |
98 prop_name => [ entity => 'field' ] | |
99 } | |
100 | |
101 =end code | |
102 | |
103 =cut |