79
|
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 |