Changeset 163 for ruby/trunk/lib/models/rm/common/resource.rb
- Timestamp:
- Jul 8, 2009, 11:06:17 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
ruby/trunk/lib/models/rm/common/resource.rb
r24 r163 4 4 module Common 5 5 module Resource 6 class A UTHORED_RESOURCE7 attr_reader :is_controled,:revision_history, :translations8 attr_accessor :description, : original_language6 class Authored_Resource 7 attr_reader :original_language, :translations 8 attr_accessor :description, :revision_history 9 9 10 10 def initialize(args = { }) 11 @original_language = args[:original_language] if args[:original_language] 12 @translations = args[:translations] if args[:translations] 13 @revision_history = args[:revision_history] ? args[:revision_history] : nil 11 self.original_language = args[:original_language] 12 self.translations = args[:translations] 13 self.revision_history = args[:revision_history] 14 self.description = args[:description] 15 end 14 16 15 unless @revision_history 16 @is_controled = false 17 else 18 @is_controled = true 17 def original_language=(original_language) 18 if original_language.nil? 19 raise ArgumentError, 'original language is mandatory' 19 20 end 21 @original_language = original_language 22 end 20 23 21 @original_language = args[:original_language] if args[:original_language] 22 @translations = args[:translations] if args[:translations] 23 @description = args[:description] if args[:description] 24 def translations=(translations) 25 if !translations.nil? && translations.empty? 26 raise ArgumentError, 'translation is empty' 27 end 28 @translations = translations 24 29 end 25 30 … … 28 33 end 29 34 30 def language _available31 languages = Set.new32 if @translations != nil33 languages << @translations.keys 34 end35 languages << @original_language.code_string35 def languages_available 36 return Set.new(@translations.keys) 37 end 38 39 def is_controlled? 40 return !@revision_history.nil? 36 41 end 37 42 end 38 43 39 class T RANSLATION_DETAILS40 attr_ accessor :language, :author, :accreditation41 attr_accessor : other_details, :terminology_service44 class Translation_Details 45 attr_reader :language, :author 46 attr_accessor :accreditation, :other_details 42 47 43 def initialize(language, author, accreditation, other_details, 44 terminology_service) 48 def initialize(args = {}) 49 self.language = args[:language] 50 self.author = args[:author] 51 self.accreditation = args[:accreditation] 52 self.other_details = args[:other_details] 53 end 54 55 def language=(language) 56 raise ArgumentError, 'language is mandatory' if language.nil? 45 57 @language = language 58 end 59 60 def author=(author) 61 raise ArgumentError, 'author is mandatory' if author.nil? 46 62 @author = author 47 @accreditation = accreditation48 @other_details = other_details49 @terminology_service = terminology_service50 63 end 51 64 end 52 end 65 66 class Resource_Description 67 attr_reader :original_author, :lifecycle_state, :details 68 attr_accessor :other_contributors, :resource_package_uri, 69 :other_details, :parent_resource 70 71 def initialize(args = {}) 72 self.original_author = args[:original_author] 73 self.lifecycle_state = args[:lifecycle_state] 74 self.details = args[:details] 75 self.other_contributors = args[:other_contributors] 76 self.resource_package_uri = args[:resource_package_uri] 77 self.other_details = args[:other_details] 78 self.parent_resource = args[:parent_resource] 79 end 80 81 def original_author=(original_author) 82 if original_author.nil? || original_author.empty? 83 raise ArgumentError, 'original_author is mandatory' 84 end 85 @original_author = original_author 86 end 87 88 def lifecycle_state=(lifecycle_state) 89 if lifecycle_state.nil? || lifecycle_state.empty? 90 raise ArgumentError, 'lifecycle_state is malformatted' 91 end 92 @lifecycle_state = lifecycle_state 93 end 94 95 def details=(details) 96 if details.nil? || details.empty? 97 raise ArgumentError, 'nil or empty details' 98 end 99 @details = details 100 end 101 end 102 103 class Resource_Description_Item 104 attr_reader :language, :purpose, :use, :misuse, :copyright 105 attr_accessor :keywords, :original_resource_uri, :other_details 106 107 def initialize(args = { }) 108 self.language = args[:language] 109 self.purpose = args[:purpose] 110 self.keywords = args[:keywords] 111 self.use = args[:use] 112 self.misuse = args[:misuse] 113 self.copyright = args[:copyright] 114 self.original_resource_uri = args[:original_resource_uri] 115 self.other_details = args[:other_details] 116 end 117 118 def language=(language) 119 raise ArgumentError, 'language is mandatory' if language.nil? 120 @language = language 121 end 122 123 def purpose=(purpose) 124 if purpose.nil? || purpose.empty? 125 raise ArgumentError, 'purpose is mandatory' 126 end 127 @purpose = purpose 128 end 129 130 def use=(use) 131 if !use.nil? && use.empty? 132 raise ArgumentError, 'use is invalid' 133 end 134 @use = use 135 end 136 137 def misuse=(misuse) 138 if !misuse.nil? && misuse.empty? 139 raise ArgumentError, 'misuse is invalid' 140 end 141 @misuse = misuse 142 end 143 144 def copyright=(copyright) 145 if !copyright.nil? && copyright.empty? 146 raise ArgumentError, 'copyright is invalid' 147 end 148 @copyright = copyright 149 end 150 end 151 end # end of Resouce 53 152 end # end of module Common 54 153 end # end of module RM
Note:
See TracChangeset
for help on using the changeset viewer.