Changeset 297 for ruby/trunk/lib/open_ehr/rm/data_types/uri.rb
- Timestamp:
- Sep 25, 2009, 12:15:59 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
ruby/trunk/lib/open_ehr/rm/data_types/uri.rb
r167 r297 4 4 5 5 require 'uri' 6 #require 'uri/generic' 7 module U ri8 class E hr< ::URI::Generic6 7 module URI 8 class EHR < ::URI::Generic 9 9 COMPONENT = [ 10 10 :scheme, :path, :fragment, :query 11 11 ].freeze 12 12 13 def self.build(args) 13 14 tmp = Util::make_components_hash(self, args) 14 15 super(tmp) 15 16 end 17 16 18 def initialize(*arg) 17 19 super(*arg) 18 20 end 21 19 22 def self.use_registry 20 23 true 21 24 end 22 25 end 23 @@schemes['EHR'] = E hr26 @@schemes['EHR'] = EHR 24 27 end 25 28 26 module OpenE hr29 module OpenEHR 27 30 module RM 28 31 module DataTypes 29 32 module Uri 30 class DvUri < OpenE hr::RM::DataTypes::Basic::DataValue31 def initialize( value)32 self.value = value33 class DvUri < OpenEHR::RM::DataTypes::Basic::DataValue 34 def initialize(args = {}) 35 self.value = args[:value] 33 36 end 37 38 def value 39 @value.to_s 40 end 41 34 42 def fragment_id 35 43 @value.fragment 36 44 end 45 37 46 def path 38 47 @value.path 39 48 end 49 40 50 def query 41 51 @value.query 42 52 end 53 43 54 def scheme 44 55 @value.scheme 45 56 end 57 46 58 def value=(value) 47 59 raise ArgumentError, "value is empty" if value.nil? 48 60 parse(value) 49 61 end 50 def value 51 @value.to_s 52 end 62 53 63 private 64 54 65 def parse(value) 55 66 @value = ::URI.parse(value) … … 61 72 super(value) 62 73 end 74 63 75 def value=(value) 64 76 raise ArgumentError, "scheme must be ehr" if !(value =~ /^ehr/i) 65 parse(value)77 @value = parse(value) 66 78 end 67 79 end # of DV_EHR_URI
Note:
See TracChangeset
for help on using the changeset viewer.