Sha256: 54efdf1a5485437b07e0a8baf685158b149eeacda3d5ca43478d2de8959734de

Contents?: true

Size: 1.31 KB

Versions: 2

Compression:

Stored size: 1.31 KB

Contents

# encoding: UTF-8
module Axlsx
  # An default content part. These parts are automatically created by for you based on the content of your package.
  class Default

    # The extension of the content type.
    # @return [String]
    attr_reader :Extension

    # The type of content.
    # @return [String] 
    attr_reader :ContentType

    #Creates a new Default object
    # @option options [String] Extension
    # @option options [String] ContentType
    # @raise [ArgumentError] An argument error is raised if both Extension and ContentType are not specified.
    def initialize(options={})
      raise ArgumentError, "Extension and ContentType are required" unless options[:Extension] && options[:ContentType]
      options.each do |o|
        self.send("#{o[0]}=", o[1]) if self.respond_to? "#{o[0]}="
      end      
    end
    # Sets the file extension for this content type.
    def Extension=(v) Axlsx::validate_string v; @Extension = v end

    # Sets the content type
    # @see Axlsx#validate_content_type
    def ContentType=(v) Axlsx::validate_content_type v; @ContentType = v end

    # Serializes the object to xml
    # @param [Nokogiri::XML::Builder] xml The document builder instance this objects xml will be added to.
    # @return [String]
    def to_xml(xml)
      xml.Default(self.instance_values)
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
axlsx-1.0.18 lib/axlsx/content_type/default.rb
axlsx-1.0.17 lib/axlsx/content_type/default.rb