Sha256: 917a2d8bd5dc85b84f9062103a5ef7cb7eb6302c0baa59d36e1e686b57bf4335
Contents?: true
Size: 949 Bytes
Versions: 1
Compression:
Stored size: 949 Bytes
Contents
require 'xml/mapping_extensions' module Datacite module Mapping # Rights information for the {Resource} class Rights include XML::Mapping # @!attribute [rw] uri # @return [URI, nil] a URI for the license. Optional. uri_node :uri, '@rightsURI', default_value: nil # @!attribute [rw] value # @return [String] the rights statement. Cannot be empty or nil. text_node :value, 'text()' # Initializes a new {Rights} object # # @param uri [URI, nil] a URI for the license. Optional. # @param value [String] the rights statement. Cannot be empty or nil. def initialize(uri: nil, value:) self.uri = uri self.value = value end maybe_alias :_value=, :value= private :_value= def value=(v) fail ArgumentError, 'Value cannot be empty or nil' unless v && !v.empty? self._value = v.strip end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
datacite-mapping-0.1.6 | lib/datacite/mapping/rights.rb |