source: ruby/trunk/lib/models/rm/common/change_control.rb@ 119

Last change on this file since 119 was 119, checked in by KOBAYASHI, Shinji, 15 years ago

devide test_reference_model.rb

File size: 2.5 KB
RevLine 
[113]1# This module is based on the UML,
2# http://www.openehr.org/uml/release-1.0.1/Browsable/_9_0_76d0249_1109326589721_134411_997Report.html
3# Ticket refs #64
4
5module OpenEHR
6 module RM
7 module Common
8 module Change_Control
9 class Contribution
[115]10 attr_reader :uid, :versions, :audit
11 def initialize(uid, versions, audit)
12 self.uid = uid
13 self.versions = versions
14 self.audit = audit
15 end
16 def uid=(uid)
17 if uid.nil?
18 raise ArgumentError, "uid should not be nil."
19 end
20 @uid = uid
21 end
22 def versions=(versions)
[117]23 unless versions.nil?
24 if versions.empty?
[115]25 raise ArgumentError, 'versions shoud not be nil or empty.'
26 end
27 end
28 @versions = versions
29 end
30 def audit=(audit)
31 if audit.nil?
32 raise ArgumentError, 'audit should not be nil.'
33 end
34 if audit.description.nil?
35 raise ArgumentError, 'audit.description should not be nil.'
36 end
37 @audit = audit
38 end
[113]39 end
[119]40
[113]41 class Versioned_Object
42 end
[117]43
[113]44 class Version
[117]45 attr_reader :uid, :contribution, :commit_audit, :signature
46 attr_reader :attestations, :data
47 def initialize(uid, contribution, commit_audit, signature=nil, attestations=nil, data=nil)
48 self.uid = uid
49 self.contribution = contribution
50 self.commit_audit = commit_audit
51 end
[119]52 def canonical_form
53 raise NotImplementedError, 'canonical form not implemented'
54 end
55
[117]56 def uid=(uid)
57 raise ArgumentError, "uid should not be nil" if uid.nil?
58 end
[119]59
[117]60 def contribution=(contribution)
61 raise ArgumentError, "contribution should not be nil" if contribution.nil? or contribution.type == ''
62 @contribution = contribution
63 end
[119]64
[117]65 def commit_audit=(commit_audit)
66 raise ArgumentError, "commit_audit should not be nil" if commit_audit.nil?
67 @commit_audit = commit_audit
68 end
[119]69
70 def is_branch?
71 raise NotImplementedError, 'is_branch not implemented'
72 end
[113]73 end
[117]74
[113]75 class Imported_Version < Version
76 end
[117]77
[113]78 class Original_Version < Version
79 end
[119]80
[113]81 end # of Change_Control
82 end # of Common
83 end # of RM
84end # of OpenEHR
Note: See TracBrowser for help on using the repository browser.