Changeset 370
- Timestamp:
- Nov 20, 2009, 3:23:48 PM (14 years ago)
- Location:
- ruby/trunk
- Files:
-
- 3 deleted
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
ruby/trunk/lib/open_ehr/rm/common/archetyped.rb
r297 r370 65 65 66 66 def name=(name) 67 raise ArgumentError, 'name should not be empty' if name.nil? or name.value.empty? 67 if name.nil? or name.value.empty? 68 raise ArgumentError, 'name should not be empty' 69 end 68 70 @name = name 69 71 end 72 70 73 def links=(links) 71 raise ArgumentError, "links shoud not be empty" if !links.nil? and links.empty? 74 if !links.nil? and links.empty? 75 raise ArgumentError, "links shoud not be empty" 76 end 72 77 @links = links 73 78 end 74 79 75 def item_at_path(path) 76 if !@path.nil? 77 if @path == "" 78 raise ArgumentError, "path is not valid" 79 end 80 def concept 81 if self.is_archetype_root? 82 return DvText.new(:value => 83 @archetype_details.archetype_id.concept_name) 84 else 85 raise ArgumentError, 'this is not root' 80 86 end 81 end82 83 def items_at_path(path)84 raise NotImplementError, "items_at_path must be implemented"85 end86 87 def path_exists?88 raise NotImplementError, "path_exists? must be implemented"89 end90 91 def path_unique92 raise NotImplementError, "path_unique must be implemented"93 end94 95 def concept96 87 end 97 88 … … 104 95 attr_reader :archetype_id, :rm_version 105 96 attr_accessor :template_id 106 def initialize(archetype_id, rm_version, template_id = nil) 107 self.archetype_id = archetype_id 108 self.rm_version = rm_version 109 self.template_id = template_id 97 98 def initialize(args = { }) 99 self.archetype_id = args[:archetype_id] 100 self.rm_version = args[:rm_version] 101 self.template_id = args[:template_id] 110 102 end 103 111 104 def archetype_id=(archetype_id) 112 105 raise ArgumentError, "invalid archetype_id" if archetype_id.nil? 113 106 @archetype_id = archetype_id 114 107 end 108 115 109 def rm_version=(rm_version) 116 raise ArgumentError, "invalid rm_version" if rm_version.nil? or rm_version.empty? 110 if rm_version.nil? or rm_version.empty? 111 raise ArgumentError, "invalid rm_version" 112 end 117 113 @rm_version = rm_version 118 114 end … … 121 117 class Link 122 118 attr_reader :meaning, :target, :type 123 def initialize( meaning, target, type)124 self.meaning = meaning125 self.target = target126 self.type = type119 def initialize(args = { }) 120 self.meaning = args[:meaning] 121 self.target = args[:target] 122 self.type = args[:type] 127 123 end 128 124 def meaning=(meaning) … … 165 161 attr_accessor :provider, :location, :time, :subject, :version_id 166 162 167 def initialize(args = { })163 def initialize(args = { }) 168 164 self.system_id = args[:system_id] 169 165 self.provider = args[:provider] … … 175 171 176 172 def system_id=(system_id) 177 raise ArgumentError, 'system_id invalid' if system_id.nil? or system_id.empty? 173 if system_id.nil? or system_id.empty? 174 raise ArgumentError, 'system_id invalid' 175 end 178 176 @system_id = system_id 179 177 end -
ruby/trunk/lib/open_ehr/rm/common/change_control.rb
r167 r370 2 2 # http://www.openehr.org/uml/release-1.0.1/Browsable/_9_0_76d0249_1109326589721_134411_997Report.html 3 3 # Ticket refs #64 4 5 module OpenE hr4 include OpenEHR::RM::Common::Generic 5 module OpenEHR 6 6 module RM 7 7 module Common … … 88 88 89 89 def contribution=(contribution) 90 raise ArgumentError, "contribution should not be nil" if contribution.nil? or contribution.type.empty? 91 @contribution = contribution 90 if contribution.nil? or contribution.type.empty? 91 raise ArgumentError, "contribution is invalid" 92 end 93 if contribution.type == 'CONTRIBUTION' 94 @contribution = contribution 95 else 96 raise ArgumentError, 'contribution is invalid' 97 end 92 98 end 93 99 94 100 def owner_id 95 return HierObjectI d.new(@uid.object_id.value)101 return HierObjectID.new(:value => @uid.value) 96 102 end 97 103 … … 101 107 102 108 def canonical_form 103 raise NotImplementedError, 'canonical form not implemented'109 raise NotImplementedError, 'canonical form is not determined' 104 110 end 105 111 end … … 116 122 :contribution => args[:contribution], 117 123 :lifecycle_state => @item.lifecycle_state, 118 :signature => args[:signature]) 119 124 :signature => args[:signature]) 120 125 end 121 126 … … 150 155 151 156 def is_merged? 152 # Java implementation has is_merged attribute, Eiffel implementation does 153 # nothing 157 return !other_input_version_uids.nil? 154 158 end 155 159 end … … 275 279 :version_id => ver.uid) 276 280 end 277 return RevisionHistory.new( revision_history_items)281 return RevisionHistory.new(:items => revision_history_items) 278 282 end 279 283 280 284 def commit_original_version(args={ }) 281 @all_versions << OriginalVersion.new(:uid => args[:uid], 282 :preceding_version_uid => args[:preceding_version_uid], 283 :contribution => args[:contribution], 284 :commit_audit => args[:commit_audit], 285 :lifecycle_state => args[:lifecycle_state], 286 :data => args[:data], 287 :attestations => args[:attestations], 288 :signature => args[:signature]) 289 end 290 285 if has_version_id?(args[:preceding_version_uid]) or self.version_count == 0 286 @all_versions << OriginalVersion.new(:uid => args[:uid], 287 :preceding_version_uid => args[:preceding_version_uid], 288 :contribution => args[:contribution], 289 :commit_audit => args[:commit_audit], 290 :lifecycle_state => args[:lifecycle_state], 291 :data => args[:data], 292 :attestations => args[:attestations], 293 :signature => args[:signature]) 294 else 295 raise ArgumentError, 'invalid preceding uid' 296 end 297 end 298 291 299 def commit_original_merged_version(args = { }) 292 300 @all_versions << OriginalVersion.new(:uid => args[:uid], … … 303 311 def commit_imported_version(args = { }) 304 312 @all_versions << ImportedVersion.new(:item => args[:item], 305 306 313 :contribution => args[:contribution], 314 :commit_audit => args[:commit_audit]) 307 315 end 308 316 -
ruby/trunk/lib/open_ehr/rm/common/generic.rb
r167 r370 2 2 # http://www.openehr.org/uml/release-1.0.1/Browsable/_9_5_1_76d0249_1140169202660_257304_813Report.html 3 3 # Related to the ticket #62 4 include OpenE hr::RM::Support::Identification5 include OpenE hr::RM::DataTypes::Basic6 module OpenE hr4 include OpenEHR::RM::Support::Identification 5 include OpenEHR::RM::DataTypes::Basic 6 module OpenEHR 7 7 module RM 8 8 module Common … … 34 34 def time_committed=(time_committed) 35 35 if time_committed.nil? 36 raise ArgumentError, 'time_commit ed is mandatory'36 raise ArgumentError, 'time_committed is mandatory' 37 37 end 38 38 @time_committed = time_committed 39 39 end 40 40 41 41 def change_type=(change_type) 42 42 raise ArgumentError, 'change_type is mandatory' if change_type.nil? … … 48 48 attr_reader :items 49 49 50 def initialize( items)51 self.items = items50 def initialize(args = { }) 51 self.items = args[:items] 52 52 end 53 53 … … 103 103 class PartyIdentified < PartyProxy 104 104 attr_reader :name, :identifier 105 105 106 def initialize(args = { }) 106 107 if args[:external_ref].nil? && args[:name].nil? && … … 108 109 raise ArgumentError, 'cannot identified' 109 110 end 110 super(:external_ref => args[:external_ref])111 111 self.name = args[:name] 112 112 self.identifier = args[:identifier] 113 super(args) 113 114 end 114 115 … … 125 126 raise ArgumentError, 'cannot identified' 126 127 end 127 unless identifier.nil? || !identifier.empty?128 if !identifier.nil? && identifier.empty? 128 129 raise ArgumentError, 'invaild identifier' 129 130 end 130 131 @identifier = identifier 132 end 133 134 def external_ref=(external_ref) 135 if @name.nil? && @identifier.nil? && external_ref.nil? 136 raise ArgumentError, 'invalid external_ref' 137 end 138 @external_ref = external_ref 131 139 end 132 140 end … … 176 184 class Attestation < AuditDetails 177 185 attr_reader :reason 178 attr_accessor :proof, : items186 attr_accessor :proof, :attested_view, :is_pending, :items 179 187 180 188 def initialize(args = { }) … … 183 191 self.proof = args[:proof] 184 192 self.items = args[:items] 193 self.attested_view = args[:attested_view] 194 self.is_pending = args[:is_pending] 185 195 end 186 196 … … 188 198 raise ArgumentError, 'reason is mandatory' if reason.nil? 189 199 @reason = reason 200 end 201 202 def items=(items) 203 if !items.nil? && items.empty? 204 raise ArgumentError, 'items should not be empty' 205 end 206 @items = items 207 end 208 209 def is_pending? 210 return is_pending 190 211 end 191 212 end -
ruby/trunk/lib/open_ehr/rm/common/resource.rb
r167 r370 1 1 require 'set' 2 module OpenE hr2 module OpenEHR 3 3 module RM 4 4 module Common … … 29 29 end 30 30 31 def current_ version32 @revision_history.most_recent_ revision31 def current_revision 32 @revision_history.most_recent_version 33 33 end 34 34 35 35 def languages_available 36 return Set.new(@translations.keys) 36 return Set.new(@translations.keys) << original_language.code_string 37 37 end 38 38 -
ruby/trunk/log/development.log
r297 r370 1663 1663 [4;35;1mSQL (0.1ms)[0m [0mSELECT version FROM "schema_migrations"[0m 1664 1664 [4;36;1mSQL (2.3ms)[0m [0;1mINSERT INTO "schema_migrations" (version) VALUES ('20090725052538')[0m 1665 [4;36;1mSQL (1.7ms)[0m [0;1m SELECT name 1666 FROM sqlite_master 1667 WHERE type = 'table' AND NOT name = 'sqlite_sequence' 1668 [0m 1669 [4;35;1mSQL (0.3ms)[0m [0mSELECT version FROM schema_migrations[0m 1670 [4;36;1mSQL (0.3ms)[0m [0;1mselect sqlite_version(*)[0m 1671 [4;35;1mSQL (0.6ms)[0m [0m SELECT name 1672 FROM sqlite_master 1673 WHERE type = 'table' AND NOT name = 'sqlite_sequence' 1674 [0m 1675 [4;36;1mSQL (60.8ms)[0m [0;1mCREATE TABLE "terminologies" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "code" varchar(255), "name" varchar(255), "lang" varchar(255), "group" text, "rubric" varchar(255), "description" text, "mappings" varchar(255)) [0m 1676 [4;35;1mSQL (0.4ms)[0m [0m SELECT name 1677 FROM sqlite_master 1678 WHERE type = 'table' AND NOT name = 'sqlite_sequence' 1679 [0m 1680 [4;36;1mSQL (2.6ms)[0m [0;1mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m 1681 [4;35;1mSQL (2.7ms)[0m [0mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m 1682 [4;36;1mSQL (0.3ms)[0m [0;1m SELECT name 1683 FROM sqlite_master 1684 WHERE type = 'table' AND NOT name = 'sqlite_sequence' 1685 [0m 1686 [4;35;1mSQL (0.1ms)[0m [0mSELECT version FROM "schema_migrations"[0m 1687 [4;36;1mSQL (2.4ms)[0m [0;1mINSERT INTO "schema_migrations" (version) VALUES ('20090725052538')[0m 1688 [4;36;1mSQL (0.9ms)[0m [0;1m SELECT name 1689 FROM sqlite_master 1690 WHERE type = 'table' AND NOT name = 'sqlite_sequence' 1691 [0m 1692 [4;35;1mSQL (0.4ms)[0m [0mSELECT version FROM schema_migrations[0m 1693 [4;36;1mSQL (0.3ms)[0m [0;1mselect sqlite_version(*)[0m 1694 [4;35;1mSQL (0.7ms)[0m [0m SELECT name 1695 FROM sqlite_master 1696 WHERE type = 'table' AND NOT name = 'sqlite_sequence' 1697 [0m 1698 [4;36;1mSQL (3.6ms)[0m [0;1mCREATE TABLE "terminologies" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "code" varchar(255), "name" varchar(255), "lang" varchar(255), "group" text, "rubric" varchar(255), "description" text, "mappings" varchar(255)) [0m 1699 [4;35;1mSQL (0.3ms)[0m [0m SELECT name 1700 FROM sqlite_master 1701 WHERE type = 'table' AND NOT name = 'sqlite_sequence' 1702 [0m 1703 [4;36;1mSQL (6.9ms)[0m [0;1mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m 1704 [4;35;1mSQL (2.7ms)[0m [0mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m 1705 [4;36;1mSQL (0.4ms)[0m [0;1m SELECT name 1706 FROM sqlite_master 1707 WHERE type = 'table' AND NOT name = 'sqlite_sequence' 1708 [0m 1709 [4;35;1mSQL (0.2ms)[0m [0mSELECT version FROM "schema_migrations"[0m 1710 [4;36;1mSQL (2.1ms)[0m [0;1mINSERT INTO "schema_migrations" (version) VALUES ('20090725052538')[0m
Note:
See TracChangeset
for help on using the changeset viewer.