delphix_rb 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 916878dc92aeeb06d919257efd28d2d3a9de5161
4
- data.tar.gz: e0513a8bff89d459b872a0d5d76f8c35e4cd10f0
3
+ metadata.gz: ebed4a9039c033df4923a44c36c904dc16af8806
4
+ data.tar.gz: 2433a587f51d7dbc020e41c5daa45cbc72db9b0f
5
5
  SHA512:
6
- metadata.gz: b812e7c6099b206a8e23101037b53d61fb0ca97ffd1689299ea7952d01a1edcf71efcb78908bc08967b0fdeea99ea62c591062db5457204257fd1f6390258987
7
- data.tar.gz: a329c59718488e81a3146082631d13018c65349b4e3a00d9c6f64403e5296e1fabeb95de005c0a42c6df4e99208b5a21e9b454a7d4f57526090b904f8cd9d214
6
+ metadata.gz: 313d34e0424797b21f5eadf2c402bc552250ef5c8ccb9bd6594af0821bc29033af9b366952d333840a3e7c64d2a3e08f85e6967156de342a9b2dbcc02f9afe1b
7
+ data.tar.gz: 2f764a1cc4f1c40a898f47595572ba467886b052830bb3e506bb88cba393ac4f095a457ef9dd4a1d38047231593d6b5392bcd8d2820bf95bf271fd6fc614bc05
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.0
1
+ 0.3.0
data/delphix_rb.gemspec CHANGED
@@ -2,11 +2,11 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: delphix_rb 0.2.0 ruby lib
5
+ # stub: delphix_rb 0.3.0 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "delphix_rb"
9
- s.version = "0.2.0"
9
+ s.version = "0.3.0"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib"]
data/lib/delphix/base.rb CHANGED
@@ -33,7 +33,11 @@ module Delphix::Base
33
33
  def refresh_details
34
34
  # Placeholder. Subclasses need to implement this
35
35
  end
36
-
36
+
37
+ def base_endpoint
38
+ # Placeholder. Subclasses need to implement this
39
+ end
40
+
37
41
  def to_s
38
42
  "#{self.class.name}[#{type}, #{name}, #{reference}]"
39
43
  end
@@ -43,9 +47,14 @@ module Delphix::Base
43
47
  Delphix.get( endpoint, payload)
44
48
  end
45
49
 
46
- # a generic get method, used when there is not specialized method to invoke an API call
50
+ # a generic post method, used when there is not specialized method to invoke an API call
47
51
  def post(endpoint, payload)
48
52
  Delphix.post( endpoint, payload)
49
53
  end
50
54
 
55
+ # a generic delete method, used when there is not specialized method to invoke an API call
56
+ def delete(endpoint, payload)
57
+ Delphix.delete( endpoint, payload)
58
+ end
59
+
51
60
  end
@@ -9,6 +9,31 @@ class Delphix::Environment
9
9
  super(reference, details)
10
10
  end
11
11
 
12
+ # basic operations
13
+
14
+ def enable
15
+ post("#{base_endpoint}/#{reference}/enable", nil)['result']
16
+ end
17
+
18
+ def disable
19
+ post("#{base_endpoint}/#{reference}/disable", nil)['result']
20
+ end
21
+
22
+ def delete
23
+ delete("#{base_endpoint}/#{reference}", nil)['result']
24
+ end
25
+
26
+ # inherited operations
27
+
28
+ def refresh_details
29
+ @details = get("#{base_endpoint}/#{reference}", nil)['result']
30
+ end
31
+
32
+ def base_endpoint
33
+ '/resources/json/delphix/environment'
34
+ end
35
+
36
+ # additional operations
12
37
  def repositories
13
38
  repos = Delphix::BaseArray.new
14
39
  result = get('/resources/json/delphix/repository', nil)['result']
@@ -18,9 +43,7 @@ class Delphix::Environment
18
43
  repos
19
44
  end
20
45
 
21
- def refresh_details
22
- @details = get("/resources/json/delphix/environment/#{reference}", nil)['result']
23
- end
46
+ # instance methods
24
47
 
25
48
  def self.create(name, address, port, toolkit_path, username, password)
26
49
  body = {
data/lib/delphix.rb CHANGED
@@ -84,11 +84,21 @@ module Delphix
84
84
  connection.get( endpoint, {}, :body => payload)
85
85
  end
86
86
 
87
- # a generic get method, used when there is not specialized method to invoke an API call
87
+ # a generic post method, used when there is not specialized method to invoke an API call
88
88
  def post(endpoint, payload)
89
89
  connection.post( endpoint, {}, :body => payload)
90
90
  end
91
91
 
92
+ # a generic put method, used when there is not specialized method to invoke an API call
93
+ def put(endpoint, payload)
94
+ connection.put( endpoint, {}, :body => payload)
95
+ end
96
+
97
+ # a generic delete method, used when there is not specialized method to invoke an API call
98
+ def delete(endpoint, payload)
99
+ connection.delete( endpoint, {}, :body => payload)
100
+ end
101
+
92
102
  def url
93
103
  @url ||= env_url
94
104
  @url
@@ -138,7 +148,8 @@ private
138
148
  {}
139
149
  end
140
150
 
141
- module_function :get, :post, :environments, :groups, :repositories, :targets, :sources,
151
+ module_function :get, :post, :put, :delete,
152
+ :environments, :groups, :repositories,
142
153
  :authenticate!, :url, :url=, :options, :options=, :connection, :reset_connection!, :debug, :debug=,
143
154
  :env_url, :default_url, :env_options
144
155
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: delphix_rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Kuehl