Class: Lono::Jade::Registry

Inherits:
Object
  • Object
show all
Defined in:
lib/lono/jade/registry.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(args, options) ⇒ Registry

Returns a new instance of Registry.



5
6
7
# File 'lib/lono/jade/registry.rb', line 5

def initialize(args, options)
  @args, @options = args, options
end

Instance Attribute Details

#argsObject (readonly)

Returns the value of attribute args.



3
4
5
# File 'lib/lono/jade/registry.rb', line 3

def args
  @args
end

#caller_lineObject

Returns the value of attribute caller_line.



4
5
6
# File 'lib/lono/jade/registry.rb', line 4

def caller_line
  @caller_line
end

#depends_onObject

Returns the value of attribute depends_on.



4
5
6
# File 'lib/lono/jade/registry.rb', line 4

def depends_on
  @depends_on
end

#optionsObject (readonly)

Returns the value of attribute options.



3
4
5
# File 'lib/lono/jade/registry.rb', line 3

def options
  @options
end

#parentObject

Returns the value of attribute parent.



4
5
6
# File 'lib/lono/jade/registry.rb', line 4

def parent
  @parent
end

Class Method Details

.determine_jade_type(caller) ⇒ Object



49
50
51
52
53
54
55
# File 'lib/lono/jade/registry.rb', line 49

def determine_jade_type(caller)
  if caller.detect { |l| l =~ %r{config/configsets.rb} }
    'blueprint/configset'
  else
    'configset'
  end
end

.register_configset(args, options) ⇒ Object



41
42
43
44
45
46
47
# File 'lib/lono/jade/registry.rb', line 41

def register_configset(args, options)
  registry = new(args, options)
  jade_type = determine_jade_type(caller)
  jade = Lono::Jade.new(registry.name, jade_type, registry)
  self.tracked_configsets << jade
  registry
end

.register_extension(args, options) ⇒ Object



57
58
59
60
61
# File 'lib/lono/jade/registry.rb', line 57

def register_extension(args, options)
  registry = new(args, options)
  self.tracked_extensions << registry
  registry
end

Instance Method Details

#gem_optionsObject



13
14
15
16
17
18
19
20
# File 'lib/lono/jade/registry.rb', line 13

def gem_options
  options = @options.dup
  # Delete special options that is not supported by bundler Gemfile
  options.delete(:repo)
  options.delete(:resource) # configset
  options.delete(:vars) # configset
  options
end

#nameObject



9
10
11
# File 'lib/lono/jade/registry.rb', line 9

def name
  @args.first
end

#resourceObject

configset



23
24
25
# File 'lib/lono/jade/registry.rb', line 23

def resource
  @options[:resource]
end

#resource=(v) ⇒ Object



27
28
29
# File 'lib/lono/jade/registry.rb', line 27

def resource=(v)
  @options[:resource] = v
end

#varsObject



31
32
33
# File 'lib/lono/jade/registry.rb', line 31

def vars
  options[:vars] || {}
end