nucleon 0.2.2 → 0.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -7
- data/.gitignore +50 -0
- data/ARCHITECTURE.rdoc +12 -11
- data/Gemfile +7 -11
- data/Gemfile.lock +47 -70
- data/Rakefile +22 -20
- data/TODO.rdoc +1 -1
- data/VERSION +1 -1
- data/bin/nucleon +16 -15
- data/lib/core/codes.rb +65 -38
- data/lib/core/config.rb +774 -153
- data/lib/core/config/collection.rb +134 -25
- data/lib/core/config/options.rb +160 -36
- data/lib/core/core.rb +207 -45
- data/lib/core/environment.rb +626 -206
- data/lib/core/facade.rb +211 -185
- data/lib/core/gems.rb +60 -44
- data/lib/core/manager.rb +587 -237
- data/lib/core/mixin/colors.rb +66 -36
- data/lib/core/mixin/config/collection.rb +58 -23
- data/lib/core/mixin/config/options.rb +67 -24
- data/lib/core/mixin/macro/object_interface.rb +129 -135
- data/lib/core/mixin/macro/plugin_interface.rb +118 -124
- data/lib/core/mixin/settings.rb +7 -13
- data/lib/core/mixin/sub_config.rb +37 -43
- data/lib/core/mod/hash.rb +31 -10
- data/lib/core/plugin/action.rb +274 -238
- data/lib/core/plugin/base.rb +140 -132
- data/lib/core/plugin/project.rb +316 -311
- data/lib/core/util/cli.rb +146 -146
- data/lib/core/util/console.rb +567 -124
- data/lib/core/util/data.rb +654 -139
- data/lib/core/util/logger.rb +255 -66
- data/lib/nucleon.rb +6 -8
- data/lib/nucleon_base.rb +364 -106
- data/nucleon.gemspec +40 -389
- data/spec/core/codes_spec.rb +209 -0
- data/spec/core/config_spec.rb +810 -0
- data/spec/core/core_spec.rb +185 -0
- data/spec/core/environment_spec.rb +148 -0
- data/spec/core/util/console_spec.rb +254 -446
- data/spec/nucleon/test.rb +59 -0
- data/spec/nucleon/test/first.rb +28 -0
- data/spec/nucleon/test/second.rb +28 -0
- data/spec/nucleon_codes.rb +98 -0
- data/spec/nucleon_config.rb +523 -0
- data/spec/nucleon_plugin.rb +439 -0
- data/spec/nucleon_test.rb +34 -0
- data/spec/spec_helper.rb +6 -4
- metadata +157 -615
- data/.document +0 -5
- data/rdoc/site/0.1.19/ARCHITECTURE_rdoc.html +0 -634
- data/rdoc/site/0.1.19/Hash.html +0 -347
- data/rdoc/site/0.1.19/Kernel.html +0 -413
- data/rdoc/site/0.1.19/Nucleon.html +0 -570
- data/rdoc/site/0.1.19/Nucleon/Action.html +0 -280
- data/rdoc/site/0.1.19/Nucleon/Action/Add.html +0 -458
- data/rdoc/site/0.1.19/Nucleon/Action/Create.html +0 -415
- data/rdoc/site/0.1.19/Nucleon/Action/Extract.html +0 -413
- data/rdoc/site/0.1.19/Nucleon/Action/Remove.html +0 -461
- data/rdoc/site/0.1.19/Nucleon/Action/Save.html +0 -434
- data/rdoc/site/0.1.19/Nucleon/Action/Update.html +0 -381
- data/rdoc/site/0.1.19/Nucleon/Codes.html +0 -563
- data/rdoc/site/0.1.19/Nucleon/Command.html +0 -275
- data/rdoc/site/0.1.19/Nucleon/Command/Bash.html +0 -544
- data/rdoc/site/0.1.19/Nucleon/Config.html +0 -1623
- data/rdoc/site/0.1.19/Nucleon/Config/Collection.html +0 -509
- data/rdoc/site/0.1.19/Nucleon/Config/Options.html +0 -489
- data/rdoc/site/0.1.19/Nucleon/Core.html +0 -635
- data/rdoc/site/0.1.19/Nucleon/Errors.html +0 -275
- data/rdoc/site/0.1.19/Nucleon/Errors/BatchError.html +0 -281
- data/rdoc/site/0.1.19/Nucleon/Errors/NucleonError.html +0 -657
- data/rdoc/site/0.1.19/Nucleon/Errors/SSHUnavailable.html +0 -281
- data/rdoc/site/0.1.19/Nucleon/Event.html +0 -275
- data/rdoc/site/0.1.19/Nucleon/Event/Regex.html +0 -467
- data/rdoc/site/0.1.19/Nucleon/Facade.html +0 -2336
- data/rdoc/site/0.1.19/Nucleon/Gems.html +0 -635
- data/rdoc/site/0.1.19/Nucleon/Manager.html +0 -1828
- data/rdoc/site/0.1.19/Nucleon/Mixin.html +0 -284
- data/rdoc/site/0.1.19/Nucleon/Mixin/Action.html +0 -277
- data/rdoc/site/0.1.19/Nucleon/Mixin/Action/Commit.html +0 -381
- data/rdoc/site/0.1.19/Nucleon/Mixin/Action/Project.html +0 -395
- data/rdoc/site/0.1.19/Nucleon/Mixin/Action/Push.html +0 -371
- data/rdoc/site/0.1.19/Nucleon/Mixin/Colors.html +0 -545
- data/rdoc/site/0.1.19/Nucleon/Mixin/ConfigCollection.html +0 -481
- data/rdoc/site/0.1.19/Nucleon/Mixin/ConfigOptions.html +0 -449
- data/rdoc/site/0.1.19/Nucleon/Mixin/Macro.html +0 -276
- data/rdoc/site/0.1.19/Nucleon/Mixin/Macro/ObjectInterface.html +0 -695
- data/rdoc/site/0.1.19/Nucleon/Mixin/Macro/PluginInterface.html +0 -682
- data/rdoc/site/0.1.19/Nucleon/Mixin/Settings.html +0 -481
- data/rdoc/site/0.1.19/Nucleon/Mixin/SubConfig.html +0 -887
- data/rdoc/site/0.1.19/Nucleon/Parallel.html +0 -325
- data/rdoc/site/0.1.19/Nucleon/Parallel/ClassMethods.html +0 -325
- data/rdoc/site/0.1.19/Nucleon/Parallel/InstanceMethods.html +0 -334
- data/rdoc/site/0.1.19/Nucleon/Plugin.html +0 -282
- data/rdoc/site/0.1.19/Nucleon/Plugin/Action.html +0 -1368
- data/rdoc/site/0.1.19/Nucleon/Plugin/Action/Option.html +0 -459
- data/rdoc/site/0.1.19/Nucleon/Plugin/Base.html +0 -1737
- data/rdoc/site/0.1.19/Nucleon/Plugin/Command.html +0 -721
- data/rdoc/site/0.1.19/Nucleon/Plugin/Event.html +0 -442
- data/rdoc/site/0.1.19/Nucleon/Plugin/Extension.html +0 -281
- data/rdoc/site/0.1.19/Nucleon/Plugin/Project.html +0 -2864
- data/rdoc/site/0.1.19/Nucleon/Plugin/Template.html +0 -476
- data/rdoc/site/0.1.19/Nucleon/Plugin/Translator.html +0 -371
- data/rdoc/site/0.1.19/Nucleon/Project.html +0 -276
- data/rdoc/site/0.1.19/Nucleon/Project/Git.html +0 -1801
- data/rdoc/site/0.1.19/Nucleon/Project/Github.html +0 -549
- data/rdoc/site/0.1.19/Nucleon/Template.html +0 -277
- data/rdoc/site/0.1.19/Nucleon/Template/Json.html +0 -329
- data/rdoc/site/0.1.19/Nucleon/Template/Wrapper.html +0 -329
- data/rdoc/site/0.1.19/Nucleon/Template/Yaml.html +0 -329
- data/rdoc/site/0.1.19/Nucleon/Translator.html +0 -276
- data/rdoc/site/0.1.19/Nucleon/Translator/Json.html +0 -366
- data/rdoc/site/0.1.19/Nucleon/Translator/Yaml.html +0 -366
- data/rdoc/site/0.1.19/Nucleon/Util.html +0 -285
- data/rdoc/site/0.1.19/Nucleon/Util/CLI.html +0 -388
- data/rdoc/site/0.1.19/Nucleon/Util/CLI/Parser.html +0 -1183
- data/rdoc/site/0.1.19/Nucleon/Util/Cache.html +0 -780
- data/rdoc/site/0.1.19/Nucleon/Util/Console.html +0 -1294
- data/rdoc/site/0.1.19/Nucleon/Util/Data.html +0 -1399
- data/rdoc/site/0.1.19/Nucleon/Util/Disk.html +0 -522
- data/rdoc/site/0.1.19/Nucleon/Util/Git.html +0 -361
- data/rdoc/site/0.1.19/Nucleon/Util/Liquid.html +0 -365
- data/rdoc/site/0.1.19/Nucleon/Util/Logger.html +0 -806
- data/rdoc/site/0.1.19/Nucleon/Util/Package.html +0 -558
- data/rdoc/site/0.1.19/Nucleon/Util/SSH.html +0 -910
- data/rdoc/site/0.1.19/Nucleon/Util/SSH/Keypair.html +0 -453
- data/rdoc/site/0.1.19/Nucleon/Util/Shell.html +0 -686
- data/rdoc/site/0.1.19/Nucleon/Util/Shell/Result.html +0 -497
- data/rdoc/site/0.1.19/README_rdoc.html +0 -312
- data/rdoc/site/0.1.19/TODO_rdoc.html +0 -267
- data/rdoc/site/0.1.19/created.rid +0 -60
- data/rdoc/site/0.1.19/images/add.png +0 -0
- data/rdoc/site/0.1.19/images/brick.png +0 -0
- data/rdoc/site/0.1.19/images/brick_link.png +0 -0
- data/rdoc/site/0.1.19/images/bug.png +0 -0
- data/rdoc/site/0.1.19/images/bullet_black.png +0 -0
- data/rdoc/site/0.1.19/images/bullet_toggle_minus.png +0 -0
- data/rdoc/site/0.1.19/images/bullet_toggle_plus.png +0 -0
- data/rdoc/site/0.1.19/images/date.png +0 -0
- data/rdoc/site/0.1.19/images/delete.png +0 -0
- data/rdoc/site/0.1.19/images/find.png +0 -0
- data/rdoc/site/0.1.19/images/loadingAnimation.gif +0 -0
- data/rdoc/site/0.1.19/images/macFFBgHack.png +0 -0
- data/rdoc/site/0.1.19/images/package.png +0 -0
- data/rdoc/site/0.1.19/images/page_green.png +0 -0
- data/rdoc/site/0.1.19/images/page_white_text.png +0 -0
- data/rdoc/site/0.1.19/images/page_white_width.png +0 -0
- data/rdoc/site/0.1.19/images/plugin.png +0 -0
- data/rdoc/site/0.1.19/images/ruby.png +0 -0
- data/rdoc/site/0.1.19/images/tag_blue.png +0 -0
- data/rdoc/site/0.1.19/images/tag_green.png +0 -0
- data/rdoc/site/0.1.19/images/transparent.png +0 -0
- data/rdoc/site/0.1.19/images/wrench.png +0 -0
- data/rdoc/site/0.1.19/images/wrench_orange.png +0 -0
- data/rdoc/site/0.1.19/images/zoom.png +0 -0
- data/rdoc/site/0.1.19/index.html +0 -311
- data/rdoc/site/0.1.19/js/darkfish.js +0 -155
- data/rdoc/site/0.1.19/js/jquery.js +0 -18
- data/rdoc/site/0.1.19/js/navigation.js +0 -142
- data/rdoc/site/0.1.19/js/search.js +0 -94
- data/rdoc/site/0.1.19/js/search_index.js +0 -1
- data/rdoc/site/0.1.19/js/searcher.js +0 -228
- data/rdoc/site/0.1.19/rdoc.css +0 -543
- data/rdoc/site/0.1.19/table_of_contents.html +0 -1541
- data/rdoc/site/0.2.0/ARCHITECTURE_rdoc.html +0 -638
- data/rdoc/site/0.2.0/Hash.html +0 -351
- data/rdoc/site/0.2.0/Kernel.html +0 -416
- data/rdoc/site/0.2.0/Nucleon.html +0 -607
- data/rdoc/site/0.2.0/Nucleon/Action.html +0 -284
- data/rdoc/site/0.2.0/Nucleon/Action/Extract.html +0 -455
- data/rdoc/site/0.2.0/Nucleon/Action/Project.html +0 -283
- data/rdoc/site/0.2.0/Nucleon/Action/Project/Add.html +0 -500
- data/rdoc/site/0.2.0/Nucleon/Action/Project/Create.html +0 -457
- data/rdoc/site/0.2.0/Nucleon/Action/Project/Remove.html +0 -503
- data/rdoc/site/0.2.0/Nucleon/Action/Project/Save.html +0 -476
- data/rdoc/site/0.2.0/Nucleon/Action/Project/Update.html +0 -423
- data/rdoc/site/0.2.0/Nucleon/Codes.html +0 -567
- data/rdoc/site/0.2.0/Nucleon/Command.html +0 -279
- data/rdoc/site/0.2.0/Nucleon/Command/Bash.html +0 -548
- data/rdoc/site/0.2.0/Nucleon/Config.html +0 -1631
- data/rdoc/site/0.2.0/Nucleon/Config/Collection.html +0 -513
- data/rdoc/site/0.2.0/Nucleon/Config/Options.html +0 -493
- data/rdoc/site/0.2.0/Nucleon/Core.html +0 -639
- data/rdoc/site/0.2.0/Nucleon/Environment.html +0 -1208
- data/rdoc/site/0.2.0/Nucleon/Errors.html +0 -279
- data/rdoc/site/0.2.0/Nucleon/Errors/BatchError.html +0 -285
- data/rdoc/site/0.2.0/Nucleon/Errors/NucleonError.html +0 -661
- data/rdoc/site/0.2.0/Nucleon/Errors/SSHUnavailable.html +0 -285
- data/rdoc/site/0.2.0/Nucleon/Event.html +0 -279
- data/rdoc/site/0.2.0/Nucleon/Event/Regex.html +0 -471
- data/rdoc/site/0.2.0/Nucleon/Facade.html +0 -2409
- data/rdoc/site/0.2.0/Nucleon/Gems.html +0 -639
- data/rdoc/site/0.2.0/Nucleon/Manager.html +0 -1860
- data/rdoc/site/0.2.0/Nucleon/Mixin.html +0 -288
- data/rdoc/site/0.2.0/Nucleon/Mixin/Action.html +0 -281
- data/rdoc/site/0.2.0/Nucleon/Mixin/Action/Commit.html +0 -385
- data/rdoc/site/0.2.0/Nucleon/Mixin/Action/Project.html +0 -399
- data/rdoc/site/0.2.0/Nucleon/Mixin/Action/Push.html +0 -375
- data/rdoc/site/0.2.0/Nucleon/Mixin/Colors.html +0 -549
- data/rdoc/site/0.2.0/Nucleon/Mixin/ConfigCollection.html +0 -485
- data/rdoc/site/0.2.0/Nucleon/Mixin/ConfigOptions.html +0 -453
- data/rdoc/site/0.2.0/Nucleon/Mixin/Macro.html +0 -280
- data/rdoc/site/0.2.0/Nucleon/Mixin/Macro/ObjectInterface.html +0 -699
- data/rdoc/site/0.2.0/Nucleon/Mixin/Macro/PluginInterface.html +0 -686
- data/rdoc/site/0.2.0/Nucleon/Mixin/Settings.html +0 -485
- data/rdoc/site/0.2.0/Nucleon/Mixin/SubConfig.html +0 -891
- data/rdoc/site/0.2.0/Nucleon/Parallel.html +0 -330
- data/rdoc/site/0.2.0/Nucleon/Parallel/ClassMethods.html +0 -329
- data/rdoc/site/0.2.0/Nucleon/Parallel/InstanceMethods.html +0 -456
- data/rdoc/site/0.2.0/Nucleon/Plugin.html +0 -286
- data/rdoc/site/0.2.0/Nucleon/Plugin/Action.html +0 -1829
- data/rdoc/site/0.2.0/Nucleon/Plugin/Action/Option.html +0 -463
- data/rdoc/site/0.2.0/Nucleon/Plugin/Base.html +0 -1803
- data/rdoc/site/0.2.0/Nucleon/Plugin/Command.html +0 -725
- data/rdoc/site/0.2.0/Nucleon/Plugin/Event.html +0 -446
- data/rdoc/site/0.2.0/Nucleon/Plugin/Extension.html +0 -285
- data/rdoc/site/0.2.0/Nucleon/Plugin/Project.html +0 -2898
- data/rdoc/site/0.2.0/Nucleon/Plugin/Template.html +0 -480
- data/rdoc/site/0.2.0/Nucleon/Plugin/Translator.html +0 -375
- data/rdoc/site/0.2.0/Nucleon/Project.html +0 -280
- data/rdoc/site/0.2.0/Nucleon/Project/Git.html +0 -1805
- data/rdoc/site/0.2.0/Nucleon/Project/Github.html +0 -553
- data/rdoc/site/0.2.0/Nucleon/Template.html +0 -281
- data/rdoc/site/0.2.0/Nucleon/Template/JSON.html +0 -333
- data/rdoc/site/0.2.0/Nucleon/Template/Wrapper.html +0 -333
- data/rdoc/site/0.2.0/Nucleon/Template/YAML.html +0 -333
- data/rdoc/site/0.2.0/Nucleon/Translator.html +0 -280
- data/rdoc/site/0.2.0/Nucleon/Translator/JSON.html +0 -370
- data/rdoc/site/0.2.0/Nucleon/Translator/YAML.html +0 -370
- data/rdoc/site/0.2.0/Nucleon/Util.html +0 -289
- data/rdoc/site/0.2.0/Nucleon/Util/CLI.html +0 -392
- data/rdoc/site/0.2.0/Nucleon/Util/CLI/Parser.html +0 -1250
- data/rdoc/site/0.2.0/Nucleon/Util/Cache.html +0 -784
- data/rdoc/site/0.2.0/Nucleon/Util/Console.html +0 -1318
- data/rdoc/site/0.2.0/Nucleon/Util/Data.html +0 -1411
- data/rdoc/site/0.2.0/Nucleon/Util/Disk.html +0 -526
- data/rdoc/site/0.2.0/Nucleon/Util/Git.html +0 -365
- data/rdoc/site/0.2.0/Nucleon/Util/Liquid.html +0 -369
- data/rdoc/site/0.2.0/Nucleon/Util/Logger.html +0 -810
- data/rdoc/site/0.2.0/Nucleon/Util/Package.html +0 -562
- data/rdoc/site/0.2.0/Nucleon/Util/SSH.html +0 -1033
- data/rdoc/site/0.2.0/Nucleon/Util/SSH/Keypair.html +0 -605
- data/rdoc/site/0.2.0/Nucleon/Util/Shell.html +0 -693
- data/rdoc/site/0.2.0/Nucleon/Util/Shell/Result.html +0 -501
- data/rdoc/site/0.2.0/README_rdoc.html +0 -316
- data/rdoc/site/0.2.0/TODO_rdoc.html +0 -265
- data/rdoc/site/0.2.0/created.rid +0 -61
- data/rdoc/site/0.2.0/images/add.png +0 -0
- data/rdoc/site/0.2.0/images/brick.png +0 -0
- data/rdoc/site/0.2.0/images/brick_link.png +0 -0
- data/rdoc/site/0.2.0/images/bug.png +0 -0
- data/rdoc/site/0.2.0/images/bullet_black.png +0 -0
- data/rdoc/site/0.2.0/images/bullet_toggle_minus.png +0 -0
- data/rdoc/site/0.2.0/images/bullet_toggle_plus.png +0 -0
- data/rdoc/site/0.2.0/images/date.png +0 -0
- data/rdoc/site/0.2.0/images/delete.png +0 -0
- data/rdoc/site/0.2.0/images/find.png +0 -0
- data/rdoc/site/0.2.0/images/loadingAnimation.gif +0 -0
- data/rdoc/site/0.2.0/images/macFFBgHack.png +0 -0
- data/rdoc/site/0.2.0/images/package.png +0 -0
- data/rdoc/site/0.2.0/images/page_green.png +0 -0
- data/rdoc/site/0.2.0/images/page_white_text.png +0 -0
- data/rdoc/site/0.2.0/images/page_white_width.png +0 -0
- data/rdoc/site/0.2.0/images/plugin.png +0 -0
- data/rdoc/site/0.2.0/images/ruby.png +0 -0
- data/rdoc/site/0.2.0/images/tag_blue.png +0 -0
- data/rdoc/site/0.2.0/images/tag_green.png +0 -0
- data/rdoc/site/0.2.0/images/transparent.png +0 -0
- data/rdoc/site/0.2.0/images/wrench.png +0 -0
- data/rdoc/site/0.2.0/images/wrench_orange.png +0 -0
- data/rdoc/site/0.2.0/images/zoom.png +0 -0
- data/rdoc/site/0.2.0/index.html +0 -315
- data/rdoc/site/0.2.0/js/darkfish.js +0 -155
- data/rdoc/site/0.2.0/js/jquery.js +0 -18
- data/rdoc/site/0.2.0/js/navigation.js +0 -142
- data/rdoc/site/0.2.0/js/search.js +0 -94
- data/rdoc/site/0.2.0/js/search_index.js +0 -1
- data/rdoc/site/0.2.0/js/searcher.js +0 -228
- data/rdoc/site/0.2.0/rdoc.css +0 -543
- data/rdoc/site/0.2.0/table_of_contents.html +0 -1657
- data/rdoc/site/0.2.1/ARCHITECTURE_rdoc.html +0 -640
- data/rdoc/site/0.2.1/Hash.html +0 -353
- data/rdoc/site/0.2.1/Kernel.html +0 -420
- data/rdoc/site/0.2.1/Nucleon.html +0 -674
- data/rdoc/site/0.2.1/Nucleon/Action.html +0 -286
- data/rdoc/site/0.2.1/Nucleon/Action/Extract.html +0 -457
- data/rdoc/site/0.2.1/Nucleon/Action/Project.html +0 -285
- data/rdoc/site/0.2.1/Nucleon/Action/Project/Add.html +0 -502
- data/rdoc/site/0.2.1/Nucleon/Action/Project/Create.html +0 -459
- data/rdoc/site/0.2.1/Nucleon/Action/Project/Remove.html +0 -505
- data/rdoc/site/0.2.1/Nucleon/Action/Project/Save.html +0 -478
- data/rdoc/site/0.2.1/Nucleon/Action/Project/Update.html +0 -425
- data/rdoc/site/0.2.1/Nucleon/Codes.html +0 -569
- data/rdoc/site/0.2.1/Nucleon/Command.html +0 -281
- data/rdoc/site/0.2.1/Nucleon/Command/Bash.html +0 -550
- data/rdoc/site/0.2.1/Nucleon/Config.html +0 -1634
- data/rdoc/site/0.2.1/Nucleon/Config/Collection.html +0 -515
- data/rdoc/site/0.2.1/Nucleon/Config/Options.html +0 -495
- data/rdoc/site/0.2.1/Nucleon/Core.html +0 -641
- data/rdoc/site/0.2.1/Nucleon/Environment.html +0 -1210
- data/rdoc/site/0.2.1/Nucleon/Errors.html +0 -281
- data/rdoc/site/0.2.1/Nucleon/Errors/BatchError.html +0 -287
- data/rdoc/site/0.2.1/Nucleon/Errors/NucleonError.html +0 -663
- data/rdoc/site/0.2.1/Nucleon/Errors/SSHUnavailable.html +0 -287
- data/rdoc/site/0.2.1/Nucleon/Event.html +0 -281
- data/rdoc/site/0.2.1/Nucleon/Event/Regex.html +0 -473
- data/rdoc/site/0.2.1/Nucleon/Facade.html +0 -2452
- data/rdoc/site/0.2.1/Nucleon/Gems.html +0 -641
- data/rdoc/site/0.2.1/Nucleon/Manager.html +0 -1862
- data/rdoc/site/0.2.1/Nucleon/Mixin.html +0 -291
- data/rdoc/site/0.2.1/Nucleon/Mixin/Action.html +0 -284
- data/rdoc/site/0.2.1/Nucleon/Mixin/Action/Commit.html +0 -387
- data/rdoc/site/0.2.1/Nucleon/Mixin/Action/Project.html +0 -401
- data/rdoc/site/0.2.1/Nucleon/Mixin/Action/Push.html +0 -377
- data/rdoc/site/0.2.1/Nucleon/Mixin/Action/Registration.html +0 -575
- data/rdoc/site/0.2.1/Nucleon/Mixin/Colors.html +0 -551
- data/rdoc/site/0.2.1/Nucleon/Mixin/ConfigCollection.html +0 -487
- data/rdoc/site/0.2.1/Nucleon/Mixin/ConfigOptions.html +0 -455
- data/rdoc/site/0.2.1/Nucleon/Mixin/Macro.html +0 -282
- data/rdoc/site/0.2.1/Nucleon/Mixin/Macro/ObjectInterface.html +0 -701
- data/rdoc/site/0.2.1/Nucleon/Mixin/Macro/PluginInterface.html +0 -688
- data/rdoc/site/0.2.1/Nucleon/Mixin/Settings.html +0 -487
- data/rdoc/site/0.2.1/Nucleon/Mixin/SubConfig.html +0 -893
- data/rdoc/site/0.2.1/Nucleon/Parallel.html +0 -332
- data/rdoc/site/0.2.1/Nucleon/Parallel/ClassMethods.html +0 -331
- data/rdoc/site/0.2.1/Nucleon/Parallel/InstanceMethods.html +0 -458
- data/rdoc/site/0.2.1/Nucleon/Plugin.html +0 -288
- data/rdoc/site/0.2.1/Nucleon/Plugin/Action.html +0 -2133
- data/rdoc/site/0.2.1/Nucleon/Plugin/Action/Option.html +0 -465
- data/rdoc/site/0.2.1/Nucleon/Plugin/Base.html +0 -1988
- data/rdoc/site/0.2.1/Nucleon/Plugin/Command.html +0 -765
- data/rdoc/site/0.2.1/Nucleon/Plugin/Event.html +0 -448
- data/rdoc/site/0.2.1/Nucleon/Plugin/Extension.html +0 -287
- data/rdoc/site/0.2.1/Nucleon/Plugin/Project.html +0 -2900
- data/rdoc/site/0.2.1/Nucleon/Plugin/Template.html +0 -482
- data/rdoc/site/0.2.1/Nucleon/Plugin/Translator.html +0 -377
- data/rdoc/site/0.2.1/Nucleon/Project.html +0 -282
- data/rdoc/site/0.2.1/Nucleon/Project/Git.html +0 -1807
- data/rdoc/site/0.2.1/Nucleon/Project/Github.html +0 -555
- data/rdoc/site/0.2.1/Nucleon/Template.html +0 -283
- data/rdoc/site/0.2.1/Nucleon/Template/JSON.html +0 -335
- data/rdoc/site/0.2.1/Nucleon/Template/Wrapper.html +0 -335
- data/rdoc/site/0.2.1/Nucleon/Template/YAML.html +0 -335
- data/rdoc/site/0.2.1/Nucleon/Translator.html +0 -282
- data/rdoc/site/0.2.1/Nucleon/Translator/JSON.html +0 -372
- data/rdoc/site/0.2.1/Nucleon/Translator/YAML.html +0 -372
- data/rdoc/site/0.2.1/Nucleon/Util.html +0 -291
- data/rdoc/site/0.2.1/Nucleon/Util/CLI.html +0 -394
- data/rdoc/site/0.2.1/Nucleon/Util/CLI/Parser.html +0 -1404
- data/rdoc/site/0.2.1/Nucleon/Util/Cache.html +0 -824
- data/rdoc/site/0.2.1/Nucleon/Util/Console.html +0 -1330
- data/rdoc/site/0.2.1/Nucleon/Util/Data.html +0 -1423
- data/rdoc/site/0.2.1/Nucleon/Util/Disk.html +0 -528
- data/rdoc/site/0.2.1/Nucleon/Util/Git.html +0 -367
- data/rdoc/site/0.2.1/Nucleon/Util/Liquid.html +0 -371
- data/rdoc/site/0.2.1/Nucleon/Util/Logger.html +0 -822
- data/rdoc/site/0.2.1/Nucleon/Util/Package.html +0 -564
- data/rdoc/site/0.2.1/Nucleon/Util/SSH.html +0 -1036
- data/rdoc/site/0.2.1/Nucleon/Util/SSH/Keypair.html +0 -607
- data/rdoc/site/0.2.1/Nucleon/Util/Shell.html +0 -697
- data/rdoc/site/0.2.1/Nucleon/Util/Shell/Result.html +0 -503
- data/rdoc/site/0.2.1/README_rdoc.html +0 -318
- data/rdoc/site/0.2.1/TODO_rdoc.html +0 -267
- data/rdoc/site/0.2.1/created.rid +0 -62
- data/rdoc/site/0.2.1/images/add.png +0 -0
- data/rdoc/site/0.2.1/images/brick.png +0 -0
- data/rdoc/site/0.2.1/images/brick_link.png +0 -0
- data/rdoc/site/0.2.1/images/bug.png +0 -0
- data/rdoc/site/0.2.1/images/bullet_black.png +0 -0
- data/rdoc/site/0.2.1/images/bullet_toggle_minus.png +0 -0
- data/rdoc/site/0.2.1/images/bullet_toggle_plus.png +0 -0
- data/rdoc/site/0.2.1/images/date.png +0 -0
- data/rdoc/site/0.2.1/images/delete.png +0 -0
- data/rdoc/site/0.2.1/images/find.png +0 -0
- data/rdoc/site/0.2.1/images/loadingAnimation.gif +0 -0
- data/rdoc/site/0.2.1/images/macFFBgHack.png +0 -0
- data/rdoc/site/0.2.1/images/package.png +0 -0
- data/rdoc/site/0.2.1/images/page_green.png +0 -0
- data/rdoc/site/0.2.1/images/page_white_text.png +0 -0
- data/rdoc/site/0.2.1/images/page_white_width.png +0 -0
- data/rdoc/site/0.2.1/images/plugin.png +0 -0
- data/rdoc/site/0.2.1/images/ruby.png +0 -0
- data/rdoc/site/0.2.1/images/tag_blue.png +0 -0
- data/rdoc/site/0.2.1/images/tag_green.png +0 -0
- data/rdoc/site/0.2.1/images/transparent.png +0 -0
- data/rdoc/site/0.2.1/images/wrench.png +0 -0
- data/rdoc/site/0.2.1/images/wrench_orange.png +0 -0
- data/rdoc/site/0.2.1/images/zoom.png +0 -0
- data/rdoc/site/0.2.1/index.html +0 -317
- data/rdoc/site/0.2.1/js/darkfish.js +0 -155
- data/rdoc/site/0.2.1/js/jquery.js +0 -18
- data/rdoc/site/0.2.1/js/navigation.js +0 -142
- data/rdoc/site/0.2.1/js/search.js +0 -94
- data/rdoc/site/0.2.1/js/search_index.js +0 -1
- data/rdoc/site/0.2.1/js/searcher.js +0 -228
- data/rdoc/site/0.2.1/rdoc.css +0 -543
- data/rdoc/site/0.2.1/table_of_contents.html +0 -1718
- data/spec/coral_mock_input.rb +0 -29
- data/spec/coral_test_kernel.rb +0 -22
|
@@ -1,1828 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
|
|
3
|
-
<html>
|
|
4
|
-
<head>
|
|
5
|
-
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
|
6
|
-
|
|
7
|
-
<title>class Nucleon::Manager - nucleon 0.1.19</title>
|
|
8
|
-
|
|
9
|
-
<link type="text/css" media="screen" href="../rdoc.css" rel="stylesheet">
|
|
10
|
-
|
|
11
|
-
<script type="text/javascript">
|
|
12
|
-
var rdoc_rel_prefix = "../";
|
|
13
|
-
</script>
|
|
14
|
-
|
|
15
|
-
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
|
|
16
|
-
<script type="text/javascript" charset="utf-8" src="../js/navigation.js"></script>
|
|
17
|
-
<script type="text/javascript" charset="utf-8" src="../js/search_index.js"></script>
|
|
18
|
-
<script type="text/javascript" charset="utf-8" src="../js/search.js"></script>
|
|
19
|
-
<script type="text/javascript" charset="utf-8" src="../js/searcher.js"></script>
|
|
20
|
-
<script type="text/javascript" charset="utf-8" src="../js/darkfish.js"></script>
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
<body id="top" class="class">
|
|
24
|
-
<nav id="metadata">
|
|
25
|
-
<nav id="home-section" class="section">
|
|
26
|
-
<h3 class="section-header">
|
|
27
|
-
<a href="../index.html">Home</a>
|
|
28
|
-
<a href="../table_of_contents.html#classes">Classes</a>
|
|
29
|
-
<a href="../table_of_contents.html#methods">Methods</a>
|
|
30
|
-
</h3>
|
|
31
|
-
</nav>
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
<nav id="search-section" class="section project-section" class="initially-hidden">
|
|
35
|
-
<form action="#" method="get" accept-charset="utf-8">
|
|
36
|
-
<h3 class="section-header">
|
|
37
|
-
<input type="text" name="search" placeholder="Search" id="search-field"
|
|
38
|
-
title="Type to search, Up and Down to navigate, Enter to load">
|
|
39
|
-
</h3>
|
|
40
|
-
</form>
|
|
41
|
-
|
|
42
|
-
<ul id="search-results" class="initially-hidden"></ul>
|
|
43
|
-
</nav>
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
<div id="file-metadata">
|
|
47
|
-
<nav id="file-list-section" class="section">
|
|
48
|
-
<h3 class="section-header">Defined In</h3>
|
|
49
|
-
<ul>
|
|
50
|
-
<li>lib/core/manager.rb
|
|
51
|
-
</ul>
|
|
52
|
-
</nav>
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
</div>
|
|
56
|
-
|
|
57
|
-
<div id="class-metadata">
|
|
58
|
-
|
|
59
|
-
<nav id="parent-class-section" class="section">
|
|
60
|
-
<h3 class="section-header">Parent</h3>
|
|
61
|
-
|
|
62
|
-
<p class="link">Object
|
|
63
|
-
|
|
64
|
-
</nav>
|
|
65
|
-
|
|
66
|
-
<!-- Included Modules -->
|
|
67
|
-
<nav id="includes-section" class="section">
|
|
68
|
-
<h3 class="section-header">Included Modules</h3>
|
|
69
|
-
|
|
70
|
-
<ul class="link-list">
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
<li><a class="include" href="Parallel.html">Nucleon::Parallel</a>
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
</ul>
|
|
77
|
-
</nav>
|
|
78
|
-
|
|
79
|
-
<!-- Method Quickref -->
|
|
80
|
-
<nav id="method-list-section" class="section">
|
|
81
|
-
<h3 class="section-header">Methods</h3>
|
|
82
|
-
|
|
83
|
-
<ul class="link-list">
|
|
84
|
-
|
|
85
|
-
<li><a href="#method-c-connection">::connection</a>
|
|
86
|
-
|
|
87
|
-
<li><a href="#method-c-new">::new</a>
|
|
88
|
-
|
|
89
|
-
<li><a href="#method-i-add_build_info">#add_build_info</a>
|
|
90
|
-
|
|
91
|
-
<li><a href="#method-i-autoload">#autoload</a>
|
|
92
|
-
|
|
93
|
-
<li><a href="#method-i-check">#check</a>
|
|
94
|
-
|
|
95
|
-
<li><a href="#method-i-class_const">#class_const</a>
|
|
96
|
-
|
|
97
|
-
<li><a href="#method-i-class_name">#class_name</a>
|
|
98
|
-
|
|
99
|
-
<li><a href="#method-i-collect">#collect</a>
|
|
100
|
-
|
|
101
|
-
<li><a href="#method-i-config">#config</a>
|
|
102
|
-
|
|
103
|
-
<li><a href="#method-i-create">#create</a>
|
|
104
|
-
|
|
105
|
-
<li><a href="#method-i-define_namespace">#define_namespace</a>
|
|
106
|
-
|
|
107
|
-
<li><a href="#method-i-define_type">#define_type</a>
|
|
108
|
-
|
|
109
|
-
<li><a href="#method-i-exec">#exec</a>
|
|
110
|
-
|
|
111
|
-
<li><a href="#method-i-get">#get</a>
|
|
112
|
-
|
|
113
|
-
<li><a href="#method-i-load">#load</a>
|
|
114
|
-
|
|
115
|
-
<li><a href="#method-i-load_base">#load_base</a>
|
|
116
|
-
|
|
117
|
-
<li><a href="#method-i-load_multiple">#load_multiple</a>
|
|
118
|
-
|
|
119
|
-
<li><a href="#method-i-load_plugins">#load_plugins</a>
|
|
120
|
-
|
|
121
|
-
<li><a href="#method-i-loaded_plugins">#loaded_plugins</a>
|
|
122
|
-
|
|
123
|
-
<li><a href="#method-i-myself">#myself</a>
|
|
124
|
-
|
|
125
|
-
<li><a href="#method-i-namespaces">#namespaces</a>
|
|
126
|
-
|
|
127
|
-
<li><a href="#method-i-plugin_class">#plugin_class</a>
|
|
128
|
-
|
|
129
|
-
<li><a href="#method-i-plugins">#plugins</a>
|
|
130
|
-
|
|
131
|
-
<li><a href="#method-i-provider_class">#provider_class</a>
|
|
132
|
-
|
|
133
|
-
<li><a href="#method-i-register">#register</a>
|
|
134
|
-
|
|
135
|
-
<li><a href="#method-i-register_namespace">#register_namespace</a>
|
|
136
|
-
|
|
137
|
-
<li><a href="#method-i-register_type">#register_type</a>
|
|
138
|
-
|
|
139
|
-
<li><a href="#method-i-reload">#reload</a>
|
|
140
|
-
|
|
141
|
-
<li><a href="#method-i-remove">#remove</a>
|
|
142
|
-
|
|
143
|
-
<li><a href="#method-i-test_connection">#test_connection</a>
|
|
144
|
-
|
|
145
|
-
<li><a href="#method-i-translate">#translate</a>
|
|
146
|
-
|
|
147
|
-
<li><a href="#method-i-translate_type">#translate_type</a>
|
|
148
|
-
|
|
149
|
-
<li><a href="#method-i-type_default">#type_default</a>
|
|
150
|
-
|
|
151
|
-
<li><a href="#method-i-types">#types</a>
|
|
152
|
-
|
|
153
|
-
<li><a href="#method-i-value">#value</a>
|
|
154
|
-
|
|
155
|
-
</ul>
|
|
156
|
-
</nav>
|
|
157
|
-
|
|
158
|
-
</div>
|
|
159
|
-
|
|
160
|
-
<div id="project-metadata">
|
|
161
|
-
<nav id="fileindex-section" class="section project-section">
|
|
162
|
-
<h3 class="section-header">Pages</h3>
|
|
163
|
-
|
|
164
|
-
<ul>
|
|
165
|
-
|
|
166
|
-
<li class="file"><a href="../ARCHITECTURE_rdoc.html">ARCHITECTURE</a>
|
|
167
|
-
|
|
168
|
-
<li class="file"><a href="../README_rdoc.html">README</a>
|
|
169
|
-
|
|
170
|
-
<li class="file"><a href="../TODO_rdoc.html">TODO</a>
|
|
171
|
-
|
|
172
|
-
</ul>
|
|
173
|
-
</nav>
|
|
174
|
-
|
|
175
|
-
<nav id="classindex-section" class="section project-section">
|
|
176
|
-
<h3 class="section-header">Class and Module Index</h3>
|
|
177
|
-
|
|
178
|
-
<ul class="link-list">
|
|
179
|
-
|
|
180
|
-
<li><a href="../Nucleon.html">Nucleon</a>
|
|
181
|
-
|
|
182
|
-
<li><a href="../Nucleon/Action.html">Nucleon::Action</a>
|
|
183
|
-
|
|
184
|
-
<li><a href="../Nucleon/Action/Add.html">Nucleon::Action::Add</a>
|
|
185
|
-
|
|
186
|
-
<li><a href="../Nucleon/Action/Create.html">Nucleon::Action::Create</a>
|
|
187
|
-
|
|
188
|
-
<li><a href="../Nucleon/Action/Extract.html">Nucleon::Action::Extract</a>
|
|
189
|
-
|
|
190
|
-
<li><a href="../Nucleon/Action/Remove.html">Nucleon::Action::Remove</a>
|
|
191
|
-
|
|
192
|
-
<li><a href="../Nucleon/Action/Save.html">Nucleon::Action::Save</a>
|
|
193
|
-
|
|
194
|
-
<li><a href="../Nucleon/Action/Update.html">Nucleon::Action::Update</a>
|
|
195
|
-
|
|
196
|
-
<li><a href="../Nucleon/Codes.html">Nucleon::Codes</a>
|
|
197
|
-
|
|
198
|
-
<li><a href="../Nucleon/Command.html">Nucleon::Command</a>
|
|
199
|
-
|
|
200
|
-
<li><a href="../Nucleon/Command/Bash.html">Nucleon::Command::Bash</a>
|
|
201
|
-
|
|
202
|
-
<li><a href="../Nucleon/Config.html">Nucleon::Config</a>
|
|
203
|
-
|
|
204
|
-
<li><a href="../Nucleon/Config/Collection.html">Nucleon::Config::Collection</a>
|
|
205
|
-
|
|
206
|
-
<li><a href="../Nucleon/Config/Options.html">Nucleon::Config::Options</a>
|
|
207
|
-
|
|
208
|
-
<li><a href="../Nucleon/Core.html">Nucleon::Core</a>
|
|
209
|
-
|
|
210
|
-
<li><a href="../Nucleon/Errors.html">Nucleon::Errors</a>
|
|
211
|
-
|
|
212
|
-
<li><a href="../Nucleon/Errors/BatchError.html">Nucleon::Errors::BatchError</a>
|
|
213
|
-
|
|
214
|
-
<li><a href="../Nucleon/Errors/NucleonError.html">Nucleon::Errors::NucleonError</a>
|
|
215
|
-
|
|
216
|
-
<li><a href="../Nucleon/Errors/SSHUnavailable.html">Nucleon::Errors::SSHUnavailable</a>
|
|
217
|
-
|
|
218
|
-
<li><a href="../Nucleon/Event.html">Nucleon::Event</a>
|
|
219
|
-
|
|
220
|
-
<li><a href="../Nucleon/Event/Regex.html">Nucleon::Event::Regex</a>
|
|
221
|
-
|
|
222
|
-
<li><a href="../Nucleon/Facade.html">Nucleon::Facade</a>
|
|
223
|
-
|
|
224
|
-
<li><a href="../Nucleon/Gems.html">Nucleon::Gems</a>
|
|
225
|
-
|
|
226
|
-
<li><a href="../Nucleon/Manager.html">Nucleon::Manager</a>
|
|
227
|
-
|
|
228
|
-
<li><a href="../Nucleon/Mixin.html">Nucleon::Mixin</a>
|
|
229
|
-
|
|
230
|
-
<li><a href="../Nucleon/Mixin/Action.html">Nucleon::Mixin::Action</a>
|
|
231
|
-
|
|
232
|
-
<li><a href="../Nucleon/Mixin/Action/Commit.html">Nucleon::Mixin::Action::Commit</a>
|
|
233
|
-
|
|
234
|
-
<li><a href="../Nucleon/Mixin/Action/Project.html">Nucleon::Mixin::Action::Project</a>
|
|
235
|
-
|
|
236
|
-
<li><a href="../Nucleon/Mixin/Action/Push.html">Nucleon::Mixin::Action::Push</a>
|
|
237
|
-
|
|
238
|
-
<li><a href="../Nucleon/Mixin/Colors.html">Nucleon::Mixin::Colors</a>
|
|
239
|
-
|
|
240
|
-
<li><a href="../Nucleon/Mixin/ConfigCollection.html">Nucleon::Mixin::ConfigCollection</a>
|
|
241
|
-
|
|
242
|
-
<li><a href="../Nucleon/Mixin/ConfigOptions.html">Nucleon::Mixin::ConfigOptions</a>
|
|
243
|
-
|
|
244
|
-
<li><a href="../Nucleon/Mixin/Macro.html">Nucleon::Mixin::Macro</a>
|
|
245
|
-
|
|
246
|
-
<li><a href="../Nucleon/Mixin/Macro/ObjectInterface.html">Nucleon::Mixin::Macro::ObjectInterface</a>
|
|
247
|
-
|
|
248
|
-
<li><a href="../Nucleon/Mixin/Macro/PluginInterface.html">Nucleon::Mixin::Macro::PluginInterface</a>
|
|
249
|
-
|
|
250
|
-
<li><a href="../Nucleon/Mixin/Settings.html">Nucleon::Mixin::Settings</a>
|
|
251
|
-
|
|
252
|
-
<li><a href="../Nucleon/Mixin/SubConfig.html">Nucleon::Mixin::SubConfig</a>
|
|
253
|
-
|
|
254
|
-
<li><a href="../Nucleon/Parallel.html">Nucleon::Parallel</a>
|
|
255
|
-
|
|
256
|
-
<li><a href="../Nucleon/Parallel/ClassMethods.html">Nucleon::Parallel::ClassMethods</a>
|
|
257
|
-
|
|
258
|
-
<li><a href="../Nucleon/Parallel/InstanceMethods.html">Nucleon::Parallel::InstanceMethods</a>
|
|
259
|
-
|
|
260
|
-
<li><a href="../Nucleon/Plugin.html">Nucleon::Plugin</a>
|
|
261
|
-
|
|
262
|
-
<li><a href="../Nucleon/Plugin/Action.html">Nucleon::Plugin::Action</a>
|
|
263
|
-
|
|
264
|
-
<li><a href="../Nucleon/Plugin/Action/Option.html">Nucleon::Plugin::Action::Option</a>
|
|
265
|
-
|
|
266
|
-
<li><a href="../Nucleon/Plugin/Base.html">Nucleon::Plugin::Base</a>
|
|
267
|
-
|
|
268
|
-
<li><a href="../Nucleon/Plugin/Command.html">Nucleon::Plugin::Command</a>
|
|
269
|
-
|
|
270
|
-
<li><a href="../Nucleon/Plugin/Event.html">Nucleon::Plugin::Event</a>
|
|
271
|
-
|
|
272
|
-
<li><a href="../Nucleon/Plugin/Extension.html">Nucleon::Plugin::Extension</a>
|
|
273
|
-
|
|
274
|
-
<li><a href="../Nucleon/Plugin/Project.html">Nucleon::Plugin::Project</a>
|
|
275
|
-
|
|
276
|
-
<li><a href="../Nucleon/Plugin/Template.html">Nucleon::Plugin::Template</a>
|
|
277
|
-
|
|
278
|
-
<li><a href="../Nucleon/Plugin/Translator.html">Nucleon::Plugin::Translator</a>
|
|
279
|
-
|
|
280
|
-
<li><a href="../Nucleon/Project.html">Nucleon::Project</a>
|
|
281
|
-
|
|
282
|
-
<li><a href="../Nucleon/Project/Git.html">Nucleon::Project::Git</a>
|
|
283
|
-
|
|
284
|
-
<li><a href="../Nucleon/Project/Github.html">Nucleon::Project::Github</a>
|
|
285
|
-
|
|
286
|
-
<li><a href="../Nucleon/Template.html">Nucleon::Template</a>
|
|
287
|
-
|
|
288
|
-
<li><a href="../Nucleon/Template/Json.html">Nucleon::Template::Json</a>
|
|
289
|
-
|
|
290
|
-
<li><a href="../Nucleon/Template/Wrapper.html">Nucleon::Template::Wrapper</a>
|
|
291
|
-
|
|
292
|
-
<li><a href="../Nucleon/Template/Yaml.html">Nucleon::Template::Yaml</a>
|
|
293
|
-
|
|
294
|
-
<li><a href="../Nucleon/Translator.html">Nucleon::Translator</a>
|
|
295
|
-
|
|
296
|
-
<li><a href="../Nucleon/Translator/Json.html">Nucleon::Translator::Json</a>
|
|
297
|
-
|
|
298
|
-
<li><a href="../Nucleon/Translator/Yaml.html">Nucleon::Translator::Yaml</a>
|
|
299
|
-
|
|
300
|
-
<li><a href="../Nucleon/Util.html">Nucleon::Util</a>
|
|
301
|
-
|
|
302
|
-
<li><a href="../Nucleon/Util/CLI.html">Nucleon::Util::CLI</a>
|
|
303
|
-
|
|
304
|
-
<li><a href="../Nucleon/Util/CLI/Parser.html">Nucleon::Util::CLI::Parser</a>
|
|
305
|
-
|
|
306
|
-
<li><a href="../Nucleon/Util/Cache.html">Nucleon::Util::Cache</a>
|
|
307
|
-
|
|
308
|
-
<li><a href="../Nucleon/Util/Console.html">Nucleon::Util::Console</a>
|
|
309
|
-
|
|
310
|
-
<li><a href="../Nucleon/Util/Data.html">Nucleon::Util::Data</a>
|
|
311
|
-
|
|
312
|
-
<li><a href="../Nucleon/Util/Disk.html">Nucleon::Util::Disk</a>
|
|
313
|
-
|
|
314
|
-
<li><a href="../Nucleon/Util/Git.html">Nucleon::Util::Git</a>
|
|
315
|
-
|
|
316
|
-
<li><a href="../Nucleon/Util/Liquid.html">Nucleon::Util::Liquid</a>
|
|
317
|
-
|
|
318
|
-
<li><a href="../Nucleon/Util/Logger.html">Nucleon::Util::Logger</a>
|
|
319
|
-
|
|
320
|
-
<li><a href="../Nucleon/Util/Package.html">Nucleon::Util::Package</a>
|
|
321
|
-
|
|
322
|
-
<li><a href="../Nucleon/Util/SSH.html">Nucleon::Util::SSH</a>
|
|
323
|
-
|
|
324
|
-
<li><a href="../Nucleon/Util/SSH/Keypair.html">Nucleon::Util::SSH::Keypair</a>
|
|
325
|
-
|
|
326
|
-
<li><a href="../Nucleon/Util/Shell.html">Nucleon::Util::Shell</a>
|
|
327
|
-
|
|
328
|
-
<li><a href="../Nucleon/Util/Shell/Result.html">Nucleon::Util::Shell::Result</a>
|
|
329
|
-
|
|
330
|
-
<li><a href="../Hash.html">Hash</a>
|
|
331
|
-
|
|
332
|
-
<li><a href="../Kernel.html">Kernel</a>
|
|
333
|
-
|
|
334
|
-
</ul>
|
|
335
|
-
</nav>
|
|
336
|
-
|
|
337
|
-
</div>
|
|
338
|
-
</nav>
|
|
339
|
-
|
|
340
|
-
<div id="documentation">
|
|
341
|
-
<h1 class="class">class Nucleon::Manager</h1>
|
|
342
|
-
|
|
343
|
-
<div id="description" class="description">
|
|
344
|
-
|
|
345
|
-
</div><!-- description -->
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
<section id="5Buntitled-5D" class="documentation-section">
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
<!-- Attributes -->
|
|
359
|
-
<section id="attribute-method-details" class="method-section section">
|
|
360
|
-
<h3 class="section-header">Attributes</h3>
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
<div id="attribute-i-logger" class="method-detail">
|
|
364
|
-
<div class="method-heading attribute-method-heading">
|
|
365
|
-
<span class="method-name">logger</span><span
|
|
366
|
-
class="attribute-access-type">[R]</span>
|
|
367
|
-
</div>
|
|
368
|
-
|
|
369
|
-
<div class="method-description">
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
</div>
|
|
374
|
-
</div>
|
|
375
|
-
|
|
376
|
-
</section><!-- attribute-method-details -->
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
<!-- Methods -->
|
|
380
|
-
|
|
381
|
-
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
|
382
|
-
<h3 class="section-header">Public Class Methods</h3>
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
<div id="method-c-connection" class="method-detail ">
|
|
386
|
-
|
|
387
|
-
<div class="method-heading">
|
|
388
|
-
<span class="method-name">connection</span><span
|
|
389
|
-
class="method-args">(name = :core)</span>
|
|
390
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
391
|
-
</div>
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
<div class="method-description">
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
<div class="method-source-code" id="connection-source">
|
|
401
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 14</span>
|
|
402
|
-
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">connection</span>(<span class="ruby-identifier">name</span> = <span class="ruby-value">:core</span>)
|
|
403
|
-
<span class="ruby-constant">Nucleon</span>.<span class="ruby-identifier">manager</span>(<span class="ruby-identifier">@@supervisors</span>, <span class="ruby-identifier">name</span>, <span class="ruby-keyword">self</span>)
|
|
404
|
-
<span class="ruby-keyword">end</span></pre>
|
|
405
|
-
</div><!-- connection-source -->
|
|
406
|
-
|
|
407
|
-
</div>
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
</div><!-- connection-method -->
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
<div id="method-c-new" class="method-detail ">
|
|
416
|
-
|
|
417
|
-
<div class="method-heading">
|
|
418
|
-
<span class="method-name">new</span><span
|
|
419
|
-
class="method-args">()</span>
|
|
420
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
421
|
-
</div>
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
<div class="method-description">
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
<div class="method-source-code" id="new-source">
|
|
431
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 20</span>
|
|
432
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>
|
|
433
|
-
<span class="ruby-ivar">@logger</span> = <span class="ruby-constant">Nucleon</span>.<span class="ruby-identifier">logger</span>
|
|
434
|
-
|
|
435
|
-
<span class="ruby-ivar">@namespaces</span> = {}
|
|
436
|
-
<span class="ruby-ivar">@types</span> = {}
|
|
437
|
-
<span class="ruby-ivar">@load_info</span> = {}
|
|
438
|
-
<span class="ruby-ivar">@plugins</span> = {}
|
|
439
|
-
<span class="ruby-keyword">end</span></pre>
|
|
440
|
-
</div><!-- new-source -->
|
|
441
|
-
|
|
442
|
-
</div>
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
</div><!-- new-method -->
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
</section><!-- public-class-method-details -->
|
|
451
|
-
|
|
452
|
-
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
|
453
|
-
<h3 class="section-header">Public Instance Methods</h3>
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
<div id="method-i-autoload" class="method-detail ">
|
|
457
|
-
|
|
458
|
-
<div class="method-heading">
|
|
459
|
-
<span class="method-name">autoload</span><span
|
|
460
|
-
class="method-args">()</span>
|
|
461
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
462
|
-
</div>
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
<div class="method-description">
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
<div class="method-source-code" id="autoload-source">
|
|
472
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 252</span>
|
|
473
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">autoload</span>
|
|
474
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">"Autoloading registered plugins at #{Time.now}"</span>)
|
|
475
|
-
|
|
476
|
-
<span class="ruby-ivar">@load_info</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">type</span><span class="ruby-operator">|</span>
|
|
477
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Autoloading type: #{type}"</span>)
|
|
478
|
-
|
|
479
|
-
<span class="ruby-ivar">@load_info</span>[<span class="ruby-identifier">type</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">provider</span>, <span class="ruby-identifier">plugin</span><span class="ruby-operator">|</span>
|
|
480
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Autoloading provider #{provider} at #{plugin[:directory]}"</span>)
|
|
481
|
-
|
|
482
|
-
<span class="ruby-identifier">nucleon_require</span>(<span class="ruby-identifier">plugin</span>[<span class="ruby-value">:directory</span>], <span class="ruby-identifier">provider</span>)
|
|
483
|
-
|
|
484
|
-
<span class="ruby-ivar">@load_info</span>[<span class="ruby-identifier">type</span>][<span class="ruby-identifier">provider</span>][<span class="ruby-value">:class</span>] = <span class="ruby-identifier">provider_class</span>(<span class="ruby-identifier">plugin</span>[<span class="ruby-value">:namespace</span>], <span class="ruby-identifier">type</span>, <span class="ruby-identifier">provider</span>)
|
|
485
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Updated #{type} #{provider} load info: #{@load_info[type][provider].inspect}"</span>)
|
|
486
|
-
|
|
487
|
-
<span class="ruby-comment"># Make sure extensions are listening from the time they are loaded</span>
|
|
488
|
-
<span class="ruby-identifier">load</span>(<span class="ruby-value">:extension</span>, <span class="ruby-identifier">provider</span>, { <span class="ruby-value">:name</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">provider</span> }) <span class="ruby-keyword">if</span> <span class="ruby-identifier">type</span> <span class="ruby-operator">==</span> <span class="ruby-value">:extension</span> <span class="ruby-comment"># Create a persistent instance</span>
|
|
489
|
-
<span class="ruby-keyword">end</span>
|
|
490
|
-
<span class="ruby-keyword">end</span>
|
|
491
|
-
<span class="ruby-keyword">end</span></pre>
|
|
492
|
-
</div><!-- autoload-source -->
|
|
493
|
-
|
|
494
|
-
</div>
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
</div><!-- autoload-method -->
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
<div id="method-i-check" class="method-detail ">
|
|
503
|
-
|
|
504
|
-
<div class="method-heading">
|
|
505
|
-
<span class="method-name">check</span><span
|
|
506
|
-
class="method-args">(method, options = {})</span>
|
|
507
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
508
|
-
</div>
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
<div class="method-description">
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
<div class="method-source-code" id="check-source">
|
|
518
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 475</span>
|
|
519
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">check</span>(<span class="ruby-identifier">method</span>, <span class="ruby-identifier">options</span> = {})
|
|
520
|
-
<span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
|
|
521
|
-
|
|
522
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Checking extension #{method} given: #{config.export.inspect}"</span>)
|
|
523
|
-
|
|
524
|
-
<span class="ruby-identifier">success</span> = <span class="ruby-identifier">exec</span>(<span class="ruby-identifier">method</span>, <span class="ruby-identifier">config</span>.<span class="ruby-identifier">import</span>({ <span class="ruby-value">:extension_type</span> =<span class="ruby-operator">></span> <span class="ruby-value">:check</span> })) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
|
|
525
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">op</span> <span class="ruby-operator">==</span> <span class="ruby-value">:reduce</span>
|
|
526
|
-
<span class="ruby-operator">!</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">values</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-keyword">false</span>)
|
|
527
|
-
<span class="ruby-keyword">else</span>
|
|
528
|
-
<span class="ruby-identifier">data</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
|
|
529
|
-
<span class="ruby-keyword">end</span>
|
|
530
|
-
<span class="ruby-keyword">end</span>
|
|
531
|
-
|
|
532
|
-
<span class="ruby-identifier">success</span> = <span class="ruby-identifier">success</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">success</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
|
|
533
|
-
|
|
534
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Extension #{method} check result: #{success.inspect}"</span>)
|
|
535
|
-
<span class="ruby-identifier">success</span>
|
|
536
|
-
<span class="ruby-keyword">end</span></pre>
|
|
537
|
-
</div><!-- check-source -->
|
|
538
|
-
|
|
539
|
-
</div>
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
</div><!-- check-method -->
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
<div id="method-i-class_const" class="method-detail ">
|
|
548
|
-
|
|
549
|
-
<div class="method-heading">
|
|
550
|
-
<span class="method-name">class_const</span><span
|
|
551
|
-
class="method-args">(name, separator = '::')</span>
|
|
552
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
553
|
-
</div>
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
<div class="method-description">
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
<div class="method-source-code" id="class_const-source">
|
|
563
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 577</span>
|
|
564
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">class_const</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">separator</span> = <span class="ruby-string">'::'</span>)
|
|
565
|
-
<span class="ruby-identifier">components</span> = <span class="ruby-identifier">class_name</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">separator</span>, <span class="ruby-constant">TRUE</span>)
|
|
566
|
-
<span class="ruby-identifier">constant</span> = <span class="ruby-constant">Object</span>
|
|
567
|
-
|
|
568
|
-
<span class="ruby-identifier">components</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">component</span><span class="ruby-operator">|</span>
|
|
569
|
-
<span class="ruby-identifier">constant</span> = <span class="ruby-identifier">constant</span>.<span class="ruby-identifier">const_defined?</span>(<span class="ruby-identifier">component</span>) <span class="ruby-operator">?</span>
|
|
570
|
-
<span class="ruby-identifier">constant</span>.<span class="ruby-identifier">const_get</span>(<span class="ruby-identifier">component</span>) <span class="ruby-operator">:</span>
|
|
571
|
-
<span class="ruby-identifier">constant</span>.<span class="ruby-identifier">const_missing</span>(<span class="ruby-identifier">component</span>)
|
|
572
|
-
<span class="ruby-keyword">end</span>
|
|
573
|
-
<span class="ruby-identifier">constant</span>
|
|
574
|
-
<span class="ruby-keyword">end</span></pre>
|
|
575
|
-
</div><!-- class_const-source -->
|
|
576
|
-
|
|
577
|
-
</div>
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
</div><!-- class_const-method -->
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
<div id="method-i-class_name" class="method-detail ">
|
|
586
|
-
|
|
587
|
-
<div class="method-heading">
|
|
588
|
-
<span class="method-name">class_name</span><span
|
|
589
|
-
class="method-args">(name, separator = '::', want_array = FALSE)</span>
|
|
590
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
591
|
-
</div>
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
<div class="method-description">
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
<div class="method-source-code" id="class_name-source">
|
|
601
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 553</span>
|
|
602
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">class_name</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">separator</span> = <span class="ruby-string">'::'</span>, <span class="ruby-identifier">want_array</span> = <span class="ruby-constant">FALSE</span>)
|
|
603
|
-
<span class="ruby-identifier">components</span> = []
|
|
604
|
-
|
|
605
|
-
<span class="ruby-keyword">case</span> <span class="ruby-identifier">name</span>
|
|
606
|
-
<span class="ruby-keyword">when</span> <span class="ruby-constant">String</span>, <span class="ruby-constant">Symbol</span>
|
|
607
|
-
<span class="ruby-identifier">components</span> = <span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-identifier">separator</span>)
|
|
608
|
-
<span class="ruby-keyword">when</span> <span class="ruby-constant">Array</span>
|
|
609
|
-
<span class="ruby-identifier">components</span> = <span class="ruby-identifier">name</span>
|
|
610
|
-
<span class="ruby-keyword">end</span>
|
|
611
|
-
|
|
612
|
-
<span class="ruby-identifier">components</span>.<span class="ruby-identifier">collect!</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">value</span><span class="ruby-operator">|</span>
|
|
613
|
-
<span class="ruby-identifier">value</span> = <span class="ruby-identifier">value</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">strip</span>
|
|
614
|
-
<span class="ruby-identifier">value</span>[<span class="ruby-value">0</span>] = <span class="ruby-identifier">value</span>.<span class="ruby-identifier">capitalize</span>[<span class="ruby-value">0</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">value</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">/^[a-z]/</span>
|
|
615
|
-
<span class="ruby-identifier">value</span>
|
|
616
|
-
<span class="ruby-keyword">end</span>
|
|
617
|
-
|
|
618
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">want_array</span>
|
|
619
|
-
<span class="ruby-keyword">return</span> <span class="ruby-identifier">components</span>
|
|
620
|
-
<span class="ruby-keyword">end</span>
|
|
621
|
-
<span class="ruby-identifier">components</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">separator</span>)
|
|
622
|
-
<span class="ruby-keyword">end</span></pre>
|
|
623
|
-
</div><!-- class_name-source -->
|
|
624
|
-
|
|
625
|
-
</div>
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
</div><!-- class_name-method -->
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
<div id="method-i-collect" class="method-detail ">
|
|
634
|
-
|
|
635
|
-
<div class="method-heading">
|
|
636
|
-
<span class="method-name">collect</span><span
|
|
637
|
-
class="method-args">(method, options = {})</span>
|
|
638
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
639
|
-
</div>
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
<div class="method-description">
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
<div class="method-source-code" id="collect-source">
|
|
649
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 513</span>
|
|
650
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">collect</span>(<span class="ruby-identifier">method</span>, <span class="ruby-identifier">options</span> = {})
|
|
651
|
-
<span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
|
|
652
|
-
<span class="ruby-identifier">values</span> = []
|
|
653
|
-
|
|
654
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Collecting extension #{method} values"</span>)
|
|
655
|
-
|
|
656
|
-
<span class="ruby-identifier">exec</span>(<span class="ruby-identifier">method</span>, <span class="ruby-identifier">config</span>.<span class="ruby-identifier">import</span>({ <span class="ruby-value">:extension_type</span> =<span class="ruby-operator">></span> <span class="ruby-value">:collect</span> })) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
|
|
657
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">op</span> <span class="ruby-operator">==</span> <span class="ruby-value">:process</span>
|
|
658
|
-
<span class="ruby-identifier">values</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">data</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">nil?</span>
|
|
659
|
-
<span class="ruby-keyword">end</span>
|
|
660
|
-
<span class="ruby-keyword">end</span>
|
|
661
|
-
<span class="ruby-identifier">values</span> = <span class="ruby-identifier">values</span>.<span class="ruby-identifier">flatten</span>
|
|
662
|
-
|
|
663
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Extension #{method} collected values: #{values.inspect}"</span>)
|
|
664
|
-
<span class="ruby-identifier">values</span>
|
|
665
|
-
<span class="ruby-keyword">end</span></pre>
|
|
666
|
-
</div><!-- collect-source -->
|
|
667
|
-
|
|
668
|
-
</div>
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
</div><!-- collect-method -->
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
<div id="method-i-config" class="method-detail ">
|
|
677
|
-
|
|
678
|
-
<div class="method-heading">
|
|
679
|
-
<span class="method-name">config</span><span
|
|
680
|
-
class="method-args">(type, options = {})</span>
|
|
681
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
682
|
-
</div>
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
<div class="method-description">
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
<div class="method-source-code" id="config-source">
|
|
692
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 452</span>
|
|
693
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">config</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">options</span> = {})
|
|
694
|
-
<span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
|
|
695
|
-
|
|
696
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Generating #{type} extended configuration from: #{config.export.inspect}"</span>)
|
|
697
|
-
|
|
698
|
-
<span class="ruby-identifier">exec</span>(<span class="ruby-node">"#{type}_config"</span>, <span class="ruby-constant">Config</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">config</span>.<span class="ruby-identifier">export</span>)) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
|
|
699
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">op</span> <span class="ruby-operator">==</span> <span class="ruby-value">:reduce</span>
|
|
700
|
-
<span class="ruby-identifier">data</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">provider</span>, <span class="ruby-identifier">result</span><span class="ruby-operator">|</span>
|
|
701
|
-
<span class="ruby-identifier">config</span>.<span class="ruby-identifier">import</span>(<span class="ruby-identifier">result</span>)
|
|
702
|
-
<span class="ruby-keyword">end</span>
|
|
703
|
-
<span class="ruby-keyword">nil</span>
|
|
704
|
-
<span class="ruby-keyword">else</span>
|
|
705
|
-
<span class="ruby-identifier">data</span>
|
|
706
|
-
<span class="ruby-keyword">end</span>
|
|
707
|
-
<span class="ruby-keyword">end</span>
|
|
708
|
-
<span class="ruby-identifier">config</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:extension_type</span>)
|
|
709
|
-
|
|
710
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Final extended configuration: #{config.export.inspect}"</span>)
|
|
711
|
-
<span class="ruby-identifier">config</span>
|
|
712
|
-
<span class="ruby-keyword">end</span></pre>
|
|
713
|
-
</div><!-- config-source -->
|
|
714
|
-
|
|
715
|
-
</div>
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
</div><!-- config-method -->
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
<div id="method-i-create" class="method-detail ">
|
|
724
|
-
|
|
725
|
-
<div class="method-heading">
|
|
726
|
-
<span class="method-name">create</span><span
|
|
727
|
-
class="method-args">(type, provider, options = {})</span>
|
|
728
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
729
|
-
</div>
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
<div class="method-description">
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
<div class="method-source-code" id="create-source">
|
|
739
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 339</span>
|
|
740
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">create</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">provider</span>, <span class="ruby-identifier">options</span> = {})
|
|
741
|
-
<span class="ruby-identifier">type</span> = <span class="ruby-identifier">type</span>.<span class="ruby-identifier">to_sym</span>
|
|
742
|
-
<span class="ruby-identifier">provider</span> = <span class="ruby-identifier">provider</span>.<span class="ruby-identifier">to_sym</span>
|
|
743
|
-
|
|
744
|
-
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@types</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">type</span>)
|
|
745
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span>(<span class="ruby-node">"Plugin type #{type} creation requested but it has not been registered yet"</span>)
|
|
746
|
-
<span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span>
|
|
747
|
-
<span class="ruby-keyword">end</span>
|
|
748
|
-
|
|
749
|
-
<span class="ruby-identifier">info</span> = <span class="ruby-ivar">@load_info</span>[<span class="ruby-identifier">type</span>][<span class="ruby-identifier">provider</span>] <span class="ruby-keyword">if</span> <span class="ruby-constant">Util</span><span class="ruby-operator">::</span><span class="ruby-constant">Data</span>.<span class="ruby-identifier">exists?</span>(<span class="ruby-ivar">@load_info</span>, [ <span class="ruby-identifier">type</span>, <span class="ruby-identifier">provider</span> ])
|
|
750
|
-
|
|
751
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">info</span>
|
|
752
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Plugin information for #{provider} #{type} found."</span>)
|
|
753
|
-
|
|
754
|
-
<span class="ruby-identifier">instance_name</span> = <span class="ruby-node">"#{provider}_"</span> <span class="ruby-operator">+</span> <span class="ruby-constant">Nucleon</span>.<span class="ruby-identifier">sha1</span>(<span class="ruby-identifier">options</span>)
|
|
755
|
-
<span class="ruby-identifier">options</span> = <span class="ruby-identifier">translate</span>(<span class="ruby-identifier">info</span>[<span class="ruby-value">:namespace</span>], <span class="ruby-identifier">type</span>, <span class="ruby-identifier">provider</span>, <span class="ruby-identifier">options</span>)
|
|
756
|
-
|
|
757
|
-
<span class="ruby-ivar">@plugins</span>[<span class="ruby-identifier">type</span>] = {} <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@plugins</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">type</span>)
|
|
758
|
-
|
|
759
|
-
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">instance_name</span> <span class="ruby-operator">&&</span> <span class="ruby-ivar">@plugins</span>[<span class="ruby-identifier">type</span>].<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">instance_name</span>)
|
|
760
|
-
<span class="ruby-identifier">info</span>[<span class="ruby-value">:instance_name</span>] = <span class="ruby-identifier">instance_name</span>
|
|
761
|
-
<span class="ruby-identifier">options</span>[<span class="ruby-value">:meta</span>] = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">info</span>).<span class="ruby-identifier">import</span>(<span class="ruby-constant">Util</span><span class="ruby-operator">::</span><span class="ruby-constant">Data</span>.<span class="ruby-identifier">hash</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:meta</span>]))
|
|
762
|
-
|
|
763
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">"Creating new plugin #{provider} #{type}"</span>)
|
|
764
|
-
|
|
765
|
-
<span class="ruby-identifier">plugin</span> = <span class="ruby-identifier">info</span>[<span class="ruby-value">:class</span>].<span class="ruby-identifier">new</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">provider</span>, <span class="ruby-identifier">options</span>)
|
|
766
|
-
|
|
767
|
-
<span class="ruby-ivar">@plugins</span>[<span class="ruby-identifier">type</span>][<span class="ruby-identifier">instance_name</span>] = <span class="ruby-identifier">plugin</span>
|
|
768
|
-
<span class="ruby-keyword">end</span>
|
|
769
|
-
<span class="ruby-keyword">return</span> <span class="ruby-ivar">@plugins</span>[<span class="ruby-identifier">type</span>][<span class="ruby-identifier">instance_name</span>]
|
|
770
|
-
<span class="ruby-keyword">end</span>
|
|
771
|
-
|
|
772
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span>(<span class="ruby-node">"Plugin information cannot be found for plugin #{type} #{provider}"</span>)
|
|
773
|
-
<span class="ruby-keyword">nil</span>
|
|
774
|
-
<span class="ruby-keyword">end</span></pre>
|
|
775
|
-
</div><!-- create-source -->
|
|
776
|
-
|
|
777
|
-
</div>
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
</div><!-- create-method -->
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
<div id="method-i-define_namespace" class="method-detail ">
|
|
786
|
-
|
|
787
|
-
<div class="method-heading">
|
|
788
|
-
<span class="method-name">define_namespace</span><span
|
|
789
|
-
class="method-args">(*names)</span>
|
|
790
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
791
|
-
</div>
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
<div class="method-description">
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
<div class="method-source-code" id="define_namespace-source">
|
|
801
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 46</span>
|
|
802
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">define_namespace</span>(*<span class="ruby-identifier">names</span>)
|
|
803
|
-
<span class="ruby-identifier">names</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">namespace</span><span class="ruby-operator">|</span>
|
|
804
|
-
<span class="ruby-ivar">@namespaces</span>[<span class="ruby-identifier">namespace</span>.<span class="ruby-identifier">to_sym</span>] = <span class="ruby-keyword">true</span>
|
|
805
|
-
<span class="ruby-keyword">end</span>
|
|
806
|
-
<span class="ruby-keyword">end</span></pre>
|
|
807
|
-
</div><!-- define_namespace-source -->
|
|
808
|
-
|
|
809
|
-
</div>
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
</div><!-- define_namespace-method -->
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
<div id="method-i-define_type" class="method-detail ">
|
|
818
|
-
|
|
819
|
-
<div class="method-heading">
|
|
820
|
-
<span class="method-name">define_type</span><span
|
|
821
|
-
class="method-args">(type_info)</span>
|
|
822
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
823
|
-
</div>
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
<div class="method-description">
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
<div class="method-source-code" id="define_type-source">
|
|
833
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 140</span>
|
|
834
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">define_type</span>(<span class="ruby-identifier">type_info</span>)
|
|
835
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">type_info</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Hash</span>)
|
|
836
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">"Defining plugin types at #{Time.now}"</span>)
|
|
837
|
-
|
|
838
|
-
<span class="ruby-identifier">type_info</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">type</span>, <span class="ruby-identifier">default_provider</span><span class="ruby-operator">|</span>
|
|
839
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Mapping plugin type #{type} to default provider #{default_provider}"</span>)
|
|
840
|
-
<span class="ruby-ivar">@types</span>[<span class="ruby-identifier">type</span>.<span class="ruby-identifier">to_sym</span>] = <span class="ruby-identifier">default_provider</span>
|
|
841
|
-
<span class="ruby-keyword">end</span>
|
|
842
|
-
<span class="ruby-keyword">else</span>
|
|
843
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span>(<span class="ruby-string">"Defined types must be specified as a hash to be registered properly"</span>)
|
|
844
|
-
<span class="ruby-keyword">end</span>
|
|
845
|
-
<span class="ruby-keyword">end</span></pre>
|
|
846
|
-
</div><!-- define_type-source -->
|
|
847
|
-
|
|
848
|
-
</div>
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
</div><!-- define_type-method -->
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
<div id="method-i-exec" class="method-detail ">
|
|
857
|
-
|
|
858
|
-
<div class="method-heading">
|
|
859
|
-
<span class="method-name">exec</span><span
|
|
860
|
-
class="method-args">(method, options = {}) { |:process, result| ... }</span>
|
|
861
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
862
|
-
</div>
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
<div class="method-description">
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
<div class="method-source-code" id="exec-source">
|
|
872
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 408</span>
|
|
873
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">exec</span>(<span class="ruby-identifier">method</span>, <span class="ruby-identifier">options</span> = {})
|
|
874
|
-
<span class="ruby-identifier">results</span> = <span class="ruby-keyword">nil</span>
|
|
875
|
-
|
|
876
|
-
<span class="ruby-keyword">if</span> <span class="ruby-constant">Nucleon</span>.<span class="ruby-identifier">log_level</span> <span class="ruby-operator">==</span> <span class="ruby-value">:hook</span> <span class="ruby-comment"># To save processing on rendering</span>
|
|
877
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">hook</span>(<span class="ruby-node">"Executing extension hook #{Nucleon.blue(method)} at #{Nucleon.green(Time.now.to_s)}"</span>)
|
|
878
|
-
<span class="ruby-keyword">end</span>
|
|
879
|
-
|
|
880
|
-
<span class="ruby-identifier">extensions</span> = <span class="ruby-identifier">plugins</span>(<span class="ruby-value">:extension</span>)
|
|
881
|
-
|
|
882
|
-
<span class="ruby-identifier">extensions</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span>, <span class="ruby-identifier">plugin</span><span class="ruby-operator">|</span>
|
|
883
|
-
<span class="ruby-identifier">provider</span> = <span class="ruby-identifier">plugin</span>.<span class="ruby-identifier">plugin_provider</span>
|
|
884
|
-
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">nil</span>
|
|
885
|
-
|
|
886
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Checking extension #{provider}"</span>)
|
|
887
|
-
|
|
888
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">plugin</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-identifier">method</span>)
|
|
889
|
-
<span class="ruby-identifier">results</span> = {} <span class="ruby-keyword">if</span> <span class="ruby-identifier">results</span>.<span class="ruby-identifier">nil?</span>
|
|
890
|
-
|
|
891
|
-
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">plugin</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">method</span>, <span class="ruby-identifier">options</span>)
|
|
892
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">"Completed hook #{method} at #{Time.now} with: #{result.inspect}"</span>)
|
|
893
|
-
|
|
894
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
|
|
895
|
-
<span class="ruby-identifier">results</span>[<span class="ruby-identifier">provider</span>] = <span class="ruby-keyword">yield</span>(<span class="ruby-value">:process</span>, <span class="ruby-identifier">result</span>)
|
|
896
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Processed extension result into: #{results[provider].inspect}"</span>)
|
|
897
|
-
<span class="ruby-keyword">end</span>
|
|
898
|
-
|
|
899
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">results</span>[<span class="ruby-identifier">provider</span>].<span class="ruby-identifier">nil?</span>
|
|
900
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Setting extension result to: #{result.inspect}"</span>)
|
|
901
|
-
<span class="ruby-identifier">results</span>[<span class="ruby-identifier">provider</span>] = <span class="ruby-identifier">result</span>
|
|
902
|
-
<span class="ruby-keyword">end</span>
|
|
903
|
-
<span class="ruby-keyword">end</span>
|
|
904
|
-
<span class="ruby-keyword">end</span>
|
|
905
|
-
|
|
906
|
-
<span class="ruby-keyword">if</span> <span class="ruby-operator">!</span> <span class="ruby-identifier">results</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">block_given?</span>
|
|
907
|
-
<span class="ruby-identifier">results</span> = <span class="ruby-keyword">yield</span>(<span class="ruby-value">:reduce</span>, <span class="ruby-identifier">results</span>)
|
|
908
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Reducing extension results to: #{results.inspect}"</span>)
|
|
909
|
-
<span class="ruby-keyword">else</span>
|
|
910
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Final extension results: #{results.inspect}"</span>)
|
|
911
|
-
<span class="ruby-keyword">end</span>
|
|
912
|
-
<span class="ruby-identifier">results</span>
|
|
913
|
-
<span class="ruby-keyword">end</span></pre>
|
|
914
|
-
</div><!-- exec-source -->
|
|
915
|
-
|
|
916
|
-
</div>
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
</div><!-- exec-method -->
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
<div id="method-i-get" class="method-detail ">
|
|
925
|
-
|
|
926
|
-
<div class="method-heading">
|
|
927
|
-
<span class="method-name">get</span><span
|
|
928
|
-
class="method-args">(type, name)</span>
|
|
929
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
930
|
-
</div>
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
<div class="method-description">
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
<div class="method-source-code" id="get-source">
|
|
940
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 377</span>
|
|
941
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">get</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">name</span>)
|
|
942
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">"Fetching plugin #{type} #{name}"</span>)
|
|
943
|
-
|
|
944
|
-
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@plugins</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">type</span>)
|
|
945
|
-
<span class="ruby-ivar">@plugins</span>[<span class="ruby-identifier">type</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">instance_name</span>, <span class="ruby-identifier">plugin</span><span class="ruby-operator">|</span>
|
|
946
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">plugin</span>.<span class="ruby-identifier">plugin_name</span>.<span class="ruby-identifier">to_s</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_s</span>
|
|
947
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Plugin #{type} #{name} found"</span>)
|
|
948
|
-
<span class="ruby-keyword">return</span> <span class="ruby-identifier">plugin</span>
|
|
949
|
-
<span class="ruby-keyword">end</span>
|
|
950
|
-
<span class="ruby-keyword">end</span>
|
|
951
|
-
<span class="ruby-keyword">end</span>
|
|
952
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Plugin #{type} #{name} not found"</span>)
|
|
953
|
-
<span class="ruby-keyword">nil</span>
|
|
954
|
-
<span class="ruby-keyword">end</span></pre>
|
|
955
|
-
</div><!-- get-source -->
|
|
956
|
-
|
|
957
|
-
</div>
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
</div><!-- get-method -->
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
<div id="method-i-load" class="method-detail ">
|
|
966
|
-
|
|
967
|
-
<div class="method-heading">
|
|
968
|
-
<span class="method-name">load</span><span
|
|
969
|
-
class="method-args">(type, provider = nil, options = {})</span>
|
|
970
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
971
|
-
</div>
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
<div class="method-description">
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
<div class="method-source-code" id="load-source">
|
|
981
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 304</span>
|
|
982
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">load</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">provider</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span> = {})
|
|
983
|
-
<span class="ruby-identifier">default_provider</span> = <span class="ruby-identifier">type_default</span>(<span class="ruby-identifier">type</span>)
|
|
984
|
-
|
|
985
|
-
<span class="ruby-comment"># Allow options to override provider</span>
|
|
986
|
-
<span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
|
|
987
|
-
<span class="ruby-identifier">provider</span> = <span class="ruby-identifier">config</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:provider</span>, <span class="ruby-identifier">provider</span>)
|
|
988
|
-
<span class="ruby-identifier">provider</span> = <span class="ruby-identifier">default_provider</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">provider</span>
|
|
989
|
-
|
|
990
|
-
<span class="ruby-identifier">load_base</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">provider</span>, <span class="ruby-identifier">config</span>)
|
|
991
|
-
<span class="ruby-keyword">end</span></pre>
|
|
992
|
-
</div><!-- load-source -->
|
|
993
|
-
|
|
994
|
-
</div>
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
</div><!-- load-method -->
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
<div id="method-i-load_base" class="method-detail ">
|
|
1003
|
-
|
|
1004
|
-
<div class="method-heading">
|
|
1005
|
-
<span class="method-name">load_base</span><span
|
|
1006
|
-
class="method-args">(type, provider, options = {})</span>
|
|
1007
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1008
|
-
</div>
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
<div class="method-description">
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
<div class="method-source-code" id="load_base-source">
|
|
1018
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 274</span>
|
|
1019
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">load_base</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">provider</span>, <span class="ruby-identifier">options</span> = {})
|
|
1020
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">"Fetching plugin #{type} provider #{provider} at #{Time.now}"</span>)
|
|
1021
|
-
|
|
1022
|
-
<span class="ruby-identifier">options</span> = <span class="ruby-identifier">translate_type</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">options</span>)
|
|
1023
|
-
<span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
|
|
1024
|
-
<span class="ruby-identifier">name</span> = <span class="ruby-identifier">config</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value">:name</span>, <span class="ruby-keyword">nil</span>)
|
|
1025
|
-
<span class="ruby-identifier">ensure_new</span> = <span class="ruby-identifier">config</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:new</span>, <span class="ruby-keyword">false</span>)
|
|
1026
|
-
|
|
1027
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">name</span>
|
|
1028
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Looking up existing instance of #{name}"</span>)
|
|
1029
|
-
|
|
1030
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">existing_instance</span> = <span class="ruby-identifier">get</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">name</span>)
|
|
1031
|
-
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">ensure_new</span>
|
|
1032
|
-
<span class="ruby-identifier">config</span>.<span class="ruby-identifier">export</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">property_name</span>, <span class="ruby-identifier">value</span><span class="ruby-operator">|</span>
|
|
1033
|
-
<span class="ruby-keyword">unless</span> [ <span class="ruby-value">:name</span>, <span class="ruby-value">:meta</span> ].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">property_name</span>)
|
|
1034
|
-
<span class="ruby-identifier">existing_instance</span>[<span class="ruby-identifier">property_name</span>] = <span class="ruby-identifier">value</span>
|
|
1035
|
-
<span class="ruby-keyword">end</span>
|
|
1036
|
-
<span class="ruby-keyword">end</span>
|
|
1037
|
-
<span class="ruby-identifier">existing_instance</span>.<span class="ruby-identifier">normalize</span>(<span class="ruby-keyword">true</span>)
|
|
1038
|
-
|
|
1039
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Using existing instance of #{type}, #{name}"</span>)
|
|
1040
|
-
<span class="ruby-keyword">return</span> <span class="ruby-identifier">existing_instance</span>
|
|
1041
|
-
<span class="ruby-keyword">end</span>
|
|
1042
|
-
<span class="ruby-keyword">end</span>
|
|
1043
|
-
<span class="ruby-keyword">end</span>
|
|
1044
|
-
<span class="ruby-identifier">create</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">provider</span>, <span class="ruby-identifier">options</span>)
|
|
1045
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1046
|
-
</div><!-- load_base-source -->
|
|
1047
|
-
|
|
1048
|
-
</div>
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
</div><!-- load_base-method -->
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
<div id="method-i-load_multiple" class="method-detail ">
|
|
1057
|
-
|
|
1058
|
-
<div class="method-heading">
|
|
1059
|
-
<span class="method-name">load_multiple</span><span
|
|
1060
|
-
class="method-args">(type, data, build_hash = false, keep_array = false)</span>
|
|
1061
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1062
|
-
</div>
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
<div class="method-description">
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
<div class="method-source-code" id="load_multiple-source">
|
|
1072
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 317</span>
|
|
1073
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">load_multiple</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">data</span>, <span class="ruby-identifier">build_hash</span> = <span class="ruby-keyword">false</span>, <span class="ruby-identifier">keep_array</span> = <span class="ruby-keyword">false</span>)
|
|
1074
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">"Fetching multiple plugins of #{type} at #{Time.now}"</span>)
|
|
1075
|
-
|
|
1076
|
-
<span class="ruby-identifier">group</span> = ( <span class="ruby-identifier">build_hash</span> <span class="ruby-operator">?</span> {} <span class="ruby-operator">:</span> [] )
|
|
1077
|
-
<span class="ruby-identifier">klass</span> = <span class="ruby-identifier">plugin_class</span>(<span class="ruby-identifier">type</span>)
|
|
1078
|
-
<span class="ruby-identifier">data</span> = <span class="ruby-identifier">klass</span>.<span class="ruby-identifier">build_info</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">data</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">klass</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:build_info</span>)
|
|
1079
|
-
|
|
1080
|
-
<span class="ruby-identifier">data</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">options</span><span class="ruby-operator">|</span>
|
|
1081
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">plugin</span> = <span class="ruby-identifier">load</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:provider</span>], <span class="ruby-identifier">options</span>)
|
|
1082
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">build_hash</span>
|
|
1083
|
-
<span class="ruby-identifier">group</span>[<span class="ruby-identifier">plugin</span>.<span class="ruby-identifier">plugin_name</span>] = <span class="ruby-identifier">plugin</span>
|
|
1084
|
-
<span class="ruby-keyword">else</span>
|
|
1085
|
-
<span class="ruby-identifier">group</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">plugin</span>
|
|
1086
|
-
<span class="ruby-keyword">end</span>
|
|
1087
|
-
<span class="ruby-keyword">end</span>
|
|
1088
|
-
<span class="ruby-keyword">end</span>
|
|
1089
|
-
<span class="ruby-keyword">return</span> <span class="ruby-identifier">group</span>.<span class="ruby-identifier">shift</span> <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span> <span class="ruby-identifier">build_hash</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">group</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span> <span class="ruby-operator">&&</span> <span class="ruby-operator">!</span> <span class="ruby-identifier">keep_array</span>
|
|
1090
|
-
<span class="ruby-identifier">group</span>
|
|
1091
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1092
|
-
</div><!-- load_multiple-source -->
|
|
1093
|
-
|
|
1094
|
-
</div>
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
</div><!-- load_multiple-method -->
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
<div id="method-i-loaded_plugins" class="method-detail ">
|
|
1103
|
-
|
|
1104
|
-
<div class="method-heading">
|
|
1105
|
-
<span class="method-name">loaded_plugins</span><span
|
|
1106
|
-
class="method-args">(type = nil, provider = nil)</span>
|
|
1107
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1108
|
-
</div>
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
<div class="method-description">
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
<div class="method-source-code" id="loaded_plugins-source">
|
|
1118
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 66</span>
|
|
1119
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">loaded_plugins</span>(<span class="ruby-identifier">type</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">provider</span> = <span class="ruby-keyword">nil</span>)
|
|
1120
|
-
<span class="ruby-identifier">results</span> = {}
|
|
1121
|
-
<span class="ruby-identifier">type</span> = <span class="ruby-identifier">type</span>.<span class="ruby-identifier">to_sym</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">type</span>
|
|
1122
|
-
<span class="ruby-identifier">provider</span> = <span class="ruby-identifier">provider</span>.<span class="ruby-identifier">to_sym</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">provider</span>
|
|
1123
|
-
|
|
1124
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">type</span> <span class="ruby-operator">&&</span> <span class="ruby-ivar">@load_info</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">type</span>)
|
|
1125
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">provider</span> <span class="ruby-operator">&&</span> <span class="ruby-ivar">@load_info</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">provider</span>)
|
|
1126
|
-
<span class="ruby-identifier">results</span> = <span class="ruby-ivar">@load_info</span>[<span class="ruby-identifier">type</span>][<span class="ruby-identifier">provider</span>]
|
|
1127
|
-
<span class="ruby-keyword">else</span>
|
|
1128
|
-
<span class="ruby-identifier">results</span> = <span class="ruby-ivar">@load_info</span>[<span class="ruby-identifier">type</span>]
|
|
1129
|
-
<span class="ruby-keyword">end</span>
|
|
1130
|
-
<span class="ruby-keyword">elsif</span> <span class="ruby-operator">!</span> <span class="ruby-identifier">type</span>
|
|
1131
|
-
<span class="ruby-identifier">results</span> = <span class="ruby-ivar">@load_info</span>
|
|
1132
|
-
<span class="ruby-keyword">end</span>
|
|
1133
|
-
<span class="ruby-identifier">results</span>
|
|
1134
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1135
|
-
</div><!-- loaded_plugins-source -->
|
|
1136
|
-
|
|
1137
|
-
</div>
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
</div><!-- loaded_plugins-method -->
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
<div id="method-i-myself" class="method-detail ">
|
|
1146
|
-
|
|
1147
|
-
<div class="method-heading">
|
|
1148
|
-
<span class="method-name">myself</span><span
|
|
1149
|
-
class="method-args">()</span>
|
|
1150
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1151
|
-
</div>
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
<div class="method-description">
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
<div class="method-source-code" id="myself-source">
|
|
1161
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 36</span>
|
|
1162
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">myself</span>
|
|
1163
|
-
<span class="ruby-constant">Nucleon</span>.<span class="ruby-identifier">handle</span>(<span class="ruby-keyword">self</span>)
|
|
1164
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1165
|
-
</div><!-- myself-source -->
|
|
1166
|
-
|
|
1167
|
-
</div>
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
</div><!-- myself-method -->
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
<div id="method-i-namespaces" class="method-detail ">
|
|
1176
|
-
|
|
1177
|
-
<div class="method-heading">
|
|
1178
|
-
<span class="method-name">namespaces</span><span
|
|
1179
|
-
class="method-args">()</span>
|
|
1180
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1181
|
-
</div>
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
<div class="method-description">
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
<div class="method-source-code" id="namespaces-source">
|
|
1191
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 42</span>
|
|
1192
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">namespaces</span>
|
|
1193
|
-
<span class="ruby-ivar">@namespaces</span>.<span class="ruby-identifier">keys</span>
|
|
1194
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1195
|
-
</div><!-- namespaces-source -->
|
|
1196
|
-
|
|
1197
|
-
</div>
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
</div><!-- namespaces-method -->
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
<div id="method-i-plugin_class" class="method-detail ">
|
|
1206
|
-
|
|
1207
|
-
<div class="method-heading">
|
|
1208
|
-
<span class="method-name">plugin_class</span><span
|
|
1209
|
-
class="method-args">(type)</span>
|
|
1210
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1211
|
-
</div>
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
<div class="method-description">
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
<div class="method-source-code" id="plugin_class-source">
|
|
1221
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 591</span>
|
|
1222
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">plugin_class</span>(<span class="ruby-identifier">type</span>)
|
|
1223
|
-
<span class="ruby-identifier">class_const</span>([ <span class="ruby-value">:nucleon</span>, <span class="ruby-value">:plugin</span>, <span class="ruby-identifier">type</span> ])
|
|
1224
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1225
|
-
</div><!-- plugin_class-source -->
|
|
1226
|
-
|
|
1227
|
-
</div>
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
</div><!-- plugin_class-method -->
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
<div id="method-i-plugins" class="method-detail ">
|
|
1236
|
-
|
|
1237
|
-
<div class="method-heading">
|
|
1238
|
-
<span class="method-name">plugins</span><span
|
|
1239
|
-
class="method-args">(type = nil, provider = nil)</span>
|
|
1240
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1241
|
-
</div>
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
<div class="method-description">
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
<div class="method-source-code" id="plugins-source">
|
|
1251
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 85</span>
|
|
1252
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">plugins</span>(<span class="ruby-identifier">type</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">provider</span> = <span class="ruby-keyword">nil</span>)
|
|
1253
|
-
<span class="ruby-identifier">results</span> = {}
|
|
1254
|
-
<span class="ruby-identifier">type</span> = <span class="ruby-identifier">type</span>.<span class="ruby-identifier">to_sym</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">type</span>
|
|
1255
|
-
<span class="ruby-identifier">provider</span> = <span class="ruby-identifier">provider</span>.<span class="ruby-identifier">to_sym</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">provider</span>
|
|
1256
|
-
|
|
1257
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">type</span> <span class="ruby-operator">&&</span> <span class="ruby-ivar">@plugins</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">type</span>)
|
|
1258
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">provider</span> <span class="ruby-operator">&&</span> <span class="ruby-operator">!</span> <span class="ruby-ivar">@plugins</span>[<span class="ruby-identifier">type</span>].<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">empty?</span>
|
|
1259
|
-
<span class="ruby-ivar">@plugins</span>[<span class="ruby-identifier">type</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">instance_name</span>, <span class="ruby-identifier">plugin</span><span class="ruby-operator">|</span>
|
|
1260
|
-
<span class="ruby-identifier">plugin</span> = <span class="ruby-ivar">@plugins</span>[<span class="ruby-identifier">type</span>][<span class="ruby-identifier">instance_name</span>]
|
|
1261
|
-
<span class="ruby-identifier">results</span>[<span class="ruby-identifier">instance_name</span>] = <span class="ruby-identifier">plugin</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">plugin</span>.<span class="ruby-identifier">plugin_provider</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">provider</span>
|
|
1262
|
-
<span class="ruby-keyword">end</span>
|
|
1263
|
-
<span class="ruby-keyword">else</span>
|
|
1264
|
-
<span class="ruby-identifier">results</span> = <span class="ruby-ivar">@plugins</span>[<span class="ruby-identifier">type</span>]
|
|
1265
|
-
<span class="ruby-keyword">end</span>
|
|
1266
|
-
<span class="ruby-keyword">elsif</span> <span class="ruby-operator">!</span> <span class="ruby-identifier">type</span>
|
|
1267
|
-
<span class="ruby-identifier">results</span> = <span class="ruby-ivar">@plugins</span>
|
|
1268
|
-
<span class="ruby-keyword">end</span>
|
|
1269
|
-
<span class="ruby-identifier">results</span>
|
|
1270
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1271
|
-
</div><!-- plugins-source -->
|
|
1272
|
-
|
|
1273
|
-
</div>
|
|
1274
|
-
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
</div><!-- plugins-method -->
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
<div id="method-i-provider_class" class="method-detail ">
|
|
1282
|
-
|
|
1283
|
-
<div class="method-heading">
|
|
1284
|
-
<span class="method-name">provider_class</span><span
|
|
1285
|
-
class="method-args">(namespace, type, provider)</span>
|
|
1286
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1287
|
-
</div>
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
<div class="method-description">
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
<div class="method-source-code" id="provider_class-source">
|
|
1297
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 597</span>
|
|
1298
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">provider_class</span>(<span class="ruby-identifier">namespace</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">provider</span>)
|
|
1299
|
-
<span class="ruby-identifier">class_const</span>([ <span class="ruby-identifier">namespace</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">provider</span> ])
|
|
1300
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1301
|
-
</div><!-- provider_class-source -->
|
|
1302
|
-
|
|
1303
|
-
</div>
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1308
|
-
</div><!-- provider_class-method -->
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
<div id="method-i-register" class="method-detail ">
|
|
1312
|
-
|
|
1313
|
-
<div class="method-heading">
|
|
1314
|
-
<span class="method-name">register</span><span
|
|
1315
|
-
class="method-args">(base_path, &code)</span>
|
|
1316
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1317
|
-
</div>
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
<div class="method-description">
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
<div class="method-source-code" id="register-source">
|
|
1327
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 178</span>
|
|
1328
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">register</span>(<span class="ruby-identifier">base_path</span>, &<span class="ruby-identifier">code</span>)
|
|
1329
|
-
<span class="ruby-identifier">namespaces</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">namespace</span><span class="ruby-operator">|</span>
|
|
1330
|
-
<span class="ruby-identifier">namespace_path</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">base_path</span>, <span class="ruby-identifier">namespace</span>.<span class="ruby-identifier">to_s</span>)
|
|
1331
|
-
<span class="ruby-identifier">register_namespace</span>(<span class="ruby-identifier">namespace</span>, <span class="ruby-identifier">namespace_path</span>, &<span class="ruby-identifier">code</span>)
|
|
1332
|
-
<span class="ruby-keyword">end</span>
|
|
1333
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1334
|
-
</div><!-- register-source -->
|
|
1335
|
-
|
|
1336
|
-
</div>
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
|
|
1340
|
-
|
|
1341
|
-
</div><!-- register-method -->
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
<div id="method-i-reload" class="method-detail ">
|
|
1345
|
-
|
|
1346
|
-
<div class="method-heading">
|
|
1347
|
-
<span class="method-name">reload</span><span
|
|
1348
|
-
class="method-args">(core = false, &code)</span>
|
|
1349
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1350
|
-
</div>
|
|
1351
|
-
|
|
1352
|
-
|
|
1353
|
-
<div class="method-description">
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1359
|
-
<div class="method-source-code" id="reload-source">
|
|
1360
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 114</span>
|
|
1361
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">reload</span>(<span class="ruby-identifier">core</span> = <span class="ruby-keyword">false</span>, &<span class="ruby-identifier">code</span>)
|
|
1362
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">"Loading Nucleon plugins at #{Time.now}"</span>)
|
|
1363
|
-
|
|
1364
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">core</span>
|
|
1365
|
-
<span class="ruby-constant">Celluloid</span>.<span class="ruby-identifier">logger</span> = <span class="ruby-identifier">logger</span> <span class="ruby-keyword">if</span> <span class="ruby-constant">Nucleon</span>.<span class="ruby-identifier">parallel?</span>
|
|
1366
|
-
|
|
1367
|
-
<span class="ruby-identifier">define_namespace</span> <span class="ruby-value">:nucleon</span>
|
|
1368
|
-
|
|
1369
|
-
<span class="ruby-identifier">define_type</span> <span class="ruby-value">:extension</span> =<span class="ruby-operator">></span> <span class="ruby-keyword">nil</span>, <span class="ruby-comment"># Core</span>
|
|
1370
|
-
<span class="ruby-value">:action</span> =<span class="ruby-operator">></span> <span class="ruby-value">:update</span>, <span class="ruby-comment"># Core</span>
|
|
1371
|
-
<span class="ruby-value">:project</span> =<span class="ruby-operator">></span> <span class="ruby-value">:git</span>, <span class="ruby-comment"># Core</span>
|
|
1372
|
-
<span class="ruby-value">:command</span> =<span class="ruby-operator">></span> <span class="ruby-value">:bash</span>, <span class="ruby-comment"># Core</span>
|
|
1373
|
-
<span class="ruby-value">:event</span> =<span class="ruby-operator">></span> <span class="ruby-value">:regex</span>, <span class="ruby-comment"># Utility</span>
|
|
1374
|
-
<span class="ruby-value">:template</span> =<span class="ruby-operator">></span> <span class="ruby-value">:json</span>, <span class="ruby-comment"># Utility</span>
|
|
1375
|
-
<span class="ruby-value">:translator</span> =<span class="ruby-operator">></span> <span class="ruby-value">:json</span> <span class="ruby-comment"># Utility</span>
|
|
1376
|
-
<span class="ruby-keyword">end</span>
|
|
1377
|
-
|
|
1378
|
-
<span class="ruby-comment"># Allow block level namespace and type registration</span>
|
|
1379
|
-
<span class="ruby-identifier">code</span>.<span class="ruby-identifier">call</span>(<span class="ruby-value">:define</span>, <span class="ruby-identifier">myself</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">code</span>
|
|
1380
|
-
|
|
1381
|
-
<span class="ruby-identifier">load_plugins</span>(<span class="ruby-identifier">core</span>, &<span class="ruby-identifier">code</span>)
|
|
1382
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">"Finished loading Nucleon plugins at #{Time.now}"</span>)
|
|
1383
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1384
|
-
</div><!-- reload-source -->
|
|
1385
|
-
|
|
1386
|
-
</div>
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
</div><!-- reload-method -->
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
<div id="method-i-remove" class="method-detail ">
|
|
1395
|
-
|
|
1396
|
-
<div class="method-heading">
|
|
1397
|
-
<span class="method-name">remove</span><span
|
|
1398
|
-
class="method-args">(plugin)</span>
|
|
1399
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1400
|
-
</div>
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
<div class="method-description">
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
|
|
1408
|
-
|
|
1409
|
-
<div class="method-source-code" id="remove-source">
|
|
1410
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 394</span>
|
|
1411
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">remove</span>(<span class="ruby-identifier">plugin</span>)
|
|
1412
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">plugin</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">plugin</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:plugin_type</span>) <span class="ruby-operator">&&</span> <span class="ruby-ivar">@plugins</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">plugin</span>.<span class="ruby-identifier">plugin_type</span>)
|
|
1413
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Removing #{plugin.plugin_type} #{plugin.plugin_name}"</span>)
|
|
1414
|
-
<span class="ruby-ivar">@plugins</span>[<span class="ruby-identifier">plugin</span>.<span class="ruby-identifier">plugin_type</span>].<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">plugin</span>.<span class="ruby-identifier">plugin_instance_name</span>)
|
|
1415
|
-
<span class="ruby-identifier">plugin</span>.<span class="ruby-identifier">remove_plugin</span>
|
|
1416
|
-
<span class="ruby-identifier">plugin</span>.<span class="ruby-identifier">terminate</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">plugin</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:terminate</span>) <span class="ruby-comment"># For Celluloid plugins</span>
|
|
1417
|
-
<span class="ruby-keyword">else</span>
|
|
1418
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span>(<span class="ruby-node">"Cannot remove plugin: #{plugin.inspect}"</span>)
|
|
1419
|
-
<span class="ruby-keyword">end</span>
|
|
1420
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1421
|
-
</div><!-- remove-source -->
|
|
1422
|
-
|
|
1423
|
-
</div>
|
|
1424
|
-
|
|
1425
|
-
|
|
1426
|
-
|
|
1427
|
-
|
|
1428
|
-
</div><!-- remove-method -->
|
|
1429
|
-
|
|
1430
|
-
|
|
1431
|
-
<div id="method-i-test_connection" class="method-detail ">
|
|
1432
|
-
|
|
1433
|
-
<div class="method-heading">
|
|
1434
|
-
<span class="method-name">test_connection</span><span
|
|
1435
|
-
class="method-args">()</span>
|
|
1436
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1437
|
-
</div>
|
|
1438
|
-
|
|
1439
|
-
|
|
1440
|
-
<div class="method-description">
|
|
1441
|
-
|
|
1442
|
-
|
|
1443
|
-
|
|
1444
|
-
|
|
1445
|
-
|
|
1446
|
-
<div class="method-source-code" id="test_connection-source">
|
|
1447
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 108</span>
|
|
1448
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">test_connection</span>
|
|
1449
|
-
<span class="ruby-keyword">true</span>
|
|
1450
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1451
|
-
</div><!-- test_connection-source -->
|
|
1452
|
-
|
|
1453
|
-
</div>
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
|
-
</div><!-- test_connection-method -->
|
|
1459
|
-
|
|
1460
|
-
|
|
1461
|
-
<div id="method-i-translate" class="method-detail ">
|
|
1462
|
-
|
|
1463
|
-
<div class="method-heading">
|
|
1464
|
-
<span class="method-name">translate</span><span
|
|
1465
|
-
class="method-args">(namespace, type, provider, options)</span>
|
|
1466
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1467
|
-
</div>
|
|
1468
|
-
|
|
1469
|
-
|
|
1470
|
-
<div class="method-description">
|
|
1471
|
-
|
|
1472
|
-
|
|
1473
|
-
|
|
1474
|
-
|
|
1475
|
-
|
|
1476
|
-
<div class="method-source-code" id="translate-source">
|
|
1477
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 543</span>
|
|
1478
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">translate</span>(<span class="ruby-identifier">namespace</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">provider</span>, <span class="ruby-identifier">options</span>)
|
|
1479
|
-
<span class="ruby-identifier">klass</span> = <span class="ruby-identifier">provider_class</span>(<span class="ruby-identifier">namespace</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">provider</span>)
|
|
1480
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Executing option translation for: #{klass.inspect}"</span>)
|
|
1481
|
-
|
|
1482
|
-
<span class="ruby-identifier">options</span> = <span class="ruby-identifier">klass</span>.<span class="ruby-identifier">send</span>(<span class="ruby-value">:translate</span>, <span class="ruby-identifier">options</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">klass</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:translate</span>)
|
|
1483
|
-
<span class="ruby-identifier">options</span>
|
|
1484
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1485
|
-
</div><!-- translate-source -->
|
|
1486
|
-
|
|
1487
|
-
</div>
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
</div><!-- translate-method -->
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
<div id="method-i-translate_type" class="method-detail ">
|
|
1496
|
-
|
|
1497
|
-
<div class="method-heading">
|
|
1498
|
-
<span class="method-name">translate_type</span><span
|
|
1499
|
-
class="method-args">(type, options)</span>
|
|
1500
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1501
|
-
</div>
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
<div class="method-description">
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
<div class="method-source-code" id="translate_type-source">
|
|
1511
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 533</span>
|
|
1512
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">translate_type</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">options</span>)
|
|
1513
|
-
<span class="ruby-identifier">klass</span> = <span class="ruby-identifier">plugin_class</span>(<span class="ruby-identifier">type</span>)
|
|
1514
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Executing option translation for: #{klass.inspect}"</span>)
|
|
1515
|
-
|
|
1516
|
-
<span class="ruby-identifier">options</span> = <span class="ruby-identifier">klass</span>.<span class="ruby-identifier">send</span>(<span class="ruby-value">:translate</span>, <span class="ruby-identifier">options</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">klass</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:translate</span>)
|
|
1517
|
-
<span class="ruby-identifier">options</span>
|
|
1518
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1519
|
-
</div><!-- translate_type-source -->
|
|
1520
|
-
|
|
1521
|
-
</div>
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
</div><!-- translate_type-method -->
|
|
1527
|
-
|
|
1528
|
-
|
|
1529
|
-
<div id="method-i-type_default" class="method-detail ">
|
|
1530
|
-
|
|
1531
|
-
<div class="method-heading">
|
|
1532
|
-
<span class="method-name">type_default</span><span
|
|
1533
|
-
class="method-args">(type)</span>
|
|
1534
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1535
|
-
</div>
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
<div class="method-description">
|
|
1539
|
-
|
|
1540
|
-
|
|
1541
|
-
|
|
1542
|
-
|
|
1543
|
-
|
|
1544
|
-
<div class="method-source-code" id="type_default-source">
|
|
1545
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 60</span>
|
|
1546
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">type_default</span>(<span class="ruby-identifier">type</span>)
|
|
1547
|
-
<span class="ruby-ivar">@types</span>[<span class="ruby-identifier">type</span>.<span class="ruby-identifier">to_sym</span>]
|
|
1548
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1549
|
-
</div><!-- type_default-source -->
|
|
1550
|
-
|
|
1551
|
-
</div>
|
|
1552
|
-
|
|
1553
|
-
|
|
1554
|
-
|
|
1555
|
-
|
|
1556
|
-
</div><!-- type_default-method -->
|
|
1557
|
-
|
|
1558
|
-
|
|
1559
|
-
<div id="method-i-types" class="method-detail ">
|
|
1560
|
-
|
|
1561
|
-
<div class="method-heading">
|
|
1562
|
-
<span class="method-name">types</span><span
|
|
1563
|
-
class="method-args">()</span>
|
|
1564
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1565
|
-
</div>
|
|
1566
|
-
|
|
1567
|
-
|
|
1568
|
-
<div class="method-description">
|
|
1569
|
-
|
|
1570
|
-
|
|
1571
|
-
|
|
1572
|
-
|
|
1573
|
-
|
|
1574
|
-
<div class="method-source-code" id="types-source">
|
|
1575
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 54</span>
|
|
1576
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">types</span>
|
|
1577
|
-
<span class="ruby-ivar">@types</span>.<span class="ruby-identifier">keys</span>
|
|
1578
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1579
|
-
</div><!-- types-source -->
|
|
1580
|
-
|
|
1581
|
-
</div>
|
|
1582
|
-
|
|
1583
|
-
|
|
1584
|
-
|
|
1585
|
-
|
|
1586
|
-
</div><!-- types-method -->
|
|
1587
|
-
|
|
1588
|
-
|
|
1589
|
-
<div id="method-i-value" class="method-detail ">
|
|
1590
|
-
|
|
1591
|
-
<div class="method-heading">
|
|
1592
|
-
<span class="method-name">value</span><span
|
|
1593
|
-
class="method-args">(method, value, options = {})</span>
|
|
1594
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1595
|
-
</div>
|
|
1596
|
-
|
|
1597
|
-
|
|
1598
|
-
<div class="method-description">
|
|
1599
|
-
|
|
1600
|
-
|
|
1601
|
-
|
|
1602
|
-
|
|
1603
|
-
|
|
1604
|
-
<div class="method-source-code" id="value-source">
|
|
1605
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 496</span>
|
|
1606
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">value</span>(<span class="ruby-identifier">method</span>, <span class="ruby-identifier">value</span>, <span class="ruby-identifier">options</span> = {})
|
|
1607
|
-
<span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
|
|
1608
|
-
|
|
1609
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Setting extension #{method} value given: #{value.inspect}"</span>)
|
|
1610
|
-
|
|
1611
|
-
<span class="ruby-identifier">exec</span>(<span class="ruby-identifier">method</span>, <span class="ruby-identifier">config</span>.<span class="ruby-identifier">import</span>({ <span class="ruby-value">:value</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">value</span>, <span class="ruby-value">:extension_type</span> =<span class="ruby-operator">></span> <span class="ruby-value">:value</span> })) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
|
|
1612
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">op</span> <span class="ruby-operator">==</span> <span class="ruby-value">:process</span>
|
|
1613
|
-
<span class="ruby-identifier">value</span> = <span class="ruby-identifier">data</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">nil?</span>
|
|
1614
|
-
<span class="ruby-keyword">end</span>
|
|
1615
|
-
<span class="ruby-keyword">end</span>
|
|
1616
|
-
|
|
1617
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Extension #{method} retrieved value: #{value.inspect}"</span>)
|
|
1618
|
-
<span class="ruby-identifier">value</span>
|
|
1619
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1620
|
-
</div><!-- value-source -->
|
|
1621
|
-
|
|
1622
|
-
</div>
|
|
1623
|
-
|
|
1624
|
-
|
|
1625
|
-
|
|
1626
|
-
|
|
1627
|
-
</div><!-- value-method -->
|
|
1628
|
-
|
|
1629
|
-
|
|
1630
|
-
</section><!-- public-instance-method-details -->
|
|
1631
|
-
|
|
1632
|
-
<section id="protected-instance-5Buntitled-5D-method-details" class="method-section section">
|
|
1633
|
-
<h3 class="section-header">Protected Instance Methods</h3>
|
|
1634
|
-
|
|
1635
|
-
|
|
1636
|
-
<div id="method-i-add_build_info" class="method-detail ">
|
|
1637
|
-
|
|
1638
|
-
<div class="method-heading">
|
|
1639
|
-
<span class="method-name">add_build_info</span><span
|
|
1640
|
-
class="method-args">(namespace, type, file, &code)</span>
|
|
1641
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1642
|
-
</div>
|
|
1643
|
-
|
|
1644
|
-
|
|
1645
|
-
<div class="method-description">
|
|
1646
|
-
|
|
1647
|
-
|
|
1648
|
-
|
|
1649
|
-
|
|
1650
|
-
|
|
1651
|
-
<div class="method-source-code" id="add_build_info-source">
|
|
1652
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 223</span>
|
|
1653
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">add_build_info</span>(<span class="ruby-identifier">namespace</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">file</span>, &<span class="ruby-identifier">code</span>)
|
|
1654
|
-
<span class="ruby-identifier">type</span> = <span class="ruby-identifier">type</span>.<span class="ruby-identifier">to_sym</span>
|
|
1655
|
-
|
|
1656
|
-
<span class="ruby-ivar">@load_info</span>[<span class="ruby-identifier">type</span>] = {} <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@load_info</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">type</span>)
|
|
1657
|
-
|
|
1658
|
-
<span class="ruby-identifier">components</span> = <span class="ruby-identifier">file</span>.<span class="ruby-identifier">split</span>(<span class="ruby-constant">File</span><span class="ruby-operator">::</span><span class="ruby-constant">SEPARATOR</span>)
|
|
1659
|
-
<span class="ruby-identifier">provider</span> = <span class="ruby-identifier">components</span>.<span class="ruby-identifier">pop</span>.<span class="ruby-identifier">sub</span>(<span class="ruby-regexp">/\.rb/</span>, <span class="ruby-string">''</span>).<span class="ruby-identifier">to_sym</span>
|
|
1660
|
-
<span class="ruby-identifier">directory</span> = <span class="ruby-identifier">components</span>.<span class="ruby-identifier">join</span>(<span class="ruby-constant">File</span><span class="ruby-operator">::</span><span class="ruby-constant">SEPARATOR</span>)
|
|
1661
|
-
|
|
1662
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">"Loading nucleon #{type} plugin #{provider} at #{Time.now}"</span>)
|
|
1663
|
-
|
|
1664
|
-
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@load_info</span>[<span class="ruby-identifier">type</span>].<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">provider</span>)
|
|
1665
|
-
<span class="ruby-identifier">data</span> = {
|
|
1666
|
-
<span class="ruby-value">:namespace</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">namespace</span>,
|
|
1667
|
-
<span class="ruby-value">:type</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">type</span>,
|
|
1668
|
-
<span class="ruby-value">:provider</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">provider</span>,
|
|
1669
|
-
<span class="ruby-value">:directory</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">directory</span>,
|
|
1670
|
-
<span class="ruby-value">:file</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">file</span>
|
|
1671
|
-
}
|
|
1672
|
-
<span class="ruby-identifier">code</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">data</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">code</span>
|
|
1673
|
-
|
|
1674
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Plugin #{type} loaded: #{data.inspect}"</span>)
|
|
1675
|
-
<span class="ruby-ivar">@load_info</span>[<span class="ruby-identifier">type</span>][<span class="ruby-identifier">provider</span>] = <span class="ruby-identifier">data</span>
|
|
1676
|
-
<span class="ruby-keyword">end</span>
|
|
1677
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1678
|
-
</div><!-- add_build_info-source -->
|
|
1679
|
-
|
|
1680
|
-
</div>
|
|
1681
|
-
|
|
1682
|
-
|
|
1683
|
-
|
|
1684
|
-
|
|
1685
|
-
</div><!-- add_build_info-method -->
|
|
1686
|
-
|
|
1687
|
-
|
|
1688
|
-
<div id="method-i-load_plugins" class="method-detail ">
|
|
1689
|
-
|
|
1690
|
-
<div class="method-heading">
|
|
1691
|
-
<span class="method-name">load_plugins</span><span
|
|
1692
|
-
class="method-args">(core = false, &code)</span>
|
|
1693
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1694
|
-
</div>
|
|
1695
|
-
|
|
1696
|
-
|
|
1697
|
-
<div class="method-description">
|
|
1698
|
-
|
|
1699
|
-
|
|
1700
|
-
|
|
1701
|
-
|
|
1702
|
-
|
|
1703
|
-
<div class="method-source-code" id="load_plugins-source">
|
|
1704
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 155</span>
|
|
1705
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">load_plugins</span>(<span class="ruby-identifier">core</span> = <span class="ruby-keyword">false</span>, &<span class="ruby-identifier">code</span>)
|
|
1706
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">core</span>
|
|
1707
|
-
<span class="ruby-comment"># Register core plugins</span>
|
|
1708
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">"Initializing core plugins at #{Time.now}"</span>)
|
|
1709
|
-
<span class="ruby-identifier">register</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">dirname</span>(<span class="ruby-keyword">__FILE__</span>), <span class="ruby-string">'..'</span>))
|
|
1710
|
-
<span class="ruby-keyword">end</span>
|
|
1711
|
-
|
|
1712
|
-
<span class="ruby-comment"># Register external Gem defined plugins</span>
|
|
1713
|
-
<span class="ruby-constant">Gems</span>.<span class="ruby-identifier">register</span>(<span class="ruby-keyword">true</span>)
|
|
1714
|
-
|
|
1715
|
-
<span class="ruby-comment"># Register any other extension plugins</span>
|
|
1716
|
-
<span class="ruby-identifier">exec</span>(<span class="ruby-value">:register_plugins</span>)
|
|
1717
|
-
|
|
1718
|
-
<span class="ruby-comment"># Catch any block level requests before autoloading</span>
|
|
1719
|
-
<span class="ruby-identifier">code</span>.<span class="ruby-identifier">call</span>(<span class="ruby-value">:load</span>, <span class="ruby-identifier">myself</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">code</span>
|
|
1720
|
-
|
|
1721
|
-
<span class="ruby-comment"># Autoload all registered plugins</span>
|
|
1722
|
-
<span class="ruby-identifier">autoload</span>
|
|
1723
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1724
|
-
</div><!-- load_plugins-source -->
|
|
1725
|
-
|
|
1726
|
-
</div>
|
|
1727
|
-
|
|
1728
|
-
|
|
1729
|
-
|
|
1730
|
-
|
|
1731
|
-
</div><!-- load_plugins-method -->
|
|
1732
|
-
|
|
1733
|
-
|
|
1734
|
-
<div id="method-i-register_namespace" class="method-detail ">
|
|
1735
|
-
|
|
1736
|
-
<div class="method-heading">
|
|
1737
|
-
<span class="method-name">register_namespace</span><span
|
|
1738
|
-
class="method-args">(namespace, base_path, &code)</span>
|
|
1739
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1740
|
-
</div>
|
|
1741
|
-
|
|
1742
|
-
|
|
1743
|
-
<div class="method-description">
|
|
1744
|
-
|
|
1745
|
-
|
|
1746
|
-
|
|
1747
|
-
|
|
1748
|
-
|
|
1749
|
-
<div class="method-source-code" id="register_namespace-source">
|
|
1750
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 187</span>
|
|
1751
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">register_namespace</span>(<span class="ruby-identifier">namespace</span>, <span class="ruby-identifier">base_path</span>, &<span class="ruby-identifier">code</span>)
|
|
1752
|
-
<span class="ruby-keyword">if</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">directory?</span>(<span class="ruby-identifier">base_path</span>)
|
|
1753
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">"Loading files from #{base_path} at #{Time.now}"</span>)
|
|
1754
|
-
|
|
1755
|
-
<span class="ruby-constant">Dir</span>.<span class="ruby-identifier">glob</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">base_path</span>, <span class="ruby-string">'*.rb'</span>)).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
|
|
1756
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Loading file: #{file}"</span>)
|
|
1757
|
-
<span class="ruby-identifier">require</span> <span class="ruby-identifier">file</span>
|
|
1758
|
-
<span class="ruby-keyword">end</span>
|
|
1759
|
-
|
|
1760
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">"Loading directories from #{base_path} at #{Time.now}"</span>)
|
|
1761
|
-
<span class="ruby-constant">Dir</span>.<span class="ruby-identifier">entries</span>(<span class="ruby-identifier">base_path</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">path</span><span class="ruby-operator">|</span>
|
|
1762
|
-
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">path</span>.<span class="ruby-identifier">match</span>(<span class="ruby-regexp">/^\.\.?$/</span>)
|
|
1763
|
-
<span class="ruby-identifier">register_type</span>(<span class="ruby-identifier">namespace</span>, <span class="ruby-identifier">base_path</span>, <span class="ruby-identifier">path</span>, &<span class="ruby-identifier">code</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">types</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">path</span>.<span class="ruby-identifier">to_sym</span>)
|
|
1764
|
-
<span class="ruby-keyword">end</span>
|
|
1765
|
-
<span class="ruby-keyword">end</span>
|
|
1766
|
-
<span class="ruby-keyword">end</span>
|
|
1767
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1768
|
-
</div><!-- register_namespace-source -->
|
|
1769
|
-
|
|
1770
|
-
</div>
|
|
1771
|
-
|
|
1772
|
-
|
|
1773
|
-
|
|
1774
|
-
|
|
1775
|
-
</div><!-- register_namespace-method -->
|
|
1776
|
-
|
|
1777
|
-
|
|
1778
|
-
<div id="method-i-register_type" class="method-detail ">
|
|
1779
|
-
|
|
1780
|
-
<div class="method-heading">
|
|
1781
|
-
<span class="method-name">register_type</span><span
|
|
1782
|
-
class="method-args">(namespace, base_path, plugin_type, &code)</span>
|
|
1783
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
1784
|
-
</div>
|
|
1785
|
-
|
|
1786
|
-
|
|
1787
|
-
<div class="method-description">
|
|
1788
|
-
|
|
1789
|
-
|
|
1790
|
-
|
|
1791
|
-
|
|
1792
|
-
|
|
1793
|
-
<div class="method-source-code" id="register_type-source">
|
|
1794
|
-
<pre><span class="ruby-comment"># File lib/core/manager.rb, line 208</span>
|
|
1795
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">register_type</span>(<span class="ruby-identifier">namespace</span>, <span class="ruby-identifier">base_path</span>, <span class="ruby-identifier">plugin_type</span>, &<span class="ruby-identifier">code</span>)
|
|
1796
|
-
<span class="ruby-identifier">base_directory</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">base_path</span>, <span class="ruby-identifier">plugin_type</span>.<span class="ruby-identifier">to_s</span>)
|
|
1797
|
-
|
|
1798
|
-
<span class="ruby-keyword">if</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">directory?</span>(<span class="ruby-identifier">base_directory</span>)
|
|
1799
|
-
<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">"Registering #{base_directory} at #{Time.now}"</span>)
|
|
1800
|
-
|
|
1801
|
-
<span class="ruby-constant">Dir</span>.<span class="ruby-identifier">glob</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">base_directory</span>, <span class="ruby-string">'*.rb'</span>)).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
|
|
1802
|
-
<span class="ruby-identifier">add_build_info</span>(<span class="ruby-identifier">namespace</span>, <span class="ruby-identifier">plugin_type</span>, <span class="ruby-identifier">file</span>, &<span class="ruby-identifier">code</span>)
|
|
1803
|
-
<span class="ruby-keyword">end</span>
|
|
1804
|
-
<span class="ruby-keyword">end</span>
|
|
1805
|
-
<span class="ruby-keyword">end</span></pre>
|
|
1806
|
-
</div><!-- register_type-source -->
|
|
1807
|
-
|
|
1808
|
-
</div>
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
</div><!-- register_type-method -->
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
</section><!-- protected-instance-method-details -->
|
|
1817
|
-
|
|
1818
|
-
</section><!-- 5Buntitled-5D -->
|
|
1819
|
-
|
|
1820
|
-
</div><!-- documentation -->
|
|
1821
|
-
|
|
1822
|
-
|
|
1823
|
-
<footer id="validator-badges">
|
|
1824
|
-
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
|
1825
|
-
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.2.
|
|
1826
|
-
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
|
1827
|
-
</footer>
|
|
1828
|
-
|