Ignore:
Timestamp:
Jul 3, 2009, 2:17:43 AM (15 years ago)
Author:
KOBAYASHI, Shinji
Message:

refs #62, #47, #65

File:
1 edited

Legend:

Unmodified
Added
Removed
  • ruby/trunk/lib/models/rm/common/generic.rb

    r104 r153  
    22# http://www.openehr.org/uml/release-1.0.1/Browsable/_9_5_1_76d0249_1140169202660_257304_813Report.html
    33# Related to the ticket #62
     4include OpenEHR::RM::Support::Identification
     5include OpenEHR::RM::Data_Types::Basic
    46module OpenEHR
    57  module RM
     
    1719
    1820        class Party_Proxy
    19           def external_ref
    20             Raise NotImplementedError, 'external_ref shoud provide Party_Ref'
     21          attr_accessor :external_ref
     22
     23          def initialize(args = { })
     24            self.external_ref = args[:external_ref]
    2125          end
    2226        end
     
    2731
    2832        class Party_Identified < Party_Proxy
     33          attr_reader :name, :identifier
     34          def initialize(args = { })
     35            if args[:external_ref].nil? && args[:name].nil? &&
     36                args[:identifier].nil?
     37              raise ArgumentError, 'cannot identified'
     38            end
     39            super(:external_ref => args[:external_ref])
     40            self.name = args[:name]
     41            self.identifier = args[:identifier]
     42          end
    2943
     44          def name=(name)
     45            if name.nil? && @external_ref.nil? && @identifier.nil?
     46              raise ArgumentError, 'cannot identified'
     47            end
     48            raise ArgumentError, 'invaild name' unless name.nil? || !name.empty?
     49            @name = name
     50          end
     51
     52          def identifier=(identifier)
     53            if @name.nil? && @external_ref.nil? && identifier.nil?
     54              raise ArgumentError, 'cannot identified'
     55            end
     56            unless identifier.nil? || !identifier.empty?
     57              raise ArgumentError, 'invaild identifier'
     58            end
     59            @identifier = identifier
     60          end
    3061        end
    3162
Note: See TracChangeset for help on using the changeset viewer.