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 {
