havenondemand 1.1.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/LICENSE.txt +1 -1
- data/README.md +18 -3
- data/lib/havenondemand.rb +27 -0
- data/lib/havenondemand/version.rb +1 -1
- metadata +13 -17
- data/.DS_Store +0 -0
- data/examples/.DS_Store +0 -0
- data/lib/.DS_Store +0 -0
- data/lib/havenondemand/.DS_Store +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1d2b9f51210a8cd4468a49c84d80fda9c9a0a52d
|
4
|
+
data.tar.gz: d17470b777f645b3dbe2e4dbdc3489e67a31ae0d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b643922f3fdd20a7f206fb56640f3a35a30d6671a482bb952f3042829c62a8e13a792c2e45928488b81dd9aa08217fb28cf2296c4d1bfae88194b2b741232161
|
7
|
+
data.tar.gz: 168e597e6d84957f877e16d8c8625c537667613b6a592a9c508482328932e9e8f6af93a197c47df885ebb13a0644055c821d448415181b4fffda0e3d8b4b21bc
|
data/.gitignore
CHANGED
data/LICENSE.txt
CHANGED
data/README.md
CHANGED
@@ -88,6 +88,20 @@ docs = myjson["documents"]
|
|
88
88
|
array.each {|doc| puts doc["title"] }
|
89
89
|
```
|
90
90
|
|
91
|
+
### Combinations
|
92
|
+
|
93
|
+
Haven OnDemand allows to chain two ore more APIs together to create customizable, reusable services. These combinations enable one data input to have unlimited transformations and processing all from a single API call.
|
94
|
+
|
95
|
+
```ruby
|
96
|
+
data = { :parameters => { :name => "name_of_input", :value => "value_of_input"} }
|
97
|
+
r = client.post_combination('name_of_combination', data)
|
98
|
+
puts r.json()
|
99
|
+
```
|
100
|
+
|
101
|
+
**Note: using local files and publicly accessible URLs is not supported by this wrapper**
|
102
|
+
|
103
|
+
To find out more about combinations and how to create one, see [here](https://dev.havenondemand.com/combination/home).
|
104
|
+
|
91
105
|
###Indexing
|
92
106
|
|
93
107
|
**Creating an index**
|
@@ -153,9 +167,9 @@ It makes it easy to batch together groups of documents.
|
|
153
167
|
####Indexing - Connectors
|
154
168
|
|
155
169
|
```ruby
|
156
|
-
client = HODClient.new(
|
170
|
+
client = HODClient.new(apikey, version)
|
157
171
|
conn = HODConnector.new("mytestconnector", client)
|
158
|
-
conn.create(type="web", config = { "url" => "http://www.
|
172
|
+
conn.create(type="web", config = { "url" => "http://www.havenondemand.com" })
|
159
173
|
conn.delete()
|
160
174
|
```
|
161
175
|
|
@@ -183,8 +197,9 @@ r = index.commit(async = true)
|
|
183
197
|
|
184
198
|
|
185
199
|
## Contributing
|
200
|
+
We encourage you to contribute to this repo! Please send pull requests with modified and updated code.
|
186
201
|
|
187
|
-
1. Fork it ( https://github.com/
|
202
|
+
1. Fork it ( https://github.com/HPE-Haven-OnDemand/havenondemand-ruby/fork )
|
188
203
|
2. Create your feature branch (`git checkout -b my-new-feature`)
|
189
204
|
3. Commit your changes (`git commit -am 'Add some feature'`)
|
190
205
|
4. Push to the branch (`git push origin my-new-feature`)
|
data/lib/havenondemand.rb
CHANGED
@@ -3,6 +3,7 @@
|
|
3
3
|
require 'Unirest'
|
4
4
|
require 'json'
|
5
5
|
#require 'httpclient'
|
6
|
+
require 'byebug'
|
6
7
|
|
7
8
|
|
8
9
|
|
@@ -133,6 +134,32 @@ class HODClient
|
|
133
134
|
return post("connectorstatus",data)
|
134
135
|
end
|
135
136
|
|
137
|
+
def post_combination(combination, data=Hash.new, async=false)
|
138
|
+
handler="executecombination"
|
139
|
+
data[:apikey]=@apikey
|
140
|
+
syncpath="sync"
|
141
|
+
syncpath="async" if async
|
142
|
+
data[:combination] = combination
|
143
|
+
data[:parameters] = data[:parameters].to_json
|
144
|
+
Unirest.timeout(30)
|
145
|
+
|
146
|
+
response=Unirest.post "#{@url}/#{@@version}/api/#{syncpath}/#{handler}/#{@@apidefault}",
|
147
|
+
headers:{ "Accept" => "application/json", "Content-Type" => "application/json"},
|
148
|
+
parameters:data
|
149
|
+
if response.code == 200
|
150
|
+
|
151
|
+
if async
|
152
|
+
return HODAsyncResponse.new(response,self)
|
153
|
+
end
|
154
|
+
return HODResponse.new(response)
|
155
|
+
else
|
156
|
+
puts response.body
|
157
|
+
#puts data[:json].encoding.name
|
158
|
+
raise HODError.new "Error #{response.body["error"]} -- #{response.body["reason"]}"
|
159
|
+
end
|
160
|
+
|
161
|
+
end
|
162
|
+
|
136
163
|
def post(handler, data=Hash.new, async=false)
|
137
164
|
data[:apikey]=@apikey
|
138
165
|
syncpath="sync"
|
metadata
CHANGED
@@ -1,56 +1,56 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: havenondemand
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tyler Nappy
|
8
|
-
-
|
8
|
+
- ' Martin Zerbib'
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2016-12-06 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: unirest
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
requirements:
|
18
|
-
- -
|
18
|
+
- - '>='
|
19
19
|
- !ruby/object:Gem::Version
|
20
20
|
version: '0'
|
21
21
|
type: :runtime
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
|
-
- -
|
25
|
+
- - '>='
|
26
26
|
- !ruby/object:Gem::Version
|
27
27
|
version: '0'
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
29
|
name: bundler
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
31
31
|
requirements:
|
32
|
-
- -
|
32
|
+
- - ~>
|
33
33
|
- !ruby/object:Gem::Version
|
34
34
|
version: '1.7'
|
35
35
|
type: :development
|
36
36
|
prerelease: false
|
37
37
|
version_requirements: !ruby/object:Gem::Requirement
|
38
38
|
requirements:
|
39
|
-
- -
|
39
|
+
- - ~>
|
40
40
|
- !ruby/object:Gem::Version
|
41
41
|
version: '1.7'
|
42
42
|
- !ruby/object:Gem::Dependency
|
43
43
|
name: rake
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
45
45
|
requirements:
|
46
|
-
- -
|
46
|
+
- - ~>
|
47
47
|
- !ruby/object:Gem::Version
|
48
48
|
version: '10.0'
|
49
49
|
type: :development
|
50
50
|
prerelease: false
|
51
51
|
version_requirements: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
|
-
- -
|
53
|
+
- - ~>
|
54
54
|
- !ruby/object:Gem::Version
|
55
55
|
version: '10.0'
|
56
56
|
description: ''
|
@@ -60,19 +60,15 @@ executables: []
|
|
60
60
|
extensions: []
|
61
61
|
extra_rdoc_files: []
|
62
62
|
files:
|
63
|
-
-
|
64
|
-
- ".gitignore"
|
63
|
+
- .gitignore
|
65
64
|
- Gemfile
|
66
65
|
- LICENSE.txt
|
67
66
|
- README.md
|
68
67
|
- Rakefile
|
69
|
-
- examples/.DS_Store
|
70
68
|
- examples/examples.rb
|
71
69
|
- examples/testhelper.rb
|
72
70
|
- havenondemand.gemspec
|
73
|
-
- lib/.DS_Store
|
74
71
|
- lib/havenondemand.rb
|
75
|
-
- lib/havenondemand/.DS_Store
|
76
72
|
- lib/havenondemand/version.rb
|
77
73
|
homepage: https://github.com/HP-Haven-OnDemand/havenondemand-ruby
|
78
74
|
licenses:
|
@@ -84,17 +80,17 @@ require_paths:
|
|
84
80
|
- lib
|
85
81
|
required_ruby_version: !ruby/object:Gem::Requirement
|
86
82
|
requirements:
|
87
|
-
- -
|
83
|
+
- - '>='
|
88
84
|
- !ruby/object:Gem::Version
|
89
85
|
version: '0'
|
90
86
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
91
87
|
requirements:
|
92
|
-
- -
|
88
|
+
- - '>='
|
93
89
|
- !ruby/object:Gem::Version
|
94
90
|
version: '0'
|
95
91
|
requirements: []
|
96
92
|
rubyforge_project:
|
97
|
-
rubygems_version: 2.
|
93
|
+
rubygems_version: 2.0.14.1
|
98
94
|
signing_key:
|
99
95
|
specification_version: 4
|
100
96
|
summary: Haven OnDemand Ruby Client
|
data/.DS_Store
DELETED
Binary file
|
data/examples/.DS_Store
DELETED
Binary file
|
data/lib/.DS_Store
DELETED
Binary file
|
data/lib/havenondemand/.DS_Store
DELETED
Binary file
|