[4] | 1 | require 'set'
|
---|
| 2 | module OpenEHR
|
---|
| 3 | module RM
|
---|
| 4 | module Common
|
---|
| 5 | module Resource
|
---|
| 6 | class Authored_Resource
|
---|
| 7 | attr_reader :is_controled
|
---|
| 8 | attr_reader :revision_history, :translations
|
---|
| 9 | attr_accessor :description, :original_language
|
---|
| 10 | def initialize(original_language, translations,
|
---|
| 11 | description, revision_history = nil)
|
---|
| 12 | if original_language == nil
|
---|
| 13 | raise Exception.new("original language nil")
|
---|
| 14 | end
|
---|
| 15 | if translations == nil
|
---|
| 16 | raise Exception.new("translation empty")
|
---|
| 17 | end
|
---|
| 18 | if revision_history == nil
|
---|
| 19 | is_controled = false
|
---|
| 20 | else
|
---|
| 21 | is_controled = true
|
---|
| 22 | end
|
---|
| 23 | @original_language = original_language
|
---|
| 24 | @translations = translations
|
---|
| 25 | @description = description
|
---|
| 26 | @revision_history = revision_history
|
---|
| 27 | end
|
---|
| 28 | def current_version
|
---|
| 29 | @revision_history.most_recent_revision
|
---|
| 30 | end
|
---|
| 31 | def language_available
|
---|
| 32 | languages = Set.new
|
---|
| 33 | if translations != nil
|
---|
| 34 | languages << translations.keys
|
---|
| 35 | end
|
---|
| 36 | languages << original_language.code_string
|
---|
| 37 | end
|
---|
| 38 | end
|
---|
| 39 | class Translation_Details
|
---|
| 40 | attr_accessor :language, :author, :accreditation
|
---|
| 41 | attr_accessor :other_details, :terminology_service
|
---|
| 42 | def initialize(language, author, accreditation, other_details,
|
---|
| 43 | terminology_service)
|
---|
| 44 | @language = language
|
---|
| 45 | @author = author
|
---|
| 46 | @accreditation = accreditation
|
---|
| 47 | @other_details = other_details
|
---|
| 48 | @terminology_service = terminology_service
|
---|
| 49 | end
|
---|
| 50 | end
|
---|
| 51 | end
|
---|
| 52 | end # end of module Common
|
---|
| 53 | end # end of module RM
|
---|
| 54 | end # end of module OpenEHR
|
---|