Module: BlackStack::API

Defined in:
lib/functions.rb

Constant Summary collapse

@@api_key =
nil
@@api_url =
nil
@@api_port =
nil
@@api_version =
'1.0'
@@backtrace =
false
@@classes =
{}

Class Method Summary collapse

Class Method Details

.api_keyObject



17
18
19
# File 'lib/functions.rb', line 17

def self.api_key
    @@api_key
end

.api_portObject



25
26
27
# File 'lib/functions.rb', line 25

def self.api_port
    @@api_port
end

.api_urlObject

def self.backtrace



21
22
23
# File 'lib/functions.rb', line 21

def self.api_url
    @@api_url
end

.api_versionObject

def self.api_port



29
30
31
# File 'lib/functions.rb', line 29

def self.api_version
  @@api_version
end

.backtraceObject

def self.api_version



33
34
35
# File 'lib/functions.rb', line 33

def self.backtrace
  @@backtrace
end

.classesObject



41
42
43
# File 'lib/functions.rb', line 41

def self.classes
    @@classes
end

.post(endpoint:, params: {}) ⇒ Object

def self.set_server



66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
# File 'lib/functions.rb', line 66

def self.post(
    endpoint: , 
    params: {}
)
    begin
        url = "#{@@api_url}:#{@@api_port}/api#{@@api_version}/#{endpoint}.json"
        params['api_key'] = @@api_key
        res = BlackStack::Netting.call_post(url, params)
        parsed = JSON.parse(res.body)
        return JSON.parse(res.body)

        ## write response.body into a file
        # File.open('response.body.html', 'w') { |file| file.write(res.body) }
    rescue => e
        return {
            'status' => e.message,
            'value' => e.to_console
        }
    end
end

.set_client(api_key:, api_url:, api_version: '1.0', api_port: nil, backtrace: false) ⇒ Object

def self.classes



45
46
47
48
49
50
51
52
53
54
55
56
57
# File 'lib/functions.rb', line 45

def self.set_client(
    api_key: ,
    api_url: ,
    api_version: '1.0',
    api_port: nil,
    backtrace: false
)
    @@api_key = api_key
    @@api_url = api_url
    @@api_version = api_version
    @@api_port = api_port
    @@backtrace = backtrace
end

.set_server(classes: {}) ⇒ Object

merge existing classes with new ones.



60
61
62
63
64
# File 'lib/functions.rb', line 60

def self.set_server(
    classes: {}
)
    @@classes.merge!(classes)
end