# class Generators::HTMLPuppetNode

### Attributes

path[R]

### Public Class Methods

new(context, html_file, prefix, options) click to toggle source
Calls superclass method

    # File lib/puppet/util/rdoc/generators/puppet_generator.rb, line 458
    def initialize(context, html_file, prefix, options)
      super(context, options)

      @html_file = html_file
      @is_module = context.is_module?
      @values    = {}

      context.viewer = self

      if options.all_one_file
        @path = context.full_name
      else
        @path = http_url(context.full_name, prefix)
      end

      AllReferences.add("NODE(#{@context.full_name})", self)
    end

### Public Instance Methods

<=>(other) click to toggle source

    # File lib/puppet/util/rdoc/generators/puppet_generator.rb, line 643
    def <=>(other)
      self.name <=> other.name
    end

build_attribute_list(section) click to toggle source

    # File lib/puppet/util/rdoc/generators/puppet_generator.rb, line 567
    def build_attribute_list(section)
      atts = @context.attributes.sort
      res = []
      atts.each do |att|
        next unless att.section == section
        if att.visibility == :public || att.visibility == :protected || @options.show_all
          entry = {
            "name"   => CGI.escapeHTML(att.name),
            "rw"     => att.rw,
            "a_desc" => markup(att.comment, true)
          }
          unless att.visibility == :public || att.visibility == :protected
            entry["rw"] << "-"
          end
          res << entry
        end
      end
      res
    end

build_child_list(context) click to toggle source

    # File lib/puppet/util/rdoc/generators/puppet_generator.rb, line 639
    def build_child_list(context)
      build_referenced_list(context.childs)
    end

build_realize_list(context) click to toggle source

    # File lib/puppet/util/rdoc/generators/puppet_generator.rb, line 635
    def build_realize_list(context)
      build_referenced_list(context.realizes)
    end

build_require_list(context) click to toggle source

    # File lib/puppet/util/rdoc/generators/puppet_generator.rb, line 631
    def build_require_list(context)
      build_referenced_list(context.requires)
    end

class_attribute_values() click to toggle source

    # File lib/puppet/util/rdoc/generators/puppet_generator.rb, line 587
    def class_attribute_values
      h_name = CGI.escapeHTML(name)

      @values["classmod"]  = "Node"
      @values["title"]     = CGI.escapeHTML("#{@values['classmod']}: #{h_name}")

      c = @context
      c = c.parent while c and !c.diagram

      @values["diagram"] = diagram_reference(c.diagram) if c && c.diagram

      @values["full_name"] = h_name

      parent_class = @context.superclass

      if parent_class
        @values["parent"] = CGI.escapeHTML(parent_class)

        if parent_name
          lookup = parent_name + "::#{parent_class}"
        else
          lookup = parent_class
        end
        lookup = "NODE(#{lookup})"
        parent_url = AllReferences[lookup] || AllReferences[parent_class]
        @values["par_url"] = aref_to(parent_url.path) if parent_url and parent_url.document_self
      end

      files = []
      @context.in_files.each do |f|
        res = {}
        full_path = CGI.escapeHTML(f.file_absolute_name)

        res["full_path"]     = full_path
        res["full_path_url"] = aref_to(f.viewer.path) if f.document_self

        res["cvsurl"] = cvs_url( @options.webcvs, full_path ) if @options.webcvs

        files << res
      end

      @values['infiles'] = files
    end

http_url(full_name, prefix) click to toggle source

return the relative file name to store this class in, which is also its url

    # File lib/puppet/util/rdoc/generators/puppet_generator.rb, line 482
    def http_url(full_name, prefix)
      path = full_name.dup
      path.gsub!(/<<\s*(\w*)/) { "from-#$1" } if path['<<']
      File.join(prefix, path.split("::").collect { |p| Digest::MD5.hexdigest(p) }) + ".html"
    end

index_name() click to toggle source

    # File lib/puppet/util/rdoc/generators/puppet_generator.rb, line 492
    def index_name
      name
    end

name() click to toggle source

    # File lib/puppet/util/rdoc/generators/puppet_generator.rb, line 476
    def name
      @context.name
    end

parent_name() click to toggle source

    # File lib/puppet/util/rdoc/generators/puppet_generator.rb, line 488
    def parent_name
      @context.parent.full_name
    end

value_hash() click to toggle source

    # File lib/puppet/util/rdoc/generators/puppet_generator.rb, line 507
    def value_hash
      class_attribute_values
      add_table_of_sections

      @values["charset"] = @options.charset
      @values["style_url"] = style_url(path, @options.css)

      d = markup(@context.comment)
      @values["description"] = d unless d.empty?

      ml = build_method_summary_list
      @values["methods"] = ml unless ml.empty?

      rl = build_resource_summary_list
      @values["resources"] = rl unless rl.empty?

      il = build_include_list(@context)
      @values["includes"] = il unless il.empty?

      rl = build_require_list(@context)
      @values["requires"] = rl unless rl.empty?

      rl = build_realize_list(@context)
      @values["realizes"] = rl unless rl.empty?

      cl = build_child_list(@context)
      @values["childs"] = cl unless cl.empty?

      @values["sections"] = @context.sections.map do |section|

        secdata = {
          "sectitle" => section.title,
          "secsequence" => section.sequence,
          "seccomment" => markup(section.comment)
        }

        al = build_alias_summary_list(section)
        secdata["aliases"] = al unless al.empty?

        co = build_constants_summary_list(section)
        secdata["constants"] = co unless co.empty?

        al = build_attribute_list(section)
        secdata["attributes"] = al unless al.empty?

        cl = build_class_list(0, @context, section)
        secdata["classlist"] = cl unless cl.empty?

        mdl = build_method_detail_list(section)
        secdata["method_list"] = mdl unless mdl.empty?

        rdl = build_resource_detail_list(section)
        secdata["resource_list"] = rdl unless rdl.empty?

        secdata
      end

      @values
    end

write_on(f) click to toggle source

    # File lib/puppet/util/rdoc/generators/puppet_generator.rb, line 496
    def write_on(f)
      value_hash

        template = TemplatePage.new(
          RDoc::Page::BODYINC,
            RDoc::Page::NODE_PAGE,

            RDoc::Page::METHOD_LIST)
      template.write_html_on(f, @values)
    end