Class: RubyAem::Aem
- Inherits:
-
Object
- Object
- RubyAem::Aem
- Defined in:
- lib/ruby_aem.rb
Overview
Aem class represents an AEM client instance.
Instance Method Summary collapse
-
#aem ⇒ Object
Create an AEM instance.
-
#bundle(name) ⇒ Object
Create a bundle instance.
-
#config_property(name, type, value) ⇒ Object
Create a config property instance.
-
#flush_agent(run_mode, name) ⇒ Object
Create a flush agent instance.
-
#group(path, name) ⇒ Object
Create a group instance.
-
#initialize(conf = {}) ⇒ Object
constructor
Initialise a Ruby AEM instance.
-
#node(path, name) ⇒ Object
Create a node instance.
-
#outbox_replication_agent(run_mode, name) ⇒ Object
Create an outbox replication agent instance.
-
#package(group_name, package_name, package_version) ⇒ Object
Create a package instance.
-
#path(name) ⇒ Object
Create a path instance.
-
#replication_agent(run_mode, name) ⇒ Object
Create a replication agent instance.
-
#repository ⇒ Object
Create a repository instance.
-
#reverse_replication_agent(run_mode, name) ⇒ Object
Create a reverse replication agent instance.
-
#sanitise_conf(conf) ⇒ Object
Set default configuration values and handle numeric/boolean String values.
-
#user(path, name) ⇒ Object
Create a user instance.
Constructor Details
#initialize(conf = {}) ⇒ Object
Initialise a Ruby AEM instance.
-
username: username used to authenticate to AEM instance, default: ‘admin’
-
password: password used to authenticate to AEM instance, default: ‘admin’
-
protocol: AEM instance protocol (http or https), default: ‘http’
-
host: AEM instance host name, default: ‘localhost’
-
port: AEM instance port, default: 4502
-
timeout: connection timeout in seconds, default: 300 seconds
-
debug: if true, then additional debug messages will be included, default: false
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/ruby_aem.rb', line 46 def initialize(conf = {}) sanitise_conf(conf) SwaggerAemClient.configure { |swagger_conf| [ swagger_conf.scheme = conf[:protocol], swagger_conf.host = "#{conf[:host]}:#{conf[:port]}", swagger_conf.username = conf[:username], swagger_conf.password = conf[:password], swagger_conf.timeout = conf[:timeout], swagger_conf.debugging = conf[:debug], swagger_conf.verify_ssl = conf[:verify_ssl], swagger_conf.verify_ssl_host = conf[:verify_ssl], swagger_conf.params_encoding = :multi ] } apis = { console: SwaggerAemClient::ConsoleApi.new, custom: SwaggerAemClient::CustomApi.new, cq: SwaggerAemClient::CqApi.new, crx: SwaggerAemClient::CrxApi.new, sling: SwaggerAemClient::SlingApi.new } spec = YAML.load_file(File.('../../conf/spec.yaml', __FILE__)) @client = RubyAem::Client.new(apis, spec) end |
Instance Method Details
#aem ⇒ Object
Create an AEM instance.
95 96 97 |
# File 'lib/ruby_aem.rb', line 95 def aem RubyAem::Resources::Aem.new(@client) end |
#bundle(name) ⇒ Object
Create a bundle instance.
103 104 105 |
# File 'lib/ruby_aem.rb', line 103 def bundle(name) RubyAem::Resources::Bundle.new(@client, name) end |
#config_property(name, type, value) ⇒ Object
Create a config property instance.
113 114 115 |
# File 'lib/ruby_aem.rb', line 113 def config_property(name, type, value) RubyAem::Resources::ConfigProperty.new(@client, name, type, value) end |
#flush_agent(run_mode, name) ⇒ Object
Create a flush agent instance.
122 123 124 |
# File 'lib/ruby_aem.rb', line 122 def flush_agent(run_mode, name) RubyAem::Resources::FlushAgent.new(@client, run_mode, name) end |
#group(path, name) ⇒ Object
Create a group instance.
131 132 133 |
# File 'lib/ruby_aem.rb', line 131 def group(path, name) RubyAem::Resources::Group.new(@client, path, name) end |
#node(path, name) ⇒ Object
Create a node instance.
140 141 142 |
# File 'lib/ruby_aem.rb', line 140 def node(path, name) RubyAem::Resources::Node.new(@client, path, name) end |
#outbox_replication_agent(run_mode, name) ⇒ Object
Create an outbox replication agent instance.
176 177 178 |
# File 'lib/ruby_aem.rb', line 176 def outbox_replication_agent(run_mode, name) RubyAem::Resources::OutboxReplicationAgent.new(@client, run_mode, name) end |
#package(group_name, package_name, package_version) ⇒ Object
Create a package instance.
150 151 152 |
# File 'lib/ruby_aem.rb', line 150 def package(group_name, package_name, package_version) RubyAem::Resources::Package.new(@client, group_name, package_name, package_version) end |
#path(name) ⇒ Object
Create a path instance.
158 159 160 |
# File 'lib/ruby_aem.rb', line 158 def path(name) RubyAem::Resources::Path.new(@client, name) end |
#replication_agent(run_mode, name) ⇒ Object
Create a replication agent instance.
167 168 169 |
# File 'lib/ruby_aem.rb', line 167 def replication_agent(run_mode, name) RubyAem::Resources::ReplicationAgent.new(@client, run_mode, name) end |
#repository ⇒ Object
Create a repository instance.
192 193 194 |
# File 'lib/ruby_aem.rb', line 192 def repository RubyAem::Resources::Repository.new(@client) end |
#reverse_replication_agent(run_mode, name) ⇒ Object
Create a reverse replication agent instance.
185 186 187 |
# File 'lib/ruby_aem.rb', line 185 def reverse_replication_agent(run_mode, name) RubyAem::Resources::ReverseReplicationAgent.new(@client, run_mode, name) end |
#sanitise_conf(conf) ⇒ Object
Set default configuration values and handle numeric/boolean String values
77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/ruby_aem.rb', line 77 def sanitise_conf(conf) conf[:username] ||= 'admin' conf[:password] ||= 'admin' conf[:protocol] ||= 'http' conf[:host] ||= 'localhost' conf[:port] ||= 4502 conf[:timeout] ||= 300 # handle custom configuration value being passed as a String # e.g. when the values are passed via environment variables conf[:port] = conf[:port].to_i conf[:timeout] = conf[:timeout].to_i conf[:verify_ssl] = conf[:verify_ssl] == 'true' if conf[:verify_ssl].is_a? String conf[:debug] = conf[:debug] == 'true' if conf[:debug].is_a? String end |
#user(path, name) ⇒ Object
Create a user instance.
201 202 203 |
# File 'lib/ruby_aem.rb', line 201 def user(path, name) RubyAem::Resources::User.new(@client, path, name) end |