vas 0.4.0 → 1.0.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.
- data/README.md +1 -1
- data/lib/vas.rb +44 -1
- data/lib/vas/gemfire/agent_instances.rb +4 -3
- data/lib/vas/gemfire/agent_live_configurations.rb +3 -3
- data/lib/vas/gemfire/agent_node_instances.rb +2 -2
- data/lib/vas/gemfire/agent_node_live_configurations.rb +39 -0
- data/lib/vas/gemfire/application_code.rb +13 -12
- data/lib/vas/gemfire/application_code_images.rb +13 -11
- data/lib/vas/gemfire/cache_server_instances.rb +20 -12
- data/lib/vas/gemfire/cache_server_live_configurations.rb +3 -3
- data/lib/vas/gemfire/cache_server_node_instances.rb +16 -9
- data/lib/vas/gemfire/cache_server_node_live_configurations.rb +39 -0
- data/lib/vas/gemfire/disk_stores.rb +19 -11
- data/lib/vas/gemfire/gemfire.rb +4 -4
- data/lib/vas/gemfire/groups.rb +17 -10
- data/lib/vas/gemfire/installations.rb +12 -3
- data/lib/vas/gemfire/live_application_codes.rb +2 -2
- data/lib/vas/gemfire/locator_instances.rb +23 -13
- data/lib/vas/gemfire/locator_live_configurations.rb +3 -3
- data/lib/vas/gemfire/locator_node_instances.rb +22 -14
- data/lib/vas/gemfire/locator_node_live_configurations.rb +39 -0
- data/lib/vas/gemfire/nodes.rb +27 -6
- data/lib/vas/gemfire/pending_application_codes.rb +7 -2
- data/lib/vas/gemfire/statistics.rb +18 -11
- data/lib/vas/rabbitmq/groups.rb +6 -4
- data/lib/vas/rabbitmq/installations.rb +14 -6
- data/lib/vas/rabbitmq/instances.rb +9 -6
- data/lib/vas/rabbitmq/live_configurations.rb +3 -3
- data/lib/vas/rabbitmq/node_instances.rb +2 -2
- data/lib/vas/rabbitmq/node_live_configurations.rb +39 -0
- data/lib/vas/rabbitmq/nodes.rb +11 -8
- data/lib/vas/rabbitmq/plugin_images.rb +14 -7
- data/lib/vas/rabbitmq/plugins.rb +29 -20
- data/lib/vas/rabbitmq/rabbitmq.rb +4 -4
- data/lib/vas/shared/collection.rb +34 -11
- data/lib/vas/shared/configuration.rb +16 -9
- data/lib/vas/shared/deletable.rb +34 -0
- data/lib/vas/shared/groups.rb +26 -15
- data/lib/vas/shared/installation_images.rb +18 -10
- data/lib/vas/shared/installations.rb +22 -22
- data/lib/vas/shared/instance.rb +40 -19
- data/lib/vas/shared/live_configuration.rb +42 -0
- data/lib/vas/shared/logs.rb +27 -14
- data/lib/vas/shared/mutable_collection.rb +13 -5
- data/lib/vas/shared/node_configuration.rb +74 -0
- data/lib/vas/shared/node_instances.rb +32 -14
- data/lib/vas/shared/nodes.rb +37 -14
- data/lib/vas/shared/{pending_configuration.rb → pending_configurations.rb} +4 -2
- data/lib/vas/shared/resource.rb +12 -2
- data/lib/vas/shared/security.rb +11 -4
- data/lib/vas/shared/state_resource.rb +1 -1
- data/lib/vas/sqlfire/agent_instances.rb +98 -0
- data/lib/vas/sqlfire/agent_live_configurations.rb +39 -0
- data/lib/vas/sqlfire/agent_logs.rb +39 -0
- data/lib/vas/sqlfire/agent_node_instances.rb +54 -0
- data/lib/vas/sqlfire/agent_node_live_configurations.rb +39 -0
- data/lib/vas/sqlfire/agent_pending_configurations.rb +39 -0
- data/lib/vas/sqlfire/groups.rb +58 -0
- data/lib/vas/sqlfire/installation_images.rb +39 -0
- data/lib/vas/sqlfire/installations.rb +61 -0
- data/lib/vas/sqlfire/locator_instances.rb +210 -0
- data/lib/vas/sqlfire/locator_live_configurations.rb +39 -0
- data/lib/vas/sqlfire/locator_logs.rb +39 -0
- data/lib/vas/sqlfire/locator_node_instances.rb +91 -0
- data/lib/vas/sqlfire/locator_node_live_configurations.rb +39 -0
- data/lib/vas/sqlfire/locator_pending_configurations.rb +39 -0
- data/lib/vas/sqlfire/nodes.rb +73 -0
- data/lib/vas/sqlfire/server_instances.rb +192 -0
- data/lib/vas/sqlfire/server_live_configurations.rb +39 -0
- data/lib/vas/sqlfire/server_logs.rb +39 -0
- data/lib/vas/sqlfire/server_node_instances.rb +86 -0
- data/lib/vas/sqlfire/server_node_live_configurations.rb +39 -0
- data/lib/vas/sqlfire/server_pending_configurations.rb +39 -0
- data/lib/vas/sqlfire/sqlfire.rb +44 -0
- data/lib/vas/tc_server/applications.rb +32 -21
- data/lib/vas/tc_server/configuration.rb +1 -1
- data/lib/vas/tc_server/groups.rb +7 -4
- data/lib/vas/tc_server/installations.rb +16 -6
- data/lib/vas/tc_server/instances.rb +25 -13
- data/lib/vas/tc_server/live_configurations.rb +11 -1
- data/lib/vas/tc_server/logs.rb +4 -2
- data/lib/vas/tc_server/node_applications.rb +21 -17
- data/lib/vas/tc_server/node_instances.rb +23 -9
- data/lib/vas/tc_server/node_live_configurations.rb +39 -0
- data/lib/vas/tc_server/node_revisions.rb +15 -10
- data/lib/vas/tc_server/nodes.rb +15 -8
- data/lib/vas/tc_server/revision_images.rb +16 -10
- data/lib/vas/tc_server/revisions.rb +20 -16
- data/lib/vas/tc_server/tc_server.rb +5 -5
- data/lib/vas/tc_server/template_images.rb +13 -7
- data/lib/vas/tc_server/templates.rb +21 -13
- data/lib/vas/util/client.rb +15 -6
- data/lib/vas/vfabric/agent_image.rb +1 -1
- data/lib/vas/vfabric/nodes.rb +4 -11
- data/lib/vas/vfabric/v_fabric.rb +2 -2
- data/lib/vas/vfabric_administration_server.rb +37 -6
- data/lib/vas/web_server/configuration.rb +29 -0
- data/lib/vas/web_server/groups.rb +44 -0
- data/lib/vas/web_server/installation_images.rb +54 -0
- data/lib/vas/web_server/installations.rb +52 -0
- data/lib/vas/web_server/instances.rb +65 -0
- data/lib/vas/web_server/live_configurations.rb +39 -0
- data/lib/vas/web_server/logs.rb +37 -0
- data/lib/vas/web_server/node_instances.rb +39 -0
- data/lib/vas/web_server/node_live_configurations.rb +39 -0
- data/lib/vas/web_server/nodes.rb +53 -0
- data/lib/vas/web_server/pending_configurations.rb +39 -0
- data/lib/vas/web_server/web_server.rb +43 -0
- metadata +137 -76
data/README.md
CHANGED
|
@@ -37,7 +37,7 @@ A number of [examples](https://github.com/vFabric/vas-ruby-api/tree/master/examp
|
|
|
37
37
|
|
|
38
38
|
### Documentation
|
|
39
39
|
|
|
40
|
-
You may also like to look at the [API documentation](http://rubydoc.info/gems/vas/
|
|
40
|
+
You may also like to look at the [API documentation](http://rubydoc.info/gems/vas/frames).
|
|
41
41
|
|
|
42
42
|
##Licence
|
|
43
43
|
|
data/lib/vas.rb
CHANGED
|
@@ -20,12 +20,15 @@ require 'net/https'
|
|
|
20
20
|
require 'net/http/post/multipart'
|
|
21
21
|
require 'vas/shared/resource'
|
|
22
22
|
require 'vas/shared/collection'
|
|
23
|
+
require 'vas/shared/deletable'
|
|
23
24
|
require 'vas/shared/mutable_collection'
|
|
24
25
|
require 'vas/shared/configuration'
|
|
25
26
|
require 'vas/shared/groups'
|
|
26
27
|
require 'vas/shared/installations'
|
|
27
28
|
require 'vas/shared/installation_images'
|
|
28
|
-
require 'vas/shared/
|
|
29
|
+
require 'vas/shared/live_configuration'
|
|
30
|
+
require 'vas/shared/node_configuration'
|
|
31
|
+
require 'vas/shared/pending_configurations'
|
|
29
32
|
require 'vas/shared/security'
|
|
30
33
|
require 'vas/shared/state_resource'
|
|
31
34
|
require 'vas/shared/instance'
|
|
@@ -36,6 +39,7 @@ require 'vas/gemfire/agent_instances'
|
|
|
36
39
|
require 'vas/gemfire/agent_live_configurations'
|
|
37
40
|
require 'vas/gemfire/agent_logs'
|
|
38
41
|
require 'vas/gemfire/agent_node_instances'
|
|
42
|
+
require 'vas/gemfire/agent_node_live_configurations'
|
|
39
43
|
require 'vas/gemfire/agent_pending_configurations'
|
|
40
44
|
require 'vas/gemfire/application_code_images'
|
|
41
45
|
require 'vas/gemfire/application_code'
|
|
@@ -43,6 +47,7 @@ require 'vas/gemfire/cache_server_instances'
|
|
|
43
47
|
require 'vas/gemfire/cache_server_live_configurations'
|
|
44
48
|
require 'vas/gemfire/cache_server_logs'
|
|
45
49
|
require 'vas/gemfire/cache_server_node_instances'
|
|
50
|
+
require 'vas/gemfire/cache_server_node_live_configurations'
|
|
46
51
|
require 'vas/gemfire/cache_server_pending_configurations'
|
|
47
52
|
require 'vas/gemfire/disk_stores'
|
|
48
53
|
require 'vas/gemfire/gemfire'
|
|
@@ -54,6 +59,7 @@ require 'vas/gemfire/locator_instances'
|
|
|
54
59
|
require 'vas/gemfire/locator_live_configurations'
|
|
55
60
|
require 'vas/gemfire/locator_logs'
|
|
56
61
|
require 'vas/gemfire/locator_node_instances'
|
|
62
|
+
require 'vas/gemfire/locator_node_live_configurations'
|
|
57
63
|
require 'vas/gemfire/locator_pending_configurations'
|
|
58
64
|
require 'vas/gemfire/nodes'
|
|
59
65
|
require 'vas/gemfire/pending_application_codes'
|
|
@@ -67,9 +73,33 @@ require 'vas/rabbitmq/instances'
|
|
|
67
73
|
require 'vas/rabbitmq/live_configurations'
|
|
68
74
|
require 'vas/rabbitmq/logs'
|
|
69
75
|
require 'vas/rabbitmq/node_instances'
|
|
76
|
+
require 'vas/rabbitmq/node_live_configurations'
|
|
70
77
|
require 'vas/rabbitmq/nodes'
|
|
71
78
|
require 'vas/rabbitmq/pending_configurations'
|
|
72
79
|
require 'vas/rabbitmq/rabbitmq'
|
|
80
|
+
require 'vas/sqlfire/agent_instances'
|
|
81
|
+
require 'vas/sqlfire/agent_live_configurations'
|
|
82
|
+
require 'vas/sqlfire/agent_logs'
|
|
83
|
+
require 'vas/sqlfire/agent_node_instances'
|
|
84
|
+
require 'vas/sqlfire/agent_node_live_configurations'
|
|
85
|
+
require 'vas/sqlfire/agent_pending_configurations'
|
|
86
|
+
require 'vas/sqlfire/groups'
|
|
87
|
+
require 'vas/sqlfire/installation_images'
|
|
88
|
+
require 'vas/sqlfire/installations'
|
|
89
|
+
require 'vas/sqlfire/locator_instances'
|
|
90
|
+
require 'vas/sqlfire/locator_live_configurations'
|
|
91
|
+
require 'vas/sqlfire/locator_logs'
|
|
92
|
+
require 'vas/sqlfire/locator_node_instances'
|
|
93
|
+
require 'vas/sqlfire/locator_node_live_configurations'
|
|
94
|
+
require 'vas/sqlfire/locator_pending_configurations'
|
|
95
|
+
require 'vas/sqlfire/nodes'
|
|
96
|
+
require 'vas/sqlfire/server_instances'
|
|
97
|
+
require 'vas/sqlfire/server_live_configurations'
|
|
98
|
+
require 'vas/sqlfire/server_logs'
|
|
99
|
+
require 'vas/sqlfire/server_node_instances'
|
|
100
|
+
require 'vas/sqlfire/server_node_live_configurations'
|
|
101
|
+
require 'vas/sqlfire/server_pending_configurations'
|
|
102
|
+
require 'vas/sqlfire/sqlfire'
|
|
73
103
|
require 'vas/tc_server/applications'
|
|
74
104
|
require 'vas/tc_server/configuration'
|
|
75
105
|
require 'vas/tc_server/groups'
|
|
@@ -80,6 +110,7 @@ require 'vas/tc_server/live_configurations'
|
|
|
80
110
|
require 'vas/tc_server/logs'
|
|
81
111
|
require 'vas/tc_server/node_applications'
|
|
82
112
|
require 'vas/tc_server/node_instances'
|
|
113
|
+
require 'vas/tc_server/node_live_configurations'
|
|
83
114
|
require 'vas/tc_server/node_revisions'
|
|
84
115
|
require 'vas/tc_server/nodes'
|
|
85
116
|
require 'vas/tc_server/pending_configurations'
|
|
@@ -95,4 +126,16 @@ require 'vas/vfabric/agent_image'
|
|
|
95
126
|
require 'vas/vfabric/nodes'
|
|
96
127
|
require 'vas/vfabric/v_fabric'
|
|
97
128
|
require 'vas/vfabric_administration_server'
|
|
129
|
+
require 'vas/web_server/configuration'
|
|
130
|
+
require 'vas/web_server/groups'
|
|
131
|
+
require 'vas/web_server/installation_images'
|
|
132
|
+
require 'vas/web_server/installations'
|
|
133
|
+
require 'vas/web_server/instances'
|
|
134
|
+
require 'vas/web_server/live_configurations'
|
|
135
|
+
require 'vas/web_server/logs'
|
|
136
|
+
require 'vas/web_server/node_instances'
|
|
137
|
+
require 'vas/web_server/node_live_configurations'
|
|
138
|
+
require 'vas/web_server/nodes'
|
|
139
|
+
require 'vas/web_server/pending_configurations'
|
|
140
|
+
require 'vas/web_server/web_server'
|
|
98
141
|
require 'zip/zipfilesystem'
|
|
@@ -21,7 +21,7 @@ module Gemfire
|
|
|
21
21
|
|
|
22
22
|
# @private
|
|
23
23
|
def initialize(location, client)
|
|
24
|
-
super(location, client,
|
|
24
|
+
super(location, client, 'agent-group-instances', AgentInstance)
|
|
25
25
|
end
|
|
26
26
|
|
|
27
27
|
# Creates a new agent instance
|
|
@@ -32,7 +32,7 @@ module Gemfire
|
|
|
32
32
|
# @return [AgentInstance] the new agent instance
|
|
33
33
|
def create(installation, name)
|
|
34
34
|
payload = { :installation => installation.location, :name => name }
|
|
35
|
-
|
|
35
|
+
super(payload, 'agent-group-instance')
|
|
36
36
|
end
|
|
37
37
|
|
|
38
38
|
end
|
|
@@ -51,7 +51,8 @@ module Gemfire
|
|
|
51
51
|
#
|
|
52
52
|
# @return [void]
|
|
53
53
|
def update(installation)
|
|
54
|
-
client.post(location, { :installation => installation.location })
|
|
54
|
+
client.post(location, { :installation => installation.location })
|
|
55
|
+
reload
|
|
55
56
|
end
|
|
56
57
|
|
|
57
58
|
end
|
|
@@ -21,17 +21,17 @@ module Gemfire
|
|
|
21
21
|
|
|
22
22
|
# @private
|
|
23
23
|
def initialize(location, client)
|
|
24
|
-
super(location, client,
|
|
24
|
+
super(location, client, 'live-configurations', AgentLiveConfiguration)
|
|
25
25
|
end
|
|
26
26
|
|
|
27
27
|
end
|
|
28
28
|
|
|
29
29
|
# A live configuration file in an agent instance
|
|
30
|
-
class AgentLiveConfiguration < Shared::
|
|
30
|
+
class AgentLiveConfiguration < Shared::LiveConfiguration
|
|
31
31
|
|
|
32
32
|
# @private
|
|
33
33
|
def initialize(location, client)
|
|
34
|
-
super(location, client,
|
|
34
|
+
super(location, client, 'agent-group-instance', AgentInstance, AgentNodeLiveConfiguration)
|
|
35
35
|
end
|
|
36
36
|
|
|
37
37
|
end
|
|
@@ -21,7 +21,7 @@ module Gemfire
|
|
|
21
21
|
|
|
22
22
|
# @private
|
|
23
23
|
def initialize(location, client)
|
|
24
|
-
super(location, client,
|
|
24
|
+
super(location, client, 'agent-node-instances', AgentNodeInstance)
|
|
25
25
|
end
|
|
26
26
|
|
|
27
27
|
end
|
|
@@ -31,7 +31,7 @@ module Gemfire
|
|
|
31
31
|
|
|
32
32
|
# @private
|
|
33
33
|
def initialize(location, client)
|
|
34
|
-
super(location, client, Node, AgentLogs, AgentInstance, 'agent-group-instance')
|
|
34
|
+
super(location, client, Node, AgentLogs, AgentInstance, 'agent-group-instance', AgentNodeLiveConfigurations)
|
|
35
35
|
end
|
|
36
36
|
|
|
37
37
|
end
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# vFabric Administration Server Ruby API
|
|
2
|
+
# Copyright (c) 2012 VMware, Inc. All Rights Reserved.
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
module Gemfire
|
|
18
|
+
|
|
19
|
+
# Used to enumerate an agent node instance's live configuration
|
|
20
|
+
class AgentNodeLiveConfigurations < Shared::Collection
|
|
21
|
+
|
|
22
|
+
# @private
|
|
23
|
+
def initialize(location, client)
|
|
24
|
+
super(location, client, 'node-live-configurations', AgentNodeLiveConfiguration)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
# A live configuration file in an agent node instance
|
|
30
|
+
class AgentNodeLiveConfiguration < Shared::NodeConfiguration
|
|
31
|
+
|
|
32
|
+
# @private
|
|
33
|
+
def initialize(location, client)
|
|
34
|
+
super(location, client, 'agent-node-instance', AgentNodeInstance, AgentLiveConfiguration)
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
end
|
|
@@ -25,24 +25,25 @@ module Gemfire
|
|
|
25
25
|
# @return [String] the version of the application code
|
|
26
26
|
attr_reader :version
|
|
27
27
|
|
|
28
|
-
# @return [ApplicationCodeImage] the image that was used to create the application code
|
|
29
|
-
attr_reader :application_code_image
|
|
30
|
-
|
|
31
|
-
# @return [CacheServerInstance] the cache server instance that contains the application code
|
|
32
|
-
attr_reader :instance
|
|
33
|
-
|
|
34
28
|
# @private
|
|
35
29
|
def initialize(location, client)
|
|
36
30
|
super(location, client)
|
|
37
31
|
|
|
38
|
-
@name = details[
|
|
39
|
-
@version = details[
|
|
32
|
+
@name = details['name']
|
|
33
|
+
@version = details['version']
|
|
40
34
|
|
|
41
|
-
@
|
|
42
|
-
|
|
35
|
+
@application_code_image_location = Util::LinkUtils.get_link_href(details, 'application-code-image')
|
|
36
|
+
@instance_location = Util::LinkUtils.get_link_href(details, 'cache-server-group-instance')
|
|
37
|
+
end
|
|
43
38
|
|
|
44
|
-
|
|
45
|
-
|
|
39
|
+
# @return [ApplicationCodeImage] the image that was used to create the application code
|
|
40
|
+
def application_code_image
|
|
41
|
+
@application_code_image ||= ApplicationCodeImage.new(@application_code_image_location, client)
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# @return [CacheServerInstance] the cache server instance that contains the application code
|
|
45
|
+
def instance
|
|
46
|
+
@instance ||= CacheServerInstance.new(@instance_location, client)
|
|
46
47
|
end
|
|
47
48
|
|
|
48
49
|
# @return [String] a string representation of the application code
|
|
@@ -21,7 +21,7 @@ module Gemfire
|
|
|
21
21
|
|
|
22
22
|
# @private
|
|
23
23
|
def initialize(location, client)
|
|
24
|
-
super(location, client,
|
|
24
|
+
super(location, client, 'application-code-images', ApplicationCodeImage)
|
|
25
25
|
end
|
|
26
26
|
|
|
27
27
|
# Creates a new application code image by uploading a file and assigning it a name and version
|
|
@@ -32,13 +32,15 @@ module Gemfire
|
|
|
32
32
|
#
|
|
33
33
|
# @return [ApplicationCodeImage] the new application code image
|
|
34
34
|
def create(path, name, version)
|
|
35
|
-
|
|
35
|
+
create_image(path, { :name => name, :version => version })
|
|
36
36
|
end
|
|
37
37
|
|
|
38
38
|
end
|
|
39
39
|
|
|
40
40
|
# An application code image
|
|
41
41
|
class ApplicationCodeImage < Shared::Resource
|
|
42
|
+
|
|
43
|
+
include Shared::Deletable
|
|
42
44
|
|
|
43
45
|
# @return [String] the application code image's name
|
|
44
46
|
attr_reader :name
|
|
@@ -60,23 +62,23 @@ module Gemfire
|
|
|
60
62
|
|
|
61
63
|
# @return [ApplicationCode[]] the live application code that has been created from this application code image
|
|
62
64
|
def live_application_code
|
|
63
|
-
|
|
64
|
-
Util::LinkUtils.get_link_hrefs(client.get(location), "live-application-code").each {
|
|
65
|
-
|application_code_location| application_codes << ApplicationCode.new(application_code_location, client)}
|
|
66
|
-
application_codes
|
|
65
|
+
@live_application_codes ||= create_resources_from_links('live-application-code', ApplicationCode)
|
|
67
66
|
end
|
|
68
67
|
|
|
69
68
|
# @return [ApplicationCode[]] the pending application code that has been created from this application code image
|
|
70
69
|
def pending_application_code
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
70
|
+
@pending_application_codes ||= create_resources_from_links('pending-application-code', ApplicationCode)
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
def reload
|
|
74
|
+
super
|
|
75
|
+
@live_application_codes = nil
|
|
76
|
+
@pending_application_codes = nil
|
|
75
77
|
end
|
|
76
78
|
|
|
77
79
|
# @return [String] a string representation of the application code image
|
|
78
80
|
def to_s
|
|
79
|
-
"#<#{self.class} name='#@name' version='#@version'>"
|
|
81
|
+
"#<#{self.class} name='#@name' version='#@version' size='#@size'>"
|
|
80
82
|
end
|
|
81
83
|
|
|
82
84
|
end
|
|
@@ -21,7 +21,7 @@ module Gemfire
|
|
|
21
21
|
|
|
22
22
|
# @private
|
|
23
23
|
def initialize(location, client)
|
|
24
|
-
super(location, client,
|
|
24
|
+
super(location, client, 'cache-server-group-instances', CacheServerInstance)
|
|
25
25
|
end
|
|
26
26
|
|
|
27
27
|
# Creates a new cache server instance
|
|
@@ -32,7 +32,7 @@ module Gemfire
|
|
|
32
32
|
# @return [CacheServerInstance] the new cache server instance
|
|
33
33
|
def create(installation, name)
|
|
34
34
|
payload = { :installation => installation.location, :name => name }
|
|
35
|
-
|
|
35
|
+
super(payload, 'cache-server-group-instance')
|
|
36
36
|
end
|
|
37
37
|
|
|
38
38
|
end
|
|
@@ -40,17 +40,14 @@ module Gemfire
|
|
|
40
40
|
# A cache server instance
|
|
41
41
|
class CacheServerInstance < Shared::Instance
|
|
42
42
|
|
|
43
|
-
# @return [LiveApplicationCodes] the instance's live application code
|
|
44
|
-
attr_reader :live_application_code
|
|
45
|
-
|
|
46
|
-
# @return [PendingApplicationCodes] the instance's pending application code
|
|
47
|
-
attr_reader :pending_application_code
|
|
48
|
-
|
|
49
43
|
# @private
|
|
50
44
|
def initialize(location, client)
|
|
51
|
-
super(location, client, Group, Installation, CacheServerLiveConfigurations, CacheServerPendingConfigurations,
|
|
52
|
-
|
|
53
|
-
|
|
45
|
+
super(location, client, Group, Installation, CacheServerLiveConfigurations, CacheServerPendingConfigurations,
|
|
46
|
+
CacheServerNodeInstance, 'cache-server-node-instance')
|
|
47
|
+
|
|
48
|
+
@live_application_code_location = Util::LinkUtils.get_link_href(details, 'live-application-code')
|
|
49
|
+
@pending_application_code_location = Util::LinkUtils.get_link_href(details, 'pending-application-code')
|
|
50
|
+
|
|
54
51
|
end
|
|
55
52
|
|
|
56
53
|
# Updates the instance to use a different installation
|
|
@@ -59,7 +56,18 @@ module Gemfire
|
|
|
59
56
|
#
|
|
60
57
|
# @return [void]
|
|
61
58
|
def update(installation)
|
|
62
|
-
client.post(location, { :installation => installation.location })
|
|
59
|
+
client.post(location, { :installation => installation.location })
|
|
60
|
+
reload
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
# @return [LiveApplicationCodes] the instance's live application code
|
|
64
|
+
def live_application_code
|
|
65
|
+
@live_application_code ||= LiveApplicationCodes.new(@live_application_code_location, client)
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
# @return [PendingApplicationCodes] the instance's pending application code
|
|
69
|
+
def pending_application_code
|
|
70
|
+
@pending_application_code ||= PendingApplicationCodes.new(@pending_application_code_location, client)
|
|
63
71
|
end
|
|
64
72
|
|
|
65
73
|
end
|
|
@@ -21,17 +21,17 @@ module Gemfire
|
|
|
21
21
|
|
|
22
22
|
# @private
|
|
23
23
|
def initialize(location, client)
|
|
24
|
-
super(location, client,
|
|
24
|
+
super(location, client, 'live-configurations', CacheServerLiveConfiguration)
|
|
25
25
|
end
|
|
26
26
|
|
|
27
27
|
end
|
|
28
28
|
|
|
29
29
|
# A live configuration file in a cache server instance
|
|
30
|
-
class CacheServerLiveConfiguration < Shared::
|
|
30
|
+
class CacheServerLiveConfiguration < Shared::LiveConfiguration
|
|
31
31
|
|
|
32
32
|
# @private
|
|
33
33
|
def initialize(location, client)
|
|
34
|
-
super(location, client,
|
|
34
|
+
super(location, client, 'cache-server-group-instance', CacheServerInstance, CacheServerNodeLiveConfiguration)
|
|
35
35
|
end
|
|
36
36
|
|
|
37
37
|
end
|
|
@@ -21,7 +21,7 @@ module Gemfire
|
|
|
21
21
|
|
|
22
22
|
# @private
|
|
23
23
|
def initialize(location, client)
|
|
24
|
-
super(location, client,
|
|
24
|
+
super(location, client, 'cache-server-node-instances', CacheServerNodeInstance)
|
|
25
25
|
end
|
|
26
26
|
|
|
27
27
|
end
|
|
@@ -29,17 +29,24 @@ module Gemfire
|
|
|
29
29
|
# A cache server node instance
|
|
30
30
|
class CacheServerNodeInstance < Shared::NodeInstance
|
|
31
31
|
|
|
32
|
+
# @private
|
|
33
|
+
def initialize(location, client)
|
|
34
|
+
super(location, client, Node, CacheServerLogs, CacheServerInstance, 'cache-server-group-instance',
|
|
35
|
+
CacheServerNodeLiveConfigurations)
|
|
36
|
+
|
|
37
|
+
@disk_stores_location = Util::LinkUtils.get_link_href(details, 'disk-stores')
|
|
38
|
+
@statistics_location = Util::LinkUtils.get_link_href(details, 'statistics')
|
|
39
|
+
|
|
40
|
+
end
|
|
41
|
+
|
|
32
42
|
# @return [DiskStores] the instance's disk stores
|
|
33
|
-
|
|
43
|
+
def disk_stores
|
|
44
|
+
@disk_stores ||= DiskStores.new(@disk_stores_location, client)
|
|
45
|
+
end
|
|
34
46
|
|
|
35
47
|
# @return [Statistics] the instance's statistics
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
# @private
|
|
39
|
-
def initialize(location, client)
|
|
40
|
-
super(location, client, Node, CacheServerLogs, CacheServerInstance, 'cache-server-group-instance')
|
|
41
|
-
@disk_stores = DiskStores.new(Util::LinkUtils.get_link_href(details, 'disk-stores'), client)
|
|
42
|
-
@statistics = Statistics.new(Util::LinkUtils.get_link_href(details, 'statistics'), client)
|
|
48
|
+
def statistics
|
|
49
|
+
@statistics ||= Statistics.new(@statistics_location, client)
|
|
43
50
|
end
|
|
44
51
|
|
|
45
52
|
end
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# vFabric Administration Server Ruby API
|
|
2
|
+
# Copyright (c) 2012 VMware, Inc. All Rights Reserved.
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
module Gemfire
|
|
18
|
+
|
|
19
|
+
# Used to enumerate a cache server node instance's live configuration
|
|
20
|
+
class CacheServerNodeLiveConfigurations < Shared::Collection
|
|
21
|
+
|
|
22
|
+
# @private
|
|
23
|
+
def initialize(location, client)
|
|
24
|
+
super(location, client, 'node-live-configurations', CacheServerNodeLiveConfiguration)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
# A live configuration file in a cache server node instance
|
|
30
|
+
class CacheServerNodeLiveConfiguration < Shared::NodeConfiguration
|
|
31
|
+
|
|
32
|
+
# @private
|
|
33
|
+
def initialize(location, client)
|
|
34
|
+
super(location, client, 'cache-server-node-instance', CacheServerNodeInstance, CacheServerLiveConfiguration)
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
end
|