Class: Mumukit::Sync::Store::Github
- Inherits:
-
Object
- Object
- Mumukit::Sync::Store::Github
show all
- Extended by:
- Core::Configurable
- 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, WithSchema
Classes: Bot, ExerciseBuilder, FixedOrdering, GuideBuilder, GuideExport, GuideImport, GuideReader, GuideWriter, Operation, OrganizationNotFoundError
Class Method Summary
collapse
Instance Method Summary
collapse
Constructor Details
#initialize(bot, author_email = nil, web_hook_base_url = nil) ⇒ Github
Returns a new instance of Github.
8
9
10
11
12
|
# File 'lib/mumukit/sync/store/github.rb', line 8
def initialize(bot, author_email = nil, web_hook_base_url = nil)
@bot = bot
@author_email = author_email || bot.email
@web_hook_base_url = web_hook_base_url
end
|
Class Method Details
.defaults ⇒ Object
38
39
40
|
# File 'lib/mumukit/sync/store/github.rb', line 38
def self.defaults
struct
end
|
Instance Method Details
#read_resource(sync_key) ⇒ Object
18
19
20
21
22
23
24
25
|
# File 'lib/mumukit/sync/store/github.rb', line 18
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
|
#write_resource!(sync_key, resource_h) ⇒ Object
27
28
29
30
31
32
33
34
35
36
|
# File 'lib/mumukit/sync/store/github.rb', line 27
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: @author_email,
web_hook_base_url: @web_hook_base_url,
bot: @bot).run!
end
|