class Eclix::Publication_Creator
Attributes
escenic[R]
Public Class Methods
new(escenic=default_env)
click to toggle source
# File lib/eclix/publication_creator.rb, line 7 def initialize(escenic=default_env) @escenic = escenic end
Public Instance Methods
create_publication(publication, cookies)
click to toggle source
# File lib/eclix/publication_creator.rb, line 47 def create_publication(publication, cookies) RestClient.post(escenic.publish_url.absolute, { :name => publication.name, :publisherName => publication.publisher, :allowEmptyPassword => false, :adminPassword => publication.password, :adminPasswordConfirm => publication.password }, { :cookies => cookies } ) { |response, request, result| case response.code when 200 response else raise PublicationDefinitionException end } end
default_env()
click to toggle source
# File lib/eclix/publication_creator.rb, line 81 def default_env Escenic.new(Server.new) end
deploy_resources(resources, cookies)
click to toggle source
# File lib/eclix/publication_creator.rb, line 29 def deploy_resources(resources, cookies) RestClient.post(escenic.resource_url.absolute, { :type => resources.type, :resourceFile => File.new(resources.file, 'rb'), :multipart => true }, {:cookies => cookies}, ) { |response, request, result| case response.code when 200 response else raise ResourceUploadException end } end
get_session_id()
click to toggle source
# File lib/eclix/publication_creator.rb, line 24 def get_session_id response = RestClient.get(escenic.admin_url.absolute) response.cookies end
new_publication(resources, publication)
click to toggle source
# File lib/eclix/publication_creator.rb, line 11 def new_publication(resources, publication) if publication_exists(publication) puts "Publication already exists, proceeding..." else @cookies = get_session_id puts "Uploading resources..." deploy_resources(resources, @cookies) puts "Adding publication config..." create_publication(publication, @cookies) puts "Done." end end
publication_exists(publication)
click to toggle source
# File lib/eclix/publication_creator.rb, line 69 def publication_exists(publication) url = escenic.publication_url(publication).absolute RestClient.get(url) { |response, request, result| case response.code when 200 true else false end } end