In Files

Parent

Log4r::MDC

See log4r/MDC.rb

Public Class Methods

check_thread_instance() click to toggle source

(Not documented)

# File log4r/MDC.rb, line 19
    def self.check_thread_instance()
      # need to interlock here, so that if
      # another thread is entering this section
      # of code before the main thread does,
      # then the main thread copy of the MDC
      # is setup before then attempting to clone
      # it off
      if ( Thread.current[MDCNAME] == nil ) then
        $globalMDCLock.synchronize do 
          if ( Thread.main[MDCNAME] == nil ) then
            Thread.main[MDCNAME] = Hash.new
          end
          if ( Thread.current != Thread.main ) then
            Thread.current[MDCNAME] = Hash.new
            Thread.main[MDCNAME].each{ |k,v| Thread.current[MDCNAME][k] = v }
          end
        end
      end
    end
get( a_key ) click to toggle source

(Not documented)

# File log4r/MDC.rb, line 39
    def self.get( a_key )
      self.check_thread_instance()
      Thread.current[MDCNAME].fetch(a_key, "");
    end
get_context() click to toggle source

(Not documented)

# File log4r/MDC.rb, line 44
    def self.get_context()
      self.check_thread_instance()
      return Thread.current[MDCNAME].clone
    end
put( a_key, a_value ) click to toggle source

(Not documented)

# File log4r/MDC.rb, line 49
    def self.put( a_key, a_value )
      self.check_thread_instance()
      Thread.current[MDCNAME][a_key] = a_value
    end
remove( a_key ) click to toggle source

(Not documented)

# File log4r/MDC.rb, line 54
    def self.remove( a_key )
      self.check_thread_instance()
      Thread.current[MDCNAME].delete( a_key )
    end

Disabled; run with --debug to generate this.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.