Class: Mumukit::Sync::Store::Github
- Inherits:
-
Object
- Object
- Mumukit::Sync::Store::Github
- Defined in:
- lib/mumukit/sync/store/github.rb,
lib/mumukit/sync/store/github/bot.rb,
lib/mumukit/sync/store/github/schema.rb,
lib/mumukit/sync/store/github/ordering.rb,
lib/mumukit/sync/store/github/operation.rb,
lib/mumukit/sync/store/github/guide_export.rb,
lib/mumukit/sync/store/github/guide_import.rb,
lib/mumukit/sync/store/github/guide_reader.rb,
lib/mumukit/sync/store/github/guide_writer.rb,
lib/mumukit/sync/store/github/guide_builder.rb,
lib/mumukit/sync/store/github/exercise_builder.rb,
lib/mumukit/sync/store/github/with_file_reading.rb
Overview
This Store enables importing and exporting content from and to Github
Defined Under Namespace
Modules: NaturalOrdering, Ordering, Schema, WithFileReading Classes: Bot, ExerciseBuilder, FixedOrdering, GuideBuilder, GuideExport, GuideImport, GuideReader, GuideWriter, Operation, OrganizationNotFoundError
Instance Method Summary collapse
-
#initialize(bot, author_email = nil, web_hook_base_url = nil) ⇒ Github
constructor
A new instance of Github.
- #read_resource(sync_key) ⇒ Object
- #sync_keys ⇒ Object
- #write_resource!(sync_key, resource_h) ⇒ Object
Constructor Details
#initialize(bot, author_email = nil, web_hook_base_url = nil) ⇒ Github
Returns a new instance of Github.
6 7 8 9 10 |
# File 'lib/mumukit/sync/store/github.rb', line 6 def initialize(bot, = nil, web_hook_base_url = nil) @bot = bot = || bot.email @web_hook_base_url = web_hook_base_url end |
Instance Method Details
#read_resource(sync_key) ⇒ Object
16 17 18 19 20 21 22 23 |
# File 'lib/mumukit/sync/store/github.rb', line 16 def read_resource(sync_key) return unless sync_key.kind.like? :guide Mumukit::Sync::Store::Github::GuideImport.new( bot: @bot, repo: sync_key.id, web_hook_base_url: @web_hook_base_url).run! end |
#sync_keys ⇒ Object
12 13 14 |
# File 'lib/mumukit/sync/store/github.rb', line 12 def sync_keys Mumukit::Sync::Store.non_discoverable! end |
#write_resource!(sync_key, resource_h) ⇒ Object
25 26 27 28 29 30 31 32 33 34 |
# File 'lib/mumukit/sync/store/github.rb', line 25 def write_resource!(sync_key, resource_h) return unless sync_key.kind.like? :guide Mumukit::Sync::Store::Github::GuideExport.new( slug: sync_key.id, document: resource_h, author_email: , web_hook_base_url: @web_hook_base_url, bot: @bot).run! end |