Ignore:
Timestamp:
Jul 5, 2009, 11:01:59 PM (15 years ago)
Author:
KOBAYASHI, Shinji
Message:

fixed #62
refs #49,#39

File:
1 edited

Legend:

Unmodified
Added
Removed
  • ruby/trunk/lib/models/rm/support/identification.rb

    r107 r157  
    174174        end
    175175
     176        class Object_Version_ID < UID_Based_ID
     177          attr_reader :object_id, :creating_system_id, :version_tree_id
     178
     179          def initialize(value)
     180            super(value)
     181          end
     182
     183          def value=(value)
     184            super(value)
     185            if /^(\w+)::(\w+)::((\d|\.)+)$/ =~ value
     186              self.object_id = UID.new($1)
     187              self.creating_system_id = UID.new($2)
     188              self.version_tree_id = Version_Tree_ID.new($3)
     189            else
     190              raise ArgumentError, 'invalid format'
     191            end
     192          end
     193
     194          def object_id=(object_id)
     195            raise ArgumentError, 'object_id is mandatory' if object_id.nil?
     196            @object_id = object_id
     197          end
     198
     199          def creating_system_id=(creating_system_id)
     200            if creating_system_id.nil?
     201              raise ArgumentError, 'creating_system_id is mandatory'
     202            end
     203            @creating_system_id = creating_system_id
     204          end
     205
     206          def version_tree_id=(version_tree_id)
     207            if version_tree_id.nil?
     208              raise ArgumentError, 'version_tree_id is mandatory'
     209            end
     210            @version_tree_id = version_tree_id
     211          end
     212        end
     213
    176214        class Locatable_Ref < Object_Ref
    177215          attr_reader :namespace, :type, :id, :path
     
    284322        class ISO_OID <UID
    285323
    286         end
     324        end       
    287325      end # of Identification
    288326    end # of Support
Note: See TracChangeset for help on using the changeset viewer.