Skip to content

Commit

Permalink
Move files to root folder
Browse files Browse the repository at this point in the history
  • Loading branch information
rafael committed Sep 22, 2012
1 parent 7682757 commit 2b256d1
Show file tree
Hide file tree
Showing 38 changed files with 3,270 additions and 0 deletions.
5 changes: 5 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
source 'http://rubygems.org'
gem 'rspec'
gem 'json'
gem 'rest-client'
gem 'debugger'
33 changes: 33 additions & 0 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
GEM
remote: http://rubygems.org/
specs:
columnize (0.3.6)
debugger (1.2.0)
columnize (>= 0.3.1)
debugger-linecache (~> 1.1.1)
debugger-ruby_core_source (~> 1.1.3)
debugger-linecache (1.1.2)
debugger-ruby_core_source (>= 1.1.1)
debugger-ruby_core_source (1.1.3)
diff-lcs (1.1.3)
json (1.7.5)
mime-types (1.19)
rest-client (1.6.7)
mime-types (>= 1.16)
rspec (2.11.0)
rspec-core (~> 2.11.0)
rspec-expectations (~> 2.11.0)
rspec-mocks (~> 2.11.0)
rspec-core (2.11.1)
rspec-expectations (2.11.3)
diff-lcs (~> 1.1.3)
rspec-mocks (2.11.3)

PLATFORMS
ruby

DEPENDENCIES
debugger
json
rest-client
rspec
35 changes: 35 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# Adzerk

Ruby wrapper for the [Adzerk API](http://adzerk.com/).

## Installation

sudo gem install adzerk

## Get your API key

Be sure and get your API key. Log into the management application at [http://manage.adzerk.net/](http://manage.adzerk.net/). Then, click on the settings tab, followed by the API Keys tab.

## Usage

Refer to the [https://github.com/adzerk/adzerk-api/wiki](wiki) of this repository for the properties needed for update and create.

### Examples

require 'adzerk'
require 'adzerk/site'
adzerk = Adzerk.new('your_api_key')
adzerk::Site.list()

or

require 'adzerk'
require 'adzerk/advertiser'
adzerk = Adzerk.new 'your_api_key'
adzerk::Advertiser.create {
'Title' => "Example Advertiser",
'IsActive' => true,
'IsDeleted' => false
}

Copyright (c) 2011 Adzerk, Inc.
Binary file added adzerk-0.1.4.gem
Binary file not shown.
14 changes: 14 additions & 0 deletions adzerk.gemspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
Gem::Specification.new do |s|
s.name = 'adzerk'
s.version = '0.1.4'
s.summary = "Adzerk API"
s.description = "Ruby library for the Adzerk API"
s.files = ['lib/adzerk.rb'] + Dir['lib/**/*.rb'] + Dir['test/*.rb']
s.require_path = 'lib'
s.authors = ["Kacy Fortner"]
s.email = "kacy@adzerk.com"
s.homepage = "http://adzerk.com"
s.add_development_dependency "rspec", "= 2.11.0"
s.add_runtime_dependency "json", "= 1.7.5"
s.add_runtime_dependency "rest-client", "= 1.6.7"
end
55 changes: 55 additions & 0 deletions lib/adzerk.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
require "json"
require "net/http"
require "rest_client"

module Adzerk

@@header = 'X-Adzerk-ApiKey'
$host = ENV["ADZERK_API_HOST"] || 'http://api.adzerk.net/v1/'

def self.new(key)
@@api_key = key
return self
end

def self.api_key()
@@api_key
end

def self.get_request(uri)
http = Net::HTTP.new(uri.host, uri.port)
request = Net::HTTP::Get.new(uri.request_uri)
request.add_field @@header, @@api_key
http.request(request)
end

def self.post_request(uri, data)
http = Net::HTTP.new(uri.host, uri.port)
request = Net::HTTP::Post.new(uri.request_uri)
request.add_field @@header, @@api_key
request.set_form_data(data)
http.request(request)
end

def self.put_request(uri, data)
http = Net::HTTP.new(uri.host, uri.port)
request = Net::HTTP::Put.new(uri.request_uri)
request.add_field @@header, @@api_key
request.set_form_data(data)
http.request(request)
end

def self.uploadCreative(id, imagepath)
begin
image = File.new(imagepath, 'rb')
rescue
image = ''
end

RestClient.post $host + 'creative/' + id.to_s + '/upload',
{:image => image},
"X-Adzerk-ApiKey" => Adzerk.api_key,
:accept => :mime
end

end
39 changes: 39 additions & 0 deletions lib/adzerk/advertiser.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
module Adzerk
class Advertiser

def create(data={})
uri = URI.parse($host + 'advertiser')
data = { 'advertiser' => data.to_json }
Adzerk.post_request(uri, data)
end

def get(id)
uri = URI.parse($host + 'advertiser/' + id)
Adzerk.get_request(uri)
end

def list()
uri = URI.parse($host + 'advertiser')
response = Adzerk.get_request(uri)
JSON.parse(response.body)
end

def update(data={})
uri = URI.parse($host + 'advertiser/' + data["Id"].to_s)
data = { 'advertiser' => data.to_json }
Adzerk.put_request(uri, data)
end

def delete(id)
uri = URI.parse($host + 'advertiser/' + id.to_s + '/delete')
Adzerk.get_request(uri)
end

def search(advertiserName)
uri = URI.parse($host + 'advertiser/search')
data = { 'advertiserName' => advertiserName }
Adzerk.post_request(uri, data)
end

end
end
33 changes: 33 additions & 0 deletions lib/adzerk/campaign.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
module Adzerk
class Campaign

def create(data={})
uri = URI.parse($host + 'campaign')
data = { 'campaign' => data.to_json }
Adzerk.post_request(uri, data)
end

def get(id)
uri = URI.parse($host + 'campaign/' + id)
Adzerk.get_request(uri)
end

def list()
uri = URI.parse($host + 'campaign')
response = Adzerk.get_request(uri)
JSON.parse(response.body)
end

def update(data={})
uri = URI.parse($host + 'campaign/' + data["Id"].to_s)
data = { 'campaign' => data.to_json }
Adzerk.put_request(uri, data)
end

def delete(id)
uri = URI.parse($host + 'campaign/' + id + '/delete')
Adzerk.get_request(uri)
end

end
end
33 changes: 33 additions & 0 deletions lib/adzerk/channel.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
module Adzerk
class Channel

def create(data={})
uri = URI.parse($host + 'channel')
data = { 'channel' => data.to_json }
Adzerk.post_request(uri, data)
end

def get(id)
uri = URI.parse($host + 'channel/' + id)
Adzerk.get_request(uri)
end

def list()
uri = URI.parse($host + 'channel')
response = Adzerk.get_request(uri)
JSON.parse(response.body)
end

def update(data={})
uri = URI.parse($host + 'channel/' + data["Id"].to_s)
data = { 'channel' => data.to_json }
Adzerk.put_request(uri, data)
end

def delete(id)
uri = URI.parse($host + 'channel/' + id + '/delete')
Adzerk.get_request(uri)
end

end
end
44 changes: 44 additions & 0 deletions lib/adzerk/channel_site_map.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
module Adzerk
class ChannelSiteMap

def create(data={})
uri = URI.parse($host + 'channelSite')
data = { 'channelSite' => data.to_json }
Adzerk.post_request(uri, data)
end

def get(channelId, siteId)
uri = URI.parse($host + 'channel/' + channelId.to_s + '/site/' + siteId.to_s)
Adzerk.get_request(uri)
end

def list()
uri = URI.parse($host + 'channelSite')
response = Adzerk.get_request(uri)
JSON.parse(response.body)
end

def update(data={})
uri = URI.parse($host + 'channelSite')
data = { 'channelSite' => data.to_json }
Adzerk.put_request(uri, data)
end

def delete(channelId, siteId)
uri = URI.parse($host + 'channel/' + channelId.to_s + '/site/'+ siteId.to_s + '/delete')
Adzerk.get_request(uri)
end

def sitesInChannel(channelId)
uri = URI.parse($host + 'sitesInChannel/' + channelId.to_s)
Adzerk.get_request(uri)
end

def channelsInSite(siteId)
uri = URI.parse($host + 'channelsInSite/' + siteId.to_s)
Adzerk.get_request(uri)
end

end
end

39 changes: 39 additions & 0 deletions lib/adzerk/creative.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
require "rest_client"

module Adzerk
class Creative

def create(data={}, imagepath='')
response = RestClient.post $host + 'creative',
{:creative => data.to_json},
:X_Adzerk_ApiKey => Adzerk.api_key,
:content_type => :json,
:accept => :json

Adzerk.uploadCreative(JSON.parse(response)["Id"], imagepath)
end

def get(id)
uri = URI.parse($host + 'creative/' + id)
Adzerk.get_request(uri)
end

def list(advertiserId)
uri = URI.parse($host + 'advertiser/' + advertiserId.to_s + "/creatives")
response = Adzerk.get_request(uri)
JSON.parse(response.body)
end

def update(data={})
uri = URI.parse($host + 'creative/' + data["Id"].to_s)
data = { 'creative' => data.to_json }
Adzerk.put_request(uri, data)
end

def delete(id)
uri = URI.parse($host + 'creative/' + id + '/delete')
Adzerk.get_request(uri)
end

end
end
33 changes: 33 additions & 0 deletions lib/adzerk/creative_map.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
module Adzerk
class CreativeMap

def create(data={})
uri = URI.parse($host + "flight/" + data["FlightId"].to_s + '/creative')
data = { 'creative' => data.to_json }
Adzerk.post_request(uri, data)
end

def get(id, flightId)
uri = URI.parse($host + "flight/" + flightId.to_s + '/creative/' + id.to_s)
Adzerk.get_request(uri)
end

def list(flightId)
uri = URI.parse($host + 'flight/' + flightId.to_s + "/creatives")
response = Adzerk.get_request(uri)
JSON.parse(response.body)
end

def update(data={})
uri = URI.parse($host + "flight/" + data["FlightId"].to_s + '/creative/' + data["Id"].to_s)
data = { 'creative' => data.to_json }
Adzerk.put_request(uri, data)
end

def delete(id, flightId)
uri = URI.parse($host + "flight/" + flightId.to_s + '/creative/' + id.to_s + '/delete')
Adzerk.get_request(uri)
end

end
end
Loading

0 comments on commit 2b256d1

Please sign in to comment.