Top Level Namespace

Defined Under Namespace

Modules: Seasar Classes: Method

Instance Method Summary collapse

Instance Method Details

#s2appObject

  • args

    • none

  • return

    • Seasar::Container::S2ApplicationContext



27
28
29
# File 'lib/seasar/container.rb', line 27

def s2app
  return Seasar::Container::S2ApplicationContext.instance
end

#s2aspect(option = {}, &procedure) ⇒ Object

  • args

    1. Hash option

      • :pattern

      • :pointcut

      • :interceptor

    2. Proc option interceptor block

  • return

    • nil



83
84
85
86
87
88
89
90
91
92
93
94
95
96
# File 'lib/seasar/container.rb', line 83

def s2aspect(option = {}, &procedure)
  clazz = option[:class]
  if clazz.nil?
    if self.class == Class
      clazz = self
      option[:static] = true
    end
  end

  if option[:pattern].nil? && !clazz.nil?
    option[:pattern] = clazz.name
  end
  return s2app.aspect(option, &procedure)
end

#s2component(option = {}, &procedure) ⇒ Object Also known as: s2comp

  • args

    1. Hash option

      • :name

      • :class

      • :instance

      • :autobinding

      • :namespace

      • :static

    2. Proc option constructor block of component

  • return

    • nil



44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# File 'lib/seasar/container.rb', line 44

def s2component(option = {}, &procedure)
  if option[:class].nil?
    if self.class == Class
      option[:class] = self
      option[:static] = true
    else
      raise TypeError.new("class not specified.")
    end
  end

  option[:class].class_eval {
    @s2component_key = option[:name].nil? ? option[:class] : option[:name]
    @s2component_namespace = option[:namespace]
    unless option[:class].respond_to?(:instance)
      class << self
        def instance
          if @s2component_namespace.nil?
            return s2app.get(@s2component_key)
          else
            return s2app.get(@s2component_namespace).get(@s2component_key)
          end
        end
      end
    end
  }
  return s2app.register(option, &procedure)
end

#s2di(arg = nil) ⇒ Object

  • args

    • mixed arg

  • return

    • nil



104
105
106
# File 'lib/seasar/container.rb', line 104

def s2di(arg = nil)
 return :di => arg
end

#s2loggerObject

  • args

    • none

  • return

    • Logger



26
27
28
# File 'lib/seasar/log.rb', line 26

def s2logger
  return Seasar::Log::S2Logger.get
end