Ignore:
Timestamp:
Sep 25, 2009, 12:15:59 PM (15 years ago)
Author:
KOBAYASHI, Shinji
Message:

hand merge

File:
1 edited

Legend:

Unmodified
Added
Removed
  • ruby/trunk/lib/open_ehr/rm/data_types/encapsulated.rb

    r167 r297  
    55require 'locale/info'
    66
    7 module OpenEhr
     7module OpenEHR
    88  module RM
    99    module DataTypes
    1010      module Encapsulated
    11         class DvEncapsulated  < OpenEhr::RM::DataTypes::Basic::DataValue
    12           attr_reader :language, :charset, :size
    13           def initialize(charset, language, size)
    14             self.charset = charset
    15             self.language = language
    16             self.size = size
     11        class DvEncapsulated  < OpenEHR::RM::DataTypes::Basic::DataValue
     12          attr_reader :language, :charset
     13
     14          def initialize(args = {})
     15            super(args)
     16            self.charset = args[:charset]
     17            self.language = args[:language]
    1718          end
    1819
    19           def size=(size)
    20             if size < 0
    21               raise ArgumentError, "negative size"
    22             end
    23             @size = size
     20          def size
     21            @value.size
    2422          end
    2523
    2624          def language=(language)
    27             if language.nil? ||
     25            if !language.nil? &&
    2826                !Locale::Info.language_code?(language.code_string)
    2927              raise ArgumentError, 'invalid language code'
     
    3331
    3432          def charset=(charset)
    35             if charset.nil? || !charset_valid?(charset.code_string)
     33            if !charset.nil? && !charset_valid?(charset.code_string)
    3634              raise ArgumentError, 'invalid charset'
    3735            end
     
    4038
    4139          private
    42           def size_positive
    43             raise ArgumentError, "size must be positive" if size < 0
    44           end
    4540
    4641          def charset_valid?(charset)
    4742            result = false
    48             open('rm/data_types/charset.lst') do |file|
     43            open('lib/open_ehr/rm/data_types/charset.lst') do |file|
    4944              while line = file.gets
    5045                if charset == line.chomp
     
    6358          attr_accessor :uri, :data, :compression_algorithm,
    6459          :integrity_check, :integrity_check_algorithm, :alternate_text
    65           def initialize(charset, language, size, media_type, uri=nil,
    66                          data=nil, compression_algorithm=nil,
    67                          integrity_check=nil, integrity_check_algorithm=nil,
    68                          alternate_text=nil)
    69             super(charset, language, size)
    70             self.media_type = media_type
    71             @uri = uri
    72             @data = data
    73             @compression_algorithm = compression_algorithm
    74             @integrity_check = integrity_check
    75             @integrity_check_algorithm = integrity_check_algorithm
    76             @alternate_text = alternate_text
     60
     61          def initialize(args = {})
     62            super(args)
     63            self.media_type = args[:media_type]
     64            self.uri = args[:uri]
     65            self.data = args[:data]
     66            self.compression_algorithm = args[:compression_algorithm]
     67            self.integrity_check = args[:integrity_check]
     68            self.integrity_check_algorithm = args[:integrity_check_algorithm]
     69            self.alternate_text = args[:alternate_text]
    7770          end
     71
    7872          def media_type=(media_type)
    7973            if media_type.code_string.nil?
     
    8579
    8680        class DvParsable < DvEncapsulated
    87           attr_reader :value, :formalism
    88           def initialize(charset, language, size, formalism, value)
    89             super(charset, language, size)
    90             self.formalism = formalism
    91             self.value = value
    92           end
     81          attr_reader :formalism
    9382
    94           def value=(value)
    95             raise ArgumentError, 'value must not be nil' if value.nil?
    96             @value = value
     83          def initialize(args = {})
     84            super(args)
     85            self.formalism = args[:formalism]
    9786          end
    9887
    9988          def formalism=(formalism)
    100             if formalism.nil?
    101               raise ArgumentError, "formalism must not be nil"
    102             elsif formalism.empty?
    103               raise ArgumentError, "formalism must nto be empty"
     89            if formalism.nil? || formalism.empty?
     90              raise ArgumentError, 'formalism is mandatory'
    10491            end
    10592            @formalism = formalism
Note: See TracChangeset for help on using the changeset viewer.