/** * Copyright 2014-2017 Linagora, Université Joseph Fourier, Floralis * * The present code is developed in the scope of the joint LINAGORA - * Université Joseph Fourier - Floralis research program and is designated * as a "Result" pursuant to the terms and conditions of the LINAGORA * - Université Joseph Fourier - Floralis research program. Each copyright * holder of Results enumerated here above fully & independently holds complete * ownership of the complete Intellectual Property rights applicable to the whole * of said Results, and may freely exploit it in any manner which does not infringe * the moral rights of the other copyright holders. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package net.roboconf.messaging.rabbitmq; import net.roboconf.messaging.api.MessagingConstants; /** * Constants related to the RabbitMQ messaging client factory. * @author Pierre Bourret - Université Joseph Fourier */ public interface RabbitMqConstants { /** * The factory's name for RabbitMQ clients. */ String FACTORY_RABBITMQ = "rabbitmq"; /** * The prefix for all RabbitMQ-related properties. */ String RABBITMQ_PROPERTY_PREFIX = MessagingConstants.MESSAGING_PROPERTY_PREFIX + "." + FACTORY_RABBITMQ; /** * Messaging property holding the RabbitMQ server IP (or host). Defaults to {@code "localhost"}. */ String RABBITMQ_SERVER_IP = RABBITMQ_PROPERTY_PREFIX + ".server.ip"; /** * Messaging property holding the RabbitMQ server username. Defaults to {@code "guest"}. */ String RABBITMQ_SERVER_USERNAME = RABBITMQ_PROPERTY_PREFIX + ".server.username"; /** * Messaging property holding the RabbitMQ server password. Defaults to {@code "guest"}. */ String RABBITMQ_SERVER_PASSWORD = RABBITMQ_PROPERTY_PREFIX + ".server.password"; /** * Messaging property indicating whether SSL should be used. */ String RABBITMQ_USE_SSL = RABBITMQ_PROPERTY_PREFIX + ".ssl.use"; /** * Messaging property indicating the SSL protocol. * <p> * Default value is {@value #DEFAULT_SSL_PROTOCOL}. * </p> */ String RABBITMQ_SSL_PROTOCOL = RABBITMQ_PROPERTY_PREFIX + ".ssl.protocol"; /** * Messaging property indicating whether the SSL configuration should be sent to agents as user data. * <p> * When set to false, it is considered the SSL configuration is predefined * in the base image (configured by hand). Default value is true. * </p> */ String RABBITMQ_SSL_AS_USER_DATA = RABBITMQ_PROPERTY_PREFIX + ".ssl.pass.as.user.data"; /** * Messaging property indicating the path of the key store. */ String RABBITMQ_SSL_KEY_STORE_PATH = RABBITMQ_PROPERTY_PREFIX + ".ssl.key.store.path"; /** * Messaging property indicating the pass phrase for the key store. */ String RABBITMQ_SSL_KEY_STORE_PASSPHRASE = RABBITMQ_PROPERTY_PREFIX + ".ssl.key.store.passphrase"; /** * Messaging property indicating the type of the certificate. * <p> * Default value is {@value #DEFAULT_SSL_KEY_STORE_TYPE}. * </p> */ String RABBITMQ_SSL_KEY_STORE_TYPE = RABBITMQ_PROPERTY_PREFIX + ".ssl.key.store.type"; /** * Messaging property indicating the location of the trust store. */ String RABBITMQ_SSL_TRUST_STORE_PATH = RABBITMQ_PROPERTY_PREFIX + ".ssl.trust.store.path"; /** * Messaging property indicating the pass phrase for the trust store. */ String RABBITMQ_SSL_TRUST_STORE_PASSPHRASE = RABBITMQ_PROPERTY_PREFIX + ".ssl.trust.store.passphrase"; /** * Messaging property indicating the type of the trust store. * <p> * Default value is {@value #DEFAULT_SSL_TRUST_STORE_TYPE}. * </p> */ String RABBITMQ_SSL_TRUST_STORE_TYPE = RABBITMQ_PROPERTY_PREFIX + ".ssl.trust.store.type"; /** * Messaging property indicating the factory for key managers. * <p> * Default value is {@value #DEFAULT_SSL_MNGR_FACTORY}. * </p> */ String RABBITMQ_SSL_KEY_MNGR_FACTORY = RABBITMQ_PROPERTY_PREFIX + ".ssl.key.manager.factory"; /** * Messaging property indicating the factory for trust managers. * <p> * Default value is {@value #DEFAULT_SSL_MNGR_FACTORY}. * </p> */ String RABBITMQ_SSL_TRUST_MNGR_FACTORY = RABBITMQ_PROPERTY_PREFIX + ".ssl.trust.manager.factory"; String EXCHANGE_INTER_APP = "roboconf.inter-app"; String EXCHANGE_DM = "roboconf.dm"; String DEFAULT_SSL_PROTOCOL = "TLSv1.1"; String DEFAULT_IP = "localhost"; String DEFAULT_SSL_KEY_STORE_TYPE = "PKCS12"; String DEFAULT_SSL_TRUST_STORE_TYPE = "JKS"; String DEFAULT_SSL_MNGR_FACTORY = "SunX509"; String GUEST = "guest"; }