54 private $connectionValidator;
63 $this->connectionValidator = $connectionValidator;
73 self::INPUT_KEY_QUEUE_AMQP_HOST,
75 self::CONFIG_PATH_QUEUE_AMQP_HOST,
77 self::DEFAULT_AMQP_HOST
80 self::INPUT_KEY_QUEUE_AMQP_PORT,
82 self::CONFIG_PATH_QUEUE_AMQP_PORT,
84 self::DEFAULT_AMQP_PORT
87 self::INPUT_KEY_QUEUE_AMQP_USER,
89 self::CONFIG_PATH_QUEUE_AMQP_USER,
90 'Amqp server username',
91 self::DEFAULT_AMQP_USER
94 self::INPUT_KEY_QUEUE_AMQP_PASSWORD,
96 self::CONFIG_PATH_QUEUE_AMQP_PASSWORD,
97 'Amqp server password',
98 self::DEFAULT_AMQP_PASSWORD
101 self::INPUT_KEY_QUEUE_AMQP_VIRTUAL_HOST,
103 self::CONFIG_PATH_QUEUE_AMQP_VIRTUAL_HOST,
105 self::DEFAULT_AMQP_VIRTUAL_HOST
108 self::INPUT_KEY_QUEUE_AMQP_SSL,
110 self::CONFIG_PATH_QUEUE_AMQP_SSL,
112 self::DEFAULT_AMQP_SSL
115 self::INPUT_KEY_QUEUE_AMQP_SSL_OPTIONS,
117 self::CONFIG_PATH_QUEUE_AMQP_SSL_OPTIONS,
118 'Amqp SSL Options (JSON)',
119 self::DEFAULT_AMQP_SSL
132 if (!$this->isDataEmpty(
$data, self::INPUT_KEY_QUEUE_AMQP_HOST)) {
133 $configData->set(self::CONFIG_PATH_QUEUE_AMQP_HOST,
$data[self::INPUT_KEY_QUEUE_AMQP_HOST]);
134 if (!$this->isDataEmpty(
$data, self::INPUT_KEY_QUEUE_AMQP_PORT)) {
135 $configData->set(self::CONFIG_PATH_QUEUE_AMQP_PORT,
$data[self::INPUT_KEY_QUEUE_AMQP_PORT]);
137 if (!$this->isDataEmpty(
$data, self::INPUT_KEY_QUEUE_AMQP_USER)) {
138 $configData->set(self::CONFIG_PATH_QUEUE_AMQP_USER,
$data[self::INPUT_KEY_QUEUE_AMQP_USER]);
140 if (!$this->isDataEmpty(
$data, self::INPUT_KEY_QUEUE_AMQP_PASSWORD)) {
141 $configData->set(self::CONFIG_PATH_QUEUE_AMQP_PASSWORD,
$data[self::INPUT_KEY_QUEUE_AMQP_PASSWORD]);
143 if (!$this->isDataEmpty(
$data, self::INPUT_KEY_QUEUE_AMQP_VIRTUAL_HOST)) {
145 self::CONFIG_PATH_QUEUE_AMQP_VIRTUAL_HOST,
146 $data[self::INPUT_KEY_QUEUE_AMQP_VIRTUAL_HOST]
149 if (!$this->isDataEmpty(
$data, self::INPUT_KEY_QUEUE_AMQP_SSL)) {
150 $configData->set(self::CONFIG_PATH_QUEUE_AMQP_SSL,
$data[self::INPUT_KEY_QUEUE_AMQP_SSL]);
152 if (!$this->isDataEmpty(
154 self::INPUT_KEY_QUEUE_AMQP_SSL_OPTIONS
157 $data[self::INPUT_KEY_QUEUE_AMQP_SSL_OPTIONS],
162 self::CONFIG_PATH_QUEUE_AMQP_SSL_OPTIONS,
179 if (isset(
$options[self::INPUT_KEY_QUEUE_AMQP_HOST])
180 &&
$options[self::INPUT_KEY_QUEUE_AMQP_HOST] !==
'') {
181 if (!$this->isDataEmpty(
183 self::INPUT_KEY_QUEUE_AMQP_SSL_OPTIONS
185 $sslOptions = json_decode(
186 $options[self::INPUT_KEY_QUEUE_AMQP_SSL_OPTIONS],
192 $isSslEnabled = !empty(
$options[self::INPUT_KEY_QUEUE_AMQP_SSL])
195 $result = $this->connectionValidator->isConnectionValid(
196 $options[self::INPUT_KEY_QUEUE_AMQP_HOST],
197 $options[self::INPUT_KEY_QUEUE_AMQP_PORT],
198 $options[self::INPUT_KEY_QUEUE_AMQP_USER],
199 $options[self::INPUT_KEY_QUEUE_AMQP_PASSWORD],
200 $options[self::INPUT_KEY_QUEUE_AMQP_VIRTUAL_HOST],
206 $errors[] =
"Could not connect to the Amqp Server.";
220 private function isDataEmpty(array
$data, $key)
222 if (isset(
$data[$key]) &&
$data[$key] !==
'') {
const FRONTEND_WIZARD_TEXT
const INPUT_KEY_QUEUE_AMQP_PORT
const INPUT_KEY_QUEUE_AMQP_VIRTUAL_HOST
const CONFIG_PATH_QUEUE_AMQP_SSL
const INPUT_KEY_QUEUE_AMQP_USER
const DEFAULT_AMQP_PASSWORD
createConfig(array $data, DeploymentConfig $deploymentConfig)
const DEFAULT_AMQP_VIRTUAL_HOST
const INPUT_KEY_QUEUE_AMQP_SSL
const CONFIG_PATH_QUEUE_AMQP_VIRTUAL_HOST
const CONFIG_PATH_QUEUE_AMQP_PASSWORD
const FRONTEND_WIZARD_TEXTAREA
const CONFIG_PATH_QUEUE_AMQP_USER
const INPUT_KEY_QUEUE_AMQP_PASSWORD
const CONFIG_PATH_QUEUE_AMQP_SSL_OPTIONS
const CONFIG_PATH_QUEUE_AMQP_PORT
const CONFIG_PATH_QUEUE_AMQP_HOST
validate(array $options, DeploymentConfig $deploymentConfig)
const INPUT_KEY_QUEUE_AMQP_SSL_OPTIONS
__construct(ConnectionValidator $connectionValidator)
const INPUT_KEY_QUEUE_AMQP_HOST