Class: ApiConnectClient::Developer

Inherits:
Object
  • Object
show all
Defined in:
lib/api_connect_client/developer.rb

Instance Method Summary collapse

Constructor Details

#initialize(username, password, organization_id) ⇒ Developer

Returns a new instance of Developer.



3
4
5
6
7
8
9
10
# File 'lib/api_connect_client/developer.rb', line 3

def initialize(username, password, organization_id)
  @headers = {
    'X-IBM-APIManagement-Context': ApiConnectClient::Config.context
  }
  @username = username
  @password = password
  @@organization_id = organization_id
end

Instance Method Details

#create_application(name, description, oauth_redirect_url, public_app = false) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/api_connect_client/developer.rb', line 12

def create_application(name, description, oauth_redirect_url, public_app = false)
  body = {
    "name" => name,
    "credentials" => {
      "clientID" => true,
      "clientSecret" => true
    },
    "description" => description || '',
    "oauthRedirectURI" => oauth_redirect_url,
    "public" => public_app
  }
  app = ApiConnectClient::Application.new(@@organization_id, @username, @password)
  app.create(body.to_json)
end

#delete_application(app_id) ⇒ Object



32
33
34
35
# File 'lib/api_connect_client/developer.rb', line 32

def delete_application(app_id)
  app = ApiConnectClient::Application.new(@@organization_id, @username, @password)
  app.remove(app_id)
end

#get_profile_informationObject



84
85
86
87
# File 'lib/api_connect_client/developer.rb', line 84

def get_profile_information
  user = ApiConnectClient::User.new(@username, @password)
  user.get_info
end

#list_application_subscriptions(app_id) ⇒ Object



74
75
76
77
# File 'lib/api_connect_client/developer.rb', line 74

def list_application_subscriptions(app_id)
  app = ApiConnectClient::Application.new(@@organization_id, @username, @password)
  app.list_subscriptions(app_id)
end

#list_applicationsObject



27
28
29
30
# File 'lib/api_connect_client/developer.rb', line 27

def list_applications
  app = ApiConnectClient::Application.new(@@organization_id, @username, @password)
  app.all
end

#list_organizationsObject



89
90
91
92
# File 'lib/api_connect_client/developer.rb', line 89

def list_organizations
  user = ApiConnectClient::User.new(@username, @password)
  user.list_organizations
end

#show_application(app_id) ⇒ Object



37
38
39
40
# File 'lib/api_connect_client/developer.rb', line 37

def show_application(app_id)
  app = ApiConnectClient::Application.new(@@organization_id, @username, @password)
  app.show(app_id)
end

#subscribe_application(app_id, product_id, plan = 'default') ⇒ Object



63
64
65
66
67
68
69
70
71
72
# File 'lib/api_connect_client/developer.rb', line 63

def subscribe_application(app_id, product_id, plan = 'default')
  body = {
    "plan" => plan,
    "product" => {
      "id" => product_id
    }
  }
  app = ApiConnectClient::Application.new(@@organization_id, @username, @password)
  app.subscribe(app_id, body.to_json)
end

#unsubscribe_application(app_id, subscription_id) ⇒ Object



79
80
81
82
# File 'lib/api_connect_client/developer.rb', line 79

def unsubscribe_application(app_id, subscription_id)
  app = ApiConnectClient::Application.new(@@organization_id, @username, @password)
  app.unsubscribe(app_id, subscription_id)
end

#update_application(app_id, name, description, oauth_redirect_uri, public_app) ⇒ Object



42
43
44
45
46
47
48
49
50
51
52
# File 'lib/api_connect_client/developer.rb', line 42

def update_application(app_id, name, description, oauth_redirect_uri, public_app)
  body = {
    "name" => name,
    "appImageURL" => "https://something.com/empty.jpg",
    "description" => description,
    "oauthRedirectURI" => oauth_redirect_uri,
    "public" => public_app
  }
  app = ApiConnectClient::Application.new(@@organization_id, @username, @password)
  app.update(app_id, body.to_json)
end

#update_application_credentials(app_id, client_id, client_secret) ⇒ Object



54
55
56
57
58
59
60
61
# File 'lib/api_connect_client/developer.rb', line 54

def update_application_credentials(app_id, client_id, client_secret)
  body = {
    "clientID" => client_id,
    "clientSecret" => client_secret
  }
  app = ApiConnectClient::Application.new(@@organization_id, @username, @password)
  app.update_credentials(app_id, body.to_json)
end