Changeset 157 for ruby/trunk/lib/models/rm
- Timestamp:
- Jul 5, 2009, 11:01:59 PM (15 years ago)
- Location:
- ruby/trunk/lib/models/rm
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
ruby/trunk/lib/models/rm/common/generic.rb
r156 r157 46 46 47 47 class Revision_History 48 48 attr_reader :items 49 50 def initialize(items) 51 self.items = items 52 end 53 54 def items=(items) 55 if items.nil? or items.empty? 56 raise ArgumentError, 'item(s) is/are mandatory' 57 end 58 @items = items 59 end 60 61 def most_recent_version 62 return @items.last.version_id.value 63 end 64 65 def most_recent_version_time_committed 66 return @items.last.audits.first.time_committed.value 67 end 49 68 end # of Revision_History 50 69 51 70 class Revision_History_Item 52 71 attr_reader :version_id, :audits 72 73 def initialize(args = { }) 74 self.version_id = args[:version_id] 75 self.audits = args[:audits] 76 end 77 78 def audits=(audits) 79 if audits.nil? or audits.empty? 80 raise ArgumentError, 'audits is mandatory' 81 end 82 @audits = audits 83 end 84 85 def version_id=(version_id) 86 raise ArgumentError, 'version_id is mandatory' if version_id.nil? 87 @version_id = version_id 88 end 53 89 end # of Revision_History_Item 54 90 … … 137 173 end 138 174 end 175 176 class Attestation < Audit_Details 177 attr_reader :reason 178 attr_accessor :proof, :items 179 180 def initialize(args = { }) 181 super(args) 182 self.reason = args[:reason] 183 self.proof = args[:proof] 184 self.items = args[:items] 185 end 186 187 def reason=(reason) 188 raise ArgumentError, 'reason is mandatory' if reason.nil? 189 @reason = reason 190 end 191 end 139 192 end # of Generic 140 193 end # of Common -
ruby/trunk/lib/models/rm/data_types/quantity/date_time.rb
r151 r157 11 11 module Date_Time 12 12 class DV_Temporal < OpenEHR::RM::Data_Types::Quantity::DV_Absolute_Quantity 13 include Comparable 13 14 attr_reader :value 14 15 … … 29 30 end 30 31 @value = value 32 end 33 34 def <=>(other) 35 self.magnitude <=> other.magnitude 31 36 end 32 37 end … … 151 156 152 157 def magnitude 153 return DateTime.new(@year,@month,@day,@hour,@minute,@second) - 154 DateTime.new(0000,1,1,0,0,0) + @fractional_second 158 seconds = DateTime.new(@year,@month,@day,@hour,@minute,@second) - 159 DateTime.new(0000,1,1,0,0,0) 160 if @fractional_second.nil? 161 return seconds 162 else 163 return seconds + @fractional_second 164 end 155 165 end 156 166 -
ruby/trunk/lib/models/rm/support/identification.rb
r107 r157 174 174 end 175 175 176 class Object_Version_ID < UID_Based_ID 177 attr_reader :object_id, :creating_system_id, :version_tree_id 178 179 def initialize(value) 180 super(value) 181 end 182 183 def value=(value) 184 super(value) 185 if /^(\w+)::(\w+)::((\d|\.)+)$/ =~ value 186 self.object_id = UID.new($1) 187 self.creating_system_id = UID.new($2) 188 self.version_tree_id = Version_Tree_ID.new($3) 189 else 190 raise ArgumentError, 'invalid format' 191 end 192 end 193 194 def object_id=(object_id) 195 raise ArgumentError, 'object_id is mandatory' if object_id.nil? 196 @object_id = object_id 197 end 198 199 def creating_system_id=(creating_system_id) 200 if creating_system_id.nil? 201 raise ArgumentError, 'creating_system_id is mandatory' 202 end 203 @creating_system_id = creating_system_id 204 end 205 206 def version_tree_id=(version_tree_id) 207 if version_tree_id.nil? 208 raise ArgumentError, 'version_tree_id is mandatory' 209 end 210 @version_tree_id = version_tree_id 211 end 212 end 213 176 214 class Locatable_Ref < Object_Ref 177 215 attr_reader :namespace, :type, :id, :path … … 284 322 class ISO_OID <UID 285 323 286 end 324 end 287 325 end # of Identification 288 326 end # of Support
Note:
See TracChangeset
for help on using the changeset viewer.