Ignore:
Timestamp:
Jan 25, 2010, 5:35:20 PM (14 years ago)
Author:
KOBAYASHI, Shinji
Message:

fixed #71

File:
1 edited

Legend:

Unmodified
Added
Removed
  • ruby/trunk/lib/open_ehr/am/archetype/constraint_model/primitive.rb

    r400 r401  
    256256            end
    257257          end
     258
     259          class CDuration < CPrimitive
     260            attr_reader :range
     261            attr_accessor :years_allowed, :months_allowed, :weeks_allowed,
     262                          :days_allowed, :hours_allowed, :minutes_allowed,
     263                          :seconds_allowed, :fractional_seconds_allowed
     264
     265            def initialize(args = { })
     266              super
     267              self.fractional_seconds_allowed = args[:fractional_seconds_allowed]
     268              self.seconds_allowed = args[:seconds_allowed]
     269              self.minutes_allowed = args[:minutes_allowed]
     270              self.hours_allowed = args[:hours_allowed]
     271              self.days_allowed = args[:days_allowed]
     272              self.months_allowed = args[:months_allowed]
     273              self.weeks_allowed = args[:weeks_allowed]
     274              self.years_allowed = args[:years_allowed]
     275              self.range = args[:range]
     276            end
     277
     278            def range=(range)
     279              if range.nil? && !(@years_allowed ||
     280                    @months_allowed ||
     281                    @weeks_allowed ||
     282                    @days_allowed ||
     283                    @hours_allowed ||
     284                    @minutes_allowed ||
     285                    @seconds_allowed ||
     286                    @fractional_seconds_allowed)
     287                raise ArgumentError, 'invalid range'
     288              end
     289              @range = range
     290            end
     291          end
    258292        end # of Primitive
    259293      end # of CostraintModel
Note: See TracChangeset for help on using the changeset viewer.