Sha256: d2ecfb973348f67198abf2e51c19a9d13220c4159c106705ac1a121c02754d66

Contents?: true

Size: 1.53 KB

Versions: 20

Compression:

Stored size: 1.53 KB

Contents

require 'rbbt'
require 'rbbt/resource'
$LOAD_PATH.unshift('lib') unless $LOAD_PATH.include?('lib')

def load_file(file)
  if Array === file
    file.each{|f| load_file f }
  elsif file.exists?
    Log.info("Loading: " << file)
    load file
  end
end

def app_eval(app, file)
  if Array === file
    file.each{|f| app_eval app, f }
  elsif file.exists?
    app.class_eval do
      Log.info("Loading: " << file)
      eval file.read, nil, file
    end
  end
end

#{{{ INIT
load_file Rbbt.etc['app.d/init.rb'].find

#{{{ Workflow
workflow = Rbbt.etc['target_workflow'].read
wf = Workflow.require_workflow workflow, true

$title = wf.to_s
$class_name = class_name = wf.to_s + "REST"
$app = app = eval "class #{class_name} < Sinatra::Base; self end"

#{{{ PRE
load_file Rbbt.etc['app.d/pre.rb'].find 

app.get '/' do
  redirect to(File.join('/', wf.to_s))
end

#{{{ BASE
app_eval app, Rbbt.etc['app.d/base.rb'].find

app.add_workflow wf, :priority

#{{{ WORKFLOWS
app_eval app, Rbbt.etc['app.d/workflows.rb'].find_all

#{{{ RESOURCES
load_file Rbbt.etc['app.d/resources.rb'].find

#{{{ KNOWLEDGEBASE
load_file Rbbt.etc['app.d/knowledge_bases.rb'].find

#{{{ REQUIRES
load_file Rbbt.etc['app.d/requires.rb'].find

#{{{ ENTITIES
load_file Rbbt.etc['app.d/entities.rb'].find

#{{{ ROUTES
app_eval app, Rbbt.etc['app.d/routes.rb'].find_all

#{{{ FINDER
app_eval app, Rbbt.etc['app.d/finder.rb'].find

#{{{ POST
load_file Rbbt.etc['app.d/post.rb'].find_all

#{{{ PRELOAD
load_file Rbbt.etc['app.d/preload.rb'].find_all

#{{{ RUN
require 'rack'
use Rack::Deflater
run app

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
rbbt-util-5.20.21 share/workflow_config.ru
rbbt-util-5.20.20 share/workflow_config.ru
rbbt-util-5.20.18 share/workflow_config.ru
rbbt-util-5.20.17 share/workflow_config.ru
rbbt-util-5.20.16 share/workflow_config.ru
rbbt-util-5.20.15 share/workflow_config.ru
rbbt-util-5.20.14 share/workflow_config.ru
rbbt-util-5.20.13 share/workflow_config.ru
rbbt-util-5.20.12 share/workflow_config.ru
rbbt-util-5.20.11 share/workflow_config.ru
rbbt-util-5.20.10 share/workflow_config.ru
rbbt-util-5.20.9 share/workflow_config.ru
rbbt-util-5.20.8 share/workflow_config.ru
rbbt-util-5.20.7 share/workflow_config.ru
rbbt-util-5.20.6 share/workflow_config.ru
rbbt-util-5.20.5 share/workflow_config.ru
rbbt-util-5.20.4 share/workflow_config.ru
rbbt-util-5.20.3 share/workflow_config.ru
rbbt-util-5.20.2 share/workflow_config.ru
rbbt-util-5.20.1 share/workflow_config.ru