Class: Sbuilder::ParserFacade

Inherits:
Object
  • Object
show all
Includes:
Utils::MyLogger
Defined in:
lib/sbuilder/parser/parser_facade.rb

Constant Summary collapse

PROGNAME =
nil
DOC_DIRS =

these directories not unmustached

[ "docs", "doc" ]
GLOBALS =

TLA+ standard library symbols

%w( TRUE FALSE Cardinality assert )
SBUILDER =

Sbuilder constant symbols

%w( Nil InfrastructureServiceReturn InfrastructureServiceGetStatus 
InfrastructureServiceGetResponse InTransaction tx_running)
@@resolver =
nil

Constants included from Utils::MyLogger

Utils::MyLogger::LOGFILE

Instance Attribute Summary collapse

Construct & configure collapse

Public services collapse

Methods included from Utils::MyLogger

#getLogger, #logfile

Constructor Details

#initialize(options = {}) ⇒ ParserFacade




50
51
52
53
54
55
56
57
# File 'lib/sbuilder/parser/parser_facade.rb', line 50

def initialize( options={} )
  
  @logger = getLogger( nil, options )
  @logger.info( "#{__method__} facade created" )

  @options = options
  
end

Instance Attribute Details

#optionsObject (readonly)



29
30
31
# File 'lib/sbuilder/parser/parser_facade.rb', line 29

def options
  @options
end

Instance Method Details

#getResolver(controller, &blk) ⇒ TlaParserS::Resolver

Return an initalized, ready to use, parser resolver, possibliy from @resolver cache.

Parameters:

  • controller (Sbuilder::Controller)

    aware of render context

  • blk (Block)

    yields (false,module-entry,error) parse errors

Returns:

  • (TlaParserS::Resolver)

    parser resolver ready to use



77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/sbuilder/parser/parser_facade.rb', line 77

def getResolver( controller, &blk )
  return @@resolver if @@resolver
  
  @logger.info( "#{__method__}: create resolver start #{self.class.name}" )
  
  unmustache_dir = "#{controller.getCacheDir}/unmustache"

  # copy unmustached version for templates
  unmustache( controller, unmustache_dir )

  # init resovelver using 'unmustache_dir'
  @@resolver = initResolver( controller, unmustache_dir, options, blk )
  @logger.info( "#{__method__} create resolver - done" )      
  return @@resolver
end