class OpenEHR::AM::Archetype::ConstraintModel::Primitive::CDateTime

Attributes

hour_validity[R]

Public Class Methods

new(args = { }) click to toggle source
# File lib/open_ehr/am/archetype/constraint_model/primitive.rb, line 262
def initialize(args = { })
  args[:type] = 'ISO8601_DATE_TIME'
  super
  self.pattern = args[:pattern]
  self.list = args[:list]
  self.range = args[:range]
  self.timezone_validity = args[:timezone_validity]
  self.millisecond_validity = args[:millisecond_validity]
  self.second_validity = args[:second_validity]
  self.minute_validity = args[:minute_validity]
  self.hour_validity = args[:hour_vaildity]
  self.day_validity = args[:day_validity]
  self.month_validity = args[:day_validity]
end

Public Instance Methods

day_validity=(day_validity) click to toggle source
# File lib/open_ehr/am/archetype/constraint_model/primitive.rb, line 288
def day_validity=(day_validity)
  if (day_validity == ValidityKind::DISALLOWED &&
      @hour_validity != ValidityKind::DISALLOWED) ||
      (day_validity == ValidityKind::OPTIONAL &&
       !(@hour_validity == ValidityKind::OPTIONAL ||
         @hour_validity == ValidityKind::DISALLOWED))
    raise ArgumentError, 'day_validity is invaild'
  end
  @day_validity = day_validity
end
hour_validity=(hour_validity) click to toggle source
# File lib/open_ehr/am/archetype/constraint_model/primitive.rb, line 277
def hour_validity=(hour_validity)
  if (hour_validity == ValidityKind::DISALLOWED &&
      @minute_validity != ValidityKind::DISALLOWED) ||
      (hour_validity == ValidityKind::OPTIONAL &&
       !(@minute_validity == ValidityKind::OPTIONAL ||
         @minute_validity == ValidityKind::DISALLOWED))
    raise ArgumentError, 'hour_validity is invalid'
  end
  @hour_validity = hour_validity
end

Protected Instance Methods

valid_pattern?(pattern) click to toggle source
# File lib/open_ehr/am/archetype/constraint_model/primitive.rb, line 300
def valid_pattern?(pattern)
  if /^([Yy?X]{4})(-([Mm?X]{2})(-([Dd?X]{2}))?)?[T ]?([Hh?X]{2})(:([Mm?X]{2})(:([Ss?X]{2}))?)?$/ =~ pattern
    true
  else
    false
  end
end