lib/sanultari/config/store.rb in sanultari-config-0.1.0.RC1 vs lib/sanultari/config/store.rb in sanultari-config-0.1.0

- old
+ new

@@ -1,25 +1,40 @@ +# coding: utf-8 module SanUltari class Config + # SanUltari::Config의 설정값들을 실제로 저장하기 위한 객체 + # method 기반으로 동작하므로, method 이름을 격리하기 위하여 상속받은 동적 타입을 생성하여 사용한다. + # + # @author Jeong, Jiung + # @see SanUltari::Config class Store + # 기본 인덱서 + # + # @param [String] name 실제로 저장된 값에 접근하기 위한 접근자 def [] name @values ||= {} @values[name] = SanUltari::Config.new name if @values[name] == nil @values[name] end + # 기본 인덱서 세터 + # + # @param [String] name 값을 저장할 이름. 메서드 이름으로 변경된다. + # @param [Object] value 저장될 값. 현재 테스트된 타입은 Primary types과 List, Hash에 한한다. def []= name, value @values ||= {} @values[name] = value end + # 현재 저장되어 있는 설정의 Key값 컬렉션을 반환한다. def keys return [] if @values == nil @values.keys end + # 설정값에 대해서 Getter와 Setter를 동적으로 생성하기 위한 Handler. def method_missing(method_name, *args, &block) name = method_name.to_s name.chomp!('=') self.class.instance_eval do