Sha256: dda085d563f95a1fa99d01ffd38ccfdb688656112ef5bca0ffd809a9e7fa2f47
Contents?: true
Size: 1.73 KB
Versions: 1
Compression:
Stored size: 1.73 KB
Contents
require "rexml/element" module RXaal class Metadata < TopLevelElem include MetadataMod @@DEFAULT_LANG = "en-us" def initialize(doc) super(doc) @@DEFAULT_LANG.freeze @titles = Hash.new @subjects = Hash.new @keywords = Hash.new @descs = Hash.new @serialize = false end serialize_accessor_of_class String, :auth_fname, :auth_lname, :auth_affil, :auth_email, :app_name, :app_version # we check if its actually a uri attr_reader :app_homepage def app_homepage=(uri) if uri =~ /(^$)|(^(http|https):\/\/[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5}(([0-9]{1,5})?\/.*)?$)/ix @app_homepage = uri @serialize = true end end def add_title(subject) add_title(title, @@DEFAULT_LANG) end def add_title(title, lang) @titles[lang] = title @serialize = true end def add_subject(subject) add_subject(subject, @@DEFAULT_LANG) end def add_subject(title, lang) @subjects[lang] = subject @serialize = true end def add_keyword(keyword) add_keyword(keyword, @@DEFAULT_LANG) end def add_keyword(title, lang) @keywords[lang] = keyword @serialize = true end def add_desc(desc) add_desc(desc, @@DEFAULT_LANG) end def add_desc(title, lang) @descs[lang] = desc @serialize = true end def xaal_serialize(parent) if (serialize?) metadata = Element.new "metadata" parent.add metadata end end private def serialize? return @serialize end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
RXAAL-0.0.1 | lib/metadata.rb |