-
Notifications
You must be signed in to change notification settings - Fork 2
/
README
78 lines (46 loc) · 1.89 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
Madeleine is a Ruby implementation of Object Prevalence: Transparent
persistence of business objects using command logging and complete
system snapshots.
<http://madeleine.rubyforge.org/>
Madeleine's design is based on Prevayler, the original Java
prevalence layer.
Learn more about object prevalence at <http://www.prevayler.org/>.
Installation:
Typical installation procedure is:
$ ruby install.rb config
$ ruby install.rb setup
# ruby install.rb install (may require root privilege)
Try 'ruby install.rb --help' for detailed usage.
[From the documentation of Minero Aoki's 'install.rb']
Usage:
require 'madeleine'
# Create an application as a prevalent system
madeleine = SnapshotMadeleine.new("my_example_storage") {
SomeExampleApplication.new()
}
# Do modifications of the system by sending commands through
# the Madeleine instance. A command is an object with a suitable
# "execute(system)" method.
madeleine.execute_command(command)
Requirements:
* Ruby 1.8.1 or later
Additionaly, some of the sample code also uses ruby/tk.
Known problems:
* Won't run in some Windows-ports of Ruby due to missing
fsync() call.
Contact:
Homepage:
<http://madeleine.rubyforge.org/>
Questions, bug reports, patches, complaints? Use the mailing list:
<http://rubyforge.org/mailman/listinfo/madeleine-devel>
License:
BSD (see the file COPYING)
Credits:
Anders Bengtsson - Prevalence core impl.
Stephen Sykes - Automatic commands impl.
With the help of patches, testing and feedback from:
Steve Conover, David Heinemeier Hansson, Johan Lind, Håkan Råberg,
IIMA Susumu, Martin Tampe and Jon Tirsén
Thanks to Klaus Wuestefeld and the Prevayler developers for the
model of this software; to Minero Aoki for the installer; to Matz and
the core developers for the Ruby language!