class AzkabanScheduler::Project

Attributes

description[RW]
id[RW]
jobs[RW]
name[RW]
version[RW]

Public Class Methods

new(name, description) click to toggle source
# File lib/azkaban_scheduler/project.rb, line 9
def initialize(name, description)
  @name = name
  @description = description
  @jobs = {}
end

Public Instance Methods

add_job(name, job) click to toggle source
# File lib/azkaban_scheduler/project.rb, line 15
def add_job(name, job)
  @jobs[name] = job
end
build() click to toggle source
# File lib/azkaban_scheduler/project.rb, line 19
def build
  io = StringIO.new
  write(io)
  io.rewind
  io
end
write(io) click to toggle source
# File lib/azkaban_scheduler/project.rb, line 26
def write(io)
  Zip::OutputStream.write_buffer(io) do |out|
    @jobs.each do |name, job|
      out.put_next_entry("#{name}.job")
      job.write(out)
    end
  end
end