You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by im...@apache.org on 2015/07/23 14:18:47 UTC
[05/18] stratos git commit: Publishing events for Metering Service
Implementation
http://git-wip-us.apache.org/repos/asf/stratos/blob/76c7724b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceUtil.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceUtil.java b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceUtil.java
index 37580eb..571ba9a 100644
--- a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceUtil.java
+++ b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceUtil.java
@@ -42,70 +42,70 @@ import java.util.Properties;
*/
public class CloudControllerServiceUtil {
- private static final Log log = LogFactory.getLog(CloudControllerServiceUtil.class);
-
- public static Iaas buildIaas(IaasProvider iaasProvider) throws InvalidIaasProviderException {
- return iaasProvider.getIaas();
- }
-
- /**
- * Update the topology, publish statistics to BAM, remove member context
- * and persist cloud controller context.
- *
- * @param memberContext
- */
- public static void executeMemberTerminationPostProcess(MemberContext memberContext) {
- if (memberContext == null) {
- return;
- }
-
- String partitionId = memberContext.getPartition() == null ? null : memberContext.getPartition().getId();
-
- // Update the topology
- TopologyBuilder.handleMemberTerminated(memberContext.getCartridgeType(),
- memberContext.getClusterId(), memberContext.getNetworkPartitionId(),
- partitionId, memberContext.getMemberId());
-
- // Publish statistics to BAM
- BAMUsageDataPublisher.publish(memberContext.getMemberId(),
- partitionId,
- memberContext.getNetworkPartitionId(),
- memberContext.getClusterId(),
- memberContext.getCartridgeType(),
- MemberStatus.Terminated.toString(),
- null);
-
- // Remove member context
- CloudControllerContext.getInstance().removeMemberContext(memberContext.getClusterId(), memberContext.getMemberId());
-
- // Persist cloud controller context
- CloudControllerContext.getInstance().persist();
- }
-
- public static boolean isValidIpAddress(String ip) {
- boolean isValid = InetAddresses.isInetAddress(ip);
- return isValid;
- }
-
- public static IaasProvider validatePartitionAndGetIaasProvider(Partition partition, IaasProvider iaasProvider) throws InvalidPartitionException {
- if (iaasProvider != null) {
- // if this is a IaaS based partition
- Iaas iaas = iaasProvider.getIaas();
- PartitionValidator validator = iaas.getPartitionValidator();
- validator.setIaasProvider(iaasProvider);
- Properties partitionProperties = CloudControllerUtil.toJavaUtilProperties(partition.getProperties());
- iaasProvider = validator.validate(partition, partitionProperties);
- return iaasProvider;
-
- } else {
- String msg = "Partition is not valid: [partition-id] " + partition.getId();
- log.error(msg);
- throw new InvalidPartitionException(msg);
- }
- }
-
- public static boolean validatePartition(Partition partition, IaasProvider iaasProvider) throws InvalidPartitionException {
- validatePartitionAndGetIaasProvider(partition, iaasProvider);
- return true;
- }
+ private static final Log log = LogFactory.getLog(CloudControllerServiceUtil.class);
+
+ public static Iaas buildIaas(IaasProvider iaasProvider) throws InvalidIaasProviderException {
+ return iaasProvider.getIaas();
+ }
+
+ /**
+ * Update the topology, publish statistics to BAM, remove member context
+ * and persist cloud controller context.
+ *
+ * @param memberContext
+ */
+ public static void executeMemberTerminationPostProcess(MemberContext memberContext) {
+ if (memberContext == null) {
+ return;
+ }
+
+ String partitionId = memberContext.getPartition() == null ? null : memberContext.getPartition().getId();
+
+ // Update the topology
+ TopologyBuilder.handleMemberTerminated(memberContext.getCartridgeType(), memberContext.getClusterId(),
+ memberContext.getNetworkPartitionId(), partitionId,
+ memberContext.getMemberId());
+
+ Long timeStamp = System.currentTimeMillis();
+ // Publish statistics to BAM
+ BAMUsageDataPublisher.publish(memberContext.getMemberId(), partitionId, memberContext.getNetworkPartitionId(),
+ memberContext.getClusterId(), memberContext.getCartridgeType(),
+ MemberStatus.Terminated.toString(), timeStamp, null, null, null);
+
+ // Remove member context
+ CloudControllerContext.getInstance()
+ .removeMemberContext(memberContext.getClusterId(), memberContext.getMemberId());
+
+ // Persist cloud controller context
+ CloudControllerContext.getInstance().persist();
+ }
+
+ public static boolean isValidIpAddress(String ip) {
+ boolean isValid = InetAddresses.isInetAddress(ip);
+ return isValid;
+ }
+
+ public static IaasProvider validatePartitionAndGetIaasProvider(Partition partition, IaasProvider iaasProvider)
+ throws InvalidPartitionException {
+ if (iaasProvider != null) {
+ // if this is a IaaS based partition
+ Iaas iaas = iaasProvider.getIaas();
+ PartitionValidator validator = iaas.getPartitionValidator();
+ validator.setIaasProvider(iaasProvider);
+ Properties partitionProperties = CloudControllerUtil.toJavaUtilProperties(partition.getProperties());
+ iaasProvider = validator.validate(partition, partitionProperties);
+ return iaasProvider;
+
+ } else {
+ String msg = "Partition is not valid: [partition-id] " + partition.getId();
+ log.error(msg);
+ throw new InvalidPartitionException(msg);
+ }
+ }
+
+ public static boolean validatePartition(Partition partition, IaasProvider iaasProvider)
+ throws InvalidPartitionException {
+ validatePartitionAndGetIaasProvider(partition, iaasProvider);
+ return true;
+ }
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/76c7724b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/InstanceCreator.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/InstanceCreator.java b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/InstanceCreator.java
index 77cfea2..35c8bb1 100644
--- a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/InstanceCreator.java
+++ b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/InstanceCreator.java
@@ -27,8 +27,6 @@ import org.apache.stratos.cloud.controller.domain.*;
import org.apache.stratos.cloud.controller.exception.CartridgeNotFoundException;
import org.apache.stratos.cloud.controller.iaases.Iaas;
import org.apache.stratos.cloud.controller.messaging.topology.TopologyBuilder;
-import org.apache.stratos.cloud.controller.statistics.publisher.BAMUsageDataPublisher;
-import org.apache.stratos.messaging.domain.topology.MemberStatus;
import java.util.concurrent.locks.Lock;
@@ -85,15 +83,6 @@ public class InstanceCreator implements Runnable {
// Update topology
TopologyBuilder.handleMemberInitializedEvent(memberContext);
- // Publish instance creation statistics to BAM
- BAMUsageDataPublisher.publish(
- memberContext.getMemberId(),
- memberContext.getPartition().getId(),
- memberContext.getNetworkPartitionId(),
- memberContext.getClusterId(),
- memberContext.getCartridgeType(),
- MemberStatus.Initialized.toString(),
- memberContext.getInstanceMetadata());
} catch (Exception e) {
String message = String.format("Could not start instance: [cartridge-type] %s [cluster-id] %s",
memberContext.getCartridgeType(), memberContext.getClusterId());
http://git-wip-us.apache.org/repos/asf/stratos/blob/76c7724b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/statistics/publisher/BAMUsageDataPublisher.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/statistics/publisher/BAMUsageDataPublisher.java b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/statistics/publisher/BAMUsageDataPublisher.java
index d5aabbd..c69feef 100644
--- a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/statistics/publisher/BAMUsageDataPublisher.java
+++ b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/statistics/publisher/BAMUsageDataPublisher.java
@@ -46,168 +46,183 @@ import java.util.List;
*/
public class BAMUsageDataPublisher {
- private static final Log log = LogFactory.getLog(BAMUsageDataPublisher.class);
-
- private static AsyncDataPublisher dataPublisher;
- private static StreamDefinition streamDefinition;
- private static final String cloudControllerEventStreamVersion = "1.0.0";
-
- public static void publish(String memberId,
- String partitionId,
- String networkId,
- String clusterId,
- String serviceName,
- String status,
- InstanceMetadata metadata) {
- if (!CloudControllerConfig.getInstance().isBAMDataPublisherEnabled()) {
- return;
- }
- log.debug(CloudControllerConstants.DATA_PUB_TASK_NAME + " cycle started.");
-
- if (dataPublisher == null) {
- createDataPublisher();
-
- //If we cannot create a data publisher we should give up
- //this means data will not be published
- if (dataPublisher == null) {
- log.error("Data Publisher cannot be created or found.");
- release();
- return;
- }
- }
-
- MemberContext memberContext = CloudControllerContext.getInstance().getMemberContextOfMemberId(memberId);
- String cartridgeType = memberContext.getCartridgeType();
- Cartridge cartridge = CloudControllerContext.getInstance().getCartridge(cartridgeType);
-
- //Construct the data to be published
- List<Object> payload = new ArrayList<Object>();
- // Payload values
- payload.add(memberId);
- payload.add(serviceName);
- payload.add(clusterId);
- payload.add(handleNull(memberContext.getLbClusterId()));
- payload.add(handleNull(partitionId));
- payload.add(handleNull(networkId));
- if (cartridge != null) {
- payload.add(handleNull(String.valueOf(cartridge.isMultiTenant())));
- } else {
- payload.add("");
- }
- payload.add(handleNull(memberContext.getPartition().getProvider()));
- payload.add(handleNull(status));
-
- if (metadata != null) {
- payload.add(metadata.getHostname());
- payload.add(metadata.getHypervisor());
- payload.add(String.valueOf(metadata.getRam()));
- payload.add(metadata.getImageId());
- payload.add(metadata.getLoginPort());
- payload.add(metadata.getOperatingSystemName());
- payload.add(metadata.getOperatingSystemVersion());
- payload.add(metadata.getOperatingSystemArchitecture());
- payload.add(String.valueOf(metadata.isOperatingSystem64bit()));
- } else {
- payload.add("");
- payload.add("");
- payload.add("");
- payload.add("");
- payload.add(0);
- payload.add("");
- payload.add("");
- payload.add("");
- payload.add("");
- }
-
- payload.add(handleNull(Arrays.toString(memberContext.getPrivateIPs())));
- payload.add(handleNull(Arrays.toString(memberContext.getPublicIPs())));
- payload.add(handleNull(Arrays.toString(memberContext.getAllocatedIPs())));
-
- Event event = new Event();
- event.setPayloadData(payload.toArray());
- event.setArbitraryDataMap(new HashMap<String, String>());
-
- try {
- if (log.isDebugEnabled()) {
- log.debug(String.format("Publishing BAM event: [stream] %s [version] %s", streamDefinition.getName(), streamDefinition.getVersion()));
- }
- dataPublisher.publish(streamDefinition.getName(), streamDefinition.getVersion(), event);
- } catch (AgentException e) {
- if (log.isErrorEnabled()) {
- log.error(String.format("Could not publish BAM event: [stream] %s [version] %s", streamDefinition.getName(), streamDefinition.getVersion()), e);
- }
- }
- }
-
- private static void release() {
- CloudControllerContext.getInstance().setPublisherRunning(false);
- }
-
- private static StreamDefinition initializeStream() throws Exception {
- streamDefinition = new StreamDefinition(
- CloudControllerConstants.CLOUD_CONTROLLER_EVENT_STREAM,
- cloudControllerEventStreamVersion);
- streamDefinition.setNickName("cloud.controller");
- streamDefinition.setDescription("Instances booted up by the Cloud Controller");
- // Payload definition
- List<Attribute> payloadData = new ArrayList<Attribute>();
- payloadData.add(new Attribute(CloudControllerConstants.MEMBER_ID_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.CARTRIDGE_TYPE_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.CLUSTER_ID_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.LB_CLUSTER_ID_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.PARTITION_ID_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.NETWORK_ID_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.IS_MULTI_TENANT_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.IAAS_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.STATUS_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.HOST_NAME_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.HYPERVISOR_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.RAM_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.IMAGE_ID_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.LOGIN_PORT_COL, AttributeType.INT));
- payloadData.add(new Attribute(CloudControllerConstants.OS_NAME_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.OS_VERSION_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.OS_ARCH_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.OS_BIT_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.PRIV_IP_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.PUB_IP_COL, AttributeType.STRING));
- payloadData.add(new Attribute(CloudControllerConstants.ALLOCATE_IP_COL, AttributeType.STRING));
- streamDefinition.setPayloadData(payloadData);
- return streamDefinition;
- }
-
-
- private static void createDataPublisher() {
- //creating the agent
-
- ServerConfiguration serverConfig = CarbonUtils.getServerConfiguration();
- String trustStorePath = serverConfig.getFirstProperty("Security.TrustStore.Location");
- String trustStorePassword = serverConfig.getFirstProperty("Security.TrustStore.Password");
- String bamServerUrl = serverConfig.getFirstProperty("BamServerURL");
- String adminUsername = CloudControllerConfig.getInstance().getDataPubConfig().getBamUsername();
- String adminPassword = CloudControllerConfig.getInstance().getDataPubConfig().getBamPassword();
-
- System.setProperty("javax.net.ssl.trustStore", trustStorePath);
- System.setProperty("javax.net.ssl.trustStorePassword", trustStorePassword);
-
-
- try {
- dataPublisher = new AsyncDataPublisher("tcp://" + bamServerUrl + "", adminUsername, adminPassword);
- CloudControllerContext.getInstance().setDataPublisher(dataPublisher);
- initializeStream();
- dataPublisher.addStreamDefinition(streamDefinition);
- } catch (Exception e) {
- String msg = "Unable to create a data publisher to " + bamServerUrl +
- ". Usage Agent will not function properly. ";
- log.error(msg, e);
- throw new CloudControllerException(msg, e);
- }
- }
-
- private static String handleNull(String val) {
- if (val == null) {
- return "";
- }
- return val;
- }
+ private static final Log log = LogFactory.getLog(BAMUsageDataPublisher.class);
+
+ private static AsyncDataPublisher dataPublisher;
+ private static StreamDefinition streamDefinition;
+ private static final String cloudControllerEventStreamVersion = "1.0.0";
+
+ public static void publish(String memberId, String partitionId, String networkId, String clusterId,
+ String clusterInstanceId, String serviceName, String status, Long timeStamp,
+ String autoscalingReason, Long scalingTime, InstanceMetadata metadata) {
+ if (!CloudControllerConfig.getInstance().isBAMDataPublisherEnabled()) {
+ return;
+ }
+ log.debug(CloudControllerConstants.DATA_PUB_TASK_NAME + " cycle started.");
+
+ if (dataPublisher == null) {
+ createDataPublisher();
+
+ //If we cannot create a data publisher we should give up
+ //this means data will not be published
+ if (dataPublisher == null) {
+ log.error("Data Publisher cannot be created or found.");
+ release();
+ return;
+ }
+ }
+
+ MemberContext memberContext = CloudControllerContext.getInstance().getMemberContextOfMemberId(memberId);
+ String cartridgeType = memberContext.getCartridgeType();
+ Cartridge cartridge = CloudControllerContext.getInstance().getCartridge(cartridgeType);
+ String instanceType =
+ CloudControllerContext.getInstance().getIaasProviderOfPartition(cartridgeType, partitionId)
+ .getProperty(CloudControllerConstants.INSTANCE_TYPE);
+
+ //Construct the data to be published
+ List<Object> payload = new ArrayList<Object>();
+ // Payload values
+ payload.add(timeStamp);
+ payload.add(memberId);
+ payload.add(serviceName);
+ payload.add(clusterId);
+ payload.add(clusterInstanceId);
+ payload.add(handleNull(memberContext.getLbClusterId()));
+ payload.add(handleNull(partitionId));
+ payload.add(handleNull(networkId));
+ payload.add(handleNull(instanceType));
+ payload.add(handleNull(autoscalingReason));
+ payload.add(handleNull(scalingTime));
+ if (cartridge != null) {
+ payload.add(handleNull(String.valueOf(cartridge.isMultiTenant())));
+ } else {
+ payload.add("");
+ }
+ payload.add(handleNull(memberContext.getPartition().getProvider()));
+ payload.add(handleNull(status));
+
+ if (metadata != null) {
+ payload.add(metadata.getHostname());
+ payload.add(metadata.getHypervisor());
+ payload.add(String.valueOf(metadata.getRam()));
+ payload.add(metadata.getImageId());
+ payload.add(metadata.getLoginPort());
+ payload.add(metadata.getOperatingSystemName());
+ payload.add(metadata.getOperatingSystemVersion());
+ payload.add(metadata.getOperatingSystemArchitecture());
+ payload.add(String.valueOf(metadata.isOperatingSystem64bit()));
+ } else {
+ payload.add("");
+ payload.add("");
+ payload.add("");
+ payload.add("");
+ payload.add(0);
+ payload.add("");
+ payload.add("");
+ payload.add("");
+ payload.add("");
+ }
+
+ payload.add(handleNull(Arrays.toString(memberContext.getPrivateIPs())));
+ payload.add(handleNull(Arrays.toString(memberContext.getPublicIPs())));
+ payload.add(handleNull(Arrays.toString(memberContext.getAllocatedIPs())));
+
+ Event event = new Event();
+ event.setPayloadData(payload.toArray());
+ event.setArbitraryDataMap(new HashMap<String, String>());
+
+ try {
+ if (log.isDebugEnabled()) {
+ log.debug(String.format("Publishing BAM event: [stream] %s [version] %s", streamDefinition.getName(),
+ streamDefinition.getVersion()));
+ }
+ dataPublisher.publish(streamDefinition.getName(), streamDefinition.getVersion(), event);
+ } catch (AgentException e) {
+ if (log.isErrorEnabled()) {
+ log.error(String.format("Could not publish BAM event: [stream] %s [version] %s",
+ streamDefinition.getName(), streamDefinition.getVersion()), e);
+ }
+ }
+ }
+
+ private static void release() {
+ CloudControllerContext.getInstance().setPublisherRunning(false);
+ }
+
+ private static StreamDefinition initializeStream() throws Exception {
+ streamDefinition = new StreamDefinition(CloudControllerConstants.CLOUD_CONTROLLER_EVENT_STREAM,
+ cloudControllerEventStreamVersion);
+ streamDefinition.setNickName("cloud.controller");
+ streamDefinition.setDescription("Instances booted up by the Cloud Controller");
+ // Payload definition
+ List<Attribute> payloadData = new ArrayList<Attribute>();
+ payloadData.add(new Attribute(CloudControllerConstants.TIME_STAMP, AttributeType.LONG));
+ payloadData.add(new Attribute(CloudControllerConstants.MEMBER_ID_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.CARTRIDGE_TYPE_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.CLUSTER_ID_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.CLUSTER_INSTANCE_ID_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.LB_CLUSTER_ID_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.PARTITION_ID_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.NETWORK_ID_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.INSTANCE_TYPE, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.SCALING_REASON, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.SCALING_TIME, AttributeType.LONG));
+ payloadData.add(new Attribute(CloudControllerConstants.IS_MULTI_TENANT_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.IAAS_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.STATUS_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.HOST_NAME_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.HYPERVISOR_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.RAM_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.IMAGE_ID_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.LOGIN_PORT_COL, AttributeType.INT));
+ payloadData.add(new Attribute(CloudControllerConstants.OS_NAME_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.OS_VERSION_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.OS_ARCH_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.OS_BIT_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.PRIV_IP_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.PUB_IP_COL, AttributeType.STRING));
+ payloadData.add(new Attribute(CloudControllerConstants.ALLOCATE_IP_COL, AttributeType.STRING));
+ streamDefinition.setPayloadData(payloadData);
+ return streamDefinition;
+ }
+
+ private static void createDataPublisher() {
+ //creating the agent
+
+ ServerConfiguration serverConfig = CarbonUtils.getServerConfiguration();
+ String trustStorePath = serverConfig.getFirstProperty("Security.TrustStore.Location");
+ String trustStorePassword = serverConfig.getFirstProperty("Security.TrustStore.Password");
+ String bamServerUrl = serverConfig.getFirstProperty("BamServerURL");
+ String adminUsername = CloudControllerConfig.getInstance().getDataPubConfig().getBamUsername();
+ String adminPassword = CloudControllerConfig.getInstance().getDataPubConfig().getBamPassword();
+
+ System.setProperty("javax.net.ssl.trustStore", trustStorePath);
+ System.setProperty("javax.net.ssl.trustStorePassword", trustStorePassword);
+
+ try {
+ dataPublisher = new AsyncDataPublisher("tcp://" + bamServerUrl + "", adminUsername, adminPassword);
+ CloudControllerContext.getInstance().setDataPublisher(dataPublisher);
+ initializeStream();
+ dataPublisher.addStreamDefinition(streamDefinition);
+ } catch (Exception e) {
+ String msg = "Unable to create a data publisher to " + bamServerUrl +
+ ". Usage Agent will not function properly. ";
+ log.error(msg, e);
+ throw new CloudControllerException(msg, e);
+ }
+ }
+
+ private static String handleNull(String val) {
+ if (val == null) {
+ return "";
+ }
+ return val;
+ }
+
+ private static Long handleNull(Long val) {
+ if (val == null) {
+ return -1L;
+ }
+ return val;
+ }
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/76c7724b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/util/CloudControllerConstants.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/util/CloudControllerConstants.java b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/util/CloudControllerConstants.java
index 5e6115f..6d07e7f 100644
--- a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/util/CloudControllerConstants.java
+++ b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/util/CloudControllerConstants.java
@@ -24,281 +24,267 @@ import java.io.File;
public final class CloudControllerConstants {
- /**
- * cloud-controller XML file's elements
- */
- public static final String CLOUD_CONTROLLER_ELEMENT = "cloudController";
- public static final String SERIALIZATION_DIR_ELEMENT = "serializationDir";
- public static final String IAAS_PROVIDERS_ELEMENT = "iaasProviders";
- public static final String IAAS_PROVIDER_ELEMENT = "iaasProvider";
- public static final String PARTITION_ELEMENT = "partition";
- public static final String PARTITIONS_ELEMENT = "partitions";
- public static final String REGION_ELEMENT = "region";
- public static final String ZONE_ELEMENT = "zone";
- public static final String DEPLOYMENT_ELEMENT = "deployment";
- public static final String PORT_MAPPING_ELEMENT = "portMapping";
- public static final String APP_TYPES_ELEMENT = "appTypes";
- public static final String TYPE_ATTR = "type";
- public static final String HOST_ATTR = "host";
- public static final String BASE_DIR_ATTR = "baseDir";
- public static final String PROVIDER_ATTR = "provider";
- public static final String VERSION_ATTR = "version";
- public static final String MULTI_TENANT_ATTR = "multiTenant";
- public static final String PORT_ATTR = "port";
- public static final String PROXY_PORT_ATTR = "proxyPort";
- public static final String NAME_ATTR = "name";
- public static final String APP_SPECIFIC_MAPPING_ATTR = "appSpecificMapping";
+ /**
+ * cloud-controller XML file's elements
+ */
+ public static final String CLOUD_CONTROLLER_ELEMENT = "cloudController";
+ public static final String SERIALIZATION_DIR_ELEMENT = "serializationDir";
+ public static final String IAAS_PROVIDERS_ELEMENT = "iaasProviders";
+ public static final String IAAS_PROVIDER_ELEMENT = "iaasProvider";
+ public static final String PARTITION_ELEMENT = "partition";
+ public static final String PARTITIONS_ELEMENT = "partitions";
+ public static final String REGION_ELEMENT = "region";
+ public static final String ZONE_ELEMENT = "zone";
+ public static final String DEPLOYMENT_ELEMENT = "deployment";
+ public static final String PORT_MAPPING_ELEMENT = "portMapping";
+ public static final String APP_TYPES_ELEMENT = "appTypes";
+ public static final String TYPE_ATTR = "type";
+ public static final String HOST_ATTR = "host";
+ public static final String BASE_DIR_ATTR = "baseDir";
+ public static final String PROVIDER_ATTR = "provider";
+ public static final String VERSION_ATTR = "version";
+ public static final String MULTI_TENANT_ATTR = "multiTenant";
+ public static final String PORT_ATTR = "port";
+ public static final String PROXY_PORT_ATTR = "proxyPort";
+ public static final String NAME_ATTR = "name";
+ public static final String APP_SPECIFIC_MAPPING_ATTR = "appSpecificMapping";
- public static final String CARTRIDGES_ELEMENT = "cartridges";
- public static final String CARTRIDGE_ELEMENT = "cartridge";
+ public static final String CARTRIDGES_ELEMENT = "cartridges";
+ public static final String CARTRIDGE_ELEMENT = "cartridge";
- public static final String DISPLAY_NAME_ELEMENT = "displayName";
- public static final String DESCRIPTION_ELEMENT = "description";
- public static final String PROPERTY_ELEMENT = "property";
- public static final String PROPERTY_NAME_ATTR = "name";
- public static final String PROPERTY_VALUE_ATTR = "value";
- public static final String IMAGE_ID_ELEMENT = "imageId";
- public static final String SCALE_DOWN_ORDER_ELEMENT = "scaleDownOrder";
- public static final String SCALE_UP_ORDER_ELEMENT = "scaleUpOrder";
- public static final String CLASS_NAME_ELEMENT = "className";
- public static final String PROVIDER_ELEMENT = "provider";
- public static final String IDENTITY_ELEMENT = "identity";
- public static final String TYPE_ELEMENT = "type";
- public static final String SCOPE_ELEMENT = "scope";
- public static final String ID_ELEMENT = "id";
- public static final String CREDENTIAL_ELEMENT = "credential";
- public static final String DEFAULT_SERVICE_ELEMENT = "default";
- public static final String SERVICE_ELEMENT = "service";
- public static final String SERVICES_ELEMENT = "services";
- public static final String DIRECTORY_ELEMENT = "dir";
- public static final String HTTP_ELEMENT = "http";
- public static final String HTTPS_ELEMENT = "https";
- public static final String APP_TYPE_ELEMENT = "appType";
- public static final String SERVICE_DOMAIN_ATTR = "domain";
- public static final String SERVICE_SUB_DOMAIN_ATTR = "subDomain";
- public static final String SERVICE_TENANT_RANGE_ATTR = "tenantRange";
- public static final String POLICY_NAME = "policyName";
- public static final String PAYLOAD_ELEMENT = "payload";
- public static final String DATA_PUBLISHER_ELEMENT = "dataPublisher";
- public static final String TOPOLOGY_SYNC_ELEMENT = "topologySync";
- public static final String ENABLE_ATTR = "enable";
- public static final String BAM_SERVER_ELEMENT = "bamServer";
- public static final String CRON_ELEMENT = "cron";
- public static final String BAM_SERVER_ADMIN_USERNAME_ELEMENT = "adminUserName";
- public static final String BAM_SERVER_ADMIN_PASSWORD_ELEMENT = "adminPassword";
- public static final String CASSANDRA_INFO_ELEMENT = "cassandraInfo";
- public static final String HOST_ELEMENT = "host";
- public static final String CONNECTION_URL_ELEMENT = "connectionUrl";
- public static final String HOST_PORT_ELEMENT = "port";
- public static final String USER_NAME_ELEMENT = "userName";
- public static final String PASSWORD_ELEMENT = "password";
- public static final String CLOUD_CONTROLLER_EVENT_STREAM = "org.apache.stratos.cloud.controller";
- public static final String CLOUD_CONTROLLER_COL_FAMILY = CLOUD_CONTROLLER_EVENT_STREAM
- .replaceAll("[/.]", "_");
+ public static final String DISPLAY_NAME_ELEMENT = "displayName";
+ public static final String DESCRIPTION_ELEMENT = "description";
+ public static final String PROPERTY_ELEMENT = "property";
+ public static final String PROPERTY_NAME_ATTR = "name";
+ public static final String PROPERTY_VALUE_ATTR = "value";
+ public static final String IMAGE_ID_ELEMENT = "imageId";
+ public static final String SCALE_DOWN_ORDER_ELEMENT = "scaleDownOrder";
+ public static final String SCALE_UP_ORDER_ELEMENT = "scaleUpOrder";
+ public static final String CLASS_NAME_ELEMENT = "className";
+ public static final String PROVIDER_ELEMENT = "provider";
+ public static final String IDENTITY_ELEMENT = "identity";
+ public static final String TYPE_ELEMENT = "type";
+ public static final String SCOPE_ELEMENT = "scope";
+ public static final String ID_ELEMENT = "id";
+ public static final String CREDENTIAL_ELEMENT = "credential";
+ public static final String DEFAULT_SERVICE_ELEMENT = "default";
+ public static final String SERVICE_ELEMENT = "service";
+ public static final String SERVICES_ELEMENT = "services";
+ public static final String DIRECTORY_ELEMENT = "dir";
+ public static final String HTTP_ELEMENT = "http";
+ public static final String HTTPS_ELEMENT = "https";
+ public static final String APP_TYPE_ELEMENT = "appType";
+ public static final String SERVICE_DOMAIN_ATTR = "domain";
+ public static final String SERVICE_SUB_DOMAIN_ATTR = "subDomain";
+ public static final String SERVICE_TENANT_RANGE_ATTR = "tenantRange";
+ public static final String POLICY_NAME = "policyName";
+ public static final String PAYLOAD_ELEMENT = "payload";
+ public static final String DATA_PUBLISHER_ELEMENT = "dataPublisher";
+ public static final String TOPOLOGY_SYNC_ELEMENT = "topologySync";
+ public static final String ENABLE_ATTR = "enable";
+ public static final String BAM_SERVER_ELEMENT = "bamServer";
+ public static final String CRON_ELEMENT = "cron";
+ public static final String BAM_SERVER_ADMIN_USERNAME_ELEMENT = "adminUserName";
+ public static final String BAM_SERVER_ADMIN_PASSWORD_ELEMENT = "adminPassword";
+ public static final String CASSANDRA_INFO_ELEMENT = "cassandraInfo";
+ public static final String HOST_ELEMENT = "host";
+ public static final String CONNECTION_URL_ELEMENT = "connectionUrl";
+ public static final String HOST_PORT_ELEMENT = "port";
+ public static final String USER_NAME_ELEMENT = "userName";
+ public static final String PASSWORD_ELEMENT = "password";
+ public static final String CLOUD_CONTROLLER_EVENT_STREAM = "org.apache.stratos.cloud.controller";
+ public static final String CLOUD_CONTROLLER_COL_FAMILY = CLOUD_CONTROLLER_EVENT_STREAM.replaceAll("[/.]", "_");
- /**
- * column names
- */
- public static final String PAYLOAD_PREFIX = "payload_";
- public static final String MEMBER_ID_COL = "memberId";
- public static final String CARTRIDGE_TYPE_COL = "cartridgeType";
- public static final String CLUSTER_ID_COL = "clusterId";
- public static final String PARTITION_ID_COL = "partitionId";
- public static final String NETWORK_ID_COL = "networkId";
- public static final String ALIAS_COL = "alias";
- public static final String TENANT_RANGE_COL = "tenantRange";
- public static final String IS_MULTI_TENANT_COL = "isMultiTenant";
- public static final String IAAS_COL = "iaas";
- public static final String STATUS_COL = "status";
- public static final String HOST_NAME_COL = "hostName";
- public static final String HYPERVISOR_COL = "hypervisor";
- public static final String RAM_COL = "ram";
- public static final String IMAGE_ID_COL = "imageId";
- public static final String LOGIN_PORT_COL = "loginPort";
- public static final String OS_NAME_COL = "osName";
- public static final String OS_VERSION_COL = "osVersion";
- public static final String OS_ARCH_COL = "osArch";
- public static final String OS_BIT_COL = "is64bitOS";
- public static final String PRIV_IP_COL = "privateIPAddresses";
- public static final String PUB_IP_COL = "publicIPAddresses";
- public static final String ALLOCATE_IP_COL = "allocateIPAddresses";
+ /**
+ * column names
+ */
+ public static final String PAYLOAD_PREFIX = "payload_";
+ public static final String MEMBER_ID_COL = "memberId";
+ public static final String CARTRIDGE_TYPE_COL = "cartridgeType";
+ public static final String CLUSTER_ID_COL = "clusterId";
+ public static final String CLUSTER_INSTANCE_ID_COL = "clusterInstanceId";
+ public static final String PARTITION_ID_COL = "partitionId";
+ public static final String NETWORK_ID_COL = "networkId";
+ public static final String ALIAS_COL = "alias";
+ public static final String TENANT_RANGE_COL = "tenantRange";
+ public static final String IS_MULTI_TENANT_COL = "isMultiTenant";
+ public static final String IAAS_COL = "iaas";
+ public static final String STATUS_COL = "status";
+ public static final String HOST_NAME_COL = "hostName";
+ public static final String HYPERVISOR_COL = "hypervisor";
+ public static final String RAM_COL = "ram";
+ public static final String IMAGE_ID_COL = "imageId";
+ public static final String LOGIN_PORT_COL = "loginPort";
+ public static final String OS_NAME_COL = "osName";
+ public static final String OS_VERSION_COL = "osVersion";
+ public static final String OS_ARCH_COL = "osArch";
+ public static final String OS_BIT_COL = "is64bitOS";
+ public static final String PRIV_IP_COL = "privateIPAddresses";
+ public static final String PUB_IP_COL = "publicIPAddresses";
+ public static final String ALLOCATE_IP_COL = "allocateIPAddresses";
+ public static final String TIME_STAMP = "timeStamp";
+ public static final String SCALING_REASON = "scalingReason";
+ public static final String SCALING_TIME = "scalingTime";
- /**
- * Properties
- */
- public static final String REGION_PROPERTY = "region";
- public static final String TOPICS_PROPERTY = "topics";
- public static final String PUBLIC_IP_PROPERTY = "public_ip";
- public static final String TENANT_ID_PROPERTY = "tenant_id";
- public static final String ALIAS_PROPERTY = "alias";
- public static final String AUTO_ASSIGN_IP_PROPERTY = "autoAssignIp";
- public static final String JCLOUDS_ENDPOINT = "jclouds.endpoint";
- public static final String CRON_PROPERTY = "cron";
- public static final String AMQP_CONNECTION_URL_PROPERTY = "amqpConnectionUrl";
- public static final String AMQP_INITIAL_CONTEXT_FACTORY_PROPERTY = "amqpInitialContextFactory";
- public static final String AMQP_TOPIC_CONNECTION_FACTORY_PROPERTY = "amqpTopicConnectionFactory";
- public static final String INSTANCE_TOPIC = "instance/*";
- // pre define a floating ip
- public static final String FLOATING_IP_PROPERTY = "floatingIp";
- public static final String DEFAULT_FLOATING_IP_POOL = "defaultFloatingIpPool";
- public static final String OPENSTACK_NETWORKING_PROVIDER = "openstack.networking.provider";
- public static final String OPENSTACK_NEUTRON_NETWORKING = "neutron";
+ /**
+ * Properties
+ */
+ public static final String REGION_PROPERTY = "region";
+ public static final String TOPICS_PROPERTY = "topics";
+ public static final String PUBLIC_IP_PROPERTY = "public_ip";
+ public static final String TENANT_ID_PROPERTY = "tenant_id";
+ public static final String ALIAS_PROPERTY = "alias";
+ public static final String AUTO_ASSIGN_IP_PROPERTY = "autoAssignIp";
+ public static final String JCLOUDS_ENDPOINT = "jclouds.endpoint";
+ public static final String CRON_PROPERTY = "cron";
+ public static final String AMQP_CONNECTION_URL_PROPERTY = "amqpConnectionUrl";
+ public static final String AMQP_INITIAL_CONTEXT_FACTORY_PROPERTY = "amqpInitialContextFactory";
+ public static final String AMQP_TOPIC_CONNECTION_FACTORY_PROPERTY = "amqpTopicConnectionFactory";
+ public static final String INSTANCE_TOPIC = "instance/*";
+ // pre define a floating ip
+ public static final String FLOATING_IP_PROPERTY = "floatingIp";
+ public static final String DEFAULT_FLOATING_IP_POOL = "defaultFloatingIpPool";
+ public static final String OPENSTACK_NETWORKING_PROVIDER = "openstack.networking.provider";
+ public static final String OPENSTACK_NEUTRON_NETWORKING = "neutron";
- /**
- * XPath expressions
- */
- public static final String IAAS_PROVIDER_XPATH = "/"
- + CLOUD_CONTROLLER_ELEMENT + "/" + IAAS_PROVIDERS_ELEMENT + "/"
- + IAAS_PROVIDER_ELEMENT;
- public static final String PARTITION_XPATH = "/" + CLOUD_CONTROLLER_ELEMENT
- + "/" + PARTITIONS_ELEMENT + "/" + PARTITION_ELEMENT;
- public static final String REGION_XPATH = "/" + CLOUD_CONTROLLER_ELEMENT
- + "/" + IAAS_PROVIDERS_ELEMENT + "/" + IAAS_PROVIDER_ELEMENT + "/"
- + REGION_ELEMENT;
- public static final String ZONE_XPATH = "/" + CLOUD_CONTROLLER_ELEMENT
- + "/" + IAAS_PROVIDERS_ELEMENT + "/" + IAAS_PROVIDER_ELEMENT + "/"
- + REGION_ELEMENT + "/" + ZONE_ELEMENT;
- public static final String HOST_XPATH = "/" + CLOUD_CONTROLLER_ELEMENT
- + "/" + IAAS_PROVIDERS_ELEMENT + "/" + IAAS_PROVIDER_ELEMENT + "/"
- + REGION_ELEMENT + "/" + ZONE_ELEMENT + "/" + HOST_ELEMENT;
- public static final String PROPERTY_ELEMENT_XPATH = "/" + PROPERTY_ELEMENT;
- public static final String IMAGE_ID_ELEMENT_XPATH = "/" + IMAGE_ID_ELEMENT;
- public static final String SCALE_UP_ORDER_ELEMENT_XPATH = "/"
- + SCALE_UP_ORDER_ELEMENT;
- public static final String SCALE_DOWN_ORDER_ELEMENT_XPATH = "/"
- + SCALE_DOWN_ORDER_ELEMENT;
- public static final String PROVIDER_ELEMENT_XPATH = "/" + PROPERTY_ELEMENT;
- public static final String IDENTITY_ELEMENT_XPATH = "/" + IDENTITY_ELEMENT;
- public static final String CREDENTIAL_ELEMENT_XPATH = "/"
- + CREDENTIAL_ELEMENT;
- public static final String SERVICES_ELEMENT_XPATH = "/" + SERVICES_ELEMENT
- + "/" + SERVICE_ELEMENT;
- public static final String SERVICE_ELEMENT_XPATH = "/" + SERVICE_ELEMENT;
- public static final String CARTRIDGE_ELEMENT_XPATH = "/"
- + CARTRIDGE_ELEMENT;
- public static final String PAYLOAD_ELEMENT_XPATH = "/" + PAYLOAD_ELEMENT;
- public static final String HOST_ELEMENT_XPATH = "/" + HOST_ELEMENT;
- public static final String CARTRIDGES_ELEMENT_XPATH = "/"
- + CARTRIDGES_ELEMENT + "/" + CARTRIDGE_ELEMENT;
- public static final String IAAS_PROVIDER_ELEMENT_XPATH = "/"
- + IAAS_PROVIDER_ELEMENT;
- public static final String DEPLOYMENT_ELEMENT_XPATH = "/"
- + DEPLOYMENT_ELEMENT;
- public static final String PORT_MAPPING_ELEMENT_XPATH = "/"
- + PORT_MAPPING_ELEMENT;
- public static final String APP_TYPES_ELEMENT_XPATH = "/"
- + APP_TYPES_ELEMENT;
+ /**
+ * XPath expressions
+ */
+ public static final String IAAS_PROVIDER_XPATH =
+ "/" + CLOUD_CONTROLLER_ELEMENT + "/" + IAAS_PROVIDERS_ELEMENT + "/" + IAAS_PROVIDER_ELEMENT;
+ public static final String PARTITION_XPATH =
+ "/" + CLOUD_CONTROLLER_ELEMENT + "/" + PARTITIONS_ELEMENT + "/" + PARTITION_ELEMENT;
+ public static final String REGION_XPATH =
+ "/" + CLOUD_CONTROLLER_ELEMENT + "/" + IAAS_PROVIDERS_ELEMENT + "/" + IAAS_PROVIDER_ELEMENT + "/" +
+ REGION_ELEMENT;
+ public static final String ZONE_XPATH =
+ "/" + CLOUD_CONTROLLER_ELEMENT + "/" + IAAS_PROVIDERS_ELEMENT + "/" + IAAS_PROVIDER_ELEMENT + "/" +
+ REGION_ELEMENT + "/" + ZONE_ELEMENT;
+ public static final String HOST_XPATH =
+ "/" + CLOUD_CONTROLLER_ELEMENT + "/" + IAAS_PROVIDERS_ELEMENT + "/" + IAAS_PROVIDER_ELEMENT + "/" +
+ REGION_ELEMENT + "/" + ZONE_ELEMENT + "/" + HOST_ELEMENT;
+ public static final String PROPERTY_ELEMENT_XPATH = "/" + PROPERTY_ELEMENT;
+ public static final String IMAGE_ID_ELEMENT_XPATH = "/" + IMAGE_ID_ELEMENT;
+ public static final String SCALE_UP_ORDER_ELEMENT_XPATH = "/" + SCALE_UP_ORDER_ELEMENT;
+ public static final String SCALE_DOWN_ORDER_ELEMENT_XPATH = "/" + SCALE_DOWN_ORDER_ELEMENT;
+ public static final String PROVIDER_ELEMENT_XPATH = "/" + PROPERTY_ELEMENT;
+ public static final String IDENTITY_ELEMENT_XPATH = "/" + IDENTITY_ELEMENT;
+ public static final String CREDENTIAL_ELEMENT_XPATH = "/" + CREDENTIAL_ELEMENT;
+ public static final String SERVICES_ELEMENT_XPATH = "/" + SERVICES_ELEMENT + "/" + SERVICE_ELEMENT;
+ public static final String SERVICE_ELEMENT_XPATH = "/" + SERVICE_ELEMENT;
+ public static final String CARTRIDGE_ELEMENT_XPATH = "/" + CARTRIDGE_ELEMENT;
+ public static final String PAYLOAD_ELEMENT_XPATH = "/" + PAYLOAD_ELEMENT;
+ public static final String HOST_ELEMENT_XPATH = "/" + HOST_ELEMENT;
+ public static final String CARTRIDGES_ELEMENT_XPATH = "/" + CARTRIDGES_ELEMENT + "/" + CARTRIDGE_ELEMENT;
+ public static final String IAAS_PROVIDER_ELEMENT_XPATH = "/" + IAAS_PROVIDER_ELEMENT;
+ public static final String DEPLOYMENT_ELEMENT_XPATH = "/" + DEPLOYMENT_ELEMENT;
+ public static final String PORT_MAPPING_ELEMENT_XPATH = "/" + PORT_MAPPING_ELEMENT;
+ public static final String APP_TYPES_ELEMENT_XPATH = "/" + APP_TYPES_ELEMENT;
- public static final String DATA_PUBLISHER_XPATH = "/"
- + CLOUD_CONTROLLER_ELEMENT + "/" + DATA_PUBLISHER_ELEMENT;
- public static final String TOPOLOGY_SYNC_XPATH = "/"
- + CLOUD_CONTROLLER_ELEMENT + "/" + TOPOLOGY_SYNC_ELEMENT;
- public static final String DATA_PUBLISHER_CRON_XPATH = "/"
- + CLOUD_CONTROLLER_ELEMENT + "/" + CRON_ELEMENT;
- public static final String BAM_SERVER_ADMIN_USERNAME_XPATH = "/"
- + CLOUD_CONTROLLER_ELEMENT + "/"
- + BAM_SERVER_ADMIN_USERNAME_ELEMENT;
- public static final String BAM_SERVER_ADMIN_PASSWORD_XPATH = "/"
- + CLOUD_CONTROLLER_ELEMENT + "/"
- + BAM_SERVER_ADMIN_PASSWORD_ELEMENT;
- // public static final String CASSANDRA_HOST_ADDRESS_XPATH =
- // "/"+CLOUD_CONTROLLER_ELEMENT+
- // "/"+CASSANDRA_HOST_ADDRESS;
- // public static final String CASSANDRA_HOST_PORT_XPATH =
- // "/"+CLOUD_CONTROLLER_ELEMENT+
- // "/"+CASSANDRA_HOST_PORT;
+ public static final String DATA_PUBLISHER_XPATH = "/" + CLOUD_CONTROLLER_ELEMENT + "/" + DATA_PUBLISHER_ELEMENT;
+ public static final String TOPOLOGY_SYNC_XPATH = "/" + CLOUD_CONTROLLER_ELEMENT + "/" + TOPOLOGY_SYNC_ELEMENT;
+ public static final String DATA_PUBLISHER_CRON_XPATH = "/" + CLOUD_CONTROLLER_ELEMENT + "/" + CRON_ELEMENT;
+ public static final String BAM_SERVER_ADMIN_USERNAME_XPATH =
+ "/" + CLOUD_CONTROLLER_ELEMENT + "/" + BAM_SERVER_ADMIN_USERNAME_ELEMENT;
+ public static final String BAM_SERVER_ADMIN_PASSWORD_XPATH =
+ "/" + CLOUD_CONTROLLER_ELEMENT + "/" + BAM_SERVER_ADMIN_PASSWORD_ELEMENT;
+ // public static final String CASSANDRA_HOST_ADDRESS_XPATH =
+ // "/"+CLOUD_CONTROLLER_ELEMENT+
+ // "/"+CASSANDRA_HOST_ADDRESS;
+ // public static final String CASSANDRA_HOST_PORT_XPATH =
+ // "/"+CLOUD_CONTROLLER_ELEMENT+
+ // "/"+CASSANDRA_HOST_PORT;
- /**
- * Secret Manager related aliases.
- */
- public static final String ALIAS_ATTRIBUTE = "secretAlias";
- public static final String ALIAS_ATTRIBUTE_PREFIX = "svns";
- public static final String ALIAS_NAMESPACE = "http://org.wso2.securevault/configuration";
+ /**
+ * Secret Manager related aliases.
+ */
+ public static final String ALIAS_ATTRIBUTE = "secretAlias";
+ public static final String ALIAS_ATTRIBUTE_PREFIX = "svns";
+ public static final String ALIAS_NAMESPACE = "http://org.wso2.securevault/configuration";
- /**
- * Payload related constants
- */
- public static final String PAYLOAD_NAME = "payload";
- public static final String ENTRY_SEPARATOR = ",";
+ /**
+ * Payload related constants
+ */
+ public static final String PAYLOAD_NAME = "payload";
+ public static final String ENTRY_SEPARATOR = ",";
- /**
- * Publisher task related constants
- */
- public static final String DATA_PUB_TASK_TYPE = "CLOUD_CONTROLLER_DATA_PUBLISHER_TASK";
- // default is : data publisher will run in first second of every minute
- public static final String PUB_CRON_EXPRESSION = "1 * * * * ? *";
- public static final String DATA_PUB_TASK_NAME = "CartridgeInstanceDataPublisher";
- public static final String DEFAULT_BAM_SERVER_USER_NAME = "admin";
- public static final String DEFAULT_BAM_SERVER_PASSWORD = "admin";
- public static final String DEFAULT_CASSANDRA_URL = "localhost:9160";
- public static final String DEFAULT_CASSANDRA_USER = "admin";
- public static final String DEFAULT_CASSANDRA_PASSWORD = "admin";
- public static final String DEFAULT_CASSANDRA_CLUSTER_NAME = "Test Cluster";
- public static final String DEFAULT_CASSANDRA_KEY_SPACE = "EVENT_KS";
+ /**
+ * Publisher task related constants
+ */
+ public static final String DATA_PUB_TASK_TYPE = "CLOUD_CONTROLLER_DATA_PUBLISHER_TASK";
+ // default is : data publisher will run in first second of every minute
+ public static final String PUB_CRON_EXPRESSION = "1 * * * * ? *";
+ public static final String DATA_PUB_TASK_NAME = "CartridgeInstanceDataPublisher";
+ public static final String DEFAULT_BAM_SERVER_USER_NAME = "admin";
+ public static final String DEFAULT_BAM_SERVER_PASSWORD = "admin";
+ public static final String DEFAULT_CASSANDRA_URL = "localhost:9160";
+ public static final String DEFAULT_CASSANDRA_USER = "admin";
+ public static final String DEFAULT_CASSANDRA_PASSWORD = "admin";
+ public static final String DEFAULT_CASSANDRA_CLUSTER_NAME = "Test Cluster";
+ public static final String DEFAULT_CASSANDRA_KEY_SPACE = "EVENT_KS";
- /**
- * Directories
- */
- public static final String SERVICES_DIR = CarbonUtils.getCarbonRepository()
- + File.separator + "services" + File.separator;
+ /**
+ * Directories
+ */
+ public static final String SERVICES_DIR =
+ CarbonUtils.getCarbonRepository() + File.separator + "services" + File.separator;
- /**
- * Topology sync related constants
- */
- public static final String TOPOLOGY_FILE_PATH = CarbonUtils
- .getCarbonConfigDirPath()
- + File.separator
- + "service-topology.conf";
- public static final String TOPOLOGY_SYNC_CRON = "1 * * * * ? *";
- public static final String TOPOLOGY_SYNC_TASK_NAME = "TOPOLOGY_SYNC_TASK";
- public static final String TOPOLOGY_SYNC_TASK_TYPE = "TOPOLOGY_SYNC_TASK_TYPE";
- public static final String AMQP_CONNECTION_URL = "amqp://admin:admin@clientID/carbon?brokerlist='tcp://localhost:5672'";
- public static final String AMQP_INITIAL_CONTEXT_FACTORY = "org.wso2.andes.jndi.PropertiesFileInitialContextFactory";
- public static final String AMQP_TOPIC_CONNECTION_FACTORY = "qpidConnectionfactory";
+ /**
+ * Topology sync related constants
+ */
+ public static final String TOPOLOGY_FILE_PATH =
+ CarbonUtils.getCarbonConfigDirPath() + File.separator + "service-topology.conf";
+ public static final String TOPOLOGY_SYNC_CRON = "1 * * * * ? *";
+ public static final String TOPOLOGY_SYNC_TASK_NAME = "TOPOLOGY_SYNC_TASK";
+ public static final String TOPOLOGY_SYNC_TASK_TYPE = "TOPOLOGY_SYNC_TASK_TYPE";
+ public static final String AMQP_CONNECTION_URL =
+ "amqp://admin:admin@clientID/carbon?brokerlist='tcp://localhost:5672'";
+ public static final String AMQP_INITIAL_CONTEXT_FACTORY = "org.wso2.andes.jndi.PropertiesFileInitialContextFactory";
+ public static final String AMQP_TOPIC_CONNECTION_FACTORY = "qpidConnectionfactory";
- /**
- * Persistence
- */
- public static final String DATA_RESOURCE = "/cloud.controller/data";
- public static final String TOPOLOGY_RESOURCE = "/cloud.controller/topology";
- public static final String AVAILABILITY_ZONE = "availabilityZone";
- public static final String KEY_PAIR = "keyPair";
- public static final String HOST = "host";
- public static final String SECURITY_GROUP_IDS = "securityGroupIds";
- public static final String SECURITY_GROUPS = "securityGroups";
- public static final String SUBNET_ID = "subnetId";
- public static final String TAGS = "tags";
- public static final String TAGS_AS_KEY_VALUE_PAIRS_PREFIX = "tag:";
- public static final String AUTO_ASSIGN_IP = "autoAssignIp";
- public static final String BLOCK_UNTIL_RUNNING = "blockUntilRunning";
- public static final String INSTANCE_TYPE = "instanceType";
- public static final String ASSOCIATE_PUBLIC_IP_ADDRESS = "associatePublicIpAddress";
- public static final String LB_CLUSTER_ID_COL = "lbclusterId";
- public static final String NETWORK_INTERFACES = "networkInterfaces";
- public static final String NETWORK_FIXED_IP = "fixedIp";
- public static final String NETWORK_PORT = "portUuid";
- public static final String NETWORK_UUID = "networkUuid";
+ /**
+ * Persistence
+ */
+ public static final String DATA_RESOURCE = "/cloud.controller/data";
+ public static final String TOPOLOGY_RESOURCE = "/cloud.controller/topology";
+ public static final String AVAILABILITY_ZONE = "availabilityZone";
+ public static final String KEY_PAIR = "keyPair";
+ public static final String HOST = "host";
+ public static final String SECURITY_GROUP_IDS = "securityGroupIds";
+ public static final String SECURITY_GROUPS = "securityGroups";
+ public static final String SUBNET_ID = "subnetId";
+ public static final String TAGS = "tags";
+ public static final String TAGS_AS_KEY_VALUE_PAIRS_PREFIX = "tag:";
+ public static final String AUTO_ASSIGN_IP = "autoAssignIp";
+ public static final String BLOCK_UNTIL_RUNNING = "blockUntilRunning";
+ public static final String INSTANCE_TYPE = "instanceType";
+ public static final String ASSOCIATE_PUBLIC_IP_ADDRESS = "associatePublicIpAddress";
+ public static final String LB_CLUSTER_ID_COL = "lbclusterId";
+ public static final String NETWORK_INTERFACES = "networkInterfaces";
+ public static final String NETWORK_FIXED_IP = "fixedIp";
+ public static final String NETWORK_PORT = "portUuid";
+ public static final String NETWORK_UUID = "networkUuid";
- // CloudStack specific
- public static final String USER_NAME = "username";
- public static final String DOMAIN_ID = "domainId";
- public static final String DISK_OFFERING = "diskOffering";
- public static final String NETWORK_IDS = "networkIds";
+ // CloudStack specific
+ public static final String USER_NAME = "username";
+ public static final String DOMAIN_ID = "domainId";
+ public static final String DISK_OFFERING = "diskOffering";
+ public static final String NETWORK_IDS = "networkIds";
- public static final String IS_LOAD_BALANCER = "load.balancer";
+ public static final String IS_LOAD_BALANCER = "load.balancer";
- /**
- * PortRange min max
- */
- public static final int PORT_RANGE_MAX = 65535;
- public static final int PORT_RANGE_MIN = 1;
+ /**
+ * PortRange min max
+ */
+ public static final int PORT_RANGE_MAX = 65535;
+ public static final int PORT_RANGE_MIN = 1;
- public static final String KUBERNETES_PARTITION_PROVIDER = "kubernetes";
+ public static final String KUBERNETES_PARTITION_PROVIDER = "kubernetes";
- /**
- * Load balancing ip type enumeration values
- */
- public static final String LOADBALANCING_IP_TYPE_PRIVATE = "private";
- public static final String LOADBALANCING_IP_TYPE_PUBLIC = "public";
+ /**
+ * Load balancing ip type enumeration values
+ */
+ public static final String LOADBALANCING_IP_TYPE_PRIVATE = "private";
+ public static final String LOADBALANCING_IP_TYPE_PUBLIC = "public";
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/76c7724b/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/constants/StratosConstants.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/constants/StratosConstants.java b/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/constants/StratosConstants.java
index 1275f5c..9cf2007 100644
--- a/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/constants/StratosConstants.java
+++ b/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/constants/StratosConstants.java
@@ -18,197 +18,192 @@
*/
package org.apache.stratos.common.constants;
-
public class StratosConstants {
- public static final String CLOUD_SERVICE_IS_ACTIVE_PROP_KEY = "active";
-
- public static final String CLOUD_SERVICE_INFO_STORE_PATH =
- "/repository/components/org.apache.stratos/cloud-manager/cloud-services";
-
- public static final String TENANT_USER_VALIDATION_STORE_PATH =
- "/repository/components/org.wso2.carbon.validations";
- public static final String ADMIN_EMAIL_VERIFICATION_FLAG_PATH =
- "/repository/components/org.wso2.carbon.email-confirmation-flag";
- public static final String TENANT_DOMAIN_VERIFICATION_FLAG_PATH =
- "/repository/components/org.wso2.carbon.domain-confirmation-flag";
-
- public static final String DOMAIN_VALIDATOR_INFO_PATH =
- "/repository/components/org.wso2.carbon.domain-validator-info";
-
- public static final String TENANT_CREATION_THEME_PAGE_TOKEN =
- "/repository/components/org.wso2.carbon.theme-page-token";
-
- public static final String TENANT_PACKAGE_INFO_PATH =
- "/repository/components/org.wso2.carbon.package-info";
-
- public static final String ALL_THEMES_PATH =
- "/repository/components/org.wso2.carbon.all-themes";
-
- public static final String THROTTLING_RULES_PATH =
- "/repository/components/org.wso2.carbon.throttling-rules";
-
- public static final String ORIGINATED_SERVICE_PATH =
- "/repository/components/org.wso2.carbon.originated-service";
-
- public static final String PATH_SEPARATOR = "/";
-
- public static final String CLOUD_SERVICE_ICONS_STORE_PATH =
- "/repository/components/org.wso2.carbon.cloud-manager/" +
- "cloud-services-icons";
-
- public static final String VALIDATION_KEY_RESOURCE_NAME = "validation-key";
- public static final String INCOMING_PATH_DIR = "incoming";
- public static final String OUTGOING_PATH_DIR = "outgoing";
- public static final String MULTITENANCY_SCHEDULED_TASK_ID = "multitenancyScheduledTask";
- public static final String MULTITENANCY_VIEWING_TASK_ID = "multitenancyViewingTask";
-
- public static final String INVALID_TENANT = "invalidTenant";
- public static final String INACTIVE_TENANT = "inactiveTenant";
- public static final String ACTIVE_TENANT = "activeTenant";
- public static final String IS_EMAIL_VALIDATED = "isEmailValidated";
- public static final String IS_CREDENTIALS_ALREADY_RESET = "isCredentialsReset";
- public static final String TENANT_ADMIN = "tenantAdminUsername";
-
- public static final String CLOUD_MANAGER_SERVICE = "Apache Stratos Controller";
- public static final String CLOUD_IDENTITY_SERVICE = "WSO2 Stratos Identity";
- public static final String CLOUD_GOVERNANCE_SERVICE = "WSO2 Stratos Governance";
- public static final String CLOUD_ESB_SERVICE = "WSO2 Stratos Enterprise Service Bus";
-
- // keystore mgt related Constants
- public static final String TENANT_KS = "/repository/security/key-stores/";
- public static final String TENANT_PUB_KEY = "/repository/security/pub-key";
- public static final String PROP_TENANT_KS_TYPE = "key-store-type";
- public static final String PROP_TENANT_KS_PASSWD = "key-store-password";
- public static final String PROP_TENANT_KS_PRIV_KEY_PASSWD = "priv-key-password";
- public static final String PROP_TENANT_KS_ALIAS = "alias";
-
- // constants related to redirection
-
- public static final String UNVERIFIED_ACCOUNT_DOMAIN_SUFFIX = "-unverified";
- public static final String TENANT_SPECIFIC_URL_RESOLVED = "tenant-sepcific-url-resolved";
- public static final String SUFFIXED_UNVERIFIED_SESSION_FLAG = "temp-suffixed-unverified";
-
- // metering constants
- public static final String THROTTLING_ALL_ACTION = "all_actions";
- public static final String THROTTLING_IN_DATA_ACTION = "in_data_action"; //this covers registry capacity + registry bandwidth
- public static final String THROTTLING_OUT_DATA_ACTION = "out_data_action"; //this covers registry bandwidth
- public static final String THROTTLING_ADD_USER_ACTION = "add_user_action";
- public static final String THROTTLING_SERVICE_IN_BANDWIDTH_ACTION = "service_in_bandwith_action";
- public static final String THROTTLING_SERVICE_OUT_BANDWIDTH_ACTION = "service_out_bandwith_action";
- public static final String THROTTLING_WEBAPP_IN_BANDWIDTH_ACTION = "webapp_in_bandwith_action";
- public static final String THROTTLING_WEBAPP_OUT_BANDWIDTH_ACTION = "webapp_out_bandwith_action";
- public static final String THROTTLING_SERVICE_REQUEST_ACTION = "service_request_action";
- public static final String THROTTLING_SERVICE_RESPONSE_ACTION = "service_response_action";
-
- // the session attribute to keep track whether the registry action validated
- // and the usage persisted
- public static final String REGISTRY_ACTION_VALIDATED_SESSION_ATTR = "registryActionValidated";
- public static final String REGISTRY_USAGE_PERSISTED_SESSION_ATTR = "usagePersited";
-
- // Metering servlet attributes
- public static final String SERVICE_NAME_SERVLET_ATTR = "meteringServiceName";
- public static final String TENANT_ID_SERVLET_ATTR = "tenantId";
- public static final String ADMIN_SERVICE_SERVLET_ATTR = "adminService";
-
- // * as a Service impl related constants
- public static final String ORIGINATED_SERVICE = "originatedService";
-
- // Configuration file name
- public static final String STRATOS_CONF_FILE = "stratos.xml";
- //public static final String STRATOS_CONF_LOC = "repository/conf/";
- //public static final String STRATOS_CONF_FILE_WITH_PATH = STRATOS_CONF_LOC + STRATOS_CONF_FILE;
-
- // EULA location
- public static final String STRATOS_EULA = "eula.xml";
-
- // EULA default text.
- public static final String STRATOS_EULA_DEFAULT_TEXT =
- "Please refer to: " + StratosConstants.STRATOS_TERMS_OF_USAGE +
- " for terms and usage and " + StratosConstants.STRATOS_PRIVACY_POLICY +
- " for privacy policy of WSO2 Stratos.";
-
- // Web location of Terms of Usage and privacy policy
- public static final String STRATOS_TERMS_OF_USAGE =
- "http://wso2.com/cloud/services/terms-of-use/";
- public static final String STRATOS_PRIVACY_POLICY =
- "http://wso2.com/cloud/services/privacy-policy/";
- public static final String MULTITENANCY_FREE_PLAN = "Demo";
- public static final String MULTITENANCY_SMALL_PLAN = "SMB";
- public static final String MULTITENANCY_MEDIUM_PLAN = "Professional";
- public static final String MULTITENANCY_LARGE_PLAN = "Enterprise";
- public static final String EMAIL_CONFIG = "email";
- public static final String MULTITENANCY_CONFIG_FOLDER = "multitenancy";
-
- // Cloud controller - payload
- public static final String MEMBER_ID = "MEMBER_ID";
- public static final String LB_CLUSTER_ID = "LB_CLUSTER_ID";
- public static final String NETWORK_PARTITION_ID = "NETWORK_PARTITION_ID";
-
- // Kubernetes related constants
- public static final String KUBERNETES_CLUSTER_ID = "KUBERNETES_CLUSTER_ID";
- public static final String KUBERNETES_MASTER_PORT = "KUBERNETES_MASTER_PORT";
- public static final String KUBERNETES_MASTER_DEFAULT_PORT = "8080";
-
- //drools related constants
- public static final String DROOLS_DIR_NAME = "drools";
- public static final String SCALE_CHECK_DROOL_FILE = "scaling.drl";
- public static final String DEPENDENT_SCALE_CHECK_DROOL_FILE = "dependent-scaling.drl";
- public static final String MIN_CHECK_DROOL_FILE = "mincheck.drl";
- public static final String MAX_CHECK_DROOL_FILE = "maxcheck.drl";
- public static final String OBSOLETE_CHECK_DROOL_FILE = "obsoletecheck.drl";
- public static final String MIN_COUNT = "MIN_COUNT";
-
- // Policy and definition related constants
- public static final int PUBLIC_DEFINITION = 0;
-
- // member expiry timeout constants
- public static final String PENDING_MEMBER_EXPIRY_TIMEOUT = "autoscaler.member.pendingMemberExpiryTimeout";
- public static final String OBSOLETED_MEMBER_EXPIRY_TIMEOUT = "autoscaler.member.obsoletedMemberExpiryTimeout";
- public static final String PENDING_TERMINATION_MEMBER_EXPIRY_TIMEOUT = "autoscaler.member.pendingTerminationMemberExpiryTimeout";
-
- public static final String FILTER_VALUE_SEPARATOR = ",";
- public static final String TOPOLOGY_APPLICATION_FILTER = "stratos.topology.application.filter";
- public static final String TOPOLOGY_SERVICE_FILTER = "stratos.topology.service.filter";
- public static final String TOPOLOGY_CLUSTER_FILTER = "stratos.topology.cluster.filter";
- public static final String TOPOLOGY_MEMBER_FILTER = "stratos.topology.member.filter";
- public static final String TOPOLOGY_NETWORK_PARTITION_FILTER = "stratos.topology.network.partition.filter";
-
- // to identify a lb cluster
- public static final String LOAD_BALANCER_REF = "load.balancer.ref";
- public static final String SERVICE_AWARE_LOAD_BALANCER = "service.aware.load.balancer";
- public static final String DEFAULT_LOAD_BALANCER = "default.load.balancer";
- public static final String NO_LOAD_BALANCER = "no.load.balancer";
- public static final String EXISTING_LOAD_BALANCERS = "existing.load.balancers";
-
- public static final long HAZELCAST_INSTANCE_INIT_TIMEOUT = 300000; // 5 min
-
- public static final String AUTOSCALER_SERVICE_URL = "autoscaler.service.url";
- public static final String CLOUD_CONTROLLER_SERVICE_URL = "cloud.controller.service.url";
- public static final String STRATOS_MANAGER_SERVICE_URL = "stratos.manager.service.url";
-
- public static final String CLOUD_CONTROLLER_CLIENT_SOCKET_TIMEOUT = "cc.socket.timeout";
- public static final String CLOUD_CONTROLLER_CLIENT_CONNECTION_TIMEOUT = "cc.connection.timeout";
- public static final String AUTOSCALER_CLIENT_SOCKET_TIMEOUT = "autoscaler.socket.timeout";
- public static final String AUTOSCALER_CLIENT_CONNECTION_TIMEOUT = "autoscaler.connection.timeout";
- public static final String STRATOS_MANAGER_CLIENT_SOCKET_TIMEOUT = "stratos.manager.socket.timeout";
- public static final String STRATOS_MANAGER_CLIENT_CONNECTION_TIMEOUT = "stratos.manager.connection.timeout";
-
- public static final String DEFAULT_CLIENT_SOCKET_TIMEOUT = "300000";
- public static final String DEFAULT_CLIENT_CONNECTION_TIMEOUT = "300000";
-
- // partition algorithm id constants
- public static final String PARTITION_ROUND_ROBIN_ALGORITHM_ID = "round-robin";
- public static final String PARTITION_WEIGHTED_ROUND_ROBIN_ALGORITHM_ID = "weighted-round-robin";
- public static final String PARTITION_ONE_AFTER_ANOTHER_ALGORITHM_ID = "one-after-another";
- // network partition algorithm id constants
- public static final String NETWORK_PARTITION_ONE_AFTER_ANOTHER_ALGORITHM_ID = "one-after-another";
- public static final String NETWORK_PARTITION_ALL_AT_ONCE_ALGORITHM_ID = "all-at-once";
- public static final String APPLICATION_POLICY_NETWORK_PARTITION_GROUPS = "networkPartitionGroups";
- public static final String APPLICATION_POLICY_NETWORK_PARTITIONS_SPLITTER = "\\|";
- public static final String APPLICATION_POLICY_NETWORK_PARTITION_GROUPS_SPLITTER = ",";
-
- public static final String NOT_DEFINED = "not-defined";
- public static final String CLUSTER_INSTANCE_ID = "cluster.instance.id";
+ public static final String CLOUD_SERVICE_IS_ACTIVE_PROP_KEY = "active";
+
+ public static final String CLOUD_SERVICE_INFO_STORE_PATH =
+ "/repository/components/org.apache.stratos/cloud-manager/cloud-services";
+
+ public static final String TENANT_USER_VALIDATION_STORE_PATH = "/repository/components/org.wso2.carbon.validations";
+ public static final String ADMIN_EMAIL_VERIFICATION_FLAG_PATH =
+ "/repository/components/org.wso2.carbon.email-confirmation-flag";
+ public static final String TENANT_DOMAIN_VERIFICATION_FLAG_PATH =
+ "/repository/components/org.wso2.carbon.domain-confirmation-flag";
+
+ public static final String DOMAIN_VALIDATOR_INFO_PATH =
+ "/repository/components/org.wso2.carbon.domain-validator-info";
+
+ public static final String TENANT_CREATION_THEME_PAGE_TOKEN =
+ "/repository/components/org.wso2.carbon.theme-page-token";
+
+ public static final String TENANT_PACKAGE_INFO_PATH = "/repository/components/org.wso2.carbon.package-info";
+
+ public static final String ALL_THEMES_PATH = "/repository/components/org.wso2.carbon.all-themes";
+
+ public static final String THROTTLING_RULES_PATH = "/repository/components/org.wso2.carbon.throttling-rules";
+
+ public static final String ORIGINATED_SERVICE_PATH = "/repository/components/org.wso2.carbon.originated-service";
+
+ public static final String PATH_SEPARATOR = "/";
+
+ public static final String CLOUD_SERVICE_ICONS_STORE_PATH =
+ "/repository/components/org.wso2.carbon.cloud-manager/" + "cloud-services-icons";
+
+ public static final String VALIDATION_KEY_RESOURCE_NAME = "validation-key";
+ public static final String INCOMING_PATH_DIR = "incoming";
+ public static final String OUTGOING_PATH_DIR = "outgoing";
+ public static final String MULTITENANCY_SCHEDULED_TASK_ID = "multitenancyScheduledTask";
+ public static final String MULTITENANCY_VIEWING_TASK_ID = "multitenancyViewingTask";
+
+ public static final String INVALID_TENANT = "invalidTenant";
+ public static final String INACTIVE_TENANT = "inactiveTenant";
+ public static final String ACTIVE_TENANT = "activeTenant";
+ public static final String IS_EMAIL_VALIDATED = "isEmailValidated";
+ public static final String IS_CREDENTIALS_ALREADY_RESET = "isCredentialsReset";
+ public static final String TENANT_ADMIN = "tenantAdminUsername";
+
+ public static final String CLOUD_MANAGER_SERVICE = "Apache Stratos Controller";
+ public static final String CLOUD_IDENTITY_SERVICE = "WSO2 Stratos Identity";
+ public static final String CLOUD_GOVERNANCE_SERVICE = "WSO2 Stratos Governance";
+ public static final String CLOUD_ESB_SERVICE = "WSO2 Stratos Enterprise Service Bus";
+
+ // keystore mgt related Constants
+ public static final String TENANT_KS = "/repository/security/key-stores/";
+ public static final String TENANT_PUB_KEY = "/repository/security/pub-key";
+ public static final String PROP_TENANT_KS_TYPE = "key-store-type";
+ public static final String PROP_TENANT_KS_PASSWD = "key-store-password";
+ public static final String PROP_TENANT_KS_PRIV_KEY_PASSWD = "priv-key-password";
+ public static final String PROP_TENANT_KS_ALIAS = "alias";
+
+ // constants related to redirection
+
+ public static final String UNVERIFIED_ACCOUNT_DOMAIN_SUFFIX = "-unverified";
+ public static final String TENANT_SPECIFIC_URL_RESOLVED = "tenant-sepcific-url-resolved";
+ public static final String SUFFIXED_UNVERIFIED_SESSION_FLAG = "temp-suffixed-unverified";
+
+ // metering constants
+ public static final String THROTTLING_ALL_ACTION = "all_actions";
+ public static final String THROTTLING_IN_DATA_ACTION = "in_data_action";
+ //this covers registry capacity + registry bandwidth
+ public static final String THROTTLING_OUT_DATA_ACTION = "out_data_action"; //this covers registry bandwidth
+ public static final String THROTTLING_ADD_USER_ACTION = "add_user_action";
+ public static final String THROTTLING_SERVICE_IN_BANDWIDTH_ACTION = "service_in_bandwith_action";
+ public static final String THROTTLING_SERVICE_OUT_BANDWIDTH_ACTION = "service_out_bandwith_action";
+ public static final String THROTTLING_WEBAPP_IN_BANDWIDTH_ACTION = "webapp_in_bandwith_action";
+ public static final String THROTTLING_WEBAPP_OUT_BANDWIDTH_ACTION = "webapp_out_bandwith_action";
+ public static final String THROTTLING_SERVICE_REQUEST_ACTION = "service_request_action";
+ public static final String THROTTLING_SERVICE_RESPONSE_ACTION = "service_response_action";
+
+ // the session attribute to keep track whether the registry action validated
+ // and the usage persisted
+ public static final String REGISTRY_ACTION_VALIDATED_SESSION_ATTR = "registryActionValidated";
+ public static final String REGISTRY_USAGE_PERSISTED_SESSION_ATTR = "usagePersited";
+
+ // Metering servlet attributes
+ public static final String SERVICE_NAME_SERVLET_ATTR = "meteringServiceName";
+ public static final String TENANT_ID_SERVLET_ATTR = "tenantId";
+ public static final String ADMIN_SERVICE_SERVLET_ATTR = "adminService";
+
+ // * as a Service impl related constants
+ public static final String ORIGINATED_SERVICE = "originatedService";
+
+ // Configuration file name
+ public static final String STRATOS_CONF_FILE = "stratos.xml";
+ //public static final String STRATOS_CONF_LOC = "repository/conf/";
+ //public static final String STRATOS_CONF_FILE_WITH_PATH = STRATOS_CONF_LOC + STRATOS_CONF_FILE;
+
+ // EULA location
+ public static final String STRATOS_EULA = "eula.xml";
+
+ // EULA default text.
+ public static final String STRATOS_EULA_DEFAULT_TEXT =
+ "Please refer to: " + StratosConstants.STRATOS_TERMS_OF_USAGE +
+ " for terms and usage and " + StratosConstants.STRATOS_PRIVACY_POLICY +
+ " for privacy policy of WSO2 Stratos.";
+
+ // Web location of Terms of Usage and privacy policy
+ public static final String STRATOS_TERMS_OF_USAGE = "http://wso2.com/cloud/services/terms-of-use/";
+ public static final String STRATOS_PRIVACY_POLICY = "http://wso2.com/cloud/services/privacy-policy/";
+ public static final String MULTITENANCY_FREE_PLAN = "Demo";
+ public static final String MULTITENANCY_SMALL_PLAN = "SMB";
+ public static final String MULTITENANCY_MEDIUM_PLAN = "Professional";
+ public static final String MULTITENANCY_LARGE_PLAN = "Enterprise";
+ public static final String EMAIL_CONFIG = "email";
+ public static final String MULTITENANCY_CONFIG_FOLDER = "multitenancy";
+
+ // Cloud controller - payload
+ public static final String MEMBER_ID = "MEMBER_ID";
+ public static final String LB_CLUSTER_ID = "LB_CLUSTER_ID";
+ public static final String NETWORK_PARTITION_ID = "NETWORK_PARTITION_ID";
+
+ // Kubernetes related constants
+ public static final String KUBERNETES_CLUSTER_ID = "KUBERNETES_CLUSTER_ID";
+ public static final String KUBERNETES_MASTER_PORT = "KUBERNETES_MASTER_PORT";
+ public static final String KUBERNETES_MASTER_DEFAULT_PORT = "8080";
+
+ //drools related constants
+ public static final String DROOLS_DIR_NAME = "drools";
+ public static final String SCALE_CHECK_DROOL_FILE = "scaling.drl";
+ public static final String DEPENDENT_SCALE_CHECK_DROOL_FILE = "dependent-scaling.drl";
+ public static final String MIN_CHECK_DROOL_FILE = "mincheck.drl";
+ public static final String MAX_CHECK_DROOL_FILE = "maxcheck.drl";
+ public static final String OBSOLETE_CHECK_DROOL_FILE = "obsoletecheck.drl";
+ public static final String MIN_COUNT = "MIN_COUNT";
+ public static final String SCALING_REASON = "SCALING_REASON";
+ public static final String SCALING_TIME = "SCALING_TIME";
+
+ // Policy and definition related constants
+ public static final int PUBLIC_DEFINITION = 0;
+
+ // member expiry timeout constants
+ public static final String PENDING_MEMBER_EXPIRY_TIMEOUT = "autoscaler.member.pendingMemberExpiryTimeout";
+ public static final String OBSOLETED_MEMBER_EXPIRY_TIMEOUT = "autoscaler.member.obsoletedMemberExpiryTimeout";
+ public static final String PENDING_TERMINATION_MEMBER_EXPIRY_TIMEOUT =
+ "autoscaler.member.pendingTerminationMemberExpiryTimeout";
+
+ public static final String FILTER_VALUE_SEPARATOR = ",";
+ public static final String TOPOLOGY_APPLICATION_FILTER = "stratos.topology.application.filter";
+ public static final String TOPOLOGY_SERVICE_FILTER = "stratos.topology.service.filter";
+ public static final String TOPOLOGY_CLUSTER_FILTER = "stratos.topology.cluster.filter";
+ public static final String TOPOLOGY_MEMBER_FILTER = "stratos.topology.member.filter";
+ public static final String TOPOLOGY_NETWORK_PARTITION_FILTER = "stratos.topology.network.partition.filter";
+
+ // to identify a lb cluster
+ public static final String LOAD_BALANCER_REF = "load.balancer.ref";
+ public static final String SERVICE_AWARE_LOAD_BALANCER = "service.aware.load.balancer";
+ public static final String DEFAULT_LOAD_BALANCER = "default.load.balancer";
+ public static final String NO_LOAD_BALANCER = "no.load.balancer";
+ public static final String EXISTING_LOAD_BALANCERS = "existing.load.balancers";
+
+ public static final long HAZELCAST_INSTANCE_INIT_TIMEOUT = 300000; // 5 min
+
+ public static final String AUTOSCALER_SERVICE_URL = "autoscaler.service.url";
+ public static final String CLOUD_CONTROLLER_SERVICE_URL = "cloud.controller.service.url";
+ public static final String STRATOS_MANAGER_SERVICE_URL = "stratos.manager.service.url";
+
+ public static final String CLOUD_CONTROLLER_CLIENT_SOCKET_TIMEOUT = "cc.socket.timeout";
+ public static final String CLOUD_CONTROLLER_CLIENT_CONNECTION_TIMEOUT = "cc.connection.timeout";
+ public static final String AUTOSCALER_CLIENT_SOCKET_TIMEOUT = "autoscaler.socket.timeout";
+ public static final String AUTOSCALER_CLIENT_CONNECTION_TIMEOUT = "autoscaler.connection.timeout";
+ public static final String STRATOS_MANAGER_CLIENT_SOCKET_TIMEOUT = "stratos.manager.socket.timeout";
+ public static final String STRATOS_MANAGER_CLIENT_CONNECTION_TIMEOUT = "stratos.manager.connection.timeout";
+
+ public static final String DEFAULT_CLIENT_SOCKET_TIMEOUT = "300000";
+ public static final String DEFAULT_CLIENT_CONNECTION_TIMEOUT = "300000";
+
+ // partition algorithm id constants
+ public static final String PARTITION_ROUND_ROBIN_ALGORITHM_ID = "round-robin";
+ public static final String PARTITION_WEIGHTED_ROUND_ROBIN_ALGORITHM_ID = "weighted-round-robin";
+ public static final String PARTITION_ONE_AFTER_ANOTHER_ALGORITHM_ID = "one-after-another";
+ // network partition algorithm id constants
+ public static final String NETWORK_PARTITION_ONE_AFTER_ANOTHER_ALGORITHM_ID = "one-after-another";
+ public static final String NETWORK_PARTITION_ALL_AT_ONCE_ALGORITHM_ID = "all-at-once";
+ public static final String APPLICATION_POLICY_NETWORK_PARTITION_GROUPS = "networkPartitionGroups";
+ public static final String APPLICATION_POLICY_NETWORK_PARTITIONS_SPLITTER = "\\|";
+ public static final String APPLICATION_POLICY_NETWORK_PARTITION_GROUPS_SPLITTER = ",";
+
+ public static final String NOT_DEFINED = "not-defined";
+ public static final String CLUSTER_INSTANCE_ID = "cluster.instance.id";
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/76c7724b/products/stratos/modules/distribution/src/main/conf/drools/dependent-scaling.drl
----------------------------------------------------------------------
diff --git a/products/stratos/modules/distribution/src/main/conf/drools/dependent-scaling.drl b/products/stratos/modules/distribution/src/main/conf/drools/dependent-scaling.drl
index 56e9164..43b204f 100644
--- a/products/stratos/modules/distribution/src/main/conf/drools/dependent-scaling.drl
+++ b/products/stratos/modules/distribution/src/main/conf/drools/dependent-scaling.drl
@@ -84,7 +84,10 @@ dialect "mvel"
log.info("[dependency-scale] [scale-up] Partition available, hence trying to spawn an instance to scale up!" );
log.debug("[dependency-scale] [scale-up] " + " [partition] " + partitionContext.getPartitionId() + " [cluster] " + clusterId );
- delegator.delegateSpawn(partitionContext, clusterId, clusterInstanceContext.getId(), isPrimary);
+ long time = System.currentTimeMillis();
+ String scalingReason = "Dependency scaling";
+ delegator.delegateSpawn(partitionContext, clusterId, clusterInstanceContext.getId(), isPrimary,scalingReason,time);
+
count++;
} else {
partitionsAvailable = false;
http://git-wip-us.apache.org/repos/asf/stratos/blob/76c7724b/products/stratos/modules/distribution/src/main/conf/drools/scaling.drl
----------------------------------------------------------------------
diff --git a/products/stratos/modules/distribution/src/main/conf/drools/scaling.drl b/products/stratos/modules/distribution/src/main/conf/drools/scaling.drl
index e6f8f67..cad9c8f 100644
--- a/products/stratos/modules/distribution/src/main/conf/drools/scaling.drl
+++ b/products/stratos/modules/distribution/src/main/conf/drools/scaling.drl
@@ -164,6 +164,9 @@ dialect "mvel"
boolean partitionsAvailable = true;
int count = 0;
+ String autoscalingReason = (numberOfRequiredInstances == numberOfInstancesReuquiredBasedOnRif)?"Scaling up due to RIF":(numberOfRequiredInstances== numberOfInstancesReuquiredBasedOnMemoryConsumption)?"Scaling up due to MC":"Scaling up due to LA";
+
+
while(count != additionalInstances && partitionsAvailable){
ClusterLevelPartitionContext partitionContext = (ClusterLevelPartitionContext) partitionAlgorithm.getNextScaleUpPartitionContext(clusterInstanceContext.getPartitionCtxtsAsAnArray());
@@ -182,7 +185,8 @@ dialect "mvel"
" [laPredictedValue] " + laPredictedValue + " [laThreshold] " + laThreshold);
log.debug("[scale-up] " + " [partition] " + partitionContext.getPartitionId() + " [cluster] " + clusterId );
- delegator.delegateSpawn(partitionContext, clusterId, clusterInstanceContext.getId(), isPrimary);
+ long scalingTime = System.currentTimeMillis();
+ delegator.delegateSpawn(partitionContext, clusterId, clusterInstanceContext.getId(), isPrimary,autoscalingReason,scalingTime);
count++;
} else {